2009年第19题
相对于微程序控制器,硬布线控制器的特点是( )
A. 指令执行速度慢,指令功能的修改和扩展容易
B. 指令执行速度慢,指令功能的修改和扩展难
C. 指令执行速度快,指令功能的修改和扩展容易
D. 指令执行速度快,指令功能的修改和扩展难
解析
本题考查微程序控制器和硬布线控制器这两种计算机中的不同控制器设计方式,它们主要用于生成指令执行所需的控制信号。这是计算机组成原理课程的基础知识。
1. 基本原理
- 微程序控制器:将控制逻辑(指令执行步骤)以 “微程序” 的形式存储在控制存储器(CM,Control Memory)中,通过读取微指令来生成控制信号。每条机器指令对应一段微程序(由多条微指令组成),执行时按顺序读取微指令,驱动相应硬件操作。
- 硬布线控制器:直接通过组合逻辑电路(如门电路、触发器等)实现控制信号的生成,控制逻辑由硬件电路的物理连接决定。根据当前指令、状态寄存器和时序信号,通过逻辑表达式直接计算出所需的控制信号。
2. 组成结构
-
微程序控制器
- 关键部件:
- 控制存储器(CM):存储微程序(只读,如 ROM);
- 微指令寄存器(μIR):存放当前微指令,解析出控制信号和下一条微地址;
- 微地址形成电路(生成下一条微指令的地址(顺序执行或跳转)。
- 特点:结构规整,依赖存储逻辑,硬件复杂度较低但需额外存储器。
- 关键部件:
-
硬布线控制器
-
关键部件:
- 组合逻辑网络:由门电路、编码器、译码器等构成,实现逻辑表达式 F = f ( 指令 , 状态 , 时序 ) F = f(\text{指令}, \text{状态}, \text{时序}) F=f(指令,状态,时序)。
- 时序电路:提供时钟信号和节拍脉冲,控制操作时序。
-
特点:纯硬件逻辑,无存储部件,但电路结构复杂且不规整。
-
3. 设计方法
-
微程序控制器
- 将指令分解为微操作序列(微程序设计)。
- 编写微指令(定义控制信号和微地址)。
- 固化微程序到控制存储器中。
- 特点:类似 “软件设计”,模块化程度高,易于调试和修改。
-
硬布线控制器
- 对每条指令的每个操作步骤,列出控制信号逻辑表达式。
- 用逻辑门电路实现表达式(如卡诺图化简)。
- 特点:纯 “硬件设计”,逻辑表达式复杂,设计调试难度大,尤其对复杂指令系统。
4. 性能对比
-
执行速度
- 微程序控制器:需读取微指令(访问 CM),存在取指延迟,速度较慢(尤其顺序执行时)。
- 硬布线控制器:组合逻辑直接生成信号,无存储访问延迟,速度更快。
-
灵活性与扩展性
-
微程序控制器:修改微程序即可改变控制逻辑(如新增指令),灵活性高,适合复杂指令系统(如 CISC)。
-
硬布线控制器:修改需重新设计电路(如焊接、更换芯片),灵活性极低,适合固定或简单指令系统(如早期 RISC 或专用处理器)。
-
5. 成本与维护
- 微程序控制器:需额外控制存储器,早期成本较高,但现代半导体技术下成本可控。升级只需更新微程序(如固件升级),维护方便。
- 硬布线控制器:无存储部件,但复杂逻辑电路可能导致芯片面积大、布线困难,成本随复杂度剧增。硬件一旦定型难以修改,维护成本高。
6. 应用场景
- 微程序控制器:适用于复杂指令系统(如 x86)、需要频繁升级的系统、微程序可动态加载的场景(如虚拟机、可重构计算)。如:多数现代通用计算机(如 Intel/AMD 处理器)、大型机。
- 硬布线控制器:适用于简单指令系统(如早期 RISC 处理器)、对速度要求极高的专用系统(如嵌入式控制器、FPGA 硬逻辑模块)。如:ARM 早期架构、部分 DSP 芯片、51 单片机。
7. 总结对比表
维度 | 微程序控制器 | 硬布线控制器 |
---|---|---|
核心逻辑 | 存储逻辑(微程序) | 组合逻辑电路 |
速度 | 较慢(受 CM 访问速度限制) | 快(组合逻辑直接响应) |
灵活性 | 高(修改微程序即可) | 低(需改硬件电路) |
设计复杂度 | 低(模块化设计) | 高(逻辑表达式复杂) |
扩展性 | 强(支持动态加载微程序) | 弱(硬件定型后难以扩展) |
成本 | 中(需控制存储器) | 中高(复杂电路可能增加成本) |
典型应用 | CISC 处理器、通用计算机 | 简单 RISC 处理器、专用硬件系统 |
8. 发展趋势
-
现代计算机多采用混合架构,例如用硬布线实现高频简单指令(如加法),用微程序实现复杂指令(如乘法、访存操作),兼顾速度与灵活性。
-
微程序控制器因易于实现流水线、超标量等复杂架构,在通用处理器中更为常见;硬布线控制器则在低功耗、实时性要求高的嵌入式场景中保持优势。
学习了上述关于微程序控制器和硬布线控制器的基本知识之后,再阅读本题,不难得出符合题意的选项。
本题答案:D