本技術(shù)涉及數(shù)字示波器,提供一種基于fpga預(yù)處理的數(shù)字示波器。
背景技術(shù):
1、在現(xiàn)有的數(shù)字示波器中,現(xiàn)場可編程門陣列(field-programmable?gate?array,fpga)采集波形數(shù)據(jù)之后,發(fā)送給數(shù)字信號處理(digital?signal?processing,dsp)或中央處理器(central?processing?unit,cpu),dsp或cpu中的軟件讀取波形數(shù)據(jù)進(jìn)行相應(yīng)的分析計算,得到不同的波形參數(shù),最終顯示在屏幕上。
2、可見,目前數(shù)字示波器的波形分析基本都是由軟件進(jìn)行分析處理,軟件需要對收到的波形數(shù)據(jù)進(jìn)行逐一掃描計算,隨著波形數(shù)據(jù)的數(shù)量增大,軟件分析數(shù)據(jù)的速度下降,導(dǎo)致數(shù)字示波器的波形顯示速度下降。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供一種基于fpga預(yù)處理的數(shù)字示波器,用于解決現(xiàn)有數(shù)字示波器由于波形分析慢導(dǎo)致波形顯示速度慢的問題。
2、第一方面,提供一種基于fpga預(yù)處理的數(shù)字示波器,所述數(shù)字示波器包括現(xiàn)場可編程門陣列fpga和中央處理器cpu;所述fpga包括多個采集模塊、多個緩存模塊、多個預(yù)處理統(tǒng)計模塊以及一個傳輸模塊;多個采集模塊與多個通道連接;
3、每個采集模塊用于采集對應(yīng)通道的波形數(shù)據(jù),并將對應(yīng)通道的波形數(shù)據(jù)發(fā)送給每個采集模塊所連接的緩存模塊;
4、每個緩存模塊用于將對應(yīng)通道的波形數(shù)據(jù)進(jìn)行緩存,將對應(yīng)通道的波形數(shù)據(jù)并行發(fā)送給所述傳輸模塊和每個緩存模塊所連接的預(yù)處理統(tǒng)計模塊;
5、每個預(yù)處理統(tǒng)計模塊用于根據(jù)對應(yīng)通道的波形數(shù)據(jù),構(gòu)造對應(yīng)通道的垂直電壓分布直方圖,并將對應(yīng)通道的垂直電壓分布直方圖發(fā)送給所述傳輸模塊;
6、所述傳輸模塊用于對所述多個通道的垂直電壓分布直方圖和所述多個通道的波形數(shù)據(jù)進(jìn)行處理后,發(fā)送給所述cpu;
7、所述cpu用于從每個通道的垂直電壓分布直方圖提取波形參數(shù),根據(jù)所述波形參數(shù)將對應(yīng)通道的波形數(shù)據(jù)進(jìn)行波形分析和波形顯示;其中,所述波形參數(shù)包括平均值、最大值、最小值、標(biāo)準(zhǔn)差。
8、可選的,每個預(yù)處理統(tǒng)計模塊還用于:
9、統(tǒng)計對應(yīng)通道的波形數(shù)據(jù)中的最大值和最小值;
10、將所述最小值繪制于對應(yīng)通道的垂直電壓分布直方圖的最左側(cè);
11、將所述最大值繪制于對應(yīng)通道的垂直電壓分布直方圖的最右側(cè)。
12、可選的,每個緩存模塊具體用于將對應(yīng)通道的每幀波形數(shù)據(jù)進(jìn)行普通存儲,將對應(yīng)通道的每幀波形數(shù)據(jù)并行發(fā)送給所述傳輸模塊和每個緩存模塊所連接的預(yù)處理統(tǒng)計模塊;
13、每個預(yù)處理統(tǒng)計模塊具體用于根據(jù)對應(yīng)通道的每幀波形數(shù)據(jù),構(gòu)造對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖,并將對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖發(fā)送給所述傳輸模塊;
14、所述傳輸模塊具體用于將對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖組合到對應(yīng)通道的每幀波形數(shù)據(jù)的尾部后,發(fā)送給所述cpu;
15、所述cpu具體用于從對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖提取波形參數(shù),根據(jù)所述波形參數(shù)將對應(yīng)通道的每幀波形數(shù)據(jù)進(jìn)行波形分析和波形顯示。
16、可選的,每個預(yù)處理統(tǒng)計模塊具體用于:
17、從對應(yīng)通道的每幀波形數(shù)據(jù)中提取多個量化幅度值,根據(jù)每個量化幅度值在對應(yīng)通道的每幀波形數(shù)據(jù)中出現(xiàn)的頻率,構(gòu)造對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖,并將對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖發(fā)送給所述傳輸模塊。
18、可選的,所述傳輸模塊具體用于:
19、在等待接收對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖的同時,對已經(jīng)接收的每幀波形數(shù)據(jù)進(jìn)行解析處理和緩存;所述解析處理包括確定接收每幀波形數(shù)據(jù)的對應(yīng)通道、劃分?jǐn)?shù)據(jù)類型、選定發(fā)送通道;
20、在接收對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖之后,將對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖組合到對應(yīng)通道的每幀波形數(shù)據(jù)的尾部,獲得所述多個通道的組合數(shù)據(jù);
21、對所述多個通道的組合數(shù)據(jù)按照數(shù)據(jù)類型進(jìn)行打包和位寬轉(zhuǎn)換,獲得多個打包數(shù)據(jù);
22、將每個打包數(shù)據(jù)通過選定的發(fā)送通道發(fā)送給所述cpu。
23、可選的,每個緩存模塊具體用于將對應(yīng)通道的多幀波形數(shù)據(jù)進(jìn)行深存儲,將對應(yīng)通道的每幀波形數(shù)據(jù)并行發(fā)送給所述傳輸模塊和每個緩存模塊所連接的預(yù)處理統(tǒng)計模塊;
24、每個預(yù)處理統(tǒng)計模塊具體用于根據(jù)對應(yīng)通道的每幀波形數(shù)據(jù),構(gòu)造對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖,并將對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖發(fā)送給所述傳輸模塊;以及根據(jù)對應(yīng)通道的多幀波形數(shù)據(jù),構(gòu)造對應(yīng)通道的多幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖后,將對應(yīng)通道的多幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖發(fā)送給所述傳輸模塊;
25、所述傳輸模塊具體用于將對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖組合到對應(yīng)通道的每幀波形數(shù)據(jù)的尾部后發(fā)送給所述cpu,以及將對應(yīng)通道的多幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖組合到對應(yīng)通道的多幀波形數(shù)據(jù)的尾部后發(fā)送給所述cpu;
26、所述cpu具體用于從對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖和多幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖中提取波形參數(shù),根據(jù)所述波形參數(shù)將對應(yīng)通道的多幀波形數(shù)據(jù)進(jìn)行波形分析和波形顯示。
27、可選的,每個預(yù)處理統(tǒng)計模塊具體用于:
28、從對應(yīng)通道的每幀波形數(shù)據(jù)中提取多個量化幅度值,根據(jù)每個量化幅度值在對應(yīng)通道的每幀波形數(shù)據(jù)中出現(xiàn)的頻率,構(gòu)造對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖,并將對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖發(fā)送給所述傳輸模塊;
29、將所述多個量化幅度值進(jìn)行保存,直到提取完對應(yīng)通道的多幀波形數(shù)據(jù),根據(jù)每個量化幅度值在對應(yīng)通道的多幀波形數(shù)據(jù)中出現(xiàn)的頻率,構(gòu)造對應(yīng)通道的多幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖,并將對應(yīng)通道的多幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖發(fā)送給所述傳輸模塊。
30、可選的,每個預(yù)處理統(tǒng)計模塊還用于為對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖打上幀標(biāo)記;
31、所述cpu具體用于根據(jù)所述幀標(biāo)記,從對應(yīng)通道的每幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖提取波形參數(shù),根據(jù)所述波形參數(shù)將對應(yīng)通道的每幀波形數(shù)據(jù)進(jìn)行波形分析和波形顯示。
32、可選的,所述cpu具體用于從對應(yīng)通道的多幀波形數(shù)據(jù)對應(yīng)的垂直電壓分布直方圖提取波形參數(shù),根據(jù)所述波形參數(shù)將對應(yīng)通道的多幀波形數(shù)據(jù)進(jìn)行眼圖分析和波形顯示。
33、與現(xiàn)有技術(shù)相比,本技術(shù)的有益效果如下:
34、本技術(shù)提供一種基于fpga預(yù)處理的數(shù)字示波器,該數(shù)字示波器包括現(xiàn)場可編程門陣列fpga和中央處理器cpu;fpga包括多個采集模塊、多個緩存模塊、多個預(yù)處理統(tǒng)計模塊以及一個傳輸模塊;多個采集模塊與多個通道連接;每個采集模塊用于采集對應(yīng)通道的波形數(shù)據(jù),并將對應(yīng)通道的波形數(shù)據(jù)發(fā)送給每個采集模塊所連接的緩存模塊;每個緩存模塊用于將對應(yīng)通道的波形數(shù)據(jù)進(jìn)行緩存,將對應(yīng)通道的波形數(shù)據(jù)并行發(fā)送給傳輸模塊和每個緩存模塊所連接的預(yù)處理統(tǒng)計模塊;每個預(yù)處理統(tǒng)計模塊用于根據(jù)對應(yīng)通道的波形數(shù)據(jù),構(gòu)造對應(yīng)通道的垂直電壓分布直方圖,并將對應(yīng)通道的垂直電壓分布直方圖發(fā)送給傳輸模塊;傳輸模塊用于對多個通道的垂直電壓分布直方圖和多個通道的波形數(shù)據(jù)進(jìn)行處理后,發(fā)送給cpu;cpu用于從每個通道的垂直電壓分布直方圖提取波形參數(shù),根據(jù)波形參數(shù)將對應(yīng)通道的波形數(shù)據(jù)進(jìn)行波形分析和波形顯示;其中,波形參數(shù)包括平均值、最大值、最小值、標(biāo)準(zhǔn)差。
35、在本技術(shù)中,fpga在上傳波形數(shù)據(jù)之前,根據(jù)波形數(shù)據(jù)統(tǒng)計垂直電壓分布直方圖,為后續(xù)軟件做各種波形分析提供預(yù)先處理,再將垂直電壓分布直方圖和波形數(shù)據(jù)同步上傳至cpu。后續(xù)cpu中的軟件不用對波形數(shù)據(jù)進(jìn)行逐一掃描來計算波形參數(shù),可以直接從垂直電壓分布直方圖中提取出各種波形參數(shù),根據(jù)這些波形參數(shù)進(jìn)行波形分析和顯示,提高cpu的波形分析速度。且fpga屬于硬件數(shù)字電路,具有并行處理能力,比軟件運(yùn)行的分析速度快,由fpga承擔(dān)直方圖統(tǒng)計工作,可以提高數(shù)字示波器的整體波形顯示速度。且通過多個模塊并行處理不同通道的波形數(shù)據(jù),可以進(jìn)一步提高fpga的處理速度,通過一個傳輸模塊將多個通道的波形數(shù)據(jù)和垂直電壓分布直方圖進(jìn)行處理后,發(fā)送給中央處理器進(jìn)行波形分析和波形顯示,從而提高數(shù)字示波器的整體顯示速度。