1、 本科学生毕业论文 2012 年 5 月 12 日 论文题目: 8 位 RISC 微处理器设计与仿真 学 院: 电子工程学院 年 级: 2008 级 专 业: 集成电路设计与集成系统 姓 名: 学 号: 指导教师: I 摘要 CPU 即中央处理单元的英文缩写,它是计算机的核心部件。计算机进行信息处理可分为将数据和程序(即指令序列)输入到计算机的存储器中和从第一条指令的地址起开始执行该程序,得到所需结果,结束运行。 CPU 的作用是协调并控制计算机的各个部件执行程序的指令 序列,使其有条不紊地进行。因此它必须具有取指令、分析指令、执行指令的功能。 RISC( reduced instructio
2、n set computer,精简指令集计算机)是一种执行较少类型计算机指令的微处理器 。不过它虽然容易,却也不失 CPU 的基本功能和结构。本文对 RSIC CPU 的结构、实现进行了讨论,详细介绍了如何设计 RSIC CPU ,并且立足于 RSIC CPU 设计实例,用 Verilog HDL语言编写了模块,以 EDA工具 Quartus II 进行仿真,全面而系统地介绍了 RSIC CPU 设计设计实例从 模块划分、设计输入、功能仿真、逻辑综合、时序仿真等各环节的流程和方法。 同时本 CPU 的总体结构到局部功能的实现采用了自顶向下的设计方法和模块化的设计思想 。 关键词 RISC CP
3、U; Verilog HDL; 功能仿真 II Abstract CPU is the the acronym of Central Pressing Unit.it is the centre of computer.There are two parts:taking the data and program(order-array)put in the computer and carry out the program from the first order,receive the result,then finish the running.The function of CPU
4、is coordination and control every part to carry out the order,make it go well,so the CPU are provided with the function of get analyse and carry out the order. RISC(reduced instruc tion set computer )CUP means that make the CPU as simple as possible,it is simple,but it is provided with function and
5、constraction as a CPU , This paper discusses the construction of RISC CPU and introduces how to design a RISC CPU.Then the paper focuses on an 8 bits RISC CPU. Combined with EDA toolsQuartus II simulation tool it comprehensively and systematacially introduces the flow and methodology of RISC CPU des
6、ign which is from module partition,design import,function simulation,logic synthesis,timing simulation.At the same time,the construction of CPU and function of part with the design ideology frome top to bottom. Key words RISC CPU;Verilog HDL;Function Simulation目 录 摘要 . I Abstract .II 前 言 . 1 第一章 CPU
7、 与 RISC CPU. 2 1.1 CPU 概述 . 2 1.1.1 基本原理 . 2 1.1.2 基本结构 . 2 1.2 CPU 发展与前景 . 3 1.2.1 CPU 的发展史 . 3 1.2.2 CPU 多核的必然 . 3 1.3 RISC CPU 介绍 . 4 1.4 本章小结 . 4 第二章 语言与操作工具的概述 . 5 2.1 Verilog HDL 语言概述 . 5 2.1.1 HDL 概念与发展史 . 5 2.1.2 Verilog HDL 语言特点 . 5 2.2 QuartusII 概述 . 6 2.2.1 QuartusII 概念与发展史 . 7 2.2.2 Quar
8、tusII 特点 . 7 2.3 本章小结 . 7 第三章 RISC CPU 结构 . 9 3.1 RISC CPU 各个子模块的功能和设计思想 . 9 3.1.1 RISC CPU 寻址方式和指令系统 . 10 3.1.2 时钟发生器 . 10 3.1.3 指令寄存器 . 12 3.1.4 累加器 . 16 3.1.5 算术运算器 . 17 3.1.6 数据控制器 . 18 3.1.7 地址多路器 . 20 3.1.8 程序计数器 . 21 3.1.9 状态控制器 . 22 3.2 外围模块 . 26 3.2.1 地址译码器 . 26 3.2.2 RAM . 28 3.2.3 ROM . 3
9、0 3.3 本章小结 . 31 第四章 RISC CPU 功能验证 . 32 4.1 RISC CPU 操作和时序 . 32 4.1.1 系统的复位和启动操作 . 33 4.1.2 总线读操作 . 33 4.1.3 总线写操作 . 34 4.2 本章小结 . 34 结 论 . 35 参考文献 . 36 附 录 . 38 致 谢 . 52 8 位 RISC 微处理器设计与仿真 1 前 言 21 世纪,人类 进入了信息化的时代, CPU 作为集成电路的高端产品,随着半导体工艺水平的发展,遵守摩尔定律发展规律, CPU 性能每过 18 个月就会翻一番。 CPU 从最初发展至今已经有几十年的历史了,这
10、期间,按照其处理信息的字长, CPU 可以分为:四位微处理器、八位微处理器、十六位微处理器、三十二位微处理器以及六十四位微处理器。 CPU 是 Central Processing Unit中央处理器的缩写,它是计算机中最重要的一个部分,由运算器和控制器组成,其内部结构归纳起来可以分为控制单元、逻辑单元和存储单元三大部分,这三个部分相互协调 ,便可以进行分析,判断、运算并控制计算机各部分协调工作。 CPU 能对指令进行译码并进进行执行规定的动作,可以进行算术和逻辑运算,能与存储器、外设交换数据、提供整个系统所需要的控制。 CPU 是一个复杂的数字逻辑电路,但是基本的逻辑并不复杂。 8 位 RI
11、SC 微处理器设计与仿真 2 第一章 CPU 与 RISC CPU 本节将简单介绍 CPU 特点、功能作用、发展历程以及 CPU 基本结构。通过本章,我们将对 CPU 有一个简单的认识和了解。 1.1 CPU 概述 中央处理器 ( Central Processing Unit, CPU),是电子计算 机的主要设备之一。其功能主要是解释计算机指令以及处理计算机软件中的数据。所谓的计算机的可编程性主要是指对 CPU 的编程。 CPU 是计算机中的核心配件,是一台计算机的运算核心和控制核心。计算机中所有操作都由 CPU 负责读取指令,对指令译码并执行指令的核心部件。 CPU 内部存储器和输入 /输
12、出设备是电子计算机的三大核心部件。 CPU 是由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态总线构成。 1.1.1 基本原理 CPU 的主要运作原理,不论其外部还是内部结构,都是执行储存于被称为程式里的一系列指令,在此讨论 的是遵循普遍的架构设计的。程式以一系列数字储存在电脑记忆体中。几乎所有的 CPU 的运作原理可分为四个阶段:提取 (Fetch)、解码( Decode)、执行 (Execute)和写回 (Writeback)。 1.1.2基本结构 CPU 包括运算逻辑部件、寄存器部件和控制部件。 CPU 从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指
13、令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。 指令是计算机规定执行操作的类型和操作数的基本命令。指令是由一个字节或者多个字节 组成,其中包括操作码字段、一个或多个有关操作数地址的字段以及一些表征机器状态的状态字和特征码。有的指令中也直接包含操作数本身 1。 8 位 RISC 微处理器设计与仿真 3 1.2 CPU 发展与前景 1.2.1 CPU 的发展史 从 20 世纪 70 年代开始,由于集成电路的大规模使用,把本来需要由数个独立单元构成的 CPU 集成为一块微小但功能空前强大的微处理器时。这个名称及其缩写才真正在电子计算机产业中得到广泛应用。尽管与
14、早期相比, CPU 在物理形态、设计制造和具体任务的执行上都有了戏剧性的发展,但是其基本的操作原理一直没有改变。 1971 年,当时还处在发 展阶段的 Intel公司推出了世界上第一台真正的微处理器 4004。这不但是第一个用于计算器的 4 位微处理器,也是第一款个人有能力买得起的电脑处理器! 4004 含有 2300 个晶体管,功能相当有限,而且速度还很慢,从此以后,Intel 公司便与微处理器结下了不解之缘。可以这么说, CPU 的历史发展历程其实也就是 Intel公司 X86 系列 CPU 的发展历程,就通过它来展开的“ CPU 历史之旅”。 这个标准化趋势始于由单个晶体管组成的大型机和
15、微机年代,随着集成电路的出现而加速。集成电路使得更为复杂的 CPU 可以在很小的空间中设计 和制造出来(在微米的量级)。 1990 年,高速 CPU时代的腾飞 Intel公司推出的 80386 SL 和 80386 DL都是低功耗、节能型芯片,主要用于便携机和节能型台式机。 80386 SL 与 80386 DL 的不同在于前者是基于 80386SX 的,后者是基于 80386DX 的,但两者皆增加了一种新的工作方式:系统管理方式。当进入系统管理方式后, CPU 就自动降低运行速度、控制显示屏和硬盘等其它部件暂停工作,甚至停止运行,进入“休眠”状态,以达到节能目的。 CPU 的标准化和小型化都
16、使得这一类数字设备在现代生活中的出现 频率远远超过有限应用专用的计算机。现代微处理器出现在包括从汽车到手机到儿童玩具在内的各种物品中。人们又进入了奔腾时代、酷睿时代 2。 1.2.2 CPU 多核的必然 厂商的微处理器发展计划随着 64 位处理器的来临,英特尔特制定了 IA64 的发展蓝图,将采用多种方法提升高端处理器安腾的性能这些方法包括提高时钟频率,加入额外地处理内核,改善总体架构效率,以及提升 L1、 L2、 L3 高速缓存容量和速度。英特尔8 位 RISC 微处理器设计与仿真 4 推出了全新的代号为 TANGLEWOOD 的处理器,这是一种集成了 16 个内核的 CPU,它将带有海量的
17、缓存,和更高的主频 。而功耗不会高于现在任何的安腾处理器。这将使服务器设计无需采用水冷等特殊的散热措施。未来产品将全面采用超线程和多核心技术,新的微结构逐步运用于普通桌面产品上。高速缓存容量和时钟频率将不断攀升,近日,英特尔宣布了其未来两年双核心技术的发展蓝图,再命名方式上英特尔双核心处理器将不会沿用目前 PENTUM 4 的命名方式,新的桌面双核心处理技术将被简单成为奔腾 D 和 CPRE2 DUO,而架构上由目前的单核心没有多大区别,奔腾 D 不仅是 HT 技术,而酷睿由于 2 的支持将可以处理并行 4 线程任务。 除此以外,两款芯片均支持 800 兆 赫兹缓存容量也一样。虽然摩尔定律的神
18、话以告终结,在短时间内,频率提升似乎已经暂缓了脚步,但是相信科技仍会有方法让我们用上更高性能的处理器,相信在摩尔后时代,多核心处理器将会继续遵循着摩尔定律,从而使得处理器技术得以不断的得以提升和发展 3。 1.3 RISC CPU 介绍 RISC( reduced instruction set computer,精简指令集计算机)是一种执行较少类型计算机指令的微处理器,起源于 80年代的 MIPS 主机(即 RISC 机), RISC 机中采用的微处理器统称 RISC 处理器。这样一来,它 能够以更快的速度执行操作(每秒执行更多百万条指令,即 MIPS)。因为计算机执行每个指令类型都需要额外
19、的晶体管和电路元件,计算机指令集越大就会使微处理器更复杂,执行操作也会更慢。 1.4 本章小结 本章主要 介绍 CPU 特点、功能、作用、发展历程以及 CPU 基本结构,以及今后 CPU多核的必然性,借此引出 RISC CPU 的定义,通过本章的介绍,能让读者对 CPU 的整体结构有一个较深的理解,使读者明白 CPU 存在的跨时代意义,这样能对后续的 RISC CPU 学习有很大帮助。 8 位 RISC 微处理器设计与仿真 5 第二章 语言与操作工具的概述 2.1 Verilog HDL 语言概述 本节将简单介绍 Verilog HDL 语言特点、开发流程,以及 Verilog 程序的基本结构
20、。通过本章,我们将对 Verilog HDL 有一个简单的认识和了解。 2.1.1 HDL 概念与发展史 Verilog HDL 是一种硬件描述语言( HDL:Hardware Discription Language),是一种以文本形式来描述 数字系统 硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。 Verilog HDL 和 VHDL 是目前世界上最流行的两种 硬件描述语言,都是在 20 世纪 80 年代中期开发出来的。前者由Gateway Design Automation 公司(该公司于 1989 年被 Cadence 公司收购)开
21、发。两种HDL 均为 IEEE 标准。 1981 年 Gateway Automation(GDA)硬件描述语言公司成立 , 1983 年该公司的 Philip Moorby首创了 Verilog HDL, Moorby后来成为 Verrlog HDL-XL的主要设计者和 Cadence公司的第一合伙人。 又经过多年的发展, 1993 年,几乎所有 ASIC 厂商都开始支持 Verilog HDL,并且认为 Verilog HDL-XL 是最好的仿真器。同时, OVI 推出 2.0 版本的 Verilong HDL 规范, IEEE 接收将 OVI 的 Verilong HDL2.0 作为 I
22、EEE 标准的提案 , 1995 年 12 月,IEEE 制定了 Verilong HDL 的标准 IEEE1364-1995。 任何新生事物的产生都有它的历史沿革,早期的硬件描述语言是以一种高级语言为基础,加上一些特殊的约定而产生的,目的是为了实现 RTL 级仿真,用以验证设计的正确性,而不必像在传统的手工设计过程中那样,必须等到完成样机后才能进行实测 和调试。 2.1.2 Verilog HDL 语言特点 下面列出的是 Ve r i l o g 硬件描述语言的主要能力: 基本逻辑门,例如 and、 o r 和 nand 等都内置在语言中。 用户定义原语( UDP)创建的灵活性。用户定义的原语既可以是组合逻辑原语,也可以是时序逻辑原语。