《基于VHDL语言的8位RISCCPU的设计终稿WORD》由会员分享,可在线阅读,更多相关《基于VHDL语言的8位RISCCPU的设计终稿WORD(39页珍藏版)》请在金锄头文库上搜索。
1、文档可能无法思考全面,请浏览后下载! 毕业设计说明书基于VHDL语言的8位RISC-CPU的设计学 院: 专 业: 学生姓名: 学 号: 指导教师: 201 年 月 / 摘 要RISC即精简指令集计算机(Reduced Instruction Set Computer)的缩写。RISC-CPU与一般的CPU相比,通过简化指令系统使计算机的结构更加简单合理,从而提高了运算速度。本文对RISC-CPU的架构进行了分析,并使用VHDL语言设计了8位RISC-CPU IP软核。RISC-CPU由八大基本模块构成:时钟发生器、指令寄存器、累加器、算术逻辑单元、数据输出控制器、地址多路器、程序计数器、状态
2、控制器。本设计中借助MAX+PLUS软件平台对各模块进行时序仿真,并最终给出了指令执行的仿真波形,验证了CPU的功能。设计仿真结果表明,该8位RISC-CPU能够完成既定的任务指标,而且在运行效率上有一定程度改善。关键词:RISC-CPU、VHDL、MAX+PLUS、IP软核、时序仿真AbstractRISC reduced instruction set computer that (Reduced Instruction Set Computer) acronym. RISC-CPU and CPU in general compared to instruction by simplif
3、ying the structure of the computer is more simple and reasonable, thereby increasing processing speed. In this paper, RISC-CPU architecture is analyzed, and by using the VHDL language, I designed an 8-bit RISC-CPU IP soft core.RISC-CPU is based on 8 modules: clock generator, instruction register, ac
4、cumulator, arithmetic logic unit, data output controller, address multiplexer, program counter, state controller. In the design, each module are timing simulated on MAX+PLUS software platform, and finally the simulated waveform of instruction execution that verifies the CPU features is given.Design
5、and simulation results show that the 8-bit RISC-CPU can complete the tasks, and also has a certain degree of improvement on operational efficiency.Keywords: RISC-CPU, VHDL, MAX+PLUS, IP soft core, Timing Simulation目 录摘 要IABSTRACT(英文摘要)II目 录III第一章引言11.1 课题背景与发展现状11.1.1 课题背景11.1.2 RISC-CPU的发展现状11.2 RI
6、SC-CPU优势与现实意义11.2.1 RISC-CPU具备的优势11.2.2 本课题的现实意义21.3 本设计的主要内容2第二章RISC-CPU的架构设计32.1 RISC-CPU基本架构32.2 RISC-CPU模块的划分4第三章八位RISC-CPU各模块设计与仿真63.1 时钟发生器63.2 指令寄存器73.3 累加器103.4 算术逻辑单元113.5 数据输出控制器133.6 地址多路器143.7 程序计数器153.8 状态控制器17第四章RISC-CPU的综合及操作时序254.1 RISC-CPU各模块综合254.2 CPU复位启动操作时序29结论30参考文献31致谢32第一章 引
7、言1.1 题背景与发展现状1.1.1 课题背景CPU是Central Processing Unit中央处理器的缩写,它是计算机中最重要的一个部分。CPU由运算器和控制器组成,其内部结构归纳起来可以分为控制单元、逻辑单元和存储单元三大部分,这三个部分相互协调,便可以进行分析,判断、运算并控制计算机各部分协调工作。CPU从最初发展至今已经有几十年的历史了,这期间,按照其处理信息的字长,CPU可以分为:四位微处理器、八位微处理器、十六位微处理器、三十二位微处理器以及六十四位微处理器。而RISC处理器的出现标志着计算机体系结构中的一个根本性变革。RISC即精简指令集计算机(Reduced Instr
8、uction Set Computer)的缩写。从实现的途径看,RISC-CPU与一般的CPU的不同处在于:它的时序控制信号形成部件是用硬布线逻辑实现的而不是采用微程序控制的方式。所谓硬布线逻辑也就是用触发器和逻辑门直接连线所构成的状态机和组合逻辑,故产生控制序列的速度比用微程序控制方式快得多,因为这样做省去了读取微指令的时间。1.1.2 RISC-CPU的发展现状IBM公司在1975年成功开发出第一款RISC处理器,从此RISC架构开始走进超级计算机中。由于指令高度简约,RISC处理器的晶体管规模普遍都很小而性能强大,深受超级计算机厂商所青睐。很快,许多厂商都开发出了自己的RISC指令系统,
9、除了IBM的Power和PowerPC外,还有DEC的Alpha、SUN的SPARC、HP的PA-RISC、MIPS技术公司的MIPS、ARM公司的ARM等。它的应用范围也远比X86来得广泛,大到各种超级计算机、工作站、高阶服务器,小到各类嵌入式设备、家用游戏机、消费电子产品、工业控制计算机,都可以看到RISC的身影。1.2 RISC-CPU优势与现实意义1.2.1 RISC-CPU具备的优势RISC有一套优化过的指令架构,它是根据著名的80/20法则所订立。早在上个世纪60年代,计算机科学家们发现,计算机中80%的任务只是动用了大约20%的指令,而剩下20%的任务才有机会使用到其他80%的指
10、令。如果对指令系统作相应的优化,就可以从根本上快速提高处理器的执行效率。RISC与CISC(一般指普通的X86CPU)比较,有以下优势:指令简单而且少;指令系统选用那些使用频度高的简单指令和一些实用的但不十分复杂的指令,一般指令不超过100条;指令字长固定,寻址方式一般不超过四种,指令格式也不超过四种;所有指令(几乎所有指令)均在单指令周期完成;指令系统中只允许存(STORE)和取(LOAD)指令访问主存,其它指令均在寄存器之间进行;CPU中设置大量的寄存器,称作寄存器堆;指令的运行采用高效的流水线方式;以硬布线控制逻辑为主,不用或少用微码;优化的编译程序,简单有效地支持高级语言;超低功耗。1
11、.2.2 本课题的现实意义本课题的设计具有重要的意义:(1) 从IP设计技术层面看,本课题按照自顶向下(Top-Down)的设计方法,从系统级结构和模块划分到硬件描述、综合、仿真灯,研究了Altera公司的MAX+plusII工具的使用,掌握了IP正向设计的基本方法,积累了宝贵经验。(2) 从RISC-CPU设计技术层面看,通过本课题的设计过程,了解掌握了MIPS指令系统CPU体系结构设计的关键技术。(3) 从嵌入式系统设计技术层面看,集成电路发展已进入IP core复用的SoC时代,8位嵌入式微处理器发展的一个重要特点是片上系统SoC化。本课题也为基于IP核的嵌入式系统设计积累了宝贵经验。(
12、4) 从市场应用层面看,8位RISC-CPU是目前市场上同类产品占市场份额最大的一块,符合我国集成电路当前的设计水平,以它作为参与市场竞争的突破口,来提高企业的市场竞争能力和技术创新能力,是一个切实可行的方案。1.3 本设计的主要内容本文对RISC-CPU的架构进行了探讨,介绍了如何设计RISC-CPU,并且立足于八位的 RISC-CPU设计实例,应用硬件描述语言VHDL语言实现8位简化RISC-CPU IP软核的设计,通过对RISC-CPU结构和指令执行的分析将整个系统划分为各个功能模块,并阐明各模块间的接口信号,给出了每个模块内部设计实现的详细叙述,最后介绍对设计的综合和验证工作,给出了仿
13、真验证数据以及时序图。设计需要实现的这个简化的8位 RISC-CPU采用MIPS的部分指令集,同时对MIPS CPU的结构进行一定的修改。第二章 RISC-CPU的架构设计2.1 RISC-CPU基本架构一个基本的CPU要包括三部分功能:数据的存储、数据的运算和控制部分。与之相对应的硬件结构也分为三部分:存储器、数据通路和控制器。存储器存放指令和数据;数据通路包括ALU、程序计数器等,主要功能是对操作数进行运算,得到结果,并产生程序计数器的值,作为要执行的下一条指令的地址;控制器内有指令寄存器,它对指令进行译码,产生相应的控制信号,完成对存储器和数据通路部分的控制。存储器、数据通路和控制器这三
14、部分的基本关系下图所示:图2-1 CPU基本结构存储器中存放了要执行的指令和相应数据。存储器的读写信号由控制器给出。存储器的地址来源有两个:程序计数器和指令寄存器。在取新指令时,用程序计数器的值作为存储器地址;在执行指令时,用指令中的地址部分作为存储器地址。数据通路主要包括累加器、程序计数器和算术逻辑单元。累加器用于保存参加运算的数据以及运算的中间结果。实际上,累加器也是寄存器,不过,它有特殊性,即许多指令执行过程以累加器为中心。往往在运算指令前,累加器中存放一个操作数,指令执行后,由累加器保存运算结果。另外输入输出指令一般也通过累加器来完成。程序计数器指向下一条要执行的指令。由于程序一般存放
15、在内存的一个连续区域,所以,顺序执行程序时,每取一个指令字节,程序计数器便加一。算术逻辑单元是专门用来处理各种运算的数据信息的,它可以进行加、减、乘、除算术运算和与、或、非、异或等逻辑运算。控制器产生相应的控制信号送到时序和控制逻辑电路,从而,组合成外部电路所需要的时序和控制信号。这些信号送往其他部件,以控制这些部件协调工作。对图2-1中的结构进行细化,可以得到一个简单的架构,如下图所示。该CPU采用总线结构,即控制器所需的指令和数据通路所需的数据都是从总线上得到的。图2-2 CPU的简单架构2.2 RISC-CPU模块的划分计算机进行信息处理可分为两个步骤:一、将数据和程序(即指令序列)输入到计算机的存储器中。二、从第一条指令的地址起开始执行该程序,得到所需结果,结束运行。CPU的作用是协调并控制计算机的各个部件执行程序的指令序列,使其有条不紊地进行。因此它必须具有以下基本功能:(1) 取指令:当程序已在存储器中时,首先根据程序入口地址取出一条程序,为此