31 计算机组成原理实验报告
放一条转移指令,而真正的用户中断服务程序则存放在转移指令所指向的地址。
3) 用户需扩展中断隐指令、开中断指令、产中断指令、中断返回指令及其
节拍。
4实验内容
1) 扩展中断隐指令,为中断隐指令分配节拍,中断隐指令用到12个节拍,
为了和一般指令相区别,应将其节拍T3设计为1.
2) 扩展开中断指令EI、关中断指令DI、中断返回指令IRET。
3) 确定中断向量地址。中断微量的高12位由开关确定为(0001001000000)。
三级中断对应的中断微量为2404H、2408H、240CH。当有中断请求且被响应后,将执行存放在该中断的中断微量所指向的内存区的指令。 4) 真写中断微量表。在上述2404H、2408H、240CH地址写入三条JR转移
指令,JR指令的OFFSSET是-128~127之间,但在PCEC16中输入时,用户不需要计算偏移量,直接输入要转向的绝对地址即可。
5) 编写中断服务程序。中断服务程序可以放在中断微量表之后,中断服务
程序可以实现在程序正常运行时在计算机屏幕上显示与优先级相对应的不同字符。
6) 写主程序。可编写一死循环,要求先开中断。
5实验步骤
1) 填写中断向量表
a) 将数据开关的高12位设置成:0010 0100 0000,即选择三级中断的
中断向量为2404H、2408H、240CH。
b) 中断向量一共有16位,高12位由数据开关SWH7-0和SWL7-4决
定;后四位有无锁按键决定,分别为01、10、11,所以中断向量的16位为2404 、2408 、240C。
计算机组成原理
31
32 计算机组成原理实验报告
c) 向量表指令填写:
(2404)JR 2420 (2408)JR 2430 (240C)JR 2440
2) 编写中断程序
用A、E命令从2420H单元开始输入下面和程序:(标有*的语句表示要用E命令输入)
2420:PUSH R0 2421:PUSH R3 2422:MVRD R3,31 2424:JR 2450 2430:PUSH R0 2431:PUSH R3 2432:MVRD R3,32 2434:JR 2450 2440:PUSH R0 2441:PUSH R3 2442:MVRD R3,33 2444:JR 2450 *2450:EI
2451:MVRD R0,0042 2453:CALA 2200 2455:MVRD R0,0049 2457:CALA 2200 2459:MVRR R0,R3 245A:CALA 2200 245C:IN 81 245E:SHR R0 245F:JRNC 245C 2460:IN 80
2461:MVRD R00045 2463:CALA 2200 2465:MVRD R0,0049 2467:CALA 2200 2469:MVRR R0,R3 246A:CALA 2200 246C:POP R3 246D:POP R0 *246E:IRET
计算机组成原理 32
33 计算机组成原理实验报告
3) 编写子程序
2200:PUSH R0 2202:SHR R0 2203:JRNC 2201 2204:POP R0 2205:OUT 80 2206:RET
4) 编写主程序
*2000:EI
2001:MVRE R0,0036 2003:CALA 2200 2005:MVRD R0,4000 2007:DEC R0 2008:JRNZ 2007 2009:JR 2001 200A:RET
5) 运行主程序,等待、响应中断。
在命令行提示符状态下输入:G 2000
6) 结果显示与截图:
屏幕将连续显示“6”。在程序执行过程中按下教学机右下方任意一个无锁按键。此时,教学机转向执行本级中断服务程序,在屏幕上显示BI以及按下的键对应的中断优先级。在接收键盘一个字符后,显示该字
计算机组成原理 33
34 计算机组成原理实验报告
符并退出当前级的中断服务程序,恢复中断现场,接着执行断点处的程序。若在接收字符之前,又有更高一级的中断请求,则教学机转向执行高一级的中断服务程序,执行完后接着执行低级中断,然后 退出 执行主程序。需要注意的是若当前中断为高级中断,则不会响应低级中断简单的中断服务程序。
6实验思考与心得
由于本次实验课前,计算机组成原理课堂上进行了关于中断机制,中断向量表的学习,因此在本次实验课上得心应手。
在学习中断时,应学会主动制造错误,如除法溢出等出发中断,然后逐步了解其响应过程,以及通过中断向量表调用内存中自己所写入的程序代码,从而加深对中断整个过程的了解。
从单片机中的学习,清楚明白到中断机制的存在为底层编程予以极大方便和灵活性,因此熟悉中断机制是我们深入学习嵌入式系统的前提。
计算机组成原理 34
35 计算机组成原理实验报告
学院 计算机学院 学号: 姓名 教师评定
实验题目 FPGA芯片实现非流水线的CPU系统(综合实验)
实验九:FPGA芯片实现非流水线的CPU系统
(综合实验)
1实验目的
? 进一步熟悉教学计算机的指令格式、指令编码、寻址方式和指令功能等内容。 ? 进一步熟悉教学计算机的总体组成和各个部件的功能,理解控制器部件在计
算机整机中的关键作用;
? 进一步理解和指令执行步骤的划分方案;
? 进一步熟悉教学计算机的硬连线控制器各个控制命令的控制功能,学习用
VHDL语言描述节拍发生器和控制信号产生部件的功能。
? 进一步理解与熟悉在TH-union教学计算机控制器中处理原有指令和扩展指
令的方案,提高对控制器功能能描述的理解程序。
2实验设备与器材
? TEC-XP+教学实验系统和仿真终端软件PCEC。
计算机组成原理 35