whutwx
驱动牛犊
驱动牛犊
  • 注册日期2001-08-06
  • 最后登录2003-03-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1988回复:4

PCI卡死机的问题!

楼主#
更多 发布于:2002-02-01 13:10
我用S5920+EPM7128+IDT7007(sram),做了一个卡,在配置空间里定义数据为8位接口,卡上的MDMODE接为低电平,系统初始化成功,可是一从sram读数据就死机,用windrier如此,用AMCC给的工具也是如此,EPLD部分,仿真的波形没有问题,请问是什么问题?春节前要交差,还望各路高手指点。

最新喜欢:

hapihapi
whutwx
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2002-02-01 20:11
兄弟,我很想帮你,可是懂得太少,帮不上忙。但我在用 9052 的时候,发现 pci 的读方式有很大讲究,不知道你的 5920 有没有这方面的设置?
www.bjjcz.com
whutwx
驱动牛犊
驱动牛犊
  • 注册日期2001-08-06
  • 最后登录2003-03-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-02-02 09:44
不知道,9052的读的方式有哪些讲究,能否告知,说不定可以参考。5920在它的配置空间设置了一个位,该位如果设置了,那么不论外设速度多慢,它不会产生retry或者disconnet,他会一直等待。可是我没有设置这个位,况且我的外设的速度也不慢,24M晶振。如果是EPLD部分出了问题,应该是读回来的数据是错误的,而不应该是死机!我真的不知道问题出现在哪里!
我现在先不管读回来的数据是否正确,只要不死机就是进了一步了!
whutwx
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2002-02-02 14:39
可能 plx 系列的读方式是一样的。 9052 中的有一位用于设置读方式。

使能该位时:读操作遵循 spec.2.1 , 读之后立即 disconnect ,下次读再返回数据。这种方式的读操作不会导致死机。

disbale 该位时:无效 TRDY 信号直至数据返回。使用这一种方式,必须正确设置 RETRY DELAY CLOCK COUNTER ,否则,死翘翘!
因为如果 RETRY DELAY CLOCK COUNTER 设置太小,外设数据无法读回,就会导致无限次 RETRY 而将系统挂起!

你虽然使用了 24M 的晶振,但芯片内部转换速度可能没有我们想象的快,你可以将 RETRY DELAY CLOCK COUNTER 设为全 1 ,如果不死机的话再减小。

希望对你有所帮助。 ;)
www.bjjcz.com
whutwx
驱动牛犊
驱动牛犊
  • 注册日期2001-08-06
  • 最后登录2003-03-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-02-02 19:55
谢谢,我已经把能否引起无限retry的位全部无效,并且对EPLD部分的做了详细的仿真,没有发现可疑点,硬件连线没有错,我真的不知道哪里出问题。而且24M,8位接口,不会出现retry!由于没有分析仪,所以只能这样。
不过在我的机子上无论读和写,都出现EMM386 priveleged error等错误提示,不知道是不是和内存有关。
 

[编辑 -  2/2/02 作者: whutwx]
whutwx
游客

返回顶部