FPGA通用异步收发器课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计任务书
学生姓名:瞿子敬专业班级:通信1104
指导教师:陈适工作单位:信息工程学院
题目:FPGA通用异步收发器设计
课程设计目的:
1.熟练使用VHDL语言进行电路设计;
2.能够运用相关软件进行模拟分析;
3.掌握基本的文献检索和文献阅读的方法;
4.提高正确的撰写论文的基本能力。
课程设计内容和要求
1.内容:FPGA通用异步收发器设计
2.要求:使用VHDL语言完成电路设计,并在此基础上进行仿真,得到正确结果。初始条件
QuartusⅡ仿真平台
时间安排
1.方案设计,1天;
2.软件设计,2天;
3.系统调试,1天;
4.答辩,1天。
指导教师签名:
年月日系主任(或责任教师)签名:
年月日
目录
摘要................................................................................................................................ I Abstract......................................................................................................................... II 1. UART简介. (1)
1.1 UART基本特点 (1)
1.2 FPGA URAT系统组成 (2)
2. 模块设计 (3)
2.1 顶层模块 (3)
2.1 波特率发生器 (3)
2.3 UART接收器 (4)
2.3.1 接收器简介 (4)
2.3.2 UART接收器的接收状态机 (5)
2.4 URAT发送器 (6)
2.4.1 发送器简介 (6)
2.4.2 发送状态机 (6)
3. 程序设计与仿真 (8)
3.1 顶层程序 (8)
3.2 波特率发生器程序 (10)
3.3 UART发送器程序 (11)
3.4 UART接收器程序 (14)
4. 心得体会 (18)
5. 参考文献 (19)
摘要
UART(Universal Asynchronous Receiver Transmitter通用异步收发器)是一种应用广泛的短距离串行传输接口。常常用于短距离、低速、低成本的通讯中。8250、8251、NS16450等芯片都是常见的UART器件。
基本的UART通信只需要两条信号线(RXD、TXD)就可以完成数据的相互通信,接收与发送是全双工形式。TXD是UART发送端,为输出;RXD是UART接收端,为输入。
关键词:UART,FPGA,VHDL,电路通信
Abstract
UART (Universal Asynchronous Receiver Transmitter) is a kind of widely used short serial transmission interface. Often used in short distance, low speed, low cost of communications. 8250, 8251, NS16450, etc are common UART chip devices.
Basic UART communication only need two signal lines (RXD, TXD) can complete data communication, sending and receiving is full duplex form. TXD is UART transmitter for output; RXD is UART receiver for input.
Keywords:UART,FPGA,VHDL,Circuit Communication
1. UART简介
1.1 UART基本特点
(1)在信号线上共有两种状态,可分别用逻辑1(高电平)和逻辑0(低电平)来区分。在发送器空闲时,数据线应该保持在逻辑高电平状态。
(2)起始位(Start Bit):发送器是通过发送起始位而开始一个字符传送,起始位使数据线处于逻辑0状态,提示接受器数据传输即将开始。
(3)数据位(Data Bits):起始位之后就是传送数据位。数据位一般为8位一个字节的数据(也有6位、7位的情况),低位(LSB)在前,高位(MSB)在后。(4)校验位(parity Bit):可以认为是一个特殊的数据位。校验位一般用来判断接收的数据位有无错误,一般是奇偶校验。在使用中,该位常常取消。
(5)停止位:停止位在最后,用以标志一个字符传送的结束,它对应于逻辑1状态。
(6)位时间:即每个位的时间宽度。起始位、数据位、校验位的位宽度是一致的,停止位有0.5位、1位、1.5位格式,一般为1位。
(7)帧:从起始位开始到停止位结束的时间间隔称之为一帧。
(8)波特率:UART的传送速率,用于说明数据传送的快慢。在串行通信中,数据是按位进行传送的,因此传送速率用每秒钟传送数据位的数目来表示,称之为波特率。如波特率9600=9600bps(位/秒)。
UART的数据帧格式为:
1.2 FPGA URAT系统组成
FPGA UART由三个子模块组成:
(1)波特率发生器;
(2)接收模块;
(3)发送模块;
模块分布如图所示:
图1.1 UART模块