Niosll和USB接口的高速数据采集卡设计

发布者:冷漠之心最新更新时间:2009-11-29 来源: 四川大学关键字:Niosll  USB  FPGA  高速数据采集卡 手机看文章 扫描二维码
随时随地手机看文章

  引 言

  随着现代工业生产和科学研究对数据采集的要求日益提高,在瞬态信号测量、图像信号处理等一些高速、高精度的测量中,都迫切需要进行高速数据采集(如雷达信号分析、超音波信号分析);而进行数字处理的先决条件是将所研究的对象数字化,因此数据采集与处理技术日益得到重视。在图像信号处理、瞬态信号检测、工业过程检测和监控等领域,更是要求高速度、高精度、高实时性的数据采集与处理技术。现在的高速数据采集处理卡一般采用高性能数字信号处理器(DSP)和高速总线技术的框架结构。DSP用于完成计算量巨大的实时处理算法,高速总线技术则完成处理结果或者采样数据的快速传输。DSP主要采用TI和ADI公司的产品,高速总线可以采用ISA、PCI、USB等总线技术。其中PCI卡或ISA卡安装麻烦,价格昂贵,受计算机插槽数量、地址、中断资源的限制,可扩展性差,在一些电磁干扰性强的测试现场,无法专门对其做电磁屏蔽,易导致采集的数据失真。通用串行总线USB是为解决传统总线不足而推广的一种新型的通信标准。该总线接口具有安装方便、高带宽、易于扩展等优点,已逐渐成为现代数据发展趋势。基于USB的高速数据采集卡充分利用USB总线的上述优点,有效地克服了传统高速数据采集卡的缺陷。

  1 系统硬件设计

  本系统主要是基于USB2.O的S1ave FIFO模式,在FPGA控制下完成双通道、不同速率的数据的采集和发送,全兼容USB2.O总线接口标准,其数据的采样率可高达65 Msps;适用于较高速动态信号的实时记录采集,其硬件系统总体结构框图如图1所示。

硬件系统总体结构框图 

  该系统主要由信号调理模块、A/D转换模块、触发模块、基于FPGA的主控模块、USB收发控制模块、片外存储器及其他辅助电路组成。调理电路与A/D转换器,将传感器采集的模拟信号进行相关的信号调理后送入AD9244芯片转换为数字信号。处理后的数据送往FPGA主控模块,根据相关的控制信息,选择通过直接传输给上位机,或者先存储在外部SDRAM,然后经过相关的数字处理后再传输给上位机。

  2 系统模块介绍

  2.1 USB2.0专用微处理器CY7C68013A

  CY7C68013A是Cypress Semiconductor公司生产的一款集成USB2.O的微处理器。它有3种封装形式——56SSOP、100TQFP和128TQFP,其结构框图如图2所示。

结构框图 

  CY7C68013集成了USB2.O收发器、SIE、增强的8051微控制器和可编程的外围接口部件。其SIE可在全速(12 Mb/s)和高速(480 Mb/s)两种模式下运行,同样可以使用内部RAM来进行程序和数据的存储。GPIF和Master/Slave端口FIFO为ATA、UTOHA、EPP、PCM—CIA和DSP等提供了简单和无需附加逻辑的连接接口。其编程可以根据设计的需要进行,不需要CPU的干预,只需通过CPU的一些标志和中断即可进行通信。CY7C68013共有7个输入输出端口:EP0、EPlOUT、EPlIN、EP2、EP4、EP6、EP8,其中EP2、EP4、EP6、EP8可以分别被配置为批量/中断/同步传输模式,传输方向均可配置为I/O,端口EP2、EP6的缓冲区大小可编程为512或1 024字节,深度可编程为2/3/4倍大小;端口EP4、EP8的缓冲区大小固定为512字节,深度为2倍,采用不同的配置方式,可实现特定带宽和速率要求的数据传输。[page]

  2.2 主控电路FPGA芯片

  EP2C8Q208EP2C8Q208主控电路如图3所示。

