我用c6455与fpga通信,采用emif接口。在fpga中建立fifo,16位同步模式,刚开始已经调通了,但是后来发现ddr的gate脚没接,重新取下芯片飞线完成,自此以后emif只能发送一半数据,而且还是跳着发送,只能发送第偶数个数据,检查了外围电路都没问题,芯片也没问题,因为我换了一个新的也是这样,实在不明白怎么回事了,请问有遇到过这种情况的吗?该如何解决啊,用示波器测试ce端确实只有一半的低电平
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
与FIFO通信没有用到地址线哦,也测过数据线,单发一个数据没反应,发2个数据才会有反应,比如发送0x0001,0x0002,0x0003,0x0004,0x0005,0x0006.......只能发出来0x0002,0x0004,0x0006,奇数位置的数好像就被省略了,CE片选信号测试过也只持续了一半时间(比如AECLKIN为100MHZ,发送10个数,CE只持续了50ns时间),关键是之前调得好好的,按理说这个跟我把DDR控制器的gate引脚飞线出来不会有关系啊,而且同样的程序我在另一块板子上测试就正常,CE端测出来的时间就是正确的
Camel Santo 说:您好,我也刚好遇到类似问题,无论收发,都只能对想发的地址*2,才可以。请问这会是什么问题?
建议看一下地址线是否接对了,内部地址线会根据访问不同位宽的memory进行移位。
Table 5. Addressable Memory Ranges and Internal to External Address Bus Translation
http://www.ti.com/lit/ug/spru971e/spru971e.pdf
另外,后续有问题的话,可以另起新帖,方便其他客户查看。
wacu 说:但是硬件哪儿的问题会影响只发一半数据呢,这个现象还很规律,我查了所有输入都没问题!现在无从下手了