0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

匠人精神是怎么用在FPGA存储器

OpenFPGA ? 来源:OpenFPGA ? 作者:OpenFPGA ? 2022-06-10 09:06 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

曾经看到过一部红极一时的纪录片《寿司之神》。

小野二郎是世界上年纪最大的米其林三星主厨,老爷子一辈子就钻研了一件事:寿司。

在垂直的领域做到世界顶级,靠的就是匠人精神。


如果我们抛开那些外在的包装和炒作,沉淀下来去观察他做的事情,就不难发现匠人精神的本质,其实就是专业和坚持。

捏寿司是这样,各行各业也是这样,芯片行业也不例外。

推动行业发展的,或许并不是图灵那样可遇不可求的天才,而是更多『匠人』对极致的追求,特别是他们在某个小领域不断地深耕、优化、提升

打个最简单的比方,天才创造了开天辟地的理论,就像是1,但需要无数匠人在后面补上0,才能让这个数变的越来越大。

芯片行业也不例外。

FPGA在1984年诞生的时候,就像是一个不起眼的1,没有人会想到这将成为一个价值几十亿美元的产业。不到四十年的时间,后面加了十个0

这就是指数级的爆发。

摩尔定律描述的就是指数级的规律,而FPGA一直都是体现摩尔定律的最好例子。接下来我们就从FPGA存储器这个小领域,看看匠人精神是怎么用在这里的。

1、新型存储架构

英特尔总结过,FPGA现在和未来的发展趋势只有三个:

传输更快,存储更多,计算更广。

Move fast, Store more, Process everything.

所以,就像不要觉得寿司只是酸米饭配芥末一样,再也不要觉得FPGA只是用来做芯片原型验证的了。FPGA早就被用作高能效的硬件加速单元,去加速你能想到的所有应用了。

FPGA之所以有这样的能力,是由它本身的结构决定的。比如FPGA有着很强的硬件并行性,能像GPU那样进行并行运算,但功耗却低很多;它还能灵活地调整数据的精度,让神经网络的压缩和优化成为现实。

同样重要的是,FPGA能提供极高的内存带宽、同时兼顾计算的效率,从而解决很多应用都存在的内存瓶颈问题。

而存储,就是FPGA上最体现「匠人」功力的地方。

传统的FPGA存储单元并不是只有一种结构,而是分成下面两类:

片上内存:如M20K、MLAB等

片外内存:如DDR5、LPDDR5等

片上内存速度最快、容量最小、造价最高;片外内存速度慢、容量大、造价低。

这样的结构,并不是某个天才一拍脑门想出来的。最早的FPGA只支持片上内存。但是随着需要处理的数据越来越多,就慢慢加入了对片外内存的支持,并且逐渐成为了主流FPGA的标配。

匠人精神的本质,就是不断发现问题、解决问题、并且极致优化的过程。

在这个过程中人们逐渐发现,片上和片外这两种内存之间,仍然存在着一个巨大而关键的缺口:对于很多数据密集型的应用,它们的数据量比片上内存的容量大得多,但对于带宽的需求又比片外内存能提供的大得多

这时出现了第三种内存类型:封装内存。这种内存的最典型代表,就是HBM。

7f155a12-e855-11ec-ba43-dac502259ad0.png

典型的存储层次结构

它之所以叫「封装内存」,是因为内存颗粒与FPGA被集成在同一个芯片封装里了。比如在英特尔最新的Agilex M系列FPGA里,就在芯片的上下两侧通过EMIB技术集成了两个HBM2e,这也是业界第一个集成了HBM2e高带宽存储器的FPGA。这样不仅减小了芯片的尺寸,还能进一步降低功耗和数据传输的时延。

7f4567fc-e855-11ec-ba43-dac502259ad0.png

英特尔Agilex-M FPGA平面图

一个有趣的小知识,Agilex M的“M”,就是Memory存储器的意思。也就是说,Agilex M就是专门为高性能存储而优化的FPGA芯片。

和传统的芯片结构不同,HBM2e是一种三维结构。如果说传统芯片是平房,那么HBM2e就是大楼。所以在容量这个维度,HBM2e秒杀片上内存。比如它可以包含4层或8层,每层提供2GB内存,再考虑到一个Agilex M里包含两个HBM2e,这样FPGA就能提供高达32GB的内存容量,比片上内存多两个数量级

