SoC FPGA在声波测井数据采集系统中的应用
2017-03-02张成晖叶朝辉张立伟
张成晖, 叶朝辉, 张立伟, 吴 楠
(清华大学 自动化系,北京 100084)
应用技术
SoC FPGA在声波测井数据采集系统中的应用
张成晖, 叶朝辉, 张立伟, 吴 楠
(清华大学 自动化系,北京 100084)
传统的数据采集系统采用现场可编程门阵列+数字信号处理器(FPGA+DSP)架构,复杂化了硬件设计,增加了系统功耗。以SoC FPGA为核心搭建的声波测井数据采集系统,充分发挥了微处理器控制能力强和现场可编程门阵列灵活的特点,利用总线互联通信等SoC技术,简化了硬件设计,降低了电路功耗,提高了系统的可靠性。
声波测井; 数据采集; 片上系统现场可编程门阵列(SoC FPGA)
0 引 言
声波测井是地球物理测井中的主要测井方法之一,其目的就是运用声波在岩层中的各种传播规律,测量所钻地层的地质和岩石物理参数,来获取地层的油、气藏的存在与岩性等特征[1]。近年来,阵列声波测井技术得到迅速发展,此类声波测井仪器上安装有多组声波发射、接收探头阵列,通过不同的发射接收的探头阵列组合,仪器可以完成多种模式的声波采集,文献[2]提到的交叉偶极声波测井(XMAC)偶极阵列声波测井仪器就具有单级时差测量、单级全波偶极线性全波测量、交叉偶极测量3种不同的测量模式,多种测量模式提升了测井仪器工作的能力和范围,同时也对仪器的数据采集电路提出了更高的要求。
过去,主控电路多以多片数字信号处理器+现场可编程门阵列(DSP+FPGA)搭配模数转换器(ADC)的架构实现,文献[3,4]中提到的两种声波测井数据采集电路。其中FPGA控制ADC负责多种模式下声波模拟信号采集,DSP负责完成数字滤波、数据压缩、传感器控制、电缆通信等任务。DSP与FPGA,DSP和DSP之间通过低速的工业通信接口(SPI、Mcbsp等)或处理器外部总线接口连接。多芯片的结构复杂化了板级电路设计,芯片之间的频繁通信也容易产生错误,由此产生的仪器井下故障会带来巨大的财力、人力损失;这在可靠性和稳定性要求严格的石油工业领域是无法接受的。
随着微电子技术的发展,片上系统(system on chip,SoC)已经成为流行趋势。SoC 可将系统的多个模块或系统所有模块在单芯片进行实现,极大缩小了系统的体积,提高了系统的可靠性[5]。
本文以Smartfuion2 SoC FPGA和AD7609模数转换芯片为核心,设计了一种新型的用于石油声波测井的多通道数据采集系统,更适合于石油工业声波测井应用。
1 基于SoC FPGA的数据采集系统整体设计
1.1 系统设计
基于SoC FPGA的声波测井系统的结构如图1所示,整个测井系统包括地面和井下两部分。SoC FPGA数据采集系统是井下的主控部分,它的作用是:1)控制激发井下的声波换能器,激发声波发射;2)控制声波模拟信号前置处理电路,对32路声波信号进行运算、放大、滤波等操作,最后得到8路经过预处理的模拟信号;3)驱动AD7609模数转换器工作,将模拟信号转化为数字信号并进行采集和存储;4)对采集到的声波数据进行数字滤波、压缩、打包处理,并按照指定格式通过CAN总线发送至地面控制系统。
图1 基于SoC FPGA的声波测井系统
1.2 SoC FPGA配置
Smartfusion2 SoC FPGA内部系统由两部分组成:微处理器子系统和FPGA资源(FPGA fabric)。声波采集电路的整体流程控制、采集数据打包压缩、上位机CAN总线通信部分被放在微处理器子系统中实现,而AD7609采集模块、声波采集模拟电路控制模块、声波换能器发射控制模块都在FPGA上实现;这三个子模块均挂接在APB(advanced peripheral bus)总线上,通过FIC(fabric interface control)模块和AHB(advanced high-performance bus)/APB 总线矩阵与ARM Cortex—m3处理器内核进行双向通信。
这样的设计有以下好处:1)微处理器子系统和FPGA系统分别发挥了各自特点。前者控制、运算能力强,配有标准通信接口,适合于系统的整体控制;后者灵活性好,时序控制能力强,适合于数据采集系统(DAS)以及其他各类子系统的驱动和控制。2)微处理器子系统和FPGA通过APB总线通信,通信速度能逼近处理器总线的通信速度,并且减少了外部复杂的地址、数据总线的硬件连线,是一种高速、低功耗的高效的数据通信方式。3)数据采集和控制系统集中在单芯片上,提高了系统整体的集成度和可靠性,降低了系统功耗。
1.3 SoC内部通信和APB总线
在SoC内部单元都通过总线进行互联通信,业界有多种总线标准,比较著名的SoC片上总线标准有Wishbone、Core Connect、Avalon、高级微控制器总线结构(AMBA)等[6,7]。AMBA总线标准由ARM公司开发,随着ARM处理器在嵌入式领域的广泛应用,AMBA总线已经成为SoC系统中流行的总线标准之一[8]。AMBA总线标准中主要包含了以下三种总线:AHB、ASB(advanced system bus)、APB。其中APB总线是一种低功耗的外围设备总线,其控制信号简单,使用32位地址空间和32位数据空间,且读写数据总线独立分开。APB总线可以通过桥接器和AHB或ASB总线连接通信, 在本文系统应用中,APB总线可以直接或者通过FIC接口与AHB总线矩阵连接,然后与ARM-Cortex M3处理器进行通信。
2 AD7609驱动模块设计
2.1 声波数据采集要求
声波测井数据采集系统要求对各个通道的信号进行同步采样,同时每个数据通道的采样率、采样点数、采样延迟均可以通过控制器进行实时配置;系统采样率最高要求达到125 kSPS,采样点数依据不同的采样序列104~336不等,采样延迟点数0~511可配置;因此对模数转换芯片,以及芯片对应的驱动程序的开发有很高要求。这里选取了ADI产的AD7609模数转换芯片。下面主要对挂接在APB总线上的AD7609采集子模块进行介绍,另外两个子模块(前置模拟电路控制模块、声波换能器发射模块)的实现不再赘述。
2.2 AD7609简介
AD7609是ADI生产的一种18位、8通道、真差分、同步采样模数DAS芯片。其内部用5V单电源供电,可以处理±10V和±5V真双极性差分输入信号,同时所有通道均能以高达200 kSPS的吞吐率采样。AD7609采用单电源工作方式,各通道的模拟输入阻抗为1 MΩ,因此,外部不再需要驱动运算放大器和双极性电源,这使得外围的电路设计更为简单。
2.3 AD7609串行数据接口
AD7609芯片提供了两种数据接口:并行接口(parallel interface)和串行接口(serial interface)。考虑到PCB布线应尽可能减少管脚连接并保证数据可靠性,同时兼顾数据采集系统125 kSPS(8 μs间隔)最高的采样率要求,选取了串行接口。该接口读取过程中使用到以下信号CS*,SCLK,DOUTA,DOUTB。其中DOUTA串行读取通道1~通道4的72 bit数据,DOUTB串行读取通道5值通道8的72 bit数据。
串行读取时钟SCLK有严格要求。首先其受到管脚电压限制,按照芯片应用要求,数字接口管脚电压为3.3 V时读取时钟频率不能超过15 MHz。同时SCLK时钟频率不能太低,否则会延长串行读取的时间(如在10 MHz下读完72 bit数据需要7.2 μs);此外考虑到设计的鲁棒性,数据读取过程要留出一定的时间裕度。在最高125 kSPS的采样速率下,单次转化时间只有8 μs,所以,串行读取时间最好控制在6~7 μs以内。综合考虑后决定读取时钟SCLK为12 MHz,这样串行数据接口能在6 μs完成,满足最高采样率的要求。
图2为125 kSPS采样率下AD7609时序,为了达到125 kSPS采样率,选择了转换期间读取A/D转换结果,即前一次结果的读取要在后一次转换结束前完成,当BUSY信号变低后,表示内部已经完成转换,可以读取转换结果,CS*拉低期间表示当前正在串行读取数据,整个读取过程持续6 μs。从上图中可以看出,CS信号在BUSY信号变低前已经失效,提前大约2 μs,该时间完全符合芯片手册的要求,并且在实际测试中验证读取结果正确。
图2 AD7609采样时序(125 kSPS采样率)
2.4 APB接口内存映射
整个驱动模块对于Cortex—M3处理器而言相当于一块连续的内存地址,对其写入控制参数或读取RAM中的转换结果等同于处理器对相应的地址的读写操作。如图3所示,模块的起始地址为0x30000000,模块中控制参数的配置地址共有8个,对应数据采集通道1~8(地址0x30000001~0x30000008);通道1~8的配置数据含义定义完全一样,31~28位为采样序列类型,不同的采样序列类型对应于不同的采样点数,总共可配置3种不同的采样类型;27~25位为序列采样率,可配置8种不同采样率;24~16位为采样延迟点数,可配置采样延迟点数范围为0~511个点;15~0位为保留参数位,可用于后续的驱动模块的更新或其他功能。当所有参数配置完成后,可向地址0x30000000写入数据,表示启动一次数据转换,之后在地址0x30000100地址可以读取数据序列转换状态,读取数据为0x00002222表示转换完成,0x00001111表示正在转换中,需要继续等待。在0x30000100后的连续地址中存储了8个通道的采集结果,每个通道预留了512个采样点空间。
图3 AD7609驱动模块APB总线接口的内存映射
3 硬件实现
图4是系统的硬件电路模块,电路硬件围绕Smartfusion2 SoC和AD7609两个核心芯片,外部搭建有电源管理模块、50 MHz外部时钟源、复位电路、CAN收发器电路、JTAG调试接口、参考电压源等多个模块。整个电路板的尺寸仅为125 mm×45 mm,十分适用于电路尺寸要求严格的工业数据采集领域。电路系统上电后,5 V供电电流仅为84 mA,整个数据采集系统功耗低于0.5 W;8个通道能在8~104 μs之间的8种不同的采样周期下进行同步采样。
图4 系统硬件电路模块
4 结束语
本文介绍了以Smartfuion2 SoC FPGA和AD7609模数转换芯片为核心搭建的多通道数据采集系统。与传统的声波测井数据采集系统比较,该系统集成度高,软硬件配置简单,整体功耗低,稳定性和可靠性好,优势突出。
[1] Franco J L Arroyo,Ortiz M A Mercado,De Gopa S,等.声波测井新技术[J].国外测井技术,2007(2):53-66.
[2] 张 巍,杨 帆.偶极声波仪器浅析[J].国外测井技术,2012(4):66-70.
[3] 李 苏,李 辉,李春楠,等.数字声波测井的数据采集与处理电路设计[J].电子测试,2011(12):5-7.
[4] 张全文,师奕兵,张 伟,等.交叉偶极声波测井的数据采集与处理电路设计[J].测控技术,2009,28(7):25-28.
[5] 靳 鸿,祖 静,马铁华,等.基于SoC的智能可级联芯片设计[J].传感器与微系统,2010,29(7):131-133.
[6] 李 瑞,张春元,罗 莉.三种常用SoC片上总线的分析与比较[J].单片机与嵌入式系统应用,2004(2):5-8.
[7] 沈圣盛.基于APB总线的接口IP核设计与验证[D].西安:西安电子科技大学,2011.
[8] 秦 宇.基于APB总线的SPI接口IP核的设计与验证[D].贵州:贵州大学,2015.
张成晖(1991-),硕士研究生,主要研究领域为检测与电子技术。
Application of SoC FPGA in acoustic logging data acquisition system
ZHANG Cheng-hui, YE Zhao-hui, ZHANG Li-wei, WU Nan
(Department of Automation,Tsinghua University,Beijing 100084,China)
FPGA + DSP architecture is used in traditional data acquisition system complicates the hardware design, and increases the power consumption.In recent years,system on chip(SoC)FPGA is becoming popular in embedded systems.Acoustic logging data acquisition system based on SoC FPGA combines the advantages of both microcontroller subsystem(MSS)and FPGA fabric.The proposed data acquisition system uses SoC technology which simplifies the hardware design,reduces power consumption and improves the reliability.
acoustic logging; data acquisition; SoC FPGA
10.13873/J.1000—9787(2017)03—0150—03
2016—03—23
TP 23
A
1000—9787(2017)03—0150—03