SFI-4接口的数据处理分为I/O接口处理和用户FIFO两大功能,其中关键的部分是I/O接口处理,它把高速的数据在FPGA内部利用了Virtex-5器件内部的ISERDES、OSERDES和IODELAY资源进行了串并转换和DPA(动态相位对齐)。下面来介绍各个功能部分的设计原理。
(1)收端的RXI/F模块
来自I/O引脚的接收端数据一方面在FPGA I/0内部通过ISERDES进行串并转换,然后把数据速率降低1/4供内部处理;另一方面用移相状态机在IODELAY模块上进行移相,多达64级,每级大约15 ps,直到采样时钟的上升沿对准数据有效窗口的中心位置。RXIF模块处理后的效果如图1所示。只做位对齐的前提是要求在分配I/O引脚时给SFI-4接口同方向的信号尽可能靠近,数据总线间Skew尽可能小,并且PCB布线要等长。

图1 RXI/F模块处理后的效果
(2) 收端的RX FIFO模块
使用此FIFO的目的是一方面把ISERDES输出的共64位数据写入FIFO;另一方面用用户时钟读出FIFO数据给后端的用户逻辑使用,终达到隔离区域时钟和用户时钟的目的。FIFO的位置如图2所示。

图2 FIFO的位置
(3)发送端的TXI/F模块
发送端的处理是内部己经处理好的数据经过FPGA I/O内部的OSERDES进行并串转换输出,如图3所示的OSERDES部分。

图3 OSERDES部分
(4) 发送端的TX FIFO模块
使用此FIFO的目与RX FIFO功能类似,区别在于读出∏FO的数据通过OSERDES进行并转串输出。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。