6、选择扩展指令的D组指令中的IRET指令,观察其节拍流程:
7、填写中断向量表;编写中断服务程序;编写子程序;编写主程序。
五、实验说明:
1、要求中断隐指令中执行关中断功能,如果用户中断服务程序允许被中断,必须在中断服务程序中执行EI开中断命令。
2、教学机的中断系统共支持三级中断,由三个无锁按键确定从右到左依次为一、二、三级中断,对应的P1、P0的编码分别是01、10、11,优先级也依次升高。这决定了它们的中断向量(即中断响应后,转去执行的程序地址)为XXX4、XXX8、XXXC;可以看到,每级中断实际可用的空间只有四个字节,故这个空间一般只存放一条转移指令,而真正的用户中断服务程序则存放在转移指令所指向的地址。
3、用户需扩展中断隐指令、开中断指令、关中断指令、中断返回指令及其节拍。
六、实验心得:
通过本实验,我加深理解了计算机系统中断的工作原理及处理过程,学习和掌握了中断产生、响应、处理等技术,掌握了中断服务子程序的编写要点。
计算机学院网络工程专业 13级4 班学号 3113006566 姓名李业昌协作者(无)教师评定
实验题目FPGA芯片实现非流水线的CPU系统(综合实验)
一、实验目的:
1、进一步熟悉教学计算机的指令格式、指令编码、寻址方式和指令功能等内容;
2、进一步熟悉教学计算机的总体组成和各个部件的功能,理解控制器部件在计算机整机中的关键作用;
3、进一步理解和熟悉指令执行步骤的划分方案;
4、进一步熟悉教学计算机的硬连线控制器各个控制命令(组)的控制功能,学习用VHDL语言描述节拍发生器和控制信号产生部件的功能;
5、进一步理解与熟悉在TH-union教学计算机控制器中处理原有指令和扩展指令的方案,提高对控制器功能描述的理解程度。
二、实验设备与器材:
TEC-XP+教学实验系统
三、实验内容:
控制器实验可以在两个层次上进行:
第一个层次属于观察、验证性的实验,即通过多种方式,察看教学计算机指令的执行步骤、运行结果、各组控制信号在每一个执行步骤中的状态、指令之间的衔接等有关内容。这个层次的实验,重点在于学懂教学计算机中已有的设计结果,把实现基本指令的VHDL语言程序中的语句描述与教学计算机的运行结果对应清楚。
第二次层次是学生进行自己的设计与实现新的扩展指令的实验,即在教学机系统已有指令的基础上,由学生自己添加若干条(例如3~5条)新的指令进去,包括定义指令格式、功能,划分指令执行步骤和确定每一步的功能,确定每一执行步骤使用的全部控制信号的状态值,使用VHDL语句把新的设计结果描述正确并添加到已有的源程序代码中去,编译、下载并调试正确,写一个包含已有指令和刚刚实现的指令的小程序,检查运行结果的正确性,若发现错误则找出原因并设法改正,直到全部正确为止。
学生扩展实现哪几条指令,可以由教师指定,也可以由学生根据自己学习情况自选另外一、两条。这些指令最好从教材中给出的扩展指令组中挑选,例如2条A组指令和2条C组指令。在设计指令的操作码编码、指令执行步骤、使用的控制信号等方面,尽可能地参照已有的基本执行的实现办法进行类似的处理,有利于降低实验难度。
四、实验步骤:
1、按前述的步骤准备好实验机,连接好串口线和电源线,打开PCEC16.EXE的仿真界面;将六个功能开关置为00X101(连续、内存读指令、连机、16位、FPGA);
2、将TIMING GAL左上方的拨动开关置于“FPGA”端;
3、确认标有“DataBus 15-8”和“DataBus 7-0”的数据总线的指示灯下方的插针断开;
4、确认标有“AdressBus 15-8”和“AdressBus 7-0”的地址总线的指示灯下方的插针断开;
5、将提供的带彩线的FPGA的下载线并口一端和计算机的并口连接,彩线一端按红色在左边的位置和大板上电源模块下方的一排插针插接好;
6、打开实验机的电源; 7、在PC机上打开ISE的软件;
8、打开软件的下载界面,选择SERIAL方式,添加器件CPU.BIT,进行下载; 9、下载完成关闭下载界面,启动PCEC界面,注意实验机不要断电(FPGA断电丢失内容);
相关推荐: