wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1615回复:17

9054写数据时总滞后一个数据

楼主#
更多 发布于:2003-07-13 16:48
原来时可以的,现在也不知道什么原因,向本地写数据时(单个数据操作),总是压着一个数据。如果要写入 1,2,3,4,读出时就是 1(也可能不是1),1,2,3 ,后面不管再写什么数,读出来肯定会是4,总是压着一个,请问这是什么原因?这个数存在什么地方了?
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-07-14 09:59
怎么没有人回呀?
碰见过类似问题的同志们给点思路了。
greatwp
驱动牛犊
驱动牛犊
  • 注册日期2001-12-07
  • 最后登录2005-10-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-07-14 12:56
你说的也太含糊了阿
wp
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-07-14 15:34
不好意思,再详细说一下:
通过9054 向本地ram写数据,向第一个地址写入D1,第二个地址写入D2,这时读第一个地址会得到D1,读第二个地址时还是D1,如果向另一个地址写入D3,读回的数据会是D2.
用逻辑分析仪看了一下在写D3时,送到RAM的数据的确是D2.
我读写数据用的是WINDRIVER带的 9054 DIAGNOSTICS.
不知道说清楚了没有。
xjtanh
驱动牛犊
驱动牛犊
  • 注册日期2002-08-08
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-07-16 10:41
应该是跟你的RAM时序有关。
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-07-16 10:53
给我的感觉就是这个滞后的数据是存在9054中,但又说不清是怎么回事。原来只接了一组RAM是好的,接上第二组后就这样了,现在把第二组的片选、使能全部关掉,仍然是滞后一个数据。
用逻辑分析仪可以看到,从PCI槽出来的数据是好的,但是经过9054后出来的就滞后了。
zhangyanping
驱动小牛
驱动小牛
  • 注册日期2003-02-23
  • 最后登录2004-07-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-07-16 12:16
试一下在读回之前清除一下相关的中断,我想可能是这个原因...
看一下9054的datasheet,以及中断的操作原理吧!
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-07-16 22:44
可是我现在根本就没有使用中断呀?
我可以试一试,谢谢你的回复。
flying
驱动小牛
驱动小牛
  • 注册日期2002-08-01
  • 最后登录2016-06-19
  • 粉丝0
  • 关注0
  • 积分197分
  • 威望70点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2003-07-16 23:10
我想可能的原因:
1,是你的地址不对!
在读时,你的地址滞后一个周期,所以读到的数据是前面一个
2,在读数据时使用了缓冲区(FPGA中),读取数据时,先读到的是缓冲中的数据

你查查看吧,我现在也碰到了类似的问题,但是我的原因 是这个,正在想办法解决中,
祝好运
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-07-16 23:50
我的原因应该不是这两个方面:
1、我写数据的地址是任意的不一定是连续的,都有这种情况,因此可以排除地址滞后这个原因。
2、数据没有经过fpga,9054出来后,经过驱动和总线开关就到RAM了。
我现在怀疑是9054的寄存器的设置,但有发现不了问题。
感谢你的提示,也祝你好运!
flying
驱动小牛
驱动小牛
  • 注册日期2002-08-01
  • 最后登录2016-06-19
  • 粉丝0
  • 关注0
  • 积分197分
  • 威望70点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
  • 社区居民
10楼#
发布于:2003-07-17 22:12
你可以查查,是不是你的SRAM的时钟和PCI9054时钟 的不同步的问题,我的问题解决了,就是因LCLK 与 SRAM时钟之间的延时所造成的,9054是在Ready#有效时才读取数据的
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-07-18 10:52
我用的是IDT71016,上面没有时钟,只有读写线和片选线。
祝贺你又攻克了一个障碍!
我这个不是读的问题,是写的问题,会不会与负载有关系,我也不清楚,只是在慢慢的试。
flying
驱动小牛
驱动小牛
  • 注册日期2002-08-01
  • 最后登录2016-06-19
  • 粉丝0
  • 关注0
  • 积分197分
  • 威望70点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
  • 社区居民
12楼#
发布于:2003-07-18 22:37
呵呵 ,谢谢~
也祝你好运,早日解决问题!
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2003-07-21 16:59
新焊上去的两片RAM去掉了,问题还是存在!
没有希望,也没有思路,只有发呆了。
jst7792
论坛版主
论坛版主
  • 注册日期2001-12-10
  • 最后登录2006-11-16
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2003-07-22 08:52
毫无疑问的时序设计错误.
兄弟们,给点分吧
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2003-07-22 09:01
恳请斑竹说得再详细一点。
现在对RAM写数时,第一个数是好的,后面的写的总是前一个数,并且与地址没有关系。
flying
驱动小牛
驱动小牛
  • 注册日期2002-08-01
  • 最后登录2016-06-19
  • 粉丝0
  • 关注0
  • 积分197分
  • 威望70点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
  • 社区居民
16楼#
发布于:2003-07-22 22:54
是不是写入递增数,会出现这样的效果:
00 00 01 02
04 04 05 06
......
这是9054工作于Burst-4方式时的数据?
如果是的话,那么请你检查你的SRAM控制时序吧
wwenguang
驱动小牛
驱动小牛
  • 注册日期2002-08-12
  • 最后登录2005-08-22
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2003-07-23 22:37
我是单个数据读写,从第二个数开始,一直就压着一个。
谢谢flying的热心支持。
游客

返回顶部