第一章、计算机系统概述
冯诺依曼计算机的特点?
- 硬件系统由运算器,控制器,存储器,输入设备和输出设备五大部件组成
- 指令和数据以同等地位存在存储器中,按地址访问
- 指令和数据均用二进制表示
- 指令由操作码和地址码组成
- 指令在存储器中顺序存放
- 早期,冯诺依曼计算机以运算器为中心
第三章、存储系统
SRAM(静态随机存储器) 和 DRAM(动态随机存储器) 的区别?
- SRAM的存储元是双稳态触发器,DRAM利用电路中电容上的电荷存储信息
- SRAM读出时是非破坏性的,DRAM是破坏性读出
- SRAM不需要刷新,DRAM要刷新
- SRAM运行速度快,集成度低。DRAM运行速度慢,集成度高。
- SRAM成本高,容量小。DRAM成本低,容量大。
- SRAM一般用来做高速缓存。DRAM一般用来做主存。
为什么要刷新?刷新有几种方式?
- 因为动态随机存储器使用电容上的电荷存储信息,但电荷一般只能维持1~2ms,因此需要每隔一断时间刷新。
刷新方式:集中刷新,分布刷新,异步刷新
Cache利用的局部性原理
时间局部性:最近未来要访问的信息,很可能是现在正在访问的信息。
空间局部性:最近未来要访问的信息,很可能与现在正在访问的信息空间上相邻。
Cache与主存的三种映射方式(有计算题)
全相联映射,直接映射,组相连映射
Cache与主存的替换算法(计算题)
FIFO,LRU,LFU,RAND
Cache写策略
因为Cache中存的是主存的副本,所以对Cache更新时需要保证与主存内容一致
命中时:全写法,写回法
不命中时:写分配法,非写分配法
快表(TLB)和Cache都是高速缓存,他们有什么区别?
快表中存放的是页表(慢表)的副本,而Cache中存放的是主存中实际数据的副本。
虚拟存储器和Cache的比较
同:
- 都是为了提高存储器性能而构造的分层体系
- 都有地址映射,替换算法,更新策略
- 都运用了局部性原理,将常用信息从慢速存储器调入高速设备
异:
- 侧重点:Cache为了解决主存与CPU速度不匹配问题,虚存为了解决容量问题
- 透明性:Cache全由硬件实现,是透明的。虚存由OS和硬件共同实现,虚存对系统程序员不透明,对电脑用户透明。
- 数据通路:Cache未命中CPU可直接访问主存,虚存未命中只能通过调页解决
- 未命中的影响:CPU速度为Cache的10倍,主存速度为硬盘的100倍以上,所以虚存未命中时影响更大。
存取周期和存取时间的区别?
存取时间仅为完成一次读/写操作的时间,存取周期为存储器进行连续两次独立地读/写操作的最小时间间隔。
通常存取周期大于存取时间。
第四章、指令系统
指令寻址和数据寻址
指令寻址:顺序寻址,跳跃寻址
数据寻址:隐含寻址,立即数寻址,直接寻址,间接寻址,寄存器寻址,寄存器间接寻址,相对寻址,基址寻址,变址寻址,堆栈寻址
CISC(复杂指令系统)与RISC(精简指令系统)的对比
- CISC指令系统庞大,指令数目200条以上,RISC则小于100条
- CISC指令长度不固定,指令格式和寻址方式多,RISC指令长度固定,指令格式种类和寻址方式少
- CISC可以访存的指令不受限制,RISC只有load/store指令可以访存
- CISC各种指令使用频率相差大,RISC则都常用
- CISC大多采用微程序控制,RISC则以硬布线为主
- CISC难以优化编译,RISC则特别重视优化编译
第五章、中央处理器
指令和数据都在存储器中,计算机如何区分他们?
从时间上:取指令周期从内存中取出的是指令,执行指令阶段操作的是数据
从空间上:从内存流向控制器或IR(指令寄存器)的是指令,从内存流向运算器的是数据。
水平型微指令和垂直型微指令的比较
- 水平微指令比垂直微指令并行能力强、效率高、灵活性强
- 水平微指令执行一条指令时间短,垂直微指令则时间长
- 水平型微指令构成的微程序,具有微指令字长较长但微程序短的特点,而垂直型则字长短微程序长
- 水平微指令用户难以掌握,垂直型微指令与指令类似,容易掌握。
指令周期,机器周期,时钟周期有什么关系?
- CPU取出并执行一条指令所需全部时间为指令周期。机器周期是指令周期中一步相对完成的指令步所需时间。时钟周期是计算机基本的时序单位。
- 通常一个指令周期包含若干机器周期,一个机器周期包含若干时钟周期
微程序,微指令,微命令之间的关系
- 控制部件通过控制线向执行部件发出的各种控制命令,称为微命令;一组实现一定功能微命令的组合,构成一条微指令;许多微指令组成的序列构成微程序,微程序完成对一条指令的解释。
- 一条指令对应一个微程序,一个微程序有许多微指令构成,一个微指令发出很多微命令。
微程序控制器与硬布线控制器的对比?