计算机组成原理笔记

基本概念——

计算机系统——计算机硬件、软件和数据通信设备的物理或逻辑的综合体。

计算机硬件——计算机的物理实体。

计算机软件——计算机运行所需的程序及相关资料。

总线系统——各部件之间传送信息的通路和器件。

主机——是计算机硬件的主体部分,由CPU+MM(主存或内存)组成。

CPU——中央处理器(机),是计算机硬件的核心部件,由运算器+控制器组成。

主存——计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取。

存储器——计算机系统中的记忆设备,用来存放程序和数据。

存储单元——可存放一个机器字并具有特定存储地址的存储单位。

存储体——存储单元的集合,是存放二进制信息的地方。

单元地址——在存储器中用以标识存储单元的唯一编号,CPU通过该编号访问相应的存储单元。

存储元件——存储1位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取。

存储字——一个存储单元所存二进制代码的逻辑单位。

存储字长——一个存储单元所存二进制代码的位数。

存储容量(主存容量和辅存容量)——存储器可以容纳的二进制信息量.=存储单元个数*存储字长。

主存容量——主存中存放二进制代码的总位数。

机器字长——CPU能一次能处理的数据位数,通常与CPU的寄存器位数有关。字长越长,数的表示范围越大,精度越高。若CPU字长较短,但要运算位数较多的数据,那么需要经过两次或多次的运算才能完成,影响机器的运算速度;

指令字长——一条指令的二进制代码位数;

CPU——Central Processing Unit,中央处理机(器);            

 

PC——Program Counter,程序计数器,存放当前欲执行指令的地址,并可自动计数形成下一条指令地址的计数器;

IR——Instruction Register,指令寄存器,存放当前正在执行的指令的寄存器;

CU——Control Unit,控制单元(部件),控制器中产生微操作命令序列的部件,为控制器的核心部件;

完成一条指令:取指令-分析指令-执行指令;                                 

ALU——Arithmetic Logic Unit,算术逻辑运算单元,运算器中完成算术逻辑运算的逻辑部件;

ACC——Accumulator,累加器,运算器中运算前存放操作数、运算后存放运算结果的寄存器;

MQ——Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器;

X——此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数;

 

MAR——Memory Address Register,存储器地址寄存器,内存中用来存放欲访问存储单元地址的寄存器,MAR的位数表明存储单元的个数;

MDR——Memory Data Register,存储器数据缓冲寄存器,主存中用来存放从某单元读出、或写入某存储单元数据的寄存器;MDR的位数表明存储字长;

指令周期——CPU每取出并执行一条指令所需的全部时间;

机器周期——在同步控制的机器中,执行指令周期中一步相对完整的操作(指令步)所需时间,通常安排机器周期长度=主存周期;

时钟周期——计算机主时钟的周期时间,它是计算机运行时最基本的时序单位,对应完成一个微操作所需时间,通常时钟周期=计算机主频的倒数。

I/O——Input/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送;

MIPS——Million Instruction Per Second,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位;

CPI——Cycle Per Instruction,执行一条指令所需时钟周期数,计算机运算速度指标计量单位之一;

FLOPS——Floating Point Operation Per Second,每秒浮点运算次数,计算机运算速度计量单位之一。

位——这是计算机中所表示的最基本、最小的数据单元。

字节(Byte)——是计算机中通用的基本单元,由8个二进制位组成。

字——是计算机内部进行数据处理的基本单位。

指令执行时间——是指取指令和执行指令所花时间的总和。

可靠性——指计算机在规定时间和条件下正常工作不发生故障的概率。

兼容性——指计算机硬件设备和软件程序可用于其他多种系统的性能。

性能价格比——是衡量计算机产品优劣的综合性指标。

 

·诺依曼计算机的特点——

  • 由运算器、控制器、存储器、输入设备、输出设备五大部件组成;

  • 指令和数据以同一形式(二进制形式)存于存储器中;

  • 指令由操作码、地址码两大部分组成;

  • 指令在存储器中顺序存放,通常自动顺序取出执行;

  • 以运算器为中心(原始冯氏机)

 

计算机如何区分指令和数据——

