基于CPLD/FPGA高速数据采集系统的设计

发布者:丝语轻风最新更新时间:2011-07-07 关键字:CPLD  FPGA  数据采集系统 手机看文章 扫描二维码
随时随地手机看文章
   

0 引 言

    传统的数据采集系统一般采用单片机,系统大多通过PCI总线完成数据的传输。其缺点是数学运算能力差;受限于计算机插槽数量和中断资源;不便于连接与安装;易受机箱内电磁环境的影响。这些问题遏制了基于PCI总线的数据采集系统的进一步开发和应用。因此,需要一种更为简便通用的方式完成采集系统和计算机数据的交互。

    数据采集系统性能的好坏,主要取决于它的精度和速度。在保证精度的条件下应尽可能地提高采样速度,以满足实时采集、实时处理和实时控制的要求。实践表明,采用ARM 32位嵌入式微处理器作为控制器,用USB(通用串行总线)和上位机连接构成的数据采集系统能大大提高系统数据处理的能力,降低对PC机和接口速度的依赖。

1 系统硬件设计

    实现系统功能的基本思路是:以CPLD/FPGA实现仪器的数字平台,和ARM嵌入式处理器及单片机一起实现对整机的智能控制和高速的数据处理。

1.1 系统框图

    系统原理方框图如图1所示,该系统主要由微处理器、数字逻辑平台、输入控制、A,B通道输入处理、C通道输入处理、整形、A/D转换、采样时序控制、键盘液晶显示、存储器扩展等模块构成。

1.2 系统结构图

    系统硬件如图2所示,利用一片规模较小的CPLD和一片规模较大的FPGA组合构成系统的数字逻辑平台。CPLD主要用作输入控制,FPGA则连接了系统的其他各个部分。CPLD/FPGA可实现现场编程,使用CPLD/FPGA可使设计方便,利用它灵活、校验快以及设计可随意改变的特点,可大大缩短研制时间。

1.3 主要部分功能

1.3.1 微处理器


    系统采用由Philips公司生产的ARM 32位微处理器LPC2105作为主CPU,进行高速的数据处理,用8位单片机P89C51RD2作为辅CPU,进行速度较慢的数据处理,控制其他外围芯片和模块实现A,B通道模拟带宽100 MHz、峰值电压±100 V和C通道二极管通断、电压、电流、电阻值的数据采集功能。

1.3.2 A,B通道部分

    通过自动增益电路(AGC)即程序控制放大器,将被测模拟信号调理到适合ADC芯片(AD9288)采样的范围。根据频率的大小和触发方式,运用实时采样或等效采样对调理后的模拟信号进行采样(A/D转换)。利用高速FIFO存贮器(IDT72V261LAl0A)存储采样后得到的数据。

    结合键盘操作和系统设置,对采样后的数据进行数学运算,将还原后的波形数据和参数送液晶显示器显示或存入闪存里面或通过USB接口传送给PC机,从而实现了A,B通道高速数据采集的功能。

1.3.3 C通道部分

    C输入通道为多功能输入通道,系统通过控制继电器矩阵来选择不同的模块测量电压、电流或二极管的通断和电阻。被测元件参数或电压、电流经过多功能转换电路处理后,其信号送24 b的A/D转换器ADS1211采样后送单片机P89C51RD2,分析被测元件或电压、电流的参数值,从而实现了C通道高精度数据采集的功能。

1.3.4 键盘、液晶显示接口电路

    本系统采用4×8的键盘和320×240不带驱动器的液晶显示模块,驱动器和显存设计在FPGA内。以上系统通过USB接口与PC机通信,在上位机的控制下,实现可视化人机交互界面。同时系统也保留了传统的RS 232接口,但只是用于ARM和单片机的编程下载。

