这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 企业专区 » Xilinx » 关于V5的DDR2核用户接口读数接口的问题

共23条 2/3 1 2 3 跳转至
菜鸟
2010-07-14 23:48:35     打赏
11楼
我使用的是ML510,谢谢你的建议,给了我很大启发,非常感谢!
顺便再问三个问题:
1.chipscope采样时钟使用多少比较合适?我用和信号源的时钟频率175进行采样的时候,写入的数据是完全正确的,但是用350写入的数据就采样出错了!所以,我认为是不是有一个适合读出的采样频率?
2.需不需要考虑数据的建立和保持时间,以及时钟的歪斜、抖动等,以及对这些进行约束?
3.我想观察DDR的双向端口,但是实现的时候报错,该怎么设置?
对了,还有一个问题,我发现example中的地址产生模块,输出的读命令是001,而不是100,这样会不会影响结果?还需要另外写一个产生写数据和地址使能信号模块吧,写数据是可以按照写使能进行的,但是我不清楚读数据在什么时候进行,我对写数据使能信号的控制时间没有考虑好!

菜鸟
2010-07-15 00:44:13     打赏
12楼
1.  最好使用与数据同源的时钟,或者使用比被采样信号频率高出很多的时钟(适用于有些情况,同源是最好的,但高时钟可采到毛刺等不确定现象),175MHz彩出来如果是8'h55,8'haa的话,那么350MHz彩出来就是8'h55, 8'h55, 8'haa, 8'haa,当然前提是这两个时钟是同相位的,并跟数据同源,不然相位上有偏移有可能会造成采数错误。
2. 前期调试可以单调DDR部分,这样布线资源不紧张,一般这些不用太考虑,将mig生成的约束弄好就可以了,后期项目整合看情况约束。
3. 你指的是底层的DQ信号么?没有抓过,不太清楚。
4. 读命令就是001吧?你再看看datasheet,你不需要写读写逻辑,直接使用examlpe就可以了,他写的肯定是对的,先不要增加你自己都不确定对不对的东西上去,那样错了都不知道哪里的问题。

菜鸟
2010-07-15 00:57:30     打赏
13楼
如果加入DDR2原型进行modelsim仿真,只需要提供系统时钟,然后设计一个顶层模块,将信号源和DDR2控制器以及原型接口连接好就可以了吧?还需不需要运行那个sim.exe?这个不是太懂,周一下午的仿真的时候仿得有点乱!

菜鸟
2010-07-15 01:10:09     打赏
14楼

仿真很方便的,xilinx都给写好了,原型调用不用你写,很复杂,sim文件夹里有一个sim_tb.v吧好像,具体名字可能记不对了,人家都给你写好了,仿真那个example的和仿真user design的都有,你使用SIM.EXE或者sim.do或者自己建modelsim工程都是很方便的。仔细看datasheet啊!这些datasheet里说的很明白的,关于MIG生成都有什么文件,仿真应该怎么做,什么的,


菜鸟
2010-07-16 23:56:19     打赏
15楼

其实这段时间我在忙别的了,反正想到问题就请教了哈,还是非常感谢你的,我也学到了很多东西,排出了很多疑问,对这个DDR2的调试逐渐清晰了!
这个sim.exe或者.do文件,我还真不知道怎么使用,虽然网页版的有说明,我还没有看明白它的意思,有个人请教就好多了!
我今天把那些代码都加进去了,其实就是一个顶层测试文件例化了控制器接口和原型,而且时钟和复位都定义好了,我对这个顶层文件仿真的时候老是对原型的一些参数进行报错,有一个.vh的参数包含文件我也加进去了的,但是还是报了错。这些我都是在ISE里面加入的,通过Modelsim进行仿真。
有一个bathch 模式和gui模式,以前自己做仿真的时候没有关注过这些,也不知道什么意思,能不能解释一下?这个不需要解释了,GUI就是我们通常用的图形界面化仿真模式,那个批处理的模式没有用过。
那个sim.exe是干嘛用的?我记得以前乱点的时候结果好像一个DOS系统似的,这个仿真是单独用modelsim进行仿真还是在ISE里面调用modelsim进行仿真?

补充:因为在modelsim中仿真时,提示我某些原语找不到,就是unisim or unsims_ver librarie中的FD,还有一个FIFO原语,但是以前对modelsim进行库编译的时候都是完全加入了的也就是默认的选择,而且我在modelsim库中也找得到这些原语,可不知为什么还是提示找不到!
所以我用ISE自带的仿真工具进行仿真,但是也出现了一个奇怪的问题,我发现内部自带的DCM有外界时钟输入,但是没有时钟输出,也就是需要的那几个不同相位的时钟,不过复位信号都是有效地,不知道有没有遇到过这个问题呀?我是按照GUI模式进行仿真的。


菜鸟
2010-07-23 17:21:50     打赏
16楼

sim.exe是xilinx写好的一个程式,其实生成的核你什么都不用动,直接用点sim或者用sim.do就可以仿真了,不过我用过的MIG2.3生成的时候没有DDRII模型,需要自己去下一个来,其他的可以都不用动,
仿真的GUI模式我也不是很清楚,我就是使用modelsim编译文件,然后跑一段时间,看信号波形就好了。
仿真库的问题我也不是很清楚,modelsim的库有时候会有些问题,这个我也不是非常的明白,你可以删掉库从新加试试,看看modelsim.ini文件里是否加入了库了,看看你的工程使用的modelsim.ini是否跟modelsim软件的是一样的。
这几天玩去了,没上论坛


菜鸟
2010-07-24 10:21:21     打赏
17楼
你好,本来想评论的,看到很多人评,于是就算了

菜鸟
2010-07-26 17:02:30     打赏
18楼
    你好,我用的是MIG3.0,MIG对读取的数据的接口有一个rd_data_valid信号,我想问一下,这个rd_data_valid信号是否由控制信号cmd来控制的,而且貌似是ddr2给过来的,也出现有些数据没有来得及读回的现象,但是只要读数据有效则读回的数据确实又是对的,可否一起讨论一下呢?我的邮箱是lijinling33@163.com

菜鸟
2010-07-27 19:06:19     打赏
19楼

你是指对我主楼的问题的评论吗?
欢迎指教啊,那个问题我现在还是不知道改怎么低速读数。


菜鸟
2010-07-27 19:15:03     打赏
20楼

读有效信号是读地址及读命令写入FIFO之后一定延时之后,待DDR控制器将数读出后随数据同步有效的,是DDR控制器产生的信号,
在读有效信号无效的时候,数据线上的数据也可以看到数据,那个数据是不定的,我没有研究过其规律和特点,不过读信号有效时的数据肯定是正确的。


共23条 2/3 1 2 3 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]