Presentation is loading. Please wait.

Presentation is loading. Please wait.

计算机组成原理课程设计 实验四 简单模型机实验.

Similar presentations


Presentation on theme: "计算机组成原理课程设计 实验四 简单模型机实验."— Presentation transcript:

1 计算机组成原理课程设计 实验四 简单模型机实验

2 实验7 简单模型机实验 一、实验目的 二、实验原理 三、实验内容及要求 四、实验步骤

3 一、实验目的 掌握微程序控制器的结构和工作原理。 掌握手动装入与修改程序的方法。 掌握联机装入与修改程序的方法。
掌握整机概念和程序的执行过程。

4 二、实验原理 1、简单模型机的系统结构 2、简单模型机的指令系统 3、简单模型机的微程序流程图 4、简单模型机的微指令地址分配
5、简单模型机的微代码 6、微代码装入方法 7、程序的机器码装入方法 8、启动程序执行

5

6 2、简单模型机的指令系统 (1)IN DR,PORTAR 功能:输入设备(开关)数据送DR,PORTAR为输入设备的端口地址。 11
I7 I6 I5 I4 I3 I2 I1 I0 11 0000 DR PORTAR (2)ADD DR, [ADDR] 功能:(DR)+[ADDR] →DR,结果影响标志;直接寻址,直接地址ADDR在指令第二字节。 I7 I6 I5 I4 I3 I2 I1 I0 11 0001 DR ADDR

7 2、简单模型机的指令系统 (3)STA [ADDR],DR 功能:DR→[ADDR];直接寻址,DR的内容送主存ADDR地址单元。 11
I7 I6 I5 I4 I3 I2 I1 I0 11 0010 DR ADDR (4)OUT [PORTAR],[ADDR] 功能:[ADDR]→LED;直接寻址,主存ADDR地址单元的内容送输出设备发光管显示。 I7 I6 I5 I4 I3 I2 I1 I0 11 0011 DR ADDR PORTAR

8 2、简单模型机的指令系统 (5)JMP ADDR 功能:ADDR→PC,程序跳转到主存ADDR地址继续执行。 11 0100 DR ADDR
I7 I6 I5 I4 I3 I2 I1 I0 11 0100 DR ADDR

9 3、简单模型机的微程序流程图

10 控制台流程图

11 控制台操作 作用: 控制:开关KB、KA 写内存:手动从开关装入程序和数据→主存中 读内存:手动检查写入的程序和数据是否正确
执行程序:启动程序执行 控制:开关KB、KA 拨CLR开关“1→0→1”后,按START微动开关 KB KA 控制台指令 功能 10 读内存 对内存从0号单元开始连续进行读操作 01 写内存 对内存从0号单元开始连续进行写操作 00、11 启动程序 转入取指令微程序段入口开始执行

12 4、简单模型机的微指令地址分配 首先确定那些J1#~J5#微指令的下址字段,然后再确定它散转到的微指令的地址。
然后其他顺序执行的微指令就随意安排。 本实验中只涉及J1#和J3#。 “J1#”微指令的下址字段:10H “J3#”微指令的下址字段:08H

13 4、简单模型机的微指令地址分配 J1#=0时,根据指令的操作码(OP)I7~I4进行散转,产生该条指令的微程序入口地址。散转规则:
MA6~MA0 = MA6~MA0 || 010I5I4I3I2 当I7I6≠11时(即指令格式1、2、3的指令) , MA6~MA0 = MA6~MA0 || 000I7I6I5I4

14 4、简单模型机的微指令地址分配 J3#=0时,根据开关KB、KA状态进行转移;主要用于控制台操作指令。散转规则:
MA6~MA0 = MA6~MA0 || 00000KB KA

15 5、简单模型机的微代码 微地址 微代码 BTO OTB FUNC FS S3 - S0 M Ci N 下址 微指令注释 00H 01C008 000 011 1 000000 J(3) 01H DC4002 110 111 PC->AR,PC+1 02H 610003 010 RAM->IR 03H 00C010 001 J(1) 04H C10005 RAM->AR 05H 820001 100 IN->DR 06H C10007 07H 410020 RAM->DA2 08H 000001 NULL 09H DC400C 0AH C40E0F 001110 0->AR 0BH 0CH 21000D RAM->DA1 0DH C40E0E

16 5、简单模型机的微代码 0EH 058109 000 001 011 000001 0001001 DA1->OUT 0FH
微地址 微代码 BTO OTB FUNC FS S3 - S0 M Ci N 下址 微指令注释 0EH 058109 000 001 011 000001 DA1->OUT 0FH 22001C 100 000000 IN->DA1 10H NULL 1CH DC401D 110 111 1 PC->AR, PC+1 1DH 04BE0A 111110 DA1->RAM 20H 300021 DR->DA1 21H 87E501 100101 DA1+DA2->DR,CyNCn# 22H C10023 010 RAM->AR 23H 108001 DR->RAM 24H C10025 25H 210026 RAM->DA1

17 5、简单模型机的微代码 26H DC4027 110 111 000 1 000000 0100111 PC->AR, PC+1
微地址 微代码 BTO OTB FUNC FS S3 - S0 M Ci N 下址 微指令注释 26H DC4027 110 111 000 1 000000 PC->AR, PC+1 27H C10028 011 RAM->AR 28H 058101 001 000001 DA1->LED 29H 21002A 010 RAM->DA1 2AH E44101 RAM->PC 30H DC4004 PC->AR,PC+1 31H DC4006 32H DC4022 33H DC4024 34H DC4029

