基于ARM和FPGA的高速数据采集卡的设计与实现 (1)
基于ARM+FPGA的实用高精度数据采集器设计

基于ARM+FPGA的实用高精度数据采集器设计本文主要介绍基于ARM+FPGA的高精度数据采集器设计,该设计的特点是利用FPGA控制数据的高速采集,同时采用ARM对外围电路进行控制和数据处理,并实现在液晶屏上的频谱显示。
该设计利用FPGA实现高精度数据采集控制,利用ARM实现光标跟踪、D/A变换及显示等重要指标,并且提供了良好的人机交互界面,其设计方法具有较高的实际应用价值。
文章重点论述了基于ARM+FPGA的实用高精度数据采集器的总体设计、硬件设计和软件设计。
标签:ARM;FPGA;高精度;数据采集;系统引言在科技快速发展的今天,数据采集的重要性是十分显著的,其应用范围越来越广泛,尤其是在工业领域,数据采集的精度和处理的实时性要求逐渐提高,传统的数据采集系统通常采用A/D芯片和主控芯片搭配的手段,该方法功能单一,处理效率低下,如果遇到被测的对象比较复杂并且数据量比较大时,无法满足对数据高精度的要求。
基于ARM+FPGA的高精度数据采集系统能够有效的避免上述问题,ARM作为主控芯片,对整个系统进行控制,并将数据通过USB高速的上传到上位机中,能够借助上位机的强大的运算能力,对数据处理的实时性进行确保,同时能够简便的形成一个用户自定义的数据采集系统,具有良好的通用性;而FPGA能够对数据采样的高精度和高效率进行保证。
本文主要论述基于ARM+FPGA的高精度数据采集器设计相关内容。
1系统总体设计及基本工作原理1.1系统组成高精度数据采集器主要架构由ARM(+DA)+FPGA(+AD)组成。
本系统主要由三个独立的模块组成。
第一部分是数据采集模块,主要完成信号的采集、调理和A/D转换,然后采用并行方式送给处理器;第二部分是处理器模块,接收数据采集模块发送过来的数字信号、处理后显示,并且将处理完的信号送给D/A转换模块;第三部分是D/A转换模块,把数字频谱信号还原并通过示波器显示。
1.2 系统基本工作原理系统工作时,数据采集器置于被监控的设备处,通过传感器对设备的电压或者电流信号进行采样、保持,并送入A/D转换器变成数字信号,然后将该信号送到FPGA内的FIFO中。
FPGA内嵌ARM架构的高速数据采集系统设计

