收藏 分享(赏)

本科毕业设计(论文):基于FPGA的异步串行通信.doc

上传人:文档投稿赚钱 文档编号:1463295 上传时间:2018-07-20 格式:DOC 页数:44 大小:3.37MB
下载 相关 举报
本科毕业设计(论文):基于FPGA的异步串行通信.doc_第1页
第1页 / 共44页
本科毕业设计(论文):基于FPGA的异步串行通信.doc_第2页
第2页 / 共44页
本科毕业设计(论文):基于FPGA的异步串行通信.doc_第3页
第3页 / 共44页
本科毕业设计(论文):基于FPGA的异步串行通信.doc_第4页
第4页 / 共44页
本科毕业设计(论文):基于FPGA的异步串行通信.doc_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、电子科技大学成都学院本科毕业设计论文摘 要为了适应全数字化自动控制更加广泛的应用,采用 FPGA 对 UART 进行多模块的系统设计的方法,使串口通信的集成度更高。对 UART 系统结构进行了多模块的分解。UART(通用异步收发器)是一种应用广泛的短距离串行传输接口,常用于短距离、低速、低成本的通信中。本文采用 Verilog 语言设计了一个 UART发送模块和接收模块,从而可实现 FPGA 和 PC 机的异步串行通。利用 Altera 公司的 EP1C6Q240I8 芯片,采用 Altium Designer Summer 09 画出原理图及 PCB图且在 QuartusII9.0 环境下进

2、行设计、编译、仿真。关键字:UART,FPGA,Verilog,原理图,PCBABSTRACTIABSTRACTIn order to meet the full digital automatic control is used more and more widely, a systematic design method of FPGA module of UART, the serial communication, a higher degree of integration. The structure of UART system is decomposed multi modu

3、le. UART (Universal Asynchronous Receiver Transmitter) is a short distance serial transmission interface is a widely used, communication used in short distance, low speed, low cost. This paper describes the design of a UART transmitting module and a receiving module using Verilog language, which can

4、 be asynchronous serial FPGA and PC machine implementation. Using EP1C6Q240I8 chip of Altera company, 09 draw the schematic diagram and PCB diagram and design, compile, simulation in QuartusII9.0 environment using Altium Designer Summer.Key Words: UART,FPGA,Verilog,Schematic diagram ,PCBABSTRACTII目

5、录第 1 章 引言 .11.1 课题任务 .11.2 课题要求 .21.3 研究意义 .3第 2 章 设计方案 .52.1 硬件部分 .52.1.1 电源模块 .52.1.2 复位电路 .82.2.1 软件工具 .102.2.2 模块流程图 .13第 3 章 实现功能描述 .163.1 实现功能描述 .163.2 电路设计 .163.2.1 主要芯片介绍 .163.2.2 原理图设计 .183.2.3 PCB 图设计 .213.3 软件设计 .25第 4 章 调试与实现 .314.1 调试中遇到的重点和难点 .314.2 解决方案 .314.3 实现展示 .31第 5 章 总结 .36参考文献

6、 .37电子科技大学成都学院本科毕业设计论文0第 1 章 引言1.1 课题任务本课题任务是使用 Verilog 语言,写一个异步串行通信(UART)接口,并在FPGA 上面仿真实现。Verilog HDL 是一种硬件描述语言(HDL:Hardware Description Language),以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。 Verilog HDL 和 VHDL 是世界上最流行的两种硬件描述语言,都是在 20 世纪 80年代中期开发出来的。前者由 Gateway Design Automation 公

7、司(该公司于1989 年被 Cadence 公司收购)开发。异步串行通信(UART)是一种广泛应用的串行数据传输协议,UART 的要求是传输线少,可靠性高而且传输距离远。UART 功能负责从总线采集数据,转换成传输格式,然后发送到串口。也负责从串口接收数据,检查和删除附加的位,并传送结果数据给总线。异步串行通信广泛的应用于军事、工业、自动控制、仪器、通信、医药、话音图像处理等众多领域。现实应用中多采用专用集成芯片实现 UART 功能,如 8250、825 0A、16450、16C451、16C551 等。但在实际应用中,一般只需要 UART 的几个主要功能,专用芯片成本比较大且造成资源的浪费。