计算机硬件主要通过不同的时间段来区分指令和数据,即:取指周期(或取指微程序)取出的既为指令,执行周期(或相应微程序)取出的既为数据。

另外也可通过地址来源区分,从PC指出的存储单元取出的是指令,由指令地址码部分提供操作数地址。

 

总线——

总线是多个部件共享的传输部件;

总线传输的特点:某一时刻只能有一路信息在总线上传输,即分时使用;

为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线连通。

分类——

数据传输方式:并行传输总线/并行传输总线

使用范围:计算机总线、测控总线、网络通信总线

连接部件:片内总线(芯片内部的总线)

系统总线——(板级总线或板间总线)

通信总线——用于计算机系统之间或计算机系统与其他系统(如控制仪表、移动通信等)之间的通信。

总线特性

  机械特性(寸、形状、管脚数 及 排列顺序)

  电气特性(传输方向 和有效的电平范围)

  功能特性(每根传输线的功能:地址/数据/控制)

  时间特性(信号的时序关系)

 

总线性能指标——

总线宽度(数据总线的根数)()

总线带宽(数据的传输速率(每秒传输的最大字节数))=总线频率*总线宽度/8 (MBps)

时钟同步/异步(总线上的数据与时钟是否同步)

总线复用(一条信号线上分时传送两种信号)

信号线数(地址线、数据线和控制线的总和)

总线控制方式(包括突发工作、自动配置、逻辑方式、仲裁方式、计数方式)

其他(负载能力、电源电压、扩展)

 

单总线结构性能下降的原因——

总线上连接的设备越多,传输延迟越大。

总线上挂接设备速度差异越大,效率越差。

CPU只能挂接在这个单一的总线上,不能从数据传送操作中解放出来。

总线判优控制解决多个部件同时申请总线时的使用权分配问题;

 

常见的集中式总线控制:链式查询、计数器查询、独立请求;

特点:链式查询方式连线简单,易于扩充,对电路故障最敏感;

计数器查询方式优先级设置较灵活,对故障不敏感,连线及控制过程较复杂;

独立请求方式判优速度最快,但硬件器件用量大,连线多,成本较高。


总线的主设备(主模块)——指一次总线传输期间,拥有总线控制权的设备(模块);

总线的从设备(从模块)——指一次总线传输期间,配合主设备完成传输的设备(模块),它只能被动接受主设备发来的命令;

总线的传输周期——总线完成一次完整而可靠的传输所需时间;

总线的通信控制——指总线传送过程中双方的时间配合方式。


同步通信——由统一时钟控制的通信,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下降。适合于速度差别不大的场合;

异步通信——不由统一时钟控制的通信,部件间采用应答方式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件工作速度差异较大时,有利于提高总线工作效率。

半同步通信既能像同步通信那样由统一时钟控制,又能像异步通信那样允许传输时间不一致,因此工作效率介于两者之间。


总线标准的设置主要解决不同厂家各类模块化产品的兼容问题; 目前流行的总线标准有:ISAEISAPCI等;

plug and play——即插即用,EISAPCI等具有此功能。


存取周期和存取时间的主要区别是:存取时间仅为完成一次操作的时间,而存取周期不仅包含操作时间,还包含操作后线路的恢复时间。即:存取周期 = 存取时间 + 恢复时间


存储器的带宽指单位时间内从存储器进出信息的最大数量。

 

 刷新——

刷新——对DRAM(动态随机存取存储器 )定期进行的全部重写过程;

刷新原因——因电容泄漏而引起的DRAM所存信息的衰减需要及时补充,因此安排了定期刷新操作;

常用的刷新方法——集中式、分散式、异步式。

集中式:在最大刷新间隔时间内,集中安排一段时间进行刷新;
分散式:在每个读/写周期之后插入一个刷新周期,无CPU访存死时间;

异步式:是集中式和分散式的折衷。


半导体存储器芯片的译码驱动方式:线选法和重合法。

线选法:地址译码信号只选中同一个字的所有位,结构简单,费器材;

重合法:地址分行、列两部分译码,行、列译码线的交叉点即为所选单元。这种方法通过行、列译码信号的重合来选址,也称矩阵译码。可大大节省器材用量,是最常用的译码驱动方式。


