- 论坛徽章:
- 0
|
CPU位数、地址线位数、数据线位数以及通用寄存器位数意义!
对于上面这些各种位数,不查我还不知道,一查发现跟我理解的不一样,
下面就我看到的资料,谈谈我的理解:
CPU位数:CPU的位数通常指的是其通用寄存器的位数;应该是通用寄存器地址表示的最大位数。
数据线位数:CPU的数据线位数只代表CPU的理论最大寻址空间。
地址线位数:CPU的地址线位数实际的寻址空间大小;这样说可能还是不对,那个例子来说吧:
我最近学习的s3c2410开发板,s3c2410向外引出27地址线,按道理只能寻址(2^27)/1024/1024 = 128M
的空间大小,但是开发板实际能够寻址1G,因为芯片有8个bank,每个bank都有片选引脚,每个bank都能寻址128M
所以就是128X8 = 1G,我把它称为bank机制;数据线有32位,按照我上面说的,那么最大寻址空间是:
(2^32)/1024/1024/1024 = 4G的空间大小,那么问题来了:怎么实现的4G的寻址空间?
其实这就是涉及到Linux内核的虚拟地址的概念,通过将物理地址进行映射变成4G的虚拟地址,具体怎么做,
有兴趣的朋友可以去看看。
CPU的位数也就是CPU处理数据的能力,也就是一次能够处理的数据的位数。
数据线的位数也就是CPU与内存之间一次最多传输的数据的位数。
说明: 以上只是我的理解,, 如果各位大神发现我的理解不对,还请联系我,我虚心学习,拜托。
数据线位数, 通用寄存器位数 |
|