美文网首页
501 - 单周期处理器的设计步骤

501 - 单周期处理器的设计步骤

作者: 航航大魔王 | 来源:发表于2017-07-31 16:33 被阅读99次

单周期处理器的设计步骤

① 分析指令系统,得出对数据通路的需求
② 为数据通路选择合适的组件
③ 连接组件建立数据通路
④ 分析每条指令的实现,以确定控制信号
⑤ 集成控制信号,形成完整的控制逻辑

MIPS指令系统的简化版本

无符号加法和减法——无立即数参与,属于R型指令

  • addu rd,rs,rt
  • subu rd,rs,rt

立即数的逻辑或(OR) ——有立即数参与,属于I型指令

  • ori rt,rs,imm16

装载(Load)和存储(Store)一个字(32位)

  • lw rt,imm16(rs)
  • sw rt,imm16(rs)

条件分支(Beq)

  • beq rs,rt,imm16

指令的含义

  • 指令位域的分解


    image.png
  • 指令的操作
image.png image.png

其中,对于零扩展和符号扩展,就是在高位上补零或者符号。

指令系统的需求

  1. 算术逻辑单元(ALU)


    ALU
  • 运算类型:加、减、或、比较相等
  • 操作数:2个32位的数,来自寄存器扩展后的立即数
  1. 立即数扩展部件


    ImExtender
  • 将一个16立即数扩展为32位数
  • 扩展方式:零扩展、符号扩展
  1. 程序计数器(PC)


    ProgramCounter
  • 一个32位的寄存器
  • 支持两种加法:加4加一个立即数
  1. 寄存器堆
  • 每个寄存器为32位宽,共32个
  • 支持读操作:rs 和 rt
  • 支持写操作:rt 或 rd
    注:这称为“两读一写”的寄存器堆
  1. 存储器
  • 一个只读的指令存储器,地址和数据均为32位
  • 一个可读写的数据存储器,地址和数据均为32位
    注:这两个存储器实际对应了CPU中的指令和数据高速缓存(Cache)

存储组件:寄存器堆

image.png
  1. 内部构成
  • 32个32位的寄存器

数据接口信号

  • busA,busB:两组32位的数据输出
  • busW:一组32位的数据输入
  1. 读写控制
  • Ra(5位):选中对应编号的寄存器,将其内容放到busA
  • Rb(5位):选中对应编号的寄存器,将其内容放到busB
  • Rw(5位):选中对应编号的寄存器,在时钟信号(clk)的上升沿,如果写使能信号有效(WriteEnable==1),将busW的内容存入该寄存器
    注:寄存器堆的读操作不受时钟控制

存储组件:存储器

数据接口信号

  • Data In:32位的数据输入信号
  • Data Out:32位的数据输出信号

读写控制

  • Address:32位的地址信号。该信号指定一个存储单元,将其内容送到数据输出信号
  • Write Enable:写使能信号。在时钟信号(clk)的上升沿,如果写使能信号有效(为1),将数据输入信号的内容存入地址信号指定存储单元
    注:存储器的读操作不受时钟控制

相关文章

  • 501 - 单周期处理器的设计步骤

    单周期处理器的设计步骤 ① 分析指令系统,得出对数据通路的需求② 为数据通路选择合适的组件③ 连接组件建立数据通路...

  • 2017.11.13

    学习内容: 复习CO101 single circle processor 好像搞会了单周期处理器的玩法 PROJ...

  • 单例设计模式

    单例设计模式 单例设计模式介绍 单例设计模式的八种方法2.1 饿汉式(静态常量)2.1.1 实现步骤2.1.2 代...

  • 单例设计模式

    单例设计模式:保证一个类在内存中只有一个对象 模式:解决一类问题的固定步骤 饿汉单例设计模式步骤: 1.私有化构造...

  • Unity 游戏框架搭建 (三) MonoBehaviour单例

      上一篇文章讲述了如何设计C#单例的模板。也随之抛出了问题:如何设计接收MonoBehaviour生命周期的单例...

  • Unity 游戏框架搭建 (三) MonoBehaviour单例

    上一篇文章讲述了如何设计C#单例的模板。也随之抛出了问题: 如何设计接收MonoBehaviour生命周期的单例的...

  • 设计模式系列教程之单例模式-原理介绍

    设计模式系列教程之单例模式-原理介绍 一:单例模式(Singleton)学习步骤 经典的单例模式原理: 本文出处:...

  • 单例的创建步骤和使用说明

    单例的创建步骤和使用说明 一、基本概念 1.单例设计模式运用较为普遍、广泛且较为简单的设计模...

  • 初识计算机组成原理-处理器篇

    处理器 指令周期 计算机每执行一条指令的过程,可以分解成这样几个步骤,然后一直重复 Fetch(取得指令):也就是...

  • CPU乱序执行反证

    循序运行 主条目:指令周期在早期的处理器中,指令的执行一般在以下的步骤中完成: 1 指令获取。2 如果输入的运算对...

网友评论

      本文标题:501 - 单周期处理器的设计步骤

      本文链接:https://www.haomeiwen.com/subject/lejrlxtx.html