基于FPGA的超多通道高速数据采集系统设计.pdf
《基于FPGA的超多通道高速数据采集系统设计.pdf》由会员分享,可在线阅读,更多相关《基于FPGA的超多通道高速数据采集系统设计.pdf(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、总第钙卷第5 1 4 期2 0 0 8 年第1 0 期电测与仪表E l e c t r i c a lM e n s m t m t m t&I n s t r u m e n t a U o nV d 4 5N 0 5 1 4O c t 2 8基于F P G A 的超多通道高速数据采集系统设计木辛君君,黄松岭1,刘立力27 赵伟t(1 清华大学电机系电力系统国家重点实验室,北京1 0 0 0 8 4;2 中国石油天然气管道工程有限公司,河北廊坊0 6 5 0 0 0)摘要:为了实现高清晰度油气管道漏磁检测器高精度多通道数据采集的要求,采用A l t e r aC y c l o n e 系列
2、F P G AE P l C 6 为核心控制模块,结合A D 9 2 2 3 模数转换芯片构建了超多通道、高速数据采集系统。利用V H D L 编程构造双口R A M 和状态机,在F P G A 中实现了采集过程中的数组组织与存储。该系统能够完成6 6 0 路、最大采样率为1 3 2 k H z、精度为1 2 位有效数位的模拟信号采集。文中介绍了数据采集系统的构成和设计过程,给出了系统的实验结果。关键词:数据采集;F P G A;A D 9 2 2 3;V H D L中图分类号:T N 7 9文献标识码:B文章编号:1 0 0 1 1 3 9 0(2 0 0 8)1 0-0 0 3 3-0 4
3、D e s i g no fs u p e rm u l t i-c h a n n e la n dh i g h-s p e e dd a t aa c q u i s i t i o ns y s t e mb a s e do nF P G AX I NJ u n-j u n l,H U A N GS o n g-h n 9 1,L I UL i-l?,Z H A 0W e i l(1 S t a t eK e yL a bo fP o w e rS y s t e m s,D e p a r t m e n to fE l e c t r i c a lE n g i n e e r
4、 i n g,T s i n g h u aU n i v e r s i t y,B e i j i n g1 0 0 0 8 4,C h i n a 2 C h i n aP e t r o l e u ma n dN a t u r a lG a sP i p e l i n eP r o j e c tL t d 1 _ a n g f a n g0 6 5 0 0 0,H e b e i,C h i n a)A b s t r a c t:I no r d e rt oa c h i e v et h er e q m r e m e m so fh i s hp r e c i s
5、 i o na n dm u l t i c h a n n e ld a t aa c q u i s i t i o no fo i la n dg a sp i p e l i n em a g n e t i cf l u xl e a k a g ed e t e c t o rw i t hh i s hd e f i n i t i o n,as u p e rm u l t i-c h a n n e la n dh i s h-s p e e dd a t aa c q u i s i t i o ns y s t e mi sb u i l tw i t hA h e r
6、aC y c l o n es e r i e sF P G AE P lC 6a st h ec o r ec o n t r o lm o d u l ea n dA D 9 2 2 3a st h ea n a l o g-d i g i t a lc o n v e r t e r T h ed a t ao r g a n i z a t i o na n ds t o r a g et i r er e a l i z e db yc o n s t r u c t i n gd u a l-p o r tR A Ma n ds t a t em a c h i n eu s i
7、n gV H D Li nF P G Ad u r i n gt h ed a t aa c q u i s i t i o np r o c e s s T h es y s t e ma c h i e v e sa c q u i r i n g6 6 0-r o u t ea n a l o gs i g n a l sw i t ht h em a x i m a lf r e q u e n c yo f1 3 2k H za n dt h ep r e c i s i o no f1 2b i t s T h ec o m p o s i t i o n sa n dd e s
8、i g np r o c e s so ft h ed a t aa c q u i s i t i o na l ei n t r o d u c e d,a n dt h er e s u l t so ft h ee x p e r i m e n ta l er e p r e s e n t e d K e yw o r d s:d a t aa c q u i s i t i o n,F P G A,A D 9 2 2 3,V H D L0 引言油气管道在各种因素的作用下逐渐出现多种缺陷,对管道正常运行构成威胁;严重时可能引起管道中油、气泄漏,造成周围环境污染和资源的极大浪费。因此
9、,对油气管道缺陷进行早期检测、监控和处理成为个重要课题。油气管道漏磁检测器是进行油气管国家高技术发展研究计划(8 6 3)资助项目(2 0 0 7 A A 0 6 2 2 2 3)道缺陷检测的有效手段,为管道安全运行定期检修提供保障和指导。为了提高检测器的缺陷分辨能力,可通过增加传感器通道和提高采样频率来实现。一般来说,通道数目越多、采样频率越高,则检测器所获得的漏磁信息越完善,对各类缺陷的分辨能力也越高。目前,普通漏磁检测器通道数在2 0 0 4 0 0 路左右,而高清晰度检测器的通道数目已达到了1 2 0 0 路,信息一3 3 万方数据总第4 5 卷第5 1 4 期2 0 0 8 年第l
10、O 期电测与仪表D e c t r i c a lM e a s u r e m e n t&I n s t r u m e n t a t i o nV 0 1 4 5N 0 5 1 4O c t 2 0 0 8流量近1 0 M b i t s,如此多数据通道和大数据传输要求给实际检测器数据采集系统设计带来了难题。不但如此,该系统实际应用时,将被密封在管道检测器狭小的夹舱内,因此该数据采集系统对硬件的空间体积也有严格的限制。多通道高速数据采集系统是并行数据采集技术研究的热点【1 习,其控制核心一般为F P G A。与单片机和D S P 相比,F P G A 在多路并行采集方面具有明显优势。单
11、片机受指令周期以及处理速度的影响,难以对多个通道、A D 组成的阵列进行控制,且其总线宽度有限,对于多路数据采集来说,存在数据带宽不足的瓶颈。若采用多个单片机并行的方式,则又造成了系统复杂、功耗高、体积大等致命缺点。D S P 虽然可以实现较高速的数据采集,但在其速度提高的同时,也增加了系统的硬件成本,特别是D S P 的各种功能需要靠软件的运行来实现,其时间消耗在整个采样时间中所占比例偏大,因此其执行的速度和效率不高。F P G A 能有效克服单片机和D S P 的上述缺点,它的全部控制逻辑均由硬件完成,具有时钟频率高、内部延时小、编程配置灵活的特点,可以集采样控制、处理、缓存、传输控制和通
12、信于一个芯片内,因此在多路并行和高速数据采集领域得到广泛应用嗍。多通道数据采集系统的通道数目通常在6 0 路以下,利用F P G A 技术比较容易实现。但本文研究的油气管道漏磁检测器数据采集系统的信息通道有6 6 0路,信息流量达2 MB y t e“s,且其硬件空间尺寸不得大于2 0 c m x8 c m x 5 c m,因此通过简单增加D 转换器的数目来达到设计要求子硬盘中,它包括以下6 个模块:前端信号处理、通道选择、信号调理、数模转换、数据组织和存储控制。当检测完成时,可利用数据分析软件对存储在电子硬盘中的原始数据进行分析,重构管道表面以确定腐蚀缺陷的位置和大小。油气管道漏磁检测器处理
13、的信号主要分两类:A类信号为漏磁信号,共有6 0 0 路,它主要由分布在检测器周向上6 0 0 个霍尔传感器产生,包含了管道内外表面缺陷的大量信息。B 类信号为辅助信号,亦为6 0 0路,主要记录检测器用于判断内外壁缺陷的辅助漏磁信号。根据油气管道漏磁检测器实际要求,本文设计的采集系统结构如图l 所示。系统共包括1 0 路并行采集通道,每个通道由相应的多路选通器与之相连。在输人端,每个多路选通器又分别与6 0 路A 类信号相连,并由其对A 类信号进行选通,从而将6 0 0 路A 类信号均匀地分配到1 0 路并行采集通道之中。B 类信号先通过信号集中器进行预处理,将1 0 个控制信号模拟相加合为
14、1 路,从而产生6 0 路“复合”B 类信号,同样均匀分配到1 0 路并行采集通道中。如此,每6 6 路信号(含6 0 路A类信号和6 路“复合”B 类信号)连接一个多路选通器,被选通的模拟输入信号需经过前置的放大电路进行6 路A 类信号L 广:;广;:n 动A D ci I 些塾H 运iH 竺卜lA D c j 空制II模块l1 0 路并行采橐通道F I x 3 A蝴蝴一_-南盥lI 数据钮织I-+l 存储童块IS 信J爿釜曜H l 多路选虚嚣II 控制慎块I一J多路选通器地址是不现实的。为此,我们采用二级数据选通、多路A D分时复用的方案对采集系统进行高度集成,实现了漏磁检测器超多通道高速
15、数据的设计要求。本文详细介绍基于F P G A 的超多通道高速数据采集系统的设计思路和实现过程,为其它相似系统的设计与应用提供了有价值的参考。l 系统构成油气管道漏磁检测器实际运行时,速度最大可达到6 6 7 m s,每行进3 3 3 r a m 采集数据一次,即要求数据采集系统在5 0 0 p s 的时间范围内完成6 6 0 路通道数据的高精度采集、预处理、数据组织及实时存储功能。为此,本文设计采集系统的主要功能是将管道漏磁检测器多路传感器模拟信号转换成数字信号并存储到电-3 4 图1系统结构框图信号调理,最后通过A D C 环节转换为数据信号。1 0 路并行数据采集通道模数转换之后的所有数
16、据经F P G A组织之后,送入后端存储。2 系统设计2 1 主控制器本系统中主控制器采用E P l C 6。E P l C 6 是A l t e r a 公司推出的一款高性价比F P G A,其内部采用查找表(L U T)和嵌人式阵列块(E A B)相结合的结构,同时内嵌2 个锁相环电路,拥有5 9 8 0 个逻辑单元,含2 0 个12 8 x3 6 位的R A M 块(M 4 K 模块),有效R A M 空间可达到9 2 1 6 0 位,并能提供高达3 1 1 M b p s 的双向I,o 功能。其工作电压为3 3 v,内核电压仅为1 5 V,从而有效降低了功耗。其外部管脚总数达2 4 0
17、,最大可支持18 5 个用户万方数据总第钙卷第5 1 4 期2 0 惦年第1 0 期电谢与仪表E l e e t r i c a lM e a s u r e m e n t&I n s t n z m e n t a t i o nV o L 4 5N 0 5 1 4O c t 舢I O,因此该F P G A 适用于具有复杂逻辑及存储、缓冲能力的数据采集系统。数据采集系统主控制器的全局时钟频率为5 0 M H z,其主要的I,o 引脚包括1 0 组A D C 转换器(本文选用A D 9 2 2 3)的读控制信号、数据转换接1 2 1、多路选通器通道选择信号、数据存储接口、采集开始结束信号以及
18、系统复位信号,如图2 所示。主控制器设计时,采用自顶向下的设计方法,分别完成如下各个模块的代码编写:A D C 控制模块,控制启动M D 转换及数据采集时序;多路选通器控制模块,产生和发出多路选通器地址命令以选通不同的传感器通道;数据组织存储模块,将并行采集到的数据进行组织并以串行方式输出存储。同时,在主控制器内建立寄存器阵列以实现采集系统的相应功能:配置寄存器阵列,用于存储A D C 和多路选通器通道配置命令,实现对各个通道的配置和标定;数据寄存器阵列,用于存储A D 转换后的数据。l 控制向令lN 采集语遒I川配置和标定l1 上iA D C 翩,良n剖多路选通器lI1 0 路L 割致据存储
19、ll 井行 A D Ct-2 2 数据采集检测器在运行过程中,要求每行进3 3 3 r a m 采集一次数据。当它以最大速度6 6 7 以行进时,每个通道采集时间最长为7 6 仙s。由于系统选用的多路选通器开通稳定时间为4 O 邺,所以A D C 的数据采集和转换时间不能超过3 6 p s。基于此,选择A D I 公司转换速率为3 M S P S 的M D 转换器A D 9 2 2 3,其转换精度为1 2 位,功耗为1 0 0 r o W,+5 V 电源供电,内部自带采样保持运算放大器和2 5 V 参考电压。它的启动信号(C L K)时钟周期为3 3 3 n s,输出通道延迟3 个采样时钟周期
20、,从数据输入到有效数据输出仅需1 0 1 L s。如此,从多路选通器开通到数据采集完成,每个通道一共耗时5 O 斗s(7 6 p s),这样每个通道的最大采样频率可达到2 0 0 k H z。在本系统中,选用1 0 片无差别的A D C 芯片并使用相同的控制信号,以进行同步采集。当系统收到数据采集命令时,先由F P G A 产生一组多路选通器地址命令,分时选通各个通道;待多路选通器开通稳定之后,再启动1 0 路并行A D C 以进行数模转换。每个通道每次采样3 个点,经过F P G A 取平均值之后,作为该通道的采集结果。1 0 路1 2 b i t s 的A D 转换结果暂时存储在F P G
21、 A 内嵌的双V I R A b i 中等待数据组织。再由F P G A 产生下一组多路选通器地址命令,重复上述采集过程,如此,直到6 6 路数据通道均被采集,本次采集过程结束,等待系统下一次采集命令。2 3 数据组织为了对数据进行有效组织,在F P G A 内部嵌入一个双口R A M,暂存多次M D 转换之后的数据。双口R A M 可以通过V H D L 编程实现,也可以根据需要设置R A M 的宽度与深度,调用Q u a r t u sI I 中L P M 库中的现有模块来实现。在实际设计中,采用L P M 阳md p 模块外加控制逻辑的方法以实现两端都能读写的双端口R A M。对于R A
22、 M 的读写控制,本文采用分段地址加偏移地址的方式,在生成具体地址代码时,可有效避免大量的加法运算,提高了V H D I 程序的兼容性,节省F P G A 片内资源,同时也使得各个通道的数据排列在一个数据区。由于电子硬盘存储单元均为8 b i t s 的倍数,而A D数据转换结果为12 b i t s,为提高存储效率,有必要在存储之前对M D 转换之后的数据进行再组织。系统设定存锗单元宽度为1 6 b i t s,因此可将暂存入双口R A M 中每4 个通道采集得到的数据重组成3 个宽度为1 6 b i t s 的数据。这样,6 6 0 路1 2 b i t s 的数据最终组织成4 9 5 个
23、1 6 b i t s 宽的数据集,以进行存储。2 4 数据存储数据组织完成后需将其数据存储在电子硬盘中,以便利用数据分析软件重构管道表面的缺陷特征。在本系统中,电子盘的最高写盘速度比采集速度快,但在每次写盘之前,系统往往需要等待一段时间,频繁地写盘操作会直接导致电子盘有效存储速度的降低。为了减少写盘次数,提高数据实际存储速度,保证采样、传输和存储各自不问断地进行,在数据采集系统中采用乒乓传输结构。乒乓传输结构包括两个开关控制及两片高速R A M,其控制原理如图3 所示。输入数据流选择单元将数据流等时分配到两个输入数据流选择单元,-|数据缓冲模块l 一一一-输出数据目t 选-4 数据存储控制模
24、块择单元-叫数据缓冲模块2 卜_ 一3 5 万方数据总第4 5 卷第5 1 4 期2 0 0 8 年第1 0 期电测与仪表日e c t r i c a lM e a s u r e m e n t I n s t r u m e n t a t i o nV o l 0 5N 0 5 1 4O c t 2 伽B数据缓冲区中。在第一个缓冲周期,将输入的数据缓存到数据缓冲模块1;在第2 个缓冲周期,通过输入数据选择单元的切换,输入的数据流被存储到数据缓冲模块2 中。同时,通过输出数据流选择单元,将数据缓冲模块1 中的数据送到数据存储控制模块进行存储;在下个缓冲周期,通过输入数据选择单元的再次切换,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 通道 高速 数据 采集 系统 设计
限制150内