增长数据缓冲的作用

随着数据流的继续膨胀失控,管理数据的处理变得越来越重要,更加困难。

受欢迎程度

数据缓冲抬头来加快处理越来越多的大量的数据。

简而言之,数据缓冲区是一个物理的领域内存存储器暂时存储数据时从一个地方移动到另一个。这在数据中心变得越来越必要,自驾车辆,机器学习应用程序。这些应用程序的挑战先进的信号均衡,并增加容量和带宽。数据缓冲技术——无论是作为离散的筹码在内存模块中,或集成到一个SoC——帮助将使所有这一切成为可能。

数据缓冲区的DDR3芯片是在发展。它捕获的CPU和DRAM的数据。缓冲芯片管理从CPU读取和写入命令动态随机存取记忆体。当使用缓冲芯片,它被称为负载双内联减少内存模块(LRDIMM)。这些芯片提高总内存容量的性能和速度。

“作为数据以指数速度增长,减少CPU负载通过数据缓冲区每个CPU芯片提高DRAM能力是必要的,”维克多Cai说,产品营销主管Rambus的内存和接口部门。“LRDIMMs在执行数据密集型应用程序的数据中心,如大数据分析、人工智能和机器学习。”

这种技术的用例是在各种各样的市场增长。“这是难以置信的多少数据是热气腾腾的每秒钟从射电望远镜,”兰迪·艾伦解释说,高级研究主任导师,西门子业务。“这是pb的数据。没有办法你可以可能存储价值超过两到三秒的数据,这是你不会一天24小时运行很多年。流媒体应用程序,你必须建立一个快速帧的数据,因为仪器不断喂养它。你去做任何你想做的分析,这对于射电望远镜是交叉相关性,例如,然后转移到下一组数据。那就是缓冲需要不断的数据流。”

这也是为异构计算的一个目标,因为所有数据进来,“你已经决定你有一些时间的长度,15纳秒,例如,为了处理数据,”艾伦说。“你告诉它你想做的处理。如果你5 ns代替15 ns,它不会给你带来任何好处。所有你关心的是最便宜的硬件,可以做你想做的处理在15 ns。这使得你愿意去更便宜的硬件会去做它,这是你开始进入异类应用程序。”


图1:数据缓冲在谷歌的张量处理单元。来源:谷歌

不同的用途
在机器学习中,有视觉传感器在做同样的事情,Allen说。“他们把数据在所有时间。也是同样如此物联网。有一个连续的数据流,这是挑出什么事你想工作在一个特定的时间点,工作,然后继续前进。”

数据缓冲芯片目标不同的应用程序,用于不同的记忆,和记忆,特别是在DDR3, DDR4 DDR5,除了下一波的内存技术,其中包括高带宽内存(HBM),根据诗人丘格,高级组主任USB产品营销,作为PCIe并行转换器节奏IP组。

有四个驱动力对这些数据缓冲芯片,丘格指出。“第一个是更多的内存容量。当你有多个内存模块连接到一个控制器,您将需要一个数据缓冲芯片。第二,数据缓冲芯片可以用于更多的带宽。例如,如果需要额外的平行缓冲或高带宽数据设备之间的流动和外部内存,这需要一个数据缓冲芯片。第三,也是最常用的数据缓冲芯片,是为了更好的管理的RAS(可靠性、可用性、可服务性)特性的记忆。当有一个数据缓冲数据的芯片有更好的可控性。如果有任何的ECC腐败或数据,缓冲装置作为防御的第二个来源得到纠正。”

第四使用数据缓冲芯片,这是非常重要的在当今世界的机器学习和人工智能,是这项技术提供了额外的逻辑来做有趣的处理在数据总线上本身之前,前往处理器,丘格解释道。“这是主要用于高带宽内存设计有各种类型的内存,这取决于应用程序的容量和带宽,DRAM堆叠的多个层,以硅与通过(TSV)。TSV块被嵌入到硅插入器。插入器和TSV块之间,有一个数据缓冲芯片之间的数据流管理这些hbm 4到8 TB的内存。HBM之间的缓冲成为一个关键的网关模块和实际的GPU处理器或坐在另一边,GPU和HBM通过硅插入器交谈。”

首席执行官根据Babblabs,软件架构师看数据缓冲在至少三个方面,特别是在实时系统中数据流和结果流。

“首先,它可能是一种光滑传入的数据率的不均匀。有足够的缓冲,架构师可以确保总是有足够的数据来完成一个块处理和完成一个逻辑块的结果,为所需的功能和接口,”他说。“第二,架构师可以实现所需的功能与许多不同的传入的数据块大小,但它往往是最有效的大块。这在密集计算得到了明显体现在神经网络训练和推论。在一些平台上,计算能力小矮人的内存带宽,所以软件架构师想重用尽可能多的代码和数据,通常是通过操作大型矩阵或其他数据块。这意味着缓冲。最低的延迟行为,你可能会像一个视觉系统利用深度学习操作每个图像帧到来,但这可能降低性能高达5或10倍相对于表现“批处理”的128年或256年的图像。”

