广告

实例!详解FPGA如何实现FP16格式点积级联运算

2020-08-14 杨宇,Achronix资深现场应用工程师 阅读:
通过使用Achronix Speedster7t FPGA中的机器学习加速器MLP72,开发人员可以轻松选择浮点/定点格式和多种位宽,或快速应用块浮点,并通过内部级联可以达到理想性能。

神经网络架构中的核心之一就是卷积层,卷积的最基本操作就是点积。向量乘法的结果是向量的每个元素的总和相乘在一起,通常称之为点积。此向量乘法如下所示:MPtednc

MPtednc

图 1 点积操作MPtednc

该总和S由每个矢量元素的总和相乘而成,因此S=a1b1+a2b2+a3b3+...MPtednc

本文讲述的是使用FP16格式的点积运算实例,展示了MLP72支持的数字类型和乘数的范围。MPtednc

此设计实现了同时处理8对FP16输入的点积。该设计包含四个MLP72,使用MLP内部的级联路径连接。每个MLP72将两个并行乘法的结果相加(即aibi+ai+1bi+1),每个乘法都是i_a输入乘以i_b输入(均为FP16格式)的结果。来自每个MLP72的总和沿着MLP72的列级联到上面的下一个MLP72块。在最后一个MLP72中,在每个周期上,计算八个并行FP16乘法的总和。MPtednc

最终结果是多个输入周期内的累加总和,其中累加由i_first和i_last输入控制。 i_first输入信号指示累加和归零的第一组输入。 i_last信号指示要累加和加到累加的最后一组输入。最终的i_last值可在之后的六个周期使用,并使用i_last o_valid进行限定。两次运算之间可以无空拍。MPtednc

  • 配置说明

MPtednc

表 1 FP16点积配置表MPtednc

  • 端口说明

MPtednc

表 2 FP16点积端口说明表MPtednc

  • 时序图

MPtednc

图 2 FP16点积时序图MPtednc

其中,MPtednc

MPtednc

那么,以上运算功能如何对应到MLP内部呢?其后的细节已分为MLP72中的多个功能阶段进行说明。MPtednc

  • 进位链

首先请看下图,MLP之间的进位链结构,这是MLP内部的专用走线,可以保证级联的高效执行。MPtednc

MPtednc

图 3 MLP进位链MPtednc

  • 乘法阶段

下图是MLP中浮点乘法功能阶段,其中寄存器代表一级可选延迟。MPtednc

MPtednc

图 4 MLP乘法功能阶段框图MPtednc

MLP72浮点乘法级包括两个24位全浮点乘法器和一个24位全浮点加法器。两个乘法器执行A×B和C×D的并行计算。加法器将两个结果相加得到A×B + C×D。MPtednc

乘法阶段有两个输出。下半部分输出可以在A×B或(A×B + C×D)之间选择。上半部分输出始终为C×D。MPtednc

乘法器和加法器使用的数字格式由字节选择参数以及和参数设置的格式确定。MPtednc

浮点输出具有与整数输出级相同的路径和结构。MLP72可以配置为在特定阶段选择整数或等效浮点输入。输出支持两个24位全浮点加法器,可以对其进行加法或累加配置。 进一步可以加载加法器(开始累加),可以将其设置为减法,并支持可选的舍入模式。MPtednc

最终输出阶段支持将浮点输出格式化为MLP72支持的三种浮点格式中的任何一种。 此功能使MLP72可以外部支持大小一致的浮点输入和输出(例如fp16或bfloat16),而在内部以fp24执行所有计算。MPtednc

MPtednc

图 5 MLP浮点输出阶段框图MPtednc

需要强调的是本设计输入和输出都是FP16格式,中间计算过程,即进位链上的fwdo_out和fwdi_dout 都是FP24格式。具体逻辑框图如下所示:MPtednc

MPtednc

图 6 FP16点积逻辑框图MPtednc

MLP内部数据流示意图:MPtednc

MPtednc

图 7 FP16点积在MLP内部数据流图MPtednc

最终ACE的时序结果如下:MPtednc

MPtednc

如需了解更多产品细节,请发送邮件到Dawson.Guo@Achronix.comMPtednc

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
  • 横河电机:为提升系统开发效率打出软硬结合“组合拳” 日前,在横河电机新款示波记录仪DL950和IS8000集成测量软件平台发布会现场,横河计测株式会社全球市场副总裁Terry Marrinan就产品差异化竞争、简化测试流程、行业发展趋势等热点话题接受了《EDN电子技术设计》的独家专访。
  • 瑞萨电子推出16位通用RL78/G23 扩充低功耗MCU RL78产 新款RL78/G23针对物联网终端应用进行优化,扩展外设与安全功能,提升功耗性能
  • 拆解5款拼多多电蚊拍,16元的产品电路安全吗? 近日,随着气温的升高,蚊子逐渐活跃了起来,电蚊拍此时也成为了每家每户必备的神器之一。那么,与商场里五十元上下的电蚊拍相比,拼多多上16元的电蚊拍能用么?
  • 生物仿真硅耳蜗实现神经拟态技术关键词捕捉 苏黎世神经科学研究所开发的动态音频传感器的核心是一个生物仿真硅耳蜗,仿真耳朵中毛细胞的功能。由硅耳蜗产生的事件串流可用于语音端点检测(关键词识别的第一阶段),类耳蜗图可以由神经网络读入并解码其含义。关键词捕捉是目前各种神经拟态技术的一个重要目标。
  • 会“IPO“还是”被收购“?Kioxia的技术到底强在哪里?在 尽管存储巨头们心中都期盼更紧密的整合,但如Kioxia若收购成功,日本似乎就没有留下什么大的存储公司,全球闪存业务掌控在美/韩两国手中也震动行业竞争格局与发展,最可能出现的结果可能还是希望Kioxia在适当的节点进行IPO吧
  • 小米11 Ultra的第二代硅氧负极电池,将会成为小米杀手锏 早在2019年9月,小米概念机MIX Alpha上就使用了纳米硅碳负极材质电池,在4050mAh容量的电池上实现了40W有线闪充。相比起第一代硅碳负极,这次小米11 Ultra采用了更为成熟稳定的硅氧负极材质电池,属于小米第二代硅负极电池技术。高能量密度、高寿命、高性能的硅氧负极电池能否带动电池行业迈向新的篇章?
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了