SDU计算机组成原理笔记
本文最后更新于:2022年7月7日 上午
简答题整理
第一章 概述
冯诺依曼计算机的特点
① 计算机由运算器、存储器、控制器、输入设备和输出设备五大部件组成
② 指令和数据以同等地位存于存储器内,并可按地址寻访
③ 指令和数据均用二进制代码表示
④ 指令由操作码和地址码组成,操作码表示操作的性质,地址码表示操作数在存储器中的位置
⑤ 指令在存储器内按顺序存放
⑥ 机器以运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成
现代计算机的组成
主机(主存储器 CPU(ALU CU))
I/O设备
第四章 存储器
存储器的层次结构主要体现在什么地方?为什么要分这些层次?计算机如何管理这些层次?
体现在主存-缓存层次和主存-辅存层次
主存-缓存层次主要解决CPU和主存速度不匹配的问题,该层次的速度接近于缓存,而容量和单位成本接近于主存,解决了存储器的高速度和低成本之间的矛盾;主存-辅存层次主要解决存储系统的容量问题,该层次的速度接近于主存,而容量和单位成本接近于辅存,解决了存储器的大容量和低成本之间的矛盾
主存-缓存之间的数据调度由硬件完成,对程序员透明;主存-辅存之间的数据调度由硬件和操作系统共同完成
什么叫刷新?说明刷新有几种方法?
为防止信息丢失,将DRAM的原存信息读出,再由刷新放大器形成原信息并重新写入的再生过程叫做刷新
集中刷新:在规定的刷新周期内,对全部存储单元集中一段时间逐行刷新,该段时间内必须停止读写操作
分散刷新:对每行存储单元的刷新分散到每个存储周期内完成
异步刷新:结合集中刷新和分散刷新。存取周期不变,行间刷新时间间隔为刷新周期/行数
简要说明提高访存速度可采取的措施
使用高速器件
采用主存-缓存层次结构
调整主存结构,使用单体多字系统或多体并行系统
第五章 输入输出系统
I/O设备有哪些编址方式,各有何特点?
统一编址:在主存地址空间划出I/O地址,通过访存指令即可实现对I/O设备的访问
独立编址:I/O地址和主存地址分开,通过I/O指令实现对I/O设备的访问
I/O设备与主机交换信息时,共有哪几种控制方式?简述它们的特点
程序查询方式:主机与I/O设备串行工作。CPU启动I/O设备后,时刻查询I/O设备状态,若准备就绪则执行I/O指令,若未准备好就踏步等待直到准备就绪。
程序中断方式:主机与I/O设备并行工作。CPU启动I/O设备后,继续执行现行程序,当I/O设备准备就绪后向CPU发送中断请求信号,CPU响应中断请求后执行I/O指令。
DMA方式:主机与I/O设备并行工作,主存与I/O设备之间有一条直接的数据通路。CPU启动I/O设备后,继续执行现行程序,当I/O设备准备就绪后发出DMA请求,CPU把外部总线的使用权暂时交给DMA,不必中断现行程序,只需暂停一个存取周期的访存。
什么是I/O接口,它与端口有何区别?
I/O接口指主机和I/O设备间设置的硬件电路和相应的软件控制
I/O端口是指接口电路中存放数据信息、控制信息和状态信息的寄存器。
简述I/O接口的功能和基本组成
功能:选址、传送数据、传送命令、反映设备状态
基本组成:设备选择电路、数据缓冲寄存器、命令寄存器和命令译码器、设备状态标记、控制逻辑电路
结合程序查询方式的接口电路,说明其工作过程
①当CPU通过I/O指令启动I/O设备后,指令的设备码字段通过地址线进入设备选择电路
②若设备码与地址线上的代码吻合,则输出SEL为1
③I/O指令的启动命令通过与SEL与非运算,将D置0,B置1
④B触发器启动设备工作
⑤输入设备将数据送入数据缓冲寄存器
⑥设备工作结束后,将D置1,B置0
⑦D触发器发出准备就绪信号
⑧CPU将数据缓冲寄存器中的数据读出
在什么条件和什么时间,CPU可以响应I/O的中断请求
条件:允许中断触发器EINT=1,有中断请求INTR=1,未被屏蔽MASK=0
时间:一条指令执行结束时刻
结合中断接口电路,说明其工作过程
①由CPU发出启动I/O设备指令,将D置0,B置1
②B触发器启动设备工作
③输入设备将数据送入数据缓冲寄存器
④设备工作结束后,将D置1,B置0
⑤D发出设备准备就绪信号,且本设备未被屏蔽时发出中断查询信号
⑥设备向CPU发出中断请求,并送入排队其进行中断判优
⑦若CPU允许中断且设备被排队选中,则进入中断响应阶段,将排队器输出送至设备编码器形成向量地址
⑧向量地址送至PC,作为下一条指令的地址
⑨进入中断服务,CPU读出数据缓冲寄存器中的数据
⑩中断返回至源程序断点处
试比较单重中断和多重中断服务程序的处理流程,说明它们不同的原因
| 单重中断 | 多重中断 |
|---|---|
| 取指令 | 取指令 |
| 执行指令 | 执行指令 |
| 中断否? | 中断否? |
| 中断响应 | 中断响应 |
| 程序断点进栈 | 程序断点进栈 |
| 关中断 | 关中断 |
| 向量地址->PC | 向量地址->PC |
| 保护现场 | 保护现场 |
| 开中断 | |
| 设备服务 | 设备服务 |
| 恢复现场 | 恢复现场 |
| 开中断 | |
| 中断返回 | 中断返回 |
区别:开中断指令安排的位置不同。
单重中断:开中断指令设置在最后中断返回之前,意味在整个中断服务程序中CPU不再响应其他中断源的请求
多重中断:开中断指令设置在保护现场之后,意味在保护现场后CPU可以再次响应级别更高的中断源请求
解释周期挪用,分析周期挪用可能会出现的几种情况
每当I/O设备发出DMA请求时,I/O设备挪用总线使用权一个或几个主存周期
情况1:CPU此时不需要访存,I/O设备与CPU不发生冲突
情况2:CPU此时正在访存,等待存取周期结束后CPU才将总线使用权让出
情况3:CPU同时提出访存请求,发生冲突,DMA请求优先,挪用总线使用权
DMA接口的功能和组成
功能:
向CPU申请DMA传送;
在CPU允许DMA工作时,处理总线控制权的转交;
在DMA期间管理系统总线,控制数据传送;
确定数据传送的起始地址和数据长度,修正数据传送过程中的数据地址和数据长度;
数据块传送结束时,给出DMA操作完成的信号
组成:
主存地址寄存器AR:用于存放主存中需要交换数据的地址
字计数器WC:用于记录传送数据的总字数
数据缓冲寄存器BR:用于暂存每次传送的数据
DMA控制逻辑:负责管理DMA的传送过程
中断机构:向CPU提出中断请求,请求CPU做DMA的后处理
设备地址寄存器DAR:存放I/O设备的设备码或表示设备信息存储区的寻址信息
结合DMA接口电路说明其工作过程
(1) 预处理
指明数据传送方向
设备地址送入DMA接口中的DAR,并启动设备
主存起始地址送入DMA接口中的AR
传送数据个数送入DMA接口中的WC
(2) 数据传送
①设备准备好一个字后发出通选信号,将该字读到BR中/将BR中的输出数据送至设备中后发出通选信号
②与此同时向DMA接口发送请求DREQ
③DMA接口向总线申请使用权HRQ
④CPU发回HLDA信号,表示允许将总线控制权移交给DMA
⑤将DMA的AR中地址送地址总线命令存储器写/读
⑥通知设备已被授予一个DMA周期,为读下一个字做准备
⑦将DMA数据缓冲寄存器的内容送数据总线/主存将相应地址单元数据通过数据总线送入DMA的BR
⑧主存将数据总线上的信息写至地址总线指定的存储单元中/将DMA的数据缓冲寄存器的内容送到输出设备
⑨修改主存地址和字计数值
⑩判断数据块是否传送结束,若未结束则继续传送;若已结束则向CPU申请程序中断
(3) 后处理
执行中断服务程序
做DMA结束处理
第七章 指令系统
试比较基址寻址和变址寻址
两种寻址方式都可以扩大寻址范围
基址寻址的有效地址等于形式地址加上基址寄存器的内容;变址寻址的有效地址的等于形式地址加上变址寄存器的内容
基址寄存器的内容由操作系统给定,且在程序的执行过程中不可变;变址寄存器的内容由用户给定,且在程序的执行过程中可变
基址寻址用于为程序或数据分配存储空间;变址寻址用于处理数组程序
第八章 CPU结构和功能
CPU的功能和结构
功能:指令控制、操作控制、时间控制、数据加工、处理中断
结构:寄存器(程序计数、存放指令地址、存放指令、存放操作数等)
CU(产生各种微操作命令序列)
ALU(算术和逻辑运算)
中断系统(处理异常情况和特殊请求)
指令周期的流程,分别说明每个子周期的作用
取指周期:取指令
间址周期:取有效地址
执行周期:完成执行指令的操作
中断周期:保存程序断点
什么是中断隐指令,有哪些功能?
中断隐指令是指令系统中没有的指令,它由CPU在中断响应周期自动完成
功能:保护程序断点、寻找服务程序入口地址(硬件向量法和软件查询法)、硬件关中断
第九、十章 控制单元
什么是指令周期、机器周期和时钟周期?三者有何关系
指令周期:取出并执行一条指令需要的全部时间
机器周期:所有指令执行过程中的基准时间
时钟周期:控制计算机操作的最小时间单位,其频率即为CPU主频
一个指令周期包含若干个机器周期,一个机器周期包含若干个时钟周期
指令微操作及节拍安排
取指周期
1 | |
1 | |
间址周期
1 | |
1 | |
执行周期
取数LDA X
1 | |
1 | |
存数STA X
1 | |
1 | |
加法ADD X
1 | |
1 | |
无条件转移JMP X
1 | |
中断周期
1 | |
1 | |
微程序控制单元的设计思想
若干条微命令组成一条微指令,控制实现一步操作
若干条微指令组成一段微程序,解释一条机器指令
每条机器指令对应一段微程序,微程序存放于控制存储器中
微程序控制单元的组成
控制存储器:用来存放全部微程序
CMAR控存地址寄存器:用来存放于欲读出的微指令地址
CMDR控存数据寄存器:用来存放从控存读出的微指令
顺序逻辑:用来控制微指令序列
微地址形成部件
地址译码
微程序控制单元的工作原理
根据机器指令的操作码,从控制存储器中找到与之对应的微程序的入口地址,取出微指令,发出微操作命令,形成下一条微指令的地址,以此类推……执行机器指令,以达到运行程序的目的
微指令的操作控制有几种编码方式?各有何特点?哪一种控制速度最快?
直接编码:操作控制字段每一位代表一个微操作命令,执行速度最快
字段直接编码:将操作控制字段分为若干段,将一组互斥的微命令放在一个字段内,每段经译码后发出控制信号
字段间接编码:一个字段的某些微命令需由另一个字段中的某些微命令解释
混合编码:直接编码和字段编码混合使用
微指令的地址有几种形成方式?
①直接由微指令的下地址字段给出
②根据机器指令的操作码形成
③增量计数器
④分支转移
⑤通过测试网络形成
⑥由硬件直接产生微程序入口地址
31猜计算题
计算机性能有关计算 $f,MIPS,CPI,T_M=\sum^n_{i=1}f_it_i$
存储器与CPU连接 片选逻辑
Cache有关计算 命中率、主存系统效率
Cache与主存的映射
定点数加减法和溢出判断 浮点数加减
原码一位乘 补码一位乘
数据寻址 结合大端小端存储模式
指令格式设计 扩展编码技术
中断屏蔽字 CPU执行程序轨迹
指令微操作、微命令、控制信号、节拍分配
本文作者: 31
本文链接: http://uuunni.github.io/2022/07/07/ComputerOrganizationReview/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!