- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于FPGA的UART模块设计报告
第2部分 UART模块模块框图和功能简介UART模块的主要作用是提供串口控制程序,与PC上位机进行通信,将键盘按键对应的ASCII码输出到串口终端上,通过上位机观察键盘按键的ASCII码,验证PS/2接口模块的输出结果的正确性。该模块的输入输出示意图如图 1所示:UART模块I/O端口其中,key_data是键盘按键对应ASCII码;key_int则为对应的中断信号,默认时该信号始终保持高,当键盘有键被按下,经过PS/2模块译码后将对应的ASCII码送到key_data上,然后将key_int拉低一个周期,表示新键被按下,UART模块可以读取key_data上的信号并能通过串口发送出去。clk和rst_n分别为系统时钟(50MHz)和复位信号(低电平有效);rs232_rx和rs232_tx分别为串口的接收信号线和发送信号线。模块内部框图如图 2所示:UART模块内部框图UART模块主要由三个子模块构成:speed_select、my_uart_rx和my_uart_tx。speed_select的主要功能是由系统时钟产生串口通信所需要的波特率时钟。由于本开发板的系统时钟为50MHz,不同波特率对应的分频系数见下表:波特率分频系数9600520719200260338400130157600867115200433speed_select的原理图符合如图 3所示:speed_select模块原理图在speed_select中,bps_start为时钟使能信号,当发送或接收模块需要发送或接收数据时,将该信号线拉高,使能speed_select模块产生对应波特率所需要的时钟,由clk_bps输出。clk和rst_n分别为时钟信号和复位信号。my_uart_rx则是串口接收模块,主要功能是从主模块的rs232_rx信号线上接收数据,完成串并转换,然后输出,其原理图符合如图 4所示:my_uart_rx模块原理图在my_uart_rx模块中,bps_start为波特率时钟使能信号,当从rs232_rx信号线上检测到下降沿(起始位)时,即将bps_start信号置位,从而使能发送波特率时钟模块(speed_rx,speed_select的一个实例),产生波特率时钟,从clk_bps输入。rx_data为接收到的数据的并行输出。在本设计的UART模块中,并不需要通过串口向开发板发送数据,因此如果出现了上位机通过串口向开发板发送数据的情况,不做别的响应,仅将数据传回。因此,rx_data被送到my_uart_tx模块中。rx_int为接收数据中断信号,每次数据接收完毕后,my_uart_rx模块即在该信号线上产生一个周期的低电平。my_uart_tx检测到该信号线上出现下降沿,即读取rx_data中的数据。my_uart_tx模块有两个功能,一是将my_uart_rx模块接收到的数据再发送回去,二是将ps/2模块检测到的按键的ASCII码发送到串口上,该模块原理图符合如图 5所示:my_uart_tx模块原理图由于需完成两个功能,该模块配套需要两个波特率时钟产生电路,分别由bps_start和bps_start_key使能,产生的波特率时钟信号由clk_bps和clk_bps_key输入。rx_data为接收到的数据,rx_int为接收数据中断信号。key_data则为按键ASCII码数据,key_int则为按键ASCII码数据中断信号,每当在key_int上检测到下降沿,my_uart_tx模块就会读取key_data上的数据并发送到rs232_tx上。综合报告Release 9.1.03i - xst J.33Copyright (c) 1995-2007 Xilinx, Inc. All rights reserved.-- Parameter TMPDIR set to ./xst/projnav.tmpCPU : 0.00 / 0.20 s | Elapsed : 0.00 / 0.00 s -- Parameter xsthdpdir set to ./xstCPU : 0.00 / 0.20 s | Elapsed : 0.00 / 0.00 s -- Reading design: my_uart_top.prjTABLE OF CONTENTS 1) Synthesis Options Summary 2) HDL Compilation 3) Design Hierarchy Analysis 4) HDL Analysis 5) HDL Synthesis 5.1) HDL Synthesis Report 6) Advanced HDL Synthesis 6.1) Advanced HDL Synthesis R
文档评论(0)