第三,缓冲可能是内在的算法。“如果一个FFT(快速傅里叶变换)需要在语音处理系统中,例如,处理的频率范围和采样率决定FFT的大小。这整块FFT的输入数据是必要的甚至创建的第一个数据输出。结果,算法的块大小直接控制的最小延迟处理实时流媒体应用程序。所以缓冲是一把双刃剑。更深层次的缓冲通常允许更复杂的算法和更高效的计算,但是它不可避免地伤害了系统延迟,可同样重要的是,特别是在安全至上的系统和用户体验,”再生草补充道。


图2:缓冲选项来提高吞吐量和更低的延迟FPGA架构。来源:国家仪器。

要记住的事情
在每个应用程序中,有权衡,其中之一是实现数据缓冲作为离散在SoC芯片或集成。

丘格指出,虽然数据缓冲可以集成在SoC,这是一个专门的函数。它并不是每个逻辑设计师能做,因此通常是留给专家在德州仪器,IDT和Inphi / Rambus。“我不是说火箭科学,但它肯定是需要一个特殊的技能。它需要一个非常沉重的模拟电路设计技巧,所以一般公司将这项技术许可或购买的IP等专业公司在SoC集成。因此,尽管它是可能的,不是通常是内部的东西。”

然而Rambus的Cai指出DIMM的物理布局行业标准规范要求一块芯片,而不是一个IP。将数据缓冲功能集成到DRAM否定的主要目的减少内存总线负载,当你仍然有相同数量的DRAM芯片/容量。换句话说,包括数据缓冲芯片作为一个IP块不会提高DRAM能力,他说。

因此,设计师需要记住,信号完整性(SI)是至关重要的在DIMM设计和适当的SI方法需要遵循的位置和路由的信号和数据缓冲区主机和DRAM芯片。相声、电源噪声或从设计不良反映系统都将影响LRDIMMs可以运行的最高速度,Cai补充道。

数据缓冲的另一个考虑是延迟。数据缓冲区接口内部以非常高的速度信号,同时迅速采取行动的信号。“它必须立即通过数据或发送数据的没有瞬态时间分配给它,“丘格说。“这是一个非常有趣的设计模拟组件的方法。”

这意味着系统架构师必须看看内部的管理功能需要启用数据缓冲区,包括特定的RAS特性的ECC修正,如一个——或者微不足道的校正,与相关的算法。此外,当从的角度看设计命中率的内存,系统架构师必须牢记不仅记忆的命中率,但什么是连接到它,和数据速率是什么,包括多少事务数据缓冲区必须容忍在一个主流的操作。

第三个考虑是特定数据缓冲区的宽度。它是64,128或256位宽?数据位内的缓冲是如何发生的?然后,在片缓冲区的管理条款,在决议所能支持的内存或数据缓冲区中的数据已经过渡?

“所有这些因素的总体方面性能与之关联的延迟,随着数据缓冲区的足迹,因为数据缓冲区的另一个方面也是足迹和力量,“丘格说,“很多时候数据缓冲区不集成在DRAM,但是内部集成内存模块。如果你看看内存模块,你会发现多个后发展出和数据缓冲区就坐在中间。”

可以肯定的是,内存模块非常敏感。“只有这么多实力DIMM的DIMM槽,而且没有风扇运行在记忆,”他说。“所以他们必须self-dissipating的热量。这就是为什么数据缓冲区是关键的关键部件之一,在功耗是沉重的,所以他们必须非常不知道与这个缓冲区相关的参数是坐着不利于高功耗。”

物联网“垃圾收集”是另一个应用程序区域数据缓冲芯片使用,因为物联网应用程序在一段时间内保持收集数据,然后使用这些数据缓冲模型,收集数据。一段时间后,数据刷新。没有不断刷新数据,然而。计算边缘后,收集数据,缓冲和保存。然后,在一定的间隔时间,数据刷新和发送到中央处理器或中央服务器。

原因是这样做,这样所有的数据将会在一个给定的时间。这样的服务器可以得到整个状况的整体视图基于收集的所有数据。可以包括特定块农田或者整个市区。但如果视图的数据太窄,它将不提供明确的或确定的输出。

结论
在一天结束的时候,数据缓冲不复杂的火箭科学。“你只是基本上收集一组数据,抓住它,然后扔出来,“导师的艾伦说。“但也有一些建筑方面的考虑保持mind-size,访问时间。缓冲大小必须正确,系统架构师必须决定是否应该被实现为一个离散的芯片或一块IP,并能够保持正确的缓冲区大小。缓冲区必须用于所有必要的处理。取决于类型的内存,它可以足够快完成处理之前都清除了。”

虽然它是最常见的在流媒体应用程序和数据来自传感器,还有其他用途。在机器学习中,例如,它可以像另一个层面的缓存。”,你有纯数字和刚刚的数据需要在正确的部分并行层次结构将是一个重要的考虑因素,”艾伦说。

最后,数据缓冲芯片设计边缘节点上,带来额外的考虑。

“给一个机会,数据缓冲芯片总是出血边缘节点上跳跃前进,因为权力约束,“节奏的丘格说。“发生了什么是有权力和密度之间的权衡,所以当他们去一个新的流程节点可以有更高的密度相同的权力,或相同的密度较低的权力。他们总是喜欢去最低的过程节点相同大小,因为它是一个analog-heavy设计,他们必须做一个权衡的产量。这就是为什么这些芯片是不便宜。”



留下一个回复


(注意:这个名字会显示公开)

Baidu