****山东大学计算机组成原理课程设计实验报告\****
**------------**简单模型机实现(微程序)
(硬布线)
# 一、实验目的
1、 综合运用所学计算机组成原理知识,在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本的模型计算机.
2、 通过一台模型机的设计过程,明确计算机的控制原理与控制过程,巩固和灵活应用所学的理论知识,掌握计算机组成的一般设计方法,提高学生设计能力和实践操作技能,为从事计算机研制与设计打下基础。
3、 掌握整机概念,并设计机器指令系统,编写相应的微程序,在所设计的模型计算机上调试运行。
# 二、实验软件和硬件环境
QuartusII, FPGA 实验平台
win10 系统,内存 16G,CPU i5-8300h
# 三、实验原理和方法
利用所学过的理论知识,写出要设计的指令系统的微程序。将所设计的微程序写入计算机组成原理教学实验系统环境中进行测试,或者通过硬布线电路的设计,实现 CPU 的简单操作,实现各种运算,对计算机组成原理各种微操作的进一步掌握。
首先要确定所设计计算机的功能和用途,设计中根据功能和用途确定指令系统,数据的表示格式,位数,指令的编码,类型,需要设计那些指令和寻址方式。确定相对应指令所包含的微操作以及总体结构设计之间的数据通路结构,在此基础上,就可以拟出各种信息传输路径,以及实现这些传输所需要的微指令。
# 四、实验步骤
## **1**、指令系统
① 基本字长
模型机基本字长定位 8 位,存储容量为 256*8 位。
② 指令类型:
指令类型有两种:单操作数指令和无操作数指令。操作码 OP 共 6 位,最多可以定义 64 条指令。有直接寻址、间接寻址、寄存器寻址等寻址方式。指令长度为 8 或 16 位。
## **2**、总体结构

① 寄存器组设置
R0、R1、R2、R3 为通用寄存器,8 位。
IR 为指令寄存器,8 位。PC 程序计数器,8 位。MAR 为地址寄存器,8 位。CX 为计数寄存器,8 位
SP 为堆栈寄存器,8 位
② 运算器 **ALU** 的设置:
加法、减法、逻辑运算采用两片 74181 芯片实现。乘法运算使用乘法阵列器实现。
除法运算使用 LPM-DIVIDE 实现。移位运算使用 74198 实现。
连入 A 选择器的数据来源是 R0、RAM、SPS、R3、CX。连入 B 选择器的数据来源是 PC、R1、R2。
③ 数据通路
模型机的数据通路是以总线为基础,以 CPU 为核心构成的。
| ④ 指令设计 | | |
| ----------- | --------- | -------------------------------- |
| MOV R0,IMM | 16 位指令 | 立即数存入 R0 |
| MOV R1,IMM | 16 位指令 | 立即数存入 R1 |
| R0+R1->R2 | 8 位指令 | R0 与 R1 内容相加,结果存入 R2 |
| R0-R1->R2 | 8 位指令 | R0 与 R1 内容相减,结果存入 R2 |
| R0*R1->R2 | 8 位指令 | R0 与 R1 内容相乘,结果存入 R2 |
| R0/R1->R2 | 8 位指令 | R0 与 R1 内容相除,结果存入 R2 |
| R0<<1->R2 | 8 位指令 | R0 内容左移 |
| R0>>1->R2 | 8 位指令 | R0 内容算数右移 |
| JL ADDR | 16 位指令 | (有符号数)小于则跳转到指定地址 |
| JZ ADDR | 16 位指令 | 相等则跳转到指定地址 |
| JG ADDR | 16 位指令 | (有符号数)大于则跳转到指定地址 |
| JC ADDR | 16 位指令 | (无符号数)大于则跳转到指定地址 |
| ----------- | --------- | -------------------------------- |
| JA ADDR | 16 位指令 | (无符号数)小于则跳转到指定地址 |
| JMP ADDR | 16 位指令 | 无条件跳转到指定地址 |
| MOV SP,IMM | 16 位指令 | 立即数存入 R0 |
| PUSH R0 | 8 位指令 | R0 内容入栈 |
| POP R0 | 8 位指令 | R0 内容出栈 |
| MOV R0,R2 | 8 位指令 | R2 的内容存入 R0 |
| MOV R1,R2 | 8 位指令 | R1 的内容存入 R0 |
| MOV ADDR,R0 | 16 位指令 | R0 存入内存指定地址 |
| MOV ADDR,R1 | 16 位指令 | R1 存入内存指定地址 |
| CALL ADDR | 16 位指令 | 进入 addr 函数 |
| RET | 8 位指令 | 退出函数 |
| MOV CX,IMM | 16 位指令 | 立即数存入 CX |
| LOOP ADDR | 16 位指令 | 循环 |
| INC R0 | 8 位指令 | R0++ |
| HLT | 8 位指令 | 停机指令 |
## **3**、数据通路
微指令模型机总体原理图如下

