ultramanshey 发表于 2012-9-25 10:16:56

基于PCI9054和Spartan3E的数据传输问题,已经卡了9天了。。。

本帖最后由 ultramanshey 于 2012-9-25 13:16 编辑

背景介绍:PCI9054(J模式)和spartan3E,想测试一下单次读写,目的是能够向FPGA内部设立的一个REG矩阵的第1行写入数据,有一个输出端连着REG(1)(0),观察波形。
问题前情:每次开机后的第一次操作,无论是读还是写,从逻辑分析仪上面看,波形都非常正常,每个信号都按照datasheet上的时序图标示的那样。输出的REG(1)(0)也像预期的那样变化。
问题重点:从第二次操作开始,无论读还是写,波形发生了变化:ADS依旧占用一个时钟周期(正常),DEN占用三个时钟周期(不正常),ready信号保持正常(正常),ADS下拉的那个周期,LAD信号作为地址线使用(显示正常,按照输入REG(1)的话,上位机取地址为0x0004),LAD作为数据线使用的时候,无论我写入什么数据,在DEN下拉的第一第二个周期内,LAD全部都是高位,在DEN下拉的第三个时钟周期,LAD的管教全部上拉至1,其他为0。
我的猜测:FPGA内部代码,肯定没有问题,至少第一次读写时正常的。PCI9054的J模式下,地址定义应该也没有问题,ADS和LAD(做地址使用)都是正常的,问题出在DEN和LAD(做数据总线使用)上。而且,每次开机的第一次读写波形都很完美,第二次操作,无论读写LAD都是同样的波形,是不是PCI9054的内部状态在第一次读写之后没有回到正常状态?
同时,我使用的是VC6.0编译上位机测试程序,这个是我自己摸索出来的,曾经在9052上使用没有问题。这次在9054上使用,我只是修改了每次读写的数据位宽到32,其他没做任何修改,是不是这个也有问题,还望大神指点迷津,谢谢!

稍后有空的时候我把几次测试的波形图发上来

ultramanshey 发表于 2012-9-25 21:19:30

自己顶,求PCI高手指点

yermin 发表于 2012-9-25 22:26:58

用WinDriver读写试试看
页: [1]
查看完整版本: 基于PCI9054和Spartan3E的数据传输问题,已经卡了9天了。。。