附录A 附件中各文件说明 31
1 绪论
1.1 研究背景及意义
在数据通信、计算机网络以及分布式工业系统中,经常采用串行通信来交换
数据和信息。串行接口的数据传输方式是串行的,即数据是一位一位的进行传输。串行接口的应用非常广泛,例如PC主机上一般就至少有两个串行接口 COM1和COM2。虽然串行接口的传输方式比较导致其传输速度会比较慢,但是它却具有较强的干扰能力,并能有较长的传输距离。例如RS-232C口最大传输距离为15m,而RS-422口的最大传输距离甚至达到了1200m。
对于一个处理器来说,要接收和发送串行通信的数据,还需要一个器件将串行的数据转换为并行数据以便于处理器进行处理,并且对传输的数据进行一些传输要求上的处理[1-2],包括:
(1)、将由计算机内部传送过来并行数据转换为用于输出的串行数据流;
(2)、将计算机外部传递过来的串行数据转换为字节,供计算机内部使用并行数据的器件使用;
(3)、在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据流进行奇偶校验。
(4)、提供和处理器之间的通信信号,可以处理处理器和串行通信设备之间的同步管理问题[1-2]。
完成上述这些功能的器件就是UART,UART全称是通用异步收发器,是一种通用串行数据总线,用于异步通信。其功能是辅助处理器和串行设备之间的通信[3]。
实现数据的串行到并行转换用的是UART,它是实现串行通信必不可少的部分。虽然目前大部分处理器芯片都集成了UART,但是一般的FPGA芯片却没有这个特点,所以使用FPGA 作为处理器可以有两个选择。第一个是使用UART芯片进行串并转换,第二个选择是在FPGA芯片内部实现UART功能。使用UART芯片进行串并转换的优点是设计简单,但是却会是设计的成本增加并且增加电路板的面积。选择在FPGA芯片上上学UART虽然会占用一部分FPGA的资源,但是却能够节省成本。因此本设计采用在FPGA芯片上实现UART。
1.2 本文研究的主要内容与成果
本文研究的是在FPGA芯片上实现UART。 首先,对UART通信的过程进行介绍,进而设计串行通信的消息帧格式。 其次,结合数字电路的知识,设计了系统的原理框图,并对每个子模块的功能、组成以及不同模块之间的协调进行了阐述,以及给出UART分别工作在接收和发送两种模式下的工作流程图。 再次,利用QUARTUS II 软件开发平台和VHDL语言对每个模块进行设计,并给出原理说明、仿真时序图、部分关键源代码。 最后,由于UART的特殊性,不便于直接对其功能进行验证,需要设计特定的方案对其功能。在本文的第四部分讨论设计了一个方案对其功能进行验证,并给出了该方案的原理图、电路图。最后下载到FPGA的开发板上进行实物验证并给出了正确的验证结果。
1.3 本设计所采用的开发平台
本设计以QUARTUS II 9.0软件作为开发平台,Quartus II 是Altera公司的综合性PLD/FPGA开发软件,Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,受到广泛欢迎和应用。 采用VHDL语言软件开发工具,VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。采用ALTERA公司的Cyclone II系列中的EP2C8Q208C8N芯片作为验证平台,本设计所采用的开发版平台系统时钟为50MHz。
1.4 本文内容安排
本文内容上答题可以分为五大部分:绪论、系统原理概述、系统及模块设计、UART功能验证。 基于FPGA的UART设计+文献综述(2):http://www.youerw.com/tongxin/lunwen_6000.html