CPU 控制器虚拟仿真实验

实验目的

计算机 CPU 包括控制器和运算器,其中控制器是整个计算机核心部件,是计算机运行全部信号的源头。计算机组成原理课程的核心教学内容就是通过理论教学和实验教学帮助学生很好地掌握控制器的基本组成及其运行原理。通过设计实现一个 CPU 控制器,并可视化 CPU 控制器与外围器件信号传送过程,帮助学生掌握计算机 CPU 控制系统运转的底层原理。

实验第二部分通过虚拟仿真(或远程实境)的方式,学生以二进制形式在实验箱上输入汇编指令,然后记录并分析控制器输出的指令节拍信号和二进制控制信号的具体作用,从而帮助学生更好地整体性掌握控制器设计实现原理。

学生通过设计实现 CPU 控制器,并进一步分析教学中所用到的典型计算机指令(如ADD、CMP、SHR、OUT、MVRD、PUSH、AND、JRC、RET、CALA 等指令)的功能、格式和执行流程

实验原理

设计实现 CPU 控制器实验使用一片 MACH 芯片(1片100条引脚的现场可编程的 CPLD 器件)、4片运算器芯片 Am2901、2片存储器芯片 AT28C64、1片可编程芯片 Gal20v8 虚拟仿真设计实现一个 CPU 控制器运行电路,具体组成结构如下图所示。

节拍发生器 Timing 使用几个触发器的不同的编码状态来区分和标示指令的执行步骤,指令执行步骤的衔接是通过节拍发生器的编码状态转换完成的。节拍发生器 Timing 选用1片可编程 GAL20V8 芯片实现。

时序控制信号产生部件用于产生并提供每一条指令的每一个执行步骤使用的全部时序控制信号。时序控制信号产生部件主要依据指令寄存器的操作码和节拍发生器的状态编码信号,可能还有运算器运算产生的标志位信号(C、Z、S)等,通过由与或两级门电路产生并提供出一条指令的一个执行步骤使用的全部控制信号。这些控制信号可以直接送到每个被控制对象,或者经过译码器送到被控制对象。在教学计算机中,时序控制信号产生部件选用一片有100个引脚的 MACH(CPLD)器件实现。

实验教学目的

1)虚拟仿真 CPU 控制器设计实现过程,帮助学生更好地掌握教学内容法

计算机 CPU 控制器是计算机系统的核心硬件,具有结构复杂、理论性强、实操性差等特点。在实际教学过程中,受实验教学课时、材料费用、制作周期、学生知识程度等客观条件限制,学生很难在实际制作一个CPU控制器模型。通过虚拟仿真实验学生一步步设计实现一个 CPU 控制器,并可视化了实际中看不到的二进制控制信号,帮助学生理解掌握 CPU 控制器设计与运行原理。

2)减少实验维护人员投入和经费投入,节约实验室资源

虚拟仿真实验可以节约实验室资源。实验箱属于消耗性实验设备,在学生实验过程中,实验时间越长需要投入的维护维修经费就越多。虚拟仿真实验可以有效减少实验箱使用时间,并且让学生提早熟悉实验过程中的各项操作,避免在实际实验过程中因操作失误造成实验设备损坏,从而可以有效减少实验室维护人员和实验设备经费投入。

3)远程实境实验可以满足网上在线实验教学要求

远程实境实验可以让学生远程实际操作实验箱进行实验。当学生因特殊原因(如出差、生病或其它原因)无法赶到实验室的时候可以远程进行实验操作。因某些重大原因导致学生无法到校集中学习时,远程实境实验模式可以实现网上在线实验教学,能够达到实验室实际操作教学效果,不延误授课进程。

实施效果

虚拟仿真实验为学生提供全天候实验条件,提供学习便利性;也可以通过虚拟仿真平台进行实验预习,为实验操作打下良好基础。远程实境实验方式达到实验室操作效果,学生不需要实际待在实验室即可进行实验,同学可以灵活安排实验时间,不同班级也可以同时进行实验,提高教学安排灵活性和实验设备利用率。远程实境实验方式减少学生聚集,也可以满足网上上课教学需要,具有实际使用意义。