导图社区 计算机组成原理
计算机组成原理是根据天勤 计算机组成原理唐朔飞学习记录的笔记,主题框架和目录根据唐朔飞(目前为止只是前三章内容)。
编辑于2021-11-30 07:44:06计算机组成原理
概论
计算机系统概述
计算机系统简介
计算机软硬件概念
硬件:是指计算机的实体部分,由各种电子元件各类光、电、机设备的实物组成;如主机外部设备。
软件
机器语言:用二进制代码0或1描述不同的指令,编程人员需要记忆每一条指令的二进制编码。机器语言的优点是计算机可以直接识别执行。
汇编语言:都是直接对硬件操作只不过指令采用了英文缩写的标识符更容易被识别和记忆,汇编语言的程序必须经过一个称为汇编语言的系统软件翻译 ,将其转换为机器语言后才能在计算机的硬件系统上运行
高级语言:需要经过编译程序编译成汇编语言程序,然后经过汇编操作得到机器语言程序,或者直接由高级语言翻译成机器语言程序。高级语言的优点就是方便编程人员写出问题的解决处理方案和解题过程。
指计算机系统内的程序及其文档,程序是计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐明性资料。
系统软件:标准数据库、语言处理程序、操作系统、服务程序、数据库管理系统、网络软件等
应用软件:用户用户任务需要所编制的各种程序,如就科学计算程序,数据处理程序、过程控制程序、事务管理程序等
计算机性能取决于软硬件功能的总和。
计算机系统的层次结构
汇编程序:汇编语言程序(源程序)一次翻译成机器语言程序。
解释程序:一句一句的翻译并执行,直到程序结束。
编译程序:将高级语言翻译成机器语言
多层次结构计算机系统
虚拟机器M4(高级语言程序):用编译程序翻译成汇编语言程序;
虚拟机器M3(汇编语言程序):用汇编程序翻译成机器语言程序;
虚拟机器M2(操作系统机器):用机器语言解释操作系统;
传统机器M1(机器语言机器):用微程序解释机器指令;
微程序机器M0(微指令系统):由硬件直接执行微指令;
计算机组成与计算机结构体系
计算机组成:是指如何实现计算机结构体系所体现的属性,它包含了许多对程序员来说是透明的硬件细节。
计算机体系结构:是指那些能被程序员所见到的计算机系统属性,及概念性的结构与功能特性。
计算机的基本组成(硬件)
冯诺依曼计算机的特点
计算机由运算器、存储器、控制器、输入输出设备五大部件组成的。
指令和数据以同等地位存放于存储器内,并可按地址访问。
指令和数据均用二进制代码表示。
指令由操作码和地址码组成,操作码用来表示操作的属性,地址码用来表示操作数在存储器中的位置。
指令在存储器内按顺序存放。通常,指令时顺序执行的,在特定条件下,可根据运算结果或根据设定的条件改变执行顺序。
机器以运算器为中心,输入输出设备与存储器间的数据传输通过运算器完成
计算机硬件的基本组成
存储器
主存储器(主存,也称内存储器):能直接被CPU访问,主存储器是存放程序和数据的部件,是计算机实现“存储程序控制”的基础。
主存储器由许多存储单元组成,每个存储单元包括多个存储元,每个存储元存储一位二进制代码“0”或“1”。故而存储单元可存储一串二进制代码,称这串代码为存储字,这串代码位数称为存储字长,存储字长一般为一个字节(8bit)或字节的偶数倍。许多存储单元共同构成了一个存储体。
地址存储器(MAR):存放访存地址,经过地址译码器译码后找到所选的存储单元
数据存储器(MDR):用于暂存从主存中读或写的信息
辅助存储器(辅存,也称外存储器):用于帮助主存储器记忆更多的信息,辅存中的信息必须调入主存后,才能被CPU访问。
存储元:也可以成为存储元件和存储基元,用来存放一位二进制信息。
存储单元:由若干个存储元组成,能存放多位二进制信息
存储体:许多存储单元可组成存储体(存储矩阵)
存储字:每个存储单元中二进制代码的组合即为存储字,可代表数值、指令和地址等。
存储子长:每个存储单元中二进制代码的位数就是存储子长。
存储容量:存储容量应该包括主存容量和辅存容量; 存储容量=存储容量×存储子长
运算器
运算器是对信息进行处理和运算的部件,主要功能是进行算术和逻辑运算。
算术运算:主要包括加、减、乘、除。
逻辑运算:主要包括与、或、非、异或、比较、位移等运算。
通用寄存器:存放暂存操作数和中间结果、
ACC(累加器)
MQ(乘商寄存器)
X(操作数寄存器)
IX(变址寄存器)
BR(基址寄存器)
PSW(程序状态寄存器)
控制器
计算机中有两种信息在流动:一种是控制信息;另一种是数据信息。
控制器是计算机的神经中枢,由他指挥各部件自动协调的工作。
完成一条指令的操作需要取指、分析和执行三个过程。
PC(程序计数器):用来存放当前预执行指令的地址,可以自动+1形成下一条指令的地址,它与主存的MAR之间有一条直接通路。
IR(指令寄存器):用来存放当前的指令,其内容来自MDR。
CU(控制单元):用来分析当前指令所需完成的操作,并发出各种微操作命令序列,用以控制所有被控对象。
OP:指令中的操作码字段
Ad:指令中的地址吗字段
输入设备
将人们所熟悉的信息形式转换成计算机可以接收并识别的信息形式设备
输出设备
将二进制转换成人类或者其他设备可以接收并识别的
其中运算器+控制器=CPU,CPU+主存储器=主机,I/O设备又称为外部设备。
计算机的工作原理或者步骤
上机前准备
建立数学模型
确定计算方法
编制解题程序
计算机的工作过程
计算机工作的过程就是不断从存储器中逐条取出指令,然后送至控制器,经分析后由CPU发出各种操作指令,指挥各部件完成各种操作,直至程序中全部指令执行结束
机器字长
是指CPU一次能处理数据的位数,通常与CPU寄存器位数有关。字长越长,数的表示范围越大,精度也越高。
机器的字长也会影响机器运算速度,倘若CPU字数较短,又要运算的位数较多的数据,那么需要两次或多次运算才能完成,势必会影响机器的运算速度。
对硬件造价也有较大的影响,他将直接影响加法器(或ALU)、数据总线以及存储子长的位数。所以机器字长的确定不能单从精度和数的表示范围来考虑。
软硬件在逻辑上是等效的,对于某一功能来说,其既可以用软件实现也可以用硬件实现,则称为软硬件在逻辑上是等效的。一般来说,一个功能使用硬件实现效率较高,但硬件成本远高于软件;使用软件实现可以提高灵活性,但效率往往不如硬件实现高
计算机发展与应用
计算机的性能指标
吞吐量
指信息的流入、处理和流出系统的速率。它取决于CPU能够多快地取指令,数据能够多块的从内存取出或存入,以及所得结果能多块地从内存送到输出设备。这些步骤都与主存紧密相关,因此吞吐量主要取决于主存的存取周期。
响应时间:是指提交作业到该作业得到CPU想响应所得到的时间。相应时间越短,吞吐量越大。
主频:是内部机器主时钟的频率,是衡量机器速度的重要参数,其常用单位为Hz、MHz等。
CPU周期:又称机器周期,通常用从内存读取一条指令字的最短时间来定义。一个指令周期常由若干个CPU周期构成。
CPU时钟周期:主频的倒数,是CPU中最小的时间单位。
CPI、MIPS、FLOPS(三者为衡量运算速度的标准)
CPI(Clock Cycle Per Instructions):执行一条指令所需要的时钟周期数。
MIPS(Million Instructions Per Second):每秒可执行百万条指令数,如某机器每秒可执行800万条指令,则记作8MIPS。
FLOPS(Floating-point Operations Per Second):每秒执行的浮点数运算次数。
MFLOPS(Million Floating-point Operations Per Second):每秒百万次运算。和MIPS类似。
GFLOPS
TFLOPS
PFLOPS
CPU执行时间:指CPU对某特定程序的执行时间。
计算机硬件的发展
计算机发展历程
第一代计算机(1946-1957年)----电子管时代: 主要特点:(1)电子管作为开关器件;(2)使用机器语言;(3)可以存储信息;(4)输入/输出很慢
第二代计算机(1958-1964年)----晶体管时代: 主要特点:(1)晶体管代替电子管;(2)采用磁心存储器;(3)汇编语言代替机器语言;
第三代计算机(1965-1971年)----中小规模集成电路时代: 主要特点:(1)中小规模的集成电路代替晶体管;(2)操作系统问世;
第四代计算机(1972-至今)----超大规模集成电路: 主要特点:(1)采用集成度很高的电路;(2)微处理器问世;
第五代计算机---智能计算机 主要特点:(1)具备人工智能,像人一样思维;(2)运算速度极快;(3)软件系统能够处理知识信息。神经网络计算机是智能计算机的重要代表。
第六代计算机---生物计算机和量子计算机
计算机的分类
专用计算机
针对某类问题能显示出最有效、最快速和最经济的特性,但他适应性较差,不适用于其他方面的应用。
通用计算机
适应性强,应用很广,但其运行效率、速度和经济性依据不同的应用对象会受到不同程度的影响。
按规模又分为巨型机、大型机、中型机、小型机、微型机及单片机六类。 其区别主要在其体积、结构复杂程度、功率消耗、性能指标、数据存储容量、指令系统和设备、软件配置等的不同。
按照指令和数据流可分为
单指令流单数据流(SISD),即传统的冯诺依曼体系结构。
单指令流多数据流(SIMD),包括列阵处理器和向量处理器系统。
多指令流单数据流(MISD),这种计算机实际上并不存在。
多数据流多数据流(MIMD),包括多处理机和多计算机系统。
计算机的更新换代
摩尔定律:当价格不变时,集成电路上可容纳的元器件数目,约每隔18~24个月便会增加一倍,性能也增加一倍。这揭示了信息技术进步的速度。
半导体存储体的发展。1970年仙童公司生产出第一个较大容量的半导体存储器。
微处理器的发展。1971年英特尔公司开发出第一个微处理器。
计算机硬件结构
系统总线
总线概述
总线的基本概念:为什么要使用总线?
早期计算机大都采取分散连接方式,现在外部设备太多,如果使用分散连接方式,则随时增减外部设备不易实现。以运算器为中心的结构,其内部连线十分复杂,尤其是当I/O与存储器交换信息时,都需要经过运算器,致使运算器停止运算,严重影响了CPU的工作效率。
什么是总线?
总线是连接多个部件的信息传输线,是各个部件共享的传输介质。
总线的传输周期:是指CPU通过总线对存储区或I/O端口进行一次访问所需要的时间;包括总线申请阶段、寻址阶段、传输阶段、结束阶段;
总线宽度:总线实际上是由许多传输线或通路组成的,每条线可以一位一位的传送二进制代码。
总线的分类
不同的角度可以有不同的分类方法。
按数据传送方式可分为串行传输总线和并行传输总线。
按使用范围分则有计算机总线、测控总线、网络通信总线等。
按连接部件不同
片内总线
是指芯片内部总线,如在CPU芯片内部、寄存器与寄存器之间、寄存器与逻辑单元ALU之间都由片内总线相连。
系统总线:连接五大部件之间信息传输线。
数据总线:用来传送各功能部件之间的数据信息,他是双向传输总线。数据总线的位数称为数据总线宽度。
地址总线:它是单向传输总线。地址总线主要用来指出数据总线上的源数据或目的数据在主存单元的地址或O/I设备的地址。 地址线的位数与存储单元的个数有关。
控制总线:由于数据总线和地址总线是被所有部件共享的,如何使各部件能在不同时刻占有总线使用权还需要控制总线来完成,因此控制总线是用来发出各种控制信号的传输线。
时钟:用来同步各种操作。
复位:初始化所有部件。
总线请求:表示某部件需获得总线得使用权
总线允许:表示需要获得总线的使用权的部件以获得了控制权。
中断请求:表示某部件提出中断请求。
中断响应:表示中断请求已被接收。
存储器写:将数据总线上的数据写至存储器的指定地址单元内。
存储器读:将制定存储单元中的数据读到数据总线上。
I/O读:从指定的I/O端口将数据读取到数据总线上面。
I/O写:将数据总线上的数据输出到指定的I/O端口内。
传输响应:表示数据已被接收,或已将数据送至数据总线上。
通信总线:用于计算机系统之间或计算机系统与其他系统之间的通信。
串行通信:适合远距离传输。
并行通信:适合近程的数据传输。
总线组成以及性能指标
总线的组成
通常由一组控制线一组数据线和一组地址线组成。但也有例外 某些总线没有单独的地址线,地址信息也通过数据线来传送,这种情况被称为数据线和地址线的复用
总线特性
机械特性:尺寸、形状。是指总线在机械连接方式上的一些性能,如插头与插座的使用标准,它们的几何尺寸、形状、引脚个数以及排列顺序,接头处的可靠接触等。
电器特性:是指总线的每一根传输线上信号的传递方向和有效的电平范围。
功能特性:每根传输线的功能(如传送地址、传送数据、传送控制信号)。
时间特性:信号的时序关系(那根线在什么时间内有效)。
总线结构
单总线结构
单总线的特点:由于I/O设备与主存共用一组地址线,因此主存和I/O设备是统一编址的,CPU就可以像访问内存一样访问外部设备。
多总线结构
双总线结构:特点是将速度较低的I/O设备从单总线中分离出来,形成总线与I/O总线分开的结构。
三总线结构:与双总线相比,三总线的结构增加了一条小路(DMA总线),专门用于I/O设备与主存之间直接交换消息。
四总线结构:
总线性能指标
总线宽度:通常是指数据总线的根数,用bit(位)表示。
总线带宽:可以理解为总线的数据传输速率,即单位时间内总线上传输数据的位数,通常用每秒传输信息的字节数来衡量,单位可用MBps(兆字节每秒)来表示。
时钟同步/异步:总线上的数据与时钟同步工作的总线被称为同步总线,与时钟不同步工作的总线被称为异步总线。
总线复用:一条信号线上分时传送两种信号。
信号线数:地址总线、数据总线和控制总线三种总线数的和。
总线控制方式:包括突发工作、自动配置、仲裁方式、逻辑方式、计数方式等。
其他指标:负载能力、电源电压、总线宽度是否能拓展等。
总线控制
判优控制(总线仲裁)
集中式:将控制逻辑集中在一处(如CPU)
链式查询
链式查询优先判别方式:离总线控制器越近的部件,其优先级越高;离总线控制器越远的部件,其优先级越低。
链式查询的优点:只需要三根控制总线就能按一定的优先级实现总线控制,结构简单,易于扩充。
链式查询缺点:
对硬件电路的故障敏感,也就是说,如果第i个设备的接口电路有故障,则第i设备以后的设备都不能进行优先级工作。
当优先级高的部件频繁请求使用总线时,会使优先级较低的部件长期不能使用总线;
计数器定时查询
计数器查询优先级判别方式:
当总线控制器收到总线请求信号判断不忙时,计数器开始计数,计数值通过一组地址线发向各个部件。当地址线上的计数值与使用请求总线设备的的地址一致时,该设备获得总线控制权。同时,终止计数器的计数及查询方式。
计数方式:
计数器每次判优都从“0”开始,此时一旦设备的优先顺序被固定以后,设备的优先级就按0、1、2、3、....、n的顺序降序排列,永远不能变。
计数器也可以从上一次的终点开始计数,是一种循环方法,此时所有设备使用总线的优先级相等,计数器的初值也可以由程序设置,故优先级可以改变。
计数器查询方式的优点:各设备的优先级可以改变,且对电路的故障不如链式查询方式敏感。
计数器查询方式的缺点:增加了控制线数(少了一根总线同意线,多了log2n设备地址线),控制也比链式复杂。
独立请求方式
每一个设备均有一对总线请求信号BR和总线同意信号BG。
独立请求优先级判别方式:当总线上的部件需要使用总线时,经各自的总线请求线发送总线请求信号,在总线控制器按一定的优先顺序决定批准某个部件的请求时,则给该部件发送总线响应信号,该部件接到此信号就获得了总线使用权,开始传输数据。
独立请求方式的优点:响应时间很快(以增加控制线为代价)对优先级顺序的控制相当灵活(也可以通过程序来改变)。
独立请求方式的缺点:控制线数量多(n个设备需要2n+1根控制线),总线控制更复杂。
分布式:将逻辑控制分散在与总线连接的各个部件或设备上。
分布总裁不需要中央仲裁器,每个主模块都有自己的仲裁号和仲裁器,多个仲裁器竞争使用总线。当他们有总线请求时,把他们各自唯一的仲裁号发送到共享的仲裁总线上,每个仲裁器将从仲裁总线上的仲裁号与自己的总裁号进行比较。若仲裁总线上的号优先级高,则他的总线请求不予响应,并撤销它的仲裁号,随后获胜者的仲裁号留在总裁总线上。
通信控制
总线周期的概念
1.申请分配阶段:由需要使用总线的主模块(或主设备)提出申请,经总线总裁机器决定下一个传输周期总线使用权授予某一申请者
2.寻址阶段:取得了使用权的主模块发出本次要访问的从模块(或从设备)的地址及有关命令,启动参与本次传输的从模块。
3.传送数据阶段:主模块和从模块进行数据交换,数据由源模块发出,经数据总线流入目的模块。
4.结束阶段:主模块的有关信息均从系统总线上撤除,让出总线使用权。
总线通信方式
同步通信(同步定时方式,地址信号全程陪伴)
同步定时方式是系统采用一个统一的时钟信号来协调发送和接收双方的传送定时方式。
上升沿:数字电平从0变为1的那一瞬间。
下降沿:数字电平从1变为0的那一瞬间。
读命令:
T1:主模块发出地址信息。
T2:主模块发出读命令。(低电平有效)必须在T3的上升沿到来之前将CPU所需要的数据送到数据总线上。
T3:从模块提供数据
T4:主模块撤销读命令,从模块撤销数据。
写命令:
T1:主模块发出地址信息
T1.5:主模块提供数据
T2:主模块发出写命令(低电平有效),从模块接收到命令后,必须在规定时间内将数据总线上的数据写到地址总线所指明的单元内。
T4:主模块撤销写命令和数据信号。
优点:传输速度快,具有较高的传输速率
缺点:同步通信必须按最慢的模块来设计公共时钟,当总线上的模块存取速度差别很大时,便会大大的损失总线效率,并且不知道被访问的外部设备是否真正的响应,故可靠性比较低。
使用范围:总线长度较短、总线所接部件的存取时间应该都比较接近。
异步通信(异步定时方式)
异步通信没有公共时钟标准,不要求所有部件严格的统一操作时间,而是采用应答的方式(或称握手方式)。
应答方式(简略)
不互锁方式:主模块的请求信号和从模块的回答信号没有相互的制约关系。
半互锁方式:主模块的请求信号和从模块的回答信号又简单的制约关系。
全互锁方式:主模块的请求信号和从模块的回答信号有完全制约的关系。
异步通信可用于并行传送或串行传送。
异步通信的数据传送速率用波特率来衡量。
半同步通信
既保留了同步通信的基本特点,如所有的地址、命令、数据信号发出的时间,都有严格参照系统时钟的某个前沿开始。又像异步通信那样允许不同速度的模块和谐地工作,为此增设了一条“等待”(WAIT)响应信号线。
通信时序:
T1:主模块发出地址信息
T2:主模块发出命令
Tw:当WAIT为低电平时,进入等待,Tw地宽度和T的宽度一致
T3:从模块提供数据
T4:主模块撤销命令,从模块撤销数据
适用于系统工作速度不高但又包含了由许多工作速度差异较大的各类设备组成的简单系统
优点:比异步通信简单,在全系统内各模块又在统一的系统时钟控制下同步工作,可靠性高,同步结构较方便。
缺点:对系统时钟频率不能要求太高,故从整体来看,系统工作的速度还不是很高。
分离式通信
总线标准
可视为系统与各模块、模块和模块之间的一个互连的标准界面。
对硬件设计而言:是各个模块的接口芯片设计相对独立。
对软件设计而言:更有利于接口软件的模块化设计。
系统总线:
ISA
EISA
VESA
PCI
PCI-Express(PCI-E)
设备总线:
IDE
AGP
USB
SATA
存储器
存储器分类
按存储介质:
半导体存储器
磁表面存储器
磁芯存储器
光盘存储器
按存取方式:
随机存储器(Random Access Memory,RAM)
只读存储器(Read Only Memory,ROM)
串行访问存储器
顺序存储器
直接存储器
输入输出系统
主题