通信原理课程设计-基于FPGA的多路数据采集系统的设计.doc_第1页
通信原理课程设计-基于FPGA的多路数据采集系统的设计.doc_第2页
通信原理课程设计-基于FPGA的多路数据采集系统的设计.doc_第3页
通信原理课程设计-基于FPGA的多路数据采集系统的设计.doc_第4页
通信原理课程设计-基于FPGA的多路数据采集系统的设计.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南文理学院课程设计报告课程名称: 通信系统课程设计 专业班级: 通信120101班 学号(19号)学生姓名: 指导教师: 完成时间: 2015年 6 月 26 日 报告成绩: 评阅意见: 评阅教师 日期 2015.6.29 目录一、设计要求3二、设计作用与目的3三、所用设备及软件3四、系统设计方案41.系统总体设计42.工作原理5五、系统硬件设计71.A/D转换模块72.数据存储模块93.D/A转换模块94.FPGA控制模块10六、系统软件设计101.主程序流程设计102.子程序设计113.FPGA的编程13七、实验调试结果13八、设计中的问题及解决方法15九、设计心得15十、参考文献16十一、附录181.程序总体结构原理图181.TLC5510采样控制182.程序清单181.状态机实现TLC5510采样控制程序182.行为描述方式实现TLC5510采样控制程序20基于FPGA的多路数据采集系统的设计一、 设计要求数据采集电路是测试系统中的重要组成部分,其主要包括模拟电路部分和数字电路部分两个部分。其中的模拟部分主要是将前端的传感器所提供的电参量信号进行转 换、放大、滤波、调零等处理,使之成为适合AD或者显示记录仪器所需要的电压信号。数字部分主要是根据不同的需要按照不同的采样策略来对AD转换器进行控制,实现对模拟信号的采样和量化。同时数字部分的电路还要将所采集的数据进行处理、存储和向上位机传输,以便进行更进一步的数据分析。二、 设计作用与目的介绍了一种基于FPGA的多路数据采集系统的设计方案,描述了系统的主要组成及FPGA的实现方法,并用VHDL语言设计的状态机在Quanus发软件 中进行真。该系统在通用数据采集系统的基础上,增加数据编码模块,将多路数据组合为一路进行存储;采用批处理数据方式,减少数据编码次数,加快数据处理速度。三、 所用设备及软件嵌入式处理器、FPGA软件、有Quanus仿真软件的计算机。四、 系统设计方案本次设计有2个方案可供选择。 方案一是采用ATmega16单片机设计。用ATmega16单片机控制的多路数据采集系统的设计方案。单片机将现场采集的多路模拟信号转换为数字量,通过LCD12864将其在现场显示,通过AT24C64将数据进行存储,现场采集的信号还可以通过485总线传输至上位机。方案二是采用嵌入式处理器,并通过FPGA软件进行仿真,将外界干扰信号滤波之后输入到A/D转换芯片TLC5510中。本次设计采用方案二。原因在于方案一的单片机结构复杂,教科书中并未提及,而方案二中只需要仿真,所需芯片可以在教科书中找到。1. 系统总体设计系统的总体结构如图4.1所示。在符合奈奎斯特采样定理的条件下,外界的模拟信号频率要小于采样模块采样频率的1/2。如果还有高频分量的话,可以让外界的模拟信号经过一个低通滤波器滤除高频分量后输入到A/D转换芯片TLC5510中。经过A/D转换器后不仅时间离散化了,而且幅度也离散化,即x(n)。由FPGA中的采样控制器控制TLC5510的采样,将采集到的信号锁存在FPGA的内部存储器RAM中,然后控制RAM中的数据输出到D/A转换器,D/A转换器每隔一个时钟取出一次y(n),随之在D/A转换器的保持电路中将数字信号转换为模拟信号,这些信号在时间点上的幅度应等于序列y(n)中相应数码所代表的数值大小。 若最后输出的信号具有不符合条件的高频分量,则还要通过一个模拟滤波器,滤除不需要的高频分量,平滑成所需的模拟输出信号y(t),以完成信号的采集。根据 FPGA在系统中的功能,可将其模块分为A/D采样控制模块、数据存储模块和D/A控制模块。图4.1 数据采集系统结构图2. 工作原理可编程逻辑阵列器件是可以由用户进行编程以实现所需逻辑功能的数字集成电路,利用其内部的逻辑结构实现任何布尔表达式、寄存器函数。和一般的ASIC电路相比,可编程逻辑阵列器件具有设计周期短,修改方便的优点。根据编程方式FPGA器件基本可分为三种:基于反熔丝编程的FPGA、基于SRAM编程的FPGA、基于闪存编程的FPGA。基于AD9446采集 芯片反熔丝编程的FPGA具有体积小、集成度高和高速度的特点,还具有加密、防拷贝、抗干扰以及不需外接只读存储器的特点,但只能一次编程,比较适合于定 型产品。后两种FPGA属于可重复编程型FPGA,SRAM型FPGA的突出优点是可反复编程,甚至能在系统运行中改变配置数据实现系统功能的动态重构。 Flash Memory型FPGA具有非易失性和重复编程的双重优点,但不能动态重构,功耗也较SRAM型FPGA高。从逻辑块的构造分类,FPGA的结构有三种:查找表型、多路开关型和多级与或门型。Xilinx公司FPGA的逻辑块构造有查找表型和多路开关型, 其中具有代表性的查找表结构是Xilinx公司的XC系列FPGA,它的可编程逻辑单元是查找表,由查找表构成函数发生器,再由查找表来实现逻辑函数。 Altera公司的FPGA器件,其逻辑块构造为多级与或门型,它的可编程单元是可配置的多路开关。利用多路开关的特性,对它的输入和选择信号进行配置, 接到固定电平或输入信号上,实现不同的逻辑功能。还有一种是采用多级与非门结构的Altera公司的FPGA,在多级与非门结构中,可编程逻辑单元是一个异或逻辑块。查找表型的优点是功能多,N输入的查找表可以实现N个任意的组合逻辑函数。多路开 关型的优点是可以把大量的多路开关和逻辑门连接起来,构成大量函数的逻辑块。多级与或门型的优点是可以方便地将待反馈的输出信号反馈到输入端,以实现闭环 控制逻辑和多个逻辑块之间的级联。随着大规模现场可编程逻辑器件的发展,系统设计进入“片上可编程系统” (SOPC)的新纪元:芯片朝着高密度、低压、低功耗方向挺进:在SOC芯片上可以将微处理器、数字信号处理器、存储器、逻辑电路、模拟电路集成在一个芯片上。而如果将可编程逻辑电路1P核集成到SOC芯片上则会大大提高SOC芯片的灵活性与有效性,并且缩短了SOC芯片的设计周期。因此国际各大公司都在积极扩充其IP库,以优化的资源更好的满足用户的需求,扩大市场。由此可见,FPGA不仅可以解决电子系统小型化、低功耗、高可靠性等问题, 而且其开发周期短、开发软件投入少、芯片价格不断降低,这使得FPGA占有越来越多的市场,特别是对小批量、多品种的产品需求,使FPGA成为首选。 FPGA普及的另一重要原因是IP(知识产权)越来越被高度重视,带有IP内核的功能块在ASIC设计平台上的应用日益广泛。越来越多的设计人员,采用设 计重用,将系统设计模块化,为设计带来了快捷和方便。并可以使每个设计人员充分利用软件代码,提高开发效率,减少上市时间,降低研发费用,缩短研发周期, 降低风险。 FPGA是在PAL、GAL、EPLD、CPLD等可编程器件的基础上进一步发展的产物。它是作为ASIC领域中的一种半定制电路而出现的,即解决了定制 电路的不足,又克服了原有可编程器件门电路有限的缺点。五、 系统硬件设计1. A/D转换模块在系统的A/D转换中使用的芯片是TLC5510TLC5510芯片图如图2所示:TLC5510 高速模数转换芯片,用于视频处理,高速数据转换等领域,采用CMOS工艺制造,精度为8位,转换速率20Msps,每秒采样20M次,采用半闪速结构,内建采样保持电路。TLC5510为24引脚、PSOP表贴封装形式(NS)。其引脚排列如图5.1。 图5.1 TLC5510引脚排列图AGND:模拟地信号;ANALOG IN:模拟信号输入端;CLK:时钟输入端,作为数据采集的主控时钟;DGND:数字信号地;D1D8:数据输出端口。D1为数据最低位,D8位最高位;OE:输出使能端。当OE位低时,D1D8数据有效;因为系统中D1D8端口的数据在整个仿真过程中都有效,所有OE始终设置为低电平;VDDA:模拟电路工作电源;VDDD:数字电路工作电源;此系统中使用FPGA来控制A/D采样,包括将采得的数据存入FIFO(FPGA内部FIFO存储速率可达10ns),整个采样周期需要4至5个状 态即可完成。若FPGA的时钟频率为100MHz,则从一个状态向另一状态转换的时间为一个时钟周期,不到单片机的采样周期的千分之一。 图5.2 FPGA控制TLC5510图示如图5.2所示,FPGA控制TLC5510实现了将模拟信号转换成数字信号的过程。其中,TLC5510转换好的数据将存到FPGA的内部存储器中等待处理。TLC5510是以流水线的工作方法进行工作。它在每一个周期都启动一次采样,完成一次采样;每次启动采样是在CLK的下降沿进行,不过采样转换结果的输出在2.5个CLK周期后,将送到内部数据总线上。将输出延时Tdd计入,从采样到输出需经过2.5*Tclk+Tdd。对于需要设计的从采样控制器, 可以认为,每加一个采样CLK周期,A/D就会输出一个采样数据。在图5.3所示的工作时序的控制下,当第一个时钟周期的下降沿到来时,模拟输入电压将被 采样到高比较器块和低比较器块,高比较器块在第二个时钟周期的上升沿最后确定高位数据,同时,低基准电压产生与高位数据相应的电压。低比较块在第三个时钟 周期的上升沿的最后确定低位数据。高位数据和低位数据在第四个时钟周期的上升沿进行组合,这样,第次采集的数据经过2.5个时钟周期的延迟之后,便可送到内部数据总线上。此时输出使能OE有效,数据被送至8位数据总线上。 图5.3 TLC5510时序图对A/D器件进行采样控制,传统的方法是用CPU或单片机完成的。编程简单,控制灵活,但缺点是控制周期长,速度慢。特别是当A/D器件本身的采样速度比 较快时,CPU的慢速极大的限制了A/D的速度。A/D转换芯片TLC5510的采样速率达40MHz,采样周期是0.025s,单片机在控制A/D进 行一个采样周期中必须完成的操作有初始化TLC5510,启动采样,等待约0.025s,发出读数命令,分两次将12位转换好的数从TLC5510读进 单片机,再分两次将此数存入外部RAM中,外部RAM地址加1,此后再进行第二次采样周期的控制。2. 数据存储模块数据锁存模块是由ezNiosDK FPGA板的芯片FIFO构成,其存储速率可达到10ns。在FPGA中A/D采样控制器控制TLC5510将数据采集到后,FPGA便将锁存信号调节为有效的高电平,然后将信号锁存入存储器中。选择一:外部随机存储器RAM。选择二:内部随机存储器RAM。选择三:内部FIFO,相比之下,FIFO更适合于用作A/D采样数据高速写入的存储器,因为FIFO的写入时间只有一个时钟周期,因此决定使用LPM_FIFO作为采样存储器。3. D/A转换模块DAC0832是8位分辨率D/A。转换集成芯片,与处理器完全兼容,其价格低廉,接口简单,转换控制容易等优点得到了广泛的应用,其引脚图如图5.4所示。 图5.4 DAC0832芯片引脚图对于从零电平开始的正极性模拟输入电压,REFB应当连接到模拟地AGND。VREFT的范围为2V5V。在本设计中,CCD输出的模拟视频信号 经过反相、滤波、放大之后即为从零电平开始的正极性模拟电压信号。因此,为了简化电路并同时满足设计要求,选用了DAC0832的内部基准方式,同时,因 为CCD视频信号是2V基准,所以,根据DAC0832的自身的特点,在设计过程中,将REFBS端与AGND,而将REFTS与VDDA端相连,同时将 REFBS短接至REFB端,REFTS短接至REFT端来获得2V基准电压。4. FPGA控制模块系统中采用FPGA控制A/D转换模块和D/A转换模块,相对于单片机的控制。FPGA模块内部有三大部分构成,分别为A/D采样控制器,FIFO,D/A采样控制器。首先主控时钟条件下,A/D采样控制器驱动A/D转换模块进行数 据的采样和转换,然后将转换好的数据存入FPGA内部的FIFO中,然后在主控时钟特定的周期下,将FIFO中暂存的数据输出给D/A转换模块,与此同 时,D/A采样控制器驱动D/A转换模块将数据恢复为与原始信号相似的模拟信号。最后将信号发送到硬件设备中进行测试。六、 系统软件设计1. 主程序流程设计TLC5510采样控制程序如图6.1图6.1 TLC5510采样控制程序照该模式的时序图进行控制逻辑模块的设计,这部分可以用状态机来实现,缓存控制模块是介于数据宽度转换模块和接口控制逻辑模块之间的,也是重点要 谈的一部分。在不同的应用场合,数据格式也不同,不过一般都是一帧一帧传输的,一帧数据的起始有帧头,有些也有帧尾还有其他校验位之类的,原理上都差不 多。比较通常的做法是,FPGA把接收到的数据先存储在它外挂的RAM中,RAM的容量正好等于一帧数据的大小,存满RAM之后,再通过接口芯片进行上 传。如果FPGA外挂一片RAM的话,要等到它存满之后才能开始上传工作,这会让效率打折扣,对一些要求高速传输的场合会造成影响。在这里介绍一种乒乓 帧,即乒乓球RAM,可以大大提升传输速度。2. 子程序设计TLC5510采样控制程序如图6.2图6.2 TLC5510采样控制程序控制电路是数据采集系统的核心,该系统采用A3P250实现。该芯片IO口端口供电电压为3.3V,与整个系统数字逻辑一致,内核供电电压为 25V。该系列具有丰富的I,O口资源,I,O输出缓冲器可以接收高达24mA的拉电流和48mA的灌电流。缺省时,I,O输出口驱动能力为12mA。采用自顶而下的设计方法,分别完成各个模块的代码编写。主要完成AD采 样时钟控制、SRAM地址发生、读,写控制、并行,串行转换时钟控制、乒乓切换控制、插入通道号等功能。POINTSYNC为A/D转换器的转换时钟,OEAD0到OEAD7是8路锁存器574的输出使能信号,LK_LATCH为锁存器的数据打入脉冲信号;A为SRAM1地址线,WREN为RA M写时钟信号,RDEN为读信号。为了保证数据的稳定性,在A/D采样脉冲POIN YNC的上升沿进行采样,经过三个周期后在下降沿将8路数据同时送入锁存器,而后锁存器的输出使能依次有效,使得数据在内部总线内传输。由于FPGA是 RAM工艺,掉电后信息将丢失,为此,必须有外置存储器来保存程序。3. FPGA的编程FPGA编程使用VHDL语言,主要包括对ADS8344的数据读写、异步数据编解码等。使用FPGA很容易实现SPI接口间的通信,对ADS8344的数据读写仅用两个进程就可以实现,程序部分可参见附录。程序中的8位控制字节是在另一进程中根据用户要求进行配置的。控制寄存器格式如6.3图所示: 图6.3 8位控制寄存器格式控制寄存器各位的功能说明如下:S控制字节开始位。为高时,才表示输入的字节有效。A2AO模拟输入通道选择位。SGLDIF模拟通道输入方式选择位。为高时,为单端输入i为低时,为双端差分输入。PDlD0功率管理选择位。七、 实验调试结果VHDL程序设计完成后,必须利用EDA软件中的综合器、适配器、时序仿真器和编程器等工具进行相应的处理和下载,才能使此项设计在FPGA上完成 硬件实现并能进行硬件测试。设计验证包括功能(前仿真)与时序仿真(后仿真)和电路验证。仿真是指使用设计软件包对已实现的设计进行完整测试,模拟实际物 理环境下的工作情况。Quartus软件通过使用PowerFit适配技术(分块点云数据应用强力匹配,里面所有元件都耗电极低,装在一块芯片上,人们可以收集、储存和发送信息。)和Logiclock增强技术(LogicLock是 QuartusII 1.1之後新增的功能,最早的概念是:讓使用者每次修改、最佳化整個專案(project)的一部份時,該部份在接下來與其他電路整合的過程中,透過第一 次最佳化時已將電路的擺放位置、nodes間相對關係固定,以維持原先子模組(sub-module)特性在與電路合併後不受影響,故不需要再對整個電路 (top-level project)重做一次最佳化。)提供了设计的效率。Quartus软件支持百万门级的设计, 并且为第三方工具提供了无缝接口。Quartus还提供与其他EDA工具的无缝接口,可以在Quartus集成环境中自动运行其他EDA工具。 Quartus可以识别EDIF网表文件、VHDL网表文件和VerilogHDL网表文件,并且可以产生这些网表文件,为其他的EDA工具提供方便的 接口。Quartus的编译器是系统的核心部位,它提供强大的设计处理功能,可以添加特定的约束条件,以提高硅片的利用率。Quartus软件支持多种仿真方法,即支持testbench、第三方的仿真工具、波形方式输入。Quartus中,编译结果显示如下: 图8.1 tlc5510编译结果图8.1是行为描述方式实现TLC5510采样控制在Quartus的编译结果,从图中可以看出引脚信息和编译信息,由图可见芯片是属于Cyclone系列。向量波形文件是Quartus中,仿真器结果如下: 图8.1 仿真结果1 图8.2 仿真结果2图8.3 仿真结果3八、 设计中的问题及解决方法该系统综合运用了FPGA硬件描述语言改变电路结构、算法技术和无线点对点传输技术,将两者相结合应用在远程数据采集中。该系统用户界面友好,操作简便, 精度、速度以及系统可靠性完全满足要求。该系统应用于某研究所试验中的飞艇与地面间的数据采集传输。实践表明,该系统适合用在要求采集通道多、精度高,但速率要求不高的数据采集中。由于整个系统的控制采用FPGA实现,具有组织方式灵活的特点,可以依据现场的具体情况,对FPGA的内部配置进行修改、调试。这种数据采集系统可适用于多种同步数据采集的应用场合,是一种比较理想的实时数据采集方案。该设计已经应用在多模块的红外线列探测器地面成像演示系统中,实际中的应用证明,基于FPGA的高速数据采集系统完全可以可以满足其多通道采集的要求。九、 设计心得两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。 课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础 通过这次课程设计,本人在多方面都有所提高。通过这次课程设计,综合运用本专业所学课程的理论从而培养和提高学生独立工作能力,提高了计算能力,绘图能力,熟悉了规范和标准,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。 在这次设计过程中,体现出自己单独设计的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。 在此感谢我们的戴正科老师,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次的设计的每个实验细节和每个数据,都离不开老师您的细心指导。而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。 同时感谢对我帮助过的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊。 由于本人的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十分乐意接受你们的批评与指正,本人将万分感谢。十、 参考文献1 程佩青.数字信号处理教程.清华大学出版社.20012 边计年,薛宏熙译.用VHDL设计电子线路.清华大学出版社.20003 王锁萍.电子设计自动化(EDA)教程.电子科技大学出版.20004 曾繁泰,侯亚宁,崔元明.可编程器件应用导论.清华大学出版社.20015 潘松,黄继业.EDA技术与VHDL.清华大学出版社.20056 蒋璇,臧春华.数字系统设计与PLD应用技术.电子工业出版.20017 宋万杰,罗丰,吴顺君.CPLD技术及应用.西安电子科技大学出版社.20008 马建国,孟宪元.电子设计自动化技术基础.清华大学出版社.20049 张军峰,王占领.基于EDA的FPGA设计.电子与电脑.2006.210 金革.可编程逻辑陈列FPGA和EPLD.中国科技大学出版社.199911 Brown,Stephen D. Francis,Robert J. Rose,Jonathan. Vraesic,ZvonKoG.Field-Programmable Gate Arrays. Kluwer AcADemic Publishers.199212 Ole.H.Flesaker.VHDL in Practical Design.Microelectronicslaboratory.199813 James Lapalme.El Mostapha Aboulhamid.Gabriela Nicolescu.A newefficient EDA tool Design methodology.ACM Transactions on Embedded Computing Systems(TECS).May.200614 Rene Penning de Vries.EDA challenges in the converging applicationworld.Proceedings of the conference on Design,automation and test in Europe.Mar.200615 Michael Baxter.Open Source in Electronic Design Automation.LinuxJournal.Feb.200116 Boris Murmann.Bernhard Boser.Digitally Assisted Analog Entegrated Circuits.Queue.Mar.2004十一、 附录1. 程序总体结构原理图1. TLC5510采样控制 图11.1状态机实现TLC5510采样控制原理结构图图11.2 行为描述方式实现TLC5510采样控制原理结构图2. 程序清单1. 状态机实现TLC5510采样控制程序library ieee;use ieee.std_logic_1164.all;entity VHDL1 isport(rst,clk:in std_logic;d:in std_logic_vector(7 downto 0);ADck,ADoe:out std_logic;data:out std_logic_vector(7 downto 0);dclk:ou

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论