到576 位宽的更大的 Virtex-5 封装(见图2)。
高于 400 Mb/s 速率的更宽总线使得芯片到芯片的接口愈益难以开发,因为需要更大的封装、更好的电源和接地-信号比率。Virtex-4 和 Virtex-5 FPGA 的开发使用了先进的稀疏锯齿形 (Sparse Chevron) 封装技术,能提供优良的信号-电源和接地引脚比率。每个 I/O 引脚周围都有足够的电源和接地引脚和板,以确保良好的屏蔽,使由同步交换输出 (SSO) 所造成的串扰噪音降到最低。
低成本存储器接口
今天,并不是所有的系统都在追求存储器接口的性能极限。当低成本是主要的决定因素,而且存储器的比特率达到每引脚 333 Mb/s 已经足够时,Spartan-3 系列 FPGA配之以 Xilinx 软件工具,就能提供一个易于实现、低成本的解决方案。
基于 FPGA 设计的存储器接口和控制器由三个基本构建模块组成:读写数据接口、存储器控制器状态机,以及将存储器接口设计桥接到 FPGA 设计的其余部分的用户界面(图3)。这些模块都在 FPGA 资源中实现,并由数字时钟管理器 (DCM) 的输出作为时钟来驱动。在 Spartan-3 系列实现中,DCM 也驱动查找表 (LUT) 延迟校准监视器(一个确保读数据采集具有正确时序的逻辑块)。延迟校准电路用来选择基于 LUT 的延迟单元的数量,这些延迟单元则用于针对读数据对选通脉冲线 (DQS) 加以延迟。延迟校准电路计算出与 DQS 延迟电路相同的一个电路的延迟。校准时会考虑所有延迟因素,包括所有组件和布线延迟。
用户界面是一种握手型的界面。用户发出一条读或写命令,如果是写命令的话还包括地址和数据,而用户界面逻辑以 User_cmd-ack 信号回应,于是下一条命令又可发出。
在 Spartan-3 系列实现中,使用可配置逻辑块 (CLB) 中的 LUT 来实现读数据采集。在读事务过程中,DDR 或 DDR2 SDRAM 器件将读数据选通脉冲 (DQS) 及相关数据按照与读数据 (DQ) 边沿对齐的方式发送给 FPGA。在高频率运行的源同步接口中采集读数据是一项颇具挑战性的任务, 因为数据在非自由运行 DQS 的每个边沿上都会改变。读数据采集的实现使用了一种基于 LUT 的 tap 延迟机制。DQS 时钟信号被适量延迟,使其放置后在读数据有效窗口中具有足够的余量,以在 FPGA 内被采集。