精华内容
下载资源
问答
  • MIPS CPU设计(HUST)

    2021-01-01 23:08:55
    单周期MIPS CPU设计 微程序地址转移逻辑设计 MIPS微程序CPU设计 硬布线控制器状态机设计 多周期MIPS硬布线控制器CPU设计(排序程序)
  • 了解微程序控制器中微程序分支的基本原理,要求能设计微程序入口查找逻辑。 实验内容 设计如上电路,根据指令译码信号生成5位的微程序入口地址。 实验步骤 填写三号EXCEL表格中的微程序入口地址表格: 自动生成...

    实验目的

    了解微程序控制器中微程序分支的基本原理,要求能设计微程序入口查找逻辑。
    在这里插入图片描述

    实验内容

    在这里插入图片描述
    设计如上电路,根据指令译码信号生成5位的微程序入口地址。

    实验步骤

    填写三号EXCEL表格中的微程序入口地址表格:
    在这里插入图片描述

    自动生成逻辑表达式:
    在这里插入图片描述

    在logisim中利用分析组合逻辑电路功能自动生成电路 :

    在这里插入图片描述
    测试:

    预期输出:
    Cnt    LW    SW    BEQ   SLT   ADDI  mAddr
    00     1     0     0     0     0     04
    01     0     1     0     0     0     09
    02     0     0     1     0     0     0e
    03     0     0     0     1     0     13
    04     0     0     0     0     1     16
    实际输出:
    Cnt    LW    SW    BEQ   SLT   ADDI  mAddr
    00     1     0     0     0     0     04
    01     0     1     0     0     0     09
    02     0     0     1     0     0     0e
    03     0     0     0     1     0     13
    04     0     0     0     0     1     16
    

    在这里插入图片描述

    展开全文
  • MIPS微程序CPU设计(Logism)

    千次阅读 多人点赞 2020-08-31 18:21:15
    能利用相关原理在Logisim平台中设计实现8条指令的多周期微程序MIPS CPU,包括微程序地址转移电路,微程序控制器设计,微程序代码设计,CPU数据通路电路设计。 【设计方法和电路工作原理】 核心指令集8条 (可实现...

    【设计任务】

    1. 掌握多周期MIPS CPU中各条指令(8条指令)的数据通路;
    2. 掌握多周期MIPS CPU(8条指令和)微程序控制器设计的基本原理;
    3. 能利用相关原理在Logisim平台中设计实现8条指令的多周期微程序MIPS CPU,包括微程序地址转移电路,微程序控制器设计,微程序代码设计,CPU数据通路电路设计。

    【设计方法和电路工作原理】

    1. 核心指令集8条 (可实现内存区域冒泡排序)
      在这里插入图片描述

    2.指令的划分
    在这里插入图片描述

    3.电路实现指令译码逻辑
    R型指令:ADD、SLT
    I型指令:LW、SW、BEQ、BNE、ADDI
    SysCall指令
    在这里插入图片描述

    1. ALU控制器逻辑
      当AluOP=5时,ALU执行加法;当AluOP=6,ALU执行减法;当AluOP=(0B)H时执行有符号数比较。
      在这里插入图片描述

    2. 构建多周期MIPS CPU数据通路
      在这里插入图片描述

    电路图:
    在MIPS多周期CPU(微程序)子电路中,利用如下组件构建CPU数据通路 PC、MEM、IR、DR、RegFile、ALU、Controller。
    在这里插入图片描述

    1. 实现微程序地址转移逻辑
      在这里插入图片描述

    由指令状态变换图可得
    R_Type的微程序入口地址为7;ADDI的微程序入口地址为11
    LW的微程序入口地址为2;SW的微程序入口地址为5
    BEQ的微程序入口地址为7;BNE的微程序入口地址为10
    SYSCALL的微程序入口地址为13
    利用微程序地址转移逻辑自动生成自动生成逻辑表达式
    在这里插入图片描述

    将表达式输入至组合逻辑电路分析表达式中,即可自动生成微程序地址转移逻辑。
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    7.根据状态图构建微程序
    在这里插入图片描述

    1. 多周期MIPS取指令阶段T1
      在这里插入图片描述

    此时,AluSrcB=01,即SrcB=4;IRWrite=1表示写入当前指令,PCWrite=1表示PC更新为PC+4;MemRead表示读取内存,P=0表示下一条指令按下址字段取指令,即下一阶段是译码阶段。译码指令的微指令地址为0001,即下址为0001
    在这里插入图片描述

    所以取指令对应的微指令为(13201)H
    2) 多周期MIPS取指令阶段T2
    在这里插入图片描述

    此时P=1,由于下一条指令由微程序入口决定。
    在这里插入图片描述

    1. R型指令执行状态周期T3~T4
      在这里插入图片描述
      在这里插入图片描述

    R1阶段 AluControl=10即运算方式由Func决定,AluSrcA=1表示ScrA取R1的值。下一微指令是R2,即下址为1000.
    R2阶段写回寄存器RD,RegDst=1写回选中RD,同时RegWrite=1写入寄存器。回到取指令,即下址为0000.

    1. LW指令执行状态周期T3~T5
      在这里插入图片描述

    同理可得
    在这里插入图片描述

    1. Beq指令执行状态周期T3
      在这里插入图片描述

    同理可得

    在这里插入图片描述

    得到总的微指令
    在这里插入图片描述

    将微指令对应的十六进制复制到控制存储器

    在这里插入图片描述

    输入信号
    1.指令字Opcode,Func字段(12位)
    2. 时钟信号、复位信号
    输出信号
    1.多路选择器选择信号
    2.内存访问控制信号
    3.寄存器写使能信号
    4. 运算器控制信号、指令译码信号
    在这里插入图片描述

    构建多周期MIPS CPU
    在这里插入图片描述

    运行程序:
    在这里插入图片描述

    实现冒泡排序

    在这里插入图片描述

    在这里插入图片描述
    总电路图:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • logisim logisim
  • 头歌educoder教学实践平台计算机组成原理MIPS CPU设计(HUST),第1关到第5关...第2关 微程序地址转移逻辑设计 第3关 MIPS微程序CPU设计 第4关 硬布线控制器状态机设计 第5关 多周期MIPS硬布线控制器CPU设计(排序程序)
  • 自己动手画cpu系列 建设中ing 仅供参考! 在这首推华中科技大学计算机组成原理实验课mooc连接 初衷:在mooc上看见了本课觉得超赞,本人已完成了课中所有的实验,在做... 数字逻辑基础 数据表示实验 运算器设计

    自己动手画cpu系列 建设中ing 仅供参考!
    在这首推华中科技大学计算机组成原理实验课mooc连接
    初衷:在mooc上看见了本课觉得超赞,本人已完成了课中所有的实验,在做实验的过程中有时候实验会没有思路或者有些bug会浪费很多时间,目前呢也没找到完整的答案,所以做了份自己的答案给大家困惑的时候一份参考(大神请忽视,我自己也就一弱鸡),也就给大家卡壳的时候能有个找灵感的地方,请先独立思考,切勿抄袭。

    tips:每个部分都是先贴答案再写思路

      • 数字逻辑基础
      • 数据表示实验
      • 运算器设计
      • 存储器设计
    1. MIPS CPU
        • MIPS CPU必备基础知识
        • 8指令单周期MIPS32 CPU
        • 8指令多周期(微指令)MIPS32 CPU
        • 8指令多周期(硬布线)MIPS32 CPU
        • 24条指令5级流水MIPS32 CPU

    已测试完降序冒泡排序
    排序gif
    在这里插入图片描述

    微指令设计如下:
    在这里插入图片描述
    微指令地址转移逻辑如下:
    在这里插入图片描述
    有个坑爹的地方,注意syscall指令R_type和syscall都是1

    上面俩个我都测试过了仅供参考吧,设计完微地址和转移逻辑,cpu的连线还算是比较简单吧。

    以下思路:



    首先先把大体结构搭好,弄清楚每个控制信号的意义,最后再写控制器,主要说的是控制器的编写。
    有了转移图,按照转移图的顺序写每个阶段的微指令
    |________ |________ |________ |________ |________ |
    |<- 取码 -> |<- 译码 -> |<- 执行 -> |<- 访存 -> |<- 写回 -> |

    微指令中P和下址字段说明:
    我感觉这设计的属实精妙,P只在译码阶段置为1,下址字段代表着下一阶段的微指令,就拿LW举例说明,初始微指令存储器地址为0000,微指令P为0下址字段为0001代表取码,首先第一个时钟到来,从存储器取出指令,控制器按照微指令下址字段,微存储器地址变为0001,第二个时钟到来,按0001地址取第二个微指令即译码,这时P为1下址字段0000(随便),P为1二路选择器取地址转移逻辑(其实就是个编码器)的输出,因为本例是LW所以现在微指令储存器的地址为0002,第三个时钟到来,微指令为LW1即执行阶段算出要取数的地址(rs+最后16位立即数),第四个时钟到来,微指令为LW2即访存阶段按照LW1算出的地址取出数据放入DR数据寄存器中,第五个时钟到来,微指令为LW3即写回阶段写到rt所指向的寄存器中,这时候下址字段为0000,然后第六个时钟周期微指令存储器从0000取出下一条微指令,然后重复过程。

    注意:本实验停机信号不要停时钟而是停pc使能端,还有真值表一定要认真仔细填好,我感觉真值表是易错点了,本实验老师讲的跳下一条指令是pc+=4但是logisim中的存储器是按字存取的吧,pc+=1应该是正确的。其他的知识点,mooc中都有讲到,这里不再赘述了。

    展开全文
  • 这个实验线路比较复杂,尤其是在数据通路部分,再者,对于指令的运行方式和微程序的转换逻辑要求很高 单周期MIPS CPU设计&单周期硬布线控制器 数据通路如下,主要利用一个硬布线控制器,指令寄存器,PC计数器、...
    大家好,我是小黄鸭,又来更新了,这个实验了一天,也过了,文章下面有我的联系方式,有问题请私聊。
    

    这个实验线路比较复杂,尤其是在数据通路部分,再者,对于指令的运行方式和微程序的转换逻辑要求很高

    单周期MIPS CPU设计&单周期硬布线控制器

    1. 数据通路如下,主要利用一个硬布线控制器,指令寄存器,PC计数器、寄存器堆(之前实验中的MIPS寄存器文件),ALU加法器(已经封装好的),数据存储器来实现。这里的连接就按照给出的框图进行连接就可以了,注意细节不要出现小错误数据通路数据通路
      补充一点,这里的停机是靠位于左上方的计数器,计算周期数。在计数器中设置最大值为224,当周期达到224时即可停机。
    2. 单周期硬布线控制器的设计
      1. 首先是指令译码逻辑的设计,该实验只涉及8条核心的MIPS指令。而这8条MIPS指令的指令字段已经在附件中给出(关于MIPS指令字段可参考我另一篇关于单总线定长&变长的博客biubiu传送门),并且电路底部文字也给出了关于SYSCALL的提示,因此,这部分只需根据相应的OPFUNC字段进行简单地逻辑比较就可实现。指令译码逻辑
      2. ALU控制逻辑的设计,由于该MIPS CPU设计中有关的8条核心MIPS指令中,对于ALU运算逻辑单元中只涉及到加法和比较,因此这一部分可以大大简化。只有运行STL指令时,需要选择比较运算,其余都是加法运算。控制器逻辑
      3. 对于控制器输出信号的设计,则要根据硬布线控制器中所包含的9中控制信号进行分析,如下图。主要考虑每种控制信号的产生条件。这里更高的要求是掌握8条核心指令集在执行时全部周期中所设计的控制信号,已经使用相应控制信号的作用
        控制信号
        控制信号1
    3. 当你上面两部分设计完成后,再次打开该电路文件时,你的整个数据通路中就只存在绿线和黑线了。这时候就要进行最后一步测试,在数据通路的指令存储器中加载sort文件。最终,会在相应的周期数停机,并呈现一个升序排列。测试停机

    微程序地址转移逻辑设计

    1. 实验目的是了解微程序控制器中微程序分支的基本原理,这里的话建议去听一下中国大学有关多周期微程序CPU那一节的相关知识,能够帮助你更好的理解。而首先是要求设计微地址转移逻辑,也是最简单的一部分。
    2. 主要根据的下面这个指令状态变换图,这个状态图可谓是整个微程序CPU设计的核心,从开始的地址转移逻辑的设计到中间的微程序控制器设计以及最后的整个CPU数据通路的设计都有一定的帮助状态变化图
    3. 在相应的EXCEL表中进行填写,这个表格相对简单,主要是关于机器指令信号及其相关的微程序入口地址的填写。填写完毕后,利用Logisim的自生成功能,就可以实现电路要求的功能了。excel地址

    有问题可在下方评论或者私信q453682174.

    展开全文
  • 微程序地址转移逻辑设计三.MIPS微程序CPU设计四.硬布线控制器状态机设计五.多周期MIPS硬布线控制器CPU设计(排序程序)测试结果: 实验目的: 1、理解计算机中的重要部件存储器和CPU。 2、能利用所学理论知识进行...
  • 机组-微程序控制器

    千次阅读 2018-06-10 10:28:15
    组成 微程序控制器主要由控制存储器、微指令寄存器和地址转移逻辑三大部分组成。控制存储器控制存储器用来存放实现全部指令系统的微程序,它是一种只读存储器。若指令系统中有多少条机器指令,就有多少微程序。一旦...
  • 微程序控制器之微地址的形成

    万次阅读 2017-12-11 12:09:44
    微地址的形成
  • 微程序控制器之微程序控制器构成

    千次阅读 2017-12-11 11:25:40
    微程序控制器构成
  • 一系列微指令的有序集合称为微程序微程序的综合可以实现整个的指令系统。 微地址 存储在微地址寄存器中的下一条微指令的地址称为微地址。 机器指令和微指令的区别与联系 1. 表现形式不同 机器指令
  • 一种方法是操作码经过微地址形成部件形成(微地址形成部件实际是一个编码器,其输入为指令操作码,输出就是对应该机器指令微程序的首地址。),另外一种方式就是由下地址来形成。 2、微指令格式中设置一个下地址字段...
  • 1.掌握微程序控制器的组成、工作原理; 2.明确微程序、微指令、微命令的概念; 3.掌握微指令、微程序的设计及调试方法; 4.通过单步方式执行若干条微指令深入理解微程序...5.用逻辑分析仪测试微程序控制器指令的转移
  • 参考资料:《计算机组成原理》(第五版) ...由机器指令的操作码字段即OP字段通过微地址形成部件产生该机器指令所对应的微程序的入口地址并送入微地址寄存器。 可以说微程序(非取指微程序)的入口地址是机器指令操...
  • 计算机组成原理实验:微程序控制实验

    千次阅读 多人点赞 2021-02-07 15:20:32
    学生实验报告 实验课名称:计算机组成原理 实验项目名称:微程序...微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操
  • 微程序控制技术

    千次阅读 2018-11-08 23:27:33
    目录 1.微程序控制计算机提出的背景 2.微程序控制计算机的基本工作原理 ...3.3 地址转移逻辑 4.微程序设计技术  4.1微指令的格式 4.2 微指令的控制字段的编码方法  4.2.1 直接控制法 4.2....
  • 微程序(microcode,又称微代码)是一种代替单周期或多周期的 CPU 设计方案,通常用于解决 CISC 处理器的设计问题。一条 CISC 指令通常需要被分解成很多个动作来完成,如果完全用逻辑电路来表示这些动作,就会使得 ...
  • 微程序控制器实验

    2013-11-16 13:28:22
    包括控制存储器、微地址寄存器、微地址转移逻辑、时序发生器、微程序控制器。
  • 华中科技大学计算机组成原理慕课答案

    万次阅读 多人点赞 2020-01-26 00:09:18
    寄存器的数据位对微程序级用户透明 C.软件与硬件具有逻辑功能的等效性 D.计算机系统层次结构中,微程序属于硬件级 2、完整的计算机系统通常包括( A ) A.硬件系统与软件系统 B.运算器、控制器、存储器 C.主机...
  • 微程序控制器

    千次阅读 多人点赞 2020-04-15 09:46:46
    微程序控制器 逻辑 同步时序 存储 速度 快 较慢 修改难度 大 小 适用对象 RISC CISC 微程序控制方式的基本思想 将并发信号事先存储为微指令 一条指令对应多个时钟周期 多个时钟周期安排为...
  • 1、微程序控制基本思想 把操作控制信号编制成微指令,存放到只读存储器(控制存储器)里,运行时从控存中取出这些微指令,从而产生所需的各种操作控制信号 2、技术 微程序设计技术是用软件方法来设计硬件的技术 二、...
  • 基于proteus的一个微程序CPU

    千次阅读 2019-04-29 23:43:03
    基于proteus的一个微程序CPU指令集与CPU架构微程序控制器取指与中断处理寄存器及IO操作指令存储器及堆栈操作指令跳转系列指令算术逻辑运算系列指令参考资料 指令集与CPU架构 本文将设计一个微程序CPU,微程序的原理...
  • 微程序的方法实现控制器的设计 一。微程序设计思想的产生 1951年英国剑桥大学教授 Wikes 完成一条机器指令需要很多微操作命令 一条机器指令对应一个微程序 存入ROM,存储逻辑 二。微程序控制单元框图以及工作...
  • 一、实验学时 4学时 二、实验目的 (1)掌握微程序控制器的工作原理和组成结构;...微程序控制器是以保存在只读存储器内的专用程序代替逻辑控制电路。这种只读存储器被称为控制存储器,它以微程序形式保存微控制...
  • 组成原理实验 Logisim CPU实验 Hust

    千次阅读 2020-06-12 19:28:21
    这次CPU的作业因为时间很紧,没有仔细研究,基本是照抄同学的,有一些Bug没有改动,所以仅供借鉴,有部分小错误还请...微程序地址转移逻辑 3.多周期硬布线 多周期MIPS(硬布线) 多周期硬布线控制器 状态机FSM ...
  • 微程序的入口地址的形成 2.后续地址的形成 2.1 增量方式 2.2 断定方式 六、微程序的时序安排 七、微程序控制方式优缺点及应用 一、微程序控制的基本思想  1.若干微命令编制成一条微指令,控制实现一步操作 ...
  • 微程序控制数据通路实验流程图;逻辑测试笔;实验设备;一 运算器组成实验;运算器组成实验电路分析;参考连线;实验任务;74LS181 ALU算数/逻辑运算功能表;实验要求;二 双端口存储器原理实验;TEC-8;双端口存储
  • C语言

    万次阅读 多人点赞 2019-12-18 23:01:50
    43.C语言允许直接访问物理地址,能进行位操作。 44.C语言是结构化程序设计语言 45.c程序要通过编译,连接才能得到可执行的目标程序 46.用c语言编写程序,可以编写出任何类型的程序 47.C语言允许有空函数 48.C程序...
  • 基于proteus的CPU控制器设计(微程序版)数据通路微程序设计原理微程序控制器参考资料 数据通路 为了理解微程序控制器的设计思想,我们假设一个极简的数据通路如下图1所示,由并联在单条8位总线BUS上的三个部件组成...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,049
精华内容 4,819
关键字:

微程序地址转移逻辑