数据缓冲器件在当今高速设计中有很多应用,可把并行数据流延迟一段已知的恒定时间。
在网络应用中,非常普遍的情况是从起始单元获得寻址信息(不管是源还是目标)确定数据包是否应保持、分开列入时间表或传送到下一个结点。在ATM、VCI(Virtual Channel Iden-tifier--虚拟通道识别)和VPI(Virtual Path Identi fier--虚拟通路识别)标准中心必须确定数据通路的适当物理连接。为了执行这些操作,输入数据流必须延迟时间周期。延迟的长短与设计有并而且可变。
数据滤波应用需要同样的延迟功能来处理像素流。标准行包含910个像素。用延迟910增量中的数据流并把这些分接点连到数字滤波器便可构成一个有效的垂直滤波器。
本文描述如何用IDT公司并行时钟FIFO实现并行数据延迟线。
用时钟FIFO可以实现很多的不同数据延迟应用。IDT722×0系列为延迟59,251,507,1019,2043和4091时钟周期提供8位宽缓冲。IDT722×1系列为延迟3~4096时钟周期提供9位宽缓冲。双FIFO系列IDT728×1可延迟3~4096时钟周期,配置为18位缓冲器。18位宽IDT722×5LB系列可提供更长的延迟。各种IDT SyncFIFO延迟特性示于表1。
在所有情况下,读和写时钟*RCLK,WCLK)引脚都连接到输入数据时钟源。可编程准全特征(PAF)可引脚或准全特征(AF)引脚连接到读使能(REN)引脚(图1)。对于有可编程特征位的器件,写到全被偿寄存器的数据将确定时钟周期数,即数据从输入到输出的延迟时间。
在正常工作期间,写使能引脚必须连接保持有效低态以达到所希望的恒定数据延迟。注意写使能引脚不能直接连到地。
由IDT722×1构成的9位延迟线电路示于图1。IDT722×1系列FIFO有9位输入和输出端口。这类器件的FIFO深度m为64,256,512,1024,2048和4096字。它们具有可编程AF和AF标志,使设计为员可以时钟周期时间增量编程延迟值。PAF补偿值3给出最长延迟时间。
当FIFO达到AF条件下PAF将为低态,这由全补偿寄存器中的数值确定。由于寄存器中的数值确定从标志断言到满条件的地址数,同时延迟值实际上是从空的标志断言的地址数,所以必须进行少量计算以计算出正确补偿值。从最大FIFO深度减去所希望的时钟延迟数再加2就得到全被偿寄存器值。加2到计算中,其中1个周期延迟为从最后写到标志断言的时间、一个周期为REN建立时间。下面的公式用于计算722x1和728x1系列全裣寄存器中数值:F=m-D+2
式中F:全补偿寄存器值,m:最大FIFO深度,D:所希望的延迟值(时钟周期增量)。
可用下列操作为FIFO输入可编程补偿:在复位时保持写使能2/输入(WEN2/LD)为低态,然后变为正常工作的高态。此操作之后,LD功能是有效的。当WEN1和WEN2/LD引脚在写时钟上升沿保持低态时,PAE和PAF补偿4个连读写时钟沿输入。
复位之后,被偿寄存器置位到缺省值,可以简化某些设计。表1列出不同IDT FIFO缺省设置所实现的延迟。用722x5 LB延迟元件的最大优点是组合深度大于由菊花链器件简单实现的4096个字。扩展深度可使延迟比单个FIFO所达到的更长。用做延迟元件的IDT722x5深度扩展电路示于图2.把A和B相应控制信号连接在一起可构成18位宽FIFO,它具有与9位宽FIFO相同的定时和功能。
用双SyncFIFO IDT 728x1可构成18位延迟元件(见图3)。
