ALU Mic-1架构调整可行性及相关影响分析咨询
Mic-1架构调整方案分析
(a) 新增1个标志位(例如进位标志carry flag)
- 运行可行性:可以正常运行,属于功能扩展类调整,完全不破坏原有架构的执行逻辑
- 线路层面变更:
- ALU输出端新增进位检测电路,提取运算过程中的进位信号
- 标志寄存器组新增1位存储单元,用于存储进位标志的状态
- 控制信号线路新增1位标志更新使能信号,用于控制ALU运算后是否写入新的进位值
- 微程序/MIR影响:
- MIR需要新增1位控制字段,用于控制是否允许更新新增的进位标志
- 微指令的条件分支编码位需要扩展,支持基于进位标志的分支判断逻辑
- 原有微程序不需要修改,新增的标志位仅在需要进位判断的新增微程序场景下调用
(b) 新增1个支持读写操作的寄存器
- 运行可行性:可以正常运行,属于寄存器资源扩展,不影响原有架构的核心控制逻辑
- 线路层面变更:
- 寄存器堆新增1组存储单元,分别接入CPU内部的B总线(数据输出总线)和C总线(数据写入总线)
- 寄存器地址译码器新增1组地址编码,对应新增寄存器的读写选择
- 新增寄存器的写入使能信号接入原有C总线的全局写入控制逻辑
- 微程序/MIR影响:
- MIR中用于选择B总线输出寄存器、C总线写入寄存器的字段需要至少扩展1位,以覆盖新增的寄存器地址编码
- 原有微程序不需要修改,新增寄存器仅作为可选的临时存储单元供后续新增微程序调用
- 如果需要让上层ISA支持访问该寄存器,只需新增对应指令的微程序处理逻辑即可
(c) 移除TOS寄存器
- 运行可行性:可以正常运行,但栈操作性能会明显下降,TOS是栈顶数据的缓存寄存器,仅用于加速栈操作,不属于架构核心必需组件
- 线路层面变更:
- 移除TOS对应的寄存器存储单元,以及和B总线、C总线的连接线路
- 寄存器地址译码器删除TOS对应的地址编码,空出的编码可以留空或分配给其他寄存器
- 微程序/MIR影响:
- 所有原有访问TOS的微指令都需要修改,替换为通过SP寄存器寻址内存栈顶的操作:比如原本直接从TOS取数的逻辑,需要调整为「SP送MAR→读内存→从MDR取数」的多步操作
- MIR中原来分配给TOS的寄存器编码可以直接废弃,不需要调整MIR的总长度
- 栈相关操作的微程序步数增加,执行周期变长,整体指令执行效率下降
(d) 移除MDR寄存器
- 运行可行性:完全无法正常运行,MDR是Mic-1架构中CPU和内存交互的唯一数据缓存节点,所有内存读写都必须经过MDR中转,属于核心必需组件
- 线路层面变更:
- 移除MDR后,内存数据总线和CPU内部总线失去时序缓存节点,直接连接会因为内存和CPU的工作频率、时序不匹配出现永久数据传输错误
- 原有内存读写控制逻辑、MDR写入使能逻辑全部失效
- 微程序/MIR影响:
- 所有涉及内存读写的微程序完全失效,包括取指、数据加载/存储、栈操作等几乎所有核心场景的微指令都无法执行
- 即使修改微程序也无法绕过MDR完成内存和CPU内部的数据交互,整个微指令集失去执行上层程序的能力
内容的提问来源于stack exchange,提问作者schartenberg
相关产品推荐
相关产品推荐

