gushi84
驱动牛犊
驱动牛犊
  • 注册日期2006-05-10
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分120分
  • 威望13点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
阅读:1617回复:2

PCI9054地址映射问题

楼主#
更多 发布于:2007-06-20 11:09
通过PCI9054读取双端口RAM的内容,设置地址范围寄存器的值为:FFFE0000H,基址寄存器的值为:80000001H,映射到Bar1中,Bar1的基地址为0xD7EC0000,按照我的理解,对地址0xD7EC0000操作也就是对双端口RAM进行操作,但是发现往双端口RAM写数据时,只有D7EDf000~D7EDffff大约4Kb的地址可以正常写数据,不知道这是为什么?请教各位!谢谢了!
zhangwei_351286
驱动牛犊
驱动牛犊
  • 注册日期2006-10-08
  • 最后登录2008-01-22
  • 粉丝0
  • 关注0
  • 积分140分
  • 威望15点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-06-21 11:46
可能以下几点,注意一下:
 (1)驱动程序中确认一下
     你分配了128K的PCI内存空间公路LOCAL bus使用,不算大,系统应该能分配足够的内 存空间。在驱动程序里startdevice中获得资源列表时,可以查看获得的长度的,你确认一下是否是128K。是否保存的是PCIBAR1的基地址。
(2)local bus 端与双口RAM地址线怎么接的,访问空间大小对不对
(3)使用DMA方式单次写一下,再读一下试试,每次16k。
(4)再不行,可以考虑是不是双口RAM有问题

仅供参考
zhangwei_351286
驱动牛犊
驱动牛犊
  • 注册日期2006-10-08
  • 最后登录2008-01-22
  • 粉丝0
  • 关注0
  • 积分140分
  • 威望15点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-06-21 14:30
映射的应该是BAR2  BAR1已经被系统作9054配置寄存器IO的映射了
游客

返回顶部