广告

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

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

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

Dbvednc

图 1 点积操作Dbvednc

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

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

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

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

  • 配置说明

Dbvednc

表 1 FP16点积配置表Dbvednc

  • 端口说明

Dbvednc

表 2 FP16点积端口说明表Dbvednc

  • 时序图

Dbvednc

图 2 FP16点积时序图Dbvednc

其中,Dbvednc

Dbvednc

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

  • 进位链

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

Dbvednc

图 3 MLP进位链Dbvednc

  • 乘法阶段

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

Dbvednc

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

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

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

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

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

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

Dbvednc

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

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

Dbvednc

图 6 FP16点积逻辑框图Dbvednc

MLP内部数据流示意图:Dbvednc

Dbvednc

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

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

Dbvednc

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

  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
  • 高通发布4nm骁龙W5+骁龙W5芯片,专为可穿戴设计 据EDN电子技术设计报道,高通7月20日正式发布了全新4nm制程的骁龙可穿戴平台W5 Gen1和骁龙W5+ Gen。与两年前的上一代产品骁龙wear 4100相比,骁龙W5与W5+采用了全新的命名方式,整体功耗降低超50%。SoC工艺从12nm提升到4nm,协处理器使用22nm制程工艺。
  • 苹果新款Apple Watch Series 8新增内置传感器,可监测体 据最新报道称,由于新的内置传感器,即将推出的Apple Watch Series 8将能够告诉佩戴者是否体温高于正常水平。
  • 小米12s系列发布:首款徕卡品牌、1 英寸摄像头传感器、 继一加牵手哈苏(HASSELBLAD)以及 Vivo 牵手蔡司之后,小米和徕卡在今年早些时候也宣布建立合作伙伴关系。小米在六月底宣布,小米 12S 系列将成为该交易的第一批手机,就在昨日,小米举办了小米12S系列新品发布会,包括小米12S、小米12S Pro、小米12S Ultra三款手机,这三款手机均提供徕卡 Summicron 镜头以减少眩光并提高透光率,同时还提供徕卡成像配置文件。
  • 手动拆解十万元的比亚迪“元”,附详细拆解图 大家是不是对手机、电脑等小型消费电子的拆解已经习以为常了?这次有个券商搞了个大动作,动手拆了一辆市场价值十万元的比亚迪“元”,还撰写了一份详细的拆解报告,刷屏了券商、汽车等行业,网友们也大呼“硬核”。
  • 莱迪思半导体CEO Jim Anderson:“与优秀的人一起工作 我父亲一直是我的导师。他是一名高中理科老师,后来成了校长。在我的成长过程中,他一直都会给我我所需要的建议——并不总是我所想要的,而是我所需要的建议。他给我最好的建议是要我和我后来娶的那个女孩约会。我们结婚已经超过25年了。对于任何重大的个人决定,我仍然会征求他的意见。
  • 苹果最新芯片技术曝光:A16仍使用5nm,M2将升级为3nm 据EDN电子技术设计报道,日前Twitter 用户“ShrimpApplePro”爆料称苹果正在开发“最终”的 M1 芯片变体,它使用 A15 中更强大的内核。郭明錤今天在Twitter 上引用 ShrimpApplePro 的帖子,证实了有关 A16 和“M2”芯片的这些传闻。
  • 苹果iPhone 14的最新爆料:关于摄像头、处理器、基带、 选用的将是夏普和LG Innotek供应iPhone14的前置摄像头,也有其它渠道消息显示两家制造商的供应比例是相同的。
  • AMD 推出了基于其 Kria FPGA 模块的机器人入门套 AMD 推出了基于其 Kria FPGA 模块的机器人入门套件,售价 349 美元,交付周期为 20 周。这是 Kria 自适应系统模块(SOM)和开发套件组合的最新产品。
  • 赛灵思强劲的AI引擎能为AMD带来哪些新发展? AMD收购赛灵思的目的在于将其差异化IP集成到公司未来旗下的CPU中,Xilinx无论是从丰富的计算引擎还是其AI引擎技术都能让AMD在服务器CPU市场上扩大影响力
  • 为何10BASE-T1S是汽车通信中缺失的以太网链路 新的IEEE汽车以太网标准不断涌现,10BASE-T1S以太网是最新标准之一。本文讨论汽车行业的发展趋势,它们反映了汽车电子/电气(E/E)架构的变化,以及新10BASE-T1S标准如何支持和推动这种新架构的部署。
  • 工程师如何打造专属居家办公室? 2021年11月初,当我提笔写这篇文章时,掐指一算,自己在家工作的岁月将近25个年头了。诸如‘Zoom’等视频会议如今已是常态,说不定摄影机也都得处于常开状态。除了我那只丑陋的马克杯和自己单调的表达方式之外,接下来分享我所学到的:如何影音双管齐下地在在线展现自我……
  • 传感器技术在构建实时监控系统中的作用 无线传感器技术正在成为一个有前途的概念,这对每个虚拟市场都有重大影响。随着需要更快计算处理的数据密集型应用的数量增加,对实时监控系统的需求呈指数增长。尽管传感器节点的需求随着应用的规模而扩大,但终端设备却已通过对智能传感器的高效建模不断改进数据处理。
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了