ODDR使用与仿真
0赞
发表于 2017/11/22 14:23:28
阅读(5977)
1、使用方法
在DDR接口中ODDR用于发送时钟和数据;
在SDR接口中仅用ODDR转发时钟(仍在时钟树内),输出端要直连到输出port,不可加逻辑;
使用时钟专用输入管脚输出时钟=使用GPIO输出时钟,必须使用ODDR。
发送多位数据时需要用generate语句例化多个ODDR原语,参见如下链接(ODDR的使用错误):
http://blog.csdn.net/christne1225i/article/details/24492221
2、数据输入捕获模式
OPPOSITE_EDGE模式、SAME_EDGE模式区别在于前者先后使用上升下降沿捕获数据到ODDR内部,后者同时在上升沿捕获两个端口的数据到ODDR内部。两者的输出相同,都是在不同的沿输出各自数据。
不同沿捕获数据都在上升沿捕获数据
3、仿真
输出端口在CE=1后并不是立即工作,大约有105ns多的等待期
Q端输出比端的延时大约为0.1ns
IDDR也存在等待周期:见下图
在以下文章中也提到了在IDDR使用时也存在等待周期
http://blog.sina.com.cn/s/blog_6cb8cdbd0102vb0s.html
***需要注意的几点(摘自上文)
1. IDDR模块在CE信号变高之后会有一些设定时间,所以在CE信号变高的同时给出data不是一个很好的选择。我在data输出代码里加入了10个cycle的延迟。