您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 基于VHDL的UART控制器设计
摘要UART(UniversalAsynchronousReceiver/Transmitter),通用异步接收/发送装置,是设备之间进行通信广泛使用的接口。当两个设备需要通信时,通常采用数字信号,这种并行的信号必须转换成串行信号才能传输。在目的端,串行信号又转换成并行信号进行处理。UART控制器就是处理这种数据总线和串行口之间的串-并和并-串转换。本文所要实现的就是这种串-并和并-串的转换,使之能够进行数据的传输。现在市场上有许多为UART开发的专用芯片,但是其功能固定,不能根据用户的需求来灵活的改变控制逻辑。因此,本文介绍了用FPGA技术实现UART控制器设计的一种方法,用VHDL进行编程,在MAX+plusII10.2下进行编译及仿真,从而实现能够更改灵活、既方便又实用的UART具有重要意义。关键字:FPGA,VHDL,UART,接收,发送AbstractUART(UniversalAsynchronousReceiver/Transmitter),isthekeyofcommunicationsbetweendevices.Whenadeviceneedstocommunicatewithaconnecteddevice,usuallydigitalsignalsapplied,whichmustbetransformedintoserialisedsignaltoanotherdevice.UARTprocessesthisserial_datatoparallel_data/parallel_datatoserial_datatransformbetweendatabusandslaveport.Thispaperistoimplementthisserialtoparallelandparalleltoserialtransformandmakethetransferringbetweendataproperly.Thispaperintroducesamethodimplementedby1FPGAtechniqueprogrammedbyVHDL,simulatedandcompiledbyMAX+plusII10.2.inordertomakeitflexible,convenientandpracticalsothattheUARTisgreatsignificance.Keywords:FPGA,VHDL,UART,receive,send目录摘要...............................................................0ABSTRACT............................................................0第一章前言........................................................11.1本文研究的背景................................................11.2本文研究的内容...............................................11.3本论文的结构安排如下..........................................2第二章计算机接口与RS-232串口简介..................................32.1计算机接口介绍................................................32.1.1计算机接口简介............................................32.2RS-232串口通信简介...........................................42.2.1串行通信概述..............................................42.2.2.RS-232协议...............................................52.2.3.RS-232通信时序和UART....................................82.2.4.串行通信实现方案........................................10第三章EDA技术及FPGA的概述.......................................113.1EDA技术发展历程.............................................113.1.1CAD阶段.................................................113.1.2CAE阶段..................................................113.1.3EDA阶段..................................................123.2EDA技术的基本特征及优势.....................................123.3MAX+PLUSII软件介绍...........................................133.3.1MAX+plusII开发系统的特点...............................153.3.2项目编译.................................................163.3.3项目仿真................................................17第四章UART方案设计................................................184.1UART实现原理................................................184.2UART工作流程................................................19第五章UART模块的VHDL语言设计....................................215.1信号监测模块的实现...........................................215.2波特率发生器模块的实现.......................................215.3移位寄存器模块的实现.........................................245.4奇偶校验器模块实现...........................................255.5总线选择模块的实现...........................................265.6计数器模块的实现.............................................275.7UART内核模块的实现..........................................285.7.1UART内核模块的接口.......................................285.7.2UART内核模块的状态机设计.................................345.7.3UART内核模块的实现.......................................365.8UART顶层模块的实现..........................................44第六章UART的VHDL程序的仿真、验证.................................486.1编译、综合..................................................486.2UART主要模块仿真波形........................................486.2.1信号监测器模块的仿真.....................................486.2.2波特率时钟模块的仿真.....................................496.2.3移位寄存器模块的仿真.....................................496.2.4奇偶校验器模块的仿真.....................................496.2.5总线选择器模块的仿真.....................................506.2.6计数器模块的仿真.........................................506.2.7顶层模块的仿真...........................................50总结.............................................................52致谢............................................................53参考文献...........................................................541第一章前言1.1本文研究的背景在1980至1990年代,提供FPGA数万逻辑门的FPGA器件主要被系统设计人员用作“连接逻辑”,将电路板上的不同元器件连接到一起,或用来修正ASIC不方便处理的问题。但在1990年代末期,百万门现场可编程门阵列(FPGA)产品的出现使在单块可编程芯片中集成系统级功能成为可能。目前市场上出售的最大规模FPGA产品有600万系统门和1.4亿个晶体管,已经跻身于最复杂的半导体器件之列。而如今,FPGA的一些新的技术发展趋势不仅使其越来越多地替代ASIC,成为可编程逻辑领域的主流产品,从ASIC市场抢夺越来越多的市场份额;同时,还为自身不断带来新的利润增长点和广阔的市场前景串行外设都会用到RS232-C异步串行接口,传统上采用专用的集成电路即UART实现,如TI、EXAR、EPIC的。550、452等系列,但是我们一般不需要使用完整的UART的功能,而且对于多串口的设备或需要加密通讯的场合使用UART也不是最合适的。如果设计上用到了FPGA/CPLD器件,那么就可以将所需要的UART功能集成到FPGA内部。FPGA的发展也促进了PLD设计方法的进步,基于硬件描述语言(HDL)高级综合的电子设计自动化(EDA)方法已成为FPGA的主流设计技术,使得用户能够高效地完成复杂地大型设计任务,并直接生成FPGA的ASIC器件。1.2本文研究的内容本论文的任务就是在FPGA技术的基础上,用VHDL语言来描述UART功能,使之能完成UART的一些主要功能:1)写数据将数据总线上的一个数据写入发送寄存器。2)读数据数据从输出寄存器发送到数据总线上。3)数据接收控制当数据接收端RxD出现低电平,一个数据启动位到来时送数据到来。5)接收数据移位控制进行数据,一个接收计数周期开始,当计数到7时,计数器清零等待下一个启动位的到来。4)数据发送控制当一个数据写入到发送寄存器时,其控制计数器开始一个发送的计数周期,当一个数据发送结束,计数器清零,等待下一个发的串并变换。26)发送数据的并串变化。1.3本论文的结构安排如下第1章前言,主要介绍了课题的背景以及研究的意义,相关领域的发展和研究现状,
本文标题:基于VHDL的UART控制器设计
链接地址:https://www.777doc.com/doc-6342144 .html