精华内容
下载资源
问答
  • logisim单周期CPU

    2017-12-17 21:57:42
    使用Logisim软件描述的单周期CPU,支持MIPS指令,可扩展性较好
  • Logisim Mips单周期处理器

    热门讨论 2014-02-17 15:06:40
    电路模拟logisim进行mips单周期CPU开发,支持简单的mips指令
  • logisim平台下实现的单周期处理器,能够完美实现基本指令操作,内含7段数码管设计,操作方便直观。 1.处理器应支持的指令集MIPS-Lite:addu,subu,ori,lw,sw,beq,lui,j。 a)addu,subu可以不支持实现溢出。 2....
  • logisim计组实验十 单周期MIPS CPU

    千次阅读 2020-06-23 09:46:42
    文章目录mips指令格式指令指令译码逻辑ALU控制逻辑控制信号 mips指令格式 当OP六位为全零的时候,表示是R型指令 Rs、Rt原寄存器,Rd是目标寄存器 shamt是用来移位的偏移量,最多偏移31位 最后一个字段funct描述...

    全部电路已经在educoder平台测试通过。
    电路文件已经托管至Github,欢迎star:点这里

    mips指令格式

    在这里插入图片描述

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

    • 当OP六位为全零的时候,表示是R型指令
      Rs、Rt原寄存器,Rd是目标寄存器
      shamt是用来移位的偏移量,最多偏移31位
      最后一个字段funct描述运算功能,相当于是op字段的扩展操作码 32表示加法,34表示减法
    • OP不为0,能够唯一确定不同的功能 I型指令有两个操作数Rs和Rt

    指令

    在这里插入图片描述
    lw:

    在这里插入图片描述

    addi:
    在这里插入图片描述
    sw:
    在这里插入图片描述
    beq:
    在这里插入图片描述
    bne:
    在这里插入图片描述
    add:

    在这里插入图片描述

    syscall:
    在这里插入图片描述
    slt:
    在这里插入图片描述
    辅助指令R_TYPE:
    用于判断是否是寄存器写回信号

    指令译码逻辑

    OP是指令的26-31位,func是指令的0-5位。
    在这里插入图片描述

    ALU控制逻辑

    在这里插入图片描述
    ALU_OP=((指令==slt)?11:5)

    控制信号

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

    电路图

    在这里插入图片描述

    功能说明

    支持8条MIPS核心指令,最终设计实现的 MIPS 处理器能运行冒泡排序测试程序 sort.asm,该程序自动在数据存储器0~15号字单元中写入16个数据,然后利用冒泡排序将数据升序排序。

    展开全文
  • 单周期MIPS CPU设计

    2020-12-09 15:45:32
    单周期MIPS CPU设计,利用运算器实验,存储系统实验中构建的运算器、寄存器文件、存储系统等部件以及Logisim中其它功能部件构建一个32位MIPS CPU单周期处理器。
  • 自己动手画cpu系列 建设中ing 仅供参考! 在这首推华中科技大学计算机组成原理实验课mooc连接 初衷:在mooc上看见了本课觉得...mipsCPU部分答案已上传->下载连接 tips:每个部分都是先贴答案再写思路 数字逻辑基础

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

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

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

    主电路图如下
    在这里插入图片描述

    控制器如下
    在这里插入图片描述

    这个是早期编写的了,可以看出控制器比较简陋,我感觉最优方法还是参照24指令的单周期控制器,就是老师给出的那个,由译码器构成而不是由比较器构成,比较器损耗太大了
    在这里插入图片描述

    因为是mipscpu部分第一个实验啰嗦一下,说一下各个控制信号
    在这里插入图片描述
    在这里插入图片描述
    首先是regdist信号,它的作用是区分R型和J型指令的,一般来说regdist==1是R型信号因为R型指令写成汇编形式寄存器分配op rd,rs,rt是写到rd里的所以W#应是rd地址。
    Sign Extend实际上就是个16->32的位扩展器,因为无论是alu还是pc都需要32位数据,特别说明在本实验后面不用左移两位,pc也不是+4而是+1因为logisim中都是按字寻址而不是按字节
    AlUSrc:区分是加立即数还是寄存器数,实际上还是R和非R的区分,因为在本实验R型alusrc==0,代表R型指令加寄存器数其余加的是立即数
    MemtoReg:==0代表寄存器堆中要存的是寄存器数之间的运算即R型,==1代表是lw取数据存储器中的数据

    单周期还是挺基础的最好把这个仔细做做,对后面的实验很有帮助。

    展开全文
  • 单周期MIPS CPU设计&单周期硬布线控制器 数据通路如下,主要利用一个硬布线控制器,指令寄存器,PC计数器、寄存器堆(之前实验中的MIPS寄存器文件),ALU加法器(已经封装好的),数据存储器来实现。这里的连接...
    大家好,我是小黄鸭,又来更新了,这个实验了一天,也过了,文章下面有我的联系方式,有问题请私聊。
    

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

    单周期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单周期(8条指令)的设计,主要是还是两部分:控制器+数据通路。 传送门单周期8条指令 待会再更新哈,稍等稍等。 有问题可在下方评论或者私信q453682174. ...
    大家好,我是小黄鸭,文章下面有我的联系方式,有问题请私聊。
    

    原理大家参照上一篇文章MIPS CPU单周期(8条指令)的设计,主要是还是两部分:控制器+数据通路。
    传送门单周期8条指令

    单周期MIPS CPU 24条指令

    1. 总体结构设计
      单周期CPU设计实验我们首先设计一个硬布线控制器,利用硬布线控制器的设计原理,来实现一个支持24条指令的MIPS单周期CPU。利用在运算器实验和存储系统实验中构建的运算器、寄存器文件、存储系统等部件以及Logisim其他功能部件,来构建一个32位MIPS CPU单周期数据通路。
      在这里插入图片描述
    2. 数据通路的设计
      数据通路要将运算和功能部件进行连接,组成一个能个执行取值、译码、执行、进一步可能包含中断的数据连接,能够让指令从PC开始,流向各运算和功能部件,并成功指令相应的功能,给出相应的返回。并且数据通路要具备基本的CPU要求,能够形成相应的数据流和状态转移。
      数据通路
    3. 控制器的设计
      1. 运算器控制器
        运算器控制器设计的基本思想是通过24条MIPS指令的运算指令,进行组合逻辑分析,将运算指令送入到ALU_OP中。首先要对24条MIPS指令具体的执行过程进行分析,然后对每条MIPS指令,结合运算器ALU单元的运算规格,给出每条MIPS指令的运算类型,填入到自动生成表格中,进行ALU_OP值的生成,然后利用分析电路功能,自动生成电路。
        ALU

      2. 控制信号生成器
        控制信号生成器的基本思想与运算器部分类似,但这次不是对于24条MIPS指令的运算执行部分进行分析,而是对于24条MIPS指令具体所需要的控制信号进行分析,对每一条MIPS所需的控制信号分析,通过组合逻辑分析,得到控制信号的组合逻辑。
        控制信号

    4. 控制器的实现
      1. 根据总体方案设计中控制器的设计那一小节的相关内容,在Logism上进行主控制器、Branch控制器、SYSCALL控制器的具体实现。
        在这里插入图片描述
      2. 主存控制器的控制信号填入表中后,自动生成出相应的逻辑表达式,将表达式复制粘贴到电路中的分析电路功能中,自动生成组合逻辑电路如下,得到了24条MIPS指令关于ALU_OP的输入值组合逻辑。
        在这里插入图片描述
      3. 主存控制器的控制信号填入表中后,自动生成出相应的逻辑表达式,将表达式复制粘贴到电路中的分析电路功能中,自动生成组合逻辑电路如下,得到了24条MIPS指令所对应的控制信号的组合逻辑。在这里插入图片描述
      4. 最终的控制器
        在这里插入图片描述

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

    展开全文
  • 单周期MIPS CPU数据通路设计,这个是华中科技大学谭志虎老师所讲的那个设计,内含有circ数据通路和实验报告,这个实验报告我写了一万多字,足够足够详细,保证你答辩的时候非常顺畅,直接导入Logisim就可以运行。
  • [华中科技计组实验]logisim完成单周期5级流水MIPS32 CPU hu~,终于完成了,真是费劲呐 支持24条指令,5级流水线,可以对分支指令处理,寄存器冲突处理,指令ROM为1K,数据RAM为1M,32位MIPS指令集CPU 但是… 大量使用...
  • 实验资源来自于MOOC-华中科技大学-计算机硬件系统设计计算机硬件系统设计_华中科技大学_中国大学MOOC(慕课)一、整体结构整体结构图二、24条MIPS指令集指令格式参考MIPS32指令集------------------------------|指令...
  • 1、了解单周期MIPS CPU架构,为程序设计控制器。 2、了解MIPS指令流水线基本概念,和理想指令流水线的设计。 华中科技大学《计算机硬件系统设计》
  • 目录实验目的:第1关:单周期MIPS CPU设计二.微程序地址转移逻辑设计三.MIPS微程序CPU设计四.硬布线控制器状态机设计五.多周期MIPS硬布线控制器CPU设计(排序程序)测试结果: 实验目的: 1、理解计算机中的重要部件...
  • MIPS指令译码器设计 2 定长指令周期---时序发生器FSM设计 3 定长指令周期---时序发生器输出函数设计 4 硬布线控制器组合逻辑单元 5 定长指令周期---硬布线控制器设计 6 定长指令周期---总线CPU
  • 实验一 单周期MIPS CPU设计实验二 微程序地址转移逻辑设计实验三 MIPS微程序CPU设计实验四 硬布线控制器状态机设计实验五 多周期MIPS硬布线控制器CPU设计(排序程序) 实验一 单周期MIPS CPU设计 实验二 微程序地址...
  • 控制器设计:MIPS单周期CPU

    千次阅读 热门讨论 2020-06-14 20:13:48
    一:单周期MIPS (1)CPU组成 (2)控制器:产生控制信号序列的逻辑电路。 控制器取指令数据通路: 控制器执行指令的过程:指令字——>控制信号序列——>数据通路; (3)操作控制器: (4)单周期MIPS控制...
  • 使用logisim布线完成的MIPS单周期CPU,可支持28条指令。跑马灯的代码已经装入了寄存器,可以直接开启时钟运行。
  • 使用logisim布线完成的MIPS单周期CPU,可支持28条指令。跑马灯的代码已经装入了寄存器,可以直接开启时钟运行。
  • 总线CPU设计(定长指令周期3级时序)(HUST)1 MIPS指令译码器设计2 定长指令周期---时序发生器FSM设计3 定长指令周期---时序发生器输出函数设计4 硬布线控制器组合逻辑单元5 定长指令周期---硬布线控制器设计6 定长...
  • 实验八:单周期MIPS CPU设计 代码测试结果 实验九:微程序地址转移逻辑设计 电路设计图: 代码测试结果 实验十:MIPS微程序CPU设计 实验十一:硬布线控制器状态机设计 实验十二:多周期MIPS硬布线控制器CPU设计 ...
  • 组成原理实验 Logisim CPU实验 Hust

    千次阅读 2020-06-12 19:28:21
    单周期MIPS(硬布线) 单周期硬布线控制器 2.多周期微程序 多周期MIPS(微程序) 多周期微程序控制器 微程序地址转移逻辑 3.多周期硬布线 多周期MIPS(硬布线) 多周期硬布线控制器 状态机FSM ...
  • 定长指令周期总线cpu设计 变长指令周期3级时序 MIPS指令译码器设计 变长指令周期–时序发生器FSM设计 变长指令周期–时序发生器输出函数设计 硬布线控制器组合逻辑单元 变长指令周期–硬布线控制器设计 变...
  • 单周期24条指令.zip

    2020-07-02 17:21:19
    单周期CPU设计实验我们首先设计一个硬布线控制器,利用硬布线控制器的...利用在运算器实验和存储系统实验中构建的运算器、寄存器文件、存储系统等部件以及Logisim其他功能部件,来构建一个32位MIPS CPU单周期数据通路。
  • MIPS_CPU设计实验.rar

    2021-03-20 16:56:10
    MIPS_CPU设计实验,可以在logisim平台上运行,将cicr代码复制到EduCoder可以直接通过...MIPS 单周期 CPU,该处理器能运行简单的内存冒泡排序程序。能利用硬布线控制器以及微程序控制器的原理设计实现 MIPS 多周期 CPU
  • logisim_mips_cpu 使用logisim搭建mips cpu 完成部分源码均已上传,欢迎star关注后续更新。 本项目的来源是华中科技大学计算机组成原理课设,最终的成品是搭建好的单周期mips cpu
  • 单周期处理器设计

    2014-05-26 08:49:33
    由简单与非门等搭建单周期cpu 实验目的: 进一步理解数据通路、控制通路等基本概念 掌握处理器中控制器的基本设计方法 进一步理解单周期处理器以及多周期处理器的工作原理和设计思路 实验要求: 设计和实现一个...

空空如也

空空如也

1 2
收藏数 33
精华内容 13
关键字:

cpulogisim单周期mips