资源预览内容
第1页 / 共40页
第2页 / 共40页
第3页 / 共40页
第4页 / 共40页
第5页 / 共40页
第6页 / 共40页
第7页 / 共40页
第8页 / 共40页
第9页 / 共40页
第10页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
控制器是用来控制、指挥程序和数 据的输入、运行以及处理运算结果的 部件,控制器的设计可分为组合逻辑 设计和微程序设计。本实验将通过微程序的编制、装入 和调试,来完成机器指令的执行。实验四 微程序控制器实验实验目的o 掌握微程序控制器的组成原理。 o 掌握机器指令与微指令的关系。 o 学习微程序的编制、装入、调 试基本方法。实验内容根据数据通路框图(图2-5-1)、微控制器 原理图(图1-2-12(a))、微程序流程图( 图2-5-2)、机器指令程序(表2-5-1)、微指 令格式(表2-5-2),用微指令序列来实现给 定的六条机器指令IN、ADD、MOV、OUT 、JMP。 实验原理机器指令与微程序的关系o 一条机器指令对应一段微程序。 o 微程序是由若干条微指令组成的,用来完成 机器指令所规定的功能。 o 微指令是由可以在同一节拍完成的某些功能 的微操作组成的。 指令译码要做什么找到微程序的入口地址指令输入格式机器指令地址及代码 输入格式:PXX XX程序地址 机器代码 微程序地址及微码 输入格式:MXX XX XX XX XX微程序地址 32位微指令代码单字节指令机器指令格式机器指令格式7 6 5 43 21 0OP-CODERSRDRS 或 RD选定的寄存器00 01 10 11R0 R1 R2 SP寄存器:输入用LDR0 输出用CBA CBA总线数据来源000RAM 或SWB001PCB010ALUB011299B100RSB101RDB110RIB111SPB例例:ADD R0:ADD R0,R1 0110 0 1 0 0R1 0110 0 1 0 0ADD R1 ADD R1,R2 0110 1 0 0 1R2 0110 1 0 0 1A字段操作码源寄存器目的寄存器操作码 参与译码指出源寄存器指出目的寄存器机器指令格式双字节指令,其中一个地址在第二字节,不用 的寄存器编码任意(一般写为零)。双字节指令(格式一)双字节指令(格式一)7 6 5 43 2 1 0第一字节OPCODERSRD第二字节D双字节指令(格式二)双字节指令(格式二)DREGOP0M01 03 246 57直接寻址 间接寻址 变址寻址 立即寻址E=D E=(D) E=(R2) +D D为立即数00 01 10 11说明有效地址E寻址模式M机器指令格式一个地址在第二字节 ,另一个地址为寄存 器, 选择总线数据应 选择Rd,即CBA=101R2为变址寄存器机器指令格式001101 XX011000 010001XX 000100XX 010101XX XX1000XX XX00000000addrIMMaddr第一字节第一字节 第二字节第二字节地址 操作码操作码 源源 目的目的IN R0IN R0,SWSWMOV R1,#XXHMOV R1,#XXHADD R1ADD R1,R0R0MOV addrMOV addr,R1R1OUT LEDOUT LED,addraddrJMP 00JMP 00开关数据R0立即数IMMR1R0+R1R1R1 addr(addr)LED00PC000103040608不能与程序地址重叠微指令格式微指令格式 M25 M24 M23 M22M21M20 M19 M18 M17M16M15 M14M13M12M11M10M9CBAAR保留字 PX3A9A8CELOADCNMS0S1S2S3PX2M8M7M6M5M4M3M2876543M1M0LDARLDPCLDIR LDDR2LDDR1 LDR0WEUA0UA1 UA2 UA3 UA4 UA5 PX1 SW-BLDR0:将总线数据写入目的寄存器;LDIR:将总线数据写入指令寄存器;LOAD,LDPC:LOAD=1、LDPC=1,将总线数据写入PC; LOAD=0、LDPC=1、CBA=001,PC+1PC;UA5 、UA4、 UA3、UA2、 UA1 、 UA0:微指令后续地址。B字段PX3PX2PX1选择测试字000关闭测试001P( 1 )测指令的高4位010P( 2 )测指令的3、2位011P( 3 )测试Z和CY微指令格式微指令格式 o UA0-UA5为6位后续微地址(注意:其微地址 的排列顺序为前低后高)。o C、B、A 为A字段,决定总线上的信息来源。o PX3、PX2、PX1为 B字段,其功能是:1. 根据机器指令及相应微代码进行译码,使 微程序转入相应的微地址入口;2. 根据Z和CY标识产生相应的后续微地址。o 本实验采用复杂模型机方式(控存06单元的最 高字节不能为40H)。微指令格式微指令格式 P(X):识别什么操作及如何确定下地址 基地址:UA5-UA0o P(1):测试第一字节的高4位。 实际有效地址为E=基地址第一字节的高4位(基地址的低4位必须为“0”)。例:UA5UA0为20,第一字节8410000100 E=208=28微指令格式微指令格式 o P(2):测试第一字节的3、2位。实际有效地址为E=基地址第一字节的3、2位(基地址的低2位为0)。例:UA5UA0为1C,第一字节84 10000100E=1C01=1D微指令格式微指令格式 o P(3):测试进位(CY)和结果为零(Z)标志。两标志皆为0时,微指令的下地址为UA5UA0, 两标志 之一为1时,下地址为将UA4置“1“后的 下地址.也就是说测试(P3)微指令的下地址的 UA4必须是0。 例: UA5UA0为0A 满足条件:E=1A不满足条件:E=0A基地址处如果不用,须写一条“空操作”。 例:M10 00 00 00 80微指令格式微指令格式 UA5 4 3 2 1 00 0 1 0 1 0 0 1 1 0 1 00 0 1 0 1 0未定义(12,17,19-1F)运行微程序NOP(10)IN(11)ADD(16)MOV(13)OUT(18)JMP(15)0110+0 NOP0110+1 SWRD10+60104 (DR1)+ (DR2)RD03 RSDR2RDDR110+3 PCAR PC+10105 RSRAM07 RAMAR0A10+80B RAMLED01RAMAR09 RAMPC0110+5 NOP01微程序流程图020100NOPPCAR PC+1RAMIRP(1)MOV(14)08 (AR)RD0110+4 PCAR PC+1PCAR PC+1PCAR PC+1实验连线图实验步骤o 按图2-5-3连接相关的实验电路。 o 将实验设备设置在“模型机”状态,点击桌面 上 图标启动DAIS系统软件,并选定: 串口为COM1;波特率为9600;运行方式为 “微运行”;连接硬件实验系统进入主界面。 o 在编辑状态下,依次输入机器代码及对应微 指令码,“保存”并“装载”到实验设备的控存 和内存中。 o 用微单步运行微指令程序,对照微程序流程 图,观察实验设备平台上的相关寄存器当前 状态及微地址指示灯是否和其流程图中表示 的一致。检查、运行、记录并对照调试运行 后的结果是否和预测值一致。注意:在运行程序时不可同时打开多个主界面窗口。实验步骤8102000011111SWRD80000000110NOP 8000000006设置复杂模型机0504030A108000111102RAMIR40600020111101PCAR, PC+180000000100NOP3区2区1区0区01微指令后续地址( 基地址)2345678910111213141516171819202122232425地址SW-B PX1 UA5 UA4 UA3 UA2 UA1 UA0 WE LDR0 LDDR1 LDDR2 LDIR LDPC LDAR PX2 S3 S2 S1 S0MCN LOAD CE A8 A9 PX3 保留字 ARABC控 制 信 号微指令代码 十六进制3区域2区域1区域0区域区号微操作8102000011(返01)0A108000024060002001800000000011IN R13区2区1区0区微代码 微操作微地址微程序 入口地址机器指令设计举例:IN R1,SWDais-CMH+实验设备位置图SW地址 总线内存锁存 输出DR2DR1299R0R1R2指令寄 存器IR程序计 数器PC控存ALU数据 总线微地址复位微单步综合设计自定义指令系统的设计与实现用复杂模型机方式完成下列十组机器指令序列中每条指令的微程序设计 (选其中之一),达到能够程单步运行状态 。实验内容实验内容实验目的实验目的综合运用所学计算机原理和汇编知综合运用所学计算机原理和汇编知 识,结合前面识,结合前面5 5个实验内容。设计微程个实验内容。设计微程 序实现题目规定的指令。序实现题目规定的指令。1. MOV R0,XXH MOVR1,10H ADD R0,R1 JCZL1;相对寻址 MOV11H,R0 L1: HLT综合设计题目综合设计题目2.MOV R1,12HMOV10H,R1CLRR1ADDR1,10H INC10HADDR1,10H HLT3.MOV R2,XXHSUBR2,11HRLCR2MOV 20H,R2 HLT综合设计题目MOV R0,#0MOV R2,#20HMOV R1,#0FBH L5: ADD R0,R2+8;变址寻址INC R2INCR1JCZL6 ;相对寻址JMP L5;直接寻址 L6:HLT4. 4. 求求28H28H为起始地址连续为起始地址连续5 5个存储单元中的内容的个存储单元中的内容的和,结果在和,结果在R0R0中(要求中(要求5 5个数的和不大于个数的和不大于255255)。)。综 合 设 计 题 目IN R0,SWIN R1,SWADDR0,R1JCZ L7;相对寻址MOV R2,#0FFH JMPL8;直接寻址 L7: MOV R2,#0 L8: OUT R0HLT5.5.从开关输入从开关输入2 2个数求和,结果在缓冲输出显示,个数求和,结果在缓冲输出显示, 和大于和大于255255在在R2R2中计作中计作“ “0FFH”0FFH”,否则计作,否则计作“ “0”0”。综 合 设 计 题 目CLR R2MOVR1,20HMOV 10H, R1MOV R1, 10HCMP R1, #80H ;比较JZC L4 ;相对寻址MOV R2, #0FFHL4: HLT09031076.测试测试20H20H单元中的数据,如果为单元中的数据,如果为80H80H,将,将FFFF写入写入R2R2中;如果中;如果 80h80h,将,将0000写入写入R2R2中中。综 合 设 计 题 目7.双字节加法:数据自定,和在R2,R1,R0 中。MOV R2,#0 MOV R0,#data1L MOV R1,#data1HADD R0,#data2LADC R1,#data2HADC R2,#0HLT 0903301综 合 设 计 题 目MOV R1,R0 AND R0,#0FH ADD R0,#30H AND R1,#0F0H ROR R1 ;循环右移一位 ROR R1 ROR R1 ROR R1 ADD R1,30H HLT09031058.将R0中压缩BCD码转换为ASCII码,结果 存放在R1,R0中。综 合 设 计 题 目9.MOVSP
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号