两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種具有可變階數(shù)數(shù)字濾波器的數(shù)字示波器的制作方法

文檔序號(hào):5843388閱讀:269來源:國(guó)知局
專利名稱:一種具有可變階數(shù)數(shù)字濾波器的數(shù)字示波器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種具有可變階數(shù)數(shù)字濾波器的數(shù)字示波器,屬于電磁測(cè)量?jī)x器技術(shù) 領(lǐng)域。
背景技術(shù)
濾波器是一種對(duì)輸入信號(hào)進(jìn)行波形處理,達(dá)到濾除不需要的信號(hào),保留需要信號(hào) 的信號(hào)處理裝置。濾波器按照所處理信號(hào)的性質(zhì)可分為模擬濾波器和數(shù)字濾波器兩種。 其中由于計(jì)算機(jī)技術(shù)及大規(guī)模集成電路技術(shù)的發(fā)展,數(shù)字濾波器已可用計(jì)算機(jī)軟件實(shí)現(xiàn), 也可使用大規(guī)模數(shù)字硬件電路實(shí)現(xiàn)。數(shù)字濾波器具有高精度、高可靠性、可控性以及方便實(shí) 現(xiàn)等優(yōu)點(diǎn),因此在數(shù)字信號(hào)處理系統(tǒng)中,數(shù)字濾波器是十分重要的組成部分。另外,濾波器 從功能上又可分為低通、高通、帶通、帶阻四種類型,每種濾波器都有其不同的應(yīng)用范圍。N-Iy(n) = ^ h(i)x(n — ),=0 ( 1)參照上述的式(1),由于數(shù)字濾波算法就是將輸入數(shù)據(jù)x(i)與濾波器參數(shù)h(i)乘 累加的過程,所以其算法實(shí)現(xiàn)起來非常方便。采用計(jì)算機(jī)軟件計(jì)算和數(shù)字硬件計(jì)算均可實(shí) 現(xiàn)。數(shù)字存儲(chǔ)式示波器(DSO)是市場(chǎng)上主流的示波器類型,通過模擬前端采集的信號(hào) 量通過A/D轉(zhuǎn)換芯片轉(zhuǎn)換成數(shù)字信號(hào)后,由于待測(cè)量信號(hào)大多存在著干擾噪聲,如果觀察 者想要看到更純凈的信號(hào),就必須加入濾波器對(duì)信號(hào)加以過濾實(shí)現(xiàn)。在數(shù)字示波器中加入 數(shù)字濾波功能可以極大的方便用戶觀測(cè)波形信號(hào),而且可調(diào)濾波截止頻率和濾波功能的 數(shù)字濾波器的實(shí)際使用價(jià)值很高,可以方便用戶濾除各種頻段的干擾信號(hào)。比如輸入的 IOMHz有效信號(hào)中包含有有IKHz的低頻干擾信號(hào)和IOOMHz的高頻干擾信號(hào),這時(shí)通過選用 數(shù)字帶通濾波器并配置好通帶的上下限頻率就可以同時(shí)將低頻、高頻干擾信號(hào)同時(shí)濾除, 再現(xiàn)有效信號(hào)的信息。目前多數(shù)型號(hào)的DSO示波器的通道設(shè)置中均擁有帶寬限制這一功能,將輸入信號(hào) 限定在某一固定頻率值之下,而高于固定頻率的部分則被去除,就其實(shí)現(xiàn)方式來看,就是使 用了固定截止頻率的濾波器,這種類型的濾波器大多使用硬件電路搭建而成,無法根據(jù)不 同情況控制其濾波截止頻率和濾波功能的變換。比如安捷倫公司生產(chǎn)的Agilent 5000系 列示波器的通道帶寬限制打開時(shí),將會(huì)濾除25MHz以上的輸入信號(hào),而泰克公司生產(chǎn)的Tek 4000系列示波器的通道帶寬限制則包括250MHz和20Mhz兩種設(shè)置,這些設(shè)置均為固定不變 的。用硬件電路直接搭建而成的濾波器,不能更改其濾波截止頻率和濾波器功能。在Tek 2000系列數(shù)字示波器中采用的FilterVU功能實(shí)現(xiàn)了可調(diào)截止頻率的低通濾波器,但其濾 波器功能卻被限制為低通濾波器,不能改變。從現(xiàn)有各種數(shù)字示波器中對(duì)數(shù)字濾波器的應(yīng)用來看,目前尚無一款通過硬件實(shí)現(xiàn) 的截止頻率、階數(shù)及濾波器功能(低通、高通、帶通、帶阻)均能改變的數(shù)字濾波器。對(duì)于具備功能不可調(diào)的數(shù)字濾波器的示波器,在一些干擾信號(hào)復(fù)雜的環(huán)境下可能無法清晰地顯示信號(hào)。比如輸入信號(hào)中夾雜了低頻部分的干擾噪聲,那么像帶寬限制或者 FilterVU這種低通濾波器顯然是不能起到作用的。另外,雖然Agilent、Tek的數(shù)字示波器均提供了可在計(jì)算機(jī)上用于數(shù)字濾波計(jì)算 的擴(kuò)展計(jì)算軟件,但在這些軟件占用資源大,只能在計(jì)算機(jī)上運(yùn)行。然而,在現(xiàn)場(chǎng)測(cè)試中,不 方便隨身攜帶計(jì)算機(jī)。通過軟件實(shí)現(xiàn)數(shù)字濾波的工作,在計(jì)算機(jī)上完成容易,但是一旦將這套算法移植 到類似DSP這樣的芯片中,并且當(dāng)DSP還負(fù)責(zé)了數(shù)字示波器其他的控制、運(yùn)算任務(wù)時(shí),用于 數(shù)字濾波計(jì)算所占用的DSP資源則非常大,通常會(huì)導(dǎo)致整個(gè)示波器運(yùn)行速度下降?,F(xiàn)在測(cè)試的信號(hào)更加多樣化,測(cè)試環(huán)境更加復(fù)雜,信號(hào)質(zhì)量也會(huì)因此受到影響,如 何在復(fù)雜紛繁的信號(hào)中去除干擾,找到所需要的信號(hào),這是示波器產(chǎn)業(yè)發(fā)展所面臨的一項(xiàng) 難題。因此,需要一種能夠根據(jù)需要,通過設(shè)置來改變功能、階數(shù)和截止頻率的數(shù)字濾波器 以及使用這樣的數(shù)字濾波器的示波器。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提供一種具有可變階數(shù)數(shù)字濾波器的數(shù)字示波 器。該可變階數(shù)數(shù)字濾波器不僅可以改變?yōu)V波器類型和截止頻率還能改變階數(shù)。為實(shí)現(xiàn)上述的發(fā)明目的,本發(fā)明采用下述的技術(shù)方案一種數(shù)字示波器,包括輸入模塊和具有外部存儲(chǔ)器的控制處理模塊,還包括可變 階數(shù)數(shù)字濾波器,所述輸入模塊、所述可變階數(shù)數(shù)字濾波器分別連接所述控制處理模塊,所 述輸入模塊用于產(chǎn)生一個(gè)配置指示;所述控制處理模塊用于根據(jù)所述配置指示產(chǎn)生對(duì)應(yīng)的 濾波器系數(shù)并輸出至所述可變階數(shù)數(shù)字濾波器。所述濾波器系數(shù)是通過所述控制處理模塊運(yùn)算得到的。所述外部存儲(chǔ)器中存儲(chǔ)有多組濾波器系數(shù),所述多組濾波器系數(shù)與所述配置指示 對(duì)應(yīng),所述控制處理模塊通過查找所述外部存儲(chǔ)器產(chǎn)生所述濾波器系數(shù)。所述可變階數(shù)數(shù)字濾波器包括依次連接的數(shù)據(jù)存儲(chǔ)單元、數(shù)據(jù)延遲鏈單元、以及 數(shù)據(jù)計(jì)算單元,其特征在于,所述數(shù)據(jù)存儲(chǔ)單元包括接收外部輸入的N個(gè)輸入數(shù)據(jù)的存儲(chǔ) 區(qū)控制單元、連接所述存儲(chǔ)區(qū)控制單元的輸入數(shù)據(jù)存儲(chǔ)區(qū),以及連接所述存儲(chǔ)區(qū)控制單元 的濾波器系數(shù)存儲(chǔ)區(qū),所述濾波器系數(shù)存儲(chǔ)區(qū)內(nèi)存儲(chǔ)有N個(gè)濾波器系數(shù),所述存儲(chǔ)區(qū)控制單元控制所述濾波器系數(shù)存儲(chǔ)區(qū)在一個(gè)時(shí)鐘周期將所述N個(gè)濾 波器系數(shù)輸入到所述數(shù)據(jù)延遲鏈單元;將所述N個(gè)輸入數(shù)據(jù)存儲(chǔ)到所述輸入數(shù)據(jù)存儲(chǔ)區(qū), 并且控制所述輸入數(shù)據(jù)存儲(chǔ)區(qū)在一個(gè)時(shí)鐘周期將所述N個(gè)輸入數(shù)據(jù)以與所述N個(gè)濾波器系 數(shù)同步的方式輸入到所述數(shù)據(jù)延遲鏈單元,所述數(shù)據(jù)計(jì)算單元包括M個(gè)N階乘累加計(jì)算單元以及用于將所述M個(gè)N階乘累加 計(jì)算單元的計(jì)算結(jié)果相累加的后續(xù)累加計(jì)算單元,所述數(shù)據(jù)延遲鏈單元由N-2級(jí)延遲電路 構(gòu)成,每一級(jí)延遲電路比前一級(jí)延遲電路多延遲一個(gè)時(shí)鐘周期;所述M和N為正整數(shù)。上述可變階數(shù)數(shù)字濾波器的優(yōu)點(diǎn)在于同模擬濾波器相比較,數(shù)字濾波器具有穩(wěn)定性高、精度好、可配置等諸多特點(diǎn)。相 比Agilent 6000或Tek 4000系列示波器的有限檔位帶寬限制功能,數(shù)字濾波器同樣可以起到限制帶寬的作用,而且不單實(shí)現(xiàn)低通功能,還可以通過配置濾波器系數(shù)實(shí)現(xiàn)高通、帶 通、帶阻的濾波功能,同樣突出的特點(diǎn)還在于可以實(shí)現(xiàn)多個(gè)截止頻率,可以更好的滿足用戶 各種操作環(huán)境及工作領(lǐng)域的需求。同軟件實(shí)現(xiàn)的數(shù)字濾波器相比較,采用FPGA(現(xiàn)場(chǎng)可編程門陣列)搭建的數(shù)字濾 波器速度更快,這在像falcon這種由DSP作為系統(tǒng)控制器的示波器架構(gòu)下,顯得更加重要。 由于DSP承擔(dān)了示波器的絕大多數(shù)交互控制工作,并且完成多種基礎(chǔ)和高級(jí)運(yùn)算功能以及 顯示任務(wù),DSP的線程開銷十分巨大,像數(shù)字濾波器這種大量采用乘累加運(yùn)算的程序會(huì)占用 極大的DSP系統(tǒng)帶寬,使整個(gè)系統(tǒng)運(yùn)行速度變慢。而且,由于DSP中代碼是逐條執(zhí)行的,數(shù) 字濾波程序本身就會(huì)運(yùn)算很慢。如果將數(shù)字濾波器采用硬件搭建,使數(shù)字濾波器的運(yùn)算速 度得到顯著提升,并且也會(huì)使DSP負(fù)荷減輕。在數(shù)字示波器中使用本可變階數(shù)數(shù)字濾波器,可以使數(shù)字示波器不再需要計(jì)算機(jī) 來專門進(jìn)行數(shù)字濾波運(yùn)算,大大方便了現(xiàn)場(chǎng)測(cè)試等應(yīng)用。


