dysch2000
驱动牛犊
驱动牛犊
  • 注册日期2003-07-20
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1697回复:9

用9052的PCI卡写部分已经通了,但读部分还不正常!

楼主#
更多 发布于:2005-07-14 17:13
  做了一块9052的PCI卡,开始死活不通,检查发现实验室MM把CPLD内的电路连错了.....汗!!改正后写OK!
最早是EEPROM不通,后经网上兄弟指点,用了93LC46后正常,用93C46会部分数据不对,造成不工作.

地址映射关系是PCI端分配的地址===>EEPROM中写的I/O和内存地址

写出来大家共享一下,少走弯路

现在是读还有问题,还在检查,高手们指点一下啊!
dysch2000
驱动牛犊
驱动牛犊
  • 注册日期2003-07-20
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-07-14 17:19
对了,在用PCI-ISA模式时,一定要在LCLK上加一个时钟,不然不工作.

我是在LCLK上加了个8MHz的有源晶振,ISA模式的信号是在这个时钟下工作的
dysch2000
驱动牛犊
驱动牛犊
  • 注册日期2003-07-20
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-07-14 17:25
OS给PCI分配的地址可以在:我的电脑--->属性--->硬件里卡的属性看到分配的内存与I/O地址
在2000以上由于OS保护,不能直接对分配的地址操作,测试时可用WINDRIVER操作
98和DOS下可以直接对I/O商品操作,但98不支持直接对内存操作
xamick
驱动牛犊
驱动牛犊
  • 注册日期2004-09-23
  • 最后登录2005-10-12
  • 粉丝0
  • 关注0
  • 积分53分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-07-28 22:36
我用9052做的一块板子,现在也是可以正常写,但是不能读。我一读就死机了。楼主这个读的问题解决了没有啊?
dysch2000
驱动牛犊
驱动牛犊
  • 注册日期2003-07-20
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-07-28 23:46
早解决了,配置仔细查一下调整就行了.
xamick
驱动牛犊
驱动牛犊
  • 注册日期2004-09-23
  • 最后登录2005-10-12
  • 粉丝0
  • 关注0
  • 积分53分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2005-07-29 12:20
哦, 你的意思是说9052的EEPROM的内容不对吗? 能不能具体说说你是怎么改的啊
dysch2000
驱动牛犊
驱动牛犊
  • 注册日期2003-07-20
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2005-07-29 13:14
好像是改60h的配置,你看看9052DATASHEET的这部分就行了
zweiasd_97
驱动牛犊
驱动牛犊
  • 注册日期2004-10-11
  • 最后登录2006-12-28
  • 粉丝0
  • 关注0
  • 积分131分
  • 威望16点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2005-07-29 13:55
lrdyi#有信号吗?可以将lrdyi#屏蔽掉,在local address space x bus region descriptors中设定它
xamick
驱动牛犊
驱动牛犊
  • 注册日期2004-09-23
  • 最后登录2005-10-12
  • 粉丝0
  • 关注0
  • 积分53分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2005-07-29 14:48
我把:IRDYi#disable 还是不行。
我把我的EEPROM配置贴上来,帮我看看吧
   0X00                0X905010B5      Device ID& Vendor ID
   0X04                0X06800002      PCI class code & PCI Revision ID
   0X08                0X905010B5      Subsysytem ID & Subsysytem Vendor ID
   0X0C                0X00000100      PCI Interrupt Pin &&...
   0X10                0XFFFFFF01      LAS0RR   映射到I/O空间, 大小256Bytes   用于读取FPGA状态寄存器
   0X14                0XFFF00008      LAS1RR   映射到内存空间,可预取, 大小1M  用于存储数据帧
   0X18                0XFFF00008      LAS2RR   映射到内存空间,可预取, 大小1M  用于存储8个触发信号
   0X1C                0X00000000      LAS3RR   不用
   0X20                0X00000000      EROMRR   不用
   0X24                0X00000001      LAS0BA   从I/0空间0地址开始
   0X28                0X00000001      LAS1BA   从内存空间0地址开始
   0X2C                0X00100001      LAS2BA   从内存空间1M地址开始
   0X30                0X00000000      LAS3BA   不用
   0X34                0X00000000      EROMBA   不用
   0X38                0X00800022      LAS0BRD  IO不允许猝发,BTERM#无效,LRDYi#有效,总线32位
   0X3C                0X00800001      LAS1BRD  内存允许猝发传送,BTERM#无效,LRDYi#无效,总线32位
   0X40                0X00800001      LAS2BRD  内存允许猝发传送,BTERM#无效,LRDYi#无效,总线32位 其他延迟缺省
   0X44                0X00000000      LAS3BRD  不用
   0X48                0X00000000      EROMBRD  不用
   0X4C                0X00000081      CS0BASE  I/O空间,大小256Bytes,从I/O空间0地址开始
   0X50                0X00080001      CS1BASE  内存空间,大小1M,从内存空间0地址开始
   0X54                0X00180001      CS2BASE  内存空间,大小1M,从内存空间1M地址开始  
   0X58                0X00000000      CS3BASE  不用
   0X5C                0X0000031B      INTCSR   INTi1上升沿有效,INTi2上升沿有效,禁止中断
   0X60                0X000004D3      CNTRL    WAITO#有效,User2#定义为CS2#有效,其他User#口 定义为输出口,不用
xamick
驱动牛犊
驱动牛犊
  • 注册日期2004-09-23
  • 最后登录2005-10-12
  • 粉丝0
  • 关注0
  • 积分53分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2005-07-29 14:50
我现在测试时 发现我去读space0, cs0和cs1都有效 写的时候也是这样。如果我改配置只映射一个空间 那么可以正确写 还是不能正确读。
游客

返回顶部