版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机组成原理课程设计 学号:xxxxxxxxxx 姓名: 学号:xxxxxxxxxx 姓名: 设计任务:设计任务: 综合前面实验单元典型部件设计与调试,对数据选择器(A、B) 、计数器、运算器、寄存器和微 程序控制器透彻了解的基础上,完成一个简单计算机的设计,使其具有简单运算功能:取数、读数、做 加法、送数等。 设计目的:设计目的: 通过一个简单计算机的设计,对计算机系统的基本组成、部件的设计、部件间的连接、微程序的 编制与调试等全过程有一个较为综合、深入的认识和理解。 设计与调试步骤: 结合计算机组成原理的教学内容和课程设计平台系统,计算机的设计与调试步骤如下: 数据通路:数据通路: 数据
2、通路的设计在总体结构中是最重要的一个环节。实验室的仿真模型机的数据通路是以总 线为基础、以 CPU 为核心构成的。 系统简介系统简介: 机器指令存放在 3#RAM 中将 3#RAM 作为内存使用,机器指令是按由上到下顺序执行的,其执行顺 序由 PC(程序计数器)和 MAR(地址寄存器)控制。2#RAM 和 1#RAM 作为控制存储器简称为控存一 条微指令由十六个微命令组成高八位存放于 2#RAM 中,低八位存放于 1#RAM 中。后继地址有三种形成 方式IR2IR1IR0 为 001 时PC+1 安顺序执行微指令为 010 时 JP 无条件转移,地址由IR15-8提供。 本简单计算机基于简化处
3、理IR15-8均为 0 它代表了均跳向为指令寄存器的 00 入口即取指令入口。为 011 时 QJP 高四位安机器指令的操作码转移,第四位为 0 其由后继地形成逻辑实现,所有涉及的地址转移均 为指令的转移。因为机器指令是按顺序执行的。每按一次单脉冲键执行一条微指令,一条机器指令由若 干条微指令组成,一条微指令由十六个微命令组成其中因为IR3IR6IR7全为零故省略掉了。 为保证机器指令是从第一条开始顺序执行的,在操作前应按一次复位键将微指令计数器 pc,机器 指令计数器 pc,内存地址寄存中的内容清零。第一条微指令地址为 00,微操作为 RAMIR 即从内存中 取出指令放到机器指令寄存器中,此
4、时地址寄存器中的内容为 00,所以在 3#RAM 的 00 地址中取出 MOV1 指令 18,取出指令后 PC+1PC(01)为取下一条内存内容做好准备,再按一次单脉冲键执行 QJP 及按操作码转移,此时指令寄存器中存放的为 18 操作码为 0001,所以转移后高四位为:0001 低四 位为全零 :0000 。后继地址形成逻辑的输出 0001 0000, 因此此时置数有效微地址输出为 10(十六进 制) 。 根据微地址 10 执行 PCMAR, PC 中的内容经取指过程中加 1 操作,已变为 01,所以地址寄存器中存 入了 01,然后 PC+1PC (PC 变为 02) 为取下一条内存内容做好
5、准备。然后将内存中地址为 01 的数 据传送至 RAMR0 下一步为 PCMAR 存入的为 02。下一个微指令为 JP 无条件转移,地址由微指令 的高八位给出,高八位为 0000 0000,所以微地址转向 00,再次进行取指令。 在 3#RAM 的 02 地址中取出 MOV2 指令 28 放进机器指令寄存器,取出指令后 PC+1PC(03)为取 下一条内存内容做好准备,再按一次单脉冲键执行 QJP 及按操作码转移,此时指令寄存器中存放的为 28 操作码为 0010,所以转移后高四位为:0010, 低四位为全零:0000 。后继地址形成逻辑的输出 0010 0000, 因此此时置数有效微地址输出
6、为 20(十六进制) 。 根据微地址 20 执行 PCMAR PC 中的内容经取指过程中加 1 操作已变为 03,所以地址寄存器中存 入了 03,然后 PC+1PC (PC 变为 04) 为取下一条内存内容做好准备。然后将内存中地址为 03 的数 据传送至 RAMR1 下一步为 PCMAR 存入的为 04。下一个微指令为 JP 无条件转移,地址由微指令 的高八位给出,高八位为 0000 0000,所以微地址转向 00,再次进行取指令。 在 3#RAM 的 04 地址中取出 ADD 指令 30 放进机器指令寄存器,取出指令后 PC+1PC(05)为取 下一条内存内容做好准备,再按一次单脉冲键执行
7、 QJP 及按操作码转移,此时指令寄存器中存放的为 30 操作码为 0011.所以转移后高四位为 0011 第四位为全零 0000 。后继地址形成逻辑的输出 0011 0000 , 因此时置数有效微地址输出为 30(十六进制) 。 根据微地址 30 执行 R0 +R1= R1 PC 中的内容经取指过程中加 1 操作已变为 05,所以地址寄存器中 存入了 05,然后 PC+1PC (PC 变为 06) 为取下一条内存内容做好准备。下一个微指令为 JP 无条件 转移,地址由微指令的高八位给出,高八位为 0000 0000 所以微地址转向 00,再次进行取指令。 在 3#RAM 的 05 地址中取出
8、 MOV3 指令 41 放进机器指令寄存器,取出指令后 PC+1PC(06)为取 下一条内存内容做好准备,再按一次单脉冲键执行 QJP 及按操作码转移,此时指令寄存器中存放的为 41 操作码为 0100,所以转移后高四位为:0100 低四位为全零:0000 。后继地址形成逻辑的输出 0100 0000 ,因此时置数有效微地址输出为 40(十六进制) 。 根据微地址 40 执行 R0MAR(R0中的数据作为写内存地址) 。 PC 中的内容经取指过程中加 1 操作 已变为 06,所以地址寄存器中存入了 06,然后将内存中地址为 03 的数据传送至 R1RAM 下一步为 PCMAR 存入的为 06。
9、下一个微指令为 JP 无条件转移,地址由微指令的高八位给出,高八位为 0000 0000,所以微地址转向 00,再次进行取指令。 至此 MOV1 MOV2 ADD MOV3 均执行完毕完成了两个数的相加操作。如果 是 07+02=09 那么内存的 07 号地址中就存放了相加结果 09。 总图:总图: 输入输出说明:输入输出说明: USB0-7 为内存的数据线当 WR 为 1 时可以写内存,同时加法器的输出也接到这八根线上结合输出分配可 将数据送到 R0 、R1、PC、IR 、MAR 中的一个或一个也不送。 AD0-7 为内存的地址线。 UAD0-7 为 ROM2 和 ROM1 的共用地址 IR
10、0-15为 ROM2 和 ROM1 的输出其具体输出什么由其地址决定。 WR RD 为内存的读写控制 P1 为单脉冲 Rst2 为复位键,可对 PC,PC.,MAR 进行复位。 UPC 和 P 控制 ROM2 和 ROM1 读和读出 MD0-7 为 ROM3 的输出其中的数据由此输出。 二四译码器二四译码器: 二四译码的输出控制选择器 A、B 数据通路,二四译码器的作用在这里是一个多路数据开关。 三八译码器逻辑三八译码器逻辑: 三八译码器的一组输入对应的输出中只有一个为 1 其余为零。 设计中用到了两个三八译码器其中一个的输入为 IR11、IR10、IR9,输出用到的五个分别 控制 R0 、R
11、1 、 IR 、PC 、MAR 五个寄存器的数据开关。因为其输出同一时刻只有一个 1,这就保证 了同一时刻只对一个寄存器操作,另外还有五个寄存器均不操作时的情况,例如写内存的操作。另外一 个三八译码器控制微指令地址的转移方式。其本质上仍是一个多路数据开关。 后继地址产生逻辑后继地址产生逻辑: 三八译码器元件符号 二四译码器元件符号 当 QJP=1 时 JP=0,微地址计数器置数端输入为 0(置数低有效)微指令的高八位被屏蔽掉了,又因 为有四个与门接地,所以输出的低四位为全零,高四位只与机器指令的高四位(操作码)有关,这样就 实现了高四位按操作码转移,低四位为全零。 当 JP=1 时 QJP=0
12、,微地址计数器置数端输入为 0(置数低有效)因为有四个与门接地且 QJP=0,所 以输出只与微指令的高八位(IR15-8)有关,这样就实现了无条件转移,地址由IR15-8提供。 当 JP=0 时 QJP=0,微地址计数器置数端输入为 1(置数低有效)此时置数端无效按一次单脉冲键微 指令计数器从置数的输入开始计数器自加 1 顺序向下执行,直到下一次微指令跳转。 一位全加器一位全加器: 一位加法器元件符 八位串行进位并行加法器八位串行进位并行加法器 微指令计数器微指令计数器 PC 八位串行进位加法器元件符号 微指令计数器元件符号 微指令计数器不是真正的八位二进制计数器起到计数功能的只有六位,高两位
13、是置数的输入。我们 使用低六位来计数就足够了,程序中微指令最多才自加 4 次就开始重新置数了。这样设计只是为了简化 硬件电路。 三位二进制计数器三位二进制计数器 这是微指令计数器 底层模块具有置数和端复位 键,在来一次脉冲时自加一 当加到 111 时产生进位信号。 二选一选择器二选一选择器 三位二进制计数器元件符号 这里的二选一是将八根线看成一组(R07-R00 一组、R17-R10 一组) ,从两组中选出一组作为输出。 不带复位端的八位寄存器不带复位端的八位寄存器 带复位端的八位寄存器带复位端的八位寄存器 微指令格式微指令字长 16 位即IR15IR0 (1)微指令字段定义 A 选择器控制:
14、IR15IR14 0 0 备用 0 1 RA 1 0 MA 1 1 备用 B 选择器控制:IR13IR12 0 0 备用 0 1 PB 1 0 RB 1 1 备用 输出分配 :IR11IR10IR9 0 0 0 备用 0 0 1 CPR0 0 1 0 CPR1 0 1 1 CPPC 1 0 0 CPIR 1 0 1 CPMAR 1 1 0 备用 1 1 1 备用 低位进位控制:IR8 0 C0=0 1 C0=1 存储器读写控制:IR5IR4 1 0 RD 0 1 WR 后继地址形成方式: IR2IR1IR0 0 0 0 备用 0 0 1 PC+1 顺序执行微指令 0 1 0 JP 无条件转移,
15、地址由微指令的高八位IR15-8提供 0 1 1 QJP 高四位按操作码转移,地四位为 0。 1 0 0 YJP 给定高四位第四位按源寻址方式转移。 1 0 1 MJP 给定高四位低四位按目的寻址方式转移。 1 1 0 备用 1 1 1 备用 微命令形成逻辑如下图示 确定总体结构:确定总体结构: 1、寄存器的设置:、寄存器的设置: R0 R1 为通用寄存器,8 位 IR 为机器指令寄存器,8 位 PC 程序计数器,8 位 MAR 为内存地址寄存器 2、加法器的设置、加法器的设置 为简化设计,采用为 8 位带串行进位并行加法器 3、选择器的设置、选择器的设置 连入 A 选择器的数据来源是 RAM
16、 的读出数据和 R0 寄存器的数据。连入 B 选择器的数据来源是 PC 数据 和 R1 寄存器的数据。 4、数据通路、数据通路 信息传送路径 逻辑设计逻辑设计 1、加法器的逻辑设计 2、选择器的逻辑设计 3、寄存器的设计 不带复位的寄存器 结构中 R0 R1 通用寄存器,可存放操作数或结果、中间结果,每个寄存器由 8 个 D 触发器构成。在 CPRi 的作用下接受总线的数据送入寄存器,输出连入选择器机器指令寄存器其结构同通用寄存器。 带复位的寄存器 结构中 MAR 地址寄存器是一个带复位的寄存器,带复位是指当有复位信号时,MAR 清零。 程序计数器的设计 PC 加 1 是通过加法器实现的。 部
17、件之间的连接 由系统图可看出,部件之间的连接是采用以 CPU 为中心的总线连接方式。加法器的输出通过总线 BUS 连接到所有寄存器和存储器的输入端,除指令寄存器 IR 和地址寄存器 MAR 的输出端外,其他部件 的输出端分别送入选择器 A 和选择器 B 。 确定控制方式确定控制方式 后继地址产生逻辑 为简单起见直选三种后继地址生成方式即增量方式、无条件转移方式、安操作码转移方式 当 EN=1 时,为程序计数器执行加 1 操作 当 EN=0 时,且 JP=1 时,无条件转移。 当 EN=0 时,且 QJP=1 时,按操作码转移。 微程序编写微程序编写 (1)程序程序 MOV1 07# R0 MO
18、V2 02# R1 ADD R0 R1 MOV3 R1 (R0 ) (2)操作码二进制代码)操作码二进制代码 MOV1 0001 MOV2 0010 ADD 0011 MOV3 0100 (3)微程序入口(十六进制代码)微程序入口(十六进制代码) 取指令入口: 00H MOV1 入口: 10H MOV2 入口: 20H ADD 入口: 30H MOV3 入口: 40H 拟定指令系统拟定指令系统 基本字长 课程设计平台中配置的存储器容量为 2568,显然基本字长只能定为 8 位。 指令格式 指令格式可有单字长指令和双字长指令两种,在双字长格式中,第二字节一般定义微操作数或操作 数地址。 指令格式
19、为: 指令类型 模型机有单操作数指令、双操作数指令和无操作数指令。 操作码 OP 共提供四位,最多可定义 16 条指令。 数据的传送单位为 8 位(一个字节) 数据的传送范围 寻址方式 由于指令较短、操作数仅为两位,为了简化硬件设计,将源操作数字段和目的操作数字段的寻址定 义为不同的含义 源操作数寻址方式 目的操作数寻址方式 00 R0 00 R1 01 (R0) 01 (R0) 10 I 10 I 11 D 11 D Ri 表示操作数就在寄存器中 (Ri) 表示操作数地址在寄存器中 I 指令的第二个字节微操作数或立即寻址 源操作数使用 R0寻址 目的操作数使用 R1寻址 MOV1 0001
20、10 00 0000 01 11 MOV2 0010 10 00 0000 00 01 ADD 0011 00 00 MOV3 0100 00 01 MOV1 源操作数按立即寻址目的操作数为操作数就在寄存器中,因为立即寻址该指令由两个字节组成。 MOV2 只有操作码与 MOV1 不同 ADD 源操作数:操作数就在寄存器中,目的操作数:为操作数就在寄存器中,该指令由一个字节组成 MOV3 源操作数:操作数就在寄存器中,目的操作数:操作数地址在寄存器中。 将以上四条机器指令在 RAM3#自 00 号单元顺序存放并用十六进制表示如下: 00 18 01 07 02 28 03 02 04 30 05
21、 41 MOV1 07,R0 ;立即数 07# R0 MOV2 01,R1 ;立即数 02# R1 ADD R0,R1 ;(R0)+( R1) R1 MOV3 R1,(R0) ; R1 (R0) (存储单元) R0 中的数据在中的数据在 MOV1 中作为操作数,在中作为操作数,在 MOV3 作为作为 RAM3 的地址的地址 R1 中相加后的结果就写在中相加后的结果就写在 这个地址中。这个地址中。 本指令完成的是本指令完成的是 07+02=09 以上四条机器指令执行完成后以上四条机器指令执行完成后 RAM3 的的 07 号单元存放的为号单元存放的为 09。 指令执行流程指令执行流程 微程序微程序
22、 IR15IR14IR13IR12IR11IR10I R9IR8 IR7I R6 IR5IR4 IR3IR2IR1 IR0 十六进制代 码 微操作微 地 址 A 选择B 选 择 输出分 配 C0RD WR转移方式ROM2#ROM 1# RAM IR 0010001000001000018821 PC+1 PC 0100010111000000011701 QJP02IR8IR7IR6IR50000000000110003 0 PCM AR 1000011010000000011A01 PC+1 PC 1100010111000000011701 RAM R0 1210000010001000018221 PCM AR 1300011010000000011A01 JP1400000000000000100002 PCM AR 2000011010000000011A01 PC+1 PC 2100010111000000011701 RAM R1 2210000100001000018421 PCM AR 2300011010000000011A01 JP2400000000000000100002 R0 +R1= R1 3001100100000000016401 PCM AR 3100011010000000011A01 JP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年奶茶店兼职员工聘用合同版B版
- 2024年度版权分发合同关键条款解读3篇
- 2024年区域运输承包协议3篇
- 2024年智能行车装置及相关技术咨询与转让合同
- 2024年度高层建筑安全栏杆检测合同3篇
- 2024年店铺装修服务详细协议版
- 2024员工离职合规性合同样本版B版
- 2024年标准化人工费劳务协议样本版B版
- 2024年新版房地产购买协议标准模板一
- 2024二手房购买合同规范版
- 《囚歌》教学课件
- 营养快餐计划书
- 幼儿园大班科学课件:《植物的生长》
- 汽轮机本体检修三措两案
- 索道应急救援培训课件
- 2023-2024学年湖南省长沙市雅礼教育集团七年级(上)期末数学试卷(含解析)
- 普洱茶与黑茶
- 合规管理在国际贸易中的要求
- 2024年高考语文一轮作文复习:二元思辨型作文的巧设分论点方法
- 补中益气汤经肠道菌群的调控改善脾虚证的作用机制
- 电商行业财务分工分析
评论
0/150
提交评论