毕业设计论文基于FPGA的嵌入式系统设计.doc
《毕业设计论文基于FPGA的嵌入式系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于FPGA的嵌入式系统设计.doc(48页珍藏版)》请在三一办公上搜索。
1、基于FPGA的嵌入式系统设计 摘 要本文设计完成的是基于FPGA的嵌入式系统开发板,它可以完成FPGA、嵌入式系统和SOPC等的设计和开发。开发板以Altera公司的Cyclone系列FPGAEP1C6为核心,在其外围扩展FLASH、SRAM、A/D、D/A、键盘、LED显示、LCD显示、串口通信、VGA接口、PS2接口和USB接口等器件,使其成为一个完整的嵌入式开发系统,系统采用模块化设计,各个模块之间可以自由组合,使得该开发板的灵活性和可扩展性大大提高。同时开发板所提供的丰富的接口模块,供人机交互和器件间通信使用,方便了开发者的设计和系统的嵌入,可以满足普通高等院校、科研人员等的需求。开发
2、者可以使用VHDL语言、Verilog HDL语言、原理图输入等多种方式进行逻辑电路和功能模块设计,也可以利用Altera公司提供的IP资源和Nios 16/32位处理器开发嵌入式系统,借助QuartusII和Nios SDK Shell软件进行编译、下载,并通过本嵌入式系统开发板进行调式和结果验证。关键词:嵌入式系统,Nios嵌入式处理器,SOPC,FPGA ABSTRACTThe thesis completes a design of an embedded system development board based on FPGA.The development board can
3、complete the design of FPGA,embeded system,SOPC and so on.The development board is based on Altera Cyclone deviceEP1C6,the board extends several peripheral devices such as,FLASH,SRAM,A/D,D/A,LED,LCD,keyboard,serial port,VGA interface,PS2 interface,USB interface and so on.All the devices constitute a
4、n integrated embeded development system. The development board offers us plenty of interfaces to meet the need of the device communication and the intercommunion between human and computer,which makes the design and the embedding of the system more easier.The Nios Development Board can meet the need
5、 of scientific researchers and other college researchers.The developers can use VHDL,Verilog HDL,schematic input mode and so on to design logic circuit and function block,they can alse use the IP core and Nios microprocessor which are offered by Altera to develop embedded systems. The developers can
6、 utilize Quartus and Nios SDK Shell to compile and download,then they can use this development board to debug and validate the result. KEY WORDS: embeded system, Nios embeded CPU,SOPC,FPGA目 录摘 要IIABSTRACTIII目 录IV前 言8第1章 绪 论91.1嵌入式系统概述91.1.1嵌入式系统的特点91.1.2 片上系统和可编程片上系统101.2 Nios嵌入式处理器101.2.1 Nios嵌入式处理
7、器特性101.2.2 Nios嵌入式处理器系统组件121.2.3 Avalon交换结构总线12第2章 Nios嵌入式系统开发板整体分析152.1 系统设计目标152.2 系统设计原理152.3 开发板组件与理论分析162.4 开发板电路设计原理图与PCB布线图18第3章 Nios嵌入式系统开发板硬件开发203.1 硬件开发环境概述203.2 FPGA:EP1C6QC240C8的特性和电路设计203.2.1 特性和封装203.2.2 引脚说明203.2.3 工作条件213.3 串行配置器件:EPCS1的特性和电路设计213.3.1 Cyclone FPGA的配置213.3.2串行配置器件: EP
8、CS1/EPCS4223.3.3 EPCS1的电路设计233.4 SRAM:IDT71V016的特性和电路设计233.4.1 器件特性243.4.2 IDT71V016工作方式243.4.3 IDT71V016的电路设计253.5 FLASH:AM29LV800B的特性和电路设计263.5.1 器件特性263.5.2 器件工作方式描述273.5.3 AM29LV800总线操作283.5.4 AM29LV800的电路设计28第4章 Nios嵌入式系统开发板调试304.1 片内RAM、ROM调试304.2 GERMS监控调试354.3 扩展SRAM调试394.4 扩展FLASH调试41第5章 利用
9、Nios嵌入式系统开发板完成DDS的设计445.1 理论分析445.2 利用开发板实现的优点455.3系统设计与实现465.3.1 参数选取465.3.2 系统设计465.3.3 系统实现46第6章 总 结486.1 主要工作总结486.2 结论486.3 改进意见4848 前 言FPGA的特点及其发展趋势:嵌入式系统,是一个面向应用、技术密集、资金密集、不可垄断的产业,随着各个领域应用需求的多样化,嵌入式设计技术和芯片技术也经历着一次又一次的革新。虽然ASIC的成本很低,但设计周期长、投入费用高、风险较大,而可编程逻辑器件(Programmable Logical Device,PLD)设计
10、灵活、功能强大,尤其是高密度现场可编程逻辑器件(Field Programmable Gate Array,FPGA)其设计性能已完全能够与ASIC媲美,而且由于FPGA的逐步普及,其性能价格比已足以与ASIC抗衡。因此,FPGA在嵌入式系统设计领域已占据着越来越重要的地位。可编程片上系统(SOPC)是一种特殊的嵌入式系统:首先它是片上系统(SOC),即由单个芯片完成整个系统的主要逻辑功能;其次,它是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件在系统可编程的功能。SOPC结合了SOC和FPGA各自的优点,一般具备以下基本特征: l 至少包含一个嵌入式处理器内核 l 具有
11、小容量片内高速SRAM资源 l 丰富的IP Core资源可供选择 l 足够的片上可编程逻辑资源 l 处理器调试接口和FPGA编程接口 l 可能包含部分可编程模拟电路 l 单芯片、低功耗、微封装本文设计完成的是基于FPGA的嵌入式系统开发板,它可以完成FPGA、嵌入式系统、SOPC的设计和开发。 第1章 绪 论1.1嵌入式系统概述嵌入式系统是嵌入到对象体系中的专用计算机系统,包括硬件和软件两大部分。硬件包括处理器、存储器、输入输出接口和外部设备等,软件包括系统软件和应用软件,嵌入式系统的系统软件和应用软件紧密结合。嵌入式处理器是嵌入式系统的核心,有硬核和软核之分。常用的嵌入式处理器硬核有ARM、
12、MIPS、PowerPC、Intel x86和Motorola 68000等;Altera公司开发的Nios是16/32位嵌入式处理器软核。和硬核相比,软核的使用灵活方便。Nios嵌入式处理器是可配置的通用RISC处理器,可以很容易地与用户逻辑相结合,集成到Altera FPGA器件中。Nios具有16位指令系统,用户可选择16位或32位数据宽度和可灵活配置的标准外围设备及软件库。Nios系统将处理器、存储器、输入输出接口和其他IP核灵活地集成到SOPC设计中。1.1.1嵌入式系统的特点嵌入式系统是以应用为中心,以计算机技术为基础,硬件和软件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗
13、等严格要求的专用计算机系统。可以从以下几个方面来理解嵌入式系统的含义:l 嵌入式系统面向用户、面向产品和面向应用,必须与具体应用相结合才会具有生命力,才更具有优势。嵌入式系统与应用紧密结合,具有很强的专用性。l 嵌入式系统将先进的半导体技术、计算机技术和电子技术以及各个行业的具体应用相结合,是一个技术密集、资金密集和不断创新的知识集成系统。l 嵌入式系统必须根据应用需求对硬件和软件进行裁剪,以满足应用系统的功能、可靠性、成本、体积和功耗等要求。比较好的发展模式是:首先建立相对通用的硬件和软件基础,然后开发出适应各种需要的嵌入式系统。同时还应该看到,嵌入式系统是一个外延极广的概念。凡是与产品结合
14、在一起的具有嵌入式特点的系统都可以称为嵌入式系统。一般而言,嵌入式系统和通用计算机系统类似,由处理器、存储器、输入输出接口和设备以及软件等部分组成。但作为专用计算机系统的嵌入式系统与通用计算机系统相比,具有以下几个重要特征。l 系统简练。由于嵌入式系统一般应用于小型电子装置,系统资源相对有限,所以系统内核与传统的系统相比要小得多。嵌入式系统一般没有系统软件和应用软件的明显区分,不要求功能的设计和实现过于复杂,这既有利于控制系统成本,同时也有利于保障系统安全。l 专用性强。嵌入式系统的个性化很强,软件和硬件的结合非常紧密,一般要针对硬件进行软件的设计,即使在同一品牌、同一系列的产品中也需要根据硬
15、件的变化和增减对软件不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载也要同系统相结合。l 实时操作系统支持。嵌入式系统的应用程序可以不需要操作系统的支持直接运行,但为了合理地调度多任务,充分利用系统资源,用户必须自行选配实时操作系统(Real-Time Operating System,RTOS)开发平台,这样才能保证程序执行的实时性和可靠性,减少开发时间,保障软件质量。l 专门开发工具支持。嵌入式系统本身不具备自主开发能力,即使在设计完成以后用户通常也不能对程序功能进行修改,必须有一套开发工具和环境才能进行开发。开发工具和环境一般基于通用计算机的软硬件设备、逻辑分
16、析仪和示波器等。在嵌入式系统的软件开发过程中,采用C语言将是最佳的选择。由于汇编语言是非结构化的语言,不能胜任大型的结构化程序设计,必须采用更高级的C语言进行设计。1.1.2 片上系统和可编程片上系统随着半导体技术的不断发展,片上系统(System on a Chip,SOC)成为嵌入式应用领域的热门方向之一。SOC最大的特点是成功实现了软硬件的无缝结合,直接在处理器芯片内嵌入操作系统的代码模块。此外,SOC有极高的综合性,在一个芯片内部运用VHDL等硬件描述语言可以实现复杂的系统。用户使用SOC,不需要再像传统的系统设计一样绘制庞大复杂的电路板,而只需要使用相应的开发工具,将处理器、存储器和
17、接口逻辑集成在一起,并开发相应的软件,编译仿真之后就可以直接交付芯片厂商进行生产。SOC通常是专用集成电路(ASIC),所以不为用户所熟知,而且其开发周期长,生产成本高,产品不能进行修改。随着可编程逻辑器件(Programmable Logic Device,PLD)的广泛应用,可编程片上系统(System on a Programmable Chip,SOPC)越来越多地受到人们的关注。SOPC是在PLD上实现SOC,PLD的可编程性使SOPC的设计和实现非常方便。用户可以灵活地进行系统硬件和软件设计,还可以在现场进行系统修改。PLD性能的不断提高,也使SOPC的性能越来越高。Altera是
18、PLD的大型生产商,生产的PLD有CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)和FPGA(Field Programmable Gate Array,现场可编程门阵列)两大系列。CPLD和FPGA的结构有所不同,但功能差别不大,作为新产品的FPGA要比早期的CPLD性能强大。Altera的SOPC嵌入式处理器(Embedded Processor)解决方案有两种:嵌入ARM922T硬核的Excalibur器件和用于FPGA的可配置Nios嵌入式处理器软核。1.2 Nios嵌入式处理器1.2.1 Nios嵌入式处理器特性Nios嵌入式处理器是
19、用户可配置的通用RISC嵌入式处理器,它是一个非常灵活和强大的处理器。Nios处理器的易用和灵活已经使它成为世界上最流行的嵌入式处理器。嵌入式设计者利用SOPC Builder系统开发工具能够很容易地创建自己的处理器系统。SOPC Builder可用于集成一个或多个可配置的带有许多标准外围设备的Nios CPU,并利用自动形成的Avalon交换结构总线将这些系统连接在一起。可配置Nios CPU是Nios处理器系统的核心,它能够被灵活配置而适用于各种各样的应用。例如一个16位Nios CPU,在片内ROM中运行一个小程序,可以制作成一个实际的序列发生器或控制器,并且能够代替固定编码的状态机。又
20、如一个32位Nios CPU,与外围设备、硬件加速单位和自定义指令一起,构成一个功能强大的32位嵌入式处理器系统。Nios嵌入式处理器的独特性(例如自定义指令和并行的多控制器Avalon交换结构总线)使它不同于市场上其他的处理器软核。这些特性允许Nios用户通过用简单的而非传统的方法加速和优化自己的设计。32位和16位Nios嵌入式处理器典型配置的比较如表1-1所示。表1-1 Nios嵌入式处理器典型配置比较特 性32位Nios CPU16位Nios CPU数据总线宽度/bit3216算术逻辑单元(ALU)宽度/bit3216内部寄存器宽度/bit3216地址总线宽度/bit3216指令长度/
21、bit1616逻辑单元数(LEs)(典型值)1500125MHz125MHz注:其具体数值与器件结构有关Nios嵌入式处理器指令系统结构的设计具有以下特性:(1) 在Altera FPGA中有效实现。l 使用最少的逻辑单元。l 使用最少的存储单元。l 最大的时钟速度。(2) 用SOPC Builder容易进行系统集成。l 简单的存储器接口。l 标准的可配置外围设备库。l 在CPU、外围设备和存储器之间自动形成Avalon交换结构接口逻辑电路。(3) 为编译嵌入式软件优化指令系统结构。l 灵活的寻址方式。l 大容量内部寄存器组的有效利用。l 快速的中断处理。(4) 硬件加速模块。l 有效算法实现
22、。l MSTEP指令:单步乘法单元。l MUL指令:快速整数乘法单元。Nios嵌入式处理器支持Altera主流FPGA的全部系列,器件支持如表1-2所示。表1-2 Nios嵌入式处理器器件支持器 件说 明Stratix II最高的性能,最高的密度,大量的存储资源,特性丰富的平台Stratix GX最高的性能结构,高速串行收发器Cyclone低成本,替代ASIC,适用于价格敏感的应用APEX II高密度,高性能,支持高速差分I/O标准Mercury高性能,高带宽,中密度,包括时钟数据恢复支持Excalibur高性能,处理器硬核解决方案APEX 20K/KE/KC高性能,中到高密度FLEX 10K
23、/KE低成本,低到中密度ACEX 1K低成本,低到中密度HardCopy高密度,大批量ASIC替换器件随着超过1万个Nios开发套件的交付使用,Nios嵌入式处理器已经成为嵌入式处理器软核的标准。Nios嵌入式处理器的系统组件、开发工具和开发平台如表1-3所示。表1-3 Nios嵌入式处理器系统组件、开发工具和开发平台系 统 组 件开 发 工 具开 发 平 台CPUSOPC Builder开发套件Avalon交换结构总线Quartus II设计软件软件授权外围设备GNUPro嵌入式软件开发工具片内调试模块第三方工具1.2.2 Nios嵌入式处理器系统组件Nios嵌入式处理器系统包括一个或多个N
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 FPGA 嵌入式 系统 设计
链接地址:https://www.31ppt.com/p-4863714.html