0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于FPGA的高速数据采集系统该怎么设计?

FPGA设计论坛 来源:未知 2023-10-06 14:55 次阅读

点击上方蓝字关注我们

wKgaomUtDwmAKNQwAAAAxmHeATo923.pngwKgaomUtDwmAcc1IAAAC9hV8I20187.png

目前,在数据采集系统的硬件设计方案中,有采用通用单片机USB相结合的方案,也有采用DSP和USB相结合的方案,前者虽然硬件成本低,但是时钟频率较低,难以满足数据采集系统对速度要求;后者虽然可以实现高速传输,但DSP价格过于昂贵。而利用FPGA和USB接口芯片结合的方案,具有功耗低、时钟频率高、速度快、效率高、组合形式灵活等特点,是单片机和DSP所无法比拟的。

系统总体方案

根据本系统要实现的功能,该系统硬件部分采用“信号调理电路+A/D转换电路+FPGA+USB 2.0接口芯片”的模式加以设计。系统采用可编程逻辑器件FPGA控制信号调理电路的工作,同时控制A/D转换器采样,这样通过硬件描述语言来描述可以使硬件设计如同软件一样灵活,并且FPGA可重复编程的特性提高了工作效率和设计的灵活性。另外系统所需的高速缓存FIFO是由USB 2.0接口芯片的片内资源来实现的,这样做可以降低系统成本、提高系统可靠性。USB 2.0接口芯片的固件程序由集成在芯片内的增强型8051单片机进行控制,固件程序存放在主机上,在系统上电后通过上位机驱动程序下载到芯片内部的RAM内。系统的总体方案如图1所示。

wKgaomUtDwmAG9mcAAAWzPhCT6Q202.jpg

图1 数据采集系统结构图

整个硬件电路的工作流程是:当上位机发来数据采集请求,FPGA就开始启动对信号调理模块和A/D采样控制模块的控制。经过A/D转换后的数据按照一定的时序发送到USB 2.0接口芯片的端口FIFO里面,然后再把数据通过USB总线传输给上位机。

系统硬件设计与实现

本数据采集系统的硬件设计主要是基于USB 2.0的硬件数据采集卡的设计。此采集卡的作用是首先用A/D转换器对输入的电路实验数据进行采样量化,然后将采样得到的数据通过USB 2.0总线传送到上位机,以便进行后续处理。

主控芯片简介

Altera公司的Cyclone II FPGA是基于Stratix II的90nm工艺推出的低成本FPGA,由于增加了DSP硬件块,在芯片总体性能上要优于Cyclone系列器件,而在成本上却仍维持Cyclone系列低成本的优点。本设计选用了Cyclone II系列中的EP2C5Q208芯片,其逻辑单元有4608个,M4K RAM有26个,锁相环有2个、乘法器模块有13个,最大用户可用I/O引脚为142个,可以满足本设计的需要。图2为EP2C5Q208的外围连接电路框图。

wKgaomUtDwmACwdxAAAi4RIbngY181.jpg

图2 主控芯片连接框图

电源电路

设计电源电路之前,首先对系统中各器件所需电源的需求情况进行分析,电源电路需要提供5种直流电压才能满足系统对电源的需求:FPGA的供电电压是3.3V和1.2V;信号调理电路电压为+12V和-12V;A/D转换器ADC0809所需要的电压为5V;USB 2.0接口芯片CY7C68013需要3.3V供电。而系统只有USB总线能提供+5V电压,因此需使用开关电源进行电压转换。电压转换电路如图3所示。

wKgaomUtDwmAPYEaAABkf1stO_A061.jpg

图3 电源电路

信号调理电路

信号调理电路的作用是对微弱的输入信号进行适当的调理,使其电压范围在0~5V之间,从而满足A/D转换芯片的输入电压的要求。本调理电路中采用了运算放大器芯片AD827。该芯片最高带宽为50MHz,芯片内部集成2片运放,分别用来进行信号的放大平移和衰减。信号调理电路如图4所示。

wKgaomUtDwuAUUMYAAAYNc0OAeQ494.jpg

图4 信号调理电路

图中左半部分为第一个环节,这个环节输入电压V1,输出电压为V2,对于微弱的输入信号,可以经过调理达到正常电平范围之内。右半部分为第二个环节,这个环节是信号的衰减环节,若第一个环节得到的电压幅值较大,超过了0~5V的电压范围,则可以将此信号在第二个环节进行衰减。第二个环节的最大增益为1,通过调节电位器,可以使信号最小衰减为0。这样,信号经过信号调理电路之后,就可以满足A/D采样的要求了。

A/D采样电路

