计算机原理复杂模型机改动,计算机组成原理之复杂模型机设计实验

41528d3028836879cd698677c3999917.gif计算机组成原理之复杂模型机设计实验

计 算 机 与 信 息 技 术 学 院实 验 报 告姓 名 学 号 专业班 级 2009 级 计算机科学与技术课程名称 计算机组成原理课程设计 实验日 期 2011/9/2成 绩 指导教 师 高嘉伟 批改日 期实 验 名 称 实验八 复杂模型机设计实验一、实验目的:综合运用所学计算机原理知识,设计并实现较为完整的计算机。二、 实验内容及原理:1、数据格式及指令系统:①数据格式:模型机规定数据采用定点整数补码表示,字长为 8 位,其格式如下: 7 6 5 4 3 2 1 0符号 尾数其中,第 7 位为符号位,数值表示范围为: ≤X≤72②指令格式:模型机设计四大类指令共有16条,其中算术逻辑指令、 I/O指令、访问及转移指令和停机指令。A、算术逻辑指令设计九条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:7 6 5 4 3 2 1 0OP-CODE RS RD其中,OP-CODE 为操作码,RS 为源寄存器,RD 为目的寄存器,并规定:RS 或 RD 选定的寄存器000110ROR1R2九条算术逻辑指令的助记符、功能和具体格式见下表 8.1。B、访问及转移指令模型机设计两条访问指令,即存数(STA) 、取数(LDA) ,两条转移指令,即无条件转移(JMP) 、结果为零或有进位转移(BZC ) ,指令格式如下:7 6 5 4 3 2 1 00 0 M OP-CODE rdD其中,OP-CODE 为操作码,rd 为目的寄存器地址(LDA、 STA 指令使用) ,D 为位移量(正负均可) ,M 为寻址模式,其定义如下:寻址模式 M 有效地址 E 说 明00011011E=DE=(D)E=(RI)+DE=(PC)+D直接寻址间接寻址RI 变址寻址相对寻址本模型机规定变址寄存器 RI 指定为寄存器 R2。C、I/O 指令输入和输出指令采用单字节指令,其格式如下:7 6 5 4 3 2 1 0OP-CODE addr RD其中,addr=01 时,选中“ DEVICE”中的开关组作为输入设备,addr=10 时,选中“OUTPUT DEVICE”中的数码块作为输出设备。D、停机指令停机指令格式如下:7 6 5 4 3 2 1 0OP-CODE 0 0 0 0HALT 指令,用于实现停机操作。③指令系统:本模型机共有 16 条基本指令,其中算术逻辑指令 7 条,移位指令 2 条,访问内存指令和程序控制指令 4 条,输入/输出指令 2 条,其他指令 1 条。表 8.1 列出了各种指令的格式、助记符和功能。表 8.1 各指令的助记符、功能和具体格式2、总体设计本模型机的数据通路框图如图8.1。根据机器指令系统要求,设计微程序流程图及确定微地址,如图8.2 。图8.1 数据通路框图按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码表转换为联机操作时的十六进制格式文件,见表6.1。3、实验程序:图 8.2 微程序流程图三、实验步骤:(1 )按图8.3 连接实验线路,仔细查线无误后接通电源。(2)写微程序与PC联机,将实验微程序装入实验装置中或脱机时手动将本实验微程序写入实验装置中,手动写入的具体方法如下:① 编程A、将编程开关置为“PROM”(编程)状态。B、将实验板上“STATE UNIT”中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。C、用二进制模拟开关置微地址MA5~MA0(如图5.4须将此六线排针接开关单元)。D、在MK24 ~MK1开关上置微代码, 24位开关对应24位显示灯,开关量为“0”时灯亮,开关量为“1”时灯灭。E、启动时序电路(按动启动按纽“START”),即将微代码写入到E 2PROM 2816的相应地址对应的单元中。F、重复 C~ E步骤,将本实验给出的十六进制格式文件转换的二进制代码写入2816 。②校验A、将编程开关设置为“READ”(校验)状态。B、将实验板的“STEP”置为“STEP”状态,“STOP” 置为“RUN”状态。C、用二进制开关置好微地址UA5~UA0。D、按动“START”键,启动时序电路,读出微代码。观察显示灯MD24~MD1的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于“PROM”编程状态,重新执行①即可。(3)写程序①方法一:手动写入使用控制台KWE 和KRD 微程序进行机器指令程序的装入和检查。A、使编程开关处于“RUN”,“STEP”为“STEP”状态,“STOP”为“RUN”状态。B、拨动总清开关CLR (1→0→1),微地址寄存器清零,程序计数器清零,然后控制台SWB、SWA开关置为“0 1”,按动一次启动开关START,微地址显示灯显示“001001”,再按动一次START ,微地址灯显示“001100”,此时数据开关的内容置为要写入的机器指令,按动两次START键后,即完成该条指令的写入。若仔细阅读KWE 的流程,就不难发现,机器指令的首地址总清后为00H,以后每个循环PC 自动加1 ,所以,每次按动START,只有在微地址灯显示“001100”时,才设置内容,直到所有机器指令写完。C、写完程序后须进行校验。拨动总清开关CLR(1→0→1)后,微地址清零。程序计算器清零,然后控制台SWB、SWA开关置为“0 0”,按动启动开关START,微地址显示灯显示“001000” ,再按START,微地址灯显示“001010”,第三次按START,微地址灯显示“111011” ,再按START后,此时输出单元的数码管显示为该首地址中的内容。不断按动START,每个循环PC会自动加1,可检查后续单元内容。每次在微地址灯显示为 “001000”时,系统将当前地址中的机器指令写入到输出设备中显示。②方法二:联机读/写程序选择联机软件的【转储】—【装载】功能菜单将该实验对应的文件载入实验系统即可。(4)运行程序①单步运行程序A、使编程开关处于“RUN”状态,“STEP”为“STEP”状态,“STOP”为“RUN”状态。B、拨动总清开关CLR (1→0→1),微地址清零,程序计数器清零,程序首址为00H。C、单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。②连续运行程序A、使“STATE UNIT”中的“STEP”开关置为“ECEX”状态, “STOP”开关置为“RUN” 状态。B、拨动CLR开关,清微地址及程序计数器,然后按动START,系统连续运行程序,稍后将STOP 拨至“STOP”时,系统停机。图8.3 实验接线图三、 实验结果分析实验运行如下代码能成功运行。实验运行如下代码能成功运行。程序 助记符 SP0044 IN 01 ,ROSP0146 IN 01 ,R2SP0298 ADC R2,R0SP0381

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值