[REV] CPU

部件

  • PC
  • AR:CPU访问主存地址
  • IR:指令缓冲寄存器
  • ID:译码不见
  • OC:操作控制信号生成器
  • TG:时序信号生成器

[此处应该有图]
[REV] CPU_第1张图片

RTL语言

冯诺依曼体系

最大特点(缺点?)是数据和命令在一个存储器中.通过提取时间判断是指令还是数据

周期

  • 指令周期:取指令+执行完成所需的时间

  • CPU/机器周期:从CPU中取一个存储字的最短时间

  • 时钟周期:基本的CLK信号周期

  • 单周期:一个指令在一个时钟周期内完成.就是指令周期等于一个CLK

  • 多周期至少包含两个机器周期

  • Ref:https://blog.csdn.net/u014670574/article/details/80475848

  1. 单周期的CPU会在一个时钟周期内完成所有的工作,既从指令取出,到得到结果,全部在一个时钟之内完成。
  2. 多周期CPU的设计是将整个CPU的执行过程分成几个阶段,每个阶段用一个时钟去完成。不仅能提高CPU的工作频率,还为组成指令流水线提供了基础。
  3. 在多周期CPU设计的基础上,利用各阶段电路间可并行执行的特点,让各个阶段的执行在时间上重叠起来,这种技术就是流水线技术。

阶段

取指令阶段

基本固定.

  1. 按照PC给的地址从主存中取指令
  2. PC+步长(对于按字节编制,32位指令是+4.)
  3. OP部分送译码器

  1. A R ← ( P C ) AR\leftarrow (PC) AR(PC)
  2. D R ← M e m [ A R ] DR\leftarrow Mem[AR] DRMem[AR]
  3. I R ← ( D R ) IR\leftarrow (DR) IR(DR)

结合图理解数据流向.
一般占一个时钟周期…

执行阶段

  1. 取操作数(寻址)
  2. 结合控制信号执行

指令流程

指令流程图

互斥

对同一通路的占用
ALU线,总线等
互斥信号不能把在一个周期内同时出现.

微指令

实验.

  • 微命令:控制信号+判定字段(顺序/分支)+下址字段
  • 微操作:相容/互斥
    持续时间是一个CPU周期.
    信号同步.

微指令设计

直接表示

编码表示

一组互斥信号为一组.
注意,要预留一组Status表示轮空.一般为0000000…

你可能感兴趣的:(逻辑与计算机基础)