本發(fā)明涉及示波器技術(shù)領域,具體涉及一種示波器及其ADC一致性補償方法。
背景技術(shù):
數(shù)字示波器是形象地顯示信號隨時間變化波形的儀器,是集數(shù)據(jù)采集、A/D轉(zhuǎn)換、軟件編程等一系列技術(shù)于一體的高性能信號特性測試儀器。
采用多片模數(shù)轉(zhuǎn)換器(ADC,Analog-to-Digital Converter)芯片交錯采樣來提高采樣率的示波器中,由于不同ADC間一致性不好的問題,對同樣的輸入數(shù)據(jù)進行采樣,反饋出來的輸出數(shù)據(jù)的碼值彼此之間會有細微的差別。在高采樣率(示波器采樣率大過單片ADC芯片采樣率)時基下,相對于低采樣率時基下的情況,會出現(xiàn)零平線較粗的問題。
目前,為了解決上述零平線較粗的問題,通常在整個ADC碼值范圍統(tǒng)一用一組ADC補償值對ADC輸出碼值進行補償,但是,ADC在整個碼值范圍內(nèi)的補償并不是線性的,通過上述補償方式,會造成不同位置的零平線粗細不一的問題。
圖1至圖3為現(xiàn)有示波器采樣輸出圖,從圖中可以看出,當輸出處于圖1所示位置時,零平線較細。而當輸出處于圖2所示位置時,則零平線較粗。在這種方案下,如果輸入一個方波信號,問題現(xiàn)象會更加明顯。如圖3所示,會出現(xiàn)在接近零平線的波形較細,而遠離零平線的波形則較粗。以上問題的出現(xiàn)會給使用者分析信號時帶來很多不必要的麻煩。
技術(shù)實現(xiàn)要素:
為了解決現(xiàn)有技術(shù)中存在的問題,本發(fā)明實施例期望提供一種示波器及其ADC一致性補償方法。
本發(fā)明實施例提供了一種數(shù)字示波器,所述數(shù)字示波器包括:確定模塊、補償模塊及輸出模塊;其中,
所述確定模塊,用于確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間;
所述補償模塊,用于對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償;
所述輸出模塊,用于對補償后的輸出數(shù)據(jù)進行輸出。
上述方案中,所述示波器還包括:劃分模塊,用于將ADC碼值范圍平均分成多個碼值區(qū)間。
上述方案中,所述確定模塊,用于分別確定各個ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間;
所述補償模塊,用于在相應碼值區(qū)間內(nèi)分別對各個ADC輸出數(shù)據(jù)的碼值進行補償;
所述輸出模塊,用于將補償后的各個ADC輸出數(shù)據(jù)進行輸出。
上述方案中,所述劃分模塊,用于將ADC碼值范圍平均分成N段,每段對應一個碼值區(qū)間,其中,N為正整數(shù),其取值在區(qū)間[8,64]內(nèi)。
上述方案中,所述數(shù)字示波器還包括:接收模塊,用于在確定模塊確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間之前,接收多個ADC發(fā)送的輸出數(shù)據(jù)。
上述方案中,所述數(shù)字示波器還包括顯示模塊,用于對輸出模塊輸出的多個ADC輸出數(shù)據(jù)分別進行顯示。
本發(fā)明實施例提供了一種數(shù)字示波器的ADC一致性補償方法,所述方法包括:
確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間;
對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償并將補償后的輸出數(shù)據(jù)輸出。
上述方案中,所述確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間之前,所述方法還包括:
將ADC碼值范圍平均分成多個碼值區(qū)間。
上述方案中,所述確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間,包括:分別確定各個ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間;
所述對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償并將補償后的輸出數(shù)據(jù)輸出,包括:在相應碼值區(qū)間內(nèi)分別對各個ADC輸出數(shù)據(jù)的碼值進行補償,并將補償后的各個ADC輸出數(shù)據(jù)進行輸出。
上述方案中,所述將ADC碼值范圍平均分成多個碼值區(qū)間,包括:將ADC碼值范圍平均分成N段,每段對應一個碼值區(qū)間,其中,N為正整數(shù),其取值在區(qū)間[8,64]內(nèi)。
與現(xiàn)有技術(shù)相比,本發(fā)明實施例至少具備以下優(yōu)點:
根據(jù)本發(fā)明實施例提供的數(shù)字示波器的ADC一致性補償方法,首先確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間,之后,對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償并將補償后的輸出數(shù)據(jù)輸出,由于在ADC輸出數(shù)據(jù)之后,對ADC輸出數(shù)據(jù)在不同碼值區(qū)間上進行補償,可以保證補償?shù)臏蚀_性,也保證在每個碼值區(qū)間上各個ADC輸出數(shù)據(jù)補償?shù)囊恢滦裕档投鄠€ADC輸出數(shù)據(jù)的碼值偏差,因此,也就可以避免輸出數(shù)據(jù)輸出至示波器顯示屏時,在不同位置的零平線粗細不一,使得零平線較粗的問題。
附圖說明
圖1為現(xiàn)有技術(shù)中數(shù)字示波器顯示示意圖一;
圖2為現(xiàn)有技術(shù)中數(shù)字示波器顯示示意圖二;
圖3為現(xiàn)有技術(shù)中數(shù)字示波器顯示示意圖三;
圖4為本發(fā)明數(shù)字示波器在一種實施方式中的基本結(jié)構(gòu)圖;
圖5為本發(fā)明數(shù)字示波器在第二種實施方式中的基本結(jié)構(gòu)圖;
圖6為本發(fā)明數(shù)字示波器的顯示示意圖;
圖7為本發(fā)明數(shù)字示波器在第二種實施方式中的基本結(jié)構(gòu)圖;
圖8為本發(fā)明數(shù)字示波器在第三種實施方式中的基本結(jié)構(gòu)圖;
圖9為本發(fā)明數(shù)字示波器的ADC一致性補償方法在一種實施方式中的處理流程圖。
具體實施方式
下面通過具體實施方式結(jié)合附圖對本發(fā)明作進一步詳細說明。
實施例一
參照圖4,示出了本發(fā)明一種數(shù)字示波器的結(jié)構(gòu)框圖,該數(shù)字示波器,包括:確定模塊41、補償模塊42及輸出模塊43;其中,
所述確定模塊41,用于確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間;
所述補償模塊42,用于對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償;
所述輸出模塊43,用于對補償后的輸出數(shù)據(jù)進行輸出。
在本發(fā)明的一種可選實施方式中,參照圖5,所述示波器還包括:劃分模塊44,用于將ADC碼值范圍平均分成多個碼值區(qū)間。
具體的,所述確定模塊41,用于分別確定各個ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間;
所述補償模塊42,用于在相應碼值區(qū)間內(nèi)分別對各個ADC輸出數(shù)據(jù)的碼值進行補償;
所述輸出模塊43,用于將補償后的各個ADC輸出數(shù)據(jù)進行輸出。
具體的,對各個ADC來說其碼值范圍是一樣的,而將碼值范圍劃分為多個碼值區(qū)間的標準是統(tǒng)一的,也就是說,按照一個標準對碼值范圍劃分多個碼值區(qū)間,而對輸出數(shù)據(jù)的補償是針對各個ADC分別進行的,并且,針對每個ADC也是在不同碼值區(qū)間上對輸出數(shù)據(jù)來分別進行補償?shù)?。這樣,在多個ADC輸出數(shù)據(jù)時,需要分別確定每個ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間。
ADC對輸入數(shù)據(jù)進行采樣后,將采樣結(jié)果作為輸出數(shù)據(jù)進行輸出,但是,由于ADC器件不一致引起的采樣結(jié)果偏差是不固定的,其與輸入數(shù)據(jù)的數(shù)值大小有關,也可以說是與輸出數(shù)據(jù)在示波器顯示屏上的位置有關(通常顯示位置越高,數(shù)據(jù)的數(shù)值越大)。因此,本發(fā)明將對ADC輸出數(shù)據(jù)進行校正的補償值與輸出數(shù)據(jù)在顯示屏上的顯示位置關聯(lián)起來。常見的ADC位寬為8bit,輸出碼值范圍為0~255,在條件允許的情況下將各個ADC的補償值與其256個輸出碼值一一對應是最為理想的方案,但針對多個ADC中的每個ADC都設置256個補償值的話,這對處理芯片的資源消耗非常大,而且,在校正過程中由于DAC的精度不夠,也無法精確地將輸出數(shù)據(jù)控制在每個ADC碼值上進行校正。因此,折衷考慮,在實際應用中將ADC碼值范圍平均分成N段,也就對應示波器顯示屏上在垂直方向上均勻分成的N段。如圖6所示,示波器顯示屏用7根橫向直線均勻劃分為8段,每一段對應一段ADC的碼值區(qū)間。需要說明的是,圖6中示波器顯示屏上的橫向直線只為了解釋說明方便起見進行標注,實際應用中,示波器顯示屏上不會出現(xiàn)這些橫向直線。
具體的,所述劃分模塊44,用于將ADC碼值范圍平均分成N段,每段對應一個碼值區(qū)間,其中,N為正整數(shù),其取值可以在區(qū)間[8,64]內(nèi)。
在本發(fā)明的一種可選實施方式中,參照圖7,所述數(shù)字示波器還包括:接收模塊45,用于在確定模塊41確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間之前,接收多個ADC發(fā)送的輸出數(shù)據(jù)。
在本發(fā)明的一種可選實施方式中,參照圖8,所述數(shù)字示波器還包括顯示模塊46,用于對輸出模塊輸出的多個ADC輸出數(shù)據(jù)分別進行顯示。實際實現(xiàn)中,所述顯示模塊46由顯示器實現(xiàn)。
在具體實施過程中,上述確定模塊41、補償模塊42、輸出模塊43、劃分模塊44、接收模塊45及顯示模塊46均可以由數(shù)字示波器內(nèi)的中央處理器(CPU,Central Processing Unit)、微處理器(MPU,Micro Processing Unit)、數(shù)字信號處理器(DSP,Digital Signal Processor)或可編程邏輯陣列(FPGA,F(xiàn)ield-Programmable GateArray)來實現(xiàn)。
實施例二
參照圖9,本發(fā)明實施例二提供了一種數(shù)字示波器的ADC一致性補償方法,所述方法包括:
步驟901、確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間;
在本發(fā)明的一種可選實施方式中,所述確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間之前,所述方法還包括:將ADC碼值范圍平均分成多個碼值區(qū)間。
具體的,所述確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間,包括:分別確定各個ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間。具體的,對各個ADC來說其碼值范圍是一樣的,而將碼值范圍劃分為多個碼值區(qū)間的標準是統(tǒng)一的,也就是說,按照一個標準對碼值范圍劃分多個碼值區(qū)間,而對輸出數(shù)據(jù)的補償是針對各個ADC分別進行的,并且,針對每個ADC也是在不同碼值區(qū)間上對輸出數(shù)據(jù)來分別進行補償?shù)?。這樣,在各個ADC輸出數(shù)據(jù)時,需要分別確定每個ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間。
步驟902、對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償并將補償后的輸出數(shù)據(jù)輸出。
具體的,所述對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償并將補償后的輸出數(shù)據(jù)輸出,包括:在相應碼值區(qū)間內(nèi)分別對各個ADC輸出數(shù)據(jù)的碼值進行補償,并將補償后的各個ADC輸出數(shù)據(jù)進行輸出。
實際應用中,可以將ADC碼值范圍平均分成N段,每段對應一個碼值區(qū)間,其中,N為正整數(shù),其取值可以在區(qū)間[8,64]內(nèi)。當然,取值越大則對輸出數(shù)據(jù)的校正更為精確。
在本發(fā)明的一種可選實施方式中,所述確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間之前,所述方法還包括:接收多個ADC發(fā)送的輸出數(shù)據(jù)。
在本發(fā)明的一種可選實施方式中,所述方法還包括:對輸出模塊輸出的多個ADC輸出數(shù)據(jù)分別進行顯示。
綜上,根據(jù)本發(fā)明實施例提供的數(shù)字示波器的ADC一致性補償方法,首先確定ADC輸出數(shù)據(jù)的碼值對應的碼值區(qū)間,之后,對相應碼值區(qū)間內(nèi)的輸出數(shù)據(jù)的碼值進行補償并將補償后的輸出數(shù)據(jù)輸出,由于在ADC輸出數(shù)據(jù)之后,對ADC輸出數(shù)據(jù)在不同碼值區(qū)間上進行補償,可以保證補償?shù)臏蚀_性,也保證在每個碼值區(qū)間上各個ADC輸出數(shù)據(jù)補償?shù)囊恢滦?,降低多個ADC輸出數(shù)據(jù)的碼值偏差,因此,也就可以避免輸出數(shù)據(jù)輸出至示波器顯示屏時,在不同位置的零平線粗細不一,使得零平線較粗的問題。
本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
本領域內(nèi)的技術(shù)人員應明白,本發(fā)明實施例的實施例可提供為方法、裝置、或計算機程序產(chǎn)品。因此,本發(fā)明實施例可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明實施例可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明實施例是參照根據(jù)本發(fā)明實施例的方法、終端設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理終端設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理終端設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理終端設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理終端設備上,使得在計算機或其他可編程終端設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程終端設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發(fā)明實施例的優(yōu)選實施例,但本領域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明實施例范圍的所有變更和修改。
最后,還需要說明的是,在本文中,諸如第一和第二等之類的關系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。
以上對本發(fā)明所提供的一種數(shù)字示波器及其ADC一致性補償方法,進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術(shù)人員,根據(jù)本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。