基于FPGA和光纤通信的数据采集系统设计_第1页
基于FPGA和光纤通信的数据采集系统设计_第2页
基于FPGA和光纤通信的数据采集系统设计_第3页
基于FPGA和光纤通信的数据采集系统设计_第4页
基于FPGA和光纤通信的数据采集系统设计_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

精选优质文档-----倾情为你奉上精选优质文档-----倾情为你奉上专心---专注---专业专心---专注---专业精选优质文档-----倾情为你奉上专心---专注---专业1绪论1.1本课题的研究背景及意义数据采集,又称,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。数据采集技术广泛引用在各个领域,比如摄像头,,都是数据采集工具[1]。被采集数据是已被转换为电信号的各种物理量,如温度、水位、风速、压力等,可以是模拟量,也可以是数字量。采集一般是采样方式,即隔一定时间(称)对同一信号再次采集,经过采样、转换的信号称为“数据”。采集的数据大多是瞬时值,也可是某段时间内的一个特征值。准确的数据量测是数据采集的基础。数据采集含义很广,包括对面状连续物理量的采集。在计算机辅助制图、测图、设计中,对图形或图像数字化过程也可称为数据采集,此时被采集的是几何量(或包括物理量,如灰度)数据,随着雷达、通信以及工业测试等领域中数字信号处理技术的快速发展,数据采集在速度及精度上均提出了更高的要求[2]。FPGA是一种具有丰富的可编程I/O引脚的可编程逻辑器件。具有时钟频率高,内部时延小,运行速度快,组成形式灵活的特点,并能够控制较为复杂的外围器件[3]。可以解决电路系统小型化、低功耗、高可靠性过程中遇到的问题,因此FPGA成为目前高性能数据采集系统主要使用的控制芯片[4]。随着信息化步伐逐渐加快,光纤通信技术已成为现代通信的重要支柱,光纤通信具有传输损耗低、传输频带宽、速率高、重量轻、体积小和抗电磁干扰等优点,光纤传输损耗几乎比同轴电缆和波导低三个数量级,并且在整个频段内其损耗对于任何调制信号都相同,因此光纤成为一种理想信号传输媒介[5]。本文所设计的数据采集系统综合应用了以上两种技术集合两者的优点,在处理数据时使用高性能的FPGA,同时在传输获取的数据上采用光纤传输,提出基于光纤通信的多通道数据采集系统,该课题的研究既有十分广泛的意义。1.2本课题国内外研究现状数据采集和处理系统的控制芯片在不停发展和进步,从原来的单一的单片机发展到数字处理芯片DSP,嵌入式芯片等更高速、高性能的芯片。在高性能数据采集系统中,我们通常采用单片机或DSP做为整个系统的CPU,来控制AD模数转换、存储器以及其他一些外围电路的工作[6]。基于单片机和DSP而设计的数据采集系统都有一定的不足:(1)单片机的时钟频率较低,需要软件支持来实现其功能,软件的运行时间在整个采样时间中占据很大的比例,效率较低,很难适应高速、高精度数据的采集系统的要求。(2)DSP的虽然运算速度快而且擅长处理密集的乘加运算,但是它对外围的复杂硬件进行逻辑控制的功能较差。然而FPGA(现场可编程门阵列)有着单片机和DSP无法比拟的优势。FPGA的时钟频率高,内部时延小;全部的控制逻辑都可由硬件完成,速度快,效率高,适于大数据量的高速传输控制;FPGA的组成形式灵活,而且可集成外围控制、译码和接口等各种电路[7]。随着信息化步伐逐渐加快,光纤通信技术已成为现代通信的重要支柱,在现代电信网中起着举足轻重的作用。光纤通信作为一门新兴技术,其近年来发展速度之快、应用面之广是通信史上罕见的,也是世界新技术革命的重要标志和未来信息社会中各种信息的主要传送工具。光纤通信是现代通信网的主要传输手段,它的发展历史只有三四十年,已经历三代,短波长多模光纤、长波长多模光纤和长波长单模光纤、采用光纤通信是通信史上的重大变革,美、日、英、法等多个国家已宣布不再建设电缆通信线路,而致力于发展光纤通信,中国光纤通信已进入普及阶段。光通讯是通讯发展的必然方向,光纤通信就是利用光波作为载波来传送信息,而以光纤作为传输介质实现信息传输,达到通信目的的一种最新通信技术[8]。通信的发展过程是以不断提高载波频率来扩大通信容量的过程,光频作为载频已达通信载波频率的上限,光是一种频率极高的电磁波,因此用光作为载波进行通信容量极大,是过去通信方式的千百倍,具有极大的吸引力,光通信是人们早就追求的目标,也是通信发展的必然方向。对光纤通信而言,超高速度、超大容量和超长距离传输一直是人们追求的目标,未来的高速通信网将是全光网,全光网是光纤通信技术发展的最高阶段,也是理想阶段。传统的光网络实现了节点间的全光化,但在网络结点处仍采用电器件,限制了目前通信网干线总容量的进一步提高,因此真正的全光网已成为一个非常重要的课题。全光网络也是人们不懈追求的梦想[9]。1.3本课题的主要工作及论文的组织结构本论文主要研究基于FPGA和光纤通信的数据采集系统,论文的主要内容是:(1)数据采集系统的基本理论研究;(2)提出了基于光纤通信多通道的数据采集系统总体设计方案及完成外围的硬件电路设计;(3)完成FPGA内部模块设计即软件设计;(4)对系统相关模块进行仿真并给出仿真结果。本文共分五章,第一章绪论中概述了数据采集系统的用途和意义。第二章阐述了数据采集系统的理论知识中信号采样、模数转换、光纤通信等基本理论。第三章提出了基于FPGA的数据采集系统的总体设计方案及完成对外围的硬件电路设计。第四章完成软件设计并进行仿真。最后在第五章结束语中,对本文进行了总结和展望。

