山东大学软件学院计组课设2021整机实验(补码加法+溢出跳转+原码一位乘)

本文主要是介绍山东大学软件学院计组课设2021整机实验(补码加法+溢出跳转+原码一位乘),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文目录

    • 前言
        • 致读者
        • 写作目的
    • 一、实验要求
        • 1.1 基本要求
        • 1.2 扩展要求(一)
        • 1.3 扩展要求(二)
        • 1.4 其它扩展
    • 二、概念剖析
        • 2.1
    • 三、思路设计
    • 四、电路图
    • 五、问题与解决
        • 5.1 总线输出接灯,程序运行中,灯没有亮
        • 5.2 JP不能跳转回00H
        • 5.3 QJP微操作执行后,总是会顺序多走一步微操作,再进行跳转
    • 六、收获感悟
    • 七、项目资源
    • 后话

前言

致读者

学子苦课设久矣——笔者在写下这句话时,叹息连连。

因为基础差,加上之前实验划水,初逢整机实验时那真是一脸懵逼,一筹莫展:做了3次实验,电路图都连不上一根线。概念、原理、要求都没有弄清的情况下冥思苦想,让我走了许多弯路…

幸好在弯路上,CSDN上校友的博客,同学的指导给了我启发,实验也渐渐有了进展。

现在,我正把路上的见闻整理成文字图表,希望能够给你哪怕一点点帮助,就像我当初从别人那里获得帮助一样。

疑义相与析,欢迎留言或私信探讨,Any problem will be OK!(๑•̀ㅂ•́)و✧

写作目的
  1. 以写作输出厘清思路,查缺补漏
  2. 记录自己的成果与收获
  3. 帮助苦于课设的你早日征服它

(陆续填坑ing…)

一、实验要求

1.1 基本要求

在这里插入图片描述
注意:

  1. LOAD取数指令采用双字长直接寻址
  2. STORE指令采用双字长寄存器间接寻址方式
  3. 取指微程序入口固定为控存的00H
  4. MDR:一端接内存数据线,另一端接内部数据线,实现MDR与内存数据的隔离
  5. 在保存运算结果的同时,也要保存结果的状态(C、V、N、Z)

C:进位, V:溢出, N:结果为负, Z:结果为零

在这里插入图片描述
其他要求:

今年,我们老师建议使用典型总线结构(与之相反的是非典型总线结构,即以ALU为中心
在这里插入图片描述

典型总线结构

在这里插入图片描述

非典型总线结构

同时还要求通用寄存器需要封装成一个寄存器组,统一管理。

这一部分建议大家尽早明确各自老师要求,以实际为准!!!

1.2 扩展要求(一)

在这里插入图片描述

1.3 扩展要求(二)

在这里插入图片描述

1.4 其它扩展

在这里插入图片描述

二、概念剖析

2.1

三、思路设计

四、电路图

五、问题与解决

5.1 总线输出接灯,程序运行中,灯没有亮

总线上的灯不亮,说明数据没有到总线。

造成这个问题有很多很多的原因,比如RAM压根没有读出数据、数据没有进入寄存器、寄存器的三态门没有打开、某元件本来就有问题…(太多了,根本例举不完)

Debug方法:

一定要多接指示灯!一定要多接指示灯!!一定要多接指示灯!!!

怀疑某个地方有问题,就在那里的输入端/输出端/两端都接上指示灯,观察运行时对应灯泡的变化。

怀疑某个元件本身就无法完成自身功能,就应该单独把它拿出来,输出接灯,手动给它输入和脉冲,观察是否正常。

Example:

我的项目中,取LOAD指令的取指周期中,执行MDR->BUS->IR时,总线灯不亮(我的LOAD指令二进制是0001 0001)

分析:
正常情况下,现在总线上的数据就是LOAD指令,总线灯应该就是0001 0001,但总线灯是0000 0000

于是我首先怀疑是MDR的问题,具体包括以下可能:

  1. MDR没有存入数据,所以无输出
  2. MDR有数据,但是与BUS间的三态门没有打开

所以我在MDR与三态门之间8条线都接上一个指示灯(如下图)
在这里插入图片描述
再次测试MDR->BUS->IR指令,

结果灯为0001 0001!

这说明 MDR有数据,但是与BUS间的三态门没有打开。

于是我沿着线找到了控制这个三态门的3-8译码器的Y3N输出端。
在这里插入图片描述
此时,我认为我对3-8译码器的控制逻辑是没有错误的,肯定是3-8译码器元件自身有问题,所以就把它取出来单独测试:
所有输入端绑定开关,所有输出端绑定灯泡

结果都是正常的(比如输入001,结果为0000 0001),证明3-8译码器自身没有问题

到这里,就不得不怀疑是我对3-8的控制逻辑有问题。

经过检查,发现3-8译码器的输入端弄反了:本来应该是ABC从低到高接,但是我按从高到低接了(笑哭)

最后,我把A和C所接的输入端交换了一下,问题终于解决

5.2 JP不能跳转回00H

我的电路图中,让μPC之前通过二选一选择器来选择QJP与JP跳转方式。
在这里插入图片描述

当选择BY为1时,将B0~B7传入μPC,而 B7 ~ B0依次接的是μIR23~μIR16。

经过检查,发现我设计的JP微指令中μIR23~μIR16并不为全零,自然无法跳转回00H

5.3 QJP微操作执行后,总是会顺序多走一步微操作,再进行跳转

时序问题

六、收获感悟

七、项目资源

后话

这篇关于山东大学软件学院计组课设2021整机实验(补码加法+溢出跳转+原码一位乘)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/311275

相关文章

计组基础知识

操作系统的特征 并发共享虚拟异步 操作系统的功能 1、资源分配,资源回收硬件资源 CPU、内存、硬盘、I/O设备。2、为应⽤程序提供服务操作系统将硬件资源的操作封装起来,提供相对统⼀的接⼝(系统调⽤)供开发者调⽤。3、管理应⽤程序即控制进程的⽣命周期:进程开始时的环境配置和资源分配、进程结束后的资源回收、进程调度等。4、操作系统内核的功能(1)进程调度能⼒: 管理进程、线

uva 10069 DP + 大数加法

代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>#include <queue>#include <map>#include <cl

软件设计师备考——计算机系统

学习内容源自「软件设计师」 上午题 #1 计算机系统_哔哩哔哩_bilibili 目录 1.1.1 计算机系统硬件基本组成 1.1.2 中央处理单元 1.CPU 的功能 1)运算器 2)控制器 RISC && CISC 流水线控制 存储器  Cache 中断 输入输出IO控制方式 程序查询方式 中断驱动方式 直接存储器方式(DMA)  ​编辑 总线 ​编辑

【STM32】SPI通信-软件与硬件读写SPI

SPI通信-软件与硬件读写SPI 软件SPI一、SPI通信协议1、SPI通信2、硬件电路3、移位示意图4、SPI时序基本单元(1)开始通信和结束通信(2)模式0---用的最多(3)模式1(4)模式2(5)模式3 5、SPI时序(1)写使能(2)指定地址写(3)指定地址读 二、W25Q64模块介绍1、W25Q64简介2、硬件电路3、W25Q64框图4、Flash操作注意事项软件SPI读写W2

免费也能高质量!2024年免费录屏软件深度对比评测

我公司因为客户覆盖面广的原因经常会开远程会议,有时候说的内容比较广需要引用多份的数据,我记录起来有一定难度,所以一般都用录屏工具来记录会议内容。这次我们来一起探索有什么免费录屏工具可以提高我们的工作效率吧。 1.福晰录屏大师 链接直达:https://www.foxitsoftware.cn/REC/  录屏软件录屏功能就是本职,这款录屏工具在录屏模式上提供了多种选项,可以选择屏幕录制、窗口

HomeBank:开源免费的个人财务管理软件

在个人财务管理领域,找到一个既免费又开源的解决方案并非易事。HomeBank&nbsp;正是这样一个项目,它不仅提供了强大的功能,还拥有一个活跃的社区,不断推动其发展和完善。 开源免费:HomeBank 是一个完全开源的项目,用户可以自由地使用、修改和分发。用户友好的界面:提供直观的图形用户界面,使得非技术用户也能轻松上手。数据导入支持:支持从 Quicken、Microsoft Money

STM32(十一):ADC数模转换器实验

AD单通道: 1.RCC开启GPIO和ADC时钟。配置ADCCLK分频器。 2.配置GPIO,把GPIO配置成模拟输入的模式。 3.配置多路开关,把左面通道接入到右面规则组列表里。 4.配置ADC转换器, 包括AD转换器和AD数据寄存器。单次转换,连续转换;扫描、非扫描;有几个通道,触发源是什么,数据对齐是左对齐还是右对齐。 5.ADC_CMD 开启ADC。 void RCC_AD

PDF 软件如何帮助您编辑、转换和保护文件。

如何找到最好的 PDF 编辑器。 无论您是在为您的企业寻找更高效的 PDF 解决方案,还是尝试组织和编辑主文档,PDF 编辑器都可以在一个地方提供您需要的所有工具。市面上有很多 PDF 编辑器 — 在决定哪个最适合您时,请考虑这些因素。 1. 确定您的 PDF 文档软件需求。 不同的 PDF 文档软件程序可以具有不同的功能,因此在决定哪个是最适合您的 PDF 软件之前,请花点时间评估您的

梳理2024年,螺丝钉们爱用的3款剪辑软件

这年头,视频到处都是,就跟天上的星星一样数不清。不管你是公司里的新面孔,还是职场上的老狐狸,学会怎么剪视频,就好比找到了赢的秘诀。不管是给上司汇报工作,展示你的产品,还是自己搞点小视频记录生活,只要是剪辑得漂亮,肯定能一下子吸引大家的目光,让人记得你。咱们今天就来侃侃现在超火的三款视频剪辑工具,尤其是PR剪辑,你肯定听说过,这货在剪辑界可是大名鼎鼎,用它剪视频,既专业又麻利。 NO1. 福昕轻松

秒变高手:玩转CentOS 7软件更换的方法大全

在 CentOS 7 中更换软件源可以通过以下步骤完成。更换源可以加快软件包的下载速度,特别是当默认源速度较慢时。以下是详细步骤: 前言 为了帮助您解决在使用CentOS 7安装不了软件速度慢的问题,我们推出了这份由浪浪云赞助的教程——“CentOS7如何更换软件源加快下载速度”。 浪浪云,以他们卓越的弹性计算、云存储和网络服务受到广泛好评,他们的支持和帮助使得我们可以将最前沿的技术知识分