2 软件设计流程

    LPC2105芯片作为系统主控制中心及数据处理中心,整个系统的运转受到它的控制,例如响应用户的按键操作,发出通道控制,A/D采样时钟控制,FIFO写时钟的选择,菜单及系统状态显示,FIFO数据的处理,信号或参数的自动测试等。

    数据采集卡的软件程序结构如图3所示,可分为系统初始化模块、键语分析模块、系统核心控制模块、通道控制模块、触发控制模块、A/D采样控制模块、FIFO读写控制模块、读取频率字模块、参数测试模块、状态显示模块、波形显示模块、存储控制模块、其他功能模块。

    系统的初始化模块包括开机自检、硬件参数初始化、系统状态初始化(如通道的波形显示状态初始化)等。键语分析模块对面板上的用户输入进行分析处理,通过核心控制模块调用相应的功能处理模块,通过对通道控制模块、触发控制模块、A/D采样控制模块、FIFO读写控制模块、读取频率字模块、参数测试模块、状态显示模块、波形显示模块、存储控制模块、其他功能模块的函数调用来实现对来自键语分析的处理功能。状态显示模块显示程序运行时的各种状态,如当前数据采集的扫描速率、通道的垂直灵敏度等。波形显示模块显示采集的波形。

    整个系统的程序又可分成底层驱动和上层软件。底层驱动指对本系统其他外设或器件直接控制或访问的程序部分,包括LPC2105和单片机的初始化(即对片内各核心寄存器的操作赋值、对片上外设的初始化赋值、对片内各外设中断及外部中断的控制操作)。上层软件主要指:菜单的设计及显示、数据的处理、波形的恢复及平滑等。

关键字:CPLD  FPGA  数据采集系统 引用地址:基于CPLD/FPGA高速数据采集系统的设计

上一篇:用CPLD实现FIR数字滤波器的设计
下一篇:基于CPLD的视频叠加

推荐阅读最新更新时间:2024-05-02 21:28

USB在数据采集系统中的应用
    在工业生产和科学技术研究的各行业中,常常利用PC或工控机对各种数据进行采集。这其中有很多地方需要对各种数据进行采集,如液位、温度、压力、频率等。现在常用的采集方式是通过数据采集板卡,常用的有A/D卡以及422、485等总线板卡。采用板卡不仅安装麻烦、易受机箱内环境的干扰,而且由于受计算机插槽数量和地址、中断资源的限制,不可能挂接很多设备。而通用串行总线(Universal Aerial Bus,简称USB)的出现,很好地解决了以上这些冲突,很容易就能实现低成本、高可靠性、多点的数据采集。     1 USB简介     USB是一些PC大厂商,如Microsoft、Intel等为了解决日益增加的PC外设与有限的主板插
[单片机]
USB在<font color='red'>数据采集系统</font>中的应用
ASIC、FPGA、GPU,三种深度学习硬鉴方案哪种更被看好?
  今天被罗振宇的跨年演讲刷爆了朋友圈。不过他讲 深度学习 和GPU的时候,真让人虐心。下面就随网络通信小编一起来了解一下相关内容吧。   显卡的处理器称为图形处理器(GPU),它是显卡的“心脏”,与CPU类似,只不过GPU是专为执行复杂的数学和几何计算而设计的,这些计算是图形渲染所必需的。    对 深度学习 硬件平台的要求   要想明白“ 深度学习 ”需要怎样的硬件,必须了解深度学习的工作原理。首先在表层上,我们有一个巨大的数据集,并选定了一种深度学习模型。每个模型都有一些内部参数需要调整,以便学习数据。而这种参数调整实际上可以归结为优化问题,在调整这些参数时,就相当于在优化特定的约束条件。        百度的硅谷
