




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
简单实验计算机组成与程序运行实验一、实验目的1. 组成一个简单的计算机整机系统模型机,输入程序并运行2. 了解微程序控制器是如何控制模型机运行的,掌握整机动态工作过程3. 定义五条机器指令,编写相应微程序并具体上机调试二、预习要求:1. 复习计算机组成的基本原理;2. 预习本实验的相关知识和内容三、实验设备:EL_JY_II8型计算机组成原理实验系统一套,排线若干。四、模型机结构:模型机结构框图见图61.五、工作原理:前几个实验中,控制信号是由实验者用逻辑开关来模拟的,而这次实验,是在微程序控制下自动产生各部分的控制信号,实现特定指令的功能。CPU从内存取出一条机器指令到执行结束的一个指令周期,是由微指令组成的序列来完成,一条机器指令对应一个微程序。1.本实验采用五条机器指令:其指令格式如下(前4位为操作码):功能机器指令码说 明IN0000 0000“D_INPUT”中的开关状态R0ADD addr0001 0000xxxxxxxxR0+addrR0STA addr0010 0000xxxxxxxxR0addrOUT addr0010 0000xxxxxxxxaddrBUSJMP addr0100 0000xxxxxxxxaddrPC其中IN为单字长(8位),其余为双字长指令,xxxxxxxx为addr为对应的二进制地址码。2.为了向RAM中装入程序和数据,检查斜土是否正确,并能启动程序执行,还必须设计三个控制操作微程序。存储器读操作(MRD):拨动总清开关CLR后,控制开关CA1、CA2为“00”时,按“启动”微动开关,可对RAM连续手动读操作。存储器写操作(MWE):拨动总清开关CLR后,控制开关CA1、CA2为“10”时。按“启动”微动开关,可对RAM连续手动写入。启动程序(RUN):拨动总清开关CLR后,控制开关CA1、CA2为“11”时按“启动”微动开关,即可转入到第01号“取址”微指令,启动程序运行。程序计数器PC数据暂存器LT1数据暂存器LT2寄存器R0输出设备地址寄存器存储器(MEM)微控器脉冲源及时序指令寄存器输出设备 LPC 数据总线(D-BUS) ALU-G LOAD PC-G S3S2S1S0 MCN ALU LAR 地址总线(ADDR-BUS) READLDR1 LDR2 WRITE LDR0 R0-G C-G W/R 控制门数据 LED-G 控制信号3. 微指令字长共24位,其控制位顺序如下:24232221201918171615 14 13121110987654321S3S2S1S0MCnWE1A1BF1F2F3uA5uA4uA3uA2uA1uA0其中Ua5_uA0为6位的后续微地址,F1、F2、F3为三个译码字段,分别由三个控制位译码出多位。F3字段中的P(1)_P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行。F1、F2、F3三个字段的编码方案如表61:F1字段F2字段F3字段15 14 13选择12 11 10 选择9 8 7选择0 0 0LDR10 0 0RAG0 0 0P(1)0 0 1LOAD0 0 1ALU-G0 0 10 1 0LDR20 1 0RCG0 1 00 1 1 0 1 1 0 1 1 1 0 0LDR11 0 01 0 01 0 1LAR1 0 1PC-G1 0 1LPC1 1 0LDLR1 1 01 1 0P(4)表6-14.系统涉及到得微程序流程见图62,当拟定“取址”微指令是,该微指令的判别测试字段为P(1)测试。由于“取址”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前4位(IR7IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。控制操作为P(4)测试,它以控制开关CA1、CA2作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其他地方就可以一条微指令占用控存一个微地址单元随意填写。注意:微程序流程图上的单元地址为8进制。5.当全部微程序实际完毕后,应将每条微指令代码化,表62即为将图62的微程序流程按微指令格式转化而成的“二进制微代码表”。6.指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先把他从内存取到缓冲寄存器中,然后再传送至指令寄存器。指令划分为操作码和地址字段;由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试【P(1)】,通过节拍脉冲T4的控制以便识别所要求的操作。“指令译码器”根据指令中的操作码译码强制微控制器单元的微地址,使下一条微指令指向相应的微程序首地址。I7I2为指令寄存器的第72位。7.本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备;另一种是数码块,它作为输出设备。输入时,二进制开关数据直接经过三态门送到数据总线上,只要开关状态不变,输入的信息也不变。输出时,将输出数据送到外部数据总线上,当写信号(W/R)有效时,将数据打入输出锁存器,驱动数码管显示。开始PC AR PC+PAM D BUSIRP(1测试PPPIN ADD STA OUT JMP 10 11 12 13 14PCAR PC+1 R0BUSIRPCAR PC+1 R0BUSIRPCAR PC+1R0BUSIRPCAR PC+1D INPUTR0 R0BUSIR 03 07 16 26RAMD BUSARRAMD BUSAR R0BUSIRRAMD BUSPC R0BUSIRRAMD BUSAR R0BUSIR01 04 15 17 RAMD BUSLT1R0D BUSRAMRAMD BUSLT2 01 05 LT1LEDR0LT1 01 06 (LT1)+(LT2)R0 01 01 控制开关P(4)测试 MWE(CA1CA2=10 ) MRD(CA1CA2=00) RUN(CA1CA2=11) PCAR PC+1PCAR PC+1R0BUSIR 21 20 23 RAMD BUSLT1D-INPUTD-BUSLT1 24 22 LT1LEDLT1RAM 30 27图6-2微程序流程图微地址S3S2S1S0 M CN WE 1A 1BF1F2F3UA0.UA5000 0 0 0 0 0 0 1 1111111110010000010 0 0 0 0 0 0 1 110110110100001020 0 0 0 0 0 0 1 0110111111011001030 0 0 0 0 0 0 1 0101111111000100040 0 0 0 0 0 0 1 0010111111000101050 0 0 0 0 0 0 1 1100000111000110061 0 0 1 0 1 0 1 1000001111000001070 0 0 0 0 0 0 1 0101111111001101100 0 0 0 0 0 0 0 0000111000000001110 0 0 0 0 0 0 1 1101101101000011120 0 0 0 0 0 0 1 1101101101000111130 0 0 0 0 0 0 1 1101101101001110140 0 0 0 0 0 0 1 1101101101010110150 0 0 0 0 0 1 1 0111000111000001160 0 0 0 0 0 0 1 0101111111001111170 0 0 0 0 0 0 1 0100111111010101200 0 0 0 0 0 0 1 1101101101010010210 0 0 0 0 0 0 1 1101101101010100220 0 0 0 0 0 0 1 0100111111010111230 0 0 0 0 0 0 1 1111111111000001240 0 0 0 0 0 0 0 0100111111011000250 0 0 0 0 1 1 0 1111001111000001260 0 0 0 0 0 0 1 0001111101000001270 0 0 0 0 0 1 0 1111001111010000301 1 1 1 1 1 1 1 0111001111010001310 0 0 0 0 0 0 1 0110111000001000 表6-2地址(二进制)内容(二进制)助记符说 明0000 00000000 0000IN“数据输入电路”中的开关状态R00000 00010001 0000ADD0AHR0+0AHRO0000 00100000 10100000 00110010 0000STA0BHR00BH0000 01000000 10110000 01010011 0000OUT0BH0BHBUS0000 01100000 10110000 01110100 0000JMP00H00HPC0000 10000000 00000000 10010000 10100000 00010A单元的加数(任意自定,此处为01H)0000 1011求和结果 8.本实验设计机器指令程序如下:六、实验步骤:一)、脱机实验1按下图连接实验电路:(连线时应按如下放法:对于横排座,应使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上)W/R读写控制电路 T4 T1WEWET41 FINT1 F/8脉冲及时序信号BD7 数据总线BD0 MC24 SA5MC19 SA0 LDR1 P(1) P(4) LDR2 LDIR ALU-G 微程序控制器电路 LR1 RAG LPC LOAD MC16 PC-G MC17 UAJ1 LAR SA5 CA1 SA0 CA2 P(1) IR7 P(4) IR0 指令译码器CA1控制开关电路CA2BD7 S3 ALUJ CnBD0 ALU-G 运算器电路 IR7 IR0 指令寄存器电路 LDR1 RJ1 LR0 R0寄存器堆电路 DUI DU-G LPC PCJ1 LOAOD PC-G 1A Y3 1B Y2 Y1I/O控制电路 LAR地址寄存器电路 D-G W/R输出显示电路 AD7 AD0 地址总线 MAJ1 MDJ1 CE WE主存储器电路 BD7 BD0 数据总线控制开关电路UA5.UA0 图6-12.写程序:1)先将机器指令对应的微代码按表62写入2816中,方法参见“实验四、微程序控制器实验”。校验正确后就可使用。2)使用控制MWE和MRD微程序进行机器指令程序的装入和检查。(1)使K1K2K3K4处于运行状态,拨动控制开关CLR(101),微地址寄存器清零,程序计数器 。然后是控制开关CA1、CA2置为“10”,按动一次“单步”按钮,微地址显示灯显示“010001”,再按动一次“单步”,微地址灯显示“010100”,此时数据输入电路的开关的内容置为要写入的机器指令,按动一次“单步”,即完成该条指令的写入。若仔细阅读MWE的流程,就不难发现,机器指令的首地址只要第一次给入即可,PC会自动加1,所以,每次按动“单步”,只有在微地址灯显示“010100”时,才设置内容,直到所有机器指令写完。(2)校验:拨动总清零开关CLR(101)后,微地址寄存器清零,程序计数器清零,然后使控制台CA1、CA2置为“00”,按动一次“单步”按钮,微地址显示灯显示“010000”,再按动一次“单步”按钮,微地址灯显示“010010”,第三次按动“单步”按钮,微地址灯显示“010111”,此时数据总线单元的显示灯为【00H】地址(地址单元显示灯内容)的内容。不断按动“单步”按钮,可检查后续单元的内容。注意:每次仅在微地址灯显示为“010111”时,数据总线显示灯的内容才是相应地址中的机器指令内容。3.单步运行程序:(1)使K1K2K3K4处于运行状态:(2)拨动总清零开关CLR(1 0 1),CA1,CA2置为11,微地址寄存器清零,程序计数器清零。程序首地址为00H.(3)单步运行一条微指令,每按动一次“单步”,即单步运行一条微指令,对照微程序流程图,观察微地址显示灯是否和流程一致。(4)当运行结束后,可检查存数单元(0B)中的结果是否与理论一致。4.连续运行程序:(1)使K1K2K3K4处于运行状态:(2)拨动总清零开关CLR(1 0 1),CA1,CA2置为11,微地址寄存器清零,程序计数器清零。程序首地址为00H.(3)按动“启动”按钮,连续运行程序,稍后按动“停止”按钮,使系统停机:(4)当运行结束后,可检查存数单元(0B)中的结果是否与理论一致。二)、单片机键盘操作实验: 在进行单片机键盘控制实验时,必须把K4开关置于“OFF”状态,否则系统处于自锁状态,无法进行实验。1. 键盘实验连线图如图64E4 E5控制总线F1-F4 C1-C6 WE MD7-MD0MA0-MA7主存储器电路 CE CE AD7-AD0地址总线 BD7-BD0数据总线 读写控制电路WET1-T4 W/R W/R Y21A1B Y1I/O控制电路 PC-G LOA LPC程序计数器电路PCJ1IR2-IR7LDI 指令寄存器路IR0-IR8SA5. P1-P4 IR2-IR7指令译码器电路CA1 CA2 IR0-IR8 S8.CN LDR1 LDR2 ALU-G 运算器电路 ARALUJ LRO ROG寄存器堆电路 RJ1 D0.D7 输出显示电路D-G WR微程序控制器电路M17 M24 LDR1 LDR2 ALU-G AR PC-G LOAD LPC LRI RAG AS5 .SA0 P1.P4 LDIR UAJI M18 LARM16 M19 IR2 2. 实验步骤1)微代码:使K1K2K3K4拨到写入状态。在“CLASS SELSCT”状态按“实验选择”键,输入06或6及确认后,进入实验六程序,显示为“ES06”,按下“确认”键,显示为“CTL1-”对微代码进行操作。输入“1”显示“CTL1-1”其意义是写微代码。然后显示“U-ADDR”,这时输入微地址“*”该微地址是用6位二进制数表示的2位八进制书,然后按“确认”键,显示“U-CODE”,这时输入微代码“*”,(该微代码是用6位十六进制数来表示前面的24位二进制数。按“确认”显示“PULSE”按“单步”完成一条微代码的输入,重新显示“U-ADDR”提示输入第二条微代码地址。按照上面的方法将下表微代码输入。(注意输入微代码的顺序是由右至左。)微地址(二进制)微代码(十六进制)0007F9001005B4202016FD903015FC404012FC5050041C6069403C107015FCD10018E0111005B4312005B4713005B4E14005B56150371C116015FCF17014FD520005B5221005B5422014FD723007FC12401CFD82501CFD826011F412706F3D03006F3D131016E08 2)代码校验先将K1K2K3K4拨到读状态,按照键盘说明使之显示“CTL1-”时,输入“2”按“确认”进入读代码状态,读的过程和写过程类似。按确认后显示“U-ADDR”,提示输入代码地址,输入后按“确认”显示“PULSE”按“单步”完成一条微指令的读过程重新显示“U-ADDR”.微代码显示灯显示为读出的微代码。对照上面的微代码表检查错误并改正。3)写机器指令先将K1K2K3K4拨到运行状态,按键盘说明选择实验后,按“取消”键进入对机器指令操作状态,显示“CTL2-”,输入“1”按“确认”显示“PULSE”,按照前面的方法是CLR 清零即(101),然后按“单步”键,当微地址显示灯显示“010100”时,按“确认”显示“CODE-”,提示输入机器指令(两位十六进制数)输入后按“确认”显示“PULSE”再按“单步”使之再显示“010100”时输入下一条指令,直到输入完成,按“取消”退出写机器指令状态。微地址(二进制)微代码(十六进制)00000110020A0320040B0530060B0740080009000A010B014)校验机器指令拨动CLR清零,选择实验后按“确认”进入实验再按“取消”进入机器指令操作状态,显示“CTL2-”,输入“2”按“确认”,显示“PULSE”。一次一次按“单步”当微地址灯显示“010010”时,数据总线上显示的为写入的机器指令。读的过程注意微地址灯,地址灯和数据总线的对应关系。5)运行程序运行程序之前拨动CLR清零,同上面一样只是当显示“CTL2-”时输入“3”按“确认”进入机器指令运行状态显示“RUN CODE”,可以“单步”运行程序也可以“全速”运行,运行过程中提示输入相应的量,运行结束后观察实验运行结果。七、实验心得:在实验的过程中:我和同组的人进行了如下的操作:(1) 写微代码 (以写表6-2的微代码为例) 首先将微程序控制电路上的开关K1K2K3拨到写入状态,即K1 off、K2 on、K3 off,然后将24位微代码输入及显示电路上的开关K4拨到on状态。置控制开关UA5 UA0=“000000”,输入微地址“000000”,置24位微代码开关MS24-MS1为:“00000000 00000000 00010000”,输入24位二进制微代码,按【单步】,黄色微地址灯显示“000 000”写入微代码。保持K1K2K3K4状态不变,写入表62的所有微代码。(2)读微代码并验证结果 将微程序控制电路上的开关K1K2K3拨到读出状态,即K1 off、K2 off、K3 on,然后将24位微代码输入及显示电路上的开关K4拨到off状态,置控制开关UA5 UA0=“000000”输入微地址“000000”, 按【单步】,黄色微地址灯显示“000 000”,24位微代码显示“00000000 00000000 00010000”,即第一条微代码。保持K1K2K3K4状态不变,改变UA5 UA0微地址的值,读出相应的微代码,并和表62的微代码比较,验证是否正确。在输入的过程中,有错误的微代码,我们及时的改正了错误。(3)写机器指令 将微程序控制电路上的开关K1K2K3拨到运行状态,即K1 on、K2 off、K3 on,然后将24位微代码输入及显示电路上的开关K4拨到off状态。拨动控制开关电路上的清零开关CLR,对地址寄存器、指令寄存器清零,清零结果是微地址指示灯(6个黄色指示灯)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年初识火电运行值班员工作职责与考试要点解析
- 阳光版小学一班级下册 跳跃类游戏
- 【教案版】小学一班级上册 跳绳
- 17水平二技巧《前滚翻1》教案
- 2025年农村水源保护及治理工作面试题集及答案解析
- 2025年软件测试工程师技能进阶教程及实战经验
- 2025年网络安全工程师专业模拟题与答案解析
- 电信运营行业知识培训课件
- 2025年炼钢原理及实践应用面试题解析
- 2025年高级营养师专业能力提升考试模拟题与答案解析
- 钢材中稀土赋存状态分析研究
- 心外科进修汇报护理
- 2025至2030年中国拉菲草行业投资前景及策略咨询报告
- 学历案与深度学习:读书感悟与教育启示
- 医院患者病情评估制度
- 钢栏杆安装工程施工方案
- 秘书岗位复习试题附答案(一)
- 2025年幼儿教师师德培训案例集
- 2024年《数字影像设计与制作》考试题库及答案含各题型
- 高中数学开学第一课课件(初高中衔接)
- GB/T 33130-2024高标准农田建设评价规范
评论
0/150
提交评论