硬布线模型机总体原理图如下

(1) **ALU** 的逻辑设计
①ALUA 进行直传、加法、减法、逻辑运算等,使用两片 74181 芯片实现。

②ALUB 进行乘法运算,使用阵列乘法器实现。

③ALUC 进行移位运算,使用 74198 实现。

④ALUD 进行除法运算,使用 LPM-DIVIDE 实现。

四个 ALU 的运算结果通过选择器进行选择后传输到总线上。

(2) 寄存器的设计
通用寄存器使用 74273 实现,统一使用 CLR 实现清零。

① 结构中 R0、R1、R2、R3 通用寄存器,可存放操作数或结果、中间结果。
② 指令寄存器 IR 存放从主存中取出的指令。
③ 地址寄存器 MAR 存放数据或者指令的主存地址,CLR 使用 MAR 清零。
④ 程序计数器 PC 存放指令执行地址,PC 加 1 是通过加法器实现的。CLR 使计数器 PC 清零。
⑤ 堆栈地址寄存器 SP 存放堆栈栈顶地址。
⑥ 循环计数器 CX 存放循环次数。
(3) 存储器的设计
① 主存为 256 8 位 RAM

② 微指令寄存器为 4096 8 位 ROM。

(4) 选择器的设计
选择器为 8 位 4 路选择器和 8 位 5 路选择器,使用与非门实现。

①A 选择器,控制 R0、RAM、SPS、R3、CX。
②B 选择器,控制 PC、R1、R2。
③ALU 选择器,控制 ALUA、ALUB、ALUC、ALUD 的到总线的输出。
⑸ 译码器的设计
译码器使用 74138、74139 实现,用于对微指令的译码。
⑹ 标志寄存器
①CF,存储 ALUA 中 74181 的进位位,通过 CF 位和 ZF 位的逻辑运算,可以实现无符号数的大小判断,实现 JC、JA。

②ZF 通过或门实现,存储运算结果是否为 0
是有顺序和步骤(“周期”或者说是“节拍”)的,整个程序的执行包括指令都是一步步执行的。而设计的关键以及核心就是实现好这个步骤和顺序,其主要操作部件就是下地址形成部件。在下地址形成部件的这两部分,前边的选择器用来提取 IR 来确定微程序的入口,μPC 是用来执行确定执行下一步微指令,其中一条指令由多条微指令实现,而一种操作又由多条指令来完成,虽然逻辑上不是特别简单,但是脉络还是很清晰的:将具体操作划分为指令, 具体指令划分为相应的微指令,而每一条微指令都包含了 μIR27—μIR0 之间的多个数据端口,相应的端口分组就实现具体的功能:运算控制,PC 控制,选择器控制……从宏观到具体的设计。 硬布线电路的实现操作,总体架构是在微指令的基础上改造而来。微指令的各种控制信号,包括运算控制信号(M,S0,S1,S2,S3,CN),cp 脉冲信号(CPR0, CPR1,CPMAR,CPIR,CPPC),读写控制信号(RD,WR)和选择器控制信号(MA, RA,PB,RB)等都是直接通过相应的硬布线电路来设计这些控制信号。其中设计的关键是节拍发送器和控制信号形成部件。 通过本次实验,对计算机组成原理有了更加深入的认识,无论是对于微指令, 微操作还是对于寻址方式还是对于 CPU 总线上运算的执行过程都有了进一步的掌握,通过各种调试对于脉冲,节拍,指令的运用更加灵活。能够真正通过自己动手设计一个底层元件,进而实现一个简易 CPU 运算器。
资源推荐
资源详情
资源评论

























收起资源包目录





































































































共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论

- m0_749070912024-07-15资源太好了,解决了我当下遇到的难题,抱紧大佬的大腿~

神仙别闹
- 粉丝: 5850
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 办公网络规划与设计(毕业论文)-中小型企业办公网络.doc
- Spring考试试卷(有答案).docx
- web实训心得体会.docx
- 我的Oracle学习之路教案资料.ppt
- 计算机网络实验 (2).doc
- Excel中面积、表面、周长和体积的计算函数及公式.ppt
- 中国旅游电子商务面临的问题及对策.docx
- 电气工程及其自动化考研资料汇总样本.docx
- IPMP案例研讨5全球经销商大会举办项目V10梅修正XXX.pptx
- VAVBOX招标技术要求修.doc
- c语言运算符优先级.docx
- WLAN干线放大器使用手册天基通信.doc
- SamsungNANDFLASH命名规则.doc
- 基于Hadoop的对俄贸易大数据分析系统研究(1).docx
- 大数据时代对市场营销的影响.doc
- CAD尺寸标注细则规范ppt课件.ppt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
