计算机组成原理(2)

目录

计算机的总线

总线的分类:

片内总线

系统总线

总线的仲裁

链式查询

计数器定时查询

独立请求

计算机的输入输出设备

字符输入设备

键盘

图形输入设备

鼠标

数位板

扫描仪

输入输出接口的通用设计

数据线

状态线

命令线

设备选择线

CPU与IO设备的通信

程序中断

DMA(直接存储器访问)

计算机存储器

存储器的分类:

存储器的层次结构:

层次结构:

主存——缓存层次

主存———辅存层次

计算机的主存储器与辅助存储器

主存储器——内存

辅助存储器——磁盘

计算机存储器的高速缓存

高速缓存的工作原理

主存

缓存

命中率h

访问效率e

高速缓存的替换策略

计算机的指令系统

机器指令的形式

机器指令的操作类型

机器指令的寻址方式

计算机的控制器

程序计数器

时序发生器

指令译码器

指令寄存器

主存地址寄存器

主存数据寄存器

通用寄存器

计算机的运算器

数据缓冲器

ALU

状态字寄存器

通用寄存器


计算机的总线

USB:Universal Serial Bus(通用串行总线)

作用:提供了对外连接的接口

不同设备可以通过USB接口进行连接

连接的标准,促使外围设备接口的统一

总线的分类:

片内总线

芯片内部的总线

连接寄存器与控制器,存储器之间

高集成芯片中的信息传输线

系统总线

数据总线

双向传输各个部件的数据信息

数据总线的位数(总线宽度)是数据总线的重要参数

一般与CPU位数相同(32位、64位)

地址总线

指定源数据或目的的数据在内存中的地址

地址总线位数=n,则寻址范围:0~2^n

控制总线

控制总线是用来发出各种控制信号的传输线

控制信号经由控制总线从一个组件发给另外一个组件

控制总线可以监视不同组件之间的状态(就绪/未就绪)

总线的仲裁

链式查询

好处:电路复杂度低,仲裁方式简单

坏处:优先级低的设备难以获得总线的使用权

对电路故障敏感

计数器定时查询

仲裁控制器对设备编号并使用计数器累计计数

接收到仲裁信号后,往所有设备发出计数值

计数值与设备编号一致,则获得总线使用权

独立请求

每个设备均有总线独立连接仲裁器

设备可单独向仲裁器发送请求和接受请求

当同时收到多个请求信号,仲裁器有权按优先级分配使用权

好处:响应速度快,优先顺序可以动态改变

坏处:线路相对复杂

计算机的输入输出设备

字符输入设备

键盘

薄膜键盘

机械键盘

黑轴、红轴、青轴、茶轴

电容键盘

图形输入设备

鼠标

数位板

输入板和压感笔

扫描仪

将图形信息转换为数字信号

输入输出接口的通用设计

数据线

是I/O设备与主机之间进行数据交换的传送线

单向传输数据线

双向传输数据线

状态线

IO设备状态向主机报告的信号线

查询设备是否已经正常连接并就绪

查询设备是否已经被占用

命令线

发送命令信号

设备选择线

对连在总线上的 设备进行选择

CPU与IO设备的通信

程序中断

当外围IO设备就绪时,向CPU发出终端信号

DMA(直接存储器访问)

当主存与IO设备交换信息时,不需要中断CPU,可以提高CPU的效率

计算机存储器

存储器的分类:

按存储介质:

半导体存储器:内存,u盘,固态硬盘

磁存储器:磁带,磁盘

按存取方式:

随机存储器(RAM):随机读取,与位置无关

串行存储器:与位置有关,按顺序查找

只读存储器:只读不写

存储器的层次结构:

考虑因素:

读写速度,存储容量,价格

性价比单位:容量+价格=>位价:每比特位价格

层次结构:

缓存:速度快,位价高,容量最低

主存:速度适中,位价适中,容量适中

辅存:速度最慢,位价最低,容量最大

 

主存——缓存层次

原理:局部性原理

实现:在CPU与主存之间增加一层速度快(容量小)的Cache

目的:解决主存速度不足的问题

主存———辅存层次

原理:局部性原理

实现:主存之外增加辅助存储器(磁盘,SD卡,U盘等)

目的:解决主存容量不足的问题

计算机的主存储器与辅助存储器

主存储器——内存

RAM(随机存区存储器)

RAM通过电容存储数据,每隔一段时间刷新一次,所以断电会丢失数据

32位系统:最多支持4GB的内存

64位系统:最多支持2^34GB内存

