White Paper


Issue link: https://read.uberflip.com/i/1465163

Contents of this Issue


Page 2 of 8

WHITE PAPER Designer's Journey: Navigating the Transition to Versal ACAP mrcy.com 3 1. Kernel: A small unit of execution that performs a clearly defined function and that can be executed in parallel. AI Engine AIE Kernel AI Engine AIE Kernel AI Engine AIE Kernel Switch Switch Switch PL I/O PL I/O PL I/O HDL IP HDL IP Switch Switch Switch AIE Array FPGA Fabric Key x4 AXI streams 16 GB/s x2 AXI streams 8 GB/s User defined Cascade streams 48 GB/s x6 AXI streams 24 GB/s AIE Array Diagram THE JOURNEY BEGINS Adopting the Versal ACAP seemed challenging for our team at first. Having a primary background in traditional FPGA and DSP development, the idea of programming AIE processors using high-level languages was unfamiliar to us. In addition, we did not yet understand the available methods of defining the dataflow into and out of the AIE array. To dispel our worries, we decided to start small and build up our experience with AI. At a high level, the AIE array is similar to a GPU in that it consists of hundreds of vector processors. Each AIE processor can perform up to eight complex multiplications per cycle and has its own memory scratch pad for temporary storage of work. Data inputs and outputs are AXI4-Streams and can flow from the programmable logic into multiple AIE processors before being output from the AIE array. These functions executed by the AIEs are called kernels 1 , and a single AIE can share its time between different kernels. Each AIE processor has two physical stream inputs and outputs, however, these interfaces can be multiplexed to accommodate a higher number of "virtual streams."

Articles in this issue

Links on this page

view archives of White Paper - 8107.00E-0322-wp-ACAP-Journey_FINAL