8、近年来随着电子设计技术的日趋成熟,特别是 FPGA 在集成度和速度上的大幅提高,可以用一个芯片构成一个复杂的系统。一个芯片就能完成处理计算、通信、控制等多功能,而且成本大幅度降低。根据以上考虑,本文采用 FPGA 实现 UART 功能。在本文的设计中有着重要作用。FPGA(Field Programmable Gate Array)现场可编程门阵列,它是在PAL、GAL、CPLD 等可编程器件的基础上进一步发展的产物跚 1。FPGA 的应用领域最初为通信领域,但目前,随着信息产业和微电子技术的发展,可编程逻辑嵌入式系统设计技术已经成为信息产业最热门的技术之一,应用范围遍及航空航天、医疗、通讯、

9、网络通讯、安防、广播、汽车电子、工业、消费类市场、测量测试等多个热门领域心引。并随着工艺的进步和技术的发展,向更多、更广泛的应用领域扩展。越来越多的设计也开始以 ASIC 转向 FPGA, FPGA 正以各种电子产品的形式进入了我们日常生活的各个角落。FPGA 主要由三种可编程单元和一个用于存放编程数据的静态存储器组成。三种可编程单元是可配置逻辑模块 CLB(Configurable Logic Block)、输出输入模块 lOB(InputOutput Block)和互连资源 IR(Interconnect Resource)口钔。它们的工作状态全部由编程数据存储器中的数据设定,工作时需要对

10、片内的数据存储器进行编程。用户可以根据不同的配置模式,采用不同的编程方式。它是一种大规模可编程逻辑器件,第 1 章 引言1包含大量的单个逻辑单元,它的体系结构和逻辑单元灵活、集成度高以及适用范围宽,并且设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验。FPGA 以其突出的优点,减少了电子系统的开发风险和开发成本,缩短了上市时间,通过在系统编程、远程在线重构等技术降低维护升级成本。随着可编程逻辑器件应用的日益广泛,许多 IC 制造厂家涉足 FPGA 领域。主要生产厂商有:Altera、Xilinx、Actel 、Lattice 等。其中 Altera 和

11、 Xilinx 主要生产 RAM 工艺的作为一般用途的 FPGA 产品。而 Actel 主要生产采用反熔丝工艺和 Flash 工艺的非易失性的 FPGA 产品。本设计采用的 FPGA 是 Altera 公司的 Cyclone 系列的芯片, Altera Cyclone 低成本 FPGA 前所未有地将低功耗、低成本和丰富的功能结合在一起。1.2 课题要求基本的 UART 通信只需要两条信号线,即 RXD 和 TXD,TXD 是 UART 的发送端,RXD 是 UART 的接收端,接收与发送时全双工工作的。UART 是异步通信方式,发送方和接收方分别有各自独立的时钟,传输的速率由双方约定,使用起止

12、式异步协议。起止式异步协议的特点是一个字符一个字符的进行传输,字符之间没有固定的时间间隔要求,每个字符都以起始位开始,以停止位结束。基本的帧格式每一个字符的前面都有一位起始位(低电平,逻辑值 0) ,字符本身由 5-8bit 数据位组成,接着是一位校验位(也可由没有校验位) ,最后是一位停止位,停止位后面是不定长度的空闲位。停止位和空闲位都规定为高点平,这样就保证起始位开始处一定有一个下降沿。数据发送实际就是按照基本 UART 帧格式将寄存器中的并行数据转换为串行数据,为其加上起始位和停止位,以一定的波特率进行传输。波特率(Baud Rate)即调制速率,指的是信号被调制以后在单位时间内的变化

13、,即单位时间内载波参数变化的次数。它是对符号传输速率的一种度量,1 Baud 即指每秒传输1 个符号。在基于 FPGA 实现通用异步通信时,波特率发生器是一个必不可少的部分。波特率发生器实际上就是一个分频器,可以根据给定的系统时钟频率和要求的波特率算出波特率分频因子,算出的波特率分频因子作为分频器的分频数从而产生所需的时钟频率。在设定发送和接收使用相同的波特率的情况下,UART 只需要一个波特率发生器就可以了,波特率可以有多种选择,如9600bit/s、14400 bit/s、19200 bit/s、38400 bit/s 等,本文选择的是最常用的 9600bit/s。UART 的数据接收的首