常用的I/O编址方式I/O与内存统一编址和I/O独立编址;

特点: I/O与内存统一编址方式的I/O地址采用与主存单元地址完全一样的格式,I/O设备和主存占用同一个地址空间,CPU可像访问主存一样访问I/O设备,不需要安排专门的I/O指令。 I/O独立编址方式时机器为I/O设备专门安排一套完全不同于主存地址格式的地址编码,此时I/O地址与主存地址是两个独立的空间,CPU需要通过专门的I/O指令来访问I/O地址空间。

 

显示缓冲存储器的作用是支持屏幕扫描时的反复刷新;

只读存储器作为字符发生器使用,他起着将字符的ASCII码转换为字形点阵信息的作用。


I/O接口一般指CPUI/O设备间的连接部件;

I/O接口分类方法

按数据传送方式分有:并行接口和串行接口两种;

按数据传送的控制方式分有:程序控制接口、程序中断接口、DMA接口三种。


中断向量地址和入口地址的区别:向量地址是硬件电路(向量编码器)产生的中断源的内存地址编号,中断入口地址是中断服务程序首址。

中断向量地址和入口地址的联系:中断向量地址可理解为中断服务程序入口地址指示器(入口地址的地址),通过它访存可获得中断服务程序入口地址。


I/O设备向CPU提出中断请求的条件是:I/O接口中的设备工作完成状态为1D=1),中断屏蔽码为0 MASK=0),且CPU查询中断时,中断请求触发器状态为1INTR=1)。

中断允许触发器是CPU中断系统中的一个部件,他起着开关中断的作用(即中断总开关,则中断屏蔽触发器可视为中断的分开关)。

CPU响应I/O中断请求的条件和时间是:当中断允许状态为1EINT=1),且至少有一个中断请求被查到,则在一条指令执行完时,响应中断。


程序查询、程序中断和DMA三种方式的综合性能——

    1. 程序查询、程序中断方式的数据传送主要依赖软件,DMA主要依赖硬件。

    2. 程序查询、程序中断传送数据的基本单位为字或字节,DMA为数据块。

    3. 程序查询方式传送时,CPUI/O设备串行工作; 程序中断方式时,CPUI/O设备并行工作,现行程序与I/O传送串行进行; DMA方式时,CPUI/O设备并行工作,现行程序与I/O传送并行进行。

    4. 程序查询方式时,CPU主动查询I/O设备状态; 程序中断及DMA方式时,CPU被动接受I/O中断请求或DMA请求。

    5. 程序中断方式由于软件额外开销时间比较大,因此传输速度最慢; 程序查询方式软件额外开销时间基本没有,因此传输速度比中断快;DMA方式基本由硬件实现传送,因此速度最快;

    6. 程序查询接口硬件结构最简单,因此最经济;程序中断接口硬件结构稍微复杂一些,因此较经济; DMA控制器硬件结构最复杂,因此成本最高;

    7. 程序中断方式适用于中、低速设备的I/O交换 ;程序查询方式适用于中、低速实时处理过程;DMA方式适用于高速设备的I/O交换;

 

多重中断——当CPU执行某个中断服务程序的过程中,发生了更高级、更紧迫的事件,CPU暂停现行中断服务程序的执行,转去处理该事件的中断,处理完返回现行中断服务程序继续执行的过程。

实现多重中断的必要条件是:在现行中断服务期间,中断允许触发器为1,即开中断。


逻辑移位和算术移位的区别——

逻辑移位是对逻辑数或无符号数进行的移位,其特点是不论左移还是右移,空出位均补0,移位时不考虑符号位。

算术移位是对带符号数进行的移位操作,其关键规则是移位时符号位保持不变,空出位的补入值与数的正负、移位方向、采用的码制等有关。补码或反码右移时具有符号延伸特性。左移时可能产生溢出错误,右移时可能丢失精度。


基址寻址和变址寻址——

1)都可有效地扩大指令寻址范围。

2)基址寻址时,基准地址由基址寄存器给出,地址的改变反映在位移量A的取值上;变址寻址时,基准地址由A给出,地址的改变反映在变址值的自动修改上,变址值由变址寄存器给出。

3)基址寄存器内容通常由系统程序设定,变址寄存器内容通常由用户设定。

