随钻电磁波电阻率测井仪存储单元设计 下载本文

内容发布更新时间 : 2024/12/23 14:46:44星期一 下面是文章的全部内容请认真阅读。

随钻电磁波电阻率测井仪存储单元设计

【摘要】存储单元电路设计是随钻电磁波电阻率测井仪电路系统中的难点之一。整个设计结合了SRAM、EEPROM、FLASH三种存储器,所设计的存储器管理结构分为参数表管理和大容量测井数据存储管理两个类型,可以满足仪器大容量数据存储、仪器配置、程序远距离更新等功能,适应随钻电磁波电阻率测井仪的技术要求。

【关键词】随钻电阻率;存储单元;数据管理;测井 1.前言

随钻测井领域,随钻电磁波电阻率测井仪是随钻测井仪器中的重要装置,其采用电磁波工作方式,适用于各种导电和不导电类型的钻井液,能够测量地层随着深度变化的视电阻率曲线。然而在现场作业中,限于泥浆传输速率的制约,只有少数重要的数据能实时传至地面系统[1],用于现场分析并指导钻井的钻进工作,大量的数据需要存储在仪器的存储单元中,待仪器从井底提出后,再读出存储单元中的数据并加以解释应用。所以对于随钻电阻率测井仪来说,数据的存储是其重要的功能,而存储单元的设计也就成为研究的重点之一。

2.随钻电阻率测井仪的存储单元设计

在随钻电阻率测井仪电路系统的设计中,主控电路是其控制通讯核心部分,负责该仪器对外的通讯,以及对该仪器内部逻辑的控制以及测量数据的存储。

整个主控系统的电路设计(如图1)分为实时时钟电路设计,温度采集电路设计,DSP单元设计,存储单元电路设计,随钻总线通信单元设计,随钻总线接口电路设计,电源单元设计七个部分,存储单元电路设计是主控单元电路设计的重点。

存储器模块主要包括三种类型的存储器芯片,SRAM,EEPROM和大容量FLASH。DSP与SRAM、EEPROM、FLASH以及FPGA之间,通过直接寻址式外扩并行总线进行通信,外扩并行总线主要包括16位宽数据线XD0-XD15,19位宽地址线XA0-XA19,以及写使能引脚XWE,读使能引脚XRD,片选引脚CS0,CS2,CS6引出。

而在本系统中,具有三个存储器外设以及一个FPGA芯片,因而需要使用额外的片选控制引脚,在本设计中使用通用IO口来实现。图2为存储器接口电路设计图。

各类型存储器的容量大小选择由系统需求决定。

RAM芯片在主控板中的作用是作为程序运行缓存、通信收发缓存及软件程序更新缓存的作用。该芯片采用直接并行总线寻址的方式进行存取,设计中使用DSP的Zone6空间对该芯片进行地址映射,DSP的CS6引脚连接SRAM芯片的片选引脚,DSP的读写使能引脚WR、RD分别与SRAM的读写使能引脚连接。

EEPROM在主控电路中,用于存储校正刻度参数,存储仪器运行参数,以及大容量存储器管理映射表。由于EEPROM读写寿命有限,为保证数据的有效性,在容量选择上留有冗余,用于某些单元损坏时,重新分配存储地址。

在主控板的大容量存储芯片选择中,选用NAND FLASH存储芯片。芯片的容量由系统数据采集需求决定,按照指标要求,系统数据存储容量应大于32MByte,考虑到FLASH存储芯片的易失效性,和数据存储的高可靠性,进行冗余设计。

NANDFLASH存储芯片,由于其存储器结构特点,采用非直接位寻址的结构,因而,在与DSP的接口设计中,FLASH的8位线宽数据输入输出IO口与DSP的数据总线的低8位进行连接,利用总线操作命令,对FLASH进行数据读写。同时,使用DSP的通用IO口连接FLASH片选引脚CE、写入保护引脚WP、地址锁存引脚ALE,和命令锁存引脚CLE。

3.存储单元的管理

对于随钻测井,测井数据存储是其重要功能,可靠性要求高,同时需便于管理,要求读取速度高[2]。存储器管理的目的是为系统提供一个结构化的存储器系统,能够便于测井程序的设计,便于测井数据存储,存储器有效性的验证,以及数据的上传加载等。

