资源描述:
《基于fpga的uart模块设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、编号基于FPGA的UART模块设计与实现DesignandRealizationofUARTbasedonFPGA学生姓名周大勇专业控制科学与工程学号S指导教师杨晓慧学院电子信息工程学院二〇一三年六月14摘要UART因其可靠性高,传输距离远,线路简单,同时UART作为RS232协议的控制接口,从而成为比较广泛的串行数据通信电路,而现在大部分集成电路通信用的UART芯片,存在成本高,电路复杂,移植性较差等缺点,本文提出了一种将UART的功能集成在FPGA芯片中,可使整个系统更为灵活、紧凑,减小整个电路的体积,提高系统的可靠性和稳定性。本模块功
2、能全部基于verilogHDL硬件描述语言。关键词:FPGA,UART,verilogHDL,RS23214ABSTRACTUART,becauseofitshighreliability,longtransmissiondistanceandthesimpleline,moreovermainlyusedincommunicationbetweendevicewithRS232interface.Thusitisbecomingmoreextensiveserialdatacommunicationcircuit.Butnowmostof
3、theintegratedUARTchipsusedincommunications,havefaultsofhighcostandpoorportability.Thecircuitofthechipiscomplex.ThispaperpresentsamethodthatUARTfunctionwillbeintegratedinFPGAchip,Itcanmakesystemmorecompact,flexible,reliableandstable.AllfunctionsofmodulearebasedonverilogHDLh
4、ardwaredescriptionlanguage.Keywords:FPGA,UART,verilogHDL,RS23214目录摘要IABSTRACTII目录II第一章绪论2第二章UART简介2第三章UART功能设计23.1波特率发生模块23.2波特率接收模块23.3UART发送模块2第四章顶层电路及实验数据2第五章结论2致谢2参考文献214第一章绪论通用异步收发器(universalasynchronousreceivertransmitter,UART)尽管自20世纪70年代就已出现,但因其简单可靠,目前仍是一种使用广泛的串行通信接
5、口。各种微处理器,不论是单片机,还是DSP、ARM,UART都是基本外围模块。一般UART由专用芯片来实现,但专用芯片引脚都较多,内含许多辅助功能,在实际使用时往往只需要用到UART的基本功能,使用专用芯片会造成资源浪费和成本提高。本文提出一种基于FPGA的UART模块设,本文设计的UART符合RS232串行通信标准。当我们不需要用到完整的的UART功能和一些辅助功能时,就可以将需要的UART功能集成用FPGA来实现,然而,FPGA内部并不拥有CPU控制单元,无法处理由UART控制器产生的中断,所以FPGA不能利用现成的UART控制器构成异
6、步串行接口,必须将UART控制器的功能集成到FPGA内部。从而可以大大的减少了体积、简化了电路,也提高了系统的灵活性。14第二章UART简介UART是广泛使用的串行数据传输协议[2]。基本的UART通信只需要2根信号线(RXD、TXD)就可以完成数据的相互通信,接收与发送都是全双工形式。RXD是UART接收端,为输入;TXD为UART发送端,为输出。UART的基本特点是在其信号线上共有2种状态,可分别用逻辑1(高电平)和逻辑0(低电平)来区分。在发送器空闲时,数据线保持在逻辑高电平状态。当发送器要发送字符时,起始位使数据线处于逻辑0状态,提
7、示接收器数据传输即将开始。波特率和数据帧格式是UART通信中的2个重要指标,波特率表示每秒钟传输二进制数据的位数,表征了数据传输的速率。国际上规定了一系列标准的波特率,如9600b/s、19200b/s、b/s、等。数据帧格式定义了所发数据每位的意义,UART的帧格式如图1所示。一般情况UART每一数据帧,依次由起始位(1位)、数据位(5~8位),奇偶校验位(可选的1位)以及停止位(1~2位)组成。其中数据位部分是从最低位先开始传送的;奇偶校验位是对1帧数据中的数据部分和校验位计算,使‘1’的个数满足奇数个或偶数个。当UART空闲时,收发引
8、脚RXD与TXD均是高电平。一旦需要发送数据,则首先向TXD引脚输出低电平作为起始位,表示1帧数据的开始。而在接收数据时,检测到起始位将启动一次数据接收流程。本设计为了简化电路设