F PG A 内嵌A R M架构的高速数据采集系统设计*李昱燃,杨军,任志国(中国航天系统科学与工程研究院,北京100048)*基金项目:装备发展部预研领域基金项目(61405540104)㊂摘要:针对电磁监测环境的复杂应用背景,将F P G A 内嵌A R M 架构应用于最新的Z y n q 7000平台,结合动态性能优越的模/数转换芯片A D 9371,使用软硬件协同设计的设计理念,从开发过程中的各模块硬件电路搭建方面,以及关键技术A D 9371寄存器配置设计㊁系统I P 核设计方面对高速数据采集系统的设计过程进行全方位描述㊂通过测试,该系统在数据高速采集㊁高速缓存㊁输出各模块都能满足设计需求㊂关键词:高速数据采集;Z y n q 7000;A D 9371;I P 核中图分类号:T P 368 文献标识码:AD e s i g n o f H i g h -s p e e d D a t a A c q u i s i t i o n S ys t e m B a s e d o n F P G A E m b e d d e d A R M A r c h i t e c t u r e L i Y u r a n ,Y a n g J u n ,R e n Z h i gu o (C h i n a A e r o s p a c e A c a d e m y o f S y s t e m s S c i e n c e a n d E n g i n e e r i n g ,B e i j i n g 100048,C h i n a )A b s t r a c t :F o r t h e c o m p l e x a p p l i c a t i o n b a c k g r o u n d o f t h e e l e c t r o m a g n e t i c m o n i t o r i n g e n v i r o n m e n t ,t h e d e s i g n m e t h o d o f t h e s ys t e m u s e s F P G A e m b e d d e d A RM a r c h i t e c t u r e ,w h i c h i s a p p l i e d t o t h e l a t e s t Z y n q -7000p l a t f o r m ,c o m b i n e d w i t h A D 9371.I t h a s e x c e l l e n t d yn a m i c p e r f o r m a n c e a n a l o g -t o -d i g i t a l c o n v e r s i o n c h i p ,u s i n g t h e d e s i g n c o n c e p t o f s o f t w a r e a n d h a r d w a r e c o l l a b o r a t i v e d e s i g n .F r o m t h e a s p e c t o f h a r d w a r e c i r c u i t c o n s t r u c t i o n o f e a c h m o d u l e i n t h e d e v e l o p m e n t p r o c e s s ,a s w e l l a s t h e k e y t e c h n o l o g y A D 9371r e g i s t e r c o n f i gu r a t i o n d e -s i g n a n d s y s t e m I P c o r e d e s i g n ,t h e d e s i g n p r o c e s s o f h i g h -s p e e d d a t a a c q u i s i t i o n s y s t e m i s d e s c r i b e d i n a l l a s p e c t s .T h r o u g h t e s t i n g,t h e s y s t e m c a n m e e t t h e d e s i g n r e q u i r e m e n t s i n h i g h -s p e e d d a t a a c q u i s i t i o n ,c a c h e ,a n d o u t pu t m o d u l e s .K e y wo r d s :h i g h -s p e e d d a t a a c q u i s i t i o n ;Z y n q -7000;A D 9371;I P c o r e 引 言随着计算机的高速发展,信息更多地通过数字化形式进行传播,而数据采集系统作为信息数字化处理的关键部分,是各个领域尤其国防设备中必不可少的一环,是雷达㊁导弹等的必要部分[1],正在朝着速度更快㊁精度更高㊁实时性更强的方向不断发展㊂通过对国内外研究现状的总结分析,根据架构方式可将高速数据采集方法主要分为以下几种:基于F P G A 的高速数据采集[2-4];基于D S P 系统的高速数据采集[5-6];基于嵌入式系统的高速数据采集[7-8]㊂F P G A 架构应用较多,主要用于查找表结构,实现过程主要是S R AM ,它的优点是快速的数据处理和灵活的编程,但是该系统的决策能力较弱㊂D S P 架构现在应用较少,主要用于视频处理等领域,它的优势是具有强大的数据处理能力,但是除此以外其他功能很弱㊂A R M 在工业控制等领域具有广泛的应用,擅长系统决策控制,但数据处理能力较弱㊂1 系统设计本课题的具体应用背景为电磁监测环境,根据实际设计需求,现提出该系统的性能指标如下:接收通道数为2,采样率大于等于300M s ps ,采样位数大于等于10位,缓存容量大于等于1000M B ㊂在电磁监测环境下实现数据的高速采集难度较高,受自然环境㊁装备干扰以及功耗的影响,多数在此环境下实现的数据采集系统采样率一般在100M s p s 左右,传输的频率范围较窄,想突破此瓶颈有所难度㊂为了实现以上指标,提升高速数据采集系统在电磁监测环境下的性能,对比几种架构方法发现,传统架构方法均有所弊端,不能较好满足性能指标需求㊂相比之下,新型的F P G A 内嵌A R M 架构,将具有软件可编程能力的A R M 和硬件可编程能力的F P G A 集成在一块芯片上,同时此架构中F P G A 和A R M 可选择通过高达100G b ps 的内部高速总线A X I 通信,具有更高的系统通信可靠性,能够更加有效解决嵌入式系统中数据传输的问题㊂在功耗方面,实现此架构的平台采用28n m 的制造工艺进行集成,使整个芯片的设计都达到低功耗,相较于多芯片的系统方案,该架构在成本㊁通信设计和扩展性上更具有优势[11],将在电磁监测环境中发挥更大的作用㊂1.1 系统整体架构该系统主要包含A /D 采集模块㊁信号处理模块以及一些外设接口模块㊂整体架构如图1所示㊂图1 系统整体架构图该系统所实现的高速数据采集方式如下:模拟信号通过A D 9371模数转换器进行采样,转换成数字信号,通过信号处理模块F P G A (P L )部分的控制,将数据存入D D R 3高速存储器中,双核A R M C o r t e x A 9处理器(P S )通过D D R 3存储器完成配置命令下发以及从存储器中读取采集数据,并完成串口㊁U S B 接口等外设接口的通信与控制㊂信号处理模块的控制器F P G A 的程序模块分别通过R S 232接口芯片实现电平转换,完成对显示屏的显示控制;通过F P G A的引脚实现按键的输入检测与指示灯的控制㊂1.2 A /D 采集模块电路设计A /D 采集模块完成射频模拟信号的接收㊁发送,信号的变频㊁滤波与模/数转换处理㊂根据设计指标要求,最终选择A D I 公司的A D 9371芯片作为核心芯片,搭建完整的电路㊂A D 9371是一款高度集成的R F 收发芯片,具有强大的功能㊂工作频率范围为300MH z ~6G H z,在数据传输方面,能够实现两收两发,还包括两个输入的反馈通道以及三个输入的侦听通道,能够适应数字校正算法,通过芯片集成技术,几乎所有R F 采集模块的组件都集成在一个芯片上,简化了硬件设计,降低了系统的功耗㊂用户可以通过下式配置A D 9371的采样率:L a n e R a t e =I Q S a m pl e R a t e ˑMˑ16b i t s ˑ108ːL (1) 通道速率最高可设置为6144M b ps ,可以达到最高采样率1536MH z ㊂A D 9371的精度为12位,可知采样率及采样位数均可满足设计需求指标㊂A D 9371子板的模拟信号端为差分输入与输出,通过B A L U N 实现射频信号的单端与差分变换,实现射频信号对外的单端模拟传输㊂2路接收为同本振,内置三个小数N 分频,用于产生发生器㊁接收器和观察接收器使用的R FL O ㊂A D 9371的数据接口为J E S D 204B 串行接口,该接口需要时钟㊁同步信号和数据信号,所有信号均为L V D S 类型,为了保证J E S D 204B 的高速串行数据传输,在进行P C B 布局布线时需特别考虑注意阻抗匹配㊁等长与屏蔽隔离等处理,设计原理图如图2所示㊂图2 J E S D 204B 接口电路原理图1.3 信号处理模块电路设计1.3.1 模块架构信号处理模块为整个系统的核心控制与处理部分,完成数字信号处理与通信接口的处理等功能㊂为实现F P -G A 内嵌A R M 架构,选择X i l i n x 公司的全可编程器件Z Y N Q 7000系列的Z C 706芯片作为核心主控芯片,完成信号处理模块主板的设计㊂X i l i n x Z y n q 7000系列芯片,将主频高达1G H z 的A R M C o r t e x A 9双核处理器与低功耗F P G A 密切集成在一起,在A R M 处理器和F P G A 之间采用A X I 4通信总线形成高带宽,获得更大数据吞吐能力[11]㊂其中F P G A (P L )端带有D D R 控制器硬核,支持1G B 多种数据位的地址宽度;而A R M (P S )端包括64位的数据通道,最高支持1066M T /s 的速度,适用于做系统的图4 A D 9528时钟电路原理图高速存储㊂信号处理主板主要由核心主控芯片㊁P S 外围电路㊁P L 外围电路㊁时钟系统与电源系统等部分组成㊂具体原理框图如图3所示㊂1.3.2 时钟系统设计整个系统时钟信号工作流程如下:10MH z 信号可通过模拟开关选择内部10MH z 参考时钟(印制板上晶体或者印制板板外晶振产生)或者外部10MH z 参考输入时钟信号;信号通过模拟分路器后分成5路信号分别到10M参考出㊁10M 预留内参考㊁F P G A 预留10M 参考和A D 9528(J E S D 204B 时钟发生器)10M 参考入;A D 9528通过片上鉴相器完成10MH z 参考信号或者30.72MH z 参考信号与100MH z 时钟输出信号的同相处理后,输出7路125MH z(可自定义配置)信号分别到F P G A 的G T X 预留输入时钟㊁F M C L P C 参考时钟㊁F P G A 的J E S D 204B 接口时钟㊁A D 9371的器件时钟㊁通过S MA 接口到子板A D 9371的预留器件时钟㊁F P G A 预留输入时钟和子板A D 9371的J E S D 204B 接口时钟,并且输出100MH z 时钟的相噪与100MH z 时钟芯片相关㊂主要电路图如图4所示㊂在信号处理主板上设计两个可编程的用户时钟,分别是U 34和U 35,可通过I 2C 接口对时钟进行配置,实现10~810MH z 频率的变化,起始默认频率为156.25MH z㊂1.3.3 电源系统设计整机电源采用A C D C 电源模图3 信号处理主板原理框图块,220V A C 交流输入,12V 直流输出,为信号处理主板提供工作电源,A D 9371的设备供电需要3.3V ㊁1.8V 和1.3V ,通过多路输出的D C D C 电源模块A D P 5054将来自信号处理主板的12V 进行变换后实现,印制板上采用足够的去耦电容,以保证A D 9371的供电电源纹波性能,部分硬件电路图如图5所示㊂图5 电源系统部分电路原理图2 系统软件平台设计实现本设计主要程序在Z y n q 7000控制单元上实现,并使用X i l i n x 提供的V i v a d o 开发套件进行开发㊂开发套件由两部分组成:①V i v a d o 主环境,主要完成P L 设计即I P 核设计㊂②S D K 软件辅助环境,主要完成P S 层的设计㊁整个控制线程和调试程序,包括A D 9371寄存器配置文件㊂2.1 P L 软件架构设计基带部分I P 核的设计P L 层方面,首先该系统在V i v a d o 中完成最重要的B l o c k D e s i g n 设计:完成Z y n q 相关参数的配置以及基带部分I P 核的设计,在本设计中,硬件逻辑系统主要I P 包括:①用户I P (自己创建的I P ),如a x i _a d 9371_v 1_0㊁a x i_a d x c v r _v 1_0㊁a x i _c l k ge n _v 1_0㊁a x i _d a cf i f o _v 1_0㊁A D I J E S D 204B R e c e i v e A X I I n t e r f a c e ㊁A D I J E S D 204B R e c e i v e等㊂②X i l i n x 官方提供的I P(通过设置即可实现功能),如Z Y N Q 7P r o c e s s i n g S y s t e m ㊁P r o c e s s o r S ys t e m R e s e t ㊁A X I I n t e r c o n n e c t ㊁A X I I I C ㊁M e m o r y I n t e r f a c e G e n e r a t o r 等㊂其中a x i _a d 9371I P 核设计过程如下:调用a x i _a d 9371I P核,并对a x i _a d 9371.v 文件进行以下程序修改:删除文件中的第41~43行语句:P a r a m e t e r D A C _D D S _T Y P E =1,P a r a m e t e r D A C _D D S _C O R D I C _DW=20,P a r a m e t e r D A C _D D S _C O R D I C _P HA S E _DW=18依次在文件第84行㊁第93行㊁第107行添加一行代码语句,如下:84 i n pu t a d c _d u n f ,93 i n p u t a d c _o s _d u n f ,107 i n pu t d a c _d o v f ,完成修改后,进行保存,并通过 A d d S o u r c e s命令,依次添加以下文件,根据程序实现相对应功能:①接口模块a x i _a d 9371_i f .v ,实现J E S D 20B 接口的应用层,该接口连接到J E S D 204B I P 内核㊂②接收模块a x i _a d 9371_r x .v,其中包含A D C 通道处理模块a x i _a d 9371_r x _c h a n n e l .v,每个通道一个(接收路径支持4个通道);数据处理模块(直流滤波器a d _d c f i l t e r .v ,I Q 校正a d _i qc o r .v 和数据格式控制ad _d a t a f m t .v );A D C 通道寄存器映射u p_a d c _c h a n n e l .v ;A D C 公共寄存器映射u p _a d c _c o m m o n .v ㊂依次完成系统所有I P 核的设计,添加到工程中,进行布局与互连后,搭建成一个完整的逻辑系统㊂接下来用此环境完成与开发板的物理引脚相对应的引脚约束:创建X D C 文件将串口引脚分配到对应的开发板引脚上,最终完成B I T 流文件㊂2.2 P S 软件架构设计A D 9371寄存器配置P L 设计结束后将进入P S 的设计㊂A D 9371与一般的A D I 芯片有所不同,一般的芯片根据寄存器配置表,通过对每个地址的选择赋值即可实现寄存器的配置㊂而A D 9371作为高级芯片,寄存器数量过多,近上千个,无法直接通过选址赋值进行配置㊂而是通过调用A P I 函数,在P S 上实现寄存器的配置选择,主要在S D K 软件上实现㊂软件架构如图6所示㊂本次设计选择S P I 接口协议对A D 9371芯片的寄存器进行控制和配置操作㊂串行外设接口(S P I)总线为基带处理器(B B P )的A D 9371提供全数字控制机制㊂每个S P I 寄存器为8位宽,每个寄存器包含控制位㊁状态监视器或控制器件所有功能的其他设置㊂使用A P I 功能的S P I 配置:S P I 总线由M Y K O N O S _s e t S p i S e t t i n g (m yk o n o s D e v i c e _t *d e v i c e)功能配置㊂在本设计中通过使用以下参数调用M Y K O N O S _s e t S p i S e t t i n gs 函数来为设备配置S P I 设置,各参数具体配置如下:MY K O N O S _s e t S p i S e t t i n g s (d e v i c e->s p i S e t t i n gs->f o u r -W i r e M o d e =1); //将S P I 用作四线接口MY K O N O S _s e t S p i S e t t i n g s (d e v i c e ->s p i S e t t i n g s ->M S B F i r s t =1);//在M S B 优先模式下选用S P IMY K O N O S _s e t S p i S e t t i n g s (d e v i c e ->s p i S e t t i n gs ->a u t o I n -c A d d r U p =0);//地址指针自动递减MY K O N O S _s e t S p i S e t t i n g s (d e v i c e ->s p i S e t t i n g s ->e n S pi S t -r e a m i n g=1);//启用S P I 流模式图6 A P I 软件架构图图7㊁图8分别显示了单寄存器写操作和单寄存器读操作的S P I 总线波形㊂在图8中,值0x 55写入寄存器0x 00A ㊂在图9中,读取寄存器0x 00A ,器件返回的值为0x 55㊂所有数据都在S C L K 信号的上升沿锁存㊂图7 S P I写操作时序图图8 S P I 读操作时序图3 实验验证与分析该系统实物图如图9所示,对系统进行d 单载波测试,确保能够正常工作并进行信号的采集㊂实验平台包括P C 机㊁高速数据采集平台主板㊁A D 9371子板㊁信号源㊂P C 机通过网线与数采平台连接,P C 接收并分析A D 9371收到来自信号源的单载波信号㊂实验步骤如下:①将系统上电启动,P C 与平台建立连接,平台的I P地址为192.168.10.10,将P C 机的本地I P 地址修改成与平台I P 地址同一个子网,即192.168.10.X ㊂②打开A D I I I O O s c i l l o s c o pe 软件,在H o s t n a m e 栏中填写平台的I P 地址192.168.10.10,出现如图10所示的界面,表示平台启动成功㊂图9高速数据采集系统实物图图10 系统平台启动成功③R X 1㊁R X 2接收测试:在软件A D I I I O O s c i l l o s c o pe 中设置A D 9371的接收本振为2500MH z,信号源单频设置为2530MH z ,如图11所示㊂图11 信号源输出设置通过I I O 软件可以分析出接收到的R X 1路的频谱,参数设置完后点运行按钮,即可得到R X 1路信号的频谱,信号频率为30MH z ,如图12所示㊂同样的方法对R X 2进行接收测试,设置A D 9371的接收本振为2500MH z,其他参数不变,信号源单频设置为2512MH z,同样的方图12 R X 1信号频谱法进行R X 2路信号的频谱分析,信号频率为12MH z㊂实验结果表明,高速数据采集平台硬件电路部分良好,两路接收均能正常工作,通过上位机可以改变本振进行收发,其他电路模块能够正常工作,不存在明显的设计问题㊂结 语本方案选择基于F P G A 内嵌A R M 架构的高速数据采集方法,首次将高集成型高速数据采集芯片A D 9371与Z y n q 7000平台结合应用于电磁监测环境系统中㊂引入软硬件协同设计的新型理念,以J E S D 204B 作为高速串行接口,实现了大动态频率范围300MH z ~6G H z 的数据采集,通过时钟配置采样率达到300M s ps 以上,且收发带宽均在100MH z ,数据传输速率最高可达6.14G H z,使高速数据采集变得更易实现,总体架构更加简洁,突出展现了A D 9371芯片和Z y n q 7000平台的优势,实现更容易,功耗更小,价格更低㊂该系统可进一步应用在软件无线电探测㊁雷达干扰收发功能等各个方面㊂参考文献[1]余新华.基于F P G A 的高速数据采集系统的设计[D ].荆州:长江大学,2016.[2]A b o l i A u d u m b a r K h e d k a r ,R H K h a d e .H i g h s pe e d F P G A b a s e d d a t a a c q u i s i t i o n s y s t e m [J ].M i c r o pr o c e s s o r s a n d M i c r -o s y s t e m s ,2016(49):8794.[3]S S u b r a m a n y a ,A D e b .D e s i g n o f a H i g h S p e e d D a t a A c qu i s i -t i o n S y s t e m f o r a T r a n s i e n t R o t o r D y n a m i c T e s t R i g [J ].E x p e r i m e n t a l T e c h n i q u e s ,2016,40(2):521529.[4]高俊岭,陈志飞,章佩佩.基于F P G A 的实时视频图像采集处理系统设计[J ].电子技术应用,2018,44(2):1019.[5]张志坚,周凤星,卢少武.基于A D 7760的高速数据采集系统[J ].仪表技术与传感器,2015(1):2426.[6]陈术涛,沈志,土春联,等.多核D S P 与F P G A 高速数据传输系统设计与实现[J ].电子技术应用,2018,44(12):4043.[7]朱建光.基于嵌入式L i n u x 的数据采集系统研究[D ].太原:中北大学,2011.[8]郭乾利,苏建辉,陈丽霞,等.基于A RM+F P G A 的高精度数据采集系统设计[J ].电子世界,2016(23):51.[9]李正轩,费树岷.基于Z y n q 7000F P G A 的高速信号采集处理平台[J ].单片机与嵌入式系统应用,2016,16(2):4447.[10]柯宝中.基于F P G A 的乒乓式存取高速数据采集通道设计[J ].广西科技大学学报,2015,26(1):4348.[11]赵睿,马媛.基于Z y n q 的数据采集系统的研究与设计[J ].电子测试,2016(22):2021.[12]X i l i n x I n c .Z C 706E v a l u a t i o n B o a r d f o r t h e Z y n q 7000X C 7Z 045A l l P r o gr a mm a b l e S o c U s e r G u i d e ,2016.[13]陆佳华.嵌入式系统软硬件协同设计实战指南:基于X i l i n xZ y n q[M ].北京:机械工业出版社,2013.[14]刘安,禹卫东,马小兵,等.基于F P G A 的高速串行数据收发接口设计[J ].电子技术应用,2017,43(6):4851.李昱燃(硕士研究生)㊁任志国(工程师),主要研究方向为嵌入式系统设计;杨军(研究员),主要研究方向为网络安全与信息化㊂(责任编辑:薛士然 收稿日期:2019-01-21)Q o r v o 移动5G 产品组合实现大规模生产Q o r v o 高度集成的前端模块(F E M )移动5G 产品组合开始实现大规模生产㊂Q o r v o 广泛的产品组合不仅支持所有主要的基带芯片组,而且在该领域独具优势,可使领先智能手机制造商开发的手机和移动设备支持2019年开始的全球5G 网络部署㊂Q o r -v o 的高度集成模块具有支持针对早期部署重新分配的5G 新频段所需的全部R F 前端(R F F E )功能,包括滤波㊁发射/接收开关㊁功率和低噪声放大功能,且有些情况下还包括天线开关功能㊂该产品组合采用Q o r v o 的G a A s 功率放大器和B AW 滤波器,这样使用经过验证的平均功率跟踪(A P T )技术的手机就能够满足5G 要求,包括2级功率(P C 2)下的100MH z 全带宽㊂全球领先的制造商已设计出了采用Q o r v o 技术的5G 手机和移动热点㊂Q o r v o 的移动5G 产品组合包括:QM 78203模块,该模块支持5G 频段(n 77㊁n 78和n 79)的全部宽度;QM 75041频段n 41模块;QM 77038中高频段模块㊂该产品组合还包括天线转换开关和低损耗开关,以满足复杂的5G 信号路由要求㊂Q o r v o 高性能R F 解决方案可简化设计㊁减少产品占用面积㊁节省电力㊁提高系统性能并加速载波聚合技术的部署㊂Q o r v o 结合系统级专业知识㊁广泛的制造规模以及业界最丰富的产品和技术组合,帮助领先制造商加快发布新一代L T E ㊁L T E A ㊁5G 和物联网产品㊂Q o r v o 的核心R F 解决方案树立了下一代连接性的标准,为互联世界的核心环节提供无与伦比的集成度和性能㊂。
基于ARM+FPGA的高精度数据采集系统设计