存储器管理设计从功能上可以分为参数表存储器管理,测井数据存储管理两大部分。参数表包括系统参数表,如刻度表、设备参数表,设备状态服务表等。测井数据存储管理包括存储器映射表,FLASH存储区,以及SRAM缓存区。

在随钻电阻率测井仪中,大多数需要存储的数据类型和大小是固定的,所有的数据长度是可预知的,因而在本设计中,采用的是静态分配方法。

对于EEPROM内的存储数据,按照固定不等长分区的方法进行划分。SRAM存储器内按照固定不等长划分。FLASH存储器内按照固定等长划分。

图3为本研究中设计的主控板存储器存储器分配结果。 4.测井数据存储程序设计

主控板在接收完一次测井周期所产生的测井数据后,直接将数据存储于FLASH中。本设计中选用的FLASH芯片支持任意地址的续存,在一次擦除后,允许多次向非重复的地址写入数据。因而,从硬件上支持这样操作。

测井数据程序按照上文介绍的存储器结构进行设计。测井数据包括存储器格式化和测井数据写入两个步骤。

存储器格式化主要包括EEPROM内索引表,存储器映射表的初始化和FLASH存储器的片内存储器有效性验证及内存擦除。内存索引表的初始化按照EEPROM内索引表定义依次进行初始化,存储器映射表的初始化实际上就是对FLASH存储器内存储单元进行验证的过程。

测井数据写入程序主要在随钻总线通信中进行调用,在主控板接收到测控板发送的一次测井数据包后,对测井数据包进行二次封装并存储。

二次封装过程在测井数据存储程序中完成。封装过程包括在帧头加上实时时钟数据和仪器温度数据,在帧尾添加总和校验数据,用于数据下载后对测井数据有效性的验证。

测井数据存储程序的运行流程如图4所示。

在随钻电阻率测井仪中,存储器的可靠性和数据的有效性,是设计的关键,在存储器软硬件设计上,要进行充分的考虑。

5.存储器可靠性分析

影响存储器可靠性的因素主要有硬件的可靠性和软件的可靠性两个因素。存储器管理在硬件设计中,综合考虑了SRAM、EEPROM、NAND FLASH三种存储器的特性。影响数据存取可靠性的因素主要有突发的断电,随机干扰,以及存储器损坏。对于EEPROM,在本设计中,采用了加密写入的方法,保证其内部数据不受上电复位等的影响,同时,在程序设计中,尽量避免对其频繁的操作,具体的,对存储器映射表采用无效置位,有效不操作的方式进行存储器映射表的更新。设计中,采用了读写寿命较长的SRAM作为缓存,保证了在频繁数据缓

存的过程中,存储器不易受损坏。

存储器管理中进行了冗余设计,SRAM和EEPROM的容量大于程序中使用容量的四至五倍,在某些字节损坏的情况下,可以将存储字段整体搬移,以增强存储器使用寿命。

本存储器设计中引入了坏块管理机制,包括坏处映射,动态坏块检测和失效检测。在测井数据存储程序中,采用多重写入有效验证,对于每一帧数据的写入,严格保证其写入的有效性,当发生写入无效时,利用SRAM缓存区,对当前区段的历史数据进行整体搬移到有效区段,以保证在新数据的写入中,历史数据不受到破坏,同时新写入的数据有效存储。

6.小结

本文重点介绍了一种自主设计的混合式大容量存储器管理结构和相关程序设计,同时结合了SRAM、EEPROM、FLASH三种存储器的优点,以动态与静态结合的方式分配存储器空间。所设计的存储器管理结构分为参数表管理和大容量测井数据存储管理两个类型。参数表管理以索引表和参数表格构成文件系统,可在仪器运行时动态加载和更新。测井数据管理以存储器映射表、测井数据收发缓存和FLASH存储器固定块分区为核心构成,有效的保证数据存储的有效性。采用该结构,极大的方便了测井管理程序设计,上位机可方便的查看存储器信息,包括存储器有效空间总量,存储器坏道情况,测井数据存储情况等。

本设计应用在中海油服随钻电磁波电阻率测井仪的研制中,通过试验得到了良好的效果,可为相关设备的设计及研发提供支持。

参考文献

[1]彭欣芸.随钻测量系统信号传输方式的研究[D].西南石油大学,2011.

[2]李会银,苏义脑,盛利民,et al.随钻测井井下大容量存储器通用模块设计[J].大庆石油学院学报,2009,32(6):29-32.