EDA嵌入式实验开发板案例设计---综合模块.doc

上传人:滴答 文档编号:2068281 上传时间:2019-04-12 格式:DOC 页数:30 大小:16.08MB
下载 相关 举报
EDA嵌入式实验开发板案例设计---综合模块.doc_第1页
第1页 / 共30页
EDA嵌入式实验开发板案例设计---综合模块.doc_第2页
第2页 / 共30页
EDA嵌入式实验开发板案例设计---综合模块.doc_第3页
第3页 / 共30页
EDA嵌入式实验开发板案例设计---综合模块.doc_第4页
第4页 / 共30页
EDA嵌入式实验开发板案例设计---综合模块.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、EDA 嵌入式实验开发板案例设计-综合模块I毕业设计(论文)题 目:EDA 嵌入式实验开发板案例设计-综合模块专 业: 电子信息工程 嘉兴学院本科生毕业设计EDA嵌入式实验开发板案例设计-综合模块摘 要基于自主设计的 FPGA-SP6 开发板的综合模块设计。本论文主要介绍一款采用自定义指令集的 16 位 RISC MCU 的设计与实现。采用硬件描述语言VHDL 进行 RTL 级描述,自顶向下流程和模块化的方法进行设计。整体上分为5 级流水:取指、译码、执行、存储、回写。可以执行算术运算、逻辑运算、读写存储器、IO 口操作。设计了 16 级堆栈,可实现函数多级调用。该 RISC CPU采用哈佛结

2、构,有效的避免了流水线中的结构冒险。分析了该设计中的流水线所遇到的冒险问题,采取了一定的解决方案。并使用仿真工具 Modelsim 对个别模块进行了前、后仿真,ISE 软件综合布局布线,并在 Xilinx Spartan6 LX9 芯片上经过验证。实现简易计算器效果。关键词:FPGA,spartan6,综合模块,RISC,流水线,VHDL,EDA 案例设计EDA 嵌入式实验开发板案例设计-综合模块IIIThe case design Based on embedded experimental board of EDA-Integrated designAbstractThe Integrat

3、ed design based on the FPGA experimental board which desi- gned by ourself. This paper mainly introduces the principle and implementationof a 16 bit RISC MCU with self-defined instruction set. Using a hardware description language VHDL to RTL description, top-down flow and modular de-sign. On the wh

4、ole the CPU is divided into five levels pipeline : Instruction Fetch, Instruction Decode,execution,Memory Access, Write Back.You can perform arithmetic, logic, read and write memory,IO operation. The design have 16 level stack which can realize the function of Nested functions.The RISC CPU adop-teth

5、e Harvard structure, effectively avoid the hazard structure in the pipeline. The hazard in pipeline is analyzed and somemethods to solve the hazard. usingthe Modelsim to post-simulation and before-simulation, ISE integrated tools to synthesize and impleming , and verificating in the Xilinx Spartan6

6、LX9 chip , and realized simple calculator.Keywords: FPGA,spartan6,integrated modules,RISC,pipeline,VHDL嘉兴学院本科生毕业设计目录摘 要 .IIIAbstract .IV目录 .V1 绪论 .71.1 课题的来源 .71.2 课题的意义 .71.3 FPG 案例开发国内外发展现状 .81.4 RISC CPU 国内外发展现状 .91.5 课题研究的主要内容 .92 方案设计与总体设计 .102.1 RISC CPU 的方案设计 .102.2 方案评价 .102.3 流水线 .112.3.1 流

7、水线的简单介绍 .112.3.1 流水线的冒险分析及处理 .122.4 RISC CPU 的总体设计 .143 FPGA 设计 .173.1 顶层模块的设计 .173.1.1 分频模块 .183.1.2 程序存储器 .183.1.3 IF/ID 流水线寄存器 .183.1.4 DEC 解码器 .193.1.7 ID/EXE 流水线寄存器 .223.1.8 ALU 算术逻辑单元: .223.1.9 EXM/MEM 流水线寄存器 .233.1.10 RAM 数据存储器 .233.1.12 多路选择器 .233.1.13 MEM/WB 流水线寄存器 .243.1.14 堆栈的设计: .243.1.1

8、5 控制器 .253.2 整体测试 .25结论 .26参考文献 .27EDA 嵌入式实验开发板案例设计-综合模块V致谢 .28附录 .29嘉兴学院本科生毕业设计1 绪论1.1 课题的来源随着计算机科技的发展,在计算机指令系统的发展与优化过程中,出现了两种不同的优化方向,一个方向为 CISC,另一个方向为 RISC。CISC(复杂指令系统计算机)是早期大多数微处理器所采用的体系,如摩托罗拉公司的 68k系列和 Intel 公司的 80x86 等。早期的电脑所使用的是组合语言编程,价格昂贵记忆体速度又慢,这也是 CISC 得以发展的一个重要原因。自 20 世纪 70 年代中期就职于 IBM 公司的