4)基址寻址适用于程序的动态重定位,变址寻址适用于数组或字符串处理,适用场合不同。


指令周期是指一条指令从开始取指令直到指令执行完这段时间。

由于计算机中各种指令执行所需的时间差异很大,因此为了提高CPU运行效率,即使在同步控制的机器中,不同指令的指令周期长度都是不一致的,也就是说指令周期对于不同的指令来说不是一个固定值。

 

计算机的发展(巨型化,微型化,网络化,智能化,多媒体化)——

第一代 电子管时代(1946-1958)(耗电高,体积大,可靠性差,存储容量小,定点计算,机器语言,汇编语言)

第二代 晶体管时代(1959-1964)(体积、重量和功耗方面比电子管计算机小很多,运算速度提高,主存容量扩大,变集中处理为分级处理,浮点运算、高级语言.可用于科学计算、数据处理和实时控制。)

第三代 中小规模集成电路时代(1965-1975)(体积和功耗进一步减小,存储容量大,运算速度快,出现了小型系列机,出现了计算机网络和数据库。)

第四代 大规模集成电路时代(1975至今)(体积小,半导体存储器,运算速度快,可靠性高。向大型机和微型机两个方向发展)

 

 

 

 

 

 

 总线传输周期(总线上完成一次数据传输)——

1 申请占用总线阶段(需要使用总线的主设备(CPUDMA),向总线仲裁机构提出占有总线控制权的申请。总线仲裁机构判别确定后,把下一个总线传输周期的总线控制权授给申请者。)

2 寻址阶段(获得总线控制权的主设备,通过地址总线发出本次打算访问的从设备(如存储器或I/O接口)的地址。通过译码使被访问的从设备被选中,而开始启动工作。)

3 传输阶段(主设备与从设备进行数据交换。数据由源设备发出经数据总线流入目的设备。对于读传送,源设备是存储器或I/O接口等从设备,而目的设备是主设备如CPU等;对于写传送,则源设备是主设备(如CPU),而目的设备是存储器或I/O接口等从设备。)

4 结束阶段(主、从设备的有关信息均从总线上撤除,让出总线,以便其它设备能继续使用总线。)


总线判优控制——

集中式:链式查询、计数器定时查询、独立请求方式

分布式


总线通信控制——

目的——解决通信双方协调配合问题

总线传输周期——

申请分配阶段(主模块申请,总线仲裁决定)

寻址阶段(主模块向从模块 给出地址 和 命令)

传数阶段(主模块和从模块 交换数据)

结束阶段(主模块 撤消有关信息)

 

总线通信方式——

  1. 同步通信(通信双方 统一时钟控制数据传送,时钟通常是由CPU发出的,并送到总线上的所有部件。经过一段固定时间,本次总线传送周期结束,开始下一个新的总线传送周期。)

  2. 异步通信(采用应答方式 ,没有公共时钟标准)(便于实现不同速度部件之间的数据传送。)(具体联络方式:不互锁(没有相互制约)、半互锁(简单制约关系)、全互锁(完整制约关系,可靠性最高))

  3. 半同步通信(同步(发送方 用系统 时钟前沿 发信号,接收方 用系统 时钟后沿 判断、识别)、异步结合(允许不同速度的模块和谐工作,增加一条 “等待”响应信号 WAIT ))

    ——适用于速度不高但又包含许多工作速度差异较大的各类设备组成的简单系统中。

    缺点:对系统时钟频率不能要求太高,故系统工作的速度还不是很高。

    半同步通信控制比异步通信简单,各模块间在统一的系统时钟下同步工作,可靠性较高;

  4. 分离式通信(充分挖掘系统 总线每个瞬间的潜力)(充分提高了总线的有效占用,控制方式比较复杂,很少采用)

    子周期1——主模块 申请 占用总线,使用完后即 放弃总线 的使用权

        子周期2——从模块 申请 占用总线,将各种信送至总线上

——特点——

1.各模块有权申请占用总线;

2.采用同步方式通信,不等对方回答;

3. 各模块准备数据时,不占用总线

4. 总线被占用时,无空闲

波特率——单位时间内传送二进制数据的位数。Bps(/s)