14、要任务是能够正确检测到数据的起始位,起始位是一位 0,它作为联络信号附加发送信息,因为空闲位都为高电平,所电子科技大学成都学院本科毕业设计论文2以当接收数据线的信号突然变为低电平时,告诉接收端将有数据传送。一个字符接收完毕后,对数据进行校验(若数据包含奇偶校验位) ,最后检测停止位,以确认数据接收完毕。数据传输开始后,接收端不断检测传输线,看是否有起始位到来。当收到一系列的“1”之后,检测到一个下降沿,说明起始位出现。但是,由于传输中有可能会产生毛刺,接收端极有可能将毛刺误认为是起始位,所以要对检测到的起始位进行判别。一般采用以下方法:取接收端的时钟频率是发送频率的 16倍频,当检测到一个下降

15、沿后,在接下来的 16 个周期内检测接收到的“0”的个数,若“0”的个数超过 8 个或者 10 个,则认为是起始位,否则认为不是起始位,继续检测。在检测到起始位后,还需要确定起始位的中间点位置,由于检测起始位采取 16 倍频,因此计数器到 8 的时刻即是起始位的中间点位置,在随后的数据位接收中,应恰好在每一位的中间点采样,这样可提高接收的可靠性,接收数据位时可采取与发送数据相同的时钟频率,如果 8 位数据位、1 位停止位的话,则需要采样 9 次,还需要进行串并转换,完成一个字符的接收。由上述描述中可以知道,异步通信是按字符传输的,每传输一个字符,就用起始位来通知接收方,以此来重新核对收发双方同

16、步。若接收设备和发送设备两者的时钟频率略有偏差,这也不会因偏差的累积而导致错位,加之字符之间的空闲位也为这种偏差提供一种缓冲,所以异步串行通信的可靠性高。但由于要在每个字符的前后加上起始位和停止位这样的一些附加位,使得传输效率降低,只有约 80%。因此,起止协议一般用在数据速率较慢的场合(小于19.2Kbit/s) 。本课题需要的要求为以 48MHZ 晶振产生驱动,以产生波特率 9600、8 位数据位、一位停止位的格式进行数据传送。1.3 研究意义通用异步收发器主要实现功能是接收外设传送的串行数据转换为并行数据同时校验该数据,然后将并行数据提供给处理器处理,或者将处理器发送来的并行数据转换成串

17、行数据同时根据串行通信协议附加上起始位、奇偶校验位以及停止位,然后从串行数据输出端发送出去。第 1 章 引言3用 UART 来实现传输数据的串/并转换或者并/串转换。目前大部分处理器芯片中都集成了 UART 功能,但是在 FPGA 芯片中一般没有集成 UART,这增加了 FPGA 芯片与其它处理器间数据交换的复杂性。为提高 FPGA 设计的灵活性,我们可以用硬件描述语言编写一个具有 UART 功能的模块,然后把这个模块配置到 FPGA 芯片中。由于 FPGA 的功能日益增大,开发周期短,现场可编程等一系列优点也越来越明显,将需要的 UART 功能集成到 FPGA 内部,利用 Verilog 语

18、言将 UART 的核心功能集成,去掉一些不必要的管脚,这样既可简化电路又能提高系统可靠性以及稳定性并可以方便的对芯片进行升级或者内嵌到各种不同的FPGA 芯片中,方便快捷,使整个设计更加紧凑、稳定、可靠。因此利用 FPGA自身的优点来设计设备间串行通信接口具有较高的实用价值和重大意义。电子科技大学成都学院本科毕业设计论文4第 2 章 设计方案5第 2 章设计方案2.1 硬件部分本设计的电路框图如图 2.1,包含着五个模块,分别是 FPGA 模块、JTAG 电路模块、接收模块、发送模块以及电源模块。其中 FPGA 模块,在本设计使用的是芯片 EP1C6Q24OI8,也是异步串行通讯模块的重要部分。对于 JTAG电路而言在本设计中主要起着测试的作用。接收模块和发送模块是本设计的重点,基于 FPGA 的异步串行通讯的实现,就包括一个接收模块及发送模块,并且在此基础上进行仿真。电源模块在本设计中是分为外部电源电路和 FPGA 内部供电电源电路来完成供电部分。图 2.1 2.1.1 电源模块本设计需要的电路供电内核需要 1.5V 供电,I/O 则需要 3.3V 供电所以我们需要 1.5V 和 3.3V 两个电源电路如图 2.2。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报