
本教材紧密结合“计算机组成原理”课程理论教学内容,基于EDA技术构建了一个多层次的计算机组成原理实验教学体系,包括基础实验、综合实验和高级设计实验3个层次。全书分为3章。第1章主要完成计算机基本组成部件的设计,第2章主要完成MIPS处理器的设计,第3章主要训练学生综合运用第2章学习的设计原理和方法,在原有指令系统的基础上进行扩展,并独立设计一个支持扩展指令集的MIPS CPU系统。
本书内容丰富,通俗易懂,由浅入深,实用性强。本书的一大特色是实验体系与先行及后续实验课程具有延续性。另外,每个实验有针对性地提出预习要求;典型电路给出了详细的实验原理;提供设计思路和必要的提示启发学生设计实验;提供主要模块的仿真波形。这些特色都便于有效地指导学生完成实验和深化学生对相关知识的理解,从而掌握利用硬件描述语言和EDA工具进行MIPS系统设计的方法。
本书可作为高等学校计算机专业学生“计算机组成原理”课程的配套实验教材,也可作为电子类、自动控制类各专业学生和相关领域工程技术人员的参考书。
计算机组成原理实验是“计算机组成原理”课程教学中的一个重要实践环节。随着计算机技术的飞速发展,EDA设计已经成为硬件设计的主要方式,原来基于小型模拟计算机系统的实验已经不能适应现代实验教学的需求。传统实验教学模式,大多采用中小规模集成电路芯片在面包板上搭建各种常见的数字电路,工作量大且易出错。而新的实验教学模式是利用硬件描述语言和EDA工具,首先在计算机上进行设计、修改和仿真,通过仿真波形可以直观地观察到电路内部的各个信号的变化情况,然后将设计下载到实验台上的PLD芯片中,进一步验证设计的正确性。通过一系列由浅入深、从局部到整体的实验,不仅加深学生对计算机组成原理基本知识的理解,而且有助于学生融会贯通这些知识点。通过在实验台上的验证与调试,锻炼学生的实际动手能力、分析问题和解决问题的能力。实验台提供了各种常用的输入输出设备,如按键、拨码开关、矩阵键盘、LED、数码管、数字TFT彩色液晶屏、字符型液晶屏、扬声器等,以及各种常见的输入输出接口,如USB接口、PS/2键盘和PS/2鼠标接口、VGA接口、以太网口、RS232串口、SD卡接口、语音采样口、立体声输出口、MIC模拟输入口等。丰富的外设和接口有利于开设与计算机有关的各种实验,便于进行调试和直观观察实验现象。
因此,与理论教学相配套,我们将当前先进的设计理念和设计技术也引入到计算机组成原理实验教学中,基于EDA技术设计和开发了先进的、层次化的实验内容,并且编写了这本实验教材。全书实验内容分为基础实验、综合实验和高级设计实验三个层次。
第1章MIPS部件基础实验: 主要完成MIPS系统中基础的组成部件设计,为后续处理器高级实验做好准备,包括存储单元(如MIPS RAM存储器、32位MIPS IR指令寄存器、32位MIPS RegFile寄存器堆、先进先出存储电路FIFO等)、运算单元(如32位MIPS乘除法运算器、带进位算术逻辑运算器、32位MIPS移位运算器等)、协处理器以及其他部件(如32位MIPS程序计数器、32位MIPS多路选择器、32位MIPS符号扩展单元、程序计数器电路等)。内容涵盖了计算机组成原理中独立部件设计的主要知识点。通过本章的实验,学生将加深对MIPS系统的组成部件及其电路结构、原理和功能的理解,掌握利用硬件描述语言和EDA工具进行MIPS部件设计的一般方法。
第2章MIPS处理器综合实验: 主要完成一个支持57条MIPS基本指令的处理器设计,包括指令系统、数据通路、多周期控制器以及多周期处理器的设计等。通过这些实验激发学生的学习兴趣,培养学生的综合设计能力,使理论课的知识与工程实践融会贯通。
第3章MIPS高级设计实验: 本章实验是在第1、2章的基础上,进一步将57条MIPS指令集进行扩展,最多可扩展至110条指令。为了支持新增加指令的执行,原有的设计必须要做适当的调整,而对于这部分工作,我们只给出了目标或者方向,具体如何实现,需要学生灵活运用前面实验中所学习的知识和技术,甚至需要自行查阅一些相关文献才能顺利完成。本章主要是训练学生的独立思考和解决问题的能力。
在本教材中,每个实验开始前都有“预习要求”,针对实验原理和实验内容提出了若干思考题和预习要求,引导学生在弄通实验原理的基础上做好充分的准备工作,以保证课堂实验效果。在每个实验完成后都有“实验报告要求”,通过撰写实验报告和回答与实验相关的思考题,引导学生对实验原理和设计思路进行总结,对实验现象进行分析,对典型问题进行探究和思考,达到巩固和深化知识的目的。
在教材的内容编排上,我们注重知识的贯通性和学生综合能力的培养,实验内容层层递进,难度逐步加大,有利于不同学校的教师根据实际情况,结合学生的水平和兴趣,开展分层次的教学,不同层次的学生可以有选择地完成不同的实验内容,从而达到因材施教、个性化发展的培养目标。
以EDA技术为基础的计算机组成原理实验,与先行的数字逻辑、后续的计算机接口与通信实验课程形成了完整的实验课程体系,通过这一系列硬件类课程的学习和实践,使计算机专业的学生在整个大学阶段熟悉从逻辑器件设计到计算机系统设计的全过程。
由于作者水平有限,肯定有不少考虑不周和不足之处,敬请使用本教材的教师和学生批评指正。
作 者2012年12月
第1章 MIPS部件基础实验1
实验1-1 存储单元1
实验1-2 运算单元30
实验1-3 协处理器48
实验1-4 其他部件53第2章 MIPS处理器综合实验65
MIPS处理器简介65
实验2-1 指令系统68
实验2-2 数据通路84
实验2-3 多周期控制器设计97
实验2-4 多周期处理器设计111第3章 MIPS高级设计实验125
实验3-1 MIPS指令扩展处理器设计125
实验3-2 基于MIPS CPU和8255A设计计算器149
实验3-3 基于MIPS CPU、8255A、8253设计循环程序158附录1 32位MIPS指令集169
附录1-1 R型指令169
附录1-2 I型指令177
附录1-3 陷阱指令179
附录1-4 存取指令182
附录1-5 分支指令186
附录1-6 跳转指令189
附录1-7 CP0型指令190
附录1-8 异常指令190附录2 状态机信号使能表192附录3 输出信号表达式197附录4 常量定义202附录5 GW48-SOPC电路模式205附录6 GW48-SOPC实验台引脚对照表210参考文献211