2系统相关理论2.1数据采集的基本概念数据采集就是将被测对象的各种参量(可以是物理量,也可以是化学量、生物量等)通过各种传感器做适当转换后,再经电路对信号进行调理、采样、量化、编码、传输等步骤,最后送到控制器进行数据处理和存储记录的过程[10]。这里所用的控制器一般是计算机系统。随着计算机技术的不断发展和普及,模拟设备越来越多的被数字设备所取代,在生产过程控制和科学研究等广泛的领域中,计算机测控技术正发挥着越来越重要的作用。但是大部分的信息都是以连续变化量的形式出现的,例如温度、位移、速度、压力等。要想用计算机将这些信息进行处理,就必须首先将这些连续的物理量进行离散化,并进行量化、编码,从而变成数字量,这过程就是数据采集。它是计算机在监测、管理和控制一个系统的过程中,取得原始数据的主要手段。数据采集系统的任务,具体地说,就是将采集传感器输出的模拟信号通过一定的处理并能够转换成计算机识别的数字信号,即AD模数转换,转换后的数字信息最后送入计算机,由计算机根据不同的需要进行相应的计算和处理。与此同时,将计算得到的数据进行显示或打印,以便实现对某些物理量的监视,其中一部分数据还将被生产过程中的计算机控制系统用来控制某些物理量。图2.1是一个模拟信号的数据采集系统框图。图2.1模拟信号数据采集系统框图模拟信号通过信号调理电路,将传感器产生微弱的模拟信号进行滤波放大处理,把信号放大到与A/D转换器满量程电压相应的电平值,以便充分利用A/D转换器的分辨率。然后A/D模数转换电路将放大后的模拟信号转换为计算机能够识别的数字信号,A/D转换后的数据信息一般不能直接传送到计算机,所以在读入计算机或其他处理设备之前应该增加数据存储模块,这样能有利于将数据连续的送入计算机。通过时序逻辑控制电路可以控制信号调理、A/D模数转换器、数据存储等单元,并实现与计算机的通信。2.2采样定理及频混的产生和抑制在数据的采样中过程所应遵循的规律,称为采样定理。采样定理说明采样频率与信号频谱之间的关系,是连续信号离散化的基本依据,是数据采集的理论基础。若连续信号是有限带宽的,其频谱的最高频率为,对抽样时,若保证抽样频率:那么,可由恢复出,即保留了的全部信息。通常把最低允许的抽样率。称为“Nyquist频率”。采样定理严格地规定了采样时间间隔的上限,即。如果取的太大,使互时,那么将会发生中的高频成分被叠加到低频成分上去的现象,这种现象称之为频混。不产生频混现象的临界条件是。或者说当采样间隔一定时,不发生频混的信号最高频率。信号中能够相互混淆的频率为:(式2.1)式中为能相互混淆的频率。为了减少频混现象,通常可以采用抗混叠滤波器,过采样两种方法。2.3A/D模数转换A/D模数转换是数据采集的主要任务和关键步骤,A/D转换的好坏直接关系到数据采集的精度和质量。所谓A/D模数转换,就是将传感器输出的模拟信号转换成计算机能够识别的数字信号。在ADC器件中,因为输入的模拟信号在时间上是连续的而输出的数字信号是离散的,所以转换只能在一些列选定的瞬间对输入的模拟信号取样,然后再把这些取样值转换成输出的数字。图2.2是A/D转换框图。图2.2A/D模数转换框图其过程可包括为四个步骤:采样,保持,量化和编码,首先对输入的模拟电压信号取样,取样结束后进入保持时间,在这段时间内将取样的电压量化为数字量,然后编码。按照一定的编码格式给出转换结果。然后再开始下一次取样。采样就是是对模拟信号在时问上进行离散的过程。数字信号不仅在时间上是离散的,而且数值大小的变化也是不连续的。就是说,任何一个数字量的大小只能是某个规定的最小数量单位的整数倍。在进行A/D转换时,必须把取样电压表示为这个最小单位的整数倍。这个转化过程叫做量化,所取的最小数量单位叫做量化单位,用△表示。显然,数字信号最低有效位(LSB)的1所代表的数量大小就等于△。把量化的结果用代码可以是二进制,也可以是其他进制表示出来,称为编码,这些代码就是转换的结果。2.4光纤通信原理2.4.1光纤通信系统结构光纤通信与以往的电气通信相比,主要区别在于有很多优点:它传输频带宽、通信容量大;传输损耗低、中继距离长,线径细、重量轻,原料为石英,节省金属材料,有利于资源合理使用,绝缘、抗电磁干扰性能强;还具有抗腐蚀能力强、抗辐射能力强、可绕性好、无电火花、泄露小、保密性强等优点,可在特殊环境或军事上使用。光纤通信是以光波为载波,以光纤为传输介质的一种传输方式。光纤通信于其他有线通信方式原理基本相同,只要差别有二:(1)是把光频段电磁波作为载波;(2)是把光纤作为传输信号线。正是这两点的差异,实现了大容量通信技术的突破。光纤通信系统利用半导体激光器(LD)作为光源,产生光载波,由来自信源的数字信号(电信号)进行调制,形成调制的光信号并将耦合进光纤中传输;在接收端使用光检测器(如PIN光电二极管或雪崩光电二极管)将光信号进行解调,获取数字信号[11]。光纤通信系统主要由发送机、接收机和信道三部分组成,如图2.4所示。来自信源的信息有发送机将其转换为适合在信道上传输的光信号,光纤构成的信道把光信号有发送及传送至接收机,接收机从信道中提取信息并转换为最终形态,由信宿输出。信源的作用是把非电形态的的信息转换为电形态的的信息,把非电信号转换为电信号。最常见的信源是把声波转换成电流信号的麦克风和将图像转化成电流信号的视频摄像机,在任何情况下,无论是电通信海华丝光纤通信系统,信息传输之前必须是电形态的。发送机的作用是将来自信息源的电信号转换成适合在光纤传输中的光信号,它由调制器、载波源、和信道耦合器组成。信道是指发送机和接收机之间的传输的路径,在光纤通信系统中,光纤就是信道。而接收机的作用是将来自信道的光信号解调,得到的信源信息的再现,送入信宿。接收机由光检测器、放大器和信号处理器组成。信宿实质是光纤通信系统的信息的输出装置[12]。图2.4光纤通信系统结构示意图2.4.2光纤传输系统中线路码的选择要求在数字光纤传输系统中,线路码的选择不仅要考虑器传输媒介光纤的特性,还需考虑光电转换器即光源器件和光探测器件的特性。例如,光纤线路的带宽(或色散)特性影响着对线路码型速率变换的选择,光源器件的非线性影响着对线路码型是单极性(或者说是两电平)还是多电平的选择[12]。一般来说,对光纤传输线路码型的选择主要考虑如下要求。(1)能保证比特序列独立性。这是对线路码型的最墓木要求,即无论对数字光纤传输系统输入什么样序列的二进制码流,在接收端进行码型反变换时,均能准一正确地恢复原信号。(2)能提供足够地定时信息。由于在数字光纤传输系统中,只传送信码而不传送时钟,因此在接收端必须从收到的码流中提取出定时信号。这就要求线路码中含有足够的定时信息,以利于定时提取。必须限制线路码流同码连续数,也就是说,应避免长连“0”及长连“1”的出现,提高电平跳变的密度,使定时提取易于实现。(3)减少功率谱密度中的高低频分量。线路码的功率谱密度中的低频分量是由码流中的“0”、“1”分布状态来决定的。低频分量小,说明“0”、“1”分布比较均匀,直流电平比较恒定,也就是信号基线浮动小,有利接收端判决电路的正常工作。高频分量是由线路码的速率决定的,这在带宽(色散)限制系统中特别值得注意。(4)误码增殖小。线路传输中发生的一个误码,往往使接收端的译码(反变换)发生多个错误,这叫误码扩展或误码增殖。由于误码增殖,使光接收机要达到要求的误码性能指标,必须付出光功率代价,即光接收机灵敏度劣化。因此,误码增殖系数越小越好,(5)要有一定的规律。若线路码型有一定的规律性,则就可以根据这一规律性来检测传输质量,实现不中断业务的误码监测,便于传输系统的维护和管理。(6)易于同时传递多种信息。易于在传送主信息(业务信息)的同时,传送监控、公务、数据等维护管理信息,以及区间通信等辅助信号。(7)尽可能地提高线路码型的传输效率。传输率定义为。式中关为变换前码流的速率,为变换后码流的速率。(8)易于实现。选择线路码型,应实现起来电路简单,成本低,耗电少,调试、维护方便。2.4.3常见的光纤线路码由于光只能以通、断方式表示二进制信号,所以光纤数字通信系统的线路码多采用单极性码[13],而极少采用三电平码、四电平码。常见的光纤线路码型有如下几种。(1)Manchester码。Manchester码又称双相码。它对每个二进制代码分别利用两个具有不同相位的二进制新码去取代。编码规则之一是,“0”编为“01”(零相位的一个周期的方波);“l”编为“10”(相位的一个周期的方波)。双相码直流电平稳定,最长连“0”连“1”数为2,定11寸信息丰富,但传输效率仅为50%。CMI码。CMI码是传号反转码的简称,其编码规则为:“1”码交替用“11”和“00”表示;“0”码用“01”表示。CMI的最长连“0”连“1”数为3,定时信息丰富。CCITT将其推荐为PCM四次群的接口码型,有时也用在低速数字光纤传输系统中。以为例分别编为双相码和CMI码如表4.1。表4.1双向码和CMI码编码实例代码1100101双向码10100101100110CMI码00110101000111(3)mBnB码。mBnB码又叫分组码(BlockCode),它把信息码流的m位二进制码作为一组,变换为n位二进制码作为新的码组。由于n>m,新码组可能有组合,故多出种组合。从中选择一部分有利码组作为可用码组,其余为禁用码组,以获得好的特性。常见的mBnB码有1B2B码、3B4B码、5B6B码、7B8B和8B10B。其中前四种码型多用于低速和较高速的系统;8B10B适用于高速光纤数字传输系统,其编码效率为80%,但电路实现比较复杂,而且接收端进行串并转换时需中断所传数据,周期性的发送特殊同步字才可确定帧边界,这在视频传输系统中是不希望的。(4)CIMT码。CIMT是Conditional-InvertMasterTransition的简称,即条件翻转主跳变码。其编码解码电路相对简单,定时信息丰富,编码效率最高达83.3%,是编码复杂性和编码效率折衷的一种线路码。本系统中就采用此种信道编码方式。

