单周期CPU实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MIPS-CPU设计实验报告
实验名称:32位单周期MIPS-CPU设计
姓名学号:刘高斯11072205
实验日期:2014年12月19日
目录
前言
MIPS简介------------------------------------------------------------- 3 实验目的------------------------------------------------------------- 3
第一部分VERILOG HDL 语言实现部分
实验内容------------------------------------------------------------- 4 试验环境------------------------------------------------------------- 4 模块简介------------------------------------------------------------- 4 实验截图------------------------------------------------------------- 5 实验感想------------------------------------------------------------- 5 实验代码------------------------------------------------------------- 6
第二部分LOGISIM 语言实现部分
实验内容------------------------------------------------------------- 16 实验环境------------------------------------------------------------- 16
模块设计------------------------------------------------------------- 16 试验感想------------------------------------------------------------- 23
前言
一、MIPS简介
MIPS是世界上很流行的一种RISC处理器。MIPS的意思“无内部互锁流水级的微处理器”(Microprocessor without interlocked piped stages),其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导的研究小组研制出来的。MIPS公司的R系列就是在此基础上开发的RISC工业产品的微处理器。这些系列产品为很多计算机公司采用构成各种工作站和计算机系统。MIPS技术公司是美国著名的芯片设计公司,它采用精简指令系统计算结构(RISC)来设计芯片。和英特尔采用的复杂指令系统计算结构(CISC)相比,RISC具有设计更简单、设计周期更短等优点,并可以应用更多先进的技术,开发更快的下一代处理器。MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。
MIPS处理器是八十年代中期RISC CPU设计的一大热点。MIPS是卖的最好的RISC CPU,可以从任何地方,如Sony,Nintendo的游戏机,Cisco的路由器和SGI超级计算机,看见MIPS产品在销售。目前随着RISC体系结构遭到x86芯片的竞争,MIPS有可能是起初RISC CPU设计中唯一的一个在本世纪盈利的。和英特尔相比,MIPS的授权费用比较低,也就为除英特尔外的大多数芯片厂商所采用。
MIPS的系统结构及设计理念比较先进,其指令系统经过通用处理器指令体系MIPS I、MIPS II、MIPS III、MIPS IV到MIPS V,嵌入式指令体系MIPS16、MIPS32到MIPS64的发展已经十分成熟。在设计理念上MIPS强调软硬件协同提高性能,同时简化硬件设计。
二、实验目的
我们通过VERILOG HDL 语言和LOGISIM 语言分别用语句和图形完成对32位MIPS-CPU的设计,通过前8周的学习我们基本掌握了MIPS的概念和原理,认识到RISC架构的特征和优缺点。通过过老师的讲解,了解到每一条语句的从设计到硬件实现的全过程。通过本次实验我们要更加深入的理解硬件组成的结构,语句逻辑实现的原理。掌握硬件编程语言和硬件图形语言编程的方法。透彻的理解MIPS的特征和优点。
VERILOG HDL 语言实现部分
实验内容
利用VERILOG设计一种32位单周期MIPS CPU。首先设计各个子模块,并将已做好的各个模块进行模块合并,实现单周期CPU的各项指令。
实验环境
Window Xp Quartus II
各个子模块的简单介绍
此程序将数据通路(SingleDataLoad)设定为顶层模块,下面的模块包括:算术逻辑运算单元(ALU)、数据存储器(DataStore)、数据寄存器(Registers)、取指令部件(GetCode)、总控制器(Control),通过顶层模块对各个子模块的调用从而实现了整个单周期CPU。
1)数据通路(SingleDataLoad):进行数据的运算、读取以及存储功能,通过总控制
器产生的各个控制信号,进而实现对数据的各项操作。
2)算术逻辑运算单元(ALU):数据通路调用此模块,根据得到的控制信号对输入数
据进行处理,处理功能有:addu、add、or、subu、sub、sltu、slt等。
3)数据存储器(DataStore):当WrEn控制信号为1时,此时就将输入数据存储到此
存储器中,当WrEn为0时,则根据输入的地址,找到地址对应的单元将单元中的
数据输出。
4)数据寄存器(Registers):在此程序中功能和实现基本和数据存储器相同,但在实
际CPU当中使用的逻辑器件及获取数据的方式还是有所区别的。
5)取指令部件(GetCode):指根据PC所提供的地址从指令寄存器中取出要执行的
指令,再根据各控制信号,得出下一次要执行的指令的地址。(总控制器(Control):总控制器通过从取指令部件获得的指令,进而产生各个控制信号,并将控制信号返
回个数据通路,就此实现各项功能。