本發(fā)明屬于三維聲波測井技術領域,更為具體地講,涉及一種基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置。
背景技術:
三維聲波測井是在交叉偶極聲波測井技術基礎上發(fā)展起來的新一代聲波測井技術,其測量原理是利用目前所有的聲波測量模式即單極、偶極及斯通利波,對各種頻帶的波形進行綜合測量以獲取地層的三維聲波特性即縱波時差、橫波及斯通利波在井筒軸向、徑向和周向的變化,對地層特性的方位性提供完整的描述。
傳統(tǒng)的聲波測井只是測量特定頻帶的聲波信號,測量的數(shù)據(jù)量較小,因此低速的傳輸方式就能滿足對數(shù)據(jù)傳輸速度的要求。而三維聲波測井測量數(shù)據(jù)量十分龐大,對于數(shù)據(jù)傳輸?shù)目煽啃砸蠛芨摺?/p>
當前,三維聲波測井儀器的幾何尺寸有特殊要求,圓柱狀的儀器內(nèi)部空間十分有限,而需要布線的數(shù)量又較多,包括了電源總線、LVDS命令線、LVDS數(shù)據(jù)線、LVDS時鐘線、復位信號線、啟動采集命令線,而近探頭采集電路與控制電路之間電路連線數(shù)量受到限制。若采用基于盲過采樣數(shù)據(jù)恢復技術的三維聲波高速串行傳輸技術,既可以解決總線位置,又很好的解決了儀器空間有限的問題。
技術實現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術的不足,提供一種基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置,利用盲過采樣串行數(shù)據(jù)恢復技術,使三維聲波測井數(shù)據(jù)能夠自同步高速傳輸。
為實現(xiàn)上述發(fā)明目的,本發(fā)明一種基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置,其特征在于,包括:
一控制電路,使用TCP/IP協(xié)議實現(xiàn)控制電路與地面系統(tǒng)的以太網(wǎng)進行通信,接收地面系統(tǒng)下發(fā)的命令,并將該命令通過基于Modbus協(xié)議的RS-485接口下發(fā)至MLVDS交換器;同時,控制電路使用帶有DMA功能的SPI控制器從MLVDS交換電路獲取三維聲波測井數(shù)據(jù),并發(fā)送至地面系統(tǒng);
一MLVDS交換電路,分為甲、乙兩部分,二部分間使用高速總線進行連接;甲部分負責將控制電路下發(fā)的命令發(fā)送給乙部分,進而配置采集電路;乙部分負責將采集電路得到的三維聲波測井數(shù)據(jù)發(fā)送給甲部分,進而上傳到控制電路和地面系統(tǒng);
測井數(shù)據(jù)在傳輸過程中,MLVDS交換電路根據(jù)MLVDS電氣標準對測井數(shù)據(jù)進行串轉并規(guī)范化和BPRZ解碼,并使用盲過采樣器取得測井數(shù)據(jù)收發(fā)需要的時鐘信息;
一采集電路,用來接收MLVDS電路的甲部分下發(fā)的命令,再利用FPGA解析命令,得到相應的采樣參數(shù);控制分辨率為24位的高精度模數(shù)轉換器按照該采樣參數(shù)對信號采樣,得到三維聲波測井數(shù)據(jù),再把三維聲波測井數(shù)據(jù)存儲于FPGA的雙端RAM中,并上傳給MLVDS交換電路的乙部分。
進一步的,所述的MLVDS交換電路的甲、乙兩部分電路均含有:
一過采樣電路,使用多相時鐘D觸發(fā)器采樣控制電路下發(fā)的命令或采集電路上傳的三維聲波測井數(shù)據(jù),并發(fā)送給數(shù)據(jù)初步恢復電路;
一初步數(shù)據(jù)恢復電路,用于接收過采樣電路輸出的數(shù)據(jù)后,并產(chǎn)生1位的初步恢復數(shù)據(jù)和add、drop兩位信號;其中,add、drop的取值為1或0,當add取值為1時表示發(fā)生數(shù)據(jù)丟失,當drop取值為1時表示發(fā)生數(shù)據(jù)復用,當add、drop的取值均為0時表示初步恢復的數(shù)據(jù)正確;
一數(shù)據(jù)修正電路,用于將初步恢復的數(shù)據(jù)移入位寬為2N+1的移位寄存器中,移位寄存器根據(jù)add和drop的值進行移位;
設移位寄存器的第i位為恢復數(shù)據(jù),第N位為默認的恢復數(shù)據(jù);那么當add為1時,移位寄存器右移兩位,移位寄存器有效位置右移一位,此時第i+1位為恢復出的數(shù)據(jù);當drop為1時,移位寄存器未進行移位,移位寄存器有效位置左移一位,此時第i-1位為恢復出的數(shù)據(jù);當add和drop都為0時,移位寄存器右移一位,移位寄存器的有效位置保持不變;最終把移位寄存器有效位置的數(shù)據(jù)作為盲過采樣的輸出。
本發(fā)明的發(fā)明目的是這樣實現(xiàn)的:
本發(fā)明基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置,通過MLVDS甲乙交換電路來實現(xiàn)控制電路和采集電路之間的通信。控制電路通過MLVDS甲電路下發(fā)采樣的參數(shù)命令給采集電路,采集電路通過MLVDS乙電路接收采樣命令,并把采樣得到的數(shù)據(jù)通過MLVDS乙電路上傳給控制電路,控制電路通過MLVDS乙電路接收采樣得到的數(shù)據(jù),最終把數(shù)據(jù)上傳給地面系統(tǒng)。整個裝置的核心在于MLVDS交換電路,MLVDS交換電路基于盲過采樣技術實現(xiàn)采樣命令和數(shù)據(jù)在控制電路和采集電路之間穩(wěn)定可靠的傳輸,滿足了三維聲波測井儀對數(shù)據(jù)穩(wěn)定性的要求。
同時,本發(fā)明基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置還具有以下有益效果:
(1)、基于過采樣技術的三維聲波測井數(shù)據(jù)恢復裝置,是一種自同步的數(shù)據(jù)傳輸模型,即在MLVDS電路的發(fā)送端只發(fā)送數(shù)據(jù)或命令,但是數(shù)據(jù)或命令中包含發(fā)送時鐘的信息,在MLVDS電路的接收端進行過采樣來恢復數(shù)據(jù)或命令;因此本裝置只設計了MLVDS數(shù)據(jù)線和命令線,去掉了MLVDS時鐘線,以最大可能減少電路連線。
(2)、三維聲波測井儀在實際工作中采集電路采集的測井數(shù)據(jù)量非常大,需要數(shù)據(jù)接收模塊確保接收數(shù)據(jù)的準確性;過采樣技術很好解決了這一問題,其技術核心是MLVDS電路的發(fā)送端不需要下發(fā)時鐘給MLVDS電路的接收端,因此,接收端在接收并恢復數(shù)據(jù)時,不需要考慮時鐘經(jīng)長距離的時鐘線下發(fā)后而導致的發(fā)送端和接收端時鐘不同步的問題,從而很好的解決了因時鐘不同步造成的恢復數(shù)據(jù)出錯的問題,確保了數(shù)據(jù)的可靠性。
附圖說明
圖1是本發(fā)明基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置原理圖;
圖2是過采樣時序圖及過采樣同步電路圖;
圖3是初步數(shù)據(jù)恢復電路原理圖;
圖4是數(shù)據(jù)丟失、復用、錯誤時的時序圖;
圖5是數(shù)據(jù)修正模塊的原理圖;
圖6是移位寄存器根據(jù)add_drop的值進行移位示意圖。
具體實施方式
下面結合附圖對本發(fā)明的具體實施方式進行描述,以便本領域的技術人員更好地理解本發(fā)明。需要特別提醒注意的是,在以下的描述中,當已知功能和設計的詳細描述也許會淡化本發(fā)明的主要內(nèi)容時,這些描述在這里將被忽略。
實施例
為了方便描述,先對具體實施方式中出現(xiàn)的相關專業(yè)術語進行說明:
MLVDS(Multipoint low Voltage Differential Signaling):多點低電壓差分信號;
TCP/IP(Transmission Control Protocol/Internet Protocol):網(wǎng)絡通訊協(xié)議;
Modbus:一種工業(yè)現(xiàn)場總線協(xié)議;
RS-485:一個定義平衡數(shù)字多點系統(tǒng)中的驅動器和接收器的電氣特性的標準;
DMA(Direct Memory Access):直接內(nèi)存存取;
BPRZ(Bipolar Return-to-Zero):雙極性歸零制;
FPGA(Field-Programmable Gate Array):現(xiàn)場可編程門陣列;
RAM(Random-Access Memory):隨機存取存儲器;
圖1是本發(fā)明基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置原理圖。
在本實施例中,如圖1所示,本發(fā)明一種基于盲過采樣的三維聲波測井數(shù)據(jù)自同步傳輸裝置,主要包括控制電路、MLVDS交換電路和采集電路。
控制電路,使用TCP/IP協(xié)議實現(xiàn)控制電路與地面系統(tǒng)的以太網(wǎng)進行通信,接收地面系統(tǒng)下發(fā)的命令,并將該命令通過基于Modbus協(xié)議的RS-485接口下發(fā)至MLVDS交換電路,其中,地面系統(tǒng)下發(fā)的命令主要包括:三維聲波的采樣點數(shù)和采樣周期等;同時,控制電路使用帶有DMA功能的SPI控制器從MLVDS交換電路獲取三維聲波測井數(shù)據(jù),并發(fā)送至地面系統(tǒng)。
MLVDS交換電路,如圖1所示,分為甲、乙兩部分,二部分間使用高速總線進行連接,且均含有:
過采樣電路,使用多相時鐘D觸發(fā)器采樣控制電路下發(fā)的命令或采集電路上傳的三維聲波測井數(shù)據(jù),并發(fā)送給數(shù)據(jù)初步恢復電路;
初步數(shù)據(jù)恢復電路,用于接收過采樣電路輸出的數(shù)據(jù),并產(chǎn)生1位的初步恢復數(shù)據(jù)和add、drop兩位信號;其中,add、drop的取值為1或0,當add取值為1時表示發(fā)生數(shù)據(jù)丟失,當drop取值為1時表示發(fā)生數(shù)據(jù)復用,當add、drop的取值均為0時表示初步恢復的數(shù)據(jù)正確;
數(shù)據(jù)修正電路,用于將初步恢復的數(shù)據(jù)移入位寬為2N+1的移位寄存器中,移位寄存器根據(jù)add和drop的值進行移位;
設移位寄存器的第i位為恢復數(shù)據(jù),第N位為默認的恢復數(shù)據(jù);那么當add為1時,移位寄存器右移兩位,移位寄存器有效位置右移一位,此時第i+1位為恢復出的數(shù)據(jù);當drop為1時,移位寄存器未進行移位,移位寄存器有效位置左移一位,此時第i-1位為恢復出的數(shù)據(jù);當add和drop都為0時,移位寄存器的有效位置保持不變;最終把移位寄存器有效位置的數(shù)據(jù)作為盲過采樣的輸出;
其中,甲部分負責將控制電路下發(fā)的命令發(fā)送給乙部分,進而配置采集電路;乙部分負責將采集電路得到的三維聲波測井數(shù)據(jù)發(fā)送給甲部分,進而上傳到控制電路和地面系統(tǒng);
測井數(shù)據(jù)在傳輸過程中,MLVDS交換電路根據(jù)MLVDS電氣標準對測井數(shù)據(jù)進行規(guī)范化和BPRZ編碼,并使用盲過采樣器取得測井數(shù)據(jù)收發(fā)需要的時鐘信息;
采集電路,用來接收MLVDS電路的甲部分下發(fā)的命令,再利用FPGA解析命令,得到相應的采樣參數(shù);控制分辨率為24位的高精度模數(shù)轉換器按照該采樣參數(shù)對信號采樣,得到三維聲波測井數(shù)據(jù),再把三維聲波測井數(shù)據(jù)存儲于FPGA的雙端RAM中,并上傳給MLVDS交換電路的乙部分。
圖2是過采樣時序圖及過采樣同步電路圖。
在本實施例中,如圖2(b)所示,過采樣電路的具體實現(xiàn)是通過4個D觸發(fā)器來完成,這4個D觸發(fā)器位于圖2(b)中的第一列,如圖2(a)所示,在4個多相時鐘Clk0、Clk90、Clk180、Clk270的觸發(fā)下完成對控制電路下發(fā)的命令或采集電路上傳的三維聲波測井數(shù)據(jù)的采樣,得到4位數(shù)據(jù)。為了提高采樣的精度,輸入數(shù)據(jù)信號到這4個D觸發(fā)器的延時要盡可能一致,因此需要對輸入數(shù)據(jù)信號的最大偏斜時間進行約束,并且采樣寄存器的位置要盡可能的靠近輸入數(shù)據(jù)引腳。在本實施例中,每個時鐘的相位相差90度,輸入數(shù)據(jù)經(jīng)過全局時鐘引腳以確保到觸發(fā)器延時的一致性。
由于4個D觸發(fā)器的采樣值是經(jīng)過不同時鐘域下得到的,因而在用它們來檢測邊沿變化時,必須用標準時鐘clk0對它們進行同步。從圖1(b)可以看出,每個通道的采樣寄存器的輸出都經(jīng)過了3個觸發(fā)器,這樣可以消除采樣寄存器的亞穩(wěn)態(tài)問題,中間兩個觸發(fā)器則增加的數(shù)據(jù)建立時間。
圖3是初步數(shù)據(jù)恢復電路原理圖。
在本實施例中,如圖3所示,初步數(shù)據(jù)恢復電路接收過采樣電路的4位輸出數(shù)據(jù),產(chǎn)生出1位的初步恢復數(shù)據(jù)和兩位的add_drop信號。邊沿檢測器通過當前的4位過采樣數(shù)據(jù)和前一次過采樣數(shù)據(jù)D[3],在4個相鄰的多相時鐘區(qū)間中找出輸入數(shù)據(jù)發(fā)生變化的那個區(qū)間。邊沿檢測器送出4位的標志信號到相位選擇器,相位檢測器根據(jù)這4位標志信號來決定最佳采樣位置。若4位標志信號均為0,則意味著輸入數(shù)據(jù)未發(fā)生變化,那么采樣位置和前一次保持一致。多路復用器根據(jù)相位選擇器輸出的采樣位置信號選擇4位過采樣數(shù)據(jù)中的一位作為初步恢復的數(shù)據(jù)并送到數(shù)據(jù)修正模塊。錯誤檢測器根據(jù)當前的采樣位置和上一次的采樣位置來判斷當前初步恢復的數(shù)據(jù)是否正確,同時輸出add_drop信號到數(shù)據(jù)修正模塊。數(shù)據(jù)信號的兩個延時補償了邊沿檢測器和相位選擇器同步過采樣數(shù)據(jù)至MUX所消耗的時間。
表1是在單個采樣窗口內(nèi)采樣時鐘和采樣數(shù)據(jù)選擇的判決規(guī)則。
表1
初步數(shù)據(jù)恢復模塊根據(jù)單個采樣窗口內(nèi)接收到的4位過采樣數(shù)據(jù),得到它們變化位置并按照上述判決規(guī)則來確定采樣相位和采樣數(shù)據(jù)。采樣窗定義為一個采樣時鐘周期,周期以clk0的一個上升沿為起始位置,下一個clk0上升沿為結束位置。以表1中case2為例,在clk0的上升沿處發(fā)現(xiàn)輸入數(shù)據(jù)的變化,那么選擇clk270為采樣時鐘,因為該時刻最接近輸入數(shù)據(jù)的中心,從而得到該采樣窗口內(nèi)的采樣數(shù)據(jù)D[3]。
圖4是數(shù)據(jù)丟失、復用、錯誤時的時序圖。
如果時鐘頻率存在偏差時,輸入數(shù)據(jù)在單個采樣窗內(nèi)的變化位置會單調地向左或向右移動。隨著時間的累積,它將跨越采樣窗的邊界。這種情況下將導致數(shù)據(jù)復用或者數(shù)據(jù)丟失,此時初步數(shù)據(jù)恢復模塊將激活add_drop信號并送往數(shù)據(jù)修正模塊。
當發(fā)送的時鐘頻率低于接收的時鐘頻率時,在初步恢復的數(shù)據(jù)處會發(fā)生數(shù)據(jù)丟失。如圖4(a)所示,采樣窗SW2中輸入數(shù)據(jù)的變化沿為case3,而采樣窗SW3中輸入數(shù)據(jù)的變化沿為case2,根據(jù)判決規(guī)則得到SW2中的D[0]和SW3中的D[3]的初步恢復的數(shù)據(jù),SW2和SW3中間的數(shù)據(jù)將被丟失。
當發(fā)送的時鐘頻率高于接收的時鐘頻率時,在初步恢復的數(shù)據(jù)處會發(fā)生數(shù)據(jù)復用。如圖4(b)所示,在采樣窗SW2中判決得到的采樣數(shù)據(jù)D[3]和采樣窗SW3中判決得到采樣數(shù)據(jù)D[0]為同一個輸入數(shù)據(jù),造成數(shù)據(jù)復用。
同時輸入數(shù)據(jù)的抖動也會造成數(shù)據(jù)的丟失或復用。為了解決這一類問題,如圖4(c)所示,錯誤檢測器在輸出初步恢復數(shù)據(jù)的同時激活add_drop信號。add_drop信號只會在采樣位置發(fā)送特定的變化后激活,并且只持續(xù)一個周期,而當輸入數(shù)據(jù)未發(fā)生變化時,add_drop信號不會被激活,采樣位置會保持不變。
圖5是數(shù)據(jù)修正模塊的原理圖。
如圖5所示,數(shù)據(jù)修正模塊把初步恢復的數(shù)據(jù)移入位寬為2N+1的移位寄存器中,并根據(jù)add和drop信號在初步恢復數(shù)據(jù)隊列中添加或者移除一位數(shù)據(jù)。移位寄存器的位寬取決于最大數(shù)據(jù)包的大小和發(fā)射器與接收器的頻率偏差值。移位寄存器第N位的值為默認的恢復數(shù)據(jù),由于頻率偏差的存在,隨著時間的累積恢復數(shù)據(jù)的位置會左移或者右移,因此采用輸出位置選擇器來指示移位寄存器輸出有效位的位置。
如圖6所示,移位寄存器根據(jù)add_drop的值進行移位。當add為1時表明數(shù)據(jù)丟失,丟失的數(shù)據(jù)必然為當前初步恢復數(shù)據(jù)的取反,因為激活add為1的前提條件是數(shù)據(jù)要有變化沿發(fā)生。因此移位寄存器右移兩位后,其高兩位應依次移入~prd和prd(prd和~prd分別表示當前采樣值和當前采樣值取反后的值)。當drop為1是表明數(shù)據(jù)復用,因此當前輸入的初步恢復數(shù)據(jù)無效需丟棄,移位寄存器不進行移位。當add/drop都為0時表明初步恢復的數(shù)據(jù)正確,移位寄存器右移一位,最高位移入prd。
設當前移位寄存器的第i位為恢復的數(shù)據(jù),第N位為默認的恢復數(shù)據(jù);當add為1時,移位寄存器右移兩位,移位寄存器有效位置需右移一位,如圖6中第2行所示,此時第i+1位為恢復出的數(shù)據(jù)。當drop為1時,移位寄存器未進行移位,有效位置需左移一位,如圖6中的第3行所示,此時第i-1位為恢復出的數(shù)據(jù)。當add和drop都為0時,移位寄存器右移一位,有效位置保持不變,如圖6中的第4行所示。
當有效位置超出移位寄存器的范圍時,數(shù)據(jù)恢復將發(fā)生錯誤。為了避免這一問題,移位寄存器的位寬必須足夠大,其大小決定于最大一幀數(shù)據(jù)的大小和發(fā)送和接收時鐘頻率的偏差。
N=frame_sizemax×Δfoffset+Nmargin
三維聲波測井中單通道最大數(shù)據(jù)個數(shù)為600,最大數(shù)據(jù)位寬為24,經(jīng)過8B/10B編碼后再加上其他額外開銷得到最大數(shù)據(jù)包為18060bits。發(fā)送和接收的最大頻率偏差為+/-500ppm,計算得到N的值為19,考慮到輸入數(shù)據(jù)的抖動,設置裕量值為3。因此本實施例中N的大小為22,移位寄存器的長度為45。
從以上分析可知,采樣時鐘和輸入數(shù)據(jù)信號的抖動可能會導致數(shù)據(jù)恢復的錯誤。抖動一般分為隨機性抖動和確定性抖動這兩大類。前者難以預測,一般假設呈現(xiàn)高斯分布,其峰峰值是沒有邊界的,因此在本設計中不予考慮。確定性抖動是可以復現(xiàn)、可以預測的定時抖動,這個抖動的峰峰值具有上下限,其具體可分為周期性抖動,占空比抖動和數(shù)據(jù)相關抖動。由于占空比抖動和數(shù)據(jù)相關抖動取決于工作環(huán)境,具體硬件和所采取的編碼方式相關,在這里不予考慮。為了保證數(shù)據(jù)恢復的正確性,采樣時鐘必須滿足在一個采樣周期T內(nèi)采到的數(shù)據(jù)不能少于3個且不能多于5個,因此采樣時鐘的抖動不能超過0.25T。
基于過采樣的數(shù)據(jù)恢復方法要求輸入數(shù)據(jù)具有足夠多的變化沿,具體要求為在采樣時鐘偏移0.25T內(nèi)輸入數(shù)據(jù)至少要變化一次,否則可能會造成數(shù)據(jù)丟失或復用無法被檢測到,導致數(shù)據(jù)接收錯誤。一種可能會發(fā)生的情況是當發(fā)送器的時鐘頻率低于接收器的時鐘頻率時,若某時刻最佳判決采樣時鐘是clk0,經(jīng)過0.25T后輸入數(shù)據(jù)未發(fā)生變化,則最佳判決采樣位置可能變?yōu)閏lk180,跨過了采樣位置為clk270的區(qū)域,從而造成了該區(qū)域內(nèi)數(shù)據(jù)丟失沒有被檢測到,接收到的數(shù)據(jù)必然發(fā)生錯誤。
在本實施例中,采集電路和控制電路都采用Xilinx公司Spartan3E系列的產(chǎn)品,利用FPGA完成的邏輯控制,串行數(shù)據(jù)恢復功能采用VerilogHDL硬件描述語言來實現(xiàn),開發(fā)平臺為ISE13.2。
盡管上面對本發(fā)明說明性的具體實施方式進行了描述,以便于本技術領域的技術人員理解本發(fā)明,但應該清楚,本發(fā)明不限于具體實施方式的范圍,對本技術領域的普通技術人員來講,只要各種變化在所附的權利要求限定和確定的本發(fā)明的精神和范圍內(nèi),這些變化是顯而易見的,一切利用本發(fā)明構思的發(fā)明創(chuàng)造均在保護之列。