微处理器设计/多周期处理器
外观
< 微处理器设计
单周期处理器速度性能较差。控制和数据信号必须在一个周期内完全传播到处理器,这意味着周期时间需要很长,并且硬件的许多部分在周期的很大一部分时间内处于休眠状态。
多周期处理器将指令分解成基本部分,并在不同的时钟周期执行指令的每个部分。由于信号在一个周期内传播的距离较短,因此周期时间可以大大加快。
通常,一条指令在至少 5 个周期内执行,这些周期被命名如下:
- IF
- 从内存中获取指令
- ID
- 解码指令,并生成必要的控制信号
- EX
- 将必要的控制信号送入 ALU,并产生结果
- MEM
- 如果指定,从内存中读取
- WB
- 将结果写回寄存器文件或内存。
这只是一个教科书的例子,现代处理器往往使用比这多得多的步骤来执行一条指令。
示例:MicroChip PIC16 微控制器
由 MicroChip Technology Inc 制造的 PIC 微控制器,是一个嵌入式微控制器的系列。PIC 单元各不相同,但每 2-4 个时钟周期执行一条指令。所有指令通常在相同数量的周期内执行,分支指令除外。
多周期设计的首要优势在于能够共享硬件元素,特别是 ALU,用于各种任务。在多周期处理器中,单个 ALU 可以用于更新指令指针(在 IF 周期)、执行操作(在 EX 周期)以及计算必要的内存地址(在 MEM 周期)。多周期处理器还允许计算机拥有单个内存单元,而不是传统哈佛架构中的两个独立的指令和数据内存单元。这是因为指令在一个周期内加载,数据内存与另一个周期接口。
多周期处理器通常用于资源有限且速度不太重要的应用。