存储器

存储介质分类——

  1. 半导体存储器(材料分类——双极性TTL(高速)、MOS(制造简单、成本低、功耗小广泛使用))(超大规模集成电路制成芯片,体积小、功耗低、存取时间短;易失性存储器(电源消失,信息消失))

  2. 磁表面存储器(非易失性)(磁头、载磁体)(按载体形状分类——磁盘、磁带、磁骨)

  3. 磁芯存储器(非易失的永久记忆存储器)(硬磁材料、环状元件)(体积大、工艺复杂、功耗大)

  4. 光盘存储器(激光、磁光材料)(密度高、耐用、可靠、可互换)

存取方式分类——

1存取时间与物理地址无关(随机访问)

1) 随机存储器RAM(在程序的执行过程中可读可 写)(存取时间与存储单元的物理地址无关。主存采用)(静态RAM(触发器原理寄存信息)、动态RAM(电容充放电寄存信息、刷新))

2) 只读存储器ROM(在程序的执行过程中只读)(存放固定不变的程序、常数以及汉字字库,甚至用于操作系统的固化。)

2 存取时间与物理地址有关(串行访问存储器)(对存储单元进行存储操作时,按其物理位置的先后顺序寻找地址)

3) 顺序存取存储器 (磁带) (从始端开始按顺序寻找,信息所在位置不同,读写时间均不相同。)

4)直接存取存储器 (磁盘)(读写时,先直接指出该存储器的某个小区域(磁道),然后再顺序寻访,直至找到位置。故其前段是直接访问,后段是串行访问)


计算机中的作用分类——

 

 

CPU角度,缓存-主存这一层次的速度接近缓存,高于主存;其容量和位价却接近主存。

主存-辅存,速度接近主存,容量接近辅存,平均位价接近辅存,解决了速度、容量及成本间的矛盾。(缓存、主存、辅存三级存储系统)


向主存存入某一个信息字:

 

CPU将该字地址经MAR送至地址总线

将信息字送至MDR

向主存发出写命令

主存接到写命令

将数据总线上的信息写入到对应地址线指

出的主存单元。

从存储器中读出某一个信息字:

CPU将该字的地址送到MAR

经地址线送至主存发出读命令,主存接到读命令

根据地址将该单元的内容送至数据总线上

至于该信息由MDR送至哪里,由CPU

定。

 

 

主存技术指标——

1 、存储容量(主存 能存放二进制代码的总位数 )(字节、位)=存储单元个数×存储字长/8=

2n×mn-地址线、m-数据线)

