huxuelei
驱动牛犊
驱动牛犊
  • 注册日期2007-12-28
  • 最后登录2010-09-14
  • 粉丝0
  • 关注0
  • 积分120分
  • 威望13点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
阅读:1795回复:1

求救,关于PLX9656.

楼主#
更多 发布于:2008-01-10 11:41
各位高手,麻烦帮小弟看看目前的情况。谢谢。

我这个设备中的寄存器是映射到内存中的,bar0是用来访问plx9656的寄存器的基地址,bar2是用来访问板上自定义寄存器的偏移量。在机器启动后,我通过bar0来读取plx9656寄存器的值,把这些值和硬件手册上各个寄存器的缺省值进行比较,以此来判断能够正确读写这部分寄存器。
    在我通过bar2访问板上自定义寄存器的时候,遇到这种情况。首先,我要开启板上的一些中断,比如这个中断寄存器的偏移量是0x4,当读写这个寄存器的时候,从目前来看是正常的,原因是我观察了内存中的值,想偏移量为0x4的地址写1的时候,确实能够看到相应的变化。但是我同样通过ba2访问有关数据传输的寄存器的时候,出现了问题。比如偏移量是0x00002ff4是代表PC从双口RAM中读数据的标志,如果PC要从双口RAM中读数据,那么首先要将偏移量为0x00002ff4这个单元的值置1。当我在向这个内存单元写1的时候,最终结果确将0x00002ff0和0x00002ff8这两个单元的值写成了1。当我从0x00002ff8这个寄存器读取值的时候,如果在内存中观察这个地址的值是1,但是读取出来的值是0。
huxuelei
驱动牛犊
驱动牛犊
  • 注册日期2007-12-28
  • 最后登录2010-09-14
  • 粉丝0
  • 关注0
  • 积分120分
  • 威望13点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-01-10 21:04
游客

返回顶部