计算机体系结构分类
Flynn 分类法
计算机指令
计算机指令的组成: 一条指令由操作码和操作数两部分组成,操作码决定要完成的操作,操作数指参加运算的数据及其所在的单元地址。
在计算机中,操作要求和操作数地址都由二进制数码表示,分别称作操作码和地址码,整条指令以二进制编码的形式存放在存储器中。
计算机指令执行过程:取指令-分析指令-执行指令 三个步骤,首先将程序计数器PC中的指令地址取出,送入地址总线,CPU依据指令地址去内存中取出指令内容存入指令寄存器IR,而后由指令译码器进行分析,分析指令操作码,最后执行指令,取出指令执行所需的源操作数。
指令的寻址方式
顺序寻址: 当执行一段程序时,是一条指令接着一条指令地顺序执行。
跳跃寻址方式:指下一条指令的地址码不是由程序计数器给出,而是由本条指令直接给出。程序跳跃后,按新的指令地址开始顺序执行。因此,程序计数器的内容也必须相应改变,以便及时跟踪新的指令地址。
指令操作数的寻址方式:
- 立即寻址方式: 指令的地址码字段指出的不是地址,而是操作数本身。
- 直接寻址方式:在指令的地址字段中直接指出操作数在主存中的地址。
- 间接寻址方式:指令地址码字段所指向的存储单元存储的是操作数的地址。
- 寄存器寻址方式:指令中的地址码是寄存器的编号。
指令系统
- CISC 复杂指令系统,兼容性强,指令繁多,长度可变,由微程序实现。
- RISC 精简指令系统,指令少,使用频率接近,主要依靠硬件实现(通用寄存器,硬件布线逻辑控制)
指令流水线
指令流水线原理: 将指令分成不同段,每段由不同的部分去处理,因此可以产生叠加的效果,所有的部件去处理指令的不同段。
流水线的相关计算
流水线周期: 指令分成不同执行段,其中执行时间最长的段为流水线周期。
流水线执行时间: 1条指令总执行时间+(总指令条数-1)X 流水线周期
流水线吞吐率: 总指令条数/ 流水线执行时间
流水线加速比:不使用流水线总执行时间 / 使用流水线总执行时间
超标量流水线技术:常规流水线的度为1的,即每个流水线阶段只执行一个部分,当度大于1时,是超标量技术,当度为3时,相当于3条流水线并行执行,即取指,分析,执行每个阶段都同时处理3条指令,因此,当题目提到度的概念时,计数时需要将: 指令条数/度。然后再使用流水线执行时间公式计算。