1、计算机组成与体系结构
--知识要点--
1、Flynn分类法
一个叫Micheal.Flynn的人提出一种根据指令流、数据流的多倍性特征对计算机系统进行分类的方法。该分类法可以把计算机系统分为以下四类:
- Single Instruction stream and Single Data stream,SISD。单指令流单数据流。(早期计算机)
- Single Instruction stream and Multiple Data stream,SIMD。单指令流多数据流。
- Multiple Instruction stream and Single Data stream,MISD。多指令流单数据流。(流水线计算机)
- Multiple Instruction stream and Multiple Data stream,MIMD。多指令流多数据流。(现代高性能服务器)
2、CISC和RISC
指令系统朝着两个截然不同的方向发展:一是增强原有指令的功能,设置更为复杂的新指令实现软件功能的硬化,这类机器称为复杂指令系统计算机(CISC),典型的有采用X86架构的计算机:二是减少指令种类和简化指令功能,提高指令的执行速度,这类机器称为精简指令系统计算机(RISC),典型的右ARM,MIPS架构的计算机。
- CISC,Complex Instruction Set Computer,复杂指令系统计算机。特点:
1> 指令系统复杂庞大,指令数目一般为200条以上
2> 指令的长度不固定,指令格式多,寻址方式多
3> 访存的指令不受限制
4> 各指令使用频度相差很大
5> 各种指令执行时间相差很大,大多数指令需多个时钟周期才能完成
6> 控制器大多数采用微程序控制
7> 难用优化编译生成高效的目标代码 - RISC,Reduced Instruction Set Computer,精简指令系统的计算机。特点:
1> 选取使用频率最高的一些简单指令,复杂指令的功能由简单指令的组合来实现
2> 指令长度固定,指令格式种类少,寻址方式种类少。尽量简化单条指令的功能。
3> 只有Load/Store(取数/存数)指令访存,其余指令的操作都在寄存器之间进行
4> CPU中的通用寄存器的数量多
5> RISC一定采用流水线技术,大部分指令在一个时钟周期内完成
6> 以硬布线控制为主,不用或少用微程序控制
7> 重视编译的优化工作,以减少程序的执行时间。
8> 指令和数据按边界对其存放 - 对比图。