[网络通信]
基于FPGA芯片的CCD的硬件驱动电路设计
CCD驱动电路的实现是CCD应用技术的关键问题。以往大多是采用普通数字芯片实现驱动电路,CCD外围电路复杂,为了克服以上方法的缺点,利用VHDL硬件描述语言.运用FPGA技术完成驱动时序电路的实现。该方法开发周期短,并且驱动信号稳定、可靠。系统功能模块完成后可以先通过计算机进行仿真,再实际投入使用,降低了使用风险性。 1 硬件设计 CCD的硬件驱动电路系统的核心器件是SPARTAN系列芯片XC3S50;CCD采用Atmel公司的CCDTH7888A图像传感器;CCD驱动脉冲由XC3S50提供,脉冲信号产生后由驱动模块对脉冲电压进行变换使其符合TH7888A的驱动电压要求。CCD像素输出电压经过A/D转换模块
[嵌入式]
英特尔的这款车载娱乐系统,究竟为我们带来了哪些可能?
你是否跟我一样,如果开车去陌生的地方,就会在出发前摸出手机开启在线地图进行导航。 车载导航 因图像不清晰和路线更新不及时,已失宠很久。或许,你也听过一些新闻报道,比如车主在陌生的地方一直跟着车载导航指引走,有的开进了电车隧道里,有的开进了断头路,更有甚者开进了河里…… 这些听上去十分尴尬甚至像笑话的导航经历,确是我们身边真实发生的。 驾驶员也很无奈,传统的车载导航落后太多,大部分人只好购买手机支架,宁可用手机,也不用车载信息娱乐系统。如今,在 英特尔 ® FPGA 中国创新中心展厅中,展出了一款基于Intel® MAX® 10 FPGA的车载娱乐系统,它为未来的汽车信息娱乐解决方案提供了一种可能性,值得我们一探究竟。
[汽车电子]
英特尔的这款车载娱乐系统,究竟为我们带来了哪些可能?
基于MCU和FPGA灵活设计车载信息娱乐系统
汽车工业蓬勃发展,车载信息娱乐系统已经不再是豪华轿车的独有设施,越来越多的中低端轿车开始拥有自己的信息娱乐系统。   然而,车载信息娱乐系统是一个高度集成的复杂系统,其中可以包括导航系统、影音系统、电话系统、空调通风系统,以及其他车内外舒适设备的控制系统等,这些系统涉及的通讯网络可以包括LINK_KEYWORD0、MOST、LIN、蓝牙和其他无线网络协议等。设计这样一个复杂系统,不但要考虑系统的性能和成本,更要考虑设计的灵活性,以保持产品在快速变化的市场中的竞争力。   汽车电子系统要求温度适应范围大、有利于生产标准化和很长的设计寿命。车载信息娱乐系统是一个快速发展和适应各种用户的系统,如果既要保持一个设计具有长的寿命又要
[工业控制]
基于MCU和<font color='red'>FPGA</font>灵活设计车载信息娱乐系统
分时复用时CPLD设计变频系统中的应用
    摘要: 简要介绍利用MaxplusII软件来实现VVVF控制SPWM变频调速的方法。设计中提出一种三相分时运算思路,详细阐明其具体实现方式。试验证明,CPLD应用于变频调速系统控制是非、常有效的,使用分时复用电路大大减少了CPLD使用逻辑门的数目。     关键词: 三相分时运算 变频调速 可编程逻辑器件 变频调速的实现,目前一般利用CPU加片内外设的专用微处理器。但是,专用微处理器大量占用CPU,受时钟限制,很难实现高精度算法,且引脚I/O口有限。用CPLD(复杂可编程逻辑器件)设计乃至仿真、验证、利用ISP(在系统编程)对硬件调试都非常方便,开发周期很短,且I/O口很多,可以随意设定,故用CPLD设
[半导体设计/制造]
基于FPGA的高压交联电缆测试电源的研制
摘要:分析了串联谐振的原理并通过推导得出谐振电容两端电压的关系式,结合目前国内高压电缆耐压测试的发展现状,证明了变频串联谐振试验方法的优越性。对于控制部分,利用现场可编程门阵列(FPCA)实现了自动频率跟踪,使得整套系统的控制精度得以提高。经测试结果表明,研制的耐压测试电源样机具有操作简单、控制方便、体积小、重量轻等优点,在输出功率为6 kW的情况下,可以使电缆试品上承受的电压稳步升高到18 kV,满足了18 kV以下交联聚乙烯(XLPE)电缆的耐压测试要求。 关键词:电源;耐压测试;串联谐振;自动频率跟踪 1 引言     近年来,XLPE绝缘电力电缆已经取代油纸绝缘电力电缆,并逐步取代PVC绝缘电力电缆和充油电力电缆,且电压等
[电源管理]
基于<font color='red'>FPGA</font>的高压交联电缆测试电源的研制
FPGA之DDS信号发生器
本文主要涉及以下几个问题 1:频率控制字如何得到 2:DDS的框图 3:用MATLAB得到正弦波的数字量化 4:设计代码 5:仿真代码 6:仿真图 首先将正弦波信号离散化,离散成多少位的根据自己的设计精度要求来定,但最高位一定是符号位,负数用补码来表示;然后用rom或者ram来存储离散后的数据;再由频率控制字的累加来给出地址用于读出ROM或者ram中的数据。 1:相位累加器的位宽设为n,fc/(2^n)称作频率分辨率,这是能分辨出的最小频率,提高相位累加器位宽可以调高频率分辨率。目标频率f=M*fc/2^n ,fc是采样频率,M是频率控制字,由此可以得到频率控制字。 2:DDS框图其中输入到ra
[测试测量]
<font color='red'>FPGA</font>之DDS信号发生器
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved