单寄存器算术存数转移输入输出指令实验计算机设计(第1组).doc

上传人:风**** 文档编号:970730 上传时间:2024-03-19 格式:DOC 页数:22 大小:325KB
下载 相关 举报
单寄存器算术存数转移输入输出指令实验计算机设计(第1组).doc_第1页
第1页 / 共22页
单寄存器算术存数转移输入输出指令实验计算机设计(第1组).doc_第2页
第2页 / 共22页
单寄存器算术存数转移输入输出指令实验计算机设计(第1组).doc_第3页
第3页 / 共22页
单寄存器算术存数转移输入输出指令实验计算机设计(第1组).doc_第4页
第4页 / 共22页
单寄存器算术存数转移输入输出指令实验计算机设计(第1组).doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

1、 成 绩 评 定 表学生姓名班级学号专 业计算机科学与技术课程设计题目单寄存器算术存数转移输入输出指令实验计算机设计(第1组)评语组长签字:成绩日期 2014年7月 日 课程设计任务书学 院信息学院专 业计算机科学与技术学生姓名学 号设计题目单寄存器算术存数转移输入输出指令实验计算机设计(第1组)内容及要求:利用EL-JY-II型计算机组成原理实验仪提供的硬件资源,通过设计(包括整机结构设计、指令设计、微程序设计、微指令设计、调试程序设计等)、组装、调试三个步骤完成一台微程序控制的简单实验计算机的设计。具体要求如下:1、 掌握实验计算机的整机结构。熟悉实验计算机的组装和调试方法。2、 设计如下

2、几条机器指令的格式,指令格式可以采用单字长或双字长设计。算术运算指令:ADD R0,ADDR (功能R0+(ADDR)- R0)存数指令: STA R0,ADDR (功能R0 -ADDR)转移指令: JMP ADDR (功能ADDR - PC)输入输出指令:IN #DATA,R0 (功能DATA - R0)OUT ADDR (功能(ADDR)- LED输出)3、 设计微指令的格式,编写上述每条机器指令所对应的微程序,并上机调试。4、 通过如下程序的编写调试,验收机器指令、微指令、微程序的设计结果。IN #data,R0ADD R0,addr1STA R0,addr2OUT addr2JMP 0

3、0HAddr1: XXAddr2: XX进度安排:第19周:布置课程设计任务,查阅资料,分组设计,实验室组装与调试。 第20周:调试,验收,答辩,编写课程设计报告。指导教师: 2014年 月 日专业负责人: 2014年 月 日学院教学副院长: 2014年 月 日 目 录1.计算机的设计1.1设计目的1.2设计要求1.3设计设备1.4模型机结构设计1.5指令系统的设计1.6微指令的格式设计及微操作控制部件的组成原理1.6.2微操作控制信号功能1.6.3微程序的控制方式设计1.6.4微程序控制部件组成原理1.7微程序设计1.7.1微指令流程图1.7.2微程序中各微指令的二进制编码与十六进制编码1.

4、8编写调试程序1.8.1调试程序的微代码1.8.2调试程序的机器代码2.计算机的组装3.计算机的调试3.1调试前准备工作3.1.1写入微代码3.1.2读微代码及校验微代码3.1.3写机器指令3.1.4读机器指令及校验机器指令3.1.5运行程序3.2调试步骤和调试结果3.2.1调试步骤操作3.2.2结果显示3.3分析结果是否正确3.4设计困难和心得体会4.参考文献 1.计算机的设计1.1设计目的:利用EL-JY-II型计算机组成原理实验仪提供的硬件资源,通过设计(包括整机结构设计、指令设计、微程序设计、微指令设计、调试程序设计等)、组装、调试三个步骤完成一台微程序控制的简单实验计算机的设计。1.

5、2设计要求:1.2.1掌握实验计算机的整机结构。熟悉实验计算机的组装和调试方法。1.2.2设计如下几条机器指令的格式,指令格式可以采用单字长或双字长设计。算术运算指令:ADD R0,ADDR (功能R0+(ADDR)- R0)存数指令: STA R0,ADDR (功能R0 -ADDR)转移指令: JMP ADDR (功能ADDR - PC)输入输出指令:IN #DATA,R0 (功能DATA - R0)OUT ADDR (功能(ADDR)- LED输出)1.2.3设计微指令的格式,编写上述每条机器指令所对应的微程序,并上机调试。1.2.4通过如下程序的编写调试,验收机器指令、微指令、微程序的设

6、计结果。IN #data,R0ADD R0,addr1STA R0,addr2OUT addr2JMP 00HAddr1: XXAddr2: XX1.3设计设备:EL-JY-II型计算机组成原理实验系统一套,排线若干。1.4模型机结构设计:此模型机是由运算器,控制器,存储器,输入设备,输出设备五大部分组成。1.运算器又是有299,74LS181完成控制信号功能的算逻部件,暂存器LDR1,LDR2,及三个通用寄存器R0,R1,R2等组成。2.控制器由程序计数器PC、指令寄存器、地址寄存器、时序电路、控制存储器及相应的译码电路组成。3.存储器RAM是通过CE和W/R两个微命令来完成数据和程序的的存

7、放功能的。4输入设备是由置数开关SW控制完成的。5.输出设备有两位LED数码管和W/R控制完成的数据总线(D_BUS) LPC 程序计数器PCALU-G LOAD PC-G M CN ALU S3S2S1S0 数据暂存器LT1 数据暂存器LT2 LAR 地址寄存器 地址总线(ADDR_BUS)LDR1 LDR2 存储器(MEM) READ WRITE 寄存器R0 微控器 脉冲源及时序 LDR0 R0-G 指令寄存器 C-G LDIR 输入设备 W/R 控制门 输出设备 数据 D-G 控制信号 图1-4模型机结构框图 图1.1中运算器ALU由U7-U10四片74LS181构成,暂存器1由U3、U

8、4两片74LS273构成,暂存器2由U5、U6两片74LS273构成。微控器部分控存由U13-U15三片2816构成。除此之外,CPU的其他部分都由EP1K10集成。存储器部分由两片6116构成16位存储器,地址总线只有低八位有效,因而其存储空间为00H-FFH。输出设备由底板上的四个LED数码管及其译码、驱动构成,当D-G和W/R均为低电平时将数据总线的数据送入数码管显示。在开关方式下,输入设备由16位电平开关及两个三态缓冲芯片74LS244构成,当DIJ-G为低电平时将16位开关状态送上数据总线。在键盘方式或联机方式下,数据可由键盘或上位机输入,然后由监控程序直接送上数据总线,因而外加的数

9、据输入电路可以不用。本系统的数据总线为16位,指令、地址和程序计数器均为8位。当数据总线上的数据打入指令寄存器、地址寄存器和程序计数器时,只有低八位有效。1.5指令系统的设计:指令格式、指令编码、指令助记符、指令功能、操作数的寻址方式如下:1)输入指令:IN #DATA, R0指令功能:#DATA R0指令格式:7 6 5 43 2 1 000 0 00 0 0 0表1-5-1机器码:000000002)加法指令:ADD ADDR,R0 指令功能: R0+ADDR- R0指令格式: 7 6 5 43 2 1 00 0 0 10 0 0 0ADDR表1-5-2机器码:000100000000xx

10、xx 3)转移指令:JMP ADDR指令功能:ADDR- PC指令格式: 7 6 5 43 2 1 00 1 0 00 0 0 0 ADDR 表1-5-3机器码:01000000xxxxxxxx4)存数指令:STA ADDR,R0 指令功能: R0-ADDR指令格式: 7 6 5 43 2 1 00 0 1 00 0 0 0ADDR 表1-5-4机器码:00100000xxxxxxxx5)输出指令:OUT ADDR 指令功能: ADDR - LED指令格式: 7 6 5 43 2 1 00 0 1 10 0 0 0ADDR 表1-5-5 机器码: 00110000xxxxxxxx1.6微指令的

11、格式设计及微操作控制部件的组成原理1.6.1微指令格式:本系统设计的微指令字长共24位,其控制位顺序如下表1-8: 24232221201918171615 14 1312 11 109 8 7654321S3S2S1S0MCnWE1A1BF1F2F3uA5uA4uA3uA2uA1uA0表1-6-1微指令格式其中uA5-uA0为6位后续地址,F1,F2,F3为三个译码字段,分别由三个控制位译出多位,。S3S0为选择运算,M为逻辑算数操作选择,Cn表示有无进位,WE是读写控制,1A和1B控制规则如下:两者均为00时为无操作,01是输出LED选通控制,10是内存RAM选通控制,11是输入电路选通控