经过调理后的模拟信号需要经A/D转换芯片进行采样、量化、编码,然后将编码后的数据经过USB 2.0接口芯片传送至USB主机,A/D采样电路是整个数据采集电路的关键部分。本设计所使用的A/D采样芯片是ADC0809转换芯片,它是通过采样逐次逼近的方法完成A/D转换的。ADC0809由单一+5V电源供电,片内带有锁存功能的8路模拟多路开关,可以对8路0~5V的模拟信号分时进行转换。A/D转化器电路的连接如图5所示,其中,参考电压VREF+接+5V,VREF-接地,输入模拟电压范围为0~5V。

wKgaomUtDwuAVfcOAAA2LjsreiE800.jpg

图5 A/D采样电路

wKgaomUtDwyAIhjOAAAlfnkDxk0783.jpg

图6 从属FIFO模式连接框图

USB 2.0接口电路

Cypress公司的EZ-USB FX2系列芯片是世界上第一个集成了USB 2.0协议的微处理器,它支持12Mb/s的全速传输和480Mb/s的高速传输,可使用4种USB传输方式。本系统采用EZ-USB FX2系列中CY7C68013-56PVC芯片。该芯片集成了USB 2.0收发器、串行接口引擎SIE(Serial Interface Engine)、8.5KB的RAM、4KB的FIFO存储器、I/O口、通用可编程接口GPIF(General Programmable Interface)。

由于在EZ-USB FX2的内部嵌入了增强型的8051,所以一般的数据传输都可以通过8051来控制实现,但是因为8051本身的工作频率较低,限制了与外围电路之间的数据传输速度的进一步提高。虽然这种限制在12Mb/s的全速模式下不是很明显,但是当数据传输速度提升到高速时,8051将成为系统的带宽瓶颈。为此,本设计选择采用了从属FIFO接口模式进行传输,这样8051就不会参与数据的传输,但它可以通过FIFO或RAM的方式访问所传输的数据。由于篇幅限制,在此只给出其连接框图。

系统软件设计

本系统软件的设计主要包括A/D转换控制程序、USB设备固件程序(Firmware)、主机USB设备驱动程序、主机端应用程序和远程客户端应用程序几个模块。系统的软件构成框图如图7所示。

wKgaomUtDwyAMoYVAAAXZYjaLw0790.jpg

图7 系统软件设计框图

A/D转换控制程序主要是控制A/D转换芯片的工作时序,然后把转换完成后的数字信号发送到FPGA内部。本设计的该程序部分是在可编程逻辑器件FPGA中实现的。

芯片CY7C68013的固件程序负责处理PC机发来的各种USB请求,以完成主机和外围电路之间的数据传输,例如,完成对接口芯片的I/O端口和存储单元的初始化;设置CPU时钟频率,配置相应端点的工作状态;初始化工作模式和数据传输方式;响应各种主机发送来的请求等。

设备驱动程序的主要功能是使Win32应用程序能够正确访问本采集电路的硬件设备。本系统设计的设备驱动程序是以Microsoft的设备驱动开发包DDK(Device Driver Kit)为开发工具,以微软驱动模型WDM(Windows Driver Model)的形式编写的。应用程序通过API函数发出相应命令以后,设备驱动程序以I/O请求包IRP(I/O Request Packets)的形式封装该命令,并把它传递给底层的总线驱动程序USBD(Universal Serial Bus Driver),从而达到与硬件设备进行通信的目的,最后总线驱动程序给上层驱动程序返回一个状态信号来告知本次通信是否成功完成。

主机端应用程序的主要功能是接收硬件设备发送的数据,并且把采集到的数据进行显示和存储。

结论

本文主要完成了一种高速数据采集系统的设计,该数据采集系统利用高性能FPGA、高速A/D转换器、高速USB 2.0接口芯片,是一种具有高速USB接口的外置式数据采集卡,信号的处理都是在PC机上完成的,这样不仅缩小了电路体积,提高了系统的稳定性,而且节约了系统成本。

wKgaomUtDwyATfYmAAAJM7aZU1A329.png

有你想看的精彩 至芯科技FPGA就业培训班——助你步入成功之路、9月23号北京中心开课、欢迎咨询! 利用FPGA设计基于LVDS的图像数据采集传输系统 流水线ADC的内部结构和工作原理是什么

wKgaomUtDwyAQDWeAABUdafP6GM538.jpg

扫码加微信邀请您加入FPGA学习交流群

wKgaomUtDwyAFAkUAABiq3a-ogY217.jpgwKgaomUtDwyAD62qAAACXWrmhKE641.png

欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!

wKgaomUtDwyAcLYJAAAGU7g5tvo110.png

点个在看你最好看

wKgaomUtDw2AW3PxAAAGU7g5tvo535.png


原文标题:基于FPGA的高速数据采集系统该怎么设计?

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1602

    文章

    21320

    浏览量

    593195

