这时用户可以作相应的修改,直到编译文件通过。
4.调试
如果编译、连接正确后,可以开始调试程序。进入调试状态方法有:
a) 执行[ 主菜单 ? 运行 ? 进入调试状态];或点击工具条的b) 执行[ 主菜单 ? 运行 ? 装载DOB、HEX、BIN文件] 进入后的窗口如下:
在信息窗的“装载”视中,显示装载的代码文件,装载的字节数,装载完毕后,显示启始地址,结束地址。
这种船坞化的窗口比通常的窗口显示的内容更多,移动非常方便。用鼠标左键点住窗口左边或上方的标题条,移动鼠标,将窗口移到您认为合适的位置;将鼠标移到窗口的边上,鼠标的图标变成可变化窗口时的形状,用鼠标左键点住,移动鼠标,变化一个或一组窗口的大小。
在“存贮窗1”的工具条中选择“微程序”;在星研软件的工具条上“选择实验”下拉框中选择“微程序控制器实验”。
您可以使用以下命令调试您的程序:
单节拍
单节拍命令,实验仪完成一个节拍工作。 单周期 单周期命令,实验仪完成当前机器周期工作。
单步(功能键F7)
单步执行当前指令,实验仪执行完当前机器指令后停止工作。
连续单步(功能键Ctrl + F7) 连续执行“单步”,用鼠标点击或按任意键后,执行完当前机器指令后停止运行。 全速运行(功能键Ctrl + F10)
从当前地址开始全速运行用户程序。用鼠标点击,执行完当前机器指令后停止运行。
停止运行
终止微机与实验仪之间通信(功能键 ESC)。 刷新
从实验仪读回数据,刷新所有窗口。
节拍频率
可选择3Hz、30Hz、300Hz、3KHz。节拍频率越高,模型机执行越快。 使用各种运行命令,调试微程序:
点击工具条上(复位)按钮,复位实验仪;点击单节拍命令,uM单元后续微地址uPC显示为00000001时,置开关区的K7..K0数据为10101000(A8H, IN指令),执行单节拍命令,在T2的下降沿,A8H写入IR中,在T3时IR单元解析,uPC显示新的地址00010100,执行单节拍命令一次,在T1时,置IN单元数据为01010100(54H),连续执行单节拍命令,在T3下降沿,将数据54H写入R0;uPC显示01H,说明当前指令已执行完,转回取指操作;开关区的K7..K0给出00000000(00H,ADD指令),该指令将会在下个T2 下降沿,写入IR,下一步,在T1下降沿将R0中数据写入A中,再下一步,在T2下降沿将R0中数据写入B中,再下一步,执行加法,在T3下降沿将结果写入R0中;uPC显示01H,开关区的K7..K0给出10101100(ACH,OUT指令),并继续点击01时,观查 OUT单元的显示值是否为10101000。
单节拍命令执行,在uPC显示为
使用 复位命令,复位实验仪,改变IN单元的值,使用单节拍命令,对于每一条微指令,体会系统在T1、T2、T3节拍中各做的工作;对于调试过的微指令,可使用单周期命令,快速运行;对照微程序流程图,观察微地址uPC指示灯是否与流程一致;按本机运行的顺序给出数据和指令,当模型机执行到HALT指令时,观察OUT单元显示的数据是否为IN单元数据的2倍。
输入微程序的另一种方法:
在存贮器窗的“微程序”中,首先选择一个单元,输入“7F0AF000”,在信息窗的“微存贮器”标签页中同步显示数据,可以按位修改,修改完毕后,点击右边的“修改”,星研软件自动修改uM中该单元的数据,并刷新所有窗口。 通常,设计微程序,使用该方法。
四. 实验体会
在输入完成后,运行的过程中译码器无法正确译码,操作一直都是ADD指令。
原因:接线错误,写微地址的SE5..SE0无法取出正确的微地址以及判别标志p1接线错误, 无法实现地址转移。 解决方法:修正接线。
本次实验相比较上次实验而言有一定的难度,本次实验对我最大的启发是细节的重要性, 只有正确的接线,才有可能做出正确的结果。以后在接线过程中一定要细心再细心,对每一条线都认真核对。
实验六 CPU与简单模型机设计实验
一. 实验目的
(1) 了解并掌握一个基础的CPU的组成原理
(2) 在前几章介绍的各单元电路的基础上,构造一个简单模型计算机 (3) 给简单模型机设计4条机器指令,并编写每条机器指令的微指令,上机调试,掌握整机概念。
二. 实验内容
本节要实现一个简单的CPU,它包含运算器(ALU)、通用寄存器(R0)、程序计数器(PC)、地址寄存器(MAR)、指令寄存器(IR)、微程序控制器(uM)等部件,如下图:
简单CPU原理图
在这个CPU的微程序存贮器(uM)中写入微指令,就可以执行机器指令了。在此CPU的基础上,配置存贮器(用于存放机器指令)、基本的输入输出设备,就可以构建一个简单模型计算机。
本实验在第三章微程序控制器实验的基础上,加上程序计数器(PC)、地址寄存器(MAR)、存贮器MEM。PC由带预置功能的计数器(二片74HC161)、输出到地址总线三态门、输出到内部数据总线iDBus的三态门、PC显示电路组成。按下CON单元的nRst键,可以复位PC;wPC低电平,在T3的下降沿将iDBus上数据写到PC中;PC+1信号高电平,在T3的下降沿,PC+1->PC;rPC有效,在T1、T2时刻,PC数据输出到iDBus上;nPCOE有效,PC数据输出到地址总线上。