EP2C8Q208EP2C8Q208主控电路 

  FPGA芯片也是一种特殊的ASIC芯片,属于可编程逻辑器件,它是在PAL、GAL等逻辑器件的基础上发展起来的。同以往的PAL、GAL等相比,FPGA规模比较大,适合于时序、组合等逻辑电路应用。本文选用A1tera公司的FPGA芯片EP2C8Q208,完成数据采集卡的时序和地址译码电路设计。由于EP2C8Q208有36个M4K RAM,在FPGA内部设计一个16位宽度、4 KB深度的FIFO,使用FIFO提高数据采集卡对多通道信号的采集存储能力。FIFO有半满、全满、空标志位,当检测到半满标志位时,FIFO同时读写;全满时只读不写;空时只写不读。A/D采样控制信号通过FPGA控制;PC机对采集后的数据作进一步处理,以提高精度,其中2选1模块,由主控制模块来控制,选择是直接将采集数据送给PC机处理,还是在内部进行DSP处理后再送给PC机。

  由于Nios是一个位于FPGA中的处理器软核,定制其外设就显得比较容易,在SOPC Builder(集成到Quartus II工具中的为建立SOPC系统设计,提供标准化的图形设计环境。其由CPU、存储器接口、标准外围设备和用户自定义的外围设备组成)环境下,其定制逻辑的结构框图如图4所示。

定制逻辑的结构框图

  自定制的Avalon外设按照对总线操作的方式可分为:Avalon Slave外设和Avalon Streaming Slave(流模式)外设。在SOPC Builder图形设计界面下添加需要的内核。通过自动分配系统基地址和系统中断向量,手动分配CPU复位地址为外设Flash、CPU溢出地址为片上RAM和CPU调试断点地址为JTAG调试地址,就可由系统报告得知系统是否定制成功,如图5所示。

Nios内核定制结构图[page] 

  2.3 ADC芯片及外围电路设计

  ADC外围电路框图如图6所示。

ADC外围电路框图 

  信号调理部分选用高精度、低噪声、低输入偏置电流、宽带运算场效应放大器AD8ll进行信号的放大。模拟信号处理是影响系统性能的重要因素之一,设计时必须考虑两个方面:一是要保证信号质量,提高信噪比,尽量减少畸变;二是将信号变换成适合A/D处理的幅度并提供足够的驱动能力。这里选用ADI公司的宽带运放AD811为放大器。AD8ll是一种电流反馈型的放大器,它具有10 MHz的低失真和单位增益带宽很宽的特点,使AD81l成为理想的高分辨率ADC缓冲器。之后针对信号进行档速变换。档速变换选用ADG系列产品。本设计选用的是一款四路独立选择的单片CMOS开关芯片,其设计基于增强的lc2mos进程、可以提供低功耗、高转换速度和低阻抗性,当信号满足A/D变换的要求后,根据采集要求将其由单端输入变换为差分的双端输出,芯片选用AD8138。AD8138具有较宽的模拟带宽(320 MHz,一3dB,增益为1),可以将单端输入变成差分输出。A/D转换的触发则由信号放大芯片AD811采集信号和D/A转换芯片信号进行比较,当有效时,发出ADn_TRIG信号,其中D/A转换芯片的输入标准信号(数字输入端)由FPGA来提供。当ADn_TRIG有效时,FPGA向AD924.4发出控制命令(DIN、FORMAT、MODE、SCLK、sYNC、FSYNC信号),启动A/D转换。

  A/D转换器的精密时钟由DDS电路AD9859YSV提供。

  3 软件设计及实现

  系统软件设计包括3部分:固件程序、USB设备驱动程序和应用程序。整个软件实现的功能包括系统初始化、采样控制、数据传输和波形显示。

  3.1 固件程序设计

  固件程序辅助硬件实现设备双向交换数据,以完成USB通信,其主要功能是:接收并处理USB驱动程序的请求及应用程序的控制指令,控制A/D转换器的采样。当首次插入USB时,FX2通过USB电缆会自动枚举且下载固件和USB描述符表;接下来,FX2再次枚举,这次主要通过下载的信息来定义设备。这两个步骤叫作重枚举。固件程序流程如图7所示。初始化包含各个初值的设置和关键点的电平检测。

