关于BAR(PCIE BAR或AXI BAR)的解释

假设某BAR的默认值是xxxx_0000(这里表示8个比特位),其中低4位不可写,可操作的最低位是4,所以该BAR的大小是2^4=16字节;
1、系统软件向BAR写0xFF
2、系统软件读BAR,读到的值是0xF0,于是系统软件知道该BAR的最低可操作位是4,该BAR的大小是2^4=16字节,要求
   BAR的基地址必须能被其大小整除,即BAR的基地址必须按照其大小字节对齐,比如这里必须是16字节对齐;
3、系统软件向该BAR指定形如xxxx_0000的起始地址,比如如下的起始地址都是合法的:
0000_0000,0x00=0
0001_0000,0x10=16
1111_0000,0xF0=240
1010_0000,0xA0=160
以上地址都是16字节对齐的,即能被16字节整除;
如果系统软件向BAR写0xAF=1010_1111,由于BAR的低4位不可写,所以写完后BAR的值仍是0xA0,而不是0xAF。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值