.
.
北 京 建 筑 大 学
2015/2016 学年 第 二 学 期
课 程 设 计
课程名称 计算机组成原理综合实验
设计题目 微程序控制器设计与实现
系 别 电信学院计算机系
班 级 计141
学生姓名 艾尼瓦尔·阿布力米提
学 号 201406030128
完成日期 二〇一六年七月八日星期五
成 绩
指导教师
(签名)
计算机组成综合实验任务书
指导教师姓名
王怀秀
系
计算机
任务
微程序控制器的设计与实现
人数
32
学时
1周
实验目的
1.融合贯通计算机组成原理课程,加深对计算机系统各模块的工作原理及相互联系(寄存器堆、运算器、存储器、控制台、微程序控制器)。
2.理解并掌握微程序控制器的设计方法和实现原理,具备初步的独立设计能力;3.掌握较复杂微程序控制器的设计、调试等基本技能;提高综合运用所学理论知识独立分析和解决问题的能力。
实验任务
基于TEC-9教学实验平台基于原有指令集的基础上设计或扩展4~8条指令。首先在原微程序控制器指令系统的基础上进行原指令集的微指令编码的测试,然后利用上端软件,编写用户设计的微指令,实现指令预定的功能。
实验步骤
1、进行原实验平台指令集的微程序控制器下指令运行测试;
2、记录每一条机器指令的指令的执行流程和微命令编码;
3、画出每一条指令的指令微程序执行流程图;
4、在原有指令集基础上自行设计或扩展4~8条指令。画出扩展指令的指令执行流程图;
5、利用上端软件,把所编写的微程序控制器内容写入实验台中控制器中。
6、利用单拍测试控制器与编程的要求是否一致。如果有错误重新修改后再写入控制器中。
编写一段测试程序,测试控制器运行是否正确。
实验目的
1.融合贯通计算机组成原理课程,加深对计算机系统各模块的工作原理及相互联系(寄存器堆、运算器、存储器、控制台、微程序控制器)。
2.理解并掌握微程序控制器的设计方法和实现原理,具备初步的独立设计能力;3.掌握较复杂微程序控制器的设计、调试等基本技能;提高综合运用所学理论知识独立分析和解决问题的能力。
实验电路
1. 微指令格式与微程序控制器电路
2.微程序控制器组成
仍然使用前面的CPU组成与机器指令执行实验的电路图,但本次实验加入中断系统。这是一个简单的中断系统模型,只支持单级中断、单个中断请求,有中断屏蔽功能,旨在说明最基本的原理。
中断屏蔽控制逻辑分别集成在2片GAL22V10(TIMER1 和TIMER2)中。其ABEL语言表达式如下:
INTR1 := INTR;
INTR1.CLK = CLK1;
IE := CLR & INTS # CLR & IE & !INTC;
IE.CLK= MF;
INTQ = IE & INTR1;
其中,CLK1是TIMER1产生的时钟信号,它主要是作为W1—W4的时钟脉冲,这里作为INTR1的时钟信号,INTE的时钟信号是晶振产生的MF。INTS微指令位是INTS机器指令执行过程中从控制存储器读出的,INTC微指令位是INTC机器指令执行过程中从控制存储器读出的。INTE是中断允许标志,控制台有一个指示灯IE显示其状态,它为1时,允许中断,为0 时,禁止中断。当INTS = 1时,在下一个MF的上升沿IE变1,当INTC = 1时,在下一个MF的上升沿IE变0。CLR信号实际是控制台产生的复位信号CLR#。当CLR = 0时,在下一个CLK1的上升沿IE变0。当 CLR=1 且INTS = 0 且 INTC = 0时,IE保持不变。
INTR是外部中断源,接控制台按钮INTR。按一次INTR按钮,产生一个中断请求正脉冲INTR。INTR1是INTR经时钟CLK1同步后产生的,目的是保持INTR1与实验台的时序信号同步。INTR脉冲信号的上升沿代表有外部中断请求到达中断控制器。INTQ是中断屏蔽控制逻辑传递给CPU的中断信号,接到微程序控制器上。当收到INTR脉冲信号时,若中断允许位INTE=0,则中断被屏蔽,INTQ仍然为0;若INTE =1,则INTQ =1。
为保存中断的断点地址,以便中断返回,设置了一个中断地址寄存器IAR。第二节图4中的IAR(U19)就是这个中断地址寄存器,它是一片74HC374,有LDIAR和IAR_BUS#两个信号输入端,均连接至微程序控制器。LDIAR信号的上升沿到达时,来自程序计数器PC的地址会置入IAR中。IAR_BUS#为0时,保存在IAR中的断点地址会输出到数据总线