基于Dais CMX16的计算机组成原理微程序课程设计
来源:互联网 发布:网页优化技巧 编辑:程序博客网 时间:2024/05/07 10:10
计算机组成原理(微机原理)是计算机专业学生必修的一门课程,也是考研的专业课,这是一门研究计算机工作原理的课程,但理论知识掌握的再好,不能用到实际中也只是文字而已,因此,课程设计就是将理论结合实际的很好的一种方式(全是废话)。好的,说说本次的课程设计,首先,我所做的课程设计是在Dais CMX16 的16位模型机基础上实现的,地点是烟台大学,各个大学的课程设计可能稍有差别,但大体思路应该是一样的。
设计目的
- 计算机组成原理课程设计的主要任务是让学生通过动脑和动手解决计算机设计中的实际问题。
- 综合运用所学计算机组成原理知识,在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本的模型计算机,掌握整机概念,并设计机器指令系统,编写程序,在所设计的模型计算机上调试运行。
- 通过一台模型机的设计过程,明确计算机的控制原理与控制过程,巩固和灵活应用所学的理论知识,掌握计算机组成的一般设计方法,提高学生设计能力和实践操作技能,为从事计算机研制与设计打下基础
设计分析
实验原理
本实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从EM主存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
机器指令格式
其中OP-CODE为操作码段,位于指令字节高三位(IR7~IR5);第四位IR4是保留位,指定为零;低四位为源与目的寄存器地址,它们的编码见下表;Addr定义操作数或操作地址。
微指令格式
按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表转换成十六进制格式文件。
指令(程序)设计
指令系统
设计八条机器指令:IN(输入)、ADD(十六进制加法)、SUB(减法)、MUL(乘法)、DIV(除法)、STA(置数)、OUT(输出)、JMP(无条件转移)。
其中IN为单字节(8位)指令,其余为三字节指令,XXXXXXXX XXXXXXXX为addr对应的二进制地址码,XXXX XXXX为立即数。
指令流程图
实验所用的机器指令
指令系统
源程序及微指令
;基本模型机程序#LOAD "InstructionSys.IS" ;预调入指令系统/微程序#SET RAM 0260H = 1100h;数据区0260H单元预置数据1100hdata segment ;将程序装载到数据存储器 assume ds:data org 0start: in r0, iol ;将IO低位送到R0 add r0, 0260h ;将R0的内容与内存0260单元的内容相加,送回R0 sub r0,0260h ;将R0的内容与内存0260单元的内容相减,送回R0 mul 0203h ;立即数02和03,将02和03相乘送到R1 sta 01ffh,ioh ;将FF00送到IO div 0204h ;将立即数04除以立即数02送到R2 out ioh, 0260h ;将内存0260单元的内容输出到IO jmp 0000h ;将PC的内容置零,返回第一条机器指令data ends end start
微指令由于不是ASCII编码,所以就直接附下载链接了(点我下载)
0 0
- 基于Dais CMX16的计算机组成原理微程序课程设计
- 计算机组成原理课程设计 Dais CMX16 模型机指令及微指令设计
- 计算机组成原理课程设计 Dais CMX16 模型机指令及微指令设计
- 计算机组成原理课程设计——用微程序控制器设计简单计算机
- 计算机组成原理-微程序和微指令
- 计算机组成课程设计之一——微程序控制的运算器设计
- 计算机组成课程设计之二——微程序控制的存储器读写系统设计
- 微程序控制器的组成及原理总结
- 计算机组成原理课程设计报告书
- 计算机组成原理课程设计源码
- 组成原理课程设计——微程序初版(无注释版)
- 计算机组成原理课程设计(vhdl语言实现)
- 计算机组成原理课程设计 - 基本模型机
- 计算机组成原理课程设计第一天记录
- 计算机组成原理课程设计-基本模型机的设计与实现
- 计算机组成原理课程设计之设计RISC处理器
- 计算机组成课设实验一: 微程序控制的运算器设计
- 组成原理课程设计
- 算法导论学习日记(5)二分法查找
- Codeforces Round #384 (Div. 2)D. Chloe and pleasant prizes(树DP)
- PHP获取微信 accesstoken
- 基于Unity3d引擎的数据驱动尝试
- TCP/IP传输层协议——TCP/UDP
- 基于Dais CMX16的计算机组成原理微程序课程设计
- Android 键盘的显示和隐藏
- Shell重定向&>file、2>&1、1>&2的区别
- Spring的整体部署
- 通过中序后序建立二叉树
- 算法系列 ——遍历所有控件的递归和非递归实现
- java ‘转圈’打印二维数组
- socket笔记
- mysql5.7.17安装步骤(win)