{"id":1987,"date":"2024-08-02T13:21:10","date_gmt":"2024-08-02T06:21:10","guid":{"rendered":"https:\/\/dgway.com\/blog_E\/?p=1987"},"modified":"2024-08-16T11:59:42","modified_gmt":"2024-08-16T04:59:42","slug":"seamless-custom-rtl-implementation-on-kr260-to-accelerate-applications","status":"publish","type":"post","link":"https:\/\/dgway.com\/blog_E\/2024\/08\/02\/seamless-custom-rtl-implementation-on-kr260-to-accelerate-applications\/","title":{"rendered":"Seamless Custom RTL Implementation on KR260 to Accelerate Applications"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Implement custom RTL on KR260<\/h2>\n\n\n\n<p>The Kria KR260, based on the K26 System on Module (SOM), provides a unique environment for developing custom RTL designs. It integrates a Zynq UltraScale+ MPSoC, combining a high-performance ARM processor with FPGA fabric, allowing you to run a full operating system like Ubuntu on the processor while leveraging the FPGA for accelerated tasks.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"554\" height=\"622\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-2.png\" alt=\"\" class=\"wp-image-1992\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-2.png 554w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-2-267x300.png 267w\" sizes=\"auto, (max-width: 554px) 100vw, 554px\" \/><figcaption class=\"wp-element-caption\">Figure 1: Block diagram of custom RTL design on KR260<\/figcaption><\/figure>\n<\/div>\n\n\n<p>This document shows how the custom RTL and software are built for an application on KR260, as shown in Figure 1. Our AES256GCM10G25GIP is used as the example user logic to accelerate encryption-decryption process. For more information about our IP, please visit our <a href=\"https:\/\/dgway.com\/ASIP_E.html#AESGCM\" target=\"_blank\" rel=\"noreferrer noopener\">website<\/a>.<\/p>\n\n\n\n<p>To build a custom RTL design on the KR260, we use Vivado2022.1. Let\u2019s get started:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Create a New Vivado Project:\n<ul class=\"wp-block-list\">\n<li>Start by creating a new project in Vivado and select the KR260 as the target board.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"990\" height=\"234\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-1.png\" alt=\"\" class=\"wp-image-1991\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-1.png 990w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-1-300x71.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-1-768x182.png 768w\" sizes=\"auto, (max-width: 990px) 100vw, 990px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"990\" height=\"468\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-3.png\" alt=\"\" class=\"wp-image-1993\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-3.png 990w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-3-300x142.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-3-768x363.png 768w\" sizes=\"auto, (max-width: 990px) 100vw, 990px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Create Block Design:\n<ul class=\"wp-block-list\">\n<li>Create a new block design.<\/li>\n\n\n\n<li>Add the Zynq MPSoC Ultrascale+ component to the design.<\/li>\n\n\n\n<li>Run the auto block design on the Zynq MPSoC component.<\/li>\n\n\n\n<li>Configure the Zynq MPSoC IP, go to I\/O Configuration and enable the following peripherals:\n<ul class=\"wp-block-list\">\n<li>UART<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"109\" class=\"wp-image-1996\" style=\"width: 500px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-6.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-6.png 570w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-6-300x65.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/li>\n\n\n\n<li>TTC<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"246\" class=\"wp-image-1997\" style=\"width: 500px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-7.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-7.png 570w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-7-300x147.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/li>\n\n\n\n<li>GEM0 and GEM1<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"180\" class=\"wp-image-1998\" style=\"width: 500px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-4.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-4.png 570w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-4-300x108.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/li>\n\n\n\n<li>USB 0 and USB 1<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"418\" class=\"wp-image-1999\" style=\"width: 500px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-5.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-5.png 570w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-5-300x251.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Remove unused HPM port<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"630\" height=\"465\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-8.png\" alt=\"\" class=\"wp-image-2000\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-8.png 630w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-8-300x221.png 300w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Add Necessary Components and Ports:\n<ul class=\"wp-block-list\">\n<li>Add the following components\/Port:\n<ul class=\"wp-block-list\">\n<li>System Resets: Two system reset modules, as each clock output requires a reset.<\/li>\n\n\n\n<li>slice: Set to 3-bit datain and 1-bit dataout, used to drive the CPU fan.<\/li>\n\n\n\n<li>AXI Interrupt Controller: Included to meet system requirements and change \u201cInterrupt Output Connection\u201d to \u201cSingle\u201d so that it can be connected to PS IRQ interface.<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"532\" class=\"wp-image-2001\" style=\"width: 800px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-9.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-9.png 757w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-9-300x199.png 300w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/li>\n\n\n\n<li>Ports: user_clk, axi_clk, axi_resetn, and S_AXI to map the interface of AES256GCM10G25GIP.<\/li>\n\n\n\n<li>Go to Platform Setup -&gt; Clock -&gt; Enable all used clocks and select one default clock.<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"188\" class=\"wp-image-2002\" style=\"width: 800px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-10.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-10.png 975w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-10-300x70.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-10-768x180.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/li>\n\n\n\n<li>Connect all component as shown, then validate design let vivado assign address mapping.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"990\" height=\"387\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-11.png\" alt=\"\" class=\"wp-image-2003\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-11.png 990w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-11-300x117.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-11-768x300.png 768w\" sizes=\"auto, (max-width: 990px) 100vw, 990px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"990\" height=\"227\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-12.png\" alt=\"\" class=\"wp-image-2004\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-12.png 990w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-12-300x69.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-12-768x176.png 768w\" sizes=\"auto, (max-width: 990px) 100vw, 990px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>Mapping External Ports:\n<ul class=\"wp-block-list\">\n<li>Ensure that the external ports from your block design are correctly mapped to your custom IP interface.<\/li>\n\n\n\n<li>Check our IP interface at <a href=\"https:\/\/dgway.com\/products\/IP\/AES-IP\/AES256GCM10G25GIP-refdesign-xilinx-en\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/dgway.com\/products\/IP\/AES-IP\/AES256GCM10G25GIP-refdesign-xilinx-en\/<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Generate Bitstream:\n<ul class=\"wp-block-list\">\n<li>Configure the settings to enable the generation of a bin file.<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"384\" class=\"wp-image-2005\" style=\"width: 800px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-13.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-13.png 900w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-13-300x144.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-13-768x369.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/li>\n\n\n\n<li>Run synthesis, implementation and generate bitstream.<\/li>\n\n\n\n<li>Once the bitstream is generated, export the platform to obtain the XSA (Xilinx Support Archive) file.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"418\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-14.png\" alt=\"\" class=\"wp-image-2006\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-14.png 900w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-14-300x139.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-14-768x357.png 768w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"6\" class=\"wp-block-list\">\n<li>Using XSCT (Xilinx Software Command-Line Tool) to Generate Device tree overlay:\n<ul class=\"wp-block-list\">\n<li>Open xsct and run following command:\n<ul class=\"wp-block-list\">\n<li>hsi::open_hw_design<\/li>\n\n\n\n<li>createdts -hw -zocl -platform-name -git-branch xlnx_rel_v2022.1 -overlay -compile -out<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"870\" height=\"455\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-16.png\" alt=\"\" class=\"wp-image-2008\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-16.png 870w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-16-300x157.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-16-768x402.png 768w\" sizes=\"auto, (max-width: 870px) 100vw, 870px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"7\" class=\"wp-block-list\">\n<li>Compile DTS Files into Device Tree Blob (dtbo):\n<ul class=\"wp-block-list\">\n<li>Use linux device tree compiler (dtc) to compile the source files into device tree blob with the following command:\n<ul class=\"wp-block-list\">\n<li>dtc -@ -O dtb -o<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p>Note: The default name of dtbo is pl.dtbo. User can change the filename as desired.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"767\" height=\"122\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-17.png\" alt=\"\" class=\"wp-image-2009\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-17.png 767w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-17-300x48.png 300w\" sizes=\"auto, (max-width: 767px) 100vw, 767px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"233\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-18.png\" alt=\"\" class=\"wp-image-2010\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-18.png 768w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-18-300x91.png 300w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"8\" class=\"wp-block-list\">\n<li>Prepare application file for running on KR260:\n<ul class=\"wp-block-list\">\n<li>Create description file(\u201cshell.json\u201d)<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"154\" class=\"wp-image-2011\" style=\"width: 500px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-19.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-19.png 409w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-19-300x92.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/li>\n\n\n\n<li>Bitstream binary file<br>(&lt;path to vivado project&gt;\/vivado.vivado.runs.impl_1\/&lt;xsa_name.bin&gt;)<\/li>\n\n\n\n<li>Device tree blob file<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"743\" height=\"197\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-20.png\" alt=\"\" class=\"wp-image-2012\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-20.png 743w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-20-300x80.png 300w\" sizes=\"auto, (max-width: 743px) 100vw, 743px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"9\" class=\"wp-block-list\">\n<li>Setup Ubuntu and application files on KR260\n<ul class=\"wp-block-list\">\n<li>Follow the instructions on the AMD setup guide to download and prepare the SD card image. (<a href=\"https:\/\/www.amd.com\/en\/products\/system-on-modules\/kria\/k26\/kr260-robotics-starter-kit\/getting-started\/setting-up-the-sd-card-image.html\" data-type=\"link\" data-id=\"https:\/\/www.amd.com\/en\/products\/system-on-modules\/kria\/k26\/kr260-robotics-starter-kit\/getting-started\/setting-up-the-sd-card-image.html\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.amd.com\/en\/products\/system-on-modules\/kria\/k26\/kr260-robotics-starter-kit\/getting-started\/setting-up-the-sd-card-image.html<\/a>)<\/li>\n\n\n\n<li>After flashing SD card, connect it to host PC.<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"552\" class=\"wp-image-2013\" style=\"width: 800px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-21.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-21.png 755w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-21-300x207.png 300w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/li>\n\n\n\n<li>Copy folder \u201cAES256GCM10G25GIP\u201d to \u201c\/lib\/firmware\/Xilinx\u201d on SD card.<\/li>\n\n\n\n<li><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"200\" class=\"wp-image-2014\" style=\"width: 800px;\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-22.png\" alt=\"\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-22.png 739w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-22-300x75.png 300w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/li>\n\n\n\n<li>Insert microSD card into the microSD card slot located under the KR260 board.<\/li>\n\n\n\n<li>Connect the power supply to the FPGA development board. The board will automatically boot into Ubuntu.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"434\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-23.png\" alt=\"\" class=\"wp-image-2015\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-23.png 660w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-23-300x197.png 300w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n<\/div>\n\n\n<ol start=\"10\" class=\"wp-block-list\">\n<li>&nbsp;Activate AES256GCM10G25GIP accelerator\n<ul class=\"wp-block-list\">\n<li>Unload the default hardware application using command \u201csudo xmutil unloadapp\u201d.<\/li>\n\n\n\n<li>Load new hardware application using command \u201csudo xmutil loadapp AES256GCM10G25GIP\u201d.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"975\" height=\"139\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-24.png\" alt=\"\" class=\"wp-image-2016\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-24.png 975w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-24-300x43.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-24-768x109.png 768w\" sizes=\"auto, (max-width: 975px) 100vw, 975px\" \/><\/figure>\n<\/div>\n\n\n<p>The AES256GCM10G25GIP accelerator is now active on our KR260. Before running a software application designed to interface with the accelerator, the software must be compiled. In this example, \u201caesgcmipdemo.c\u201d is compiled using \u201cgcc\u201d on the KR260. Users can execute the \u201cAES256GCM10G25GDEMO\u201d application, which is accelerated by our IP, and observe the results as shown.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"404\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-25.png\" alt=\"\" class=\"wp-image-2017\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-25.png 900w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-25-300x135.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-25-768x345.png 768w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/figure>\n<\/div>\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"852\" src=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-26.png\" alt=\"\" class=\"wp-image-2018\" srcset=\"https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-26.png 900w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-26-300x284.png 300w, https:\/\/dgway.com\/blog_E\/wp-content\/uploads\/2024\/08\/image-26-768x727.png 768w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/figure>\n\n\n\n<p>If you need any more information or further assistance, feel free to ask! <a href=\"https:\/\/dgway.com\/index_E.html\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/dgway.com\/index_E.html<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Implement custom RTL on KR260 The Kria KR260, based on the K26 System on Module (SOM), provides a unique environment for developing custom RTL designs. It integrates a Zynq UltraScale+ MPSoC, combining a high-performance ARM processor with FPGA fabric, allowing you to run a full operating system like Ubuntu on the processor while leveraging the FPGA for accelerated tasks. This&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":2020,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"[]"},"categories":[5],"tags":[],"class_list":["post-1987","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-security"],"_links":{"self":[{"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/posts\/1987","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/comments?post=1987"}],"version-history":[{"count":2,"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/posts\/1987\/revisions"}],"predecessor-version":[{"id":2041,"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/posts\/1987\/revisions\/2041"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/media\/2020"}],"wp:attachment":[{"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/media?parent=1987"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/categories?post=1987"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dgway.com\/blog_E\/wp-json\/wp\/v2\/tags?post=1987"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}