计算机组成原理实验第五讲
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用微单步运行微指令程序,对照微程序流 程图,观察实验设备平台上的相关寄存器 当前状态及微地址指示灯是否和其流程图 中表示的一致。检查、运行、记录并对照 调试运行后的结果是否和预测值一致。
注意:
在运行程序时不可同时打开多个主界面 窗口。
设计举例:IN R0 指令的微指令编码表
→
Dais-CMH+
9.将R0中压缩BCD码转换为ASCII码,结果在R1, R0。 MOV R1,R0 AND R0,0FH ADD R0,30H AND R1,0F0H ROR R1 ROR R1 ROR R1 ROR R1 ADD R1,30H HLT
10.将R0中的压缩BCD码转换成十六进 制数,结果在R0中。
完成实验报告(写出调试小结:在实验 中遇到的问题、解决的方法及相关的讨 论等)。
DR2源自文库
ALU
299 程序计 数器PC
微地址
DR1 数据 总线 指令寄 存器IR
控存
R0
R1
R2
锁存 输出
实 验 设 备 位 置 图
SW
地址 总线 内存
综合设计
自定义指令系统的设计与实现
实验目的
综合运用所学计算机原理知识,设计微 程序实现题目规定的指令(条件转移为相对 转移指令)。 实验内容 设计并完成下列十个题目之一给定指令的微程: 1. MOV R0,IMM MOV R1,[10H] ADD R0,R1 JCZ L1 MOV [11H],R0 L1: HLT
机器指令格式(前3位为操作码) IN R0,SW 001 ADD MOV OUT JMP
地址(H) 00
R0,[addr] [addr],R0 LED,[addr] 00
机器指令码 20
010 011 100 101
机器指令 IN R0,SW
addr addr addr 00
说 明
数据开关内容R0
MOV AND AND XCHD ROL ADD ROL ROL ADD R1,R0; R0,0F; R1,F0; ;半字交换 R1 ; R0,R1; R1 ; R1 ; R0,R1;
寻址方式
寄存器寻址:操作数包含在指令指出的寄存器 中。 直接寻址:操作数的地址包含在指令中。 间接寻址:操作数的地址的地址包含在指令中 相对寻址:指令中的地址是以PC为基址的相对 量。 变址寻址:指令中的地址是以变址寄存器为基 址的偏移量。 立即寻址:操作数包含在指令中。
A字段
B字段
判什么及如何写下地址
P(1)测试操作码的高4位 实际有效地址为E=基地址+操作码的高4位 (基地址的低4位为0)。 例:UA5~UA0为20,操作码为84 (10000100) E=20+8=28 P(2)测试操作码的3、2位 实际有效地址为E=基地址+操作码的3、2位 (基地址的低2位为0)。 例:UA5~UA0为1C,操作码为84 (10000100) E=1C+1=1D
5. 从开关输入2个数求和,结果在缓冲输 出显示,和大于255在R2中计作 “0FFH”,否则计作“0”。 IN R0 IN R1 ADD R0,R1 JCZ L7 MOV R2,0FFH JMP L8 L7: MOV R2,0 L8: OUT R0 HLT
6.测试10H单元中的数据,如果为负数,将FF 写入R0中;如果为正数,将00写入R0中。 MOV R0,[10H] TEST R0,10000000B JZ L2 CLR R0 JMP L3 L2: MOV R0,0FFH L3: HLT
预习要求
根据所选题目画出所有指令的微程序流 程图。
将设计好的微指令用铅笔填入表2-7-1。
将你选做的机器指令程序和你自己设计 的微程序做成电子版带到实验室,请在 每条指令的后面加注释。
实验要求
上机调试微程序,使其能达到在 “程序 单步”状态正确运行题目规定的程序。 将完成的实验结果填入表2-7-2。
指令格式
格式一 :单字节指令
例:ADD R0,R1 ADD R1,R2
1110 0100 1110 1001
格式二:二字节指令
格式三:二字节指令
注*:由寄存器向存储器传送时,将源寄存器代码写在目的寄存器的位置, 选择总线数据应选择Rd,即CBA=101。
注*:本设备规定 R2为变址寄存器
指令系统
实验说明
指令格式 机器指令地址及其代码格式: PXX XX (PXX表示程序地址)
程序地址 机器代码 微程序地址及微码格式: MXX XX XX XX XX (MXX表示微程序地址)
微程序地址 32位指令代码
机器指令格式
单字节指令 D7-D5为操作码,D1、D0目的寄存 (R0-R2),D3、D2源寄存器(R0-R2), D4任意。 双字节指令 第一字节: D7-D5为操作码,D1、D0目的寄 存,D3、D2源寄存器, D4任意。 第二字节:操作数。
01
03 05 07
40 XX
60 XX 80 XX A0 00
ADD R0,[addr]
MOV [addr],R0 OUT LED,[addr] JMP 00
R0+[addr] R0
R0[addr] [addr] LED 00 PC
微指令格式
UA0-UA5为6位后续微地址(注意:其微地址的 排列顺序为前低后高)。 C、B、A 为A字段决定总线上的信息来源。 PX3、PX2、PX1为 B字段,其功能是根据机器 指令及相应微代码进行译码,使微程序转入相 应的微地址入口。 PX3、PX2、PX1等于001时 为识别操作码测试位。 本实验采用简单模型机(控存06单元的最高字 节为40H)
2.
MOV MOV CLR ADD INC ADD HLT MOV SUB RLC MOV HLT
R0,12H [10H],R0 R0 R0,@[10H] [10H] R0,@[10H] R0,IMM R0,[11H] R0 @[20H],R0
3.
4. 求28H为起始地址连续5存储个单元中的 内容的和,结果在R0中(要求5个数的和 不大于255)。 MOV R0,0 MOV R2,20H MOV R1,0FBH L5: ADD R0,[R2]+8:与指导书不同 INC R2 INC R1 JCZ L6 JMP L5 L6: HLT
微程序控制器实验
实验目的
1. 掌握微程序控制器的组成原理。 2. 掌握机器指令与微指令的关系。 3. 学习微程序的编制、装入、调试
基本方法。
实验内容
根据数据通路框图(图2-6-1)、微控 制器原理图(图1-2-12(a))、微程序流 程图(图2-6-2)、机器指令格式(表2-61)、微指令格式(表2-6-2),用微指令序 列来实现给定的五条机器指令IN、ADD、 MOV、OUT、JMP。
7.测试20H单元中的数据,如果为负数,将FF 写入R2中;如果为正数,将00写入R2中。 CLR R2 MOV R0,20H MOV [10H],R0 MOV R0,@[10H] CMP R0,80H JCZ L4 MOV R2,0FF L4: HLT
8.双字节加法:数据自定,和在R2,R1,R0中 MOV R2,0 MOV R0,data1l MOV R1,data1h ADD R0,data2l ADC R1,data2h ADC R2,0 HLT
P(3)测试进位(CY)和结果为零(Z)标志位
两标志皆为'0'时,微指令的下地址为UA5~ UA0,两标志 之一为'1'时,下地址为将UA4 置"1"后的下地址.也就是说测试(P3)微指令 的下地址的UA4必须是0。 UA5 4 3 2 1 0
例: UA5~UA0为0A 0 0 1 0 1 0 满足条件: E=1A 0 1 1 0 1 0 不满足条件:E=0A 0 0 1 0 1 0
微程序流程图
实验连线图
实验步骤
按图2-6-3连接相关的实验电路。 将实验设备设置在“模型机”状态,点击 桌面上 图 标启动 DAIS 系 统软件 , 并 选定:串口为COM1;波特率为9600;运行 方式为“微运行”;连接硬件实验系统进 入主界面。 在编辑状态下,依次输入机器代码及对应 微指令码,“保存”并“装载”到实验设 备的控存和内存中。