9、 John Cocke(约翰科克,IBM的资深研究员,为 IBM 计算机市场的开拓和计算机科学技术的发展起到至关重要的作用)首先提出著名的 28 定律之后,这一理论得到了加州大学伯克利分校的 D Patterson 和斯坦福大学的 J Hennessy 关注,他们对此定律、想法作了进一步研究,提出了一种有别于传统 CISC 构架的新型计算机体系结构,即 RISC 构架。RISC 是一种新的芯片体系,目的是为了提高处理器运行的速度。并且它的关键在于流水线的操作,使得一个时钟周期内可以完成多条指令,这是提高处理速度的本质原因。从 20 世纪 80 年初兴起至今,RISC 技术在计算机领域一直伴随着

10、其发展,尤其是在嵌入式微处理器方面,RISC 体系结构无论是在深度还是广度上都得以充分的应用。这些嵌入式微处理器在工业控制、无线网络、多媒体处理等实时系统中被广泛地应用,并且扮演着重要的角色 1。FPGA 现场可编程门阵列,凭借着其强大的功能和并行处理优势被称为在CPU、 DSP 之后又一系统核心。FPGA 直接操控逻辑门级,操控的层次更加深入,设计的自由度也更大,理论上只要 FPGA 里面的集成规模足够大,它可以实现任何的数字系统,当然也包括单片机甚至是 CPU,因此本文基于此用FPGA 实现一个简单的自制 CPU。1.2 课题的意义数字电路的发展速度已经是其他事物所不能比拟的,大容量并辅以

11、高速度的可编程逻辑器件不断的推陈出新,使得 SOC(片上操作系统)系统成为了新宠,它是将整个应用电子系统集成在一块面积相当小的硅芯片上。另一方面,相应公司所推出的各样开发平台越来越人性化,只要掌握一种硬件描述语言就能够在较短的时间内设计出较为复杂的电子系统,这有利于缩短设计周期,加快产品的上市速度,给电子市场带来了巨大的变革。嵌入式系统由于其明显的优势已经在各行各业得到广泛应用,在军事领域,医疗影像,数字通信,工业EDA 嵌入式实验开发板案例设计-综合模块7控制等方面都能看到嵌入式系统的身影。SOC 模块化设计的关键乃在于各类嵌入式核、IP 模块的实现,而在这其中 MCU 核的设计占据了举足轻

12、重的地位,因为几乎在所有的系统应用中,都会以 MCU 为控制的核心 2。RISC(Reduced Instruction Set Computer,精简指令集计算机)处理机经常作为核心部件广泛应用于嵌入式系统和 SOC(System on Chip,片上系统)等信息系统中,因此其设计技术也是集成电路设计领域的核心技术而受到广泛重视 3。RISC CPU 与生活密切相关,它已经进入消费电子的各个领域,ARM、MIPS 、PowerPC 等处理器都属于 RISC 家族的一部分,在国际市场上RISC 处理器占有巨大的份额,RISC 的研发也是一个非常热门的领域,只有理解 RISC 的原理才能更好地认

13、识和掌握已有的 RISC 架构的处理器 4。1.3 FPG 案例开发国内外发展现状 近年来,电子设计自动化(EDA,Electronic Design Automatic)技术飞速发展,并已逐渐成为现代电子技术的核心。随着 EDA 开发工具功能的不断完善,使得现场可编程门阵列(FPGA,Field Programmable Gate Array)技术得到广泛的应用,并成为当今电子设计领域中应用最广泛的可编程逻辑器件之一。由于FPGA 具有编程灵活、设计周期短、可靠性高、开发费用低、风险小等优点,所以非常适合在实验室中使用 5。 由于传统的电子实验信息量少、效率低、可靠性差、针对性强,已经不能适

14、应电子技术的高速发展要求,因此,FPGA 教学系统迅速发展起来。目前,国内外很多大学都开始了相关的 FPGA 课程:加拿大多伦多大学早在 80 年代中期就投入到 FPGA 的教学研究当中,并公开了 FPGA 芯片的研究方法和相关的工具;美国斯坦福大学直接用 Xilinx 大学计划提供的开发板进行教学研究;麻省理工大学根据自身要求,开发出了一款基于 Xilinx 芯片的 FPGA 实验板,供学生使用;伯克利大学的天文望远镜系统采用 FPGA 技术分析搜集到的无线电,来判断是否有外星人;亚利桑那大学也在硬件教学实验中加入了 FPGA 和 EDA的内容。在国内,由于种种原因,FPGA 的研究仍处于起

15、步阶段,但是很多大学已经开设了 FPGA 相关课程。它们主要是和 Xilinx 公司组建联合实验室,由Xilinx 公司免费提供大量的 FPGA 开发平台及套件,给学生进行 FPGA 基础教学实验,比如浙江大学、清华大学、复旦大学等知名学府。随着 FPGA 知识的普及, 大多数高校开始了从事 FPGA 应用方面的研究,比如上海交通大学用FPGA 做人脸识别的项目,西安交通大学用 FPGA 来做机器人,北京工业大学用 FPGA 给玩具做语音识别,天津工业大学用 FPGA 进行信号传输与处理,等嘉兴学院本科生毕业设计等。1.4 RISC CPU 国内外发展现状 1964 年 CDC 公司推出的 C

