1)基本概念
ISA:指令集体系结构 Instruction-Set Architecture
不同类型的ISA不同点主要集中在如何定义操作类型以及操作数上。
ISA定义一套汇编指令,每条指令都指定一种操作类型和一个或多个操作数。
2)处理器性能公式
指令/程序:instruction/program,特定的程序需要执行的动态指令的数目
周期数/指令:cycles/instruction,平均执行每一条指令需要耗费的时钟周期数
一般由CPI表示,cycles per instruction
时间/周期数:time/cycles,每个时钟周期需要的时间;
3)处理器性能优化
1. 减少指令数,复杂度增加;
2. 编译器优化,减少执行指令,静态代码规模会变大;
3. 流水线技术:趋势
将处理一条指令的任务有效地划分成多个流水段,每个流水段的延迟(信号传输延迟)
决定机器的时钟周期时间。通过使用深度你流水线,时钟周期时间可以减少。
4)指令集并行处理
CISC 串行处理器,每处理一条指令平均需要10个周期,CPI=10;
RISC流水线处理器,平均CPI可以接近1,如果每个周期都有一条新的指令进入流水线;
指令数:三大因素 ISA/编译器/操作系统;
频率:生产工艺和电路技术;
1. 超标量处理器:
CPI < 1,IPC >1(IPC = 1/CPI,每个周期完成的指令数);
在超标量处理器中,哪n条指令将被发射到执行段是运行时决定的;
2. 超长指令字处理器:
VLIW very long instruction word;
VLIW不需要复制IF和DE段来同时对n条独立指令进行取指和译码。
在VLIW处理器中,哪n条指令将被发射到执行段是编译时决定的;
编译器将这n条指令作为一个超长指令字存放到程序存储器中。