从PCIe探索弹性缓冲器真义
电子元件,电子元器件深圳市创唯电子有限公司
您现在的位置: 首页 > 电子技术
从PCIe探索弹性缓冲器真义  2012/3/1
弹性缓冲器其实就是一个FIFO(First-In-First-Out)先进先出器件。数据以某个时钟频率写入,输出却用另一个不同的时钟频率。因此,依靠这个电气特征,该回路功能方块的最主要目的是要确保高速环境下,传送及接收两端时钟差异上的补偿作用。如此一来,数据通信的集成性可获最佳保证。下面以两个耳熟能详的接口为例,来说明弹性缓冲器一般位于控制器中的确切位置。弹性缓冲器在不同接口中的位置首先以USB2.0Hub为例。众所周知,Hub装置的职责
  弹性缓冲器其实就是一个FIFO(First-In-First-Out)先进先出器件。数据以某个时钟频率写入,输出却用另一个不同的时钟频率。因此,依靠这个电气特征,该回路功能方块的最主要目的是要确保高速环境下,传送及接收两端时钟差异上的补偿作用。如此一来,数据通信的集成性可获最佳保证。

下面以两个耳熟能详的接口为例,来说明弹性缓冲器一般位于控制器中的确切位置。

弹性缓冲器在不同接口中的位置

首先以USB2.0Hub为例。众所周知,Hub装置的职责就是承上启下,单进多出,以扩展连接设备的数量。USB接口最多可连接127个设备。而USB2.0的Hub又有别于上一代USB1.1规格,它将收进来的封包去头去尾,只读取数据本身,然后以局部新的干净时钟信号将它输出。因此,480Mbps可连续接5阶Hub装置依然保持480Mbps数据传送畅通。

所以,USB2.0 Hub内部的重发器(Repeater)区块通常内含弹性缓冲器,可用来补偿Rcv_Clk及Xmt_Clk两个时钟信号差。

再以PCIExpress为例。PCI Express采用内置时钟的8b/10b编码方式,因此在接收端势必要构建一个时钟数据回复CDR(Clock Data Recovery)回路,其中的弹性缓冲器也用来补偿传送时钟f1与接收端时钟f2的差异。

逻辑上,因为FIFO两端的时钟存在差异,最后很有可能发生溢位(Overflow)或下溢(Underflow)现象。为了避免这种情况,EB弹性缓冲器通常会在特定的时间插入或移除特殊的符号(Symbol)。如此一来,用来补偿两端时钟的差异就不用考虑额外的问题了。这也是EB弹性缓冲器名称的由来。

弹性缓冲器的出现甚至可以回溯到60年代。1963年,Maurice Karnaugh获得这个技术的专利,只不过当时的应用是在PCM电话网络上。当高速传输转向串行方式时,EB弹性缓冲器的价值再度显现。

PCIe中的时钟差

PCI Express采用的8b/10b编码,输出端与接收端时序的同步关系可看成是一种“源同步”,也是一种“时钟传递”的数据传输协议方法。这与过去的PCI或PCI-X采用的共通时钟方式是截然不同的。

为了方便记忆起见,最为简单的方法就是将“源同步”看成时钟与数据的合成,都来自于输出端的驱动器就可以了。

PCI Express的传输速率是 2.5Gbps(波特率),容许的误差范围是±300ppm。将它展开数**算后,即可发现该总线输出端允许的频率范围就是2.49925GHz~2.50075GHz。如果用单元间距UI(Unit Interval)来计算的话, 2.5Gbps的一个单元间距为400ps,由于有±300ppm的余裕,因此,最坏的情况下应该是399.88ps~400.12ps、600ppm的两端时钟差。换句话说,经过1666个周期,可能位移了一个时钟。

既然数据的写入与读取是有差异的,那么势必要追踪缓冲器里的数据存取状态,才能避免错误的发生。

EB在PICe中的应用

PCI Express为EB弹性缓冲器可以在适当的时间插入或移除符号,特地规范了SKP指令集(Ordered-sets),由COM+SKP+SKP+SKP四个编码后的符号所组成。输出端则必须在最大容许范围(也就是600ppm的最坏情况下)输出SKP指令集,用来补偿两端时钟差异。

与《从PCIe探索弹性缓冲器真义》相关列表
电话:400-900-3095
QQ:800152669
库存查询
Copyright(C) 2011-2021 Szcwdz.com 创唯电子 版权所有 备案号:粤ICP备11103613号
专注电子元件代理销售  QQ:800152669  电子邮件:sales@szcwdz.com  电话:400-900-3095