样时 钟相 位 不精 确等 因素 将 导致 偏置 误差 、增益 误差 和 时延 误差 的 存在 。误 差 的存 在将 会对 数 据 的精确 性带 来 较大 影响 ,因而 需要 对 对 产 生的 误差 进行 处理 和矫 正 。
四.误差矫正
= 系统总体设计
整 个系 统 由 6 个主 要 模块 组成 ,分 别为 : 信 号调 理模 块 、时钟 产 生 与 分配模 块 、模 数 转换 模块 、F P G A 逻 辑控 制和 数 据缓 存 模块 、 由于 偏 置 误 差 为 加 性 噪 声 ,矫 正 的方 法 是 通 过 系 统 中 设置 的 加 法器 对采 集 的数 据 予 以减 去 ,从 而完 成矫 正 。增 益误 差 为乘 性 噪 声 ,可 通过 增加 乘法 器 ,将 采集 到 的数 据乘 以增 益 失配 误差 倒 数完 成矫 正 。时 延误 差可 通过 全通 滤波 器进 行矫 正 。
P C I 总 线接 口模 块和 电源 模块 。系 统 的基本 工作 原理 为: 首先 由信 号 调 理模 块对 模拟 信 号进 行基 本调 理后 , 随后 由模数 转 换模 块完 成 调 理 后 的模拟 信 号信 号 的并 行采 样与 转 换工 作 ,F P GA模 块 的主 要任 务 是实 现对 高速 采 样数 据 的接 收和 进行 缓存 ,最后 由P C I 总线 接 口 将缓 存数据传 输给 计算 机进 行后 续处 理 。 1 . 信 号调 理模 块 信 号调 理 模 块 的主 要 作用 在 于 将 模 拟 信 号 转 换 成 高质 量 输 入 信 号 。 因此 ,首 先要完 成信 号 的基 本调 理 ,包 括放 大 、滤波 和 单端 转 差 分 。系 统选 用A D8 0 0 9超 高速 电流 反 馈 型运 算放 大器 和 巴特 沃 斯 滤 波器 以及 带 有输 出钳 位 电压 的差 分 放大 器 ,其 带宽 范 围从 9 0 0 MH z 到6 7 0 MHz ,对 于 动态 范 围较 高的信 号 具有 较 强的 处理 能力 , 且 对后 端 电路具 有一 定 的过压 保护 作用 。 2 . 时钟产 生 与分 配模块 并 行多 通道 分 时交 替采样 技 术 中最关 键 的一个 模 块就 是 时钟产 生 与分 配模 块 。为 了确保 时钟 相位 的延时 精确 实现 ,系统 选用 了锁 相环 芯 片和 时钟分 配芯 片 ,满足 了模 数转 换模 块 的时钟 要求 。 3 . 模 数转 换模 块 模 数转 换 模 块 的 作 用 在 将输 入 的模 拟 信 号 转 换 为数 字 信 号 , 系 统设 计2个 A DC芯片 。 由于其 采样 率为 5 0 0 Ms p s,分辨 率为 1 2 位 ,因此 当 以 5 0 0 Ms p s 对2 5 0 Mn z的正 弦波 采样 时 ,其 数据 可 以 满 足系 统要 求 。
基于FPGA和ARM的高速数据采集系统设计

基于FPGA和ARM的高速数据采集系统设计
杨磊;刘美枝;高海;党婵娟
【期刊名称】《山西大同大学学报(自然科学版)》
【年(卷),期】2017(033)006
【摘要】数据采集是完成信号分析、信息处理的必要前提.能够对高速数据精确采集、信号实时处理,在现场测控系统中起到至关重要的作用.文章介绍了采用FPGA 控制高精度高采样率的A/D电路对高频信号实时采集,以ARM处理器做为数据远程传输的控制器,通过DM9000实现高速数据网络传输,将数据存储在远程PC端.通过实验测试表明,该高速数据采集远程实时存储系统可以稳定的采集各类高频信号,能够广泛应用于多种现场测控系统,具有极大的应用价值.
【总页数】6页(P32-36,55)
【作者】杨磊;刘美枝;高海;党婵娟
【作者单位】山西大同大学物理与电子科学学院,山西大同037009;山西大同大学物理与电子科学学院,山西大同037009;山西大同大学物理与电子科学学院,山西大同037009;山西大同大学物理与电子科学学院,山西大同037009
【正文语种】中文
【中图分类】TH86
【相关文献】
1.基于ARM和FPGA的高速数据采集系统 [J], 朱建光;余红英;
2.基于Linux的FPGA+ARM高速数据采集系统设计 [J], 许思琦
3.基于ARM与FPGA的高速数据采集技术研究 [J], 高寰宇;
4.基于ARM+FPGA以太网高速数据采集平台测试系统设计分析 [J], 吴爱国
5.FPGA内嵌ARM架构的高速数据采集系统设计 [J], 李昱燃;杨军;任志国
因版权原因,仅展示原文概要,查看原文内容请购买。
基于ARM和FPGA的高速数据采集卡的设计与实现(1).

