豐 揚 李國玉 馬明學
(中海油田服務股份有限公司 北京 101149)
隨鉆電阻率測井對穩(wěn)定性要求較高,每只儀器均需經(jīng)過全面測試才能投入使用。一般情況下隨鉆電阻率儀器在進行實鉆試驗之前,只能在車間或者室外依據(jù)試驗條件簡單測量幾個點的響應,信息量有限;而如果進行實鉆試驗,成本及風險都很高,這是一對矛盾。為了提高最終實鉆試驗的成功率,本文設計的儀器可以將隨鉆電阻率儀器掛接在電纜測井系統(tǒng)上面,在電纜井中測試隨鉆電阻率儀器的響應性能。
本文設計的儀器(以下簡稱轉(zhuǎn)換平臺)實際是連接隨鉆電阻率儀器和電纜測井地面系統(tǒng)的橋梁。電纜測井地面系統(tǒng)的指令通過電纜傳輸?shù)睫D(zhuǎn)換平臺,通過轉(zhuǎn)換平臺轉(zhuǎn)換為隨鉆測井儀器通訊總線協(xié)議(即中海油服內(nèi)部定義的TBUS 總線協(xié)議)所約定的曼碼數(shù)據(jù)格式下發(fā)給隨鉆電阻率儀器,儀器響應命令后將自身測量的數(shù)據(jù)上傳到平臺上,平臺將數(shù)據(jù)轉(zhuǎn)換為電纜測井儀器通訊總線協(xié)議(即中海油服內(nèi)部定義的EDIB 總線協(xié)議)所約定的曼碼格式上傳到地面系統(tǒng)上,供測井解釋工程師分析儀器響應性能。轉(zhuǎn)換平臺和其他儀器連接關系如圖1所示。
圖1 轉(zhuǎn)換平臺和其他儀器連接關系
系統(tǒng)整體設計采用DSP +FPGA +硬件編解碼器的架構(gòu)。其中,DSP 是系統(tǒng)控制核心,F(xiàn)PGA 負責EDIB 總線通信的曼碼編解碼;硬件編解碼器(HI15530[1])負責TBUS 總線通信的曼碼編解碼,如圖2 所示。
圖2 轉(zhuǎn)換平臺功能示意圖
轉(zhuǎn)換平臺與電纜測井系統(tǒng)的通訊利用曼切斯特編解碼模塊完成,該模塊使用Verilog -HDL 語言在FPGA(A3P060)內(nèi)部設計實現(xiàn)編、解碼,F(xiàn)PGA 被配置到DSP(TMS320F2812[2])的外部擴展區(qū)XINTF Zone 0,通過片選信號XZCS0AND1 來選通FPGA。當FPGA 收到地面系統(tǒng)指令時,先進行曼碼解碼,然后會上升沿觸發(fā)DSP的中斷XINT2,DSP 響應中斷,通過地址總線(A0 -A4、A13,起始地址是FPGA 所在的0X02000)訪問相應存儲單元,通過數(shù)據(jù)線(D0 至D15)讀取FPGA 存儲單元的指令。DSP 和FPGA 的電路設計分別如圖3、圖4 所示。
圖3 DSP 電路設計圖
隨鉆電阻率儀器通過TBUS 總線與轉(zhuǎn)換平臺進行通信,轉(zhuǎn)換平臺控制電路中的DSP 通過SPI 接口及曼碼編解碼模塊(芯片HI15530 及SN74LVC157 組成)將地面系統(tǒng)指令下發(fā)給隨鉆電阻率儀器;數(shù)據(jù)也要通過該方式上傳到DSP 上面。TBUS 上面曼碼的傳輸速率是40kbps,而DSP 輸出的系統(tǒng)時鐘(SYSOUTCLK[3])、高速時鐘(HSPCLK)都是12.288MHz×5/2 =30.72MHz,經(jīng)過DSP內(nèi)部64 分頻得到時鐘CLK12X 在55 腳定時器4(Timer 4)輸出480kHZ 頻率的方波信號,正好滿足15530[4]編、解碼時鐘(23 腳ENCODER CLK、5 腳DECODER CLK)要求是數(shù)據(jù)傳輸速率的12 倍。DSP 的SPI[5]口配置是在SPICTL 寄存器內(nèi)完成,本設計中設置MASTER/SLAVE=0,表明DSP 工作在從模式,15530 工作在主模式,當DSP 的SPI 為從模式時,時鐘SPICLK 需要外設時鐘提供,這里就需要15530 的編碼、解碼時鐘給SPI 模塊使用。編解碼電路如圖5 所示。
2.2.1 轉(zhuǎn)換平臺通過TBUS 總線下發(fā)指令到隨鉆電阻率儀器
地面系統(tǒng)曼碼指令經(jīng)FPGA 解碼后,F(xiàn)PGA 觸發(fā)DSP的中斷2(XINT2),DSP 響應中斷讀取分配給FPGA 的外設空間地址上的指令,然后DSP 將46 腳輸出0,則與之相連的多路選擇器SN74LVC157 的1 腳被置低,A 通道使能;同時DSP 將指令放入SPI 口的發(fā)送串行輸出緩沖寄存器SPITXBUF 里。DSP 將57 腳置高,則15530 的SYNC SELECT 為高電平,表示編碼的字是命令同步。DSP 再將53 腳輸出1,則硬件編碼器HI15530 的19 腳被置高,編碼使能,此時HI15530 的21 腳輸出高電平并送到多路選擇器的5 腳,則它的7 腳輸出高電平,經(jīng)過反向器為低電平,再送到DSP 的SPI 口使能端35 腳,此時指令就通過SPI 口的41 口(SPISOMI)輸入到HI15530 的編碼入口18 腳。編碼過程是:在ENCODER SHIFT CLK(此時鐘是ENCODER CLK 的1/12,即40kHz)的下降沿,如果19 腳(ENCODER ENABLE)為高電平則編碼開始,編碼周期長度是20 個ENCODER SHIFT CLK。當編碼器準備好接收數(shù)據(jù)時,SEND DATA 輸出高電平并維持16個ENCODER SHIFT CLK。在16 個周期內(nèi)數(shù)據(jù)在ENCODER SHIFT CLK 上升沿由SERIAL DATA IN 進入編碼器,最后再加1bit 的奇偶校驗位。3bit 同步位和16bit數(shù)據(jù)及1bit 校驗位共20bit 編碼后在BIPOLAR ONE OUT和BIPOLAR ZERO OUT 輸出給TBUS 驅(qū)動電路,進而發(fā)送到隨鉆電阻率儀器上面。
2.2.2 隨鉆電阻率儀器通過TBUS 總線上傳數(shù)據(jù)到轉(zhuǎn)換平臺
圖4 FPGA 電路設計圖
圖5 TBUS 總線曼碼編解碼電路
隨鉆電阻率儀器數(shù)據(jù)通過驅(qū)動電路到達15530 數(shù)據(jù)輸入接口BIPOLAR ZERO IN、BIPOLAR ONE IN,15530運行后會一直監(jiān)聽這兩個口,若出現(xiàn)一個有效的同步字符及2bit 有效數(shù)據(jù),那么一輪解碼開始。當有效同步位被識別后,同步類型將在COMMAND/DATA SYNC(10腳)端口輸出到DSP,1 代表命令,0 代表數(shù)據(jù),并且維持16 個DECODER SHIFT CLK(40 kHz)。與此同時TAKE DATA 引腳會輸出高電平并送到多路選擇器的6 腳,此信號會維持到16bit 數(shù)據(jù)在SERIAL DATA OUT 引腳輸出完畢。由于在中斷XINT2 服務子程序執(zhí)行完之前,DSP 將46 腳置1,則與之相連的多路選擇器SN74LVC157 的1 腳被置1,B 通道使能;此時HI15530 的3 腳(TAKE DATA)輸出高電平并送到多路選擇器的6腳,則它的7 腳輸出高電平,經(jīng)過反向器為低電平,再送到DSP 的SPI 口使能端35 腳,SPI 被使能。這樣在DECODER SHIFT CLK 的上升沿16bit 被依次輸出到SPI 的接收緩沖寄存器SPIRXBUF 里。16bit 輸出完畢后進行奇偶校驗,如果正確,那么在VALID WORD(1 腳)輸出高電平表示一次解碼完畢,這個上升沿會觸發(fā)DSP 的中斷1(XINT1),DSP 響應中斷讀取SPIRXBUF 里的數(shù)據(jù)并存儲在內(nèi)部RAM 中。在中斷1 服務子程序里DSP 在讀出SPIRXBUF 中數(shù)據(jù)后會復位SPI 口,這是為了此時如果15530 再次收到隨鉆儀器數(shù)據(jù)時,可以繼續(xù)寫入到該緩沖器內(nèi)。隨鉆儀器會將啟動一次采集后測量的數(shù)據(jù)通過SPI 發(fā)送到DSP 存儲,當?shù)孛嫦到y(tǒng)來上傳數(shù)據(jù)指令時,數(shù)據(jù)就會通過并行數(shù)據(jù)總線(D0 至D15)上傳到FPGA 的三級FIFO 中,并進行曼碼編碼,然后通過EDIB 總線上傳給地面測井系統(tǒng)。
EDIB 通訊協(xié)議[6]是中海油服公司具有自主知識產(chǎn)權(quán)的ELIS 測井系統(tǒng)所使用的通訊協(xié)議,總線采用CMD、Mode2、Mode5、Mode7 四種工作模式,其中本文用到的CMD 的傳 輸速率為20. 83kbps,Mode5 的 傳 輸 速率為93.75 kbps。該協(xié)議上的命令和數(shù)據(jù)傳輸采用差分曼徹斯特編碼方式,高電平到低電平的跳變代表“1”,低電平到高電平的跳變代表“0”。
轉(zhuǎn)換平臺控制電路以DSP (TMS320F2812)為核心,完成測控命令的轉(zhuǎn)發(fā)和解讀,程序總體流程圖如圖6 所示。首先是系統(tǒng)初始化,然后開外部中斷1、2,中斷1 是編解碼器15530 收到隨鉆儀器數(shù)據(jù)后觸發(fā)DSP 產(chǎn)生的。
中斷2 是地面系統(tǒng)下發(fā)指令給轉(zhuǎn)換平臺,由FPGA解碼后觸發(fā)DSP 產(chǎn)生的。接下來使能看門狗。然后程序進入while(1)的死循環(huán),除非有中斷1 或者2 到來。某一時刻某一中斷進來,系統(tǒng)進行判斷,如果是中斷2,執(zhí)行以下判斷語句。如果是授時指令,那么DSP 通過SPI 接口將當前時間發(fā)送給15530 編碼后通過TBUS 總線傳送到隨鉆儀器上。如果是采集指令,也是這樣。如果是上傳數(shù)據(jù)指令,每次都先檢查已寫入FPGA 的FIFO的數(shù)據(jù)長度,如果當前長度小于全部數(shù)據(jù)總長度時,DSP通過16 位并行數(shù)據(jù)總線將數(shù)據(jù)傳輸給FPGA 的三級FIFO,然后跳出中斷。此時FPGA 統(tǒng)計當前字數(shù),如果此時數(shù)據(jù)長度不夠,會繼續(xù)發(fā)來中斷2,DSP 響應中斷繼續(xù)往FPGA 內(nèi)寫數(shù)據(jù),直到所有數(shù)據(jù)寫完,即使FPGA 再發(fā)中斷DSP 也不會給數(shù)據(jù)。這時FPGA 將數(shù)據(jù)編碼并發(fā)送到地面系統(tǒng)。如果DSP 判斷本次來的是中斷1,表示15530 收到了隨鉆儀器通過TBUS 上傳的數(shù)據(jù),DSP 響應中斷,使能SPI 接口,將數(shù)據(jù)讀進來緩存,等待地面系統(tǒng)讀取數(shù)據(jù)。
圖6 DSP 程序流程圖
轉(zhuǎn)換平臺與電纜測井系統(tǒng)通訊所使用的曼碼編解碼模塊由FPGA 實現(xiàn)。利用Verilog HDL 語言實現(xiàn)FPGA內(nèi)部的編解碼邏輯電路,通過ModelSim 對代碼進行前仿真,CMD 通道下發(fā)到轉(zhuǎn)換平臺的解碼指令如圖7 所示,指令內(nèi)容是0x3241,表示讓轉(zhuǎn)換平臺上傳數(shù)據(jù)給電纜測井系統(tǒng),在DATA_WORD 輸出。轉(zhuǎn)換平臺上傳給地面系統(tǒng)的編碼數(shù)據(jù)(部分截圖)如圖8 所示,數(shù)據(jù)開始是8 個0,然后是同步頭1,然后就是依次寫入3 個FIFO 的數(shù)據(jù)0x5A3C、0xAC35、0x35C5。由上述波形可見,下發(fā)指令和上傳數(shù)據(jù)都正確。
圖7 地面系統(tǒng)下發(fā)到轉(zhuǎn)換平臺的指令
圖8 轉(zhuǎn)換平臺上傳到地面系統(tǒng)的數(shù)據(jù)
系統(tǒng)整體調(diào)試后測試結(jié)果如圖9 所示。圖中數(shù)字1波形代表地面系統(tǒng)下發(fā)到轉(zhuǎn)換平臺上面的采集指令(碼率20.83kbps),圖中數(shù)字3 波形代表儀器通過TBUS 總線傳輸給轉(zhuǎn)換平臺數(shù)據(jù)(碼率為40kbps)。當?shù)孛嫦到y(tǒng)給轉(zhuǎn)換平臺發(fā)送上傳數(shù)據(jù)指令時(如圖中數(shù)字2 所示波形,碼率20.83kbps),轉(zhuǎn)換平臺要在20ms 內(nèi)響應該指令把之前收到的電阻率數(shù)據(jù)打包發(fā)送到地面系統(tǒng),如圖中數(shù)字4 所示波形(碼率為93.75kbps)。其余波形代表發(fā)送給其他儀器的指令。
圖9 系統(tǒng)聯(lián)調(diào)結(jié)果
目前該設計已投入實際測井使用,測得的電阻率數(shù)據(jù)通過解釋反演得到電阻率曲線,和成熟儀器對比后發(fā)現(xiàn)相關性較好,曲線合理,同時測試過程中轉(zhuǎn)換平臺誤碼率也較低,大約為千分之一,可以滿足測井要求。該轉(zhuǎn)換平臺并不僅限于隨鉆電阻率儀器掛接在電纜測井系統(tǒng)上面使用,通過更改DSP 代碼,也可以應用于其他隨鉆儀器在電纜井中測試使用,具有一定通用性。
[1] HOLT INTEGRATED CIRCUITS INC. HI - 15530 5V/3.3VManchester Encoder/Decoder[Z]. 2013(資料)
[2]TEXAS INSTRUMENTS. TMS320F2812 Digital Signal Processors Data Manual[Z]. April 2001 – Revised March 2011:42 -43
[3]蘇奎峰,呂 強,耿慶峰,等. TMS320F2812 原理與開發(fā)[M].北京:電子工業(yè)出版社,2005:22 -23
[4]王位賓.HD-15530[J].遙測遙控,1992,17(5):24 -27
[5]TEXAS INSTRUMENTS. TMS320x281x Serial Peripheral Interface Reference Guide[Z]. June 2002 –Revised February 2009:10 -30
[6]李 蘇,李 輝,李春楠,等. FPGA 技術(shù)在數(shù)字聲波升級儀器中的應用[J].電子質(zhì)量,2011,32(6):40 -42