请问如何通过PCI向一个外设寄存器读写数据?外设寄存器在存

[复制链接]
2854|0
 楼主| llzw 发表于 2007-9-27 18:05 | 显示全部楼层 |阅读模式
如何通过PCI向一个外设寄存器读写,该寄存器为存储空间内<br /><br /><br />资料中说到DM642的PCI的存储空间可由上位机通过BAR0进行读写.<br /><br />但又提到,对一个寄存器,地址假如为0X01B00004读写,是通过DSPP和CPCIA组成的32位地址来读写.所以DSPP和CPCIA需要事先写入.<br /><br />现在DSPP已经确定上位机可以通过BAR2读写,但是CPCIA应该怎么由上位机写入呢?因为CPCIA寄存器本身的地址也在0X01CXXXXX内,也需要DSPP+CPCIA组成的32位来确定.不可能通过写自身来得到地址然后再写自身吧.......<br /><br /><br />所以我现在的问题是,<br />1、BAR0和CPCIA之间有关系吗?<br />2、如果才能改变CPCIA的值,难道只能通过DSP来写,如果这样,效率就太低了吧?<br />3、BAR0的值除了确定该地址指向的4M地址是存储空间,能用于确定需要访问的具体地址空间吗?如0X01BXXXXX?<br /><br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

10

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部