微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于CPCI总线的测井数据采集板卡的设计

基于CPCI总线的测井数据采集板卡的设计

时间:10-20 来源:互联网 点击:

  随着数字化与测井技术的发展,对测井系统的稳定性、可靠性、兼容性、可升级性等性能提出了更高的要求,本文提出了一种适用于测井系统设备的CPCI(Compact PCI)高性能数据采集板卡硬件设计方案,能够有效地处理来自井下的复杂信号,并通过256 MB/s 高速CPCI总线桥接到主控设备。

  本板卡实现的主要功能是井下Encoder(深度脉冲)、TensiON(张力)、MMD(MagneTIc Mark Detection)和CCL(Casing Collar Locator)等信号的实时采集,采集数据在DSP中完成预处理,通过CPCI总线送入主控制器分析使用,此外,板卡还实现上电自诊断,关键数据在FRAM中的及时存储,RS232 串口定时发送深度数据和接收控制命令等其他功能。

  1 板卡总体结构

  整个板卡由FPGA、PCI桥片、DSP、A/D和D/A五大部分组成,其中FPGA选用Altera公司高性能低功耗Cyclone III系列芯片,PCI桥片选用PLX公司32 bit 66 MHz PCI9056芯片,DSP选用TI公司TMS320F2812芯片,A/D选用ADI公司16 bit 200 kS/s高精度高速采集芯片AD974,板卡结构框图如图1所示。该板卡工作过程是:板卡上电后,PCI9056向FPGA发出指令控制D/A产生诊断信号,诊断信号经由板卡各级模拟通路后环回到FPGA,然后FPGA把采集到的诊断信号送入DSP,DSP再通过FPGA把数据送回CPCI总线,完成整个板卡硬件的自诊断。自诊断完成后,D/A处于非工作状态,各信号由井下电缆送入,经过多级滤波放大后进行A/D采集,FPGA完成Tension、MMD和CCL等信号的采集和Encoder信号的处理,最终把数据送入DSP进行预处理,经DSP处理好的数据由CPCI总线送回主控制器。


  2 板卡硬件设计

  2.1 FPGA控制器的总体设计

  本板卡的数字系统共有2个主控制器,分别为数据采集板卡上的DSP和CPCI总线上的CPU主控机,板卡使用PCI9056桥片实现CPCI总线与局部总线间的转化, DSP与CPCI总线通过中断方式实现数据交换。其中FPGA调用QUARTUS软件自带IP核实现32 KB双口RAM,并把双口RAM分成大小相等的两部分,一部分用于CPCI总线向DSP传输数据,另一部分用于DSP向CPCI总线传输数据,避免了总裁的使用和数据的丢失。FPGA作为数据采集板卡数据中转站的同时,主要实现A/D数据的采集,Encoder脉冲信号的去抖动处理、计数和相位判断。FPGA实现功能框图如图2所示。


  2.2 A/D数据采集模块设计

  Tension、MMD和CCL等信号均是来自井下的低频微弱小信号,并且由于井下环境复杂,信号容易被干扰,处理不当容易造成数据失效,所以本板卡对三种信号在模拟电路上做了多级滤波放大处理。经实际环境测试,三路信号的主要输入干扰集中在60 Hz以上,因此在输入端设计40 Hz、70 Hz和120 Hz三阶RC滤波电路做前级滤波处理,使滤波器具有窄的过渡带,有效的滤除60 Hz以上的干扰信号,避免干扰信号进一步放大无法滤除,图3(a)为前级滤波电路的频谱特性仿真结果。为了便于信号的采集,需设计运放电路将信号放大至A/D量程范围,这就不可避免会引入PCB、运放等造成的中高频噪声,所以在信号进入A/D前做了进一步有源滤波处理,图3(b)为有源滤波器的频谱特性仿真结果。实际测试结果也证明经过多级滤波,电路抗干扰能力明显增强。


  本设计选用了高速高精度ADC AD974芯片,在4个通道间以轮询方式进行采样,每个通道的实际采样转换率为50 kS/s,在FPGA中设置一个数据更新寄存器,进行每一次数据采集完成的实时跟踪。此种工作方式是否能可靠稳定地采集数据关键有两点,一是外部时钟频率是否适中,本设计采用12 MHz的频率,二是要保证A/D内部的采样时间(Acquisition Time)不能小于1 μs,并且4个通道在轮询切换时,地址锁存信号WR1和WR2要在采样前一个周期设置完成。

  AD974在板卡上电后用Quartus II SignalTap实时观测的时序如图4所示。其中ADC_A0和ADC_A1为A/D4个通道地址编码信号,ADC_WR0_N和ADC_WR1_N为地址锁存信号,低电平有效,当前锁存地址作为下一次采集通道有效地址。当ADC_RC_N信号置为低电平时A/D开始将采集到的模拟信号向数字信号转换,并在此时送出一个时钟周期的ADC_DATACLK信号,使能A/D同步信号,此时如果A/D空闲则ADC_BUSY_N信号自动拉低,表示A/D已经开始转换数据,随后将ADC_RC_N置高并送出采样时钟信号,便可在ADC_DATA上开始读前一次转换完成的数据。当本次A/D数据转换完成后ADC_BUSY_N信号将自动置高,表明A/D本次转换完成,进入下一次模拟信号采样。


  2.3 Encoder信号处理模块设计

Encoder信号在实际设备上分为两路信号,分别为A信号和B信号,当井下设备上提时A信号相位超前B信号90°,当井下设备下放时A信号相位滞后B信号90°,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top