为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

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

2011-09-08 4页 pdf 330KB 35阅读

用户头像

is_217606

暂无简介

举报
NiosII和USB接口的高速数据采集卡设计 llll 'l一 _ l _|ll__ 。 ll 0≥ 熬 N i os l l和 U S B接口的高速数据采集卡设计 ■ 四川I大学 杜 改 丽 封 治 华 王 勇 介绍一种基于USB2.0接 口和 FPGA的高精度实时采样的高速数据采集卡的设计;详细介绍系统硬件设 摘 要 计、固件设计、基于Windows驱动程序模型(WDM)的设备驱动程序设计以及用户软件的设计。通过试 验证明,其具有很好的可靠性和稳定性,具有很强的实用价值。 关键词 USB2.0 NiosII 固件 高速数据采集 CY7C68...
NiosII和USB接口的高速数据采集卡设计
llll 'l一 _ l _|ll__ 。 ll 0≥ 熬 N i os l l和 U S B接口的高速数据采集卡设计 ■ 四川I大学 杜 改 丽 封 治 华 王 勇 介绍一种基于USB2.0接 口和 FPGA的高精度实时采样的高速数据采集卡的设计;详细介绍系统硬件设 摘 要 计、固件设计、基于Windows驱动程序模型(WDM)的设备驱动程序设计以及用户软件的设计。通过试 验,其具有很好的可靠性和稳定性,具有很强的实用价值。 关键词 USB2.0 NiosII 固件 高速数据采集 CY7C68013 引 言 随着现代工业生产和科学研究对数据采集的要求 日 益提高,在瞬态信号测量、图像信号处理等一些高速、高精 度的测量中,都迫切需要进行高速数据采集(如雷达信号 、超音波信号分析);而进行数字处理的先决条件是将 所研究的对象数字化,因此数据采集与处理技术日益得到 重视。在图像信号处理、瞬态信号检测、工业过程检测和 监控等领域,更是要求高速度、高精度、高实时性的数据采 集与处理技术。现在的高速数据采集处理卡一般采用高 性能数字信号处理器(DSP)和高速总线技术的框架结构。 DSP用于完成计算量巨大的实时处理算法,高速总线技术 则完成处理结果或者采样数据的快速传输。DSP主要采 用 TI和 ADI公司的产品,高速总线可以采用 ISA、PCI、 USB等总线技术 。其中PCI卡或 ISA卡安装麻烦,价格 昂贵,受计算机插槽数量、地址、中断资源的限制,可扩展 性差,在一些电磁干扰性强的测试现场,无法专门对其做 电磁屏蔽,易导致采集的数据失真。通用串行总线 USB 是为解决传统总线不足而推广的一种新型的通信。 该总线接口具有安装方便、高带宽、易于扩展等优点 ,已逐 渐成为现代数据发展趋势。基于 USB的高速数据采集卡 充分利用 USB总线的上述优点,有效地克服了传统高速 数据采集卡的缺陷。 1 系统硬件设计 本系统主要是基于 USB2.0的 Slave FIFO模式,在 FPGA控制下完成双通道、不同速率的数据 的采集和发 送 ,全兼容 USB2.0总线接口标准 ,其数据的采样率可高 达 65 Msps;适用于较高速动态信号的实时记录采集,其 硬件系统总体结构框图如图 1所示。 该系统主要由信号调理模块、A/D转换模块、触发模 块、基于 FPGA的主控模块、USB收发控制模块、片外存 储器及其他辅助电路组成。调理电路与 A/D转换器,将 传感器采集 的模拟信 号进行相关 的信号调理 后送入 AD9244芯片转换为数字信号。处理后的数据送往 FPGA 主控模块,根据相关的控制信息,选择通过直接传输给上 位机,或者先存储在外部 SDRAM,然后经过相关的数字 处理后再传输给上位机。 2 系统模块介绍 2.1 USB2.0专用微处理器 CY7068013A CY7C68013A是 Cypress Semiconductor公司生产的 一 款集成 USB2.0的微处理器。它有 3种封装形式—— 56SSOP、1O0TQFP和 128TQFP,其结构框图如图2所示 。 CY7C68013集 成了 USB2.0收发器、SIE、增强 的 8051微控制器和可编程的外围接 口部件。其 SIE可在全 速(12 Mb/s)和高速(480 Mb/s)两种模式下运行 ,同样可 以使用内部 RAM 来进行程序和数据的存储。GPIF和 Master/Slave端 口 FIFO 为 ATA、UT0HA、EPP、PCM— CIA和 DSP等提供了简单和无需附加逻辑的连接接 口。 其编程可以根据设计的需要进行,不需要 CPU的干预,只 信号 一 D转换模块L.- FPGA I PC -调理 l’ (Cycloneti l 模块 触 EP2C8Q208C8) Y,c 。 一 传输模式选择模块 数据处理模式 信号 采样频率产生模块 控制模块 调理 1 加转换模块}.. 模块 图 1 硬 件系统总体 结构框 图 99 牵 扭上 入 j:鑫O刍踊 A^v nPt mm n(广.告专用、 维普资讯 http://www.cqvip.com 集成 全速 高速 收发 图 2 CY7C68013微处理器 结构框 图 需通 过 CPU 的 一 些 标 志 和 中 断 即 可 进 行 通 信。 CY7C68O13共 有 7个 输 入 输 出 端 口:EP0、EP1OUT、 EP1IN、EP2、EP4、EP6、EP8,其 中 EP2、EP4、EP6、EP8可 以分别被配置为批量/中断/同步传输模式,传输方向均可 配置为 I/O,端 口 EP2、EP6的缓冲区大小可编程为 512 或 1 024字节,深度 可编程为 2/3/4倍大小;端 口 EP4、 EP8的缓冲区大小固定为 512字节,深度为 2倍,采用不 同的配置方式 ,可实现 特定 带宽和速率要求 的数据传输 。 2.2 主控电路 FPGA芯片 EP2C8Q208 EP2C8Q208主控电路如图 3所示。 FPGA芯片也是一种 特殊 的 ASIC芯 片,属于可编程逻 辑器件,它是在 PAL、 GAL等逻辑器件 的基础上发展起来 的。 同以往的 PAL、GAI 等相比,FPGA规模 比较大,适合于时序、组 合等逻辑电路应 用 。本文选 用 Altera公 司 的 FPGA 芯片 EP2C8Q208,完成数 据采集 卡 的时序 和地 址译 码电路 设计 。由于 EP2C8Q208有 36 个 M4K RAM,在 FPGA内部设计一个 l6 位宽度、4 KB深度的 FIFO,使用 FIFO提 高数据采集卡对多通道信号的采集存储能力。FIFO有半 满、全满、空标志位,当检测到半满标志位时,FIFO同时读 写;全满时只读不写;空时只写不读。A/D采样控制信号 通过 FPGA控制;PC机对采集后的数据作进一步处理, 以提高精度,其中2选 1模块,由主控制模块来控制,选择 是直接将采集数据送给 PC机处理,还是在 内部进行 DSP 处理后再送给 PC机 。 图 3 EP2C8Q208主控 电路 由于 Nios是一 个位 于 FPGA 中的处理 器软 核 ,定 制 其外设就显得比较容易,在 SOPC Builder(集成到 Quartus II工具中的为建立 SOPC系统设计,提供标准化的图形设 计环境。其由CPU、存储器接 口、标准外围设备和用户 自 定义的外围设备组成)环境下,其定制逻辑的结构框图如 图 4所示 。 自定制的 Avalon外设按照对总线操作的方式 可分 —+ FIFO I- —一cY s。 MUX2/1 f F O SOghU~ - .一SD f l f I — I 主控单元 paper@mesnet.corn.cn(投稿专用) Micr。c。ntr。1iers&Embedded Systems 2 3 维普资讯 http://www.cqvip.com 为:Avalon Slave外设和 Avalon Streaming Slave(流模式) 外设 。在 SOPC Builder图形 设计 界 面 下 添加 需 要 的 内 核。通过 自动分配系统基地址和系统中断向量,手动分配 CPU复位地址为外设 Flash、CPU溢出地址为片上 RAM 和 CPU调试断点地址为 JTAG调试地址,就可 由系统报 告得知系统是否定制成功,如图 5所示。 dB,增益为 1),可以将单端输入变成差分输出。A/D转换 的触发则由信号放大芯片 AD811采集信号和 D/A转换 芯片信号进行比较,当有效时,发出 ADn—TRIG信号,其 中 D/A转换芯片的输入标准信号(数字输入端)由FPGA 来提供。当ADn_TRIG有效时,FPGA向AD9244发出控 制命令 (DIN、FORMAT、MODE、SCLK、SYNC、FSYNC 图 5 Nios内核定制结构 图 2.3 ADC芯片及外围电路设计 ADC外围电路框图如图6所示。 模拟 输入 信号放大 AD8l1 档速变换 AGQ200A4H 信号补偿及 差分变换输出 AD8138 USB68013 DDS9859 比较电平 触发AfD L] 65l1 D/A变换 AD53O4ARM 二二=I=二 FPGA EP2C8 A,D变换输出L一 盖 AD9244 l 图 6 ADC外围电路框 图 信号调理部分选用高精度、低噪声、低输入偏置电流、 宽带运算场效应放大器 AD8¨ 进行信号的放大。模拟信 号处理是影响系统性能的重要因素之一,设计时必须考 虑两个方面:一是要保证信号质量 ,提高信噪比,尽量减 少畸变;二是将信号变换成适合 A/D处理的幅度并提供 足够的驱动能力。这里选用 ADI公司的宽带运放 AD8¨ 为放大器。AD811是一种电流反馈型的放大器 ,它具有 10 MHz的低失真和单位增益带宽很宽的特点,使 AD8¨ 成为理想的高分辨率 ADC缓冲器。之后针对信号进行档 速变换。档速变换选用 ADG系列产品。本设计选用 的 是一款四路独立选择的单片 CMOS开关芯片,其设计基 于增强的 lc2mos进程、可以提供低功耗、高转换速度和低 阻抗性,当信号满足 A/D变换的要求后,根据采集要求将 其由单 端 输 入 变 换 为 差 分 的双 端 输 出,芯 片选 用 AD8138。AD8138具有较宽的模拟带宽(320 MHz,一3 信号),启动 A/D转换。 A/D转换器 的精密 时钟 由 DDS电路 AD9859YSV提供。 3 软件设计及实现 系统软件设计包括 3部分:固件程序、 USB设备驱动程序和应用程序。整个软件 实现的功能包括系统初始化、采样控制、数 据传输和波形显示。 3.1 固件程序设计 固件程序辅助硬件实现设备双 向交换 数据 ,以完成 USB通信 ,其主要功能是 :接收 并处理 USB驱动程序的请求及应用程序的控制指令,控 制 A/D转换器的采样 。当首次插入 USB时,FX2通过 USB电缆会 自动枚举且下载固件和 USB描述符表;接下 来,FX2再次枚举,这次主要通过下载的信息来定义设备。 这两个步骤叫作重枚举。固件程序流程如图 7所示。初 始化包含各个初值的设 置 和关键点的电平检测。 在 Cypress公 司 的网站 ‘、http:f f .Cypress.corn) 上,可 下载 CY7C68O13芯 片 的开发工具包。该开发包 提供了一些开发固件程序 所需的资源 :Keil uVision2 集成开发 环境 (限制 版)、 Cypress C51固件框架程序 以及一些 例子程 序。Keil C51是一种专为 8O51单片 机设计的高效率 C语 言编 图7 主程序流程 译器,符合 ANSI标准,生成的程序代码运行速度极高,所 需要的存储空间极小 ,完全可与汇编语言相媲美。同时, c51具有丰富的库函数,多达 100多种功能瓯数。因此, 采用 C语言作为开发语言,以 Keil uVision2作为开 发平台,完成源代码的编写、仿真、调试,将在相当程度上 降低固件开发难度 ,提高开发效率。 3.2 USB设备驱动设计 USB设备驱动程序的设计是基于wDM( r1dOws- 4 《聋‘; 蕞入矗:禾 刍阚 ⋯A ⋯ n4t⋯ n r广.县击田、 维普资讯 http://www.cqvip.com 所示。表 1给出了状态字的定义。 表 1 状态字定义 状态字 有来电信号 摘机信号 说 明 O O O 有来电 、挂机状态 l l O 无来 电、挂机状态 2 O l 有来电、摘机状态 3 l l 无来 电、摘机状态 爱蕾臻鬣 甏臻穗琵 々 一强溪镳强甏毪 |嚣 | l 彝蕊l罄慧曩秀 譬 5 结 论 信息电话 USB接 口设计,是来电显示电话与计算机 的接口和相关的数据采集系统 ,是运用接 El技术、计算机 软件技术实现来电号码等相关信息在计算机上的显示或 存储,并可以根据基本信息进行来电号码的分类统计。这 些数据对相关部门服务质量和效率的提高将起到重要的 作用,同时还可以为相关决策部门及时提供参考信息。 本装置完成数据采集和数据传送,而且通过软件接 El 完成对相关数据 的分离 。详细地研 究了来 电显示技术 ,单 片机程序编制和使用 VC++编写 DI I 。本装置不但可以 嵌入到电话内,还可以作为单一的模块来使用,所以该系 统有广泛的实用价值。_E 参考文献 [1]常波.朱全银.来电显示电话机 USB接 口数据采集与处理 [J].陕西理工学院学报,2007,23(3):l1—14. [2]王辛之 ,钟 爱琴 ,王雷 ,等.AT89系列单 片机 原理 与接 口技 术[M].北京:北京航空航天大学出版社,2004. [3]尹勇 ,王洪成.单片机开发环境 FVision2使用指南及 USB固 件编程与调试[M].北京 :北京航空航天大学 出版社,2004. [4]陈启美,丁传锁.计算机 USB接口技术[M].南京:南京大学 出版社 ,2003. [5]马伟.计算机 USB系统原理及其主/从机设计[M].北京:北 京航空航天大学 出版社 ,2004. [6]Gary Legg.Usb Goes Wireless[OL].http://www.teehon— line.com/community/tech—topic/B1uetooth/37308,2004. [7]Bellcore Caller ID specification[0L].http://www.epanora— ma.net,1991. [8]如何用单片机实现 FSK来 电显示解码[0L].http://www. softexam.cn/tech/catasecond.asp?catalogf=4~catalogs=15. 1皋垒银t 教颦b’圭受珂}莞舞氟兔挂| 擞苯碍}免与I蕊憩 筵 雏 鍪 强|I |餮疆蘸 蠹 警 ||鬟誊镊|一 ≮收藕 镣 霉鸹 篱j D Driver Model,驱动程序模型)的。WDM采用分层 驱动程序模型,分为较高级的 USB设备驱动程序和较低 级的 USB函数层。其中USB函数层由两部分组成:较高 级的通用串行总线模块(US—BD)和较低级的主控制器驱 动程序模块(HCD)。 本设 计用 WinDK3.0开 发 了 Win2000下 的驱 动 程 序,实现了控制传输、中断传输和批传输的标准接口函数。 在应用程序开发中,可用 VC++编制应用程序。把 USB 设备当成文件来操作,用 Create—File得到 USB句柄.用 DeviceloControl来进行控制传输,用 ReadFile、WriteFile 进行批量传输。 3.3 应用程序设计 应用程序流程如图 8所示。用户应用程序是数据采集 图 8 应 用程序流程 系统的核心,其主要功能为:开启或关闭 USB设备、检测 USB设备、设置 USB数据传输管道、设置 A/D状态和数据 采集端 口、实时从 USB接口采集数据 、显示并分析数据 。 4 结 论 用 FPGA作为采集处理部分 .可 以提高 系统 处理的速 度,大大增强系统的灵活性和适应性。FPGA技术和 USB的 组合,使得数据处理能力得到了极大的提高,且有利于系统 升级。USB芯片采用了Cpyress公司的高性能 USB2.0芯片 CY7C68013,可以完全胜任大数据量的传送。该实例还可应 用于实时数据采集、音频及压缩视频数据传输等领域。●E 参考文献 [1]任爱锋 ,初 秀琴 ,常存 .等.基 于 FPGA的嵌 入式 系统 设计 [M].西安:西安电子科技大学出版社,2004:68—70. E2]钱峰.EZUSB FX2单片机原理、编程及应用[M].北京:北京 航空航天大学 出版社 ,2006:54—156. [3]李淑博,田书林.基于 USB接I:1的高速数据采集系统设计 [J].自动化信息.2006(11);36—38. [4]戴小俊,丁铁夫.郑喜风.基于 USB和 DSP的数据采集系统 的设计[J].电子技术应用.2007(1):84—86. [5]王宏 ,许丙南 ,杨铁牛 ,等.基 于 EZ—USB FX的多路同步数 采固件设计[J].微计算机信息,2006(12):126—128. 9R 互 j喜 :奈0 刍厢 a v npt nm nf广告专用、 维普资讯 http://www.cqvip.com
/
本文档为【NiosII和USB接口的高速数据采集卡设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索