1. 微操作命令的分析
完成一条指令分 4 个工作周期
- 取指周期
- 间址周期
- 执行周期
- 中断周期
1.1 取指周期
PC—> MAR —>地址线;
1—> R
M ( MAR ) —> MDR
MDR—> IR
OP(IR)—> CU
( PC ) + 1 —> PC
1.2 间址周期
1.3 执行周期
- 非访存指令
指令表示 | 作用 | 执行操作 |
---|---|---|
CAL | 清零 | 0—> ACC |
COM | 取反 | ACC非 —> ACC |
SHR | 算术右移 | L(ACC) —> R(ACC), ACC_0 --> ACC_0 |
CSL | 循环左移 | R(ACC) —> L(ACC), ACC_0 —> ACC_n |
STP | 停机指令 | 0 —> G |
- 访存指令
加法指令 | ADD X |
---|---|
Ad(IR) —> MAR | |
1 —> R | |
M(MAR) —> MDR | |
(ACC) + (MDR) —> ACC |
存数指令 | STA X |
---|---|
Ad(IR) —> MAR | |
1—> W | |
ACC —> MDR | |
MDR —> M(MAR) |
取数指令 | LDA X |
---|---|
Ad(IR) —> MAR | |
1–> R | |
M(MAR) —> MDR | |
MDR —> ACC |
- 转移指令
无条件转移 | JMP X |
---|---|
Ad(IR) --> PC |
条件转移 | BAN X (负数跳转) |
---|---|
A_0* Ad(IR) + A_0(PC) --> PC |
三类指令的指令周期
-
非访存 指令周期: 取指周期 + 执行周期
-
直接访存 指令周期: 取指周期 + 执行周期
间接访存 指令周期: 取指周期+ 间址周期 + 执行周期; -
转移指令周期: 取指周期 + 执行周期
-
间接转移指令周期: 取指周期+ 间址周期 + 执行周期;
1.4 中断周期
程序断点存入 “0” 地址 | 程序断点进栈; |
---|---|
0–> MAR | sp -1 —> MAR |
1 --> W | 1 --> W |
PC —> MDR | pc —> MDR |
MDR —> MAR | MDR —> MAR |
中断识别程序入口地址 M–> PC;
0 --> EINT (置 0), 0—> EINT (置0)
2. 控制单元的功能
2.1 控制单元的外特性
2.1.1 输入信号
-
时钟: cu 受到时钟控制,一个时钟脉冲, 发一个操作命令或一组需要同时执行的操作命令;
-
指令寄存器, op(IR) —> CU
控制信号与操作码有关; -
标志
CU, 受到 标志控制 -
外来信号
如 INTR, 中断请求;
HQR, 总线请求;
2.1.2 输出信号
- cpu 内部的各种控制信号
R i R_i Ri —> R j R_j Rj;
pc +1 --> pc;
ALU , +, -, 与,或, 非;
- 送至控制总线的信号;
信号 | 作用 |
---|---|
MREQ 非 | 访存控制信号 |
IO非/M | 访问io/ 存储器的控制信号 |
RD非 | 读命令 |
WR 非 | 写命令 |
INTA | 中断响应信号 |
HLDA | 总线响应信号 |
2.2 控制信号举例
2.2.1 不采用 CPU 内部总线的方式
2.2.2 采用 CPU 内部总线方式
2.3 多级时序系统
机器周期、节拍(状态)组成多级时序系统;
一个指令周期包含若干个机器周期
一个机器周期包含若干个时钟周期
2.3.1 机器周期
机器周期的概念:
所有指令执行过程中的一个基准时间;
(2) 确定机器周期需考虑的因素
每条指令的执行 步骤
每一步骤 所需的 时间;
(3) 基准时间的确定
• 以完成 最复杂 指令功能的时间 为准
• 以 访问一次存储器 的时间 为基准
若指令字长 = 存储字长,
取指周期 = 机器周期
2.3.2时钟周期
一个机器周期内可完成若干个微操作;
每个微操作需一定的时间;
将一个机器周期分成若干个时间相等的
时间段(节拍、状态、时钟周期)
时钟周期是控制计算机操作的最小单位时间;
用时钟周期控制产生一个或几个微操作命令;
2.3.3 多级时序系统
机器周期、节拍(状态)组成多级时序系统;
一个指令周期包含若干个机器周期
一个机器周期包含若干个时钟周期
2.3.4机器速度与机器主频的关系
机器的 主频 f 越快 机器的 速度也越快?
在机器周期所含时钟周期数 相同 的前提下,
两机 平均指令执行速度之比 等于 两机主频之比
M I P S 1 M I P S 2 = f 1 f 2 \frac{MIPS1}{MIPS2} =\frac{f1}{f2} MIPS2MIPS1=f2f1
机器速度 不仅与 主频有关 ,还与机器周期中所含
时钟周期(主频的倒数) 数 以及指令周期中所含
的 机器周期数有关;
3 控制方式
产生不同微操作命令序列所用的时序控制方式
3.1 同步控制方式
任一微操作均由 统一基准时标 的时序信号控制;
-
采用 定长 的机器周期
以 最长 的微操作序列和 最复杂 的微操作作为 标准;
机器周期内 节拍数相同; -
采用不定长的机器周期
机器周期内 节拍数不等
3. 采用中央控制和局部控制相结合的方法
3.2 异步控制方式
- 无基准时标信号
- 无固定的周期节拍和严格的时钟同步
- 采用 应答方式
3.3 联合控制方式
同步与异步相结合;
3.4人工控制方式
(1) Reset
(2) 连续 和 单条 指令执行转换开关
(3) 符合停机开关