计算机中三大总线:地址总线、数据总线、控制总线

计算机中三大总线:地址总线、数据总线、控制总线


今天在做软考的题目时发现一道题目,做过很多遍了,却始终会做错,刚开始我以为这只是一道记忆性的题目,只要把这个简单的知识点记住了就行了。然而,我发现,每一次做这种题目,我每一次都没做错来,根本记不住,理解才是王道。
题目如下:

例题:若内存容量为4GB,字长为32,则______。
A.地址总线和数据总线的宽度都为32
B.地址总线的宽度为30,数据总线的宽度为32
C.地址总线的宽度为30,数据总线的宽度为8
D.地址总线的宽度为32,数据总线的宽度为8
答案:A
内存容量为4GB,即内存单元的地址宽度为32位。字长为32位即要求数据总线的宽度为32位,因此地址总线和数据总线的宽度都为32。
由此题目引发如下思考:何为位?位宽?字?字长?字节?

字长,是CPU一次能处理的二进制数的位数,*字长与之关联的是数据总线的位数,字长为32,则数据总线的宽度为32位。*比如CPU一次可以处理8个1(或者0),那么我们称这个CPU是8位的CPU,也就是说这个CPU的字长是8位。如果CPU一次可以处理16个二进制数,这个CPU的字长就是16位。
现在最新的CPU已经到了64位了,它们的字长就是64位。字长越大,CPU的处理能力越强,计算机运行也越快。

位宽就是内存或显存一次能传输的数据量。(这里我对位宽的理解也仅限于此)简单地讲就是一次能传递的数据宽度。字长指的是计算能力,位宽指的是传输能力。

在计算机中传送信息的基本单位是(   )
A) 字
B) 字节
C.位
D) 字长
正确答案
A
答案解析

[解析] 位是计算机存储的最小单位;1个字节是8个相邻二进制位组成的,是计算机存储中的基本单位,也是数据处理的基本单位。字是CPU通过数据总线一次存取、加工和传送时作为一个单位的一组二进制数。字长是每个字包含的位数。

字:
定义:
计算机在进行数据处理,一次存取、加工、传送的数据长度称为字(word)。
一个字一般由多个(整数倍)字节构成。
性质:
1word=2Byte=16bit
一个字由两个字节组成,16位组成
通常称16位是一个字,32位是一个双字,64位是两个双字
计算机的字长决定CPU一次处理实际位数的多少,字长越大,性能越优。

数据总线

(1) 是CPU与内存或其他器件之间的数据传送的通道。

(2)数据总线的宽度决定了CPU和外界的数据传送速度。

(3)每条传输线一次只能传输1位二进制数据。eg: 8根数据线一次可传送一个8位二进制数据(即一个字节)。

(4)数据总线是数据线数量之和。

地址总线

(1)CPU是通过地址总线来指定存储单元的。

(2)地址总线决定了cpu所能访问的最大内存空间的大小。eg: 10根地址线能访问的最大的内存为1024位二进制数据(1024个内存单元)(1B)

(3)地址总线是地址线数量之和。

控制总线

(1)CPU通过控制总线对外部器件进行控制。

(2)控制总线的宽度决定了CPU对外部器件的控制能力。

(3)控制总线是控制线数量之和。

最后总结如下:
地址总线的宽度决定CPU的寻址能力;
数据总线的宽度决定CPU与其他元器件一次最大传送的数据量;
控制总线决定CPU对其他元器件的控制能力。

下面结合一些题目来加以理解:
1.地址总线:一个cpu的N根地址总线,则可以说这个CPU的地址总线宽度为N。这样cpu最多可以寻址2的N次方个内存单元。

2.8根数据总线传送一个8位二进制,数据线数量相当于每单元的位数

3.存储容量=单元数*每单元的位数,一般每单元位数都是8

例1.若256KB的SRAM具有8条数据线,则他具有多少条地址线

分析:256KB为他的存储容量,则一般表达为单元数*每单元位数,8条数据总线代表8位,也就是一个单元

            256KB=32KB*8             32KB为单元数,也就是2的N次方等于32KB

            为了计算方便,可记2的10次方=1K            则32KB=2的5次方*2的10次方

例2.写出下列的RAM芯片片内的地址线和数据线的条数:(1)4K8位;(2)512K4位;(3)1M1位;(4)2K8位

(1)地址: 4K=2的N次方 N=12 数据:8位,也就是8条

(2)与上题同理: 地址:19 数据:4

(3)地址:20 数据:1

(4)地址:11 数据:8

例3.设有一个具有20位地址和32位字长的存储器,问:

1.该存储器能储存多少个字节信息

解:2的20次方=1M 32位字长,换算成B,32÷8=4B

32÷8×(2^20) B = 4×2^20 B = 4^20 B = 4 MB
笔者做到这个题目的时候有个疑问:存储器存储的容量与数据线有什么关系,回看上文中提到数据线是CPU与内存或其他器件之间的数据传送的通道。既然是传输的通道,与存储器的存储容量并无关联。
后来查看资料才得知:
再来看存储器,存储器的存储总量 = 存储单元个数×存储字长,存储单元个数=2^地址总线位数 ,这个好理解;存储字长和数据总线位数有关,存储字长的意思是:一个存储单元存储一串二进制代码(存储字),这串二进制代码的位数称为存储字长,存储字长可以是8位、16位、32位等。因此,地址总线为32位,数据总线为16位的存储器,其内存容量是2^32 * 16bit = 64Gb = 8Gb。而理解我们刚才做的这个题目也就不难了,一共有2^20个存储单元,存储字长为32位,数据总线位数为32,可表示大小为32/8=4个字节。

2.如果存储器由512K*8位SRAM芯片组成,需要多少片

解:4MB=4*1024KB=4096KB 4096KB÷512=8
则需要8片

3.需要多少地址线做芯片选择

因为需要8片,则需要2的N次方的N来控制着8片选那一片,则需要3根地址线

关于位宽我的理解也仅限于本文。一起沟通,有待进步!
接下来有关存储器容量的经典计算题目也会继续收录,若有疑问或者不正确的地方,欢迎广大读者第一时间与我取得联系。一起学习!一起进步!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章