18 6、微代码装入方法 手动装入:通过24位微代码开关和7位微地址开关 联机装入:通过上位机(虚拟仿真)软件 上位机软件工作方式:
联机主控:可以通过软件来控制和动态显示指令在实验仪上执行过程;上下载程序、微程序 单步程序、单步微程序、连续执行、停止执行 联机从控:软件只用来上下载程序、微程序。 仿真方式:不使用实验仪,所有部件用软件模拟仿真实现。

19 7、程序的机器码装入方法 手动装入:执行控制台“写内存”操作,通过8位输入开关输入程序和数据 联机装入:通过上位机软件下载到实验仪内存

20 手动装入程序机器码 执行控制台“写内存”操作,通过8位输入开关输入程序和数据
将编程开关置于“RUN”状态,RUN#/STEP开关置于“STEP”状态。 操作CLR开关,使CLR信号“1→0→1”,程序计数器PC清零,微地址清零。 开关KBKA置为“0 1”,即写内存状态。

21 手动装入程序机器码 按动启动键START一次,则从控存00H单元开始执行微指令,微地址显示灯显示“ ”,第二次按动START键,微地址显示灯显示“001111”,此时,将数据开关置为要写入的机器指令代码或数据,再按动START键两次,即完成该条指令的写入,同时PC指向下一个内存单元。继续按动START键,当且仅当微地址显示灯显示“ ”时,才从开关上置入指令代码,直至所有的程序代码写入完毕。

22 手动校验程序机器码 执行控制台“读内存”操作,通过输出设备(8位LED显示灯)显示程序和数据代码
将编程开关置于“RUN”状态,RUN#/STEP开关置于“STEP”状态。 操作CLR开关,使CLR信号“1→0→1”,程序计数器PC清零,微地址清零。 开关KB KA置为“1 0”,即读内存状态。

23 手动校验程序机器码 按动启动键START一次,则从控存00H单元开始执行微指令,微地址显示灯显示“ ”,第二次按动START键,微地址显示灯显示“ ”, 第三次按动START键,微地址显示灯显示“ ”, 第四次按动START键,微地址显示灯显示“ ”,此时,输出设备(OUTPUT DEVICE)发光管上将显示内存00H号单元的内容,检查是否与写入的数据相同。 继续按动START键,当且仅当微地址显示灯显示“ ”时,发光管上显示的内容才是内存的数据。每个循环PC会自动增1,由此,可检查后续单元的内容是否正确。

24 8、启动程序执行 脱机执行:执行控制台“启动程序”操作 联机执行: KB KA=00/11,编程开关(三态)= RUN
单步执行:RUN#/STEP=STEP 连续执行:RUN#/STEP=RUN# CLR信号“1→0→1”,使微地址清零,PC清零,即程序首址为00H 按动START键,单步执行(微指令)或者连续执行。 联机执行: 联机主控:通过软件控制 联机从控:同脱机执行的控制方法

25 使用上位机软件装入程序和微程序 主控模式下: 打开文件 下装 运行 后缀为.yyy 从上位机装程序和微程序到实验仪
KBKA=11/00,CLR=1-0-1,编程开关=RUN 运行

26 三、实验内容及要求 1、要求运行以下测试程序,观察程序执行的流程,并检验结果是否正确。 助记符 备注 IN R0,[00H] IN →R0
ADD R0,[10H] R0+[10H] → R0 STA R0,[10H] R0 → [10H] OUT [10H] ,[00H] [10H] → LED JMP 00H 00H→PC

27 测试程序机器代码 地址 内容 助记符 备注 00H 11000000B ;IN R0,[PORTAR] IN ->R0 01H
;ADD R0,[10H] R0+[10H]-> R0 03H B ;直接地址10H 04H B ;STA R0,[10H] R0->[10H] 05H ;直接地址 10H 06H B ;OUT [10H] ,[PORTAR] [10H]->LED 07H 08H 09H B ;JMP 00H 00H→PC 0AH ;直接地址00H …… 10H ;和 ;须检验的结果

28 三、实验内容及要求 2、将程序中的R0更换为R2,应如何修改?
3、若将微程序流程图中的“J1#”散转的微指令下址改为20H,会发生什么情况? 4、将指令系统5条指令的格式修改为格式 1 ,指令散转地址是多少? 5、如果指令OUT的功能修改为以下所示,则如何修改微程序流程图和微代码? I7 I6 I5 I4 I3 I2 I1 I0 (4)OUT [PORTAR],DR 功能:DR→LED; 11 0011 DR PORTAR

29 四、实验步骤 1、按图连接实验线路,并检查。 2、用串口线连接实验仪和微机。 3、运行上位机软件,选择相应串口,选择“联机主控”工作方式。
4、打开文件“简单模型机的设计与实现.yyy”,并下载。 5、实验仪清零(CLR开关),上位机清零(点击Clr按钮),实验仪KBKA=00/11。 6、单步或者连续运行程序。 7、检查结果是否正确。 8、若结果正确,使用“联机从控”工作方式实验。

30 连线图


Download ppt "计算机组成原理课程设计 实验四 简单模型机实验."

Similar presentations


Ads by Google