清华大学硕士毕业论文报告课程名称:嵌入式系统课程设计 专业班级:应用电子技术09201班学生姓名: 崔剑指导教师:袁里弛完成时间:2011年12月26日报告成绩:湖南文理学院电气与信息工程学院 目录第一章系统设计方案和主要器件选型.......1.1系统设计方案 ................................ 1.2 ADC 芯片选型 ............................... 1.3 DA 芯片选型 ................................. 1.4 FPGA 芯片选型 .............................. 1.5主控CPU 选型 ..............................第二章数据采集与触发电路设计 ..............2.1前端采集电路设计 .......................... 2.2触发电路与触发控制 ........................ 2.3 SDRAM 控制器设计 ..........................第三章各芯片间的数据传输与处理 ...........3.1采集卡各芯片速度等级的划分和数据流向 3.2 ARM 与 FPGA 通信 ........................... 3.3数据的模拟输出 .............................第四章设计总结 ................................. 参考文献 .........................................附录 2 .2 2 ..3 .3 4 .5 ..6....7 8..... 7 713 ....13 14 15附录3 ARM 读取显示程序 .............湖南文理学院电气与信息工程学院 第一章系统设计方案和主要器件选型1.1系统设计方案整个系统是由前端模拟通道、触发电路、FPGA 数据采集预处理、数据模拟输出 和ARM 数据处理显示五部分组成。
基于ARMFPGA的高速同步数据采集方案

基于ARMFPGA的高速同步数据采集方案
大多数的勘探、观测工作都是在严苛的环境中进行的,对数据的准确性、实时性都有着较高的要求,并且大多情况下要求多参数同步测量。
北京恒颐针对勘探、测控等行业的特点,推出了基于ARM+FPGA的低功耗、高速率、高精度、多通道同步数据采集方案,可以通过监测者的要求完成多通道数据的同步采集并实现实时的网络传输。
◆应用场合
物探分析领域
天然气、石油等地下勘探领域
观测技术领域(地震波、频谱分析)
电力调度系统
◆系统架构
恒颐高速同步数据采集方案,功能特点如下:
1)通过系统接口直接与采集终端通讯,完成工业现场的多通道模拟量、开关量的数据采集与A/D转换,实现对数据采集终端的控制;
2)系统设有FIFO缓存模块,支持信号的长时间连续采集存储;
3)支持采集数据的移动存储,可对采集数据通过存储卡进行存取;
4)支持10/100M以太网或CDMA/GPRS无线网络,可以实现高效率的网络数据传输。
系统架构如图所示:
◆系统硬件设计
恒颐高速同步数据采集系统主要包括以下几个部分:ARM控制器、存。
基于ARM与FPGA的高速数据采集技术研究

该数 据采 集和 传输 系统 的性能 由下述两 个 实 验 结 果 验 证 :
实 验 一 , 采 用 P1010MIN 模 块 来 产 生 脉 冲信号和 门信号 ,脉冲信号直接被发送至数据 采 集系统 ,栅极信 号先 由MIN模块 GG8o0处 理 ,然后发送至系统。实验结果表明 ,最大数 据 传输速率约为 2百万字节 /秒 ,而 事件生成 的频 率为 250kHz;
这 种 通 信 方 法 有 两 个 设 计 要 点 : 首 先 , FPGA 设计为 一个存储器 与 ARM 的 10总线相 连接 ;其 次,FPGA是受控 于 SROM (静态 只 读存储器 )控制器 (SROMC)并集 成在 ARM 中。理论上 ,该数据通信机制可 以使 FPGA 和 AR M 之 间传输 速率高达 50MB/s,因此能够 满足 我们 的数据 采集 系统的设 计要求 。FPGA 可 以独立或与相 同的模块一起工作非常方便 。 该数据采集系统可 以工作在主模 式或客户端模 式。该 FPGA通过数模转换总线控制 4个本地 数模转换器 ,然后通过返 回总线与其他数据采 集模 块通信。只有在主控模式下 ,数据采集模
3 ARM中 的驱 动 设 计
事件信号的产生往往是随机的,为 了解 决 系统不知道何时读取数据 的问题 ,在其 中实施 了中断机制 ,以达到有效 的结果 。其工作机理 如下:当事件的累积数 (多事件模式 )达到预 设值时 ,FPGA被设置为通知 ARM 读取数据 , 该方法可 以减少对 ARM 的负担,驱动器会 处 理该 中断信号 ,并通知给程序来解 决。中断处 理 器 模 块 用 于 响 应
所有的数据通过 以太网被发送到计算机进行处 理 。
2 FPGA与ARM之间的连接方式
匦璺-_{肌 B I~ . }
基于ARM+FPGA的高精度数据采集系统设计

