爱游戏-BPO行业整合方案提供者
专业化、科技化、国际化;高标准、广覆盖、全流程
了解更多FPGA将来硬件架构切磋-NoC 时候:2024-11-29 18:26:56 手机看文章
扫描二维码随时随地手机看文章
片上彀络 (NoC) 是一种用在组织位在统一芯片上的操作模块之间的通讯的方案。它旨在连系各类用处的计较焦点(履行、图形、物理等)、装备节制器、ROM 和 RAM 模块、自力装备、传感器和更多可以放置在硅晶体上的工具。今朝,NoC 是一般微处置器手艺特殊是单芯片系统成长最有前程的范畴之一。
接下来会起首阐发一下NoC的特点,然后申明一下今朝FPGA范畴在这个硬件架构下的利用,最后简单阐发将来这一架构的前景。
NoC开首已介绍了几个概念,这里在简单介绍一下:
R为路由节点,Core为计较节点。
起首,让我们弄清晰开辟的片上彀络架构的典型特点是甚么。与在模块之间成立直接链接或将所有模块毗连到一个或多个公共总线(此中旌旗灯号经由过程不异的线路但在分歧的时候传输)的传统方案分歧,这类架构意味着每一个模块都毗连到一个内部收集成立在互换机上,它将路由它们与操作块之间的旌旗灯号。
每一个互换机都是一个收集节点,近似在传统数据收集中的近似物——LAN 和 WAN。互换机将数据拆分为更小的部门(数据包),并以这类情势经由过程一系列后续互换机将它们发送给领受者。每一个中心节点阅读领受到的数据包的报头以搜刮目标地,并按照路由表将它们转发到下一个。需要留意的是,数据包可以经由过程分歧的体例达到终究互换机,由于中心节点可以按照特定毗连的负载(动态路由)改变它们的路由。终究互换机从数据包中搜集原始动静并将其传输给领受者。另外,如许的互换系统答应为分歧的流量设置优先级(例如,办事质量单芯片系统中的算法)。
当前概念中的片上彀络拓扑基在三种类型的元素:
开关(路由); 通道; 资本收集接口。互换机按照所选拓扑采取在收集节点之间路由旌旗灯号的使命。请留意,NoC 的架构假定利用了一个相当壮大的开关,这将供给最低程度的延迟(最多纳秒)。可是因为它的实现,除提高处置能力以外,还可以实现集成分歧供给商的 IP 内核(包罗图形内核、节制器和旌旗灯号微处置器)供给的矫捷性(条件是它们配备了兼容的收集接口),和可能的收集拓扑的选择(由于可以经由过程各类体例成立各个功能块之间的通讯)。
通道供给互换机和收集接口之间的物理毗连。一些变体乃至会包罗通讯缓冲区。
最后,资本收集接口。这些 NoC 元素将确保各个 SoC 元素与公共内部收集的毗连。
NoC和SoC有甚么区分?现代半导体是真实的科学古迹,微处置器架构的奥妙的地方可能会让初学者感应猜疑。让我们扼要回首一下片上彀络和片上系统概念之间的区分。
片上彀络是一种非凡方案,用在在 SoC 或处置器内的有限组件之间成立链接。它确保了最年夜的数据传输速度并削减了需要的物理毗连总数。另外,正如我们已指出的那样,它答应未来自分歧供给商的分歧目标的多个 IP 放置在统一个晶体中。
片上系统 (SoC) 是包括一整套多样化和互连单位的单芯片,旨在解决必然规模的使命。传统上,SoC 包罗几个计较内核、内存节制器、I/O 子系统、它们之间的毗连和切换体例(总线、交叉开关、NoC 元件)。
是甚么让 NoC 的理念绘声绘色:处置器机能晋升的问题仅在十几年前,提高处置器机能的首要方式是提高当时钟频率(普遍的方式)。但是,在到达 2 GHz 以后,工程师们碰到了第一个问题,包罗所用材料的物理限制(二氧化硅层太薄,没法包管晶体管的切确切换:存在“漏电流”,致使晶体过热、功耗过年夜,乃至操作不妥)和手艺工艺(可以经由过程减小逻辑元件的物理尺寸来下降能耗,这是现有光刻方式和半导体材料难以实现的)。是以,最先寻觅替换解决方案。一系列立异手艺使现代 CPU 可以或许在 3.8-4 GHz 下不变工作。
首要是基在在单个封装中集成多个处置器内核的计较并行化。并行计较自己其实不是一个新话题:使命并行化的第一个理论论证是由 Gaspard de Prony 在 18 世纪末为法国地籍计较对数和三角表时提出的。在现代计较机手艺的利用中,自 1950 年月“年夜型”计较机呈现以来,并行计较获得了成长。在这里,几个自力处置器的结合工感化在计较——在某些环境下多达数千个。但是,直到 1980 年月中期,这类方式依然是年夜型机的特权——直到第一台基在桌面处置器(英特尔 8086)的超等计较机在加州理工学院并发计较项目.
事实上,多核处置器不是专注在单个履行线程中每秒可能履行的最年夜操作数,而是答应同时履行多个线程,每一个焦点最多两个线程。这个设法自己很好,除一点:并行计较的机能在很年夜水平上取决在特定使命的并行化水平和开辟人员应对它的能力。
还一个问题。从一最先,这些单位(内核)之间的毗连元素就是处置器总线——单核处置器的传统。它的首要错误谬误是一次只有一个处置器块可以传输数据。所有其他单元只能是那时的收件人。当需要从 N 个块传输旌旗灯号时,在每一个给定的时候片内,N-1 个块必需“期待”轮到它们。这类期待会致使延迟,这对承当高负载的系统来讲是一个严重的错误谬误。特殊是,这一特征最先阻碍处置器公司的进一步成长,这些公司追求增添其产物中的内核数目。究竟,假如有良多强迫碰撞,那末年夜量的焦点没有任何优势。总线布局成长的下一个阶段是矩阵方案,也称为交叉开关。但现实上,这只是增添了各个块之间的链接数目。这就是为何交叉开关也不是问题的明白解决方案。如许的毗连方案只是答应经由过程组织更多的交叉链接将问题推延一段时候。
不幸的是,这两个身分严重制约了软件开辟人员。他们必需寻觅解决方式来履行他们的使命。
在这里,我们找到了问题的本源。解决它的三个构成部门和可能的路子:
时钟频率增添。在没有昂贵的冷却系统的环境下,今朝的科学状况几近没法答应将时钟频率提高到 5 GHz 以上。研究正在进行中,但成果不会很快出来。 运算焦点的倍增和专业化。仅经由过程增添焦点来提高处置器的机能,假如后者之间的彼此通讯基在总线架构和其衍出产品,则在每一个晶体 16 个焦点的点上会耗尽本身。 编程中的并行方式。并行编程的方式相当做熟,可是:起首,并不是每一个使命都可以并行化。有良多问题需要顺次解决;
其次,这里的一切都取决在法式员:他们的技术和东西。芯片制造商力所不及,虽然英特尔,超微, 和高通– 所有领先的供给商 – 尽其所能供给帮忙。
比来,在寻觅第二条线路的解决方案时,工程师们提出了实现基在数据包的互换/路由系统的设法(如现代通讯系统中所见——TCP/IP、蜂窝收集、Wi-Fi、蓝牙等)。经由过程路由数据包在处置器块之间成立关系的全部设法称为片上彀络(NoC)。
3D-NoC上面介绍的是今朝经常使用的2D-NoC架构,其实NoC还一种3D架构,以下图所示:
这类架构和2D-NoC差不多,只不外路由部门复杂一些。
FPGA在NoC架构上的利用FPGA从Xilinx公司1985年推出生避世界首款FPGA芯片“XC2064”履历过数十年成长,今朝在各年夜范畴年夜放异彩,下面是其年夜致的成长过程。
其实今朝FPGA厂家都在年夜容量FPGA设计上费尽心力,此中NoC硬件架构也是其摸索的一个标的目的。
Achronix Speedster7t FPGA2020年上半年,Achronix 公司推出了基在台积电(TSMC)的 7nm FinFET 工艺的 Speedster7t FPGA 器件,该器件包括了革命性的新型二维片上彀络(2D-NoC)。该2D-NoC 犹如在 FPGA 可编程逻辑布局上运行的高速公路收集一样,为 FPGA 外部高速接口和内部可编程逻辑的数据传输供给了超高带宽(~27Tbps)。
图 1 Speedster 7t FPGA 布局图
据介绍,该FPGA不但在架构上利用NoC,通道上也是利用了尺度AXi通道(每行或每列都有两个 256 位的、单向的、行业尺度的 AXI 通道),该通道可以在每一个标的目的上以 512Gbps(256bit x 2GHz)的传输速度运行。
下面以三重数据加密解密算法(3DES)为例介绍一下NoC架构的特点,在传统FPGA上实现该算法后端结构以下:
3DES 设计(没有效 NoC)后端结构布线图从上图中可以看出来良多问题:
总线之间有交叉这会年夜年夜增添结构布线时候。
加密息争密模块中心的连线太长,致使延时很长。该问题可以经由过程增添缓存寄放器或流水操作解决,可是如许带来的问题:一是机能受限;二是总线宽渡过年夜,增添相干寄放器占用的寄放器资本很年夜。
这类问题,应当良多厂商城市碰到,仿佛利用NoC该问题便可以水到渠成,下图是利用2D-NoC的综合成果。
操纵 2D NoC 进行内部逻辑互连在 NoC 的每一个交叉点上都有两个收集接入点(NAP),用户只要简单地经由过程例化原语或宏界说便可以将本身的逻辑接入到 NoC 并进行互连。
收集接入点 NAP例化 NAP 宏界说示例经由过程例化等操作,下图是后端结构布线完成后的示意图:
3DES 设计(操纵 NoC)后端结构布线图经由过程上面的操作,不但仅简化了用户的设计(优化时候),并且机能也提高了(理论上,从260MHz 提高到了 750MHz),后续的优化也就简化了良多。
此次Achronix 新一代的 Speedster7t FPGA 来简化和加快用户的设计,不但仅是一种测验考试,更能看出将来在年夜型设计时,NoC总线在FPGA中的利用。
假如说Achronix是在国内比力“小众”的公司,那末Xilinx在NoC标的目的上的利用更能申明问题。
Xilinx AI 引擎手艺(AIE)这部门参考:
❝https://china.xilinx.com/content/dam/xilinx/support/documentation/architecture-manuals/am009-versal-ai-engine.pdf
❝https://china.xilinx.com/content/dam/xilinx/support/documentation/white_papers/c_wp506-ai-engine.pdf
❝https://china.xilinx.com/content/dam/xilinx/support/documentation/application_notes/xapp1352-beamforming-ai-engine.pdf
❝https://china.xilinx.com/content/dam/xilinx/support/documentation/white_papers/EW2020-Deep-Learning-Inference-AICore.pdf
具体的信息在上面链接文档中都有介绍,下面简单介绍一下:
在Versal ACAP系列中,Xilinx(此刻叫AMD了)FPGA中集成了AI 引擎,以下图中AI Engine(下简称AIE)。
为了这下AIE高效有序的工作,AMD采取了“ 2D 阵列架构”的体例,下图就是示意图:
这就是我们说的2D-NoC架构,官网上具体介绍了这类架构的长处:
同时,AMD的架构也是和上面介绍的Achronix架构一样,采取NoC架构和AXI总线,下图就是AXI总线在Versal ACAP中的示意图:
全部系统其实比我描写的要复杂的多,这里只是简单介绍一下,具体的设计可以参考上面的链接。
经由过程这两FPGA厂家的一些架构阐发,我们也能简单看到一些将来FPGA的微架构可能会年夜量采取NoC硬件架构以顺应加倍复杂的利用,特别此刻FPGA对一些嵌入式内核、AI内核的需求愈来愈年夜。
NoC在FPGA利用上的成长前景今朝,NoC 利用的首要范畴依然是超等计较机的缔造(例如,基在 260 核的神威中国江南计较尝试室公司的处置器系列)。但是,所有领先的芯片制造商已在桌面和办事器芯片的开辟中实现了零丁的 NoC 元素。例如,Infinity Fabric来自 AMD - 最新 Zen (CPU) 和 Vega (GPU) 处置器系列的根本 - 或 AMD 和英特尔的结合开辟:Kaby Lake-G。
至在在FPGA利用上,我们也能看出来:
NoC 为 FPGA 设计供给了几项主要优势,包罗:
提高设计的机能。削减逻辑资本闲置,在高资本占用设计中下降结构布线堵塞的风险。
减小功耗。
简化逻辑设计,由 NoC 去替换传统的逻辑去做高速接口和总线治理。
实现真实的模块化设计。
今朝短时间内,这项手艺还需要解决本身的一些短板,好比虚拟旁路和低摆幅旌旗灯号。这些手艺可以进一步下降功耗并最年夜限度地削减传输延迟,从而可以按照需要扩大系统范围并增添内核数目(而不影响其功能)。
最后在介绍几个NoC 系统的领先开辟商:
最闻名的 NoC 系统和元件开辟商是NetSpeed Systems(http://netspeedsystems.com/), Arteris, Sonics和Aims Technology Inc。他们为高通和英特尔等世界知名芯片供给商建立理论和硬件解决方案。
以上就是本人的小我看法,若有分歧看法,接待后台留言斧正。
欲知详情,请下载word文档 下载文档