您的位置 首页 IOT

浅谈存储器体系结构的未来发展趋势

浅谈存储器体系结构的未来发展趋势-对存储器带宽的追求成为系统设计最突出的主题。SoC设计人员无论是使用ASIC还是FPGA技术,其思考的核心都是必须规划、设计并实现存储器。系统设计人员必须清楚的理解存

  对存储器带宽的寻求成为体系规划最杰出的主题。SoC规划人员不管是运用ASIC仍是FPGA技能,其考虑的中心都是有必要规划、规划并完结存储器。体系规划人员有必要清楚的了解存储器数据流形式,以及芯片规划人员树立的端口。即便是存储器供货商也面对DDR的退出,要了解体系行为,以便找到持续开展的新办法。

  曾经在斯坦福大学举行的热门芯片大会上,寻求带宽成为论文评论的主题,规划人员介绍了许多办法来处理所面对的应战。从这些文章中,以及从现场作业的规划人员的经历中,能够大约看出存储器体系体系结构往后会怎样开展。

  存储器壁垒

  基本问题很明显:现代SoC时钟频率高达吉赫兹,并且具有多个内核,与单通道DDR DRAM比较,每秒会宣告更多的存储器请求。仅仅如此的话,会有很显然的计划来处理这一问题。可是,这背面还有重要的精细结构,使得这一问题十分杂乱,导致有各式各样的处理办法。

  SoC开发人员重视的要点从高速时钟转向多个内核 , 这从根本上改动了存储器问题。不再是要求一个 CPU每秒有更高的兆字节(MBps) ,现在,咱们面对许多不同的处理器——经常是许多不同类型的处理器,都要求一起进行拜访。并且,存储器拜访的首要形式发生了改动。科学和商业数据处理使命一般涉及到许多的部分拜访,或许更糟糕的是选用相对紧凑的算法很慢的传送许多的数据。装备适度规划的本地SRAM或许高速缓存,这类使命的一个CPU对主存储器的需求并不高。

  DRAM芯片规划人员利用了这种易用性,以便完结更高的密度和能效。相应的,以可猜测的次序请求大块数据时,DRAM完结了最佳比特率——它答应块间插。假如SoC不选用这种常用形式,存储器体系的有用带宽会下降一个数量级。

  新的拜访形式

  欠好的是,SoC的开展使得DRAM规划人员的假定难以完结。多线程以及软件规划新出现的趋势改动了每一内核拜访存储器的办法。多核处理以及越来越重要的硬件加速意味着许多硬件要竞赛运用主存储器。这些趋势使得简略的部分拜访变得杂乱,DRAM带宽与此有关。

  多线程意味着,当一个存储器请求错失其高速缓存时,CPU不会等候:它开端履行不同的线程,其指令和数据区会在与前面线程彻底不同的物理存储区中。细心的多路高速缓存规划有助于处理这一问题,可是终究,接连DRAM请求依然很有或许去拜访不相关的存储区,即便每一线程都细心的优化了其存储器安排。类似的,竞赛同一DRAM通道的多个内核也会打乱DRAM拜访次序。

  软件中的改动也会发生影响。表查找和链接表处理会对大数据结构发生随机涣散存储器拜访。数据包处理和大数据算法将这些使命从操控代码转移到大批量数据处理流程,体系规划人员不得不专门考虑怎样高效的处理它们。虚拟化把许多虚拟机放到同一物理内核中,使得存储器数据流愈加杂乱。

  传统的处理计划

  这些问题并不是什么新问题——仅仅变杂乱了。因而,芯片和体系规划人员有许多老练的办法来满意越来越高的基带带宽需求,进步DRAM的拜访功率。这些办法包含软件优化、高速缓存以及布置DRAM多个通道等。

  大部分嵌入式体系规划人员习惯于首要会想到软件优化。在单线程体系中,软件在很大程度上过度运用了存储器通道,能耗较高。可是在多线程、多核体系中,软件开发人员对DRAM操控器上的实践事情次序的影响很小。一些经历标明,他们很难改动实践运转时数据流形式。DRAM操控器能够运用从头排序和公正算法,编程人员对此并不清楚。

  高速缓存的功率会更高——假如高速缓存足够大 ,能够明显削减DRAM数据流。例如,在嵌入式多核完结中,相对较小的L1指令高速缓存与规划适度的L2一起作业,能够彻底包容一切线程的热门代码,有用的削减了对主存储器的指令获取数据流。类似的,在信号处理运用中,把相对较少的数据适配到L2或许本地SRAM中,能够去掉滤波器内核负载。要发生较大的影响,高速缓存纷歧定要实践削减DRAM请求总数量——只需求维护首要请求源不被其他使命中止,因而,编程人员能够优化首要使命。

  当芯片规划人员无法确认即将运转在SoC中的各种使命时,则倾向于只需本钱答应,供给尽或许多的高速缓存:一切CPU内核和加速器的L1高速缓存、大规划同享L2,以及越来越大的管芯L3。在热门芯片大会上,从平板电脑级运用处理器到许多的服务器SoC,有许多高速缓存的实例。

  在低端,AMD的Kabini SoC (图1) 便是很风趣的研讨。AMD资深研讨员Dan Bouvier介绍了这一芯片,它包含四个Jaguar CPU内核,同享了2兆字节(MB) L2高速缓存,而每个Jaguars有32千字节(KB)指令和数据高速缓存——并不是非传统的协议。更惊讶的是芯片的图形处理器,除了常用的色彩高速缓存以及用于烘托引擎的Z缓冲,还有它自己的L1指令高速缓存和128 KB L2。

  

  图1.AMD的Kabini SoC方针运用是平板电脑,可是依然选用了大规划高速缓存,明显进步了存储器带宽。

  而在高端则是IBM的POWER8微处理器(图2),IBM首席网络规划师Jeff Stuecheli介绍了这一款芯片。这一650 mm2、22 nm芯片包含12个POWER体系结构CPU内核,每个都有32 KB指令和64 KB数据高速缓存。每个内核还有自己512 KB的SRAM L2高速缓存,12 L2同享大容量96 MB的嵌入式DRAM L3。Stuecheli介绍说,三级接连高速缓存支撑每秒230吉字节(GBps)的存储器总带宽。风趣的是,芯片还含有一个小容量会话存储器。

  

  图2.IBM的POWER8体系结构在SoC管芯上完结了三级高速缓存。

  在这两个SoC之间是为微软的XBOX One供给的多管芯模块(图3),微软的John Snell在大会上对此进行了介绍。模块含有一个SoC管芯,供给了丰厚的存储器资源。SoC有8个AMD Jaguar内核,分红两组,每组4个。每一内核有32 KB的L1指令和数据高速缓存。每4个一组的CPU内核同享一个2 MB L2。此外,管芯上还有4个8 MB同享SRAM,它们至少为CPU供给了109 GBps的带宽。

  

  图3.微软的XBOX One结合了大容量高速缓存、本地SRAM以及模块内DRAM,以低本钱完结了更大的带宽。

  运用DRAM

  而XBOX One SoC还提醒了更多的信息。不管您有多大的管芯高速缓存,都无法代替巨大的DRAM带宽。SoC管芯包含四通道DDR3 DRAM操控器,为模块中的8 GB DRAM供给了68 GBps峰值带宽。

  DRAM多通道的概念并不限于游戏体系。几年前,数据包处理SoC就开端供给多个彻底独立的DRAM操控器。可是这种战略带来了应战。存储器优化会愈加杂乱,体系规划人员有必要决议哪种数据结构映射哪一通道或许操控器。当然,还有或许要求自己的DRAM操控器完结某些高要求使命,在一些嵌入式运用中,这些操控器是十分名贵的。而DRAM多通道会很快用完引脚,竭尽I/O功耗预算。

  即便在FPGA规划中,引脚数量也是一个问题,规划人员应能够十分灵敏的从头安排逻辑,挑选较大的封装。Altera的高档体系开发套件(图4)电路板首要用于原型开发,完结宽带规划,运用领域包含HD视频处理、7层数据包检查,或许科学核算等,这是十分有用的套件。

  

  图4.Altera的高档体系开发套件极大的满意了两片大规划FPGA的存储器需求。

  Mark Hoopes是Altera播送运用专家,解说了电路板应供给很大的存储器带宽,不需求详细的知道用户在两片大规划FPGA中完结的某些规划。因而,规划电路板时,Hoopes检查了现有Altera视频知识产权(IP)的存储器运用形式,调研了外部规划团队的需求。

  成果让人清醒。Hoopes说:“当您检查每一项功用时,看起来都需求存储器。可是,当您把功用结合起来后,其需求十分大。在一个比如中,运用程序开发人员要求为每一片FPGA供给全256位宽DDR3接口以及四通道QDR II SRAM。即便是1932引脚封装,这也无法完结。因而,规划人员终究选用了四个SRAM块以及一个192位DDR3接口。

  Hoopes指出了多个存储器操控器关于SoC十分重要。他说,IP开发人员一般能够娴熟的在子体系级优化存储器,乃至能够供给他们自己经过优化的DRAM操控器。还能够让一个DRAM通道专门用于子体系,让其他IP模块运转子体系规划人员的优化办法。

  未来开展

  在开发板上还有另一个风趣的模块:每片FPGA衔接了一个MoSys带宽引擎。这一芯片含有72 MB的DRAM,安排成256块来仿真SRAM时序,调整用于表存储等部分拜访运用。十分共同的是,芯片运用了一个高速串行接口,而不是常用的DDR或许QDR并行接口。Hoopes着重说:“接口是咱们包含这些组成的一个原因。咱们在FPGA中有未运用的收发器。”实践是,MoSys先运用了它们。

  三种理念——咱们都现已别离了解了,能够交融来界说往后的存储器体系结构。这些理念是大规划嵌入式存储器阵列、运用了容错协议的高速串行接口,以及会话存储器。

  MoSys芯片和IBM POWER8体系结构很好的表现了前两种理念。CPU SoC经过第二个芯片与DRAM通讯:Centaur存储器缓冲。一个POWER8能够衔接8个Centaurs,每个都经过一个专用每秒9.6吉比特(Gbps)的串行通道进行衔接。每个Centaur含有16 MB存储器——用于高速缓存和调度缓冲,以及四个DDR4 DRAM接口,还有一个十分智能的操控器。IBM将Centaur芯片放在DRAM DIMM上,避免了在体系中跨过8个DDR4衔接器。这样,规划集中了许多的存储器,终究正确的选用了快速串行链接,由重试协议进行维护。

  另一热门芯片实例来自MoSys,在大会上,他们介绍了其下一代Bandwidth Engine 2。依据所选用的形式,Bandwidth Engine 2经过16个15 Gbps的串行I/O通路衔接处理子体系。芯片含有四个存储器分区,每个包含64块32K 72位字:在第一代,一共72 MB。许多块经过智能的从头排序操控器以及大容量片内SRAM高速缓存,躲藏了每一比特单元的动态特性。

  除了Centaur芯片所宣告的特性,Bandwidth Engine 2还在管芯上供给了会话功用。各种版别的芯片供给板上算术逻辑单元,因而,计算收集、计量,以及原子算法和索引操作等都能够在存储器中进行,不需求将数据实践移出到外部串行链路上。内部算术逻辑单元(ALU)很显然能够用于旗语和链接表运用。而其他的硬件使得芯片有些专用的特性。MoSys技能副总裁Michael Miller介绍了四种不同版别的Bandwidth Engine 2,它们具有不同的特性。

  往后的华章或许不是由CPU规划师编撰的,而是取决于低本钱商用DRAM供货商。Micron技能公司详细完结了混合立方存储器(HMC)标准,开发原型,宣告了他们的接口合作伙伴。 HMC是一组DRAM块,堆叠成逻辑管芯,经过一组高速串行通路衔接体系的其他部分。 Micron并没有揭露评论逻辑管芯的功用,据估测,或许含有DRAM操控和缓冲,以仿真SRAM功用,还有或许包含专用会话功用。

  逻辑嵌入在存储器子体系中这一理念包含了很风趣的意义。能够拜访许多的逻辑栅极和高速缓存的本地DRAM操控器实践上能够虚拟化去除劣化存储器带宽的一切DRAM芯片特性。IBM还在热门芯片大会上介绍了zEC12大型机体系结构,它在硬盘驱动直至它所操控的DRAM DIMM上运用了RAID 5协议,实践大将DRAM块用作多块、并行冗余存储器体系。相同的原理也能够用于将大块NAND闪存集成到存储器体系中,供给了RAID办理分层存储,能够用作虚拟大容量SRAM。

  毫无疑问对SoC的需求越来越大。因而,串行链路和本地存储器,特别是本地智能化会彻底改动咱们怎样考虑存储器体系结构。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/iot/174768.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部