论文部分内容阅读
在计算机组成原理以及计算机系统结构等教学实验中,微处理器是进行实验的必备工具,它提供了学生实验的软硬件平台。近几年随着计算机和微电子技术的发展,微处理器的设计和实现一直是国内外研究的热点。目前国外高校的计算机及电子相关课程都已经把微处理器的设计作为一项重要内容,实验的灵活性以及留给学生的创作空间也很大。国内传统的计算机组成原理实验是在微处理器结构等都相对固定的情况下进行的,学生主要进行功能验证,缺少自主设计和创新过程。为改变国内微处理器实验教学现状,必须改进现有的微处理器教学方法,设计一种灵活性可靠性和可扩展性兼具的微处理器实验,充分发挥实验作用。鉴于此,本论文进行了实验微处理器的设计研究。本微处理器采用Verilog硬件描述语言设计了该微处理器,在Xilinx SpartanII系列XC2S150 FPGA上实现,并且在实验设备上验证了所有的指令功能。论文部分首先介绍了国内外发展状况,微处理器实验设计的意义以及本微处理器的开发环境与开发语言。对于微处理器设计而言,指令系统的设计以及微处理器可以实现的操作类型,是设计微处理器首要考虑的问题,文章随后介绍了指令集的构建、实现的指令功能和多种寻址方式的实现,将微处理器可实现的算术逻辑运算、移位转移、出栈入栈、子程序调用、自增自减等操作一一说明;寄存器寻址、寄存器间接寻址、变址寻址、相对寻址、立即寻址、直接寻址、间接寻址等7种常用寻址方式的实现也有具体阐述。之后给出了微处理器的数据通路,控制器运算器部分的实现过程,这部分也是文章的重点介绍的部分,对运算器和控制器的设计,应该考虑速度和资源两方面。文章介绍了运算器设计过程中对提高速度,减少占用资源方面的考虑所进行的设计;控制器部分涉及内部结构以及实现方法、控制存储器的分配设计、各种指令如何用微程序实现等。文章最后通过两个应用程序,说明微处理器的工作过程。本微处理器具有很好的通用性和灵活性,可根据不同的实验要求下载微处理器的不同部分,进行部件或整机实验。对于难度要求不高的实验者,可以先对指令系统,指令格式,寻址方式,数据通路,运算器,微程序控制器进行验证,再对整个微处理器运行进行实验,将课堂所学知识与动手实践相结合,循序渐进的掌握微处理器各个部件功能和各部件之间的相互协作。微处理器同时也为实验者留有创新空间,实验者可以在原有微处理器的基础上,向微程序控制器中写入新的微程序代码,增加微处理器的指令功能,或更改处理器各个部件的结构,这使得实验者动手设计微处理器成为可能,为微处理器实验教学带来很好的效果。