2 、存储速度(存取时间(存储器的 访问时间)、存取周期(存储器进行连续两次启动存储器操作所需的最小间隔时间)、存储器带宽(单位时间里存储器所能存取的最大信息量)(位/秒(bps)或字节/

3 、存储器的带宽(与存取周期密切相关)

4、存储器的价格(用每位的价格来衡量。设存储器容量为S,总价格为C,则位价为C/S(/)它不仅包含了存储元件的价格,还包括

为该存储器操作服务的外围电路的价格。

5、可靠性:指存储器正常工作(正确存取)的性能。

6、功耗:存储器工作的耗电量。

 

 

提高带宽的措施——缩短存取周期、增加存储字长增加存储体

 

半导体存储芯片的译码驱动方式——线选法、重合法

 

 

动态RAM时序——

行、列地址分开传送

/RAS/CAS与地址间的关系 (行地址选通)

先由/RAS将行地址送入行地址缓存器,

再由/CAS将列地址送入列地址缓存器。

/RAS/CAS正负电平的宽度应大于规定值。

行地址对/RAS的下降沿以及列地址对/CAS的下降沿应有足够的地址建立时间和地址保持时间,以确定行列地址能准确写入芯片。


读时序——行地址 RAS 有效,写允许 WE 有效(),列地址 CAS 有效,数据 DOUT 有效

 

 

写时序——

行地址 RAS 有效

写允许 WE 有效()

数据 DIN 有效

列地址 CAS 有效

 

 

 

 

动态RAM刷新——

本质: 先将原存信息读出,再由刷新放大器形成原信息并重新写入的再生过程。

原因:存储单元被访问是随机的,某些单元长时间得不到访问,其存储单元内的原信息将慢慢消失。

方法:采用定时刷新,在规定时间内对动态RAM的全部单元做一次刷新,一般是2ms,这个时间称为刷新周期,或再生周期。刷新是一行行进行的。

方式——

集中刷新(规定的一个刷新周期内,对全部存储单元集中一段时间逐行进行刷新。必须停止读写操作)

分散刷新(对每行存储单元的刷新分散到每个存取周期内完成)

异步刷新(分散刷新与集中刷新相结合)

 

 

 

 

 

 

 

 

 

 

 

           

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

存储器与 CPU 的连接——

  1. 地址线的连接

    ——CPU的地址线比存储芯片的地址线多。

     

    CPU地址线的低位与存储芯片的地址线相连。

    CPU地址线的高位作存储芯片扩充,或做片选

  2. 数据线的连接(对存储芯片扩位,使其数据位数与CPU的数据)

  3. /写命令线的连接(CPU读写命令线一般直接与存储芯片的读写控制端相连,高电平为读,低电平为写。)

  4. 片选线的连接(片选线的连接是CPU与存储芯片正确工作的关键。/MREQ :L,内存;H:I/O

  5. 合理选择存储芯片(ROM-系统程序、标准子程序、常数RAM-用户编程

  6. 其他 时序、负载

 

 

基本逻辑门电路

 

 

存储器的校验——

码距——一种编码体制中,各组合代码间不同位的bit数称为距离,其中最小的距离称为该编码的码距(衡量一种编码的查错、纠错能力)

汉明码组成三要素——需添加k位检测位(2k ≥ n + k + 1 )、检测位位置(2i i = 012…))、检测位取值

查错与纠错的原理——约定某种规律作为检测的依据,将有效信息位+校验位形成校验码,再传输;译码后检测是否符合约定规律,从而知道传输数据有没有错误。

增大码距可以提高校验信息量,为指出出错位和纠正错误位提供了可能。

L - 1 = D + C ( D≥C )L— 编码的最小距离;D— 检测错误的位数;C— 纠正错误的位数)


提高仿存速度措施——

采用层次结构——缓存、主存、辅存

寻找高速原件;

 

调整主存结构——

1 、单字多字(指令和数据在存储体内连续存放,因此CPU访存取出的信息也是连续的。

存储器内仅一套地址寄存器和地址译码器,但可以在一个存取周期内从同一地址取出n条指令或数据,再同时或分时由DBCPU。相当于1/n周期就向CPU提供了一条指令,增大了存储器带宽,提高了单位存储器的工作速度。)(前提:指令和数据在主存中必须连续存放,一旦遇到转移指令,或者操作数不能连续存放,效果不好)

2 、多字(体)并行(通过改进主存的组织方式,在不改变存储器存取周期的情况下,提高存储器的带宽。)(结构:多体交叉存储器由M个的存储体(或称存储模块)组成,每个存储体有相同的容量和存取速度,又有各自独立的地址寄存器、地址译码器、读写电路和驱动电路。既能并行工作,也能交叉工作。)(编址方法:顺序或交叉编址。)(访问:CPU同时送出的M个地址,只要它们分属于M个存储体,访问就不会冲突;由存储器控制部件控制它们分时使用数据总线进行信息传递。)(适合采用流水线方式并行存取,虽然每个存储体的存储周期没变,但是当CPU连续访问一个字块时,可以大大提高存储器的带宽。)

3 、设置存控

多体模块不仅与CPU交换信息,还要与辅存、I/O设备、I/O处理机等交换信息。

在某一时刻,决定主存究竟与哪个部件交换信息,必须由存储器控制部件。

存控具有合理安排各部件请求访问的顺序以及控制主存读写操作的功能。

 

3.高性能存储芯片——

1SDRAM (同步 DRAM)(在系统时钟的控制下进行读出和写入)

2RDRAM(由 Rambus 开发,主要解决 存储器带宽 问题)

3、带 Cache DRAM (CDRAM)

(在 DRAM 的芯片内 集成 了一个由 SRAM 组成的 Cache ,有利于 猝发式读取)


高速缓冲存储器(I/O向主存请求的级别高于CPU访存,CPU等待I/O访存,避免 CPU “空等” 现象;CPU 和主存(DRAM)的速度差异;程序访问的局部性原理(由于指令和数据在主存内都是连续存放的,并且有些指令和数据会被多次调用,CPU从主存取指令或者数据时,在一定时间内,只是对主存局部地址区域进行访问)即指令和数据在主存的地址分布不是随机的,而是相对的簇聚,使得CPU在执行程序时,访存具有相对的局部性)


Cache(一般由高速SRAM构成)(用于弥补CPU和主存之间的速度差异,提高CPU访问主存的平均速度。 )(Cache的内容是主存部分内容的副本,Cache的功能均由硬件实现)

Cache读写操作

CPU在读写存储器时,Cache控制逻辑首先要依据地址来判断这个字是否在Cache中,若在Cache中,则称为“命中”;若不在,则称为“不命中”。

 

读命中:立即从Cache读出送给CPU

读不命中:通常有两种解决方法:

1、将主存中该字所在的数据块复制到Cache中,然后再把这个字传送给CPU

2、把此字从主存读出送到CPU,同时,把包含这个字的数据块从主存中读出送到Cache中。

写不命中:说明Cache中没有,直接将该字写入主存中,且不再调入Cache

写命中:说明Cache中有(即有该地址),通常也有两种方法进行处理:

1、写直达法:同时对Cache和主存进行写操作(同时修改);

2、写回法:只写Cache,仅当此Cache块被替换时,才将该块写入主存(只修改Cache).


cache命中率(CPU要访问的信息已在CPU要访问的信息已在 )(取决于Cache的容量和块长)=h-Nc/(Nc+Nm)

Nc表示Cache完成存取的总次数,Nm表示主存完成存取的总次数,)

 

一般而言, Cache容量越大,其CPU的命中率越高。

 

Cache-主存地址映射——

1、直接映射(多对一的映射关系:主存的第j块一定映射到Cache的第i块。)(映射方式简单,易实现;机制不灵活,Cache命中率低。)

2、全相联映射(对多的映射关系:对于主存的任何一块均可以映射到Cache的任何一行。)(制灵活,命中率高。比较器电路难于设计和实现,因此只适合于小容量的Cache

 

3、组相联映射(将Cache的行分成2c-r组,每组2r行。主存的字块存放到Cache中的哪个组是固定的,至于映射到该组哪一行是灵活的)(增加了映射的灵活性,提高了命中率,开销不是很大)

Cache的数据块称为行,主存的数据块称为块,行与块是等长的;主存容量为2m方 块,Cache容量为2c平方行,每个字块中含2b平方字

 

 

替换算法——

1、随机替换算法(不能提高命中率,随机确定被特换的块)

2、先进先出算法

3、近期最少使用算法


辅助存储器(外存)(量大,可靠性高,单位存储容量价格低,在掉电情况下能长期保存信息。非易失性存储器)

磁表面存储器——

 

 

循环冗余校验码——

规则——让校验码能被某一约定代码除尽。能除尽,表明代码无错; 若除不尽,余数将指明出错位置。

实现原理——在n位信息位之后拼接k位校验位


I/O数据总线包括数据线、设备传送线(传送设备码)、命令线(用于传输CPU向设备发出的各种命令信号)、状态线(一组单向总线)

I/O系统软件任务——将用户编制的程序(数据)输入到主机内;将运行结果输出给用户;是想输入输出系统与主机工作的协调。

I/O设备与主机的联系方式——I/O设备编址;设备编址;传送方式;联络方式;I/O设备与主机的连接方式。

I/O设备分类——人机交互设备;计算机信息的存储设备;机机通信设备;

处理中断I/O接口的硬件配置——

中断请求触发器和中断屏蔽触发器

排队器

中断向量地址形成部件(设备编码器)

程序中断方式接口电路的基本组成

中断处理过程——中断请求、中断判优、中断响应、中断服务、中断返回


中断服务流程——

保护现场(保护程序断点(中断隐指令)、保存通用寄存器和状态寄存器内容(中断服务程序完成))、

中断服务、

恢复现场、

中断返回

 

 

引起中断因素——人为设置;程序性事故;硬件故障;I/O设备;外部事件;

中断屏蔽技术主要用于多重中断(实现条件:提前设置开中断指令;优先级别高等中断源有权中断优先级别低的中断源 );

如果排队器集中设在CPU内,加上屏蔽条件,可以组成具有屏蔽功能的排队器;

每个中断请求触发器有一个屏蔽触发器,将所有的屏蔽触发器组合一起构成屏蔽寄存器,屏蔽寄存器中的内容叫屏蔽字。屏蔽字的优先级和中断源的优先级别一一对应。


接口的功能和组成——选址;传送命令;传送数据;反映I/O设备工作状态。

——类型(传送方式 )——并行接口(一个字节的所有位同时传送);串行接口(一位一位传送);

(功能选择)——可编程(用程序改变或选择);不可编程;

(通用性)——通用接口;专用接口;

(数据传送的控制方式)——程序性接口(键盘、打印机);DMA型接口(用于高速连接IO设备(磁盘、磁带))(Intel 8237);


DMA与主存交换数据方法——

停止CPU访问主存;周期窃取(周期挪用);DMACPU交替访问;

DMA接口功能——向CPU申请DMA传送 ;在CPU允许DMA工作时,处理总线控制权的转交,避免因进入DMA工作而影响CPU正常活动或引起总线竞争;在DAM期间管理系统总线,控制数据传送;确定数据传送的起始地址和数据长度,修正数据传送过程中的数据地址和数据长度;在数据块传送结束时给出DMA操作完成的信号。

DMA接口基本组成——主存地址寄存器(AR);字计数器(WC);数据缓冲寄存器(BR);DMA控制逻辑;中断结构;设备地址寄存器(DAR);

DMA传送过程——预处理(cpu给配置信息(控制逻辑指明数据传送方向;设备号;DMA主存地址寄存器送入交换数据的主存起始地址;对字计数器赋予交换数据的个数);数据传送(数据块为单位);后处理(中断请求得到相应后,cput停止原程序的执行,转去执行中断服务晨曦,做DMA结束工作))

DMA接口与系统连接 方式——具有公共请求的DMA请求;独立的DMA请求;

DMA接口类型——选择型;多路型;


指令组成——操作码(指明指令要完成的操作)、地址码(指出指令的源操作数的地址、结果的地址以及下一条指令的地址);

操作类型——数据传送;算数逻辑操作;移位;转移;

寻址方式(分为指令寻址和数据寻址)是确定本条指令的 数据地址以及下一条将要执行的指令地址的方法。与硬件结构相关,直接影响指令格式和功能;

指令寻址(顺序寻址(程序计数器PC+1)、跳序寻址(通过转移类指令实现))

数据寻址——立即寻址、直接寻址、隐含寻址、间接寻址、寄存器寻址、寄存器间接寻址、基址寻址、变址寻址、相对寻址、堆栈寻址。


CPU的功能——取指令;分析指令;执行指令。

CPU的寄存器——用户可见寄存器(通用寄存器;数据寄存器;地址寄存器;条件寄存器);控制和状态寄存器(MAR:存储地址寄存器,存放被访问的存储单元地址;MDR:存储器数据地址,存放预放入存储器中的数据或最近从存储器中读出的数据;PC:程序计数器,存放线性指令的地址,计数功能;IR:指令寄存器,存放当前执行的指令);



外设通过接口与CPU连接的原因——

计算机有多台外设,通过接口可以实现对设备的选择

I/O设备种类多,速度不一致,与CPU相差大,通过接口实现数据缓冲;

I/O设备可能串行传输数据,CPU一般并行传送,通过接口实现数据串并格式的转换;

I/O设备的入出电平与CPU不同,通过接口实现电平转换;

CPU启动I/O设备工作,要向外设发各种控制信号,通过接口实现传输 控制命令;

I/O设备需要将工作状况报告给CPU,通过接口可监视设备的工作状态,并保存状态信息。


提高机器速度——

存储器——采用多提交叉存储器;

控制器——采用指令流水;

运算器——采用快速进位链

I/O系统——采用DMA方式

——————————————————————————————————————

 

posted on 2018-01-17 20:59  读后感  阅读(1295)  评论(0)    收藏  举报