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 @   IAmAProgrammer  阅读(517)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示