基于FPGA的串口通信系统

基于FPGA的串口通信系统

ID:38133372

大小:651.67 KB

页数:4页

时间:2019-05-31

基于FPGA的串口通信系统_第1页
基于FPGA的串口通信系统_第2页
基于FPGA的串口通信系统_第3页
基于FPGA的串口通信系统_第4页
资源描述:

《基于FPGA的串口通信系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于FPGA的串口通信系统设计郭凤(西南科技大学信息工程学院,四川绵阳621000)摘要:该设计是基于FPGA的串口通信系统模拟仿真,通过对RS-232串行总线接口的设计,掌握发送与接收电路的基本思路,并进行串口通信。采用VerilogHDL语言对UART波特率产生模块、数据发送模块、接收模块进行硬件描述,再将其整合为一个RS-232收发模块,最终在顶层模块中将两个RS-232模块例化,实现两块FPGA芯片全双工通信的设计。关键词:串口通信;VerilogHDL;FPGA;模拟仿真AserialportcommunicationsystemdesignbasedonFPGAGuoF

2、eng(SchoolofInformationEngineering,SouthwestUniversityofScienceandTechnology,Mianyang621000,China)Abstract:ThedesignisbasedontheFPGAserialportcommunicationsystemsimulation,throughthedesignoftheRS-232serialbusinterface,tomasterthebasicwayofsendingandreceivingcircuitandcompleteserialcommunicatio

3、n.UsingVerilogHDLlanguagetoUARTbaudrategenerationmodule,datasendingmodule,receivingmodulehardwaredescription,makeitintoRS-232transceivermodule,finallyinthetop-levelmodulewillinstantiatetwoRS-232module,realizethedesignoftwopiecesoftheFPGAchipfull-duplexcommunication.Keywords:serialportcommunica

4、tion;VerilogHDL;FPGA;simulation0引言通用异步收发器(UniversalAsynchronousReceiverTransmitter,UART)是一种广泛应用于短距离、低速、低成本、可靠性高、实现简单等优点,广泛应用于微机和外设的数据交换,如和鼠标、键盘、调制解调器、打印机之间以及微机与微机之间的串行数据传输。同时在当今的嵌入式微处理器芯片设计中,UART接口已成为标准配置。目前大部分处理器芯片中都集成了UART功能,但是在FPGA芯片中一般没有集成UART,这增加了FPGA芯片与其他处理器间数据交换的复杂性。为提高FPGA设计的灵活性,我们可以用硬

5、件描述语言编写一个具有UART功能的模块,然后把这个模块配置到FPGA芯片中。利用FPGA自身的优点来设计设备间串行通信接口,具有较高的实用价值和重大意义。1UART通信原理在异步通信中,是以字符为单位传送数据,是从低位到高位逐位传送,一个字符表示一帧信息。串行异步通信协议中字符代码传输格式如图2.3所示,通常UART的一帧数据由四部分组成:一个起始位S(一般逻辑为“0”),后面是数据长度可变的数据位D0~D7(一般为6位到8位之间可变,数据的低位在前),一个可选的校验位PB(可选奇校验、偶检验或不需要检验),随后是一定长度的停止位P(可选1位、1.5位、或2位),停止位必须为逻辑

6、“1”。在没有数据被传输时,数据线会一直处于逻辑“1”状态。其字符帧格式如下图1所示:图1字符帧格式2软件设计该设计的最顶层TOP层由两个相同RS-232模块(my_uart_top)构成,用于模拟两个FPGA芯片通信,例化名分别为uart1_init和uart2_init。在my_uart_top层中又由波特率发生器(speed_select)、UART接收器(my_uart_rx)和UART发送器(my_uart_tx)构成。波特率发生器分别由两个相同模块(speed_rx,speed_tx)构成,产生一个远高于波特率的本地时钟信号对数据不断采样,使接收器与发送器保持同步;发送

7、器的用途是将准备输出的并行数据按照UART帧格式转化为TXD信号串行输出;接收器接收RXD串行信号,并将其转化为并行数据存到内部寄存器中。顶层模块RTL级图如下图2所示:图2顶层模块RLT级图3设计结果及仿真分析3.1波特率模块仿真为方便波特率发生器模块仿真,便于观察波形,把分频系数设为了10。下图3为仿真波形图:图3分频模块仿真波形图当rst_n复位,接到数据后波特率时钟启动置位信号bps_start,开始计数。波特率发生器每经过10个时钟周期输出一个完整的波特率时

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。