从PCIe探索弹性缓冲器真义
- 格式:docx
- 大小:10.61 KB
- 文档页数:2
从 PCIe 探索弹性缓冲器真义
弹性缓冲器其实就是一个 FIFO(First-In-First-Out)先进先出器件。数据以某
个时钟频率写入,输出却用另一个不同的时钟频率。因此,依靠这个电气特征,
该回路功能方块的最主要目的是要确保高速环境下,传送及接收两端时钟差异
上的补偿作用。如此一来,数据通信的集成性可获最佳保证。 下面以两个
耳熟能详的接口为例,来说明弹性缓冲器一般位于控制器中的确切位置。
弹性缓冲器在不同接口中的位置
首先以 USB2.0 Hub 为例。众所周知,Hub 装置的职责就是承上启下,
单进多出,以扩展连接设备的数量。USB 接口最多可连接 127 个设备。而
USB2.0 的 Hub 又有别于上一代 USB1.1 规格,它将收进来的封包去头去尾,只
读取数据本身,然后以局部新的干净时钟信号将它输出。因此,480Mbps 可连
续接 5 阶 Hub 装置依然保持 480Mbps 数据传送畅通。
所以,USB2.0 Hub 内部的重发器(Repeater)区块通常内含弹性缓冲器,
可用来补偿 Rcv_Clk 及 Xmt_Clk 两个时钟信号差。
再以 PCI Express 为例。PCI Express 采用内置时钟的 8b/10b 编码方式,
因此在接收端势必要构建一个时钟数据回复 CDR(Clock Data Recovery)回路,
其中的弹性缓冲器也用来补偿传送时钟 f1 与接收端时钟 f2 的差异。
逻辑上,因为 FIFO 两端的时钟存在差异,最后很有可能发生溢位
(Overflow)或下溢(Underflow)现象。为了避免这种情况,EB 弹性缓冲器通常会
在特定的时间插入或移除特殊的符号(Symbol)。如此一来,用来补偿两端时钟
的差异就不用考虑额外的问题了。这也是 EB 弹性缓冲器名称的由来。
弹性缓冲器的出现甚至可以回溯到 60 年代。1963 年,Maurice Karnaugh
获得这个技术的专利,只不过当时的应用是在 PCM 电话网络上。当高速传输