下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明作進(jìn)一步的說明。圖1是本發(fā)明中的可變階數(shù)數(shù)字濾波器結(jié)構(gòu)示意圖;圖2是圖1中的濾波器系數(shù)存儲(chǔ)區(qū)的操作示意圖;圖3是圖1中的輸入數(shù)據(jù)存儲(chǔ)區(qū)的操作示意圖;圖4是圖1中的11階乘累加計(jì)算單元的結(jié)構(gòu)示意圖;圖5是一種具有可變階數(shù)數(shù)字濾波器的數(shù)字示波器的結(jié)構(gòu)示意圖;圖6是圖5的數(shù)字示波器的工作示意圖。
具體實(shí)施例方式本發(fā)明中的可變階數(shù)數(shù)字濾波器采用FPGA來實(shí)現(xiàn)數(shù)字濾波的功能,解決了用基 于DSP的軟件實(shí)現(xiàn)數(shù)字濾波時(shí)的運(yùn)算速度低的問題。由于在DSP中指令是串行執(zhí)行的,所 以只能單獨(dú)使用數(shù)字硬件以實(shí)現(xiàn)并行操作的運(yùn)算模式,以便縮短整個(gè)濾波運(yùn)算的時(shí)間。比 如進(jìn)行一次濾波運(yùn)算需要10步,如果采用基于DSP的軟件設(shè)計(jì)方式需要10個(gè)時(shí)鐘周期完 成一次計(jì)算;如果用數(shù)字硬件的并行設(shè)計(jì)方式,采用10個(gè)計(jì)算模塊并行計(jì)算則只需1個(gè)時(shí) 鐘周期即可。如果采用5個(gè)并行計(jì)算模塊并行計(jì)算,則需要2個(gè)時(shí)鐘周期,這樣,雖然時(shí)間 長(zhǎng)了一倍,但使用的硬件資源會(huì)下降一半??偠灾?,采用多少并行的計(jì)算模塊是可以根據(jù) 硬件資源和運(yùn)算時(shí)間來選擇并決定的。由于使用了 FPGA這種可配置的數(shù)字芯片,所以可以方便地實(shí)現(xiàn)對(duì)數(shù)字濾波器的 多種配置方式,包括濾波器功能選擇(低通、高通、帶通、帶阻)、截止頻率設(shè)置以及濾波器 階數(shù)的調(diào)整。其中,濾波器功能選擇和截止頻率設(shè)置這兩項(xiàng)是通過對(duì)數(shù)字濾波器模塊實(shí)時(shí) 配置濾波器系數(shù)來調(diào)整的;對(duì)濾波器階數(shù)的調(diào)整是通過配置數(shù)字濾波器設(shè)計(jì)參數(shù)來實(shí)現(xiàn) 的。目前設(shè)計(jì)的數(shù)字濾波器為77階,即需要通過77次乘累加過程完成1次數(shù)字濾波 運(yùn)算。隨著濾波器階數(shù)的增加計(jì)算時(shí)間也會(huì)變長(zhǎng),但濾波器的濾波效果也會(huì)更好。例如,把 濾波器階數(shù)變成155階時(shí),濾波時(shí)間會(huì)變長(zhǎng)但效果也會(huì)更好。所以用戶可以根據(jù)實(shí)際濾波效果的要求進(jìn)行數(shù)字濾波器階數(shù)配置,比如當(dāng)前數(shù)字濾波器為77階,用戶想要得到更好的 濾波效果,可以通過示波器配置更高的濾波器階數(shù)來實(shí)現(xiàn)濾波效果的提高。op眾所周知,濾波器的信號(hào)處理是在時(shí)域內(nèi)的卷積>< )= Σ樹n-mMm)其中h(n)W=-OO為濾波器系數(shù)(根據(jù)濾波器截止頻率、功能的不同而改變,可以算是已知量);χ(η)為輸入 信號(hào);y(n)經(jīng)過濾波之后的輸出信號(hào)。為了實(shí)現(xiàn)將輸入數(shù)據(jù)x(i)與濾波器參數(shù)h(i)乘累加的運(yùn)算,受FPGA內(nèi)部資源所 限,數(shù)字硬件濾波器只能使用11個(gè)硬件乘累加器(FPGA內(nèi)置的高性能硬件乘法器)。但是, 通過計(jì)算的濾波器階數(shù)要達(dá)到80階左右的水平才能實(shí)現(xiàn)。每1個(gè)階數(shù)就相當(dāng)于1次乘法 運(yùn)算。由于硬件資源只有11個(gè)硬件乘累加器,因此設(shè)計(jì)時(shí)將濾波器階數(shù)調(diào)整為77階(必 須為11的整倍數(shù)),使用11個(gè)硬件乘累加器并行運(yùn)算,則每7次并行運(yùn)算完成全一次全部 的乘累加運(yùn)算。相比DSP中的運(yùn)算速度提升了很多。本發(fā)明中的可變階數(shù)數(shù)字濾波器不僅可以調(diào)整階數(shù),還可以實(shí)現(xiàn)不同的濾波器功 能和截止頻率,實(shí)現(xiàn)在不同頻率下的低通、高通、帶通、帶阻濾波器功能。下面詳細(xì)說明如何 改變?yōu)V波器功能和截止頻率。由于濾波器系數(shù)是受設(shè)計(jì)需求(濾波功能、濾波截止頻率步進(jìn)值、資源限制)等諸 多方面制約的,因此可以通過算法仿真的方式將全部濾波器系數(shù)確定下來,存儲(chǔ)在外部存 儲(chǔ)器中,或者也可以通過DSP程序直接計(jì)算濾波器系數(shù),然后在使用時(shí)根據(jù)用戶的設(shè)置通 過DSP直接配置到數(shù)字濾波器中。用戶通過重新配置濾波器系數(shù)來實(shí)現(xiàn)多種濾波器功能及 截止頻率的調(diào)整。配置的濾波器系數(shù)會(huì)先被存儲(chǔ)在數(shù)字濾波器模塊內(nèi)部的RAM中,待數(shù)字 濾波器讀取所需的系數(shù)進(jìn)行計(jì)算。本發(fā)明中的可變階數(shù)數(shù)字濾波器包括依次連接的數(shù)據(jù)存儲(chǔ)單元、數(shù)據(jù)延遲鏈單元 和數(shù)據(jù)計(jì)算單元。數(shù)據(jù)存儲(chǔ)單元包括存儲(chǔ)器控制單元、分別連接存儲(chǔ)區(qū)控制單元的輸入數(shù) 據(jù)存儲(chǔ)區(qū)和濾波器系數(shù)存儲(chǔ)區(qū)。數(shù)據(jù)計(jì)算單元包括M個(gè)N階乘累加計(jì)算單元和后續(xù)累加計(jì) 算單元,其中M和N均為正整數(shù)。在圖1所示的實(shí)施例中,M= 1,N= 11 ;在其它情況下, M、N也可以有另外的取值。存儲(chǔ)器控制單元對(duì)輸入數(shù)據(jù)存儲(chǔ)區(qū)進(jìn)行控制,使輸入的數(shù)據(jù)信號(hào)寫入到輸入數(shù)據(jù) 存儲(chǔ)區(qū)中;對(duì)濾波器系數(shù)存儲(chǔ)區(qū)進(jìn)行控制,將輸入的濾波器系數(shù)寫入到濾波器系數(shù)存儲(chǔ)區(qū) 中;控制輸入數(shù)據(jù)存儲(chǔ)區(qū)和濾波器系數(shù)存儲(chǔ)區(qū)同步地輸出。存儲(chǔ)區(qū)控制單元將輸入數(shù)據(jù)按 順序?qū)懭氲较鄳?yīng)的輸入數(shù)據(jù)存儲(chǔ)區(qū)內(nèi);將串行配置的77個(gè)濾波器系數(shù)完整地寫入到事先 安排好的濾波器系數(shù)存儲(chǔ)區(qū)的相應(yīng)存儲(chǔ)區(qū)域內(nèi);從輸入數(shù)據(jù)存儲(chǔ)區(qū)和濾波器系數(shù)存儲(chǔ)區(qū)中 同步地讀出輸入數(shù)據(jù)和濾波器系數(shù),并送入到后面的數(shù)據(jù)延遲鏈單元中處理。數(shù)據(jù)與系數(shù)的同步是關(guān)系到數(shù)字濾波器能否正確進(jìn)行濾波計(jì)算的關(guān)鍵。從圖2可 以看出,每次進(jìn)行濾波計(jì)算的數(shù)據(jù)與系數(shù)是相對(duì)應(yīng)起來的,不能隨便分配,并且輸入數(shù)據(jù)是 經(jīng)過延遲鏈結(jié)構(gòu)持續(xù)不斷的向前移動(dòng),如果有一次數(shù)據(jù)與系數(shù)沒有同步好,那么后面的計(jì) 算將會(huì)全部出錯(cuò),這將是必須保證不能發(fā)生的事情,所以必須保證存儲(chǔ)區(qū)的數(shù)據(jù)與系數(shù)的 同步輸出。濾波器系數(shù)存儲(chǔ)區(qū)是使用FPGA內(nèi)部的硬件RAM資源搭建的。濾波器系數(shù)存儲(chǔ)區(qū) 被設(shè)計(jì)成每組11個(gè)、共16組的矩陣結(jié)構(gòu)。其中,前7組用來存儲(chǔ)系數(shù),后9組可以用來擴(kuò)展,實(shí)現(xiàn)可變階數(shù)。在實(shí)際操作中,可以根據(jù)設(shè)計(jì)需要調(diào)整系數(shù)的組數(shù),以實(shí)現(xiàn)對(duì)濾波器設(shè) 計(jì)階數(shù)的調(diào)整。每組存儲(chǔ)的系數(shù)可以并行輸出,即一次輸出11個(gè)濾波器系數(shù),正好對(duì)應(yīng)11 個(gè)乘累加器模塊。實(shí)際操作時(shí),組0的11個(gè)濾波器系數(shù)并行輸出,之后在下一個(gè)時(shí)鐘周期 將組1的11個(gè)濾波器并行輸出,如此繼續(xù),到組6的濾波器系數(shù)輸出之后,再回到組0。在 這一個(gè)循環(huán)周期內(nèi),后面的乘累加計(jì)算模塊進(jìn)行了 7組運(yùn)算并向后續(xù)累加計(jì)算單元輸出了 7個(gè)計(jì)算結(jié)果,后續(xù)累加計(jì)算單元將這7個(gè)結(jié)果進(jìn)行累加得出最終的濾波計(jì)算結(jié)果。輸入數(shù)據(jù)存儲(chǔ)區(qū)也使用FPGA內(nèi)部的硬件RAM資源搭建,在存儲(chǔ)區(qū)的安排上基本與 濾波器系數(shù)存儲(chǔ)區(qū)相同。但是,輸入數(shù)據(jù)存儲(chǔ)區(qū)的操作控制與濾波器系數(shù)存儲(chǔ)區(qū)的操作控 制不同。由于濾波器系數(shù)是在每次配置時(shí)寫入到濾波器系數(shù)存儲(chǔ)區(qū)的,直到下次配置之前 都不會(huì)有寫入操作。但輸入數(shù)據(jù)是按照時(shí)序關(guān)系持續(xù)寫入到輸入數(shù)據(jù)存儲(chǔ)區(qū)的。同時(shí),如 圖3所示,已寫入到輸入數(shù)據(jù)存儲(chǔ)區(qū)的數(shù)據(jù)在每次讀取之后還需要向前移動(dòng)1個(gè)地址位。在 每個(gè)時(shí)鐘周期,輸入數(shù)據(jù)存儲(chǔ)區(qū)向數(shù)據(jù)延遲鏈單元輸出1組數(shù)據(jù),共11個(gè)數(shù)據(jù)。之后,讀出 的輸入數(shù)據(jù)會(huì)向前移動(dòng)1個(gè)地址位,并再次寫入到輸入數(shù)據(jù)存儲(chǔ)區(qū)RAM中。這樣,在圖3中 標(biāo)記為“數(shù)據(jù)0”的存儲(chǔ)區(qū)域始終保存著來自外部的最新輸入數(shù)據(jù),標(biāo)記為“數(shù)據(jù)76”的存 儲(chǔ)區(qū)域始終保存本次濾波運(yùn)算的最后1個(gè)數(shù)據(jù),之后便會(huì)被丟掉。保證處于同一組號(hào)的數(shù)據(jù)與系數(shù)一起同步輸出,就可以確保數(shù)據(jù)與系數(shù)的輸出同 步問題。比如組0的濾波器系數(shù)與組0的輸入數(shù)據(jù)保持同步、組1的濾波器系數(shù)與組1的 輸入數(shù)據(jù)保持同步等等。數(shù)據(jù)延遲鏈單元采用FPGA內(nèi)部特有的硬件延遲單元搭建。該單元按照N階乘累 加計(jì)算單元需要的時(shí)序關(guān)系,將輸入的11組輸入數(shù)據(jù)和濾波器系數(shù)進(jìn)行延遲處理。每個(gè)輸 入數(shù)據(jù)與濾波器系數(shù)組成的數(shù)據(jù)系數(shù)對(duì),需要延遲的時(shí)鐘周期并不相同。11階乘累加計(jì)算單元是數(shù)字濾波器核心計(jì)算單元,采用FPGA內(nèi)部的硬件乘累加 器單元搭建。每個(gè)乘累加單元可以完成1次乘運(yùn)算和1次加運(yùn)算,且運(yùn)算速度遠(yuǎn)遠(yuǎn)超過自 行設(shè)計(jì)模塊或軟件程序。整個(gè)11階乘累加計(jì)算結(jié)構(gòu)如圖4所示,數(shù)據(jù)流由下而上,最上端 的乘累加器輸出即為11階乘累加運(yùn)算的結(jié)果。從圖4中看出,為了滿足這種瀑布級(jí)聯(lián)式的 乘累加結(jié)構(gòu),每個(gè)乘累加器要求輸入數(shù)據(jù)的時(shí)間是不同的,也就是說,需要通過數(shù)據(jù)延遲鏈 單元將輸入數(shù)據(jù)和濾波器系數(shù)進(jìn)行延遲。每個(gè)乘累加器需要輸入數(shù)據(jù)的延遲時(shí)鐘數(shù)是根據(jù) 上一個(gè)乘累加器的計(jì)算周期延遲計(jì)算出來的。例如,最底下第1級(jí)乘累加器作為計(jì)算的開 始,不需要數(shù)據(jù)延遲,但其計(jì)算結(jié)果的輸出作為第2級(jí)乘累加法器計(jì)算的輸入會(huì)有1個(gè)時(shí)鐘 周期的延遲,因此第2級(jí)乘累加器的輸入數(shù)據(jù)就必須事先延遲1個(gè)時(shí)鐘周期,以滿足時(shí)序要 求。如此類推,每1級(jí)乘累加器的輸入都需要相對(duì)前1級(jí)多延遲1個(gè)時(shí)鐘周期,就形成了整 個(gè)數(shù)據(jù)延遲鏈的結(jié)構(gòu)。具體而言,如圖4所示,將第一數(shù)據(jù)系數(shù)對(duì)和第二數(shù)據(jù)系數(shù)不經(jīng)過延遲電路直接 地輸入到第一級(jí)和第二級(jí)乘法器,然后將第一級(jí)和第二級(jí)乘法器的運(yùn)算結(jié)果輸入到第一級(jí) 累加器,得到第一級(jí)結(jié)果;將第三數(shù)據(jù)系數(shù)對(duì)經(jīng)過第一延遲電路,延遲一個(gè)時(shí)鐘周期后輸入 到第三級(jí)乘法器,將第三級(jí)乘法器的運(yùn)算結(jié)果與第一級(jí)結(jié)果輸入到第二級(jí)累加器,得到第 二級(jí)結(jié)果;類似的,將第四數(shù)據(jù)系數(shù)對(duì)經(jīng)過第二延遲電路延遲兩個(gè)時(shí)鐘周期后,輸入到第四 級(jí)乘法器,將第四級(jí)乘法器的運(yùn)算結(jié)果與第二級(jí)結(jié)果輸入到第三級(jí)累加器,得到第三級(jí)結(jié) 果。將第N+1級(jí)數(shù)據(jù)系數(shù)對(duì)經(jīng)過第N-I延遲電路,延遲N-I個(gè)時(shí)鐘周期后,輸入到第N+1級(jí)乘法器,將第N+1級(jí)乘法器的運(yùn)算結(jié)果與第N-I級(jí)結(jié)果輸入到第N級(jí)累加器,得到第N級(jí)結(jié) 果。最后,將第十一級(jí)數(shù)據(jù)系數(shù)對(duì)經(jīng)過第九延遲電路延遲9個(gè)時(shí)鐘周期后,輸入到第十一級(jí) 乘法器,將第十一級(jí)乘法器的運(yùn)算結(jié)果與第九級(jí)結(jié)果輸入到第十級(jí)累加器,得到第十級(jí)結(jié)^ ο采用圖4的瀑布級(jí)聯(lián)式乘累加器設(shè)計(jì)結(jié)構(gòu)的好處在于,整個(gè)數(shù)據(jù)流直觀上看是完 全流動(dòng)的,不需任何控制信號(hào),就像一條流水生產(chǎn)線一樣,只有事先控制好輸入數(shù)據(jù)的時(shí)序 關(guān)系(做好延遲),就可以完全不用管里面的操作過程,而只用讀取最頂端乘累加器的輸出 結(jié)果即可。后續(xù)累加計(jì)算單元采用硬件數(shù)字累加器模塊,將每7組乘累加計(jì)算單元的輸出結(jié) 果累加在一起即可獲得最終的數(shù)字濾波計(jì)算結(jié)果。換言之,將前述7組11階乘累加計(jì)算單 元的運(yùn)算結(jié)果(第十級(jí)結(jié)果)累加,得到最后的濾波計(jì)算結(jié)果。圖5為使用上述可變階數(shù)數(shù)字濾波器的數(shù)字示波器的框圖。該數(shù)字示波器包括A/ D轉(zhuǎn)換模塊、D/A轉(zhuǎn)換模塊、模擬前端模塊、觸發(fā)電路、可變階數(shù)數(shù)字濾波器、輸入模塊、顯示 模塊和控制處理模塊;其中模擬前端模塊分別連接A/D轉(zhuǎn)換模塊和觸發(fā)電路,A/D轉(zhuǎn)換模塊 連接FPGA,觸發(fā)電路的輸出送入FPGA,F(xiàn)PGA連接控制處理模塊如DSP,控制處理模塊連接D/ A轉(zhuǎn)換模塊,D/A轉(zhuǎn)換模塊向觸發(fā)電路輸出比較電平??刂铺幚砟K還連接輸入模塊和顯示 模塊。在本實(shí)施例當(dāng)中,該可變階數(shù)數(shù)字濾波器由FPGA實(shí)現(xiàn)。該數(shù)字示波器的工作原理是這樣的首先,外部的信號(hào)輸入經(jīng)過模擬前端模塊,輸 出給A/D轉(zhuǎn)換模塊進(jìn)行模數(shù)轉(zhuǎn)換,同時(shí)輸出給觸發(fā)電路,進(jìn)行信號(hào)觸發(fā)。A/D轉(zhuǎn)換模塊的輸 出連接到FPGA(現(xiàn)場(chǎng)可編程門陣列),進(jìn)行數(shù)據(jù)處理。觸發(fā)電路的另一個(gè)輸入端為比較電 平,觸發(fā)電路輸出連接到FPGA,觸發(fā)電路一般由觸發(fā)調(diào)理電路和比較器構(gòu)成,比較器輸出直 接連接到FPGA。FPGA內(nèi)部進(jìn)行觸發(fā)的判斷,并控制采樣過程。FPGA和控制處理模塊連接, 接受來自控制處理模塊的控制命令,將數(shù)據(jù)輸出給控制處理模塊,并進(jìn)行顯示。控制處理模 塊控制D/A轉(zhuǎn)換模塊,用于產(chǎn)生觸發(fā)電路所需要的比較電平。控制處理模塊連接到輸入模 塊的輸出端,用于接受來自示波器按鍵及各種接口的操作命令。輸入模塊產(chǎn)生一個(gè)配置指 示,控制處理模塊用于根據(jù)該配置指示產(chǎn)生對(duì)應(yīng)的濾波器系數(shù)并輸出至該可變階數(shù)數(shù)字濾 波器。不同類型的數(shù)字示波器雖然在具體電路上存在差異,但基本框架是類似的。下面結(jié)合圖5和圖6說明對(duì)使用本可變階數(shù)數(shù)字濾波器的示波器的操作。示波器 在上電或者接收復(fù)位/清零信號(hào)時(shí),示波器系統(tǒng)回到空閑狀態(tài)。在空閑狀態(tài)下,用戶通過輸 入模塊發(fā)出指示,在控制處理模塊用DSP程序直接計(jì)算的濾波器系數(shù),被控制處理模塊輸 入到本可變階數(shù)數(shù)字濾波器的存儲(chǔ)區(qū)控制單元中。當(dāng)然,也可以通過算法仿真的方式,事先 將多組濾波器系數(shù)全部確定下來,存儲(chǔ)在外部存儲(chǔ)器中。在空閑狀態(tài)下,用戶通過輸入模塊 發(fā)出配置指示,使DSP讀取外部存儲(chǔ)器中與該配置指示對(duì)應(yīng)的多組濾波器系數(shù),然后輸入 到可變階數(shù)數(shù)字濾波器的存儲(chǔ)區(qū)控制單元中。配置濾波器系數(shù)只是在空閑狀態(tài)下才可以進(jìn) 行,不需要更改系數(shù)時(shí)不必進(jìn)行配置。DSP在配置系數(shù)過程中不會(huì)下達(dá)下一個(gè)操作指令,以 避免系統(tǒng)出錯(cuò)??勺冸A數(shù)數(shù)字濾波器收到啟動(dòng)指令后,開始接收輸入數(shù)據(jù)并存儲(chǔ);同時(shí)已存儲(chǔ)在 輸入數(shù)據(jù)存儲(chǔ)區(qū)的數(shù)據(jù)和濾波系數(shù)存儲(chǔ)區(qū)內(nèi)的濾波器系數(shù)被讀出,送入到數(shù)據(jù)延遲鏈單元 進(jìn)行延遲處理;經(jīng)過延遲處理之后的輸入數(shù)據(jù)及濾波器系數(shù)送入11階乘累加運(yùn)算單元進(jìn)9行計(jì)算;乘累加單元的計(jì)算結(jié)果繼續(xù)送入后續(xù)累加運(yùn)算單元中進(jìn)行累加計(jì)算??勺冸A數(shù)數(shù) 字濾波器的啟動(dòng)指令消失時(shí),整個(gè)系統(tǒng)會(huì)逐漸停下來(逐漸停下來的原因是因?yàn)橄到y(tǒng)是流 水線進(jìn)行的,流水線前面停止了,后面需要一段的傳遞時(shí)間才會(huì)停止下來),直至下次啟動(dòng) 指令有效時(shí)繼續(xù)進(jìn)行。濾波運(yùn)算是通過數(shù)字硬件并行完成的,因此并不分先后過程,也就是說這幾個(gè)過 程同時(shí)在進(jìn)行的在有新數(shù)據(jù)輸入的同時(shí),也有已存儲(chǔ)數(shù)據(jù)的讀取,同樣有已讀取數(shù)據(jù)的延 遲和計(jì)算。全部過程處于流水生產(chǎn)線的各個(gè)流程中,而整個(gè)生產(chǎn)線也在一直向前運(yùn)行。需要說明的時(shí),在配置濾波器的濾波類型(功能)時(shí),由于濾波器使能是始終關(guān)閉 的,所以在配置好濾波器的濾波類型之后濾波器也不會(huì)立即開始工作。配置完濾波器類型后,接著調(diào)整濾波器的截止頻率,在調(diào)整完這兩項(xiàng)之后才能最 終確定DSP向FPGA配置的濾波器系數(shù)。由于數(shù)字濾波運(yùn)算分成7段實(shí)現(xiàn),因此每7個(gè)時(shí)鐘周期才會(huì)1個(gè)濾波數(shù)據(jù)輸出,同 樣每7個(gè)時(shí)鐘周期也會(huì)需要1個(gè)輸入數(shù)據(jù)輸入進(jìn)系統(tǒng)中參與濾波運(yùn)算。同理,在改變數(shù)字 濾波器階數(shù)為99階時(shí),數(shù)字濾波運(yùn)算會(huì)分成9段進(jìn)行,因此會(huì)每9個(gè)時(shí)鐘周期輸出1個(gè)濾 波結(jié)果。本可變階數(shù)數(shù)字濾波器是用數(shù)字硬件實(shí)現(xiàn),可以并行處理,不僅可以改變?yōu)V波器 類型和截止頻率還能改變階數(shù),實(shí)現(xiàn)高精度、高速度的濾波運(yùn)算。同時(shí),使用具有本可變階數(shù)數(shù)字濾波器的數(shù)字示波器,由于采用了 FGPA搭建的并 行處理的數(shù)字濾波器,不僅使數(shù)字濾波器的運(yùn)算速度得到顯著提升,并且也會(huì)使DSP擺脫 濾波運(yùn)算這樣的大負(fù)荷,提高DSP的高級(jí)運(yùn)算的速度,使整個(gè)示波器系統(tǒng)的運(yùn)算速度大幅提尚。以上對(duì)本發(fā)明所提供的具有可變階數(shù)數(shù)字濾波器的數(shù)字示波器進(jìn)行了詳細(xì)的說 明。對(duì)本領(lǐng)域的一般技術(shù)人員而言,在不背離本發(fā)明實(shí)質(zhì)精神的前提下對(duì)它所做的任何顯 而易見的改動(dòng),都將構(gòu)成對(duì)本發(fā)明專利權(quán)的侵犯,將承擔(dān)相應(yīng)的法律責(zé)任。10
權(quán)利要求
1.一種數(shù)字示波器,包括輸入模塊和具有外部存儲(chǔ)器的控制處理模塊,其特征在于 所述數(shù)字示波器還包括可變階數(shù)數(shù)字濾波器,所述輸入模塊、所述可變階數(shù)數(shù)字濾波器分別連接所述控制處理模塊,所述輸入模塊用于產(chǎn)生一個(gè)配置指示;所述控制處理模塊用于根據(jù)所述配置指示產(chǎn)生對(duì)應(yīng)的濾波器系數(shù)并輸出至所述可變 階數(shù)數(shù)字濾波器。
2.如權(quán)利要求1所述的數(shù)字示波器,其特征在于所述濾波器系數(shù)是通過所述控制處理模塊進(jìn)行運(yùn)算得到的。
3.如權(quán)利要求1所述的數(shù)字示波器,其特征在于所述外部存儲(chǔ)器中存儲(chǔ)有多組濾波器系數(shù),所述多組濾波器系數(shù)與所述配置指示對(duì) 應(yīng),所述控制處理模塊通過查找所述外部存儲(chǔ)器產(chǎn)生所述濾波器系數(shù)。
4.如權(quán)利要求1所述的數(shù)字示波器,其特征在于所述可變階數(shù)數(shù)字濾波器由FPGA構(gòu)成。
5.如權(quán)利要求4所述的數(shù)字示波器,其特征在于所述可變階數(shù)數(shù)字濾波器包括依次 連接的數(shù)據(jù)存儲(chǔ)單元、數(shù)據(jù)延遲鏈單元和數(shù)據(jù)計(jì)算單元,其特征在于所述數(shù)據(jù)存儲(chǔ)單元包括接收外部輸入的N個(gè)輸入數(shù)據(jù)的存儲(chǔ)區(qū)控制單元、連接所述存 儲(chǔ)區(qū)控制單元的輸入數(shù)據(jù)存儲(chǔ)區(qū),以及連接所述存儲(chǔ)區(qū)控制單元的濾波器系數(shù)存儲(chǔ)區(qū),所 述濾波器系數(shù)存儲(chǔ)區(qū)內(nèi)存儲(chǔ)有N個(gè)濾波器系數(shù),所述存儲(chǔ)區(qū)控制單元控制所述濾波器系數(shù)存儲(chǔ)區(qū)在一個(gè)時(shí)鐘周期將所述N個(gè)濾波器 系數(shù)輸入到所述數(shù)據(jù)延遲鏈單元;將所述N個(gè)輸入數(shù)據(jù)存儲(chǔ)到所述輸入數(shù)據(jù)存儲(chǔ)區(qū),并且 控制所述輸入數(shù)據(jù)存儲(chǔ)區(qū)在一個(gè)時(shí)鐘周期將所述N個(gè)輸入數(shù)據(jù)以與所述N個(gè)濾波器系數(shù)同 步的方式輸入到所述數(shù)據(jù)延遲鏈單元,所述數(shù)據(jù)計(jì)算單元包括M個(gè)N階乘累加計(jì)算單元以及用于將所述M個(gè)N階乘累加計(jì) 算單元的計(jì)算結(jié)果相累加的后續(xù)累加計(jì)算單元,所述數(shù)據(jù)延遲鏈單元由N-2級(jí)延遲電路構(gòu) 成,每一級(jí)延遲電路比前一級(jí)延遲電路多延遲一個(gè)時(shí)鐘周期; 所述M和N為正整數(shù)。
6.如權(quán)利要求5所述的數(shù)字示波器,其特征在于所述N個(gè)輸入數(shù)據(jù)中的第三個(gè)到第N個(gè)以及所述N個(gè)濾波器系數(shù)中的第三個(gè)到所述第 N個(gè)分別同步地輸入到第一級(jí)延遲電路到第N-2級(jí)延遲電路,所述N階乘累加計(jì)算單元將第一個(gè)所述輸入數(shù)據(jù)與同步輸入的所述濾波器系數(shù)相乘, 得到第一乘累加結(jié)果;將第二個(gè)所述輸入數(shù)據(jù)與同步輸入的所述濾波器系數(shù)相乘,然后與 所述第一階乘累加結(jié)果相加,得到第二乘累加結(jié)果;將經(jīng)過每一級(jí)延遲電路延遲的所述輸 入數(shù)據(jù)與所述濾波器系數(shù)相乘,然后與前一級(jí)結(jié)果相加,得到第N-I乘累加結(jié)果,所述后續(xù)累加計(jì)算單元將所述M個(gè)N-I乘累加結(jié)果相累加,作為數(shù)字濾波的計(jì)算結(jié)果。
7.如權(quán)利要求5所述的數(shù)字示波器,其特征在于 所述輸入數(shù)據(jù)存儲(chǔ)區(qū)是由FPGA內(nèi)部的硬件RAM構(gòu)成。
8.如權(quán)利要求5所述的數(shù)字示波器,其特征在于所述輸入數(shù)據(jù)存儲(chǔ)區(qū)內(nèi)的所述N個(gè)輸入數(shù)據(jù)在被讀取后,依次向前移動(dòng)一個(gè)地址位。
9.如權(quán)利要求5所述的數(shù)字示波器,其特征在于所述濾波器系數(shù)存儲(chǔ)區(qū)由FPGA內(nèi)部的硬件RAM構(gòu)成,是每組N個(gè)的矩陣結(jié)構(gòu),每組分 別存儲(chǔ)N個(gè)濾波器系數(shù)。
10.如權(quán)利要求9所述的數(shù)字示波器,其特征在于所述N個(gè)濾波器系數(shù)在一個(gè)時(shí)鐘周期并行輸出到所述濾波器系數(shù)存儲(chǔ)區(qū)中。
全文摘要
本發(fā)明公開了一種具有可變階數(shù)數(shù)字濾波器的數(shù)字示波器。該數(shù)字示波器包括輸入模塊和具有外部存儲(chǔ)器的控制處理模塊,還包括可變階數(shù)數(shù)字濾波器,輸入模塊、可變階數(shù)數(shù)字濾波器分別連接控制處理模塊,輸入模塊用于產(chǎn)生一個(gè)配置指示;控制處理模塊用于根據(jù)配置指示產(chǎn)生對(duì)應(yīng)的濾波器系數(shù)并輸出至可變階數(shù)數(shù)字濾波器。在數(shù)字示波器中使用上述可變階數(shù)數(shù)字濾波器,可以使數(shù)字示波器不再需要計(jì)算機(jī)來專門進(jìn)行數(shù)字濾波運(yùn)算,大大方便了現(xiàn)場(chǎng)測(cè)試等應(yīng)用。
文檔編號(hào)G01R13/02GK102053186SQ200910237398
公開日2011年5月11日 申請(qǐng)日期2009年11月10日 優(yōu)先權(quán)日2009年11月10日
發(fā)明者李維森, 王悅, 王鐵軍 申請(qǐng)人:北京普源精電科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
丰城市| 洞头县| 郴州市| 佛山市| 临湘市| 肇庆市| 富顺县| 桃园县| 鄯善县| 临泽县| 商南县| 陇南市| 和顺县| 大田县| 桓仁| 广宁县| 农安县| 潮州市| 普兰县| 汝阳县| 时尚| 若羌县| 自贡市| 长阳| 江津市| 紫云| 乌兰察布市| 丰都县| 浠水县| 义马市| 中西区| 井研县| 辛集市| 连州市| 建湖县| 嘉荫县| 红桥区| 陆河县| 西吉县| 灵寿县| 集贤县|