原文标题:基于FPGA的高速数据采集系统该怎么设计?

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    plc数据采集模块的缺点 plc数据采集模块与数据采集卡的区别

    PLC(可编程逻辑控制器)数据采集模块是用于连接传感器、执行器和机器设备,收集实时数据的设备。虽然PLC数据采集模块在工业自动化领域得到了广泛应用,但它仍然存在一些缺点,而与之相比,数据采集
    的头像 发表于 01-19 14:20 481次阅读

    高速视频采集卡设计方案:620-基于PCIe的高速视频采集

    实验室数据采集 , FPGA逻辑视频采集 , 高速视频采集卡 , PCIe视频采集卡 , 视频程
    的头像 发表于 01-05 09:44 246次阅读
    <b class='flag-5'>高速</b>视频<b class='flag-5'>采集</b>卡设计方案:620-基于PCIe的<b class='flag-5'>高速</b>视频<b class='flag-5'>采集</b>卡

    labview数据采集系统由哪五部分组成

    LabVIEW数据采集系统由以下五个主要部分组成:硬件、传感器、信号调理器、数据采集卡和LabVIEW软件。 一、硬件部分: 硬件是数据采集系统
    的头像 发表于 01-02 13:53 582次阅读

    AD采集卡设计方案:630-基于PCIe的高速模拟AD采集

    AD采集卡 , 高速数据采集系统 , 实验室数据采集 , 高速模拟AD
    的头像 发表于 12-25 10:21 264次阅读
    AD<b class='flag-5'>采集</b>卡设计方案:630-基于PCIe的<b class='flag-5'>高速</b>模拟AD<b class='flag-5'>采集</b>卡

    数据采集网关:工业数据采集上云

    数据采集网关,以其高效、便捷的特点,成为了现代工业物联网数据采集处理的重要工具。它是连接不同数据源和数据接收设备的桥梁,将各种形式和格式的数据
    的头像 发表于 12-12 16:46 330次阅读
    <b class='flag-5'>数据采集</b>网关:工业<b class='flag-5'>数据采集</b>上云

    AD采集卡设计原理图:630-基于PCIe的高速模拟AD采集

    一、产品概述 基于PCIe的一款分布式高速数据采集系统,实现多路AD的数据采集,并通过PCIe传输到存储计算服务器,实现信号的分析、存储。 产品固化
    发表于 12-11 11:36

    专注数据采集分析系统研发 做设备与MES系统中转站

    数据采集是实现MES系统与设备对接的核心环节。通过采集设备产生的实时数据,将其传输给MES系统进行处理和分析。
    发表于 12-01 17:09

    数据采集仪是如何进行数据采集分析 如何工作的 工程监测数采仪

    数据采集
    稳控自动化
    发布于 :2023年10月26日 09:44:30

    基于嵌入式系统高速数据采集的平台研究

    电子发烧友网站提供《基于嵌入式系统高速数据采集的平台研究.pdf》资料免费下载
    发表于 10-18 09:33 0次下载
    基于嵌入式<b class='flag-5'>系统</b>的<b class='flag-5'>高速</b><b class='flag-5'>数据采集</b>的平台研究

    基于ARM和FPGA设计高速图像数据采集传输系统

    的灵活性和FPGA的并行性的特点,设计了一种基于ARM+FPGA高速图像数据采集传输系统。所选用的ARM体系结构是32位嵌入式RISC微处
    的头像 发表于 09-27 10:45 859次阅读

    基于ARM与线性CCD的高速数据采集系统设计

    接口,它使电路工作在更加平稳、简洁而易丁控制,同时也提高了ARM的工作效率。为了提高通信速度,这里采用通用申行总线(USB)技术米与PC进行通信。ARM是用来控制主处理器的数据采集数据的计算和数据传输。结果证明,整个
    发表于 09-26 07:41

    数据采集采集时间间隔怎么选择 COMWIN工程监测 振弦采集

    数据采集
    稳控自动化
    发布于 :2023年09月06日 13:51:36

    什么是数据采集仪它有什么作用

    数据采集
    稳控自动化
    发布于 :2023年08月14日 09:28:12

    旋转环境下基于FPGA的多通道数据采集系统设计

    kHz的128通道并行实时数据采集功能。然后通过设计一种参数可调的随机共振信号检测系统,提高了信号信噪比,增强了系统在旋转环境下检测的准确性。经测试验证,该系统具有良好的实时性、稳定
    的头像 发表于 08-08 09:25 731次阅读
    旋转环境下基于<b class='flag-5'>FPGA</b>的多通道<b class='flag-5'>数据采集</b><b class='flag-5'>系统</b>设计

    【虹科方案】虹科高速数据采集套装,一站式集成,应用广泛!

    NO.1套装概述虹科高速数据采集套装HKDAQ系列产品是一套功能强大的高速数据采集设备,可以用来采集模拟波形,通过模数转换器对
    的头像 发表于 06-21 17:24 382次阅读
    【虹科方案】虹科<b class='flag-5'>高速</b><b class='flag-5'>数据采集</b>套装,一站式集成,应用广泛!