12、制。1.6.2微操作控制信号功能:S3、S2、S1、S0、M、CN是控制运算器的逻辑和算术运算的微命令。WE是写内存的微命令,状态“1”有效。1A、1B是输入电路选通、内存RAM选通、输出LED选通控制微命令,分别对应状态“11”、“10”、“01”。 状态“00”为无效。F1、F2、F3为三个译码字段,分别由三个控制位经指令译码电路74138译码输出8种状态,前7种状态分别对应一组互斥性微命令中的一个,状态“111”为无效。F3字段包含P1- P4四个测试字位。其功能是根据机器指令代码及相应微指令代码进行译码测试,使微程序转入相应的微地址入囗,从而实现微程序的顺序、分支、循环运行。、三个字段

13、的编码方案如表1-9:F1字段F2字段F3字段15 14 13选择12 11 10选择9 8 7选择0 0 0LDRi0 0 0RAG0 0 0P10 0 1LOAD0 0 1ALU-G0 0 10 1 0LDR20 1 0RCG0 1 00 1 10 1 10 1 11 0 0LDR11 0 01 0 01 0 1LAR1 0 1PC-G1 0 1LPC1 1 0LDIR1 1 01 1 0P4表1-6-2译码字段编码控制操作为P4测试,它以CA1、CA2作为测试条件,出现了写机器指令、读机器指令和运行机器指令3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条

14、微指令占用控存一个微地址单元随意填写。其中微命令LDRi表示写寄存器操作;微命令LOAD表示程序计数器PC写操作;微命令LDR2表示数据暂存器LT2写操作;微命令LDR1表示数据暂存器LT1写操作;微命令LAR表示地址寄存器AR写操作;微命令LDIR表示指令寄存器写操作;微命令RAG表示源寄存器读操作;微命令ALU-G表示运算器输出操作;微命令RCG表示目的寄存器读操作;微命令PC-G表示程序计数器PC读操作;微命令LPC表示程序计数器PC选通操作;微命令299-G表示移位寄存器读写操作;微命令RBG表示变址寄存器读操作。机器指令的执行过程如下:首先将指令在外存储器的地址送上地址总线,然后将该

15、地址上的指令传送至指令寄存器,这就是“取指”过程。之后必须对操作码进行P1测试,根据指令的译码将后续微地址中的某几位强制置位,使下一条微指令指向相应的微程序首地址,这就是“译码”过程。然后才顺序执行该段微程序,这是真正的指令执行过程。在所有机器指令的执行过程中,“取指”和“译码”是必不可少的,而且微指令执行的操作也是相同的,这些微指令称为公用微指令。1.6.3微程序的控制方式设计 微程序入口地址形成方法:断定方式与增量方式不同,它不采用PC,微指令地址由微地址寄存器AR提供。在微指令格式中,设置一个下地址字段,用于指明下一条要执行的微指令地址。当一条微指令被取出时,下一条微指令的地址(即下地址

16、字段)送AR。它相当于每条微指令都具有转移微指令的功能。采用这种方法就不必设置专门的转移微指令,但增加了微指令字的长度。 1.6.4微程序控制部件组成原理1 运算器单元(ALU UINT)运算器单元由以下部分构成:两片74LS181构成了并串型8位ALU;两个8位寄存器DR1和DR2为暂存工作寄存器,保存参数或中间运算结果。ALU的S0S3为运算控制端,Cn为最低进位输入,M为状态控制端。ALU的输出通过三态门74LS245连到数据总线上,由ALU-B控制该三态门。2 寄存器堆单元(REG UNIT)该部分由3片8位寄存器R0、R1、R2组成,它们用来保存操作数用中间运算结构等。三个寄存器的输

17、入输出均以连入数据总线,由LDRi和RS-B根据机器指令进行选通。3 指令寄存器单元(INS UNIT)指令寄存器单元中指令寄存器(IR)构成模型机时用它作为指令译码电路的输入,实现程序的跳转,由LDIR控制其选通。4 时序电路单元(STATE UNIT)用于输出连续或单个方波信号,来控制机器的运行。5 微控器电路单元(MICROCONTROLLER UNIT)微控器主要用来完成接受机器指令译码器送来的代码,使控制转向相应机器指令对应的首条微代码程序,对该条机器指令的功能进行解释或执行的工作。由输入的W/R信号控制微代码的输出锁存。由程序计数器(PC)和地址寄存器(AR)实现程序的取指功能。6

18、 逻辑译码单元(LOG UNIT)用来根据机器指令及相应微代码进行译码使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,及工作寄存器R0、R1、R2的选通译码。7 主存储器单元(MAIN MEM)用于存储实验中的机器指令。8 输入输出单元(INPUT/OUTPUT DEVICE)输入单元使用八个拨动开关作为输入设备,SW-B控制选通信号。输出单元将输入数据置入锁存器后由两个数码管显示其值。微程序控制原理图: 图1-6-4微程序控制原理图1.7微程序设计 1.7.1微指令流程图 开始 01 PC AR,PC+102RAM D_BUS IR 31P(1)测试 IN ADD STA

