Engine MEMORY MEMORY AI Engine Memory AI Engine Memory AI Engine Memory AI Engine Memory AI Engine Xilinx AI Engine • 概要 • 7nm世代Versalファミリーに搭載 • インターコネクト、メモリで相互接続された数十~数百の1GHz+ VLIW/SIMDプロセッサ • 信号処理、機械学習に特化 • 第二世代(AIE-ML)まで発表済み Versal® ACAP AI Engine
コア間が直接データをやり取りしながら計算 Memory AI Engine Memory AI Engine Memory AI Engine Memory AI Engine Memory AI Engine Memory AI Engine Memory AI Engine AI Engine Memory AI Engine Memory L1 core L0 Block 0 Block 1 L1 L2 DRAM L0 L0 L0 L0 L0 core core core core core CPU / GPU AI Engine
128 MAC / cycle (INT8) • 専用API、Intrinsicsを使ってC++でコーディング 固定小数点演算ベクトルユニット (AM009) xbuff zbuff 並び替え 乗算 加算ツリー 累積 MAC (multiply–accumulate) ベクトルレジスタ AI Engine MEMORY MEMORY AI Engine AI Engine MEMORY MEMORY AI Engine Memory AI Engine Memory AI Engine Memory AI Engine Memory AI Engine Store Unit Scalar Unit Scalar Register File Scalar ALU Non-linear Functions Instruction Fetch & Decode Unit AGU Vector Unit Vector Register File Fixed-Point Vector Unit Floating-Point Vector Unit Load Unit B AGU Load Unit A AGU Memory Interface Stream Interface AI Engine Core
• AIEコアは隣接する上下左右のメモリにアクセスできる AIE core Data Memory AIE core Data Memory IC IC AIE core Data Memory IC AIE core Data Memory IC AIE core Data Memory IC AIE core Data Memory IC AIE Tile AIE Tile AIE Tile AIE Tile AIE Tile AIE Tile
各カーネルの実行時間、必要なメモリサイズなどを考慮して決める Kernel A AIE core Data Memory AIE core Data Memory IC IC Kernel B AIE core Data Memory IC Kernel C AIE core Data Memory IC Kernel D PIPO PIPO PIPO PIPO AIE core Data Memory IC AIE core Data Memory IC PIPO Kernel B Kernel C Kernel D PIPO PIPO Kernel A PIPO PIPO 配置配線 To PL From PL AIE Tile AIE Tile AIE Tile AIE Tile AIE Tile AIE Tile