3系统整体设计及各模块电路3.1系统整体设计数据采集系统包括模拟信号和数字信号的采集,本课题主要对模拟信号进行采集,系统整体结构如图3.1图3.1系统整体设计3.2模拟信号的滤波放大电路滤波放大器的作用是将传感器产生微弱的模拟信号进行滤波放大处理。放大器把信号放大到与AD转换器满量程电压相应的电平值,,以便充分利用A/D转换器的分辨率,放大器的放大倍数可以通过设计放大电路来进行实时控制。本系统中由于具体到实际的测量对象,但是测试采集系统都是根据测量对象选择合适的传感器,通过传感器把特定的被测量信息按一定规律转换成某种的便于传输、便于处理的信号。所以在这里具体的给出滤波放大电路是没有意义的,要根据所测的对象选定合适的传感器,在根据传感器转换后的信号进行滤波放大,使得模拟信号输入的信号与A/D转换器的输入端相匹配。3.3模拟开关的选择存储测试系统常常需要多通道同时采集。在此情况下,若是在每个通道都设置一套模拟传输及量化器,是不经济的,有时也是不必要的,特别在有限的体积内有时甚至是不可能的,因此,本系统要根据被测信号的特点与测试要求,模拟信号采集通道采用多路转换器,用最简单的硬件电路完成多路信号的存储测试[14]。模拟开关是数据采集系统中的主要器件之一,它的作用是切换各路输入信号。在测控系统中,被测物理量通常是几个或几十个。为了降低成本和减小体积,系统中通常使用公共的采样保持器、放大器及A/D转换等器件,因此需要使用多路开关轮流把各路被测信号分时地与这些公用器件接通。多路开关有机械触点式开关和半导体模拟开关。机械触点式开关中最常用的是干簧继电器,它的导通电阻小,但切换速度慢。集成模拟电子开关的体积小,切换速率快,无抖动,耗电小,工作可靠,容易控制。它的缺点是导通电阻较大,输入电压电流容量有限,动态范围小。在较低频段上(f<10MHz)的集成模拟电子开关,通常采用CMOS工艺制成;而在较高频段上(f>10MHz)则采用双极型晶体管工艺技术。集成模拟电子开关在测控技术中得到广泛应用。在设计中往往要用到模拟开关,对于不同的用途需要选择不同的模拟开关。在选择时要考虑:通道数量,导通电阻,开关时间,泄漏电流,切换速度等。作为多路选择开关,需要多通道快速循环采集。在本系统中,模拟输入信号的电压范围是0~10V,通道数为8,选择了开关速度比较快、泄漏比较小、8选1的模拟选择开关ADG407。3.4AD转换器A/D转换器的作用是以不丢失模拟信号的信息为原则,将模拟信号转换成数字信号,用以完成信号的存储、显示、分析与处理。转换的分辨率、误差、噪声和采样频率等都是影响转换的因素[15]。本系统选用了低功耗、高速并行口、逐次逼近的14位A/D转换器AD7484。此转换器的性能参数如下:分辨率:14位整体非线性特征:±1LSB信号与噪声和失真比SINAD:76.5dB总谐波失真THD:-90dB峰值谐波噪声SFDR:-90dB最高采样频率:3M参考输入/输出电压:2.5V直流泄漏电流:±1MaAD7484的时序转换图如下图3.3所示:图3.2AD7484时序转换图在上图中,AD7484数据转换时间最大为300ns;转换信号低脉冲宽度必须介于5ns和100ns之间;信号转换下降沿与AD7484开始转换的忙信号下降沿的时间差最大为20ns;从数据转换完成变为高电平到把数据放置到AD7484的地址总线上的数据存取时间最大为25ns。根据以上AD7484的数据转换时间要求,我们在用FPGA对其进行时序和逻辑控制的时候要非常注意。在原理图的设计中,Vdrive的电压必须与FPGA和闪存的管脚电压相匹配,所以必须接3.3V电压。其电路原理图如下图3.3所示:图3.3AD7484电路原理图3.5光纤通信模块3.5.1系统采用信道CIMT码编码方式(1)CIMT码的传输帧CIMT码的传输帧有三种形式:数据帧、控制帧和填充帧。数据帧用来传输主信信,控制帧多用来传输包头、包尾或其他协议信息等辅助信息,填充帧在无数据输入或发送端和接收端链路刚启动时产生,用于保持或建立同步。选用何种帧形式进行传输由输入的控制信息决定。(2)CIMT码的编码过程CIMT码的编码过程可分为MasterTransition和Conditional-Invert两部分,编码原理框图如图3.4。图3.4CIMT编码原理框图MasterTransition:CIMT编码将每帧步个行数据分为D域(Data-field)和C域(Coning-field)两部分进行编码。D域为所要传输的业务信息或辅助信息,宽度为16bit或20bit。C域附加在D域后,根据所输入的控制信息进行编码,不同的控制信息传输不同的帧形式,其编码编码规则也不同。但无论输入什么样的控制信息,C域宽度均为4bit,且中间的两位一定为一对互补码,“10”或“01”,这样每一帧就都产生了一个主电平跳变点,即MasterTransition。此跳变点为接收端提供帧同步信息,通过搜索它能很好的确定串行码流中每帧的“起始”及“末尾”时刻。这样采用CIMT信道编码技术就无需象4B/5B、SB/10B编码方式周期性中断数据流而插入特殊的帧同步字来保持系统同步,从而保证了传输的实时性。CIMT的帧结构如图3.5。图3.5CIMT码的帧结构Conditional-Invert是通过对输入数据求符号和来判断数据输出时是否需要翻转。即首先分别用“+1”、“-1”表示数据中的“1”和“O”,对输入的并行数据求和,然后将所得的符号与以前的数据求和符号相比较:符号相同则将当前帧数据翻转输出;符号相反则按原数据输出;当前帧数据求和为零时,则说明当前帧数据中“O”、“1”个数相同,数据己经平衡,故可以翻转也可以不翻转。这样做的目的是为了使传输线上的数据流保持平衡,不会产生直流电平漂移。一种16bit的CIMT线路码的编码格式如表3.6。表中CAV、DAV为传输帧选择的控制信息,当CAV为“1”,DAV为“0”时传送数据帧;CAV为“0”,无论DAV为何值,均传送控制帧;CAV、DAV均为“1”时表明无信息传输系统自动产生填充帧。表3.6一种16bit的CIMT线路码的编码格式CIMT线路码不但可以满足编码效率高、电路实现简单、具有丰富的定时同步信息、对高低频分量具有好的抑制性等光纤线路码的基本要求,而且其通过MasterTransition提供帧同步信息的方法可以保证信号的实时传输,因此适合用于数字光纤传输系统[16]。3.5.2并串转换、编解码模块系统采用Agilent公司的高集成度通信ICG-LINK系列芯片组HDMP一1022和HDMP一1024。HDMP一1022为发送端芯片,实现将AD转换器输出的并行数据,通过编码、并串转换、转化为适合在实现光纤传输信号,然后通过光发射模块将信号转换为光信号,使其在光纤中传输。同理,在接受信号时,通过光接受模块接受光信号,通过转换把信号送入接收端芯片HIDMP一1024,完成串并转换、译码,还原数据,之后对数据进行处理。该芯片组的性能特点如下:采用CIMT信道编码方式;TX和RX均内嵌PLL(PhaseLockedLoop,即锁相环),用于保持帧同步;接收端芯片Rx中,内嵌状态机用于自动链路的管理;并行数据为TTL电平接口,串行数据为PECL电平接口;处理并行数据的位宽为16it,20bit两种选择。1发送端芯片HDMP一1022的结构原理及功能发送端芯片HDMP一1022内部包括锁相环/时钟产生、C域编码、D域编码、帧复用(并/串转换)、扰码(包括符号产生、累加翻转)、数据输出等几个部分。其具体结构框图如图3.6所示,图3.7HDMP一1022结构原理图(1)锁相环/时钟产生器:锁相环/时钟产生器负责产生复接器内部所需的所有时钟。根据DIVO和DIVI的输入信息,锁相环首先确定并行数据的频率范围并对外部输入的并行时钟STRBIN锁定,然后以此时钟为基准进行倍频,产生高速率串行时钟CLK,以用于并/串转换。(2)C域编码、D域编码、帧复用、扰码即为CIMT编码器。M20SEL用于选择16bit还是20bit输入;CAV、DAV用于选择采用何种传输帧形式;FLAGSEL对FLAG为进行设置,FLAGSEL=l时FLAG可作为第15位或21位数据进行传输,FLAGSEL=O时FLAG用于系统自检。(3)数据输出:当LOOPEN=O时,高速串行数据从DOUT端口输出;当LOOPEN=1时,高速串行数据从COUT端口输出,此时多用于芯片环路测试。2接收端芯片HOMP一1024的结构原理及功能接收端芯片HOMP一1024包括数据输入、相位频率检测、环路滤波、VCO(Contr0lledOscillator即压控振荡器)、时钟产生二、帧解复用(串/并转换)、C域解码、D域解码及状态机。其详细结构原理图如图3.7。图3.8HDMP一1024结构原理图(l)数据输入。Rx的数据输入部分对应于Tx,有两个输入端口LIN和DIN,仍然通过LOOPEN控制,控制规则与Tx相同。(2)相位/频率检、环路滤波、VCO构成的接收端的PLL(锁相环),用于建立和保持发送端及接收端的同步环路,并从输入的串行数据中提取出高速串行时钟。Rx的DIVO和DIVI的设置;需和Tx设置一致。(3)时钟产生器。时钟产生器是在环路锁定的情况下,将提取出的高速串行时钟进行分频得到并行同步时钟并从STRBOUT管脚输出。(4)帧解复用(串/并转换)、C域解码、D域解码部分构成信道解码器,它将串行数据转换为并行数据,并分为C域和D域两部分进行解码,恢复16bit或20bit的并行数据同时输CAV和DAV的控制信息及FLAG位。(5)状态机。状态机主要用于系统的自动份理。STAT0和STATl表明Tx和Rx的工作状态,其对应关系如表3.9。表3.9STAT0和STATl和Tx和Rx的工作状态对应关系状态标号STAT0STATlTx、Rx的工作状态000复位状态,Rx进行频率检测110准备接收数据,Tx进行相位检测210同步环路建立,传输数据由于HOMP一1024接收端接受串行数据为PECL电平接口,而通过光接受模块输出的串行数据位TTL电平,所以需要进行电平转换。系统中采用MICREL公司的SY10ELT20V作为电平转换器,实现TTL到PECL的电平转换。3系统的上电复位电路系统中对G-INK芯片组Tx和Rx的复位采用上电复位的方法。复位电路图如图4.11所示,HDMP-1022复位管脚RST和HDMP-1024SMRST1和SMRST2均为低电平有效,低电平持续时间为5个并行时钟周期即可复位,系统中采用并行时钟=20MHz,则此时需要的复位时间为,但考虑到电源稳定的时间,参数温漂,晶振稳定时间以及复位可靠性因素,必须留有充足的余量。因此系统中选取,此时。上电复位电路如图3.10所示。图3.10系统上电复位电路3.6光收发一体模块系统采用A-CreateOCB3353单纤双向TTL光收发一体模块,具有其参数如下:(1)仅用一根光纤实现双向传输;(2)单+5V供电;(3)1310/1550nm输入/输出或输出/输入;(4)标准1×9管脚封装,(5)SC插拔式或FC尾纤型光接口;(6)与TTL电平兼容。其管脚功能如表3.11所示表3.11单纤双向TTL光收发一体模块A-CreateOCB3353管脚功能图根据其管脚功能,其电路接法如图3.12所示。图3.12系统中光收发一体模块A-CreateOCB3353电路接法其中发射数据输入端口接HDMP1022数据输出端,接受数据输出接HDMP1024的数据接收端。3.7Flash存储电路设计存储电路关系到整个系统测试数据的可靠性保存及读取,在本系统的设计中需要存储容量为10Mwords,由于考虑到多次重触发触发次数的扩展和每一次触发存储容量的扩展及触发时间的增长,要求存储芯片容量足够大,同时存储测试技术有向大容量方向发展的趋势[17],所以选择了NAND型闪存存储器K9F1G08U0M。它的存储容量有(128M+4096K)bit8bit,工作电流10mA,具有掉电数据不丢失的特点。所以当测试系统记录数据完成时,可以关闭电源,当开始读数时再连通电源,减少了功耗,同时也避免了由于其他原因导致误下电、数据丢失的缺点[18]。K9F1G08U0M型号闪存内部存储结构示意图如下图3.12所示:图3.13闪存内部结构示意图由于K9F1G08有16个行地址和12个列地址,而I/O口只有八位,所以每一次命令的发出,都需要有四个周期的时间来执行。其命令执行的顺序如下图3.14所示:图3.14闪存命令执行顺序图在本测试系统中闪存K9F1G08主要有三种工作状态:数据读、数据写、数据擦除。这三种状态的命令设置及时序如下表3.15和图3.16、图3.17、图3.18所示:表3.15闪存工作命令设置功能第一周期第二周期读00h30h页写80h10h块擦除60hD0h图3.16闪存数据读逻辑时序图在读数过程中的最小周期,则最大频率;读数时钟最小周期,则最大频率;闪存忙信号的最大时间延时,读数时闪存能够达到的最快读取速度为:,但实际读数中,却很难达到这个速度。在读数软件中我们用GPIF的自带晶振30MHz提供时钟,如果和经过一个周期,则GPIF晶振至少工作两个周期,所以此30MHz频率所能达到最大的读数速度为15MHz,小于的最大频率20MHz,所以在闪存的正常频率响应范围之内。读数时在写命令时钟6个周期信号的推动下,当CLE为高电平、ALE为低电平时,写入数据输出命令00h和数据输出命令30h;当CLE为低电平、ALE为高电平时,I/O数据位上被写入两个列地址、两个行地址,然后经过闪存的一段编辑时间Busy后,数据在读数时钟的推动下开始依次在闪存中读出数据。图3.17闪存数据写逻辑时序图在页编程操作中,闪存K9F1G08在将数据写入的时候,与读取数据的时序有点不同。它在写入完串行数据输入命令80h、两个列地址和两个行地址后先将一页(2k+64)byte数据写入闪存,然后再写入数据写命令10h,之后经过最小300us最大700us的编辑时间将数据保存在闪存内。可见,闪存的写入数据是以页为单位的。在页编程过程中,闪存硬件要求最大为22.2MHz,为此我们采用20MHz晶振为FPGA提供全局时钟,系统内部在FPGA的控制下给闪存存储时提供的时钟最大为10MHz,所以系统完全能够在此晶振驱动下正常工作。图3.18闪存数据擦除逻辑时序图在块擦除操作中,在上图3.16中可以看出,闪存只写入了块擦除命令和两个列地址后就执行了闪存擦除编辑时间(tBERS最大时间为3ms,典型时间为2ms,经过多次统计在1.6ms左右)。可见块擦除操作是以块为单位进行擦除操作的。由于FLASH存储器存满数据之后必须先进行擦除才能再写进去,所以在闪存擦除的这段时间之内,数据不能存进闪存,而必须存进其他空间。如果选用外部RAM,则会额外增加功耗;XC2S50内部自带的4K字节的RAM能够完成此任务。然而这与实现Flash存储器循环采样想违背,为了解决这个问题,我们可以采用FIFO模块。现计算在边存储边擦除的过程中系统允许的最大采样频率,假设闪存在擦除时擦除一块的时间为典型值2ms,闪存存储时存储一页的编程时间为最长时间700us,则允许的最大采样频率为。假设闪存在擦除一块时的时间为实际统计时间1.6ms,闪存存储一页的编程时间为最短间300μs,则允许的最大采样频率为。系统的采样频率为1MHz,完全满足闪存的频率要求。闪存K9F1G的电路原理图如图3.19所示。图3.19闪存K9F1G的电路原理图3.8FPGA控制电路设计我们在使用FPGA设计电路的时候有许多内在的规律可以参考,但从基本概念和整体设计出发,要遵循以下四个基本设计原则[19]面积和速度的平衡与互换原则。在FPGA的设计过程中的基本设计目标是面积和速度的平衡与互换,一定要注意两者的合理设计。硬件原则。硬件原则主要是针对HDL代码编写语言而言,HDL是一种硬件描述语言,本质在于描述硬件,最终实现芯片内部的实际电路。系统原则。此原则就是要求对设计系统的全局有个宏观上的合理安排,比如时钟域、模块复用、约束等问题。同步设计原则。同步时序设计是FPGA设计的最重要的原则之一,它的基本原则是使用时钟沿触发所有的操作。在本测试系统中我们选用的FPGA芯片为Xilinx公司的Spartan-II系列芯片XC2S50,它主要包括5个可配置部分[20]:(1)可配置逻辑块(CLBs),用于实现大部分逻辑功能;(2)可编程的输入输出块(IOBs),提供封装引脚与内部逻辑之间的连接接口;(3)可编程连线;(4)随机存取块状RAM;(5)全数字式延迟锁相环(DLL)时钟控制块,能够有效地消除时钟分配的延迟。XC2S50在本测试系统中处于核心地位,其主要作用是指挥整个测试系统顺利完成测试任务,内容主要包括控制AD7484的数据转换的工作时序,控制FLASH闪存存储数据、读取数据和擦除数据的逻辑与时序,控制电源管理模块自动下电等任务。XC2S50和XCF01S配置电路原理图,如下图3.20所示:图3.20XC2S50和XCF01S的配置原理图在本测试系统中FPGA芯片XC2S50的配置芯片选用为XCF01S,配置模式是主串模式。XC2S50在进行配置时,它给自己提供时钟和所有的控制逻辑,将XCF01S内部的PROM中的串行配置数据加载进XC2S50内的RAM中。在第一次烧写FPGA时,计算机将VHDL程序烧写进XCFO1S内的PROM中,它具有记忆功能,XC2S50没有记忆功能。当系统再上电时,XC2S50芯片自动将XCF01S内PROM中的数据加载入片内编程RAM中进行配置,配置完成后,FPGA进入工作状态;掉电后,FPGA恢复成白片,内部逻辑关系消失。XC2S50的DONE管脚信号连接到XCF01S的片使能信号端CE,使其进入工作态;XC2S50的CCLK管脚输出连接到XCF01S的CLK端,用来驱动XCF01S,XCF01S的D0数据端将信号反馈到XC2S50的DIN端。CCLK的每个上升沿到来时,XCF01S内的地址计数器加1,下一个数据位将被送到XCF01S的DO数据输出端,XC2S50在下一个CCLK上升沿到来时接受来自XCF01S的D0数据输出端的数据,直到配置完成[21]。其配置的时序如下图3.21所示:图3.21主串模式配置时序图3.9电源管理模块电源管理电路负责给整个电路各个部分提供工作电压和管理某些器件的工作状态。此部分电路的供电原理框图如图3.22。图3.22电源管理模块供电原理框图电源管理电路主要是控制整个电路的电源工作状态。当测试系统上电后,电源管理电路负责提供5V电压给数字模块、提供3.3V电压给数字模块的晶振;当测试系统测试完成时,电源管理电路则通过让传感器供电电路三极管处于截止态从而使传感器停止工作,关断5V和3.3V电源,使测试系统停止工作。其电路原理图如图3.23所示:图3.23电源管理模块原理图在此部分电路中电源我们选用两块额定电压为3.7V的240mAh的可充电锂电池,芯片选用HEF4013、LP2985(LOUA)、LP2987(L43A)。HEF4013芯片是由具有Set和复位的2个D型触发器构成的,LP2985(LOUA)和LP2987(LOUA)都是具有关断状态的低噪声线性/低压降稳压器。LP2985(LOUA)输出为恒定+5V电压,LP2987(L43A)输出为恒定+3.3V电压。其中由+7.4V经过U5(LP2985)稳压至+5V的电压VEE主要负责模拟模块部分的电源供电,由VEE经过LP2987稳压到+3.3V的VJJ负责给数字模块部分的晶振供电;由+7.4V经过U4(LP2985)稳压至+5V的电压VCC主要负责数字模块部分的电源供电。根据电路图中的设计,当系统上电时即ON点短暂置低,ON端信号由低电平经过的时间变为高电平,此上升沿促使HEF4013的第一管脚由低变高即ONA由低变高。此时由于ONA为高电平,U4(LP2985)的ON端使能,LP2985工作将+7.4V电压稳压到恒定+5V电压;同时由于ONA的变高导致HEF4013的第八管脚由低电平经过=R6·C6=10ms的时间变为高电平,将HEF4013的第十三管脚置为高电平,即ONB变为高电平。同理,由于ONB的变高致使VEE产生和VJJ产生,这样就完成了系统上电时的电源控制。当测试系统测试完成时,FPGA产生的TC信号由低电平变为高电平即HEF4013第四管脚和第十管脚清零端由低电平变为高电平,将ONA和ONB全部清零,致使LP2985芯片和LP2987芯片置零,VCC、VEE、VJJ全部变为低电平,从而达到了给整个测试系统下电的效果。这样这个电源管理模块完成了对测试系统的电源进行管理控制的作用。3.10时钟电路设计 在系统中,时钟可以时钟信号发生器或外部晶体振荡器产生,我们采用由外部20MHz晶振提供全局时钟。一是FPGA控制AD转换器的采样时钟,二是FPGA的控制下给闪存提供时钟。