19、 OUT JMP 10 11 12 23 24 D_INPUT R0 PC AR PC AR PC AR PC AR 01 PC+1 PC+1 PC+1 PC+1 03 07 31 34 RAM D_BUS RAM D_BUS RAM D_BUS RAM D_BUS D_BUS AR D_BUS AR D_BUS AR D_BUS PC 04 17 32 RAM D_BUS R0 D_BUS RAM D_BUS 01 D_BUS LT2 D_BUS RAM D_BUS LT1 05 33 R0 LT1 01 LT1 LED 06 (LT1)+(LT2) R0 0101 图1-7-1-1 控制开

20、关 00 20 P(4)测试 MWE(10) MRD(00) RUN(11) PC AR,PC+121 PC AR,PC+1 20 23(D_INPUT) D_BUS LT1 24 RAM D_BUS LT1 22 01 LT1 RAM 30 LT1 LED 27 图1-7-1-21.7.2微程序中各微指令的二进制编码,十六进制编码下表为根据微程序流程图设计的各指令二进制微代码表(1)IN #DATA,R0微地址S3 S2 S1 S0 M CN WE 1A 1BF1F2F3UA5UA00000010 0 0 0 0 0 0 0 01011011010000100000100 0 0 0 0 0

21、 0 1 01101111110110010110010 0 0 0 0 0 0 1 01101110000010000010000 0 0 0 0 0 0 1 1000111000000001 表1-7-2-1输入指令代码表(2)ADD R0,addr1 微地址S3 S2 S1 S0 M CN WE 1A 1BF1F2F3UA5UA00000010 0 0 0 0 0 0 0 01011011010000100000100 0 0 0 0 0 0 1 01101111110110010110010 0 0 0 0 0 0 1 01101110000010000010000 0 0 0 0 0

22、 0 0 01011011010000010000010 0 0 0 0 0 0 1 01011011010000100000100 0 0 0 0 0 0 1 01101111110110010110010 0 0 0 0 0 0 0 01000001110001100001100 1 1 0 0 0 0 0 0000001111000001表1-7-2-2加法指令代码表 (3)STA R0,addr2 微地址S3 S2 S1 S0 M CN WE 1A 1BF1F2F3UA5UA00000010 0 0 0 0 0 0 0 01011011010000100000100 0 0 0 0 0

23、 0 1 01101111111001011001010 0 0 0 0 0 0 1 01101110000100100100100 0 0 0 0 0 0 0 01011011010001110001110 0 0 0 0 0 0 1 01011111110011110011110 0 0 0 0 0 1 1 0111000111000001 表1-7-2-3存数指令代码表(4)OUT addr2微地址S3 S2 S1 S0 M CN WE 1A 1BF1F2F3UA5UA00000010 0 0 0 0 0 0 0 01011011010000100000100 0 0 0 0 0 0 1

24、 01101111111001011001010 0 0 0 0 0 0 1 01101110000100110100110 0 0 0 0 0 0 0 01011011010110010110010 0 0 0 0 0 0 1 01011111110110100110100 0 0 0 0 0 0 1 01001111110110110110110 0 0 0 0 1 1 0 1111001111000001 表1-7-2-4输出指令代码表(5)JMP 00H 微地址S3 S2 S1 S0 M CN WE 1A 1BF1F2F3UA5UA00000010 0 0 0 0 0 0 0 0101

25、1011010000100000100 0 0 0 0 0 0 1 01101111111001011001010 0 0 0 0 0 0 1 01101110000101000101000 0 0 0 0 0 0 0 01011011010111000111000 0 0 0 0 0 0 0 0001111101000001 表1-7-2-5转移指令代码表 1.8编写调试程序1.8.1调试程序的微代码: 表1-8-1微代码表微地址(八进制)微地址(二进制)微代码(十六进制)00000000007F9001000001005B4202000010016FD903000011015FC40400

26、0100012FC5050001010041C6060001109403C107000111015FCF10001000018E0111001001005B4312001010005B4713001011005B4E14001100005B56150011010371C116001110015FCF17001111014FD520010000005B5221010001005B5422010010014FD723010011007FC12401010001CFD82501010106F3C126010110011F412701011106F3D030011000FF73D13101100101

27、6E081.8.2调试程序的机器代码: 1-8-2机器代码表地址(十六进制)指令助记符机器指令(十六进制)00IN #data,R0001ADD R0,0AH10020A03STA R0,0BH20040B05OUT 0BH30060B07JMP 00H40080009000A0AH010B0BH012. 计算机组装3.计算机的调试3.1调试前准备工作3.1.1写入微代码1)写:在编辑框中输入实验指导书中的微指令程序(格式:两位八进制微地址+空格+六位十六进制微代码),或直接打开随机附带的程序EX8.MSM,将实验箱上的K4K3K2K1拨至“0010”写状态,然后按写入按钮,微程序写入控制存储

28、器电路;2)读:将实验箱上的K4K3K2K1拨至“0100”读状态,在“读出微地址”栏中填入两位八进制地址,按读出按钮,则相应的微代码显示在“读出微代码”栏中;3)保存:按保存按钮,微程序代码保存在一给定文件(*.MSM)中;4)打开:按打开按钮,打开已有的微程序文件,并显示在编辑框中 写入机器指令操作代码将开关K1K2K3K4拨到写状态即K1 off、K2 on、K3 off、K4 off,其中K1、K2、K3在微程序控制电路,K4在24位微代码输入及显示电路上。在监控指示灯滚动显示【CLASS SELECt】状态下按【实验选择】键,显示【ES-_ _ 】输入06或6,按【确认】键,显示为【

29、ES06】,表示准备进入实验九程序,也可按【取消】键来取消上一步操作,重新输入。再按下【确认】键,显示为【CtL1=_】,表示对微代码进行操作。输入1显示【CtL1_1】,表示写微代码,也可按【取消】键来取消上一步操作,重新输入。按【确认】显示【U-Addr】,此时输入【000000】6位二进制数表示的微地址,然后按【确认】键,也可按【取消】键来取消上一步操作,重新输入,微地址显示灯(六个黄色指示灯,八进制)全灭,显示刚才输入的微地址,也可按【取消】键来取消上一步操作,重新输入。同时监控指示灯显示【U_CodE】,显示这时输入微代码【007F90】,该微代码是用6位十六进制数来表示前面的24位

30、二进制数,注意输入微代码的顺序,先右后左,此过程中可按【取消】键来取消上一次输入,重新输入。按【确认】键则显示【PULSE】,按【单步】完成一条微代码的输入,重新显示【U-Addr】提示输入表1-17第二条微代码地址。 图3-1输入代码3.1.2读微代码及校验微代码:先将开关K1K2K3K4拨到读状态即K1 off、K2 off、K3 on、K4 off,在监控指示灯显示【U_Addr】状态下连续按两次【取消】键,退回监控指示灯显示【ES06】状态,也可按【RESET】按钮对单片机复位,使监控指示灯滚动显示【CLASS SELECt】状态,按【实验选择】键,显示【ES-_ _ 】输入06或6,

31、按【确认】键,显示【ES06】。按【确认】键,显示【CtL1=_】时,输入2,按【确认】显示【U_Addr】 ,此时输入6位二进制微地址,进入读代码状态。再按【确认】显示【PULSE】,此时按【PULSE】键,显示【U_Addr】,微地址指示灯显示输入的微地址,微代码显示电路上显示该地址对应的微代码,至此完成一条微指令的读过程。对照表7-2表检查微代码是否有错误,如有错误,可按步骤2写微代码重新输入这条微代码的微地址及微代码。1)写:在编辑框中输入实验指导书中机器指令程序(格式:两位十六进制地址+空格+2位或 4位十六进制代码),或直接打开随机附带的程序EX8.ASM,将实验箱上的K4K3K2

32、K1拨至 “0101”运行状态,拨动“CLR”开关对地址和微地址清零,然后按写入按钮,机器指令写 入存储器电路;注:对于8位机,十六进制代码为2位;对于16位机,十六进制代码可以是2位,也可以是4位。 2)读:将实验箱上的K4K3K2K1拨至“0101”运行状态,在“读出指令地址”栏中填入两位十六进制地址,拨动“CLR”开关对地址和微地址清零,然后按读出按钮,则相应的指令代码显示在“读出指令代码”栏中。 3)保存:按保存按钮,机器指令程序保存在一给定文件(*.ASM)中。 4)打开:按打开按钮,打开已有的机器指令程序文件,并显示在编辑框中。 5)单步:在运行状态下运行程序前,先拨动“CLR”开关对地址

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 教学课件 > 中学教案课件 > 初中(七年级)课件教案

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922