16、DC6600 是第一个超级计算机,具备了 RISC 的一些基本特征。1975 年 Cocke 到 IBM 的 Yorktown 研究中心开始研制 IBM 801,801 是最早开始设计的 RISC 处理器,Cocke 获得了 Eckert-Mauchly 和 Turing奖。 经过半个世纪的发展。目前,比较有影响的 RISC 处理器产品有 Compaq 公司的 Alpha,HP 公司的 PA-RISC,IBM 公司的 Power PC,MIPS 公司的 MIPS 和 Sun 公司的 Sparc。随着我国信息化进程的不断推进,计算机技术还将对我国的生产力的发展产生日益深远的影响。近年来我国在 C

17、PU 设计领域取得了一些重大突破,相继研制出龙芯系列、方舟系列高性能 CPU,此外位于台湾的威盛电子也是较大的处理器生产商。然而我国的 CPU 设计及制造技术与国外相比还有很大差距,我国信息产业中与 CPU 相关的许多核心技术及产品仍然主要依赖进口,不仅经济上受制于人,而且信息系统的安全乃至国家安全也面临威胁。FPGA 技术自20 世纪 80 年代中期出现至今,引起了电子设计技术的深刻变革,也成为现代电子设计技术的核心。因此,基于 FPGA 技术的 CPU 设计具有较高的研究价值6。1.5 课题研究的主要内容 本课题拟在 FPGA 开发板上设计一个 RISC CPU,一个五级流水线的 RISC

18、 CPU。设计包括主体设计,指令集设计,流水线冒险分析与解决,各功能模块的简要说明。最终实现一个简单的计算器。1、流水线冒险分析及处理。2、设计五级流水的 RISC CPU。3、LCD12864 显示实验。简单计算器的实现。EDA 嵌入式实验开发板案例设计-综合模块92 方案设计与总体设计2.1 RISC CPU 的方案设计图 2-1 总体设计方案图SOC 包括硬件和软件设计两部分,在硬件设计中,一般采用 Top-down 的流程进行设计,将系统按功能进行划分,在确定各个模块的功能后,开始编写代码实现相应的功能,并进行功能验证,当所有模块的功能符合要求后,依据顶层总体设计框图,将各功能模块连接

19、起来,最后通过软硬件的协同调试,证明系统功能的完备性 8。2.2 方案评价一、CPU 的选取方案一:选用 8 位的字长,数据总线为 8 位。数据处理的能力较弱,性能较差,资源占有率较小。方案二:选用 16 位的字长,数据总线为 16 位。数据处理的能力较强,性能较好,资源占有率适中。方案三:选用 32 位的字长,数据总线为 32 位。数据处理的能力最强,性能最好,资源占有率较大。通过比较三个方案的特点,最终选用 16 位 CPU。二、指令的选取方案一:选用已有的指令集,比如 ARM 指令集或 MIPS 指令集。采用已有的指令集可以直接使用现成的编译环境,指令比较丰富、全面。但是部分指令较为复杂

20、,不易实现,或能被别的指令组合代替,有一定的局限性。嘉兴学院本科生毕业设计方案二:选用自定义指令集,即选取最常用的指令。针对具体的功能,设计指令集。这种方式实现起来比较方便,编程能够做到心中有数。通过比较两种方案的特点,最终选用自定义指令集。三、指令长度的选定方案一:选用固定的指令长度。一般的 CPU 的指令长度都是固定的,如 8位、16 位、32 位等。这些指令长度都是 8 的倍数,这样便于数据存储在数据存储器中,也便于地址对齐。但使用固定指令长度,CPU 设计中就会有一定的局限性,如果需要增加新的指令集,需要整体上进行改动,不易操作。方案二: 自定义指令长度。由于指令长度不是 8 的倍数,

21、不容易存放进Block Memory Access 中。但是指令容易扩展,编写起来也方便。通过比较以上两种方案的特点,最终选用自定义指令长度。四、系统框架的设计:方案一:采用 3 级流水,取指、译码、执行。方案二:采用 4 级流水,取指、译码、执行、存储。方案三:采用 5 级流水,取指、译码、执行、存储、回写。综上所述,流水线级数,寄存器越多,组合延时造成的延时就越低,最长路径越短,主频越高。所以本设计选用 5 级流水作为系统框架。2.3 流水线2.3.1 流水线的简单介绍图 2-2 五级流水线时空图流水线:流水线(pipeline )技术是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。流水线是 Intel 首次在 486 芯片中开始使用的。流水线的工作方式就象工业生产上的装配流水线。在 CPU 中由 56 个不同功能的电路单元组成一条指令处理流水线,然后将一条 X86 指令分成 56 步后再

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。