固件程序流程

  在Cypress公司的网站上,可下载CY7(368013芯片的开发工具包。该开发包提供了一些开发固件程序所需的资源:Keil u Vision2集成开发环境(限制版)、Cypress C51固件框架程序以及一些例子程序。KeilCSl是一种专为8051单片机设计的高效率C语言编译器,符合ANSI标准,生成的程序代码运行速度极高,所需要的存储空间极小,完全可与汇编语言相媲美。同时,C51具有丰富的库函数,多达1O0多种功能函数。因此,采用C语言作为开发语言,以Keil uVision2作为工程开发平台,完成源代码的编写、仿真、调试,将在相当程度上降低固件开发难度,提高开发效率。[page]

  3.2 USB设备驱动设计

  USB设备驱动程序的设计是基于WDM(WindowsDriver Model,驱动程序模型)的。WDM采用分层驱动程序模型,分为较高级的USB设备驱动程序和较低级的USB函数层。其中USB函数层由两部分组成:较高级的通用串行总线模块(us—BD)和较低级的主控制器驱动程序模块(HCD)。

  本设计用WinDK3.O开发了Win2000下的驱动程序,实现了控制传输、中断传输和批传输的标准接口函数。在应用程序开发中,可用VC++编制应用程序。把USB设备当成文件来操作,用Create—File得到USB句柄,用DevieeloControl来进行控制传输,用ReadFile、WriteFile进行批量传输。

  3.3 应用程序设计

  应用程序流程如图8所示。用户应用程序是数据采集系统的核心,其主要功能为:开启或关闭USB设备、检测USB设备、设置USB数据传输管道、设置A/D状态和数据采集端口、实时从USB接口采集数据、显示并分析数据。

应用程序流程 

  4 结 论

  用FPGA作为采集处理部分,可以提高系统处理的速度,大大增强系统的灵活性和适应性。FPGA技术和USB的组合,使得数据处理能力得到了极大的提高,且有利于系统升级。USB芯片采用了Cpyress公司的高性能USB2.0芯片CY7C68013,可以完全胜任大数据量的传送。该实例还可应用于实时数据采集、音频及压缩视频数据传输等领域。

关键字:Niosll  USB  FPGA  高速数据采集卡 引用地址:Niosll和USB接口的高速数据采集卡设计

上一篇:便携式产品具有低功耗意识的FPGA设计方法
下一篇:基于SoPC的自感知运动图像采集系统设计

推荐阅读最新更新时间:2024-05-02 20:56

基于FPGA的双口RAM实现及应用
  随着电子技术的飞速发展,大量的高速数据采集和在线测试对现代工业测控系统和仪器仪表的功能和性能提更高要求。CPU并行工作(双单片机系统)方式得到广泛应用。为了使2个单片机能够快速有效交换信息,充分利用系统资源,采用双口RAM实现存储器共享是目前较为流行的方法。   大容量、高速FPGA器件具有集成度高、体积小、灵活可重配置、实验风险小等优点,在复杂数字系统中得到越来越广泛的应用。数字电路设计采用l片FPGA器件、存储设备和一些电气接口匹配电路的解决方案已成为主流选择方案。用FPGA来实现双口RAM的功能可以很好地解决并行性和速度问题,而且其灵活的可配置特性使得基于FPGA的双口RAM易于进行修改、测试及系统升级,可降低设计成本
[嵌入式]
基于<font color='red'>FPGA</font>的双口RAM实现及应用
USB-C接口太无语:手机居然把充电宝充满!
USB-C的优点非常明显,反正都可以插、传输音频、快速充电等等,其大有一统手机、PC接口的势头,但是这样真的好吗?   Android Central编辑分享了一个让人哭笑不得的故事,自己的安卓手机连到USB-C接口充电器上,一夜时间过去手机居然把充电宝充满了。   事情是这样的,Android Central编辑在睡觉前把自己电量还剩余70%的手机跟USB-C接口充电器连接,并亲眼看着它充到10%才安心睡去,但让他无语的是,第二天手机闹铃根本没响,自己睡过头了。   这到底什么情况,起床后他发现,原来手机已经关机了,而充电宝的电量却没有丝毫损耗,甚至还多了一些。看来,昨晚手机根本没充上电。经过深入了解后发现,这其实不是没
[手机便携]
USB 3.1 C型新接口研发中:正插反插都行
    USB推广组织今天宣布,他们已经开始了下一代USB接口的研发工作,称之为“USB Type-C”。USB接口标准规范已经发展了很多代,目前最常见的当然还是USB 2.0,正在全面普及的是USB 3.0,还有已经搞定但尚未有产品的USB 3.1(带宽翻番至10Gbps),不过标准再多,每一代都可以分为Type-A、Type-B两种类型,并各自衍生出了Mini、Micro两种微型版本。 标准的Type-A是应用最广泛的,Micro-B则是智能手机和平板机目前的标配。 USB Type-C新接口本质上基于USB 3.1、USB 2.0标准规范,官方称“主要面向更轻薄、更纤细的设备,增强可用性,并为未来USB版本的性能增强铺好路”
[手机便携]
数字融合时代下的FPGA前景
3 月份的电子圈,国际集成电路展( IIC )是个常规性的热点。尽管比不上消费电子展那么万众瞩目,但是对于一向低调的半导体产业来说,这是行业公认的活动盛典。因此,各个领域内的领军厂商都会重装上阵,实施这一年度形象工程。 然而,今年你在 IIC 上看不到赛灵思的影子 —— 尽管 Altera 如约出现在 IIC 上。此次,赛灵思选择自搭戏台,以鲜明的主题、唯一的主角吸引那些最想吸引的观众:到会的观众都是冲着赛灵思(至少也是冲着 FPGA )来的。不过,这场好戏并非独角戏,这一名为 “2008 可编程解决方案中国巡演 ” 的活动,联合了赛灵思的合作伙伴:作为分销商和代理的安富利、世健、好利顺,作为软件工
[焦点新闻]
一种基于APA300的创新型FPGA实验板设计
  摘 要: 基于Actel公司Flash型FPGA芯片APA300设计并实现一款创新型FPGA实验板。该实验板包括2片互通的APA300、丰富的外围设备和常用外部设备端口,还提供与外部电路连接的扩展接口,能够开展多种创新性实验,并可作为科学预研的平台。在详细介绍了实验板各部分的实现原理和电路连接图后,给出了实验板的两个典型创新性实验示例:协处理器密码机和MP3播放器。   21世纪的教育是开放、创新的教育,其主要目标是培养具有创新能力的高素质人才。因此,创新是教育、尤其是高等教育的灵魂。然而由于现有FPGA实验平台大多功能固定、可扩展性差、便携性差,不方便学生进行自主设计、自我创新。本文基于APA300设计并实现了一款成本低、
[嵌入式]
一种基于APA300的创新型<font color='red'>FPGA</font>实验板设计
基于FPGA的UPFC控制器IP设计
0 引言 统一潮流控制器(Unified Power Flow Con-troller,简称UPFC)是一种可以较大范围地控制电流使之按指定路经流动的设备,它可在保证输电线输送容量接近热稳定极限的同时又不至于过负荷。控制系统是UPFC的核心部分,它的主要功能是监测交流电网的传输和控制输出逆变波形,不但能使输出波形的频率跟定电网频率,而且可对输出波形的幅值和相位进行调节。 随着微电子技术的不断发展,各种新器件和新的设计方法不断出现,使得UPFC的控制系统设计也在不断发展。近年来,随着IC集成度的不断提高而出现的现场可编程逻辑阵列(FieldProgrammable Gate Array,简称FPGA)就是由可编程逻辑器件PLD(
[应用]
Diodes 推出新一代 USB Type-C™ 电力传输 (PD) 控制器
Diodes 公司 (Nasdaq:DIOD) 宣布推出 AP43770 USB Type-C™ 电力传输 (PD) 控制器,用于透过固定与便携设备以及脱机式变压器中的 USB 实现电力传输,是一项高度整合解决方案。AP43770 非常适合实现 USB PD 的各种产品应用,包括 AC 变压器、电源集线器、电池组与 USB PD 转换器;其嵌入式微控制器的韧体符合最新 USB Type-C 技术规范和 USB PD 标准 3.0 V1.1 版。AP43770 支持 Qualcomm® Quick Charge™ (QC) 4/4+ 技术,还可以自动侦测 QC3.0、QC2.0、电池充电 (BC) 标准 1.2 版及其他旧版通讯协议
[电源管理]
Diodes 推出新一代 <font color='red'>USB</font> Type-C™ 电力传输 (PD) 控制器
是德科技推出增强型FFT应用的 12 位PCIe® 高速数据采集卡
新闻要点: 新的快速傅立叶变换(FFT)应用选件现已在 12 位PCIe 高速数据采集卡上提供 高度完善的定点算法,可减少恶化效应 目标应用面向天文学、物理学和环境测量应用 2016 年 4 月 29 日,北京 是德科技公司(NYSE:KEYS)日前推出经过增强的 FFT 选件版本,现已在 U5303A PCIe 12 位高速数据采集卡上提供。这个板卡拥有两个通道和从 1 GS/s 到 3.2 GS/s 的采样率。 此卡专为需要进行频域信号处理的天文学、物理学应用和环境测量而设计,使测试人员能够观察到以前的仪器无法观测到的现象,无论是线性度、动态范围还是无杂散动态范围(SFDR)测量都得到了显著改善。此选
[测试测量]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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