原创 系统地址空间,PCI地址空间

2013-12-26 13:43 792 9 9 分类: 通信 文集: PCI

 

转载至:http://blog.csdn.net/augusdi/article/details/6119801
1 系统地址空间与PCI地址空间
  1.1  PCI地址空间
    PCI总线具有32位数据/地址复用总线,所以其存储地址空间为2的32次方=4GB。也就是PCI上的所有设备共同映射到这4GB上,每个PCI设备占用唯一的一段PCI地址,以便于PCI总线统一寻址。每个PCI设备通过PCI寄存器中的基地址寄存器来指定映射的首地址。PCI地址空间对应于计算机系统结构中的PCI总线。
44883_1250508114uw9s.jpg
 
一个PCI设备占有PCI存储空间的一部分,PCI上存储器地址的译码是分散在设备上进行的,每一个设备负责它自己的译码,不需要中央译码后,从外部输入设备选择信号。
  1.2   系统地址空间
    如果处理器具有32位的地址总线,其理论可寻址空间为2的32次方=4GB。但这并不意味着内存就可以4GB大小,其实XP系统最大内存大约为2GB,这与CPU访问系统中其它设备的存储器方式有关(比如CPU访问PCI总线上的存储器)。
计算机系统中在不同的物理位置上存在着不同设备,不同的设备又各自具有存储器,那么CPU如何访问这些存储器呢?CPU把系统中各个设备的存储空间映射到一个统一的存储空间上,称为系统存储空间共4GB,这样CPU就可以访问到所有的存储器。比如PCI存储器映射到从0xFFF80000开始的地址空间,显卡映射到0XFFF00000,再加上操作系统会占用一些空间,就只剩下不到2G能真正分配给物理内存了。(具体数值是为解释需要取的任意值,不代表真实情况)
系统地址空间对应于计算机系统结构中的前端总线(FSB)。
1.jpg
 
    可见,PCI地址空间(4GB)无法完全映射到系统地址空间(4GB)上,而且映射后所占的系统地址空间不能太大,否则会占用物理内存的系统地址空间,导致部份物理内存无法访问。
pci

文章评论0条评论)

登录后参与讨论
我要评论
0
9
关闭 站长推荐上一条 /2 下一条