计算机组成原理(一)
冯诺依曼机特点:
- 计算机由运算器,控制器,存储器,输入设备和输出设备五大部件组成。
- 指令和数据以同等地位存放与存储器内,并可按地址寻访。
- 指令和数据均用二进制表示。
- 指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。
- 指令在存储器内部按顺序存放。通常,指令是顺序执行,在特定条件下,可根据运算结果或根据设定的条件改变执行顺序。
- 机器以运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成。
计算机五大部件的功能:
- 运算器用来完成算数运算和逻辑运算,并将运算结果的中间结果暂存在运算器内。
- 存储器用来存放数据和程序
- 控制器用来控制、指挥程序和数据的输入、运行以及处理运算结果
- 输入设备用来将人们熟悉的信息形式转换为机器能识别的信息形式。
- 输出设备将机器运算结果转换为人们熟悉的信息形式。
现代计算机组成:
- CPU:中央处理器,由运算器和控制器组成
- I/O设备:又称外部设备,由输入设备与输出设备组成。
- 主存储器:用来存放程序和数据,可以直接与CPU交换信息
算术逻辑单元与控制单元:
- 算术逻辑单元(ALU):简称算逻部件,用来完成算术逻辑运算。
- 控制单元(CU):用来解释存储器中的指令,并发出各种操作命令来执行指令。
ALU和CU是CPU的核心部件,I/O设备也受CU控制,用来完成相应的输入、输出操作。
存储单元,存储元件,存储字,存储字长:
- 存储单元:由若干个存储元件组成。
- 存储元件:又称存储基元,存储元。每个存储单元可以存储一位二进制数
- 存储字:一个存储单元可以存储一串二进制数,这串二进制数为一个存储字
- 存储字长:存储单元存储的一串二进制数的位数。
主存寄存器:
存储器地址寄存器MAR(Memory Address Register):用来存放欲访问的存储单元的地址,其位数对应存储单元的个数。
存储器数据寄存器MDR(Memory Data Register):用来存放从存储体某单元取出的代码或者准备往某存储单元存入的代码,其位数与存储字长相等。
计算机硬件的主要技术指标:
- 机器字长:CPU一次能处理数据的位数,通常与CPU的寄存器位数有关。
- 存储容量:包括主存容量和辅存容量。主存容量是指主存中存放二进制数的总位数,即存储容量=存储单元个数x存储字长。辅存容量通常用字节数表示。
- 运算速度:计算机的运算速度与许多因素有关,如机器的主频,执行的操作,主存本身速度等。
总线分类:
片内总线:芯片内部的总线。如CPU芯片内部,寄存器与寄存器之间,寄存器与算逻单元ALU之间都由片内总线连接。
系统总线:又称板级总线或板间总线。CPU、主存、I/O设备各大部件之间的信息传输线。
- 数据总线:传输各功能部件之间的数据信息,双向传输总线,其位数与机器字长,存储字长有关。数据总线的位数称为数据总线宽度。
- 地址总线:主要用来指出数据总线上的源数据或目的数据在主存单元的地址或I/O设备的地址。由CPU输出,单向传输。地址线的位数与存储单元个数有关。
- 控制总线:发出各种控制信号的传输线,对于任一控制线而言,是单向传输。对于控制总线总体而言,是双向传输。
通信总线:用于计算机系统之间或计算机系统与其他系统之间的通信。
- 串行通信:数据在单条1位的传输线上,一位一位地按顺序分时传送。适宜远距离数据传输。
- 并行通信:数据在多条并行1位宽传输线上,同时由源传送到目的地。适宜近距离数据传输。
总线特性:
- 机械特性:总线在机械连接方式上的一些性能。
- 电气特性:总线的每一根传输线上信号的传递方向和有效电平范围。通常规定由CPU发出的信号称为输出信号,送入CPU的信号称为输入信号。
- 功能特性:总线中每根传输线的功能
- 时间特性:总线中任一根线在什么时间内有效。
总线性能指标:
- 总线宽度:数据总线的根数,用bit(位)表示
- 总线带宽:总线的数据传输速率,用每秒传输信息的字节数衡量,单位用MBps(兆字节每秒)表示。例如,总线工作频率为33MHz,总线宽度为32位(4B),则总线带宽为33x(32/8)=132MBps
- 时钟同步/异步:总线上数据与时钟同步工作的总线称为同步总线,与时钟不同步工作的总线称为异步总线。
- 总线复用:一根信号线上分时传送两种信号。
- 信号线数:地址总线,数据总线和控制总线的总和
- 总线控制方式:包括突发工作,自动配置,仲裁方式,逻辑方式,计数方式等。
其他指标:负载能力,电源电压(5v/3.3v,总线宽度是否扩展
- 负载能力:驱动能力,是指总线接上负载后,总线输入输出的逻辑电平是否能保持在正常额定范围内。
总线判优控制:
- 链式查询:离总线控制部件最近的设备具有最高的优先级。只需很少几根线就能按一定优先次序实现总线控制,并且很容易扩充设备,对电路故障很敏感,且优先级别低的设备很难获得请求。
- 计时器定时查询:优先次序可以改变,对电路故障不如链式查询方式敏感,但增加了控制线数,控制也较复杂。
- 独立请求:响应速度快,优先次序控制灵活,控制线数据数量多,总线控制更复杂。
总线通信控制:
- **同步通信:通信双方由统一时标控制数据传送称为同步通信。**优点是规定明确,统一,模块间配合简单一致。缺点是主、从模块时间配合属于强制性同步,必须在限定时间内完成规定要求。一般用于总线长度较短、各部件存取时间比较一致的场合。
例如:假设总线的时钟频率为100MHz,总线的传输周期为4个时钟周期,总线宽度为32位,试求总线的数据传输率。
1个时钟周期为 1/100MHz = 0.01μs
一个总线周期为 4*0.01μs = 0.04μs
总线宽度为 32位 = 4B(字节)
总线的数据传输率为 4B/(0.04μs) = 100MBps
- 异步通信:允许各模块速度不一致,采用应答方式(又称握手方式),即当主模块发出请求信号是,一直等待从模块反馈的响应信号,才开始通信。可用于并行传送或串行传送。
异步通信的应答方式又可分为不互锁,半互锁,全互锁。
①不互锁方式:主模块发出请求信号后,不必等待从模块的响应信号,而是经过一段时间,确认从模块已经收到请求信号后,便撤销其请求信号,从模块接到请求信号后,在条件允许时发出回答信号,并经过一段时间确认主模块已收到回答信号后,自动撤销回答信号。
②半互锁方式:主模块发出请求信号后,必须收到从模块的回答信号后才撤销其请求信号,有互锁关系;从模块收到请求信号后发出回答信号,隔一段时间自动撤销其回答信号,无互锁关系。
③全互锁方式:主模块发出请求信号,必须等待从模块回答后再撤销其请求信号。从模块发出回答信号后,必须获知主模块请求信号已经撤销,再撤销其回答信号。双方存在互锁关系,故称全互锁方式。
异步串行通信的数据传输速率用波特率来衡量。波特率是指单位时间内传送二进制数据的位数,单位用bps(位/秒)表示,记作波特。
例:在异步串行传输系统中,假设每秒传输120个数据帧,其字符格式规定包含1个起始位,7个数据位,1个奇校验位,1个终止位,试计算波特率。
一帧包含 1+7+1+1 = 10位
波特率为 10*120 = 1200 bps = 1200波特
比特率:单位时间内传送二进制有效数据的位数,单位用bps表示。
例:在异步串行传输系统中,若字符格式为:1位起始位,8位数据位,1位奇校验位,1位终止位。假设波特率为1200 bps,求这时的比特率。
1200*(8/11)=872.72 bps
-
半同步通信:保留了同步通信的基本特点,同时又像异步通信那样,允许不同速度模块和谐工作,采用时钟(等待)周期的措施来协调通信双方的配合问题。
-
分离式通信:为了充分挖掘系统总线每瞬间的潜力,将一个传输周期(或总线周期)分解为两个子周期。
特点:
①每个模块欲占用总线使用权都必须提出申请。
②在得到总线使用权后,主模块在限定时间内向对方传送信息,采用同步方式传送,不再等待对方的回答信号。
③各模块在准备数据过程中都不占用总线,使总线可接受其他模块的请求。
④总线被占用是都在做有效工作,或通过它发送命令,或通过它传送数据,不存在空闲等待时间,充分利用总线的有效占用,从而实现总线在多个主、从模块间进行信息交叉重叠并行传送。