基于VHDL的UART设计毕业论文(46页).doc
《基于VHDL的UART设计毕业论文(46页).doc》由会员分享,可在线阅读,更多相关《基于VHDL的UART设计毕业论文(46页).doc(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于VHDL的UART设计毕业论文-第 45 页毕业论文基于VHDL的 UART设计The UART Design Based on VHDL【摘 要】UART是设备和设备间进行通信的关键,当一个设备需要和另一个连接的设备进行通信时,通常采用数字信号,这种源自并行的信号必须转换成串行信号才能通过有线或无线传输到另一台设备。在接收端,串行信号又转换成并行信号进行处理,UART处理这种数据总线和串行口之间的串-并和并-串转换。本文所要实现的就是就是这种串-并和并-串的转换,使之能够进行数据的传输。本文介绍了用FPGA技术实现UART电路的一种方法,用VHDL进行编程,在Modelsim下进行编译
2、及仿真等。【关 键 字】FPGA,VHDL,UART,接收,发送【Abstract】UART is the key of communications between devices.When a device needs to communicate with a connected device,usually digital signals applied,which must be transformed into serialised signal to another device through wires or wireless space.When being receive
3、d to process, the serialised signals must be transformed to parellised signals.UART processes this serial_data to parallel_data /parallel _data to serial_data transform between data bus and slave port. This paper is to implement this serial to parallel and parallel to serial transform and make the t
4、ransferring between data properly.This paper introduces a method implemented by FPGA technique programmed by VHDL,simulated and compiled by Modelsim.【Keywords】FPGA,VHDL ,UART,receive ,send 目 录1 绪论611 EDA 技术发展概况61.1.1 CAD 阶段(20 世纪 60 年代中期20 世纪 80 年代初期)61.1.2 CAE 阶段(20 世纪 80 年代初期20 世纪 90 年代初期)61.1.3 E
5、DA 阶段(20 世纪 90 年代以来)61.2 FPGA的发展及优点71.3 电路设计方法发展81.3.1 自底向下的设计方法9.协同设计;10(1)总体结构的设计10(2)子模块的激活实现(Acitive Module Design)10(3)模块的最后合并(Final Assembly)103模块化分的原则10(3)将不同优化目标的逻辑分开11(4)将松约束的逻辑单元归到同一模块11(6)合适的模块规模114.全局逻辑的设计111.4 ISE软件介绍121.6 本文主要工作132.1 常用的计算机接口132.2 RS-232川口通信简介162.2.2RS-232协议171DSR信号线17
6、2DTR 信号线173RTS 信号线174CTS 信号线175DCD 信号线176RI信号线172.2.3RS-232通信时序和UART192.2.4. 串行通信实现方案203.1 UART实现原理213.2 UART工作流程224.3 波特率发生器模块的实现24RISE_PULSE_COUNT : BD_COUNT := BD9600_HPC );26FULL_PULSE_COUNT = 10,27RISE_PULSE_COUNT = 5274.4 移位寄存器模块的实现274.5奇偶校验器模块实现28PARITY_RULE : PARITY := NONE );284.6 总线选择模块的实现
7、294.7 计数器模块的实现304.8 UART内核模块的实现31(2)奇偶校验器31(5) 波特率发生器344.8.3 UART内核模块的实现37PARITY_RULE : PARITY := NONE );38(2)内部信号定义39(3)串行加载序列的生成方法394.9 UART顶层模块的实现44DATA_BIT : INTEGER := DATA_BIT;45PARITY_RULE : PARITY := PARITY_RULE;45TOTAL_BIT : INTEGER := TOTAL_BIT455.2.1 信号监测器模块的仿真495.2.2 波特率时钟模块的仿真495.2.3 移位
8、寄存器模块的仿真495.2.4 奇偶校验器模块的仿真495.2.5 总线选择器模块的仿真505.2.6 计数器模块的仿真505.2.7 顶层模块的仿真505.3 FPGA验证511 绪论21 世纪人类将全面进入信息化社会,对微电子信息技术和微电子 VLSI 基础技术将不断提出更高的发展要求,微电子技术仍将继续是21世纪若干年代中最为重要的和最有活力的高科技领域之一。而集成电路(IC)技术在微电子领域中占有重要的地位。且伴随着IC技术的发展,电子设计自动化(Electronic Design Automation,EDA)已经逐渐成为重要的设计手段,其广泛应用于模拟与数字电路系统等许多领域。11
9、 EDA 技术发展概况电子设计自动化(EDA,Electronic Design Automation)是指利用计算机完成电子系统的设计。EDA 技术是以计算机和微电子技术为先导,汇集了计算机图形学、拓扑、逻辑学、微电子工艺与结构学和计算数学等多种计算机应用学科最新成果的先进技术。EDA 技术以计算机为工具,代替人完成数字系统的逻辑综合、布局布线和设计仿真等工作。设计人员只需要完成对系统功能的描述,就可以由计算机软件进行处理,得到设计结果,而且修改设计如同修改软件一样方便,可以极大地提高设计效率。根据电子设计技术的发展特征,EDA技术发展大致分为三个阶段:1.1.1 CAD 阶段(20 世纪
10、60 年代中期20 世纪 80 年代初期)第一阶段的特点是一些单独的工具软件,主要有PCB(Printed Circuit Board)布线设计、电路模拟、逻辑模拟及版图的绘制等,通过计算机的使用,从而将设计人员从大量烦琐重复的计算和绘图工作中解脱出来。例如,目前常用的Protel早期版本Tango,以及用于电路模拟的 SPICE 软件和后来产品化的 IC 版图编辑与设计规则检查系统等软件,都是这个阶段的产品。这个时期的EDA一般称为CAD(Computer Aided Design)。1.1.2 CAE 阶段(20 世纪 80 年代初期20 世纪 90 年代初期)这个阶段在集成电路与电子设计
11、方法学以及设计工具集成化方面取得了许多成果,各种设计工具,如原理图输入、编译与连接、逻辑模拟、测试码生成、版图自动布局以及各种单元库已齐全。由于采用了统一数据管理技术,因而能够将各个工具集成为一个CAE(Computer Aided Engineering)系统。按照设计方法学制定的设计流程,可以实现从设计输入到版图输出的全程设计自动化。这个阶段主要采用基于单元库的半定制设计方法,采用门阵列和标准单元设计的各种ASIC得到了极大的发展,将集成电路工业推入了ASIC时代。多数系统中集成了PCB自动布局布线软件以及热特性、噪声、可靠性等分析软件,进而可以实现电子系统设计自动化。1.1.3 EDA
12、阶段(20 世纪 90 年代以来)20 世纪 90 年代以来,微电子技术以惊人的速度发展,其工艺水平达到了深亚微米级,在一个芯片上可集成数百万乃至上千万只晶体管,工作速度可达到 GHz,这为制造出规模更大,速度更快和信息容量很大的芯片系统提供了条件,但同时也对EDA系统提出了更高的要求,并促进了EDA技术的发展。此阶段主要出现了以高级语言描述、系统仿真和综合技术为特征的第三代EDA技术,不仅极大地提高了系统的设计效率,而且使设计人员摆脱了大量的辅助性及基础性工作,将精力集中于创造性的方案与概念的构思上,下面简单介绍这个阶段EDA技术的主要特征:(1) 高层综合(HLS,High Level S
13、ynthesis)的理论与方法取得较大进展,将 EDA设计层次由RT级提高到了系统级(又称行为级),并划分为逻辑综合和测试综合。逻辑综合就是对不同层次和不同形式的设计描述进行转换,通过综合算法,以具体的工艺背景实现高层目标所规定的优化设计,通过设计综合工具,可将电子系统的高层行为描述转换到低层硬件描述和确定的物理实现,使设计人员无须直接面对低层电路,不必了解具体的逻辑器件,从而把精力集中到系统行为建摸和算法设计上。测试综合是以设计结果的性能为目标的综合方法,以电路的时序、功耗、电磁辐射和负载能力等性能指标为综合对象。(2)采用硬件描述语言HDL(Hardware Description Lan
14、guage)来描述10万门以上的设计,并形成了VHDL(Very High Speed Integrated Circuit HDL)和Verilog HDL两种标准硬件描述语言。它们均支持不同层次的描述,使得复杂IC的描述规范化,便于传递、交流、保存与修改,也便于重复使用。它们多应用于FPGA/CPLD/EPLD的设计中。(3)可测性综合设计 随着ASIC的规模与复杂性的增加,测试难度与费用急剧上升,由此产生了将可测性电路结构制作在ASIC芯片上的想法,于是开发了扫描插入、BLST(内建自测试)、边界扫描等可测性设计(DFT)工具,并已集成到EDA系统中。(4)为带有嵌入IP模块的ASIC设
15、计提供软硬件协同系统设计工具 协同验证弥补了硬件设计和软件设计流程之间的空隙,保证了软硬件之间的同步协调工作。(5)建立并行设计工程 CE(Concurrent Engineering)框架结构的集成化设计环境,以适应当今ASIC的如下一些特点:数字与模拟电路并存,硬件与软件设计并存,产品上市速度要快。在这种集成化设计环境中,使用统一的数据管理系统与完善的通讯管理系统,由若干相关的设计小组共享数据库和知识库,并行地进行设计,而且在各种平台之间可以平滑过度。1.2 FPGA的发展及优点当今社会是数字化社会,数字电路应用非常广泛,其发展从早期的电子管、晶体管、小中规模集成电路、发展到超大规模集成电
16、路(VLSIC,几万门以上)以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。 早期的可编程逻辑器件只有可编程只读存贮器(PROM)、紫外线可按除只读存贮器(EPROM)和电可擦除只读存贮器(EEPROM)三种。由于结构的限制,它们只能完成简
17、单的数字逻辑功能。 其后,出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(PLD),它能够完成各种数字逻辑功能。典型的PLD由一个“与”门和一个“或”门阵列组成,而任意一个组合逻辑都可以用“与一或”表达式来描述,所以, PLD能以乘积和的形式完成大量的组合逻辑功能。 这一阶段的产品主要有PAL(可编程阵列逻辑)和GAL(通用阵列逻辑)。 PAL由一个可编程的“与”平面和一个固定的“或”平面构成,或门的输出可以通过触发器有选择地被置为寄存状态。 PAL器件是现场可编程的,它的实现工艺有反熔丝技术、EPROM技术和EEPROM技术。还有一类结构更为灵活的逻辑器件是可编程逻辑阵列(PLA),它
18、也由一个“与”平面和一个“或”平面构成,但是这两个平面的连接关系是可编程的。PLA器件既有现场可编程的,也有掩膜可编程的。在PAL的基础上,又发展了一种通用阵列逻辑GAL (Generic Array Logic),如GAL16V8,GAL22V10 等。它采用了EEPROM工艺,实现了电可按除、电可改写,其输出结构是可编程的逻辑宏单元,因而它的设计具有很强的灵活性,至今仍有许多人使用。这些早期的PLD器件的一个共同特点是可以实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实现规模较小的电路。尽管FPGA,CPLD和其它类型PLD的结构各有其特点和长处,但概括起来,它们是由三大部分组
19、成的,一个二维的逻辑块阵列,构成了PLD器件的逻辑组成核心。输入输出块和连接逻辑块的互连资源。连线资源:由各种长度的连线线段组成,其中也有一些可编程的连接开关,它们用于逻辑块之间、逻辑块与输入输出块之间的连接。FPGACPLD芯片都是特殊的ASIC芯片,它们除了具有ASIC的特点之外,还具有以下几个优点:随着VlSI(Very Large Scale IC,超大规模集成电路)工艺的不断提高单一芯片内部可以容纳上百万个晶体管,FPGACPLD芯片的规模也越来越大,其单片逻辑门数已达到上百万门,它所能实现的功能也越来越强,同时也可以实现系统集成。FPGACPLD芯片在出厂之前都做过百分之百的测试,
20、不需要设计人员承担投片风险和费用,设计人员只需在自己的实验室里就可以通过相关的软硬件环境来完成芯片的最终功能设计。所以,FPGACPLD的资金投入小,节省了许多潜在的花费。用户可以反复地编程、擦除、使用或者在外围电路不动的情况下用不同软件就可实现不同的功能。所以,用FPGAPLD 试制样片,能以最快的速度占领市场。 FPGACPLD软件包中有各种输入工具和仿真工具,及版图设计工具和编程器等全线产品,电路设计人员在很短的时间内就可完成电路的输入、编译、优化、仿真,直至最后芯片的制作。当电路有少量改动时,更能显示出FPGACPLD的优势。电路设计人员使用FPGACPLD进行电路设计时,不需要具备专
21、门的IC(集成电路)深层次的知识,FPGACPLD软件易学易用,可以使设计人员更能集中精力进行电路设计,快速将产品推向市场。1.3 电路设计方法发展在计算机辅助电子设计出现之前,人们采用的传统的硬件电路设计方法,即自底向上(Bottom up)的设计方法。自底向上的电路设计方法是根据系统对硬件的要求,写出详细的技术规格书,并画出系统的控制流程图。根据技术规格书和系统控制流程图,对系统的功能进行细化,合理的划分功能模块,画出系统的功能框图。对各个功能模块进行细化和电路设计。各个功能模块电路设计、调试完成后,将各个功能模块的硬件电路连接起来再进行系统的调试,最后完成整个系统的硬件设计。随着大规模专
22、用集成电路(ASIC)的开发和研制,开发效率不断提高,同时还增加了已有开发成果的可重用性以及缩短开发时间,其中各个ASIC研制和生产厂家不断开发了自己的硬件语言。1.3.1 自底向下的设计方法传统的电路设计方法是自底向上的,而基于EDA技术的自顶向下的设计方法正好与其相反,其步骤就是采用可完全独立与目标芯片物理结构的硬件描述语言,如VHDL,在系统的基本功能或行为级上对设计的产品进行描述和定义,结合多层次的仿真技术,在确保设计的可行性与正确性的前提下,完成功能确认。然后利用EDA工具的逻辑综合功能,把功能描述转换成某一具体的目标的网表文件,并将其输出到该器件厂商的布局布线适配器,进行逻辑映射及
23、布局布线,再利用产生的仿真文件进行包括功能和时序的验证,以确保实际系统的性能,即系统的结构构成方式与系统的行为或算法方式向混合的描述。 自顶向下的设计方法的优越性主要表现在以下几个方面:1)由于顶层的功能描述可以独立与目标器件的结构,在设计的最初阶段,设计人员可不受芯片的约束,集中精力对产品进行最适应市场需求的设计,从而避免了传统设计的方法中德在设计风险,缩短了产品的上市周期。2)设计成果的再利用得到保证。对于以往成功的设计成果稍加修改、组合就能投入再利用,从而产生全新的或派生的设计模块,同时还可以一种IP核的方式进行存档。3)由于采用的是结构化开发手段,因此一旦主系统得到确认,即可实现多人多
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VHDL UART 设计 毕业论文 46
限制150内