1. 说明
- 1.CISC 和 RISC 是指令集发展的两种途径。
2. CISC
2.1 说明
- 1.CISC(Complex Instruction Set Computer,复杂指令集计算机)。
- 2.基本思想是进一步增强原有指令的功能,用更为复杂的新指令取代原先由软件子程序完成的功能,实现软件功能的硬化,导致机器的指令系统越来越庞大、复杂。
- 3.目前使用的绝大多数计算机都属于 CISC类型。
2.2 弊端
- 1.指令集过分庞杂。
- 2.微程序技术是 CISC的重要支柱,每条复杂指令都要通过执行一段解释性微程序才能完成,这就需要多个 CPU周期,从而降低了机器的处理速度。
- 3.由于指令系统过分庞大,使高级语言编译程序选择目标指令的范围很大,并使编译程序本身冗长、复杂,从而难以优化编译使之生成真正高效的目标代码。
- 4.CISC 强调完善的中断控制,势必导致动作繁多、设计复杂、研制周期长。
- 5.CISC 给芯片设计带来很多困难,使芯片种类增多,出错几率增大,成本提高而成品率降低。
3. RISC
3.1 说明
- 1.RISC(Reduced Instruction Set Computer,精简指令集计算机)。
- 2.基本思想是通过减少指令总数和简化指令功能降低硬件设计的复杂度,使指令能单周期执行,并通过优化编译提高指令的执行速度,采用硬布线控制逻辑优化编译程序。
- 3.RISC在 20 世纪 70年代末开始兴起,导致机器的指令系统进一步精炼而简单。
3.2 重叠寄存器窗口技术
- 1.在伯克利的 RISC 项目中首先采用了重叠寄存器窗口(Overlapping Register Windows)技术。
- 2.其基本思想是在处理机中设置一个数量比较大的寄存器堆,并把它划分成很多个窗口。
- 3.每个过程使用其中相邻的3个窗口和一个公共的窗口,而在这些窗口中有一个窗口是与前一个过程共用,还有一个窗口是与下一个过程共用的。
- 4.与前一过程共用的窗口可以用来存放前一过程传送给本过程的参数,同时也存放本过程传送给前一过程的计算结果。
- 5.同样,与下一过程共用窗口可以用来存放本过程传送给下一过程的参数和存放下一过程传送给本过程的计算结果。
3.3 优化编译技术
- 1.RISC使用了大量的寄存器,如何合理地分配寄存器、提高寄存器的使用效率及减少访存次数等,都应通过编译技术的优化来实现。
3.4 超流水及超标量技术
3.5 硬布线逻辑与微程序相结合在微程序技术中
4. 优化
- 1.为了提高目标程序的实现效率,人们对大量的机器语言目标代码及其执行情况进行了统计。
- 2.对程序中出现的各种指令以及指令串进行统计得到的百分比称为静态使用频度。
- 3.在程序执行过程中,对出现的各种指令以及指令串进行统计得到的百分比称为动态使用频度。
- 4.按静态使用频度来改进目标代码可减少目标程序所占的存储空间,按动态使用频度来改进目标代码可减少目标程序运行的执行时间。
- 5.大量统计表明,动态和静态使用频度两者非常接近,最常用的指令是存、取、条件转移等。
- 6.对它们加以优化,既可以减少程序所需的存储空间,又可以提高程序的执行速度。
- 7.面向高级程序语言的优化思路是尽可能缩小高级语言与机器语言之间的语义差距,以利于支持高级语言编译系统,缩短编译程序的长度和编译所需的时间。
- 8.面向操作系统的优化思路是进一步缩小操作系统与体系结构之间的语义差距,以利于减少操作系统运行所需的辅助时间,节省操作系统软件所占用的存储空间。
- 9.操作系统的实现依赖于体系结构对它的支持。
- 10.许多传统机器指令,例如算术逻辑指令、字符编辑指令、移位指令和控制转移指令等,都可用于操作系统的实现。
- 11.此外,还有相当一部分指令是专门为实现操作系统的各种功能而设计的。
5. 例题
5.1 例题1
1.以下关于CISC(Complex Instnuction Set Computer,复杂指令集计算机)和RISC(Reduced Instruction Set computer,精简指
令集计算机)的叙述中,错误的是(A)。
A.在CISC中,其复杂指令都采用硬布线逻辑来执行
B.采用CISC技术的CPU,其芯片设计复杂度更高
C.在RISC中,更适合采用硬布线逻辑执行指令
D.采用RISC技术,指令系统中的指令种类和寻址方式更少
1.CISC(Complex Instruction Set Computer,复杂指令集计算机)的基本思想是:进一步增强原有指令的功能,
用更为复杂的新指令取代原先由软件子程序完成的功能,实现软件功能的硬件化,导致机器的指令系统越来越庞大而复杂。
2.CISC计算机一般所含的指令数目至少300条以上,有的甚至超过500条。
3.RISC(Reduced Instruction Set Computer,精简指令集计算机)的基本思想是:通过减少指令总数和简化指令功能,
降低硬件设计的复杂度,使指令能单周期执行,并通过优化编译提高指令的执行速度,采用硬布线控制逻辑优化编译程序。
4.在20世纪70年代未开始兴起,导致机器的指令系统进一步精炼而简单,
5.2 例题2
2.以下关于RISC(精简指令系统计算机)技术的叙述中,错误的是(B)。
A.指令长度固定、指令种类尽量少
B.指令功能强大、寻址方式复杂多样
C.增加寄存器数目以减少访存次数
D.用硬布线电路实现指令解码,快速完成指令译码
1.RISC寻址方式比较单一,多寄存器寻址。
5.3 例题3
3.以下关于RISC和CISC计算机的叙述中,正确的是(D)
A.RISC不采用流水线技术,CISC采用流水线技术
B.RISC使用复杂的指令,CISC使用简单的指令
C.RISC采用很少的通用寄存器,CISC采用很多的通用寄存器
D.RISC采用组合逻辑控制器,CISC普遍采用微程序控制器
1.RISC适合流水线,CISC不适合。
2.RISC是精简指令集系统计算机简称,使用简单的指令。
3.CISC是复杂指令集系统计算机简称,使用复杂的指令RISC多寄存器寻址,所以会在实现过程中增加通用寄存器,
CISC不需要采用很多通用寄存器
4.RISC采用硬布线逻辑(即组合逻辑控制器)实现,CISC采用微码(即微程序)实现。
5.4 例题4
4.以下关于RISC和CISC的叙述中,不正确的是(A)。
A.RISC通常比CISC的指令系统更复杂
B.RISC通常会比CISC配置更多的寄存器
C.RISC编译器的子程序库通常要比CISC编译器的子程序库大得多
D.RISC比CISC更加适合VLSI工艺的规整性要求
1.CISC计算机指复杂指令集计算机,是20世纪六、七十年代发展起来的系列计算机。
这种计算机所支持的指令系统趋于多用途、强功能化。指令系统围绕着缩小与高级语言的语义差距以及有利于操作系统的优化而设计。
指令系统的复杂化使得设计周期变长,正确性难于保证,不易维护。而且在复杂的指令系统中,只有少数基本指令是经常使用的,
需要大量硬件支持的复杂指令利用率却很低。所以在70年代末,随着VLSI技术的发展产生了RISC计算机。
2.RISC计算机指精简指令集计算机,这种计算机有下列特点。
(1)指令系统中只包含使用频率较高但不复杂的指令。
(2)指令长度固定,指令格式少,寻址方式少。
(3)只有存取数指令访问主存,其他指令都在寄存器之间运算。
(4)大部分指令在一个机器周期内完成,采用流水技术。
(5)CPU中增加了通用寄存器的数量。
(6)硬联逻辑控制,不用微程序控制技术。
(7)采用优化的编译,以有效地支持高级语言。
5.5 例题5
5.以下关于RISC(精简指令集计算机)特点的叙述中,错误的是(B)。
A.对存储器操作进行限制,使控制简单化
B.指令种类多,指令功能强
C.设置大量通用寄存器
D.选取使用频率较高的一些指令,提高执行速度
1.RISC的指令格式统一、种类少、寻址方式少,处理速度提高很多。