4FPGA内部设计及仿真4.1FPGA控制程序设计在用FPGA进行编程的时候,选择开发软件为XilinxISE,用硬件编程语言VHDL对各个器件进行描述。仿真软件选用ModelSimSE对编辑程序和器件进行仿真[21]。FPGA在整个测试系统中起到控制中枢的作用,它控制协调整个系统有序、稳定、快速的完成测试任务[22]。它的具体任务可包括(1)控制A/D转换器的采样频率实现数据的模数转换;(2)控制FLASH芯片K9F1G实现数据的存储、读取和擦除工作。FPGA内部程序原理框图和程序设计图如下所示:图4.1FPGA内部逻辑原理框图图4.2FPGA内部逻辑图4.2控制AD程序设计AD7484是14位模数转换器,除了应用典型接法电路外,只需要将采样频率提供给它,它就可以按照采样频率完成模数转换。在上图5.1所示的adc部分就是FPGA控制AD7484的程序,它是通过VHDL语言编程后生成的器件。在这部分中主要完成了(1)根据参数设置,生成所想要输出给AD的采样频率convst;(2)将AD7484产生的14位数据转换为2个8位数据;(3)产生FPGA各器件清零信号clr,在系统上电后首先给各个器件清零;(4)当系统测试完毕时,在程序内停止采样频率convst的输出等。现具体介绍各管脚的功能:JENX:外部输入管脚,AD7484的convst的控制管脚。当系统处于存状态时,其值为1,convst输出;当系统处于读取数据或擦除数据状态时,其值为0,convst停止输出。AD(13:0):外部AD7484输入的14位并行数据。fosc:系统全局时钟输入,由外部20MHz晶振产生。stop:测试完成时,给整个系统下电的控制信号,由FPGA产生。在adc内部编程中,16位数据位前14位代表由AD7484输入的14为数据,clr是FPGA内部大部分部件的清零信号,在其清零期间,各器件没有进入工作状态,利用这点我们可以任意设置clr的清零时间,同时也可以用来实现定时启动系统工作的功能,设计灵活,操作简单。这部分的时序仿真图如下图所示:图4.3控制AD程序仿真图由仿真图可以看出,(1)当fosc经过N个周期后,清零信号clr由低电平变为高电平,完成清零目的;(2)由全局时钟fosc到采样频率convst为20分频,时钟fosc由外部20MHz晶振提供,所以convst采样频率为1MHz,其他设计均与前期程序设计相符。4.3闪存读写与擦除程序控制这部分程序的编写及作用是FPGA程序设计中最重要的一部分,也是最关键的一部分。它分为对闪存存储数据、读取数据、擦除数据三部分,各部分分别按照K9F1G的各自命令(见表3.2所示)编写。闪存程序控制的总流程图如下图4.5所示。在程序编写的过程中,程序编写越简单、模块化越分明则程序越稳定、越容易维护。在此部分设计中,我们在完成设计功能目的的同时简化了设计思路,优化了程序设计内容;分模块进行编写,便于维护。闪存K9F1G的容量空间为1G,而我们所用到的实际空间为10M,所以本测试系统空间可扩展性非常强,在对测试系统进行容量扩展时,不需要对硬件做任何改变,直接通过FPGA编程就可以实现,操作方便。图4.4FPGA控制闪存工作的整体流程图(1)FPGA控制闪存写程序闪存写程序控制部分就是FPGA通过控制连接到闪存控制管脚的时序,将测试数据存储到闪存中的过程。FPGA闪存写控制程序按照程序设定把缓存部分输送过来的8位数据进行存储,只要缓存部分有数据输出,则此部分就将其存入闪存[23]。在往闪存里面写数据的时候,先写低位或高位字节都可以,但一定要注意数据读数的时候也要先读低位或高位字节,以免出现数据读取高低位错位的问题。FPGA控制闪存存储数据时,在存储方式上可以分为两种:单次触发存储和多次触发存储。单次触发存储即整个系统触发一次就完成存储任务;多次触发存储即整个系统触发多次才可以完成此次存储任务,具体触发次的次数,可根据设计需要设置,本测试系统设置触发次数为10次。这两种存储方式的总存储空间是一样的,但多次触发根据多次触发次数将总存储空间分为几个单元,在每一次的触发存储阶段都只在每一小单元内循环采样,直到此单元触发、结束这一单元的存储为止。而此时程序跳往下一个存储单元继续进行循环采样[24]。多次触发存储中的每一小单元的存储跟单次循环整体存储原理是一样的,只不过存储空间变小了而已[25]。写数据部分流程图如下图4.5所示。图4.5闪存写数据流程图(2)FPGA控制闪存读程序FPGA控制闪存读取数据FPGA通过设计好的程序控制K9F1G的读数控制管脚,将数据读出闪存。控制闪存读数程序流程图如图4.7。图4.6闪存读数据流程图(3)FPGA控制闪存擦除程序FPGA控制闪存擦除程序是其他闪存控制程序中最简单的一部分。闪存K9F1G的擦除是以块为单位进行的,即每次擦除最少擦除1块。在进行擦除命令时闪存只需要把行地址输入到闪存,在擦除命令下就可以完成擦除任务。闪存擦除程序控制的流程图如图4.7所示。图4.7闪存擦除程序控制的流程图5结论总结:本论文主要对基于FPGA和光纤通信的数据采集系统进行了研究,论文从数据采集系统的总体方案出发,对每一个组成部分进行了详细的介绍,然后就FPGA设计中的各个逻辑功能模块进行了深入的分析,并且对各个模块的实现方法做出了详细说明。本论文基本完成基于FPGA和光纤通信的数据采集系统系统设计。该系统具有优点是:本系统在处理数据时使用时钟频率很高、内部时延非常小、全部的控制逻辑都可由硬件完成,速度快,效率高的FPGA;同时在传输获取的数据上采用传输损耗低、传输频带宽、速率高、重量轻、体积小和抗电磁干扰的光纤传输;采用断电不丢失闪存存储。展望:在处理数据时我们可以采用数据压缩的方法,同时通过USB接口建立与上位机的通信。结合两者将大大提高了将系统的效率,实用性,操作性。(1)数据压缩指在不丢失信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率。按照一定的算法对数据进行重新组织,减少数据的冗余和存储的空间。采用数据压缩可提高数据传输、处理效率和存储空间的利用率。(2)USB接口模块设计通过USB接口建立与上位机的通信,将采集的数据发送至上位机,既保证了采样数据的传输速度,又使该系统具备了即插即用的特性,很大程度的提高了系统的实用性。(3)LABVIEW编写上位机程序可使用LABVIEW程序语言进行上位机程序的编写,提高了软件开发的灵活性。参考文献[1]马建明.数据采集与处理技术.西安

温馨提示

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

评论

0/150

提交评论