摘
要: 提 出 了一 种 基 于 AR M和 F P GA 架构 的 高精 度 信 号 采 集 方 案 。该 方 案 信 号 采 集 部 分 采 用 高 精 度 、 大动态 2 4位 A / D
转换器 , A RM 和 F P G A 接 口上 采 用 双 口 RA M 进 行 数 据 传输 。其 中 , F P G A 首 先 完 成 对 A/ D 的模 式 配 置 , 并 将 转 换 后 的 数 据
应 用 天 地
蕾 l
己 口I 4 年 l { 月
第] ] 卷 第 l J 期
基 于 ARM+F P G A 的 高精 度 数 据 采 集 系统 设 计 *
张 淑 梅
( 中 国科 学 院 长 春 光 学 精 密 机械 与 物 理研 究 所 长 春 1 3 0 0 3 c c u r a c y o f t h e s y s t e m a c h i e v e s t h e b e s t p e r f o r ma n c e o f A/ D c o n v e r t e r b y b i a s c o r r e c t i o n , wh i c h c a n b e a p p l i e d
d e s i g n b e t we e n ARM a n d FP GA 。a n d i n t e r r u p t s a n d b u s d r i v e r d e s i g n o f t h e e mb e d d e d Li n u x o p e r a t i n g s y s t e m i s e l a b o — r a t e d . Re p l a c i n g t h e t r a d i t i o n a l FI FO b y d u a l — p o r t RAM r e d u c e s s y s t e m c o s t . Th e s y s t e m t e s t r e s u l t s s h o w t h a t t he
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
清华大学硕士毕业论文报告课程名称:嵌入式系统课程设计专业班级:应用电子技术09201班学生姓名:**指导教师:***完成时间:2011年12月26日报告成绩:目录第一章系统设计方案和主要器件选型 (2)1.1 系统设计方案 (2)1.2 ADC芯片选型 (2)1.3 DA芯片选型 (2)1.4 FPGA芯片选型 (3)1.5 主控CPU选型 (3)第二章数据采集与触发电路设计 (4)2.1 前端采集电路设计 (4)2.2 触发电路与触发控制 (5)2.3 SDRAM控制器设计 (6)第三章各芯片间的数据传输与处理 (7)3.1 采集卡各芯片速度等级的划分和数据流向 (7)3.2 ARM与FPGA通信 (7)3.3 数据的模拟输出 (8)第四章设计总结 (13)参考文献 (13)附录1 ARM外围电路 (14)附录2 FPGA外围电路 (15)附录3 ARM读取显示程序 (20)第一章系统设计方案和主要器件选型1.1 系统设计方案整个系统是由前端模拟通道、触发电路、FPGA数据采集预处理、数据模拟输出和ARM数据处理显示五部分组成。
FPGA数据采集预处理分为A/D数据采集、触发控制、帧控制、SDRAM控制器和ARM数据交换五个部分,模拟数据经过A/D装换后在FPGA中缓冲,缓冲之后使用触发控制将采集到的数据分成512个数据点组成的数据帧,数据按照帧的顺序传输,经过SDRAM存储后,通过ARM与FPGA中的共享存储区传输给ARM。
具体的数据采集系统的硬件结构图如下图2-1所示:图2-1 数据采集卡硬件结构图1.2 ADC芯片选型A/D转换器是整个采集系统的核心,系统前端模拟电压调理电路、FPGA数据采集和后端的采集控制部分都与A/D直接相关,A/D芯片的选择不但关系到系统设计的性能,而且直接决定了整板设计的难度。
1.3 DA芯片选型为了输出高性能的模拟信号,DAC采用采样率高达175M的高速DAC。
AD970X系列DAC针对低功耗特性进行了优化,同时仍保持出色的动态性能,适合用于手持便携式仪器等需要有效地合成宽带信号的场合。
AD9707 精度高达14位,采样率为175MSPS,内部集成边沿触发式输入锁存器,1V温度补偿带隙基准电压源和自校准功能,使AD9707能提供真14位INL与DNL性能。
1.4 FPGA芯片选型在现代采集系统中FPGA往往被用做通信系统的中枢,负责了大量的数据采集和前期处理和控制工作,FPGA作为系统的中间级主芯片承担着承前启后的重大任务。
1.4.1 FPGA的特点及选型常见的FPGA一般由六部分组成,分别为可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAM、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核等。
1.4.2 FPGA的设计步骤1.电路设计与输入2.功能仿真3.综合优化4.综合后仿真5.实现与布局布线6.时序仿真和验证7.板级仿真与验证8.调试与加载配置1.4.3 FPGA核心电路设计FPGA各系列的最小系统板的单元组成基本相同,仅具体电路中存在着差异。
一般可以把其组成分为七部分:FPGA主芯片、PROM存储芯片、电源电路、全局时钟发生电路、JTAG接口电路、下载模式选择电路和接口引出插针。
以该最小系统板作为控制核心,外加所需的接口电路就可以实现各种设计。
1.5 主控CPU选型主控CPU相当与人的心脏,整个系统运行的快慢与它有直接关系,常见的嵌入式处理器有单片机、ARM、DSP等,它们都有各自的特点,运用的场合各有不同,设计的难度也不一样。
主控CPU的选择是一个综合的过程,在选择时它必须有以下特点:1.CPU运算速度快,不能拖慢整个系统采集的效率。
2.CPU内嵌LCD控制器可以驱动TFT-LCD,利于降低系统设计难度。
3.所选处理器比较常见,在其他设计中有广泛应用,便于代码移植,简化设计。
4.基于此CPU的开发板购买方便,价格便宜,代码丰富。
第二章数据采集与触发电路设计2.1 前端采集电路设计2.1.1 AD前端调理电路前端调理电路目的就是将被测信号调理到AD9480模拟输入的电压范围。
被测信号经过前端阻抗变换网络之后,进入后级运算放大器,后级选择高阻抗低噪声运算放大器ADA4817,输入阻抗高达500GΩ。
下图2-1为AD8351单端转差分的典型电路:图2-1 AD8351单端转差分的典型电路下图2-2为AD9480功能模块图:图2-2 AD9480功能模块图2.1.2 FPGA 数据采集设计中使用FPGA 内部的RAM 来缓冲AD 输出的数据,EP3C25内部的RAM 资源总共有608Kbits ,使用这些内部的RAM 作为数据缓冲单元,既可以节约成本,又可以提高硬件采集的性能。
使用FPGA 内部的RAM 资源,设计中可以非常容易的构建前端数据缓冲所需要的双口RAM 或者FIFO 。
下图2-3为典型的双口RAM 模块图。
2-3 典型的双口RAM 模块图2.2 触发电路与触发控制为了保证采集数据的稳定,一般的数据采集系统中都会有触发电路,它能提供了一个稳定的触发相位点,使得重构的波形能够在上位机的显示屏上稳定显示,还保证我们能观测的感兴趣的波形。
2.2.1 触发分析触发的目的是同步,触发的过程是比较。
图2-4 基本的触发结构图AD模拟输入模拟触发信号模拟比较器数字比较器外部触发信号量化数字触发信号触发控制内触发信号FPGA帧控制2.2.2 触发控制典型的触发信号为比较器输出的脉冲信号,触发控制是根据触发脉冲的起始位置,采集起始位置之后的一帧数据,由于每一次触发信号产生时,采集的数据都是在一个固定的值,因此将每次触发后的512个数据点组合为一帧,在显示上就会出现一个稳定的数据波形。
整个控制和实现上述功能的过程就是触发控制。
2.4 SDRAM 控制器设计2.4.1 SDRAM 控制器结构图2-5 SDRAM 控制器系统结构1.控制接口模块图2-6 接口模块的结构图CMDACKBA[1:0]CS[1:0]CKE RAS CAS WECMDACK第三章各芯片间的数据传输与处理3.1 采集卡各芯片速度等级的划分和数据流向按照整个系统各部分的速度,我们将系统简单的划分为三个速度等级,不管是程序设计还是PCB设计都要充分的考虑到各个速度等级的特点,才能设计出合理可靠的系统,具体划分情况如下图3-1所示:中速图3-1 系统速度等级划分图为了提高采集、存储和显示的效率,根据各个芯片的特点,运用了下面几种处理方式来提高效率:1.在FPGA中构建一个多缓冲单元的乒乓机制采集模块,提高FPGA采集的效率,并降低了中间级传输的速度,利于中间级的数据处理。
2.在中间级FPGA与后端ARM之间的通信中,使用DMA模式,大大提高了数据传输的速率,并解放了ARM,使其可以从容的进行数据处理和显示工作。
3.在ARM接收数据后对采集的数据帧进行控制,保证数据传输的可靠性和正确性。
3.2 ARM与FPGA通信在数据采集卡中ARM主要负责数据显示和数据分析,处理的速度处于MS级;而FPGA在系统中处于数据的高速采集和高速处理,处理的速度是ns级。
两个处理器的之间的数据传输属于典型的异步数据通信,它们之间通信的速度之间决定了系统处理数据的效率。
FPGA与ARM之间属于大量数据交换,以异步并行读取的方式为例介绍ARM与FPGA的通信,实际设计中使用DMA方式来实现ARM与FPGA之间的大数据量通信。
3.2.1 ARM存储系统分析S3C2410A存储控制器提供访问外部存储器所需要的存储器控制信号。
S3C2410A支持大、小端模式,将存储空间分为8个组(Bank),每组大小是128M,共计1GB,如图3-2所示。
3.3 数据的模拟输出3.3.1 模拟输出电路设计模拟输出部分是由AD9707、低电压异或门76VX86和运放ADA4899组成。
测试时可以通过跳线J1选择AD9707的工作模式,J1选择高电平时为PIN模式,低电平时为SPI模式,出现高电平脉冲时复位内部寄存器。
电路图中AD9707的输入时钟选择差分时钟,AD9707输出选择单端输出,正向输出端IOUTA与ADA4899的反相输入端相连,反向输出端IOUTB接地,内部基准电压源REFIO与ADA4899的同相输入端相连。
运算放大器ADA4899将AD9707单端输出的电流变化转换为电压变化,外部使用内部基准电压源时REFIO引脚需用一个0.1μF电容接地。
基本的硬件电路图如下图3-3所示:图3-3 AD9707基本外围电路3.3.2 AD9707内部寄存器配置在AD9707测试之前必须按照外围电路的设计配置好AD9707工作的状态。
3.3.3 使用ARM 和FPGA 分别配置AD97071.使用ARM 配置AD9707内部寄存器S3C2410具有两个SPI 接口模块,每个模块分别具有两个8位移位寄存器用来接收和发送数据。
数据的接收(串行移入)和发送(串行移出)是同时进行的。
串行数据的速率由相应的寄存器设定。
其时序很简单,主要是在CLK 的控制下,两个双向移位寄存器进行数据交换。
SPI 接口发送数据的程序流程图如下图3-4所示:图3-4 SPI 数据发送程序流程图检查发送标志位的状态=1?开始SPI 初始化设置波特率设置SPCONn 来配置SPI 模块设置作为nSS 的GPIO 配置为低电平向SPTDATn 写入数据将nSS 配置为高电平进入下一次传输YN使用S3C2410的SPI端口0来配置AD9707内部寄存器的主程序如下:void Spi_MS_poll(void){int i;S16 a[2]={0x0080,0x0200};//地址0x00的数据为0x80;地址0x02的数据为0x00for(i=0;i<2;i++) //通过两次赋值{SPI_Port_Init(0);//SPI端口初始化rSPPRE0=0x0; //设置波特率SCLK为20MrSPCON0=(0<<5)|(1<<4)|(1<<3)|(1<<2)|(0<<1)|(0<<0);//设置SPI端口为polling模式,时钟使能,SPI为主控模式rSPPIN0=(0<<2)|(1<<1)|(0<<0);//禁止多主控错误检测使能,主机输出后释放MOSI{if(rSPSTA0&0x1) //检查SPI0的状态{rSPTDAT0=a[i]; i++; //发送数据,准备下一次发送数据}}rSPCON0=(0<<5)|(0<<4)|(1<<3)|(1<<2)|(0<<1)|(0<<0);//设置SPI端口为Polling模式,禁止SCK, 选择主控模式}}使用ARM的SPI接口可以很方便的配置AD9707,但是在测试电路板上ARM离AD9707较远,走线比较长,布线时比较复杂,导致测试时不得不使用飞线。