虽然目前大部分处理器芯片中都集成了UART ,但是一般FPGA芯片却没有这个特点,所以使用FPGA 作为处理器可以有两个选择,第一个选择是使用UART 芯片进行串并转换,第二个选择是在FPGA 内部实现UART功能。但所有的UART 芯片都存在引脚较多、体积较大、与其他器件的接口较为复杂等缺点,从而会使设计的成本和难度增加。因此可以将需要的UART功能集成到FPGA内部,而利用VHDL 语言将UART 的核心功能集成,不仅解决传统芯片的缺点,也使整个设计更加紧凑、稳定且可靠。串行通信在FPGA与PC的串行通信中,特别是在FPGA的调试中有着很重要的应用。调试过程一般是先进行软件编程仿真,然后将程序下载到芯片中验证设计的正确性,通过串行通信,可以向FPGA 发送控制命令让其执行相应的操作,同时把需要的数据通过串口发到PC上进行相应的数据处理和分析,以此来判断FPGA是否按设计要求工作。这样就给FPGA的调试带来了很大方便,在不需要DSP等其他额外的硬件条件下,只通过串口就可以完成对FPGA的调试。
本次毕业设计就是基于FPGA实现UART的,系统设计采用自顶向基于下的设计方法,顶层设计采用原理图设计方式,它由UART测试模块、UART发送模块、UART接收模块三部分组成。系统实现采用硬件描述语言VHDL把系统电路按模块化方式进行设计,然后进行编译、时序仿真等[1],然后通过SmartSOPC实验箱上的RS232接口和PC机联机进行硬件测试和分析。
1.2课题主要研究内容
本论文主要研究基于FPGA芯片的通用异步收发器的设计,采用VHDL硬件描述语言,集成功能于FPGA上。采用模块设计方法设计UART的各个模块,每个模块都是采用VHDL语言编程。然后在QuartusII的环境下进行设计、编译、仿真、下载。综合应用本科阶段所学的知识,掌握通用异步收发UART电路的工作原理。应用可编程器件开发软件QuartusII,基于FPGA可编程芯片及硬件描述语言实现通用异步收发器电路设计,并应用逻辑分析仪的UART插件进行硬件时序分析。通过理论知识加于实践得出客观分析的结果,就是本次课题的意义所在。
本论文的具体工作安排如下
第一章 引言和介绍课题的意义。
第二章 相关知识简介,此课题是基于FPGA的设计,用VHDL语言描述并输入,生成编程用的数据文件加载到FPGA的配置存储单元。FPGA(现场可编程门阵列)是一种大规模可编程逻辑器件,它的体系结构和逻辑单元灵活、集成度高以及适用范围宽,并且设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验,因此被广泛应用于产品的原型设计和产品生产之中。
第三章 UART的设计,此章介绍了UART的总体框架,主要由三个模块组成,分别是UART测试模块(ceshi_uart)、UART接收模块(jieshou_uart)、UART发送模块(fasong_uart)。
第四章 系统具体设计,采用硬件描述语言VHDL把系统电路按模块化方式进行设计,然后进行编译等。
第五章 时序真仿、硬件测试和分析。
2 相关知识介绍
2.1 EDA技术
2.1.1 EDA技术的简介
因为它是一门迅速发展的新技术,涉及面广,内容丰富,人们的理解各有不同,目前仍无统一的观点。EDA技术有狭义的EDA技术和广义的EDA技术之分。
狭义的EDA技术,就是指以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至对于特定目标芯片的适配编译、逻辑映射、编译下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术,或称IES/ASIC自动设计技术[2]。