从内存带宽这个维度来看,每个HBM2e能提供410Gbps的内存带宽,比业界前沿的DDR5和GDDR6分别高18倍、和高7倍,比更加“主流”的DDR4等等更不知道要高到哪里去了。

有了HBM,看起来存储的问题已经解决了?还远远没有:HBM只是第一步。

2、新型非易失性存储

对于片外内存,新的问题又出现了。对于很多应用来说,DDR最大的问题并不是慢,而是断电后数据会消失。这时人们就不得不采用闪存这样的“非易失性”存储,来保存那些关键数据。但硬币的另一面,是闪存的性能比DDR还要低。

为了解决这个问题,英特尔提供了一种名叫“傲腾”的新型存储介质,这种存储级内存其存储密度比普通内存高,但存取速度又比闪存快。更重要的是,傲腾技术作为一种持久内存的形态存在时,它独有的非易失性,使得它里面存的数据在断电后并不会消失。

DRAM 内存相比,持久内存具有更经济的价格和更大的容量,和固态盘相比则拥有更优的数据响应速度和传输速度(接近 DRAM 内存)。正因于此,傲腾也逐渐成为了很多高性能应用里的关键存储单元,多用来做内存的大补充或者为内存密集型应用和延时敏感型应用服务。

3、片上网络,终于来了

同样还在进化的,是FPGA的芯片架构。之前的文章里介绍过,Agilex FPGA对芯片布局进行了大修,把各种I/O接口和存储单元都移到了芯片的上下两端,把各种高速收发器放在了芯片的左右两端,这样芯片中间就成了一个像足球场一样的特别平整的结构。之前开一个大脚会踢到各种模块单元,数据跑起来自然就慢。现在一马平川,没有挡路的东西了,数据跑起来就快多了。

可以说,这已经是近几年来FPGA架构上最有创意的尝试了。但你以为这样就完了吗?

Agilex M最大的架构变化,就是引入了片上网络Network-on-Chip。这就像在城市规划里,不仅有道路交通,还有轨道交通。在轨道上运行的地铁或城铁,不仅速度可以更快,还能运更多的人。更重要的是,轨道可以建在地上或者地下,不影响在路上跑的汽车自行车摩托车。

7f78d9d4-e855-11ec-ba43-dac502259ad0.png

Agilex-M的片上网络NoC结构示意图

Agilex M的片上网络专门为存储设计,也就是说,这是一趟专列

有了片上网络,FPGA和各种内存之间的数据传输就不用经过FPGA的路由资源了。HBM2e通过UIB接口连接片上网络、DDR和傲腾这些片外内存则通过IO96子系统连接片上网络,并且可以实现7.52Tbps的总带宽。

4、其他架构优化

除了片上网络,Agilex M还有很多其他的架构优化。I/O方面,它的收发器带宽可以达到116Gbps,可以支持CXL、PCIe Gen5、400G以太网等等这些数据中心网络通信的最新协议和接口。

计算性能方面,Agilex M集成了高达12300个可变精度DSP模块,可以支持高达18.5TFLOPS的单精度浮点运算、37TFLOPS的半精度浮点运算、以及88.6TOPS的INT8运算。

结语

作为专门针对存储性能进行优化的FPGA,英特尔 Agilex M已经把优化做到了极致。这样的优化方式和思路其实有着很强的普适意义:它并不是由某个天才创造出来的突破性成果,而是在各种问题的驱动下,一步一步发展起来的,然后靠一个个拥有「匠人精神」工程师的专注与积累,达到最后的结果。

在大多数情况下,这种方式更加现实,也更加有效。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1646

    文章

    22098

    浏览量

    620810
  • 芯片
    +关注

    关注

    460

    文章

    52740

    浏览量

    444272
  • 存储器
    +关注

    关注

    39

    文章

    7663

    浏览量

    168428

