AI硬件加速版XVDPU入门

XVDPU是可以提高CNN计算的速度和延迟,他的目标不是直接替换软件在传统硬件或者通用GPU上实现CNN运算。他的目标就是加速CNN计算。

XVDP的实现方式:CNN卷积计算的是 原始图形矩阵{x行*y列*通道数a}*卷积滑块{w行g列t通道}=卷积后的图形{m行*n列*通道数b}

所以xvdpu的实现:

第一个就是硬件矩阵乘法 MAC计算:乘法+累加

因为这里会有矩阵行列的限制,所以遇到大矩阵,就需要把矩阵拆分为多个矩阵进行计算,但这时候卷积滑块是固定的,需要保留卷积滑块在一个共享的存储中,以供多批次多AIE核心的共享使用,同样在读取原始图形时,已要一次加载到一个快速存储中供买个AIE核进行读取部分需要的块进行计算,但下一次读取其他块内容已是能从这个快速访问的存储中读取数据。

所以就引出来xvdpu的存储实现:

vxdpu中存储分为ddr外部存储,pl中的共享特征图缓存,Pl中的共享权重缓存,aie整列中每个aie核的内部存储。数据流动是 ddr->pl特征图+Pl共享权重->AIE内核存储。只有在第一层是要从ddr加载特征图和权重数据道pl缓存,只有在最后一层输出omf的时候要从pl缓存写到ddr4。所以这里就还需要用来移动数据的控制器,在vxdpu中有两个datamove和load引擎,datemove是在PL上:把数据从ddr->PL缓存(特征图和共享权重),PL缓存->aie阵列本地存储。 Load引擎是在aie核内:aie本地存储->AIE的MAC计算器

所以就引出aie mac在计算的时候数据单位:

aie核的mac计算能力,这里设计的是2*8*8. 128*int8 操作。

aie核读取特征图是每个aie核都有单独的axi接口,读取能力是128字节,aie核读取共享权重是有个共享axi接口,读取能力是512字节.

所以就引出xvdpu的整体模块有哪些:

|-----|-------------------|--------------|
| ddr | | 外部存储 |
| ps | | 运行vitis ai工具 |
| pl | pl中的共享特征图缓存 | |
| pl | pl中的共享权重缓存 | |
| pl | pl中的DATAMOVE数据移动器 | |
| pl | pl中ALU计算器 | |
| aie | aie阵列 | |
| aie | aie核心mac计算引擎 | |
| aie | load引擎 | |
| aie | aie本地存储 | |

下一遍文章解释ps中vitis ai用来进行ai开发的内容

相关推荐
l1t1 分钟前
DeepSeek辅助编写的利用quick_xml把xml转为csv的rust程序
xml·开发语言·人工智能·rust·解析器·quick-xml
猴哥聊项目管理11 分钟前
2025免费8大项目管理替代工具测评(敏捷/瀑布/跨平台适配性)
人工智能·项目管理·产品经理·项目经理·项目管理工具·项目管理软件·企业管理
东方佑18 分钟前
当人眼遇见神经网络:用残差结构模拟视觉调焦的奇妙类比
人工智能·深度学习·神经网络
智驱力人工智能26 分钟前
深度学习在离岗检测中的应用
人工智能·深度学习·安全·视觉检测·离岗检测
hjs_deeplearning30 分钟前
认知篇#12:基于非深度学习方法的图像特征提取
人工智能·深度学习·目标检测
Tony Bai33 分钟前
【AI应用开发第一课】11 实战串讲:用 Go 构建一个 AI 驱动的 GitHub Issue 助手
人工智能·issue
阿杜杜不是阿木木42 分钟前
开始 ComfyUI 的 AI 绘图之旅-Flux.1 ControlNet (十)
人工智能·深度学习·ai·ai作画·lora
格林威1 小时前
Linux使用-MySQL的使用
linux·运维·人工智能·数码相机·mysql·计算机视觉·视觉检测
币须赢1 小时前
机器人智能系统架构:小脑
人工智能·机器人