适用于计算密集型应用的AI计算引擎解决方案.pdf

所需积分/C币:15 2019-07-23 18:11:03 964KB .PDF
收藏 收藏
举报

对于 5G 蜂窝和机器学习 DNN/CNN这 样的计算密集型应用,赛灵思的新型向量处理器 AI 引擎由一系列 VLIW SIMD高性能处理器构成,可提供高达 8 倍的芯片计算密度,功耗却比传统可编程逻辑解决方案低 50%。   本白皮书探讨了将赛灵思新 AI 引擎用于计算密集型应用(如 5G 蜂窝和机器学习 DNN/CNN)的架构、应用和优势。   与前几代相比,5G 的计算密度要高 5 到 10倍;AI 引擎已针对 DSP 进行了优化,可满足吞吐量和计算要求,从而提供无线连接所需的高带宽和加速速度。   许多产品中机器学习的采用(通常采用 DN
&A XILINX 赛灵思A引擎及其应用 峰值|20 100用户体验 数据速率Gb/sO Mb/S|数据速率 增强 宽 区域流量|10 3|频谱 容量Mb//m? 次效率 8大KP 网络100 500 能源效率次 大规模 m/h机动性 物联网 与低时延 连接|106 密度每平方公里 毫秒时延 (每平方米1个) (无线电 接口) WP50501092818 图1:5G复杂性与4G1 1. ETRIRWS-150029、5G视觉和关键技术: ETRI Perspective3 GPP RAN Worksho p Phoenix,2015年12月: http:/iwww.3gpp.org/ftp/tsgran/tsgRan/Tsgr70/docs 摩尔定律的衰亡 1965年,英特尔联合创始人戈登·摩尔( Gordon moore)观察到集成电路中的元件数量每两年翻 番。在1965年,这意味着每个芯片中布局50个晶体管将提供最低的每晶体管成本;摩尔预测,到 1970年,每芯片将增加1,000个元件,每个晶体管的价格将下降超过90%。摩尔后来将此修改为每 两年增加一倍的资源,从1975年到2012年大致符合预测。(1)摩尔定律预测每个新型更小的工艺节 点均将提供更大的密度、更高的性能和更低的功耗,以及更低的成本。该观察结果称为“摩尔定 律”,并持续了大约50年。摩尔定律的原则是提高丨C密度、性能和可负担性的推动因素,也是赛灵 思用于日益降低器件成本的原则。 随着C工艺节点达到28ηm及以下,出现了“违反”摩尔定律的现象;在较小的工艺节点上构建的 器件的功耗、成本与性能不再易于预测。5G蜂窝系统的计算需求与可编程逻辑计算密度之间存在差 距。第5代蜂窝所需的成本、功耗和性能超过了可编程逻辑满足系统级目标的能力 A引擎的面世 为响应下一代无线和机器学习应用对提高计算密度与降低功耗要求的非线性需求増长,赛灵思开始硏究 创新架构,从而开发岀A引擎。A引擎以及自适应引擎(可编程逻辑)和标量引擎(处理器子系统)形 成一个紧密集成的异构计算平台。A引擎为基于向量的算法提供了高达五倍的计算密度。自适应引擎提 供灵活的自定义计算和数据移动。标量引擎提供了复杂的软件支持。参见图2 1.Wikipediaorg,moore'slawhttps://en.wikipediaorg/wiki/moore%27s_law于2018年检索。 WP506(1.0.2)2018年10月3日 china. xilinx. com &A XILINX 赛灵思A引擎及其应用 标量引擎 A|引擎阵列 yO (GT, AMS Al A 引擎分块‖引擎分块‖引擎分块 应用处理器 引|擎分块‖引擎分块‖引擎分块 实时处理器 自适应引擎 基础引擎 LUT 块RAM PCle DSP UltraCAM DDR 引擎 图2:异构计算 图3说明了A引擎接口分块到2D阵列的组成。 存器 存篮器 AI引擎 A引擎 A引擎 AI引擎 LLULUL』凵 LL凵uLu凵 LuLuLLLJ 凵 BLLLL凵 A引擎 AI引擎 A引擎 A引擎 吧] □ AI引擎 AI引擎 A引擎 A引擎 A引擎 AI引擎 A|引擎 A引擎 囗卫彐 WP50603092818 图3:A|引擎阵列 每个A引擎分块包括用于定点和浮点运算的向量处理器、标量处理器、专用程序和数据存储器、专 用AⅪ数据移动通道、以及DMA和锁止。AⅠ引擎是一组单指令多数据(SMD);和超长指令字 (ⅥLIWN),提供多达6路指令并行性,包括每个时钟周期两/三次标量运算,两次矢量加载和一个次写 操作、以及一次定点或浮点向量运算 AI引擎阵列针对实时DSP和AML计算进行了优化,通过专用数据和指令存储器、DMA、锁止和 软件工具的组合提供确定性时序。专用数据和指令存储是静态的,消除了由于缓存失败和相关填充 而产生的不一致性。 WP506(10.2)2018年10月3日 china. xilinx. com &A XILINX 赛灵思A引擎及其应用 AI引擎目标和目的 AⅠ引擎的目标和目的来自使用DSP和A/ML的计算密集型应用。其他市场需求包括更高的开发人员 生产力与抽象级别,这些都推动了开发工具的发展。A引擎的开发旨在提供四个主要优势: 与计算密集型应用的PL实现相比,每个芯片面积的计算容量提高了3到8倍 与卩L中实现的相同功能相比,能将计算密集型功耗降低50% 提供确定性、高性能的实时DSP功能 显著改善开发环境并提高设计人员的工作效率 AI引擎原始图像分块架构细节 要想真正掌握A引擎的巨大功能,必须对其架构和功能有一个大致的了解。图4中显示的A引擎 分块提供了每个分块中资源的详细计算 专用的16KB指令存储器和32 KB RAM 32bR|SC标量处理器 512b定点和512b浮点向量处理器,带有相关的向量寄存器 同步处理程序 跟踪和调试 A引擎阵列 核心存储器访问 ■■■■■■国■■■■■国■■■■ Ⅺ流 ■■■■■国国国■■■国国■■■ ■国国国■■■国■■■■■■■■■ ■■■■国■■■■■■■■■■ 出 AXI MM 级联流 AXIS West AXIS East 程序存 指令获取 加载和存储 储器 地址生成 S2MM S2M 和解码单元 (16KB) 单 DMA DMA DMA 32b标量 定点 浮点 R|SC单元 512b SIMD 512b SIMD 矢量单元 数据 矢量单元 存储器 (32KB 标量寄存 器文件 矢量寄存器文件 失速处理 控制 累加器流 程序 调试 和跟 FIFO 匚MEM WP506_04092818 图4:A引擎分块细节 WP506(1.0.2)2018年10月3日 china. xilinx. com 5 &A XILINX 赛灵思A|引擎及其应用 通过使用专用AⅪ总线路由和直连相邻A引擎分块的组合,将具有专用指令和数据存储器的A引擎 与其他A引擎分块互联。针对数据移动,专用DMA引擎和锁止可直接连接专用AⅪ总线连接、数据 移动和同步。 操作数精确支持 向量处理器由整数和浮点单元组成。支持8位、16位、32位和单精度浮点(SPFP)的操作数。对于不 同的操作数,每个时钟周期的操作数都会发生变化,如表1所示。 表1:A引擎向量精度支持 操作数A 操作数B 输出 MAc时钟数 8b rcal 16b real 16b real 8b real 48b real 16b real 16b real 48b real 32 1 6b real 16b complex 48b complex 16 16b complex 16b complex 48b complex 8 16b real 32b real 16b real 32b complex 48 80 complex 8 16b complex 32b real 48 80 complex 8 16b complex 32b complex 48/ 80 complex 32b real 16b real 48 80 complex 16 32b real 6b complex 48 80 complex 32b complex 16b real 48 80 complex 32b complex 16b comple 48/80 complex 32b real 32b real 80b real 8 32b real 32b complex 80b comple 4 32b complex 32b real 80b complex 32b complex mplex 80b comple 32 SPFP 32b SPFP 32b SP FP 8 指令和数据并行 通过指令级和数据级并行性实现多级并行。 指令级井行性如图5所示。对于每个时钟周期、两个标量指令、两个向量读取、一个单向量写入和 单向量指令执行的6路VLW。 VL|W指令(6路VL|W) 1dad1,a∨0 1dad2,a1mu≌2,wo,ⅵ I st ad.3,v21 标量Ops 两次加载 个向量乘 个存储 法 图5:A|指令级并行 WP506(1.0.2)2018年10月3日 china. xilinx. com &A XILINX 赛灵思A|引擎及其应用 数据级并行是通过向量级操作实现的,其中可以在每个时钟周期的基础上操作多组数据,如表1所 确定性性能与连接性 A引擎架构是为实时处理应用开发的,这些应用需要确定性的性能。两大关键的架构特性确保了 确定性的时间: 专用指令和数据存储器 专用连接性与DMA引擎配合使用,以利用A引擎分块之间的连接性迸行预定数据移动 直接存储器(DM)接口提供A引擎分块与其邻近分块间旳直接访问,A引擎分块数据存储器可以直 接访问北、南和西。这通常用于在整个处理链产生和/或消耗数据的同时,将结果移动到向量处理器 或从向量处理器移开结果。实施数据存储器以实现“乒乓”缓存方案,将存储器争用对性能的影响降 至最 A/引擎分块之问的AX1- Stream和 AXl-Memory映射性连接 最简单的A引擎到A引擎数据移动形式是通过直接相邻A引擎分块之间的共亨存储器。但是,当分块 距离较远时,A引擎分块需要使用AⅪ -Streaming数据流。AⅪ- Streaming连接是由A引擎编译器工具 根据数据流图进行预定乂和编程的。这些流接口也可用于直接与PL和NoC连接。参见图6。 北输入/输出 西输入/输 东输入/输 出流 轴横杆 由AX-MM静态配置AXl- Strean互联 -主端口和从端口 每个端口处理程序均选择输入/输出流的路由 一AX流 图 每个开关都有FFO缓存,用于插入时延 AXI MM 端口可以是电路或分组切换 南输入/输出 图6:A引擎阵列AX-MM和 AXl-Stream互联 WP506(1.0.2)2018年10月3日 china. xilinx. com &A XILINX 赛灵思A引擎及其应用 M引擎和P连接性 Versa产品组合的最高价值主张之一是能够在自适应引擎中使用A引擎阵列和可编程逻辑。这一资 源组合为在最佳资源、A引擎、自适应引擎或标量引擎中实现功能提供了极大的灵活性。图7显示了 AI引擎阵列和可编程逻辑之间的连接,称为“A引擎阵列接口”。AX- Streaming连接存在于A引 擎阵列接口的每一侧,并将连接扩展到可编程逻辑中,并分别扩展到片上网络(NoC)o A引擎 A|引擎 A引擎 A引擎一 A引挚 A|引擎 A引擎 A引擎 引擎 A引擎 AXL-S AXL-S AXL-S 开关 开关 开关 开关 NoC Noc 接口 接口 接口 接口 PL/ NoC 图7:A引擎阵列接口 AI引擎控制、调试和跟踪 在每个AⅠ引擎分块中集成了控制、调试和跟踪玏能,为调试和性能监控和优化提供了可视性。通过 Versa产品组合中引入的高速调试端口,可以访问调试功能。 A引擎和可编程逻辑实现对比 A引擎目标和目的章节提供了评估是否能满足应用和市场需求所需的指标。可以通过在PL和A引擎 中实现4G和5G蜂窝来测算架构的有效性。结果总结表明,基于A引擎的解决方案可以提供 与在相同工艺节点上的PL中实现的相同功能相比,芯片面积要小3-8倍 功耗约为PL实现的50% WP506(1.0.2)2018年10月3日 china. xilinx. com 8 &A XILINX 赛灵思A引擎及其应用 对于那些不适合向量实现的功能,A引擎的效率要低得多,因此A引擎通常不太适合此类功能。在 这些情况下,PL将是更好的解决方案。A引擎和PL旨在作为计算对等体运行,二者各自处理与其优 势相匹配的功能。PL非常适合数据移动、面向比特的功能和非基于向量的计算;还可以为非A引擎 支持的操作实现自定乂加速器。PL和A引擎相互补充,能够形成更强大的系统级解决方案。在大多 数计算密集型应用中,可编程逻辑仍然是一种非常有价值的资源;A引擎/L组合可提供灵活性、高 计算性能和高带宽数据移动和存储。 使用A引擎架构的 Versa产品组合概述 Versa器件包括三种类型的可编程处理器:Arm处理器子系统(PS)、可编程逻辑(PL)和A引擎 各自提供用于满足整个系统中不同部分的各种计算能力。Arm处理器通常用于控制面应用、操作系 统、通信接口、以及更低级别或更复杂的计算。門L执行数据操作和传输、非基于向量的计算和连 接。A引擎通常用于向量实现中的计算密集型功能。 图8提供了 Versa器件的高级视图,其中AI引擎阵列位于器件顶部。直接和通过片上网络(NOC) 支持A引擎阵列和PL之间的连接。 A引擎阵列 片上网络 逻辑 处理系统 PMc 片上网络 DDR控制器 DDR控制器 DDR控制器 XPIO 图8:带A引擎架构的 Versal acaP概述 WP506(1.0.2)2018年10月3日 china. xilinx. com &A XILINX 赛灵思A|引擎及其应用 A引擎开发环境 近年来,赛灵思非常重视使用高级语言(HLL)来帮助提高赛灵思器件开发的抽象级别。 Vers a架构有 三个存在根本性差异可编程元素:PL、PS和A引擎。这三个都可以使用C/C++进行编程。 使用基于ⅹ86的仿真环境,A丨引擎仿真可以具备功能性或循环精确性。对于系统级仿真,可以使用 支持所有三个处理域的 Systen-C虚拟平台。 开发环境中的关键元素是支持DSP和无线功能、ML和A丨、线性代数和矩阵薮学的A引擎库。这些库 针对效率和性能进行了优化,使开发人员能够充分利用A引擎功能。 A引擎应用 A引擎针对计算密集型应用进行了优化,特别是数字信号处理(DSP)和一些人工智能(A)技术,如 机器学习(ML)和5G无线应用。 使用A引擎的数字信号处理 无线解决方案验证套件 实时DSP广泛用于无线通信。赛灵思比较了经典窄带和宽带无线电设计原理、大规模M|MO以及基 带和数字前端概念的实现,验证了AI引擎架构非常适合构建无线解决方案。 示例:100MHz5通道L7E20无线解块方案 在ersa器件的一部分中实现了100MHz5通道LTE20无线。五个16b输入数据通道以30.72 MsPS的速率进行流传输,并在⑧9抽头通道滤波器中处理。然后使用两级半带滤波器(23和11抽 头)对信号进行四次上采样,得到122.88MSPS的采样率 然后将上采样流与直接数字综合(DDS正弦/余弦波函数混合并求和。另外两个半带滤波器(47和27 抽头)进行四次上釆样,产生491.52MSPS输入流,以达到波峰因数降低(CFR)功能。由41抽头滤 波器提供的五上/四下分数速率变化,导致6144MSPS输入采样率达到数字预失真(DPD)功能要求。 在PL中实现峰值检测器/比例查找(PD/SF)电路;491.52 MSPS DUC的输出和混合器级包括其输入之 ,而CFR第二级提供其第二输入。在門L中实现的PD/SF电路能高效利用资源;相反,如果在A引擎 中实现,则资源效率低下。对于为设计的不同功能块利用最佳资源而釆取的架构决策,这提供了很好的 说明。参见图9。 WP506(1.0.2)2018年10月3日 china. xilinx. com 0

...展开详情
试读 13P 适用于计算密集型应用的AI计算引擎解决方案.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    抢沙发
    一个资源只可评论一次,评论内容不能少于5个字
    img
    • 至尊王者

      成功上传501个资源即可获取

    关注 私信 TA的资源

    上传资源赚积分,得勋章
    最新推荐
    适用于计算密集型应用的AI计算引擎解决方案.pdf 15积分/C币 立即下载
    1/13
    适用于计算密集型应用的AI计算引擎解决方案.pdf第1页
    适用于计算密集型应用的AI计算引擎解决方案.pdf第2页
    适用于计算密集型应用的AI计算引擎解决方案.pdf第3页
    适用于计算密集型应用的AI计算引擎解决方案.pdf第4页

    试读已结束,剩余9页未读...

    15积分/C币 立即下载 >