辅助存储器——磁盘

 

先来先服务算法

按顺序读取存储信息

最短寻道时间优先

与磁头当前位置有关

优先访问与磁头距离最近的磁道

扫描算法(电梯算法)

每次只往一个方向移动

到达一个方向所需要服务的尽头后才会向反方向移动

循环扫描算法

只会向一个方向扫描,不会到尽头后往反方向移动。

计算机存储器的高速缓存

高速缓存的工作原理

字:只存放在一个存储单元中的二进制代码组合

字块:存储在连续的存储单元中而被看作是一个单元的一组字

主存

一个字有32位

一个字块共B个字

主存共M个字块

B*M=主存总字数

B*M*32=主存容量(bits)

字的地址:包含两部分

前m位指定字块的地址

2^m=B

后b位指定字在字块中的地址

2^b=M

缓存

主存>缓存

存储的逻辑结果类似,容量较小,缓存速度更快

一个字有32位

一个字块共C个字

主存共M个字块

C*M=主存总字数

C*M*32=主存容量(bits)

字的地址:包含两部分

前c位指定字块的地址

2^c=C

后b位指定字在字块中的地址

2^b=M

命中率h

命中率是衡量缓存的重要性能指标

理论上CPU每次都能从高速缓存取数据的时候,命中率为1

计算公式

访问主存次数:Nm      访问Cache次数:Nc

命中率h=Nc/(Nc+Nm)

访问效率e

访问主存时间:tm 访问缓存时间:tc

访问Cache-系统平均时间:ta = htc+(1-h)tm

访问效率::e=tc/ta=tc/htc+(1-h)tm

高速缓存的替换策略

随机算法

先进先出算法——像个队列一样操作

最不经常使用算法——优先淘汰最不经常使用的字块,需要额外的空间记录每个字块的使用频率

最近最少使用算法——优先淘汰一段时间内没有使用的字块

有多种实现方法,一般使用双向链表,把当前访问节点置于链表前面(保证链表头部节点是最近使用)

计算机的指令系统

机器指令的形式

由两部分组成:操作码,地址码

操作码:

操作码指明指令所要完成的操作

操作码的位数反映了机器的操作种类:种类数=2^位数

地址码:

地址码直接给出操作数或操作数的地址

分三地址指令,二地址指令和一地址指令:代表地址码中包含地址的个数

零地址指令

在机器指令中无地址码。

空操作、停机操作、中断返回操作等

机器指令的操作类型

数据传输

寄存器之间、寄存器与存储单元、存储单元之间传送

数据读写、交换地址数据、清零置一操作

算术逻辑操作

操作数之间的逻辑运算

移位操作

数据左移右移,完成数据在算术逻辑单元的必要操作

控制指令

等待指令、停机指令、空操作指令、中断指令

机器指令的寻址方式

指令寻址

顺序寻址、跳跃寻址

数据寻址

立即寻址

指令直接获得操作数

无需访问存储器

优点:速度快

缺点:地址码位数限制操作数表示范围

直接寻址

直接给出操作数在主存的地址

优点:寻找操作数简单

缺点:地址码位数限制操作数表示范围

寻找操作数简单,无需计算数据地址

间接寻址

指令给出的是操作数地址的地址

需要访问一次或多次主存获取操作数

优点:操作寻址范围大

缺点:速度较慢

计算机的控制器

控制器是协调和控制计算机运行的

组成部分:

程序计数器

用来存储下一条指令的地址

循环从程序计数器拿出指令

时序发生器

电气工程领域,用于发送时序脉冲

CPU依据不同的时序脉冲有节奏的进行工作

指令译码器

翻译操作码对应的操作以及控制传输地址对应的数据

指令寄存器

从主存或高速缓存取计算机指令

主存地址寄存器

保存当前CPU正要访问的内存单元的地址

主存数据寄存器

保存当前CPU正要读或写的主存数据

通用寄存器

用于暂时存放或传送数据或指令

可保存ALU的运算中间结果

容量比一般专用寄存器要大

计算机的运算器

用于对数据进行计算加工

数据缓冲器

分为输入缓冲和输出缓冲

输入缓冲暂时存放外设送过来的数据

输出缓存暂时存放送往外设的数据

ALU

算术逻辑单元,是运算器的主要组成部分

完成常见的位运算和算术运算

状态字寄存器

存放运算状态,存放运算控制信息

通用寄存器

用于暂时存放或传送数据或指令

可保存ALU的运算中间结果

容量比一般专用寄存器大

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值