Xapp134 Synthesizable High Performance SDRAM Controller

Source Files

Xapp134 is taken off from Xilinx public website. But the design is still in the Xilinx example designs.
C:\Xilinx\11.1\ISE\ISEexamples

Clock

设计使用两个DCM,其中一个DCM做external feedback,一个DCM做internal feedback,充分利用DCM的deskew功能,使得:

内部反馈那个DCM的时钟输出与FPGA时钟输入PIN相位对齐;外部反馈到后端设备的时钟与FPGA时钟输入PIN相位对齐。

这样,有四个点的时钟信号是对齐的:

  • FPGA CLK PIN
  • FPGA CLK_FB PIN
  • SDRAM CLK PIN (当FEEDBACK约束与实际情况相符时)
  • FPGA internal feedback DCM output after BUFG

设计的period周期为16 ns。External feedback设置为12 ns。其实板上的延时一般小于1 ns。

设置为12 ns主要是想将SDRAM端的CLK相位移到data的中间,保证最大的建立时间和保持时间。整个时序过程可以这样理解:

  • 内部时钟0 ns变化
  • 数据经过OBUF和板上延时,到达SDRAM DATA PIN时大约为4 ns,因为周期为16 ns,数据会保持到20ns。
  • 由于FEEDBACK约束设置为12 ns,但是板上延时其实可以忽略不计,这样也就是说,SDRAM_CLK PIN的上升沿其实是在-12 ns或者4ns到来的。
    这样时钟沿就与数据变化边沿对齐了。 
posted @ 2011-01-25 13:11  IAmAProgrammer  阅读(514)  评论(0编辑  收藏  举报