原文标题:为什么芯片设计也需要「匠人精神」?

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    存储器的分类及其区别

    初学者要了解SDRAM需要先了解存储器分类。按照存储器存储功能划分,可将其分为RAM 和 ROM 两大类。
    的头像 发表于 02-08 11:24 ?3046次阅读
    <b class='flag-5'>存储器</b>的分类及其区别

    闪速存储器属于RAM还是ROM,闪速存储器一般用来做什么的

    在数字存储技术的快速发展中,闪速存储器(Flash Memory)以其独特的性能和广泛的应用领域,成为了连接随机存取存储器(RAM)与只读存储器(ROM)之间的重要桥梁。本文将深入探讨
    的头像 发表于 01-29 16:53 ?1128次阅读

    高速缓冲存储器是内存还是外存,高速缓冲存储器是为了解决什么

    高速缓冲存储器(Cache)是内存的一种特殊形式,但它与通常所说的主存储器(RAM)有所不同。在计算机存储体系中,Cache位于CPU和主存储器之间,用于
    的头像 发表于 01-29 11:48 ?1600次阅读

    什么是ROM存储器的定义

    一、ROM存储器的定义 ROM存储器是一种在计算机和电子设备中用于存储固定数据的存储器。与RAM(随机存取存储器)不同,ROM
    的头像 发表于 11-04 09:59 ?3633次阅读

    存储器的分类和特点是什么

    存储器(Internal Memory),也称为主存储器或随机存取存储器(RAM),是计算机系统中用于存储数据和程序的硬件组件。它是计算机运行过程中最直接、最快速的数据存取介质。 内
    的头像 发表于 10-14 10:09 ?2553次阅读

    存储器主要用来存储什么

    存储器(内部存储器)是计算机硬件的重要组成部分,它直接与中央处理(CPU)相连,用于存储正在运行的程序和当前处理的数据。内存储器的容量、
    的头像 发表于 10-14 09:55 ?2679次阅读

    存储器分为随机存储器和什么

    存储器是计算机系统中用于临时存储数据和程序的关键部件,它直接影响到计算机的运行速度和性能。内存储器主要分为两大类:随机存储器(RAM,Random Access Memory)和只读
    的头像 发表于 10-14 09:54 ?3074次阅读

    存储器中访问速度最快的是什么

    在探讨存储器中访问速度最快的是哪一种时,我们首先需要了解计算机存储系统的层次结构以及各类存储器的特性和功能。计算机存储系统通常包括多个层次的存储器
    的头像 发表于 10-12 17:01 ?4032次阅读

    简述非易失性存储器的类型

    非易失性存储器(Non-Volatile Memory, NVM)是指即使在电源关闭或失去外部电源的情况下,仍能保持存储数据的计算机存储器。这类存储器在数据保存方面具有重要的应用价值,
    的头像 发表于 09-10 14:44 ?2519次阅读

    什么是存储器的刷新

    存储器的刷新是动态随机存取存储器(DRAM)维护所存信息的一种重要机制。由于DRAM利用存储元中的栅极电容来存储电荷,而电容本身存在漏电流,导致电荷会逐渐流失,从而使得
    的头像 发表于 09-10 14:34 ?2723次阅读

    PLC主要使用的存储器类型

    PLC(可编程逻辑控制)中的存储器是其重要组成部分,用于存储程序、数据和系统信息。PLC的存储器主要分为两大类:系统存储器和用户
    的头像 发表于 09-05 10:45 ?5990次阅读

    外部存储器有哪些

    外部存储器是指用于存储数据的独立设备,它们通常与计算机或其他电子设备连接,并提供额外的存储空间,允许用户在不改变主设备内部存储的情况下保存和访问大量数据。常见的外部
    的头像 发表于 09-05 10:42 ?5504次阅读

    内部存储器有哪些

    内部存储器,也称为内存(Memory),是计算机系统中用于暂时存储程序和数据的重要组件。它直接与CPU相连,是CPU处理数据的主要来源。内部存储器主要由随机存取存储器(RAM)和只读
    的头像 发表于 09-05 10:42 ?4957次阅读

    OptiFlash存储器技术

    电子发烧友网站提供《OptiFlash存储器技术.pdf》资料免费下载
    发表于 08-23 10:02 ?0次下载
    OptiFlash<b class='flag-5'>存储器</b>技术

    微控制内部的存储器有哪些

    微控制(MCU)内部的存储器是微控制系统的重要组成部分,它负责存储程序代码、数据以及控制逻辑等信息。这些存储器类型多样,各具特点,共同支
    的头像 发表于 08-22 10:41 ?1570次阅读