指令总线即用于传送计算机指令信息,一般只从内存读取指令信息到
指令寄存器,属于单向总线。现有冯.诺依曼架构中,指令总线和数据共享一条总线,在哈佛架构中,指令总线和数据总线分别使用不同的总线。一般为了提高计算机工作效率,尽量可以读取指令的同时进行数据访问。这是指令总线出现主要推动力。
在计算机系统中的各部件,如 CPU、存储器以及各种 I/O 设备之间的联系,都是通过总线来实现的。根据总线所处的位置,总线分为内部总线和外部总线两类。指令总线属于内部总线,即从内存读取指令信息到
指令寄存器。
在纯冯.诺依曼架构下的CPU可以读取指令或读/写/内存数据。它们都不能使指令和数据同时使用相同的总线系统。即指令总线就是数据总线,不同的是,指令总线只读取数据。为了提高计算机CPU工作效率,
双端口存储器RAM中,一般提供一条指令总线和一条数据总线。使两者并行工作。而哈佛结构的计算机中CPU,即使没有缓存的情况下也可以读取指令的同时进行数据访问
由于计算机内部的主要工作过程是信息传送和加工的过程,因此在机器内部各部件之间的数据传送非常频繁。为了减少内部数据传送线并便于控制,通常将一些寄存器之间数据传送的通路加以归并,组成总线结构,使不同来源的信息在此传输线上分时传送。因此,所谓
总线,就是一个或多个信息源传送信息到多个目的的数据通路,它是多个部件之间传送信息的一级传输线。
按总线的逻辑结构来说,总线可分为单向传送总线和双向传送总线。所谓单向总线,就是信息只能向一个方向传送。所谓双向总线,就是信息可以向两个方向传送,即可以发送数据,也可以接收数据。
总线的逻辑电路往往是三态的,即输出电平有三种状态:逻辑“1”、逻辑“0”和“浮空”状态。
三态缓冲器是靠在“允许/禁止”输入端来禁止其操作的,禁止时,输出呈现高阻抗状态。在高阻抗状态下,可以认为输出与电路的其他部分被断开。
数据总线(Data Bus,DB)是在计算机系统各个部件之间传输数据信息的信号线。数据总线是双向的。通常,数据总线由8根、16根、32根或64根数据线组成,数据线的根数称为数据总线的宽度。由于每一根数据线每次传送1位二进制数,所以数据线的根数决定了每一次能同时传送的二进制的位数,由此可见,数据总线的宽度是表现系统总体性能的关键因素之一。例如,如果数据总线的宽度为8位,而每条指令的长度为16位,那么在每个指令周期中需要两次访问存储器才能取回完整的16位指令。
地址总线(Address Bus,AB)是在计算机系统各个部件之间传输地址信息的信号线,用来规定数据总线上的数据来自何处或将被送往何处。地址总线是单向的。如果CPU要从存储器中读取一个信息,那么,首先必须将要读取的信息的存储器地址放到地址总线上,然后才可以从给定的存储器地址中取出所需要的信息。地址总线的宽度决定了计算机系统能够使用的最大的存储器容量。在对输入输出端口进行寻址时也要使用地址总线来传送地址信息。实际操作时,总是用地址总线的高几位选择总线上指定的存储器段,而用地址线的低几位去选择存储器段内具体的存储器单元或输入输出端口地址。
总线的带宽指的是单位时间内总线上传送的数据量,即每钞钟传送MB的最大稳态
数据传输率。与总线密切相关的两个因素是总线的
位宽和总线的
工作频率,它们之间的关系:
总线的位宽指的是总线能同时传送的二进制数据的位数,或
数据总线的位数,即32位、
64位等总线宽度的概念。总线的位宽越宽,每秒钟数据传输率越大,总线的带宽越宽。