基于CPLD的智能寬帶去邊沿抖動(dòng)技術(shù)

發(fā)布時(shí)間:2010-7-24 10:39    發(fā)布者:lavida
關(guān)鍵詞: CPLD , 邊沿抖動(dòng)
電子設計和測量過(guò)程中,信號邊沿抖動(dòng)是我們經(jīng)常碰到的現象。如下圖示,t1,t2,...,t4,信號電平變化時(shí)出現多次隨機快速變化,這種隨機變化在有的場(chǎng)合可以容忍,但大部分時(shí)候是難以容忍的,比如精密測量、精確控制、軍用裝備等等。常規的解決辦法有濾波、平滑以及觸發(fā)器設計等等,但是,這些方法在某些場(chǎng)合是無(wú)能為力的。本文提出的基于CPLD的去抖動(dòng)方法可以有效解決大部分問(wèn)題,為后續信號處理和測量的正確進(jìn)行提供了保證。


圖1 抖動(dòng)

邊沿抖動(dòng)的產(chǎn)生機理

模擬電路中產(chǎn)生邊沿抖動(dòng)的機理
  
模擬電路中信號產(chǎn)生抖動(dòng)主要發(fā)生在模擬信號向數字信號轉換的時(shí)候(也即信號幅度離散化過(guò)程中)。這里有兩種情況:一是輸入模擬信號波形失真,二是幅度離散化電路的原因。

模擬信號波形失真常見(jiàn)有三個(gè)來(lái)源:(1)噪聲或干擾等有害模擬信號的竄擾,如從開(kāi)關(guān)電源竄入的齒狀毛刺干擾情形如圖2(a)所示;(2)模擬處理電路的非線(xiàn)性失真,如差分對管的不一致等,見(jiàn)圖2(b)所示;(3)模擬信號源的失真,一般來(lái)自于傳感器失真或被檢測物理量本身的不規則變化。對于理想比較器,模擬輸入信號在閾值附近的失真將引起沿抖動(dòng),如圖3(a)所示;對于帶施密特觸發(fā)器的比較器,閾值附近的較大波動(dòng)也能引起沿抖動(dòng),如圖3(b)所示。


圖2 模擬信號波形失真


圖3 上升沿失真波形通過(guò)比較器

模擬信號通過(guò)比較器,或放大后通過(guò)數字門(mén)電路,都可實(shí)現幅度離散化而成為脈沖數字信號。實(shí)際電路中,在閾值VT附近一般有兩極限值:有效低電平輸入的最大值VA、有效高電平輸入的最小值VB,如圖3(c)所示。當輸入落在之間的模糊區中,尤其是在靠近VT附近時(shí),內部電路就相當于一個(gè)增益非常大的開(kāi)環(huán)放大器,后級竄入的微小反饋都會(huì )引起振蕩而形成多次觸發(fā)。因此,即使把一個(gè)足夠幅度足夠光滑的低頻正弦波形加到門(mén)電路的輸入端,由于過(guò)VT點(diǎn)電壓斜升率太小,當通過(guò)邏輯模糊帶(ΔV=VB-VA)的時(shí)間(t2-t1)遠大于門(mén)電路傳播延遲tpd時(shí),其輸出必將是前后沿都多次抖動(dòng)的脈沖波形(圖3d)。對于比較器,ΔV一般為幾毫伏,而TTL門(mén)電路,VB=2.4V,VA=0.8V,所以會(huì )更易出現邊沿抖動(dòng)。

數字電路中產(chǎn)生邊沿抖動(dòng)的機理
  
數字電路中產(chǎn)生邊沿抖動(dòng)主要發(fā)生在以下幾個(gè)方面:(1)開(kāi)關(guān)器件的多次觸發(fā);(2)邏輯設計的缺陷;(3)不匹配終端長(cháng)線(xiàn)效應。

開(kāi)關(guān)器件的多次觸發(fā)是最常見(jiàn)的,如鍵盤(pán)按鍵的多次連接,繼電器的觸頭多次接觸等等,本來(lái)只有一次信號變化卻形成了若干次變化。邏輯設計缺陷產(chǎn)生抖動(dòng)的機理是:邏輯冒險或競爭,邏輯設計不合理造成瞬時(shí)毛刺,這種情況也是經(jīng)常發(fā)生,很難完全避免。在無(wú)終端匹配的長(cháng)線(xiàn)上,高頻脈沖信號在線(xiàn)上多次往返傳播,將在脈沖前后沿形成長(cháng)長(cháng)的余振,當余振幅度足夠大時(shí),對接收端門(mén)電路即成為沿抖動(dòng)。

邊沿抖動(dòng)產(chǎn)生的危害

對于狀態(tài)數據信號,邊沿抖動(dòng)的危害一般較小,僅當系統正好在沿抖動(dòng)時(shí)刻采樣才會(huì )引起數據錯誤?刂菩盘、復位信號的邊沿抖動(dòng)常會(huì )造成的誤操作,引起邏輯混亂,甚至損壞執行機構。而如果時(shí)鐘信號發(fā)生沿抖動(dòng),利用該時(shí)鐘沿工作的鎖存器、計數器、定時(shí)器等電路的結果將可能完全錯誤。

常規去抖動(dòng)方法

針對抖動(dòng)的產(chǎn)生機理,我們把常規去抖動(dòng)的方法也歸納為兩類(lèi):去模擬信號抖動(dòng)方法和去開(kāi)關(guān)信號抖動(dòng)方法,分別被用在模擬電路部分設計和數字電路設計中進(jìn)行去抖動(dòng)處理。

去模擬信號抖動(dòng)方法
  
由于模擬信號的質(zhì)量經(jīng)常是引起抖動(dòng)的源頭,因而對模擬信號的處理更受關(guān)注。常用的方法主要包括以下幾個(gè)方面:(1)平滑濾波;(2)施密特觸發(fā)器;(3)單穩態(tài)觸發(fā)器。

平滑濾波是常用的方法。讓信號從檢測帶的隨機快速變化鈍化為緩變信號,濾除不相干的頻率成分,這樣就可以弱化引起抖動(dòng)的信號分量,在檢測帶內就可準確檢測信號的邏輯電平。電路實(shí)現一般是用電阻電容或加運算放大器組成的有源/無(wú)源低通、帶通或帶阻濾波器。

施密特觸發(fā)器對信號的整形是利用了電平延遲形成觸發(fā)電平屏蔽區間的原理。當輸入信號電平超過(guò)門(mén)限VB使輸出置成高電平后,僅當輸入電平下降到比VB更低的門(mén)限VA時(shí)才能使輸出翻轉,而之間過(guò)程是保持不變。于是,只要信號抖動(dòng)范圍小于高低門(mén)限電平差,即可保證不發(fā)生抖動(dòng)。而且,由于上下翻轉電平有足夠的差值,輸出上下沿將會(huì )陡直,減小了后續門(mén)電路出現沿抖動(dòng)的可能性。

單穩態(tài)觸發(fā)器對信號的整形是利用了時(shí)間延遲形成觸發(fā)時(shí)間屏蔽區間的原理。當信號超過(guò)某個(gè)電平時(shí),觸發(fā)器翻轉,在內部定時(shí)沒(méi)有完成前不隨信號變化而變化,定時(shí)時(shí)間由外部電路設定,這樣也可對信號頻率已知情況的信號去除掉快變抖動(dòng)。

去開(kāi)關(guān)信號抖動(dòng)方法
  
去除數字信號引入和處理時(shí)出現的抖動(dòng)常有以下三種途徑:(1)RC濾波;(2)軟件去抖動(dòng)方法;(3)優(yōu)化設計。

RC濾波是消除開(kāi)關(guān)量器件抖動(dòng)的最常見(jiàn)且有效的一種硬件方法,其實(shí)質(zhì)與模擬處理方法中的單穩態(tài)觸發(fā)器相似。比如,對鍵盤(pán)按鍵操作時(shí),按鍵一般都會(huì )多次接觸,常用的做法是加一個(gè)RC濾波電路,這樣,只要設置的時(shí)常數大于抖動(dòng)時(shí)間,即可有效消除抖動(dòng)。軟件去抖動(dòng)方法一般是通過(guò)多次檢測加上延時(shí)、比較來(lái)實(shí)現的。比如,對鍵盤(pán)按鍵操作時(shí)產(chǎn)生的抖動(dòng),可以多次檢測,在一定的時(shí)間內是相同的鍵值則認為按下了一次,超過(guò)了一定的時(shí)間則認為有連續按鍵操作。

對于數字信號處理中(邏輯設計不合理)產(chǎn)生的抖動(dòng), 主要靠?jì)?yōu)化設計來(lái)解決。比如器件選擇、同步設計、匹配終端等等。器件選擇上,利用在頻帶、速度、精度等各方面相對實(shí)際需求有較大裕量的器件,這會(huì )使得信號受器件延時(shí)等影響造成的抖動(dòng)大大減小。同步設計可以有效防止信號變化時(shí)出現的不必要的中間過(guò)程,一般是把異步設計的電路改成同步電路,這樣各路信號經(jīng)過(guò)幾乎相同的時(shí)延,避免了中間過(guò)程變化引起的抖動(dòng)。匹配終端的設計對于頻率高端信號很有效。

智能寬帶去抖動(dòng)

提出的原因

由上面總結的方法知,幾種方法都存在一定的不足。(1)利用了信號電平信息的去模擬抖動(dòng)方法不能用于去除數字信號的抖動(dòng);(2)模擬去抖動(dòng)方法中,平滑濾波的方法不能去除信號波動(dòng)偏大時(shí)產(chǎn)生的抖動(dòng),而兩個(gè)觸發(fā)器解決辦法則不能準確反應信號的正半周與負半周的比例,而且,對于單穩態(tài)觸發(fā)器方法需要針對不同頻率的信號采用不同的時(shí)間參數配置;(3)數字去抖動(dòng)方法中,RC濾波方法只能針對慢變信號,因為快變信號將被濾除或附加一定的相移P時(shí)延,而軟件設計的方法需要消耗大量的器件資源和時(shí)間資源,使得處理任務(wù)加重,這在有些時(shí)候是不容許的,對于優(yōu)化設計則需要長(cháng)期的經(jīng)驗才能有效避免。

總體上,上面的方法在每次設計時(shí)都將讓我們權衡利用,效果有時(shí)也不盡人意。我們這里提出的智能寬帶去抖動(dòng)的方法可以解決大部分的問(wèn)題,對模擬和數字信號產(chǎn)生的抖動(dòng)均有效。由于是基于CPLD硬件的設計,方便改進(jìn),還可事先不必確切知道哪個(gè)IPO口輸入的信號需要去抖動(dòng),同時(shí)不浪費其他硬件和軟件資源。在實(shí)際應用中可以針對可能產(chǎn)生邊沿抖動(dòng)的所有信號進(jìn)行去抖動(dòng)處理,只要器件資源足夠。

智能寬帶去抖動(dòng)原理

當我們需要進(jìn)行較復雜的電路設計時(shí),經(jīng)常用到可編程器件,這樣可以使得硬件軟件化。實(shí)際使用時(shí),可以針對引入的某個(gè)或幾個(gè)信號進(jìn)行去抖動(dòng)處理,使設計得到簡(jiǎn)化。當信號輸入CPLD時(shí),首先進(jìn)行去抖動(dòng)處理,形成規范的脈沖波形后再進(jìn)行后續信號處理。

無(wú)論是在模擬電路中還是在數字電路中形成的信號邊沿的抖動(dòng),最終在送入CPLD的數字脈沖信號上都有相同的表現特征:緊跟在真實(shí)上(下)邊沿后面有多個(gè)負(正)的虛假窄脈沖。因而在CPLD中我們可以采用相同的方法來(lái)進(jìn)行邊沿去抖動(dòng)處理。由于信號頻段不同,抖動(dòng)時(shí)間也會(huì )不同,正確處理的前提條件:(1)信號邊沿抖動(dòng)時(shí)間小于信號周期的四分之一;(2)信號頻率小于器件工作頻率的八分之一。第一條是防止實(shí)際邊沿界定不準,第二條是保證抖動(dòng)范圍可靠界定。對于頻率未知情況,可以對頻率進(jìn)行分段,配合少量軟件編程,針對信號頻段可以進(jìn)行智能分段處理。

具體實(shí)現時(shí),設置三個(gè)觸發(fā)器:上升沿檢測觸發(fā)器B、下降沿觸發(fā)器C以及波門(mén)定時(shí)觸發(fā)器D。其中,上升沿觸發(fā)器是在信號上升沿到來(lái)時(shí)變成高電平,下降沿觸發(fā)器是在信號下降沿到來(lái)時(shí)變成高電平,抖動(dòng)定時(shí)觸發(fā)器當前兩個(gè)觸發(fā)器是在前兩個(gè)觸發(fā)器之一變成高電平時(shí)變成高電平。前兩個(gè)觸發(fā)器在抖動(dòng)定時(shí)觸發(fā)器清零時(shí)同時(shí)被清零,而抖動(dòng)定時(shí)觸發(fā)器清零時(shí)間由信號頻率對應邊沿抖動(dòng)范圍決定。時(shí)序如圖4所示。其中,為觀(guān)察方便,下降沿觸發(fā)器變成高電平的時(shí)間拖后了一些。由圖可見(jiàn),輸入信號在前后沿均有雜亂的毛刺,用常規方法消除這種抖動(dòng)很困難,模擬去抖動(dòng)方法無(wú)能為力,常規的數字方法需要消耗軟件和硬件資源,而且容易形成誤操作,用我們的方法就很簡(jiǎn)潔。

A信號第一次電平變化時(shí)(t1時(shí)刻),出現上升沿,B觸發(fā)器開(kāi)始觸發(fā),同時(shí)引發(fā)D觸發(fā)器觸發(fā),第一次下降沿到來(lái)時(shí)(即第一個(gè)毛刺,t2時(shí)刻),C觸發(fā)器觸發(fā),在設定定時(shí)范圍內,三個(gè)觸發(fā)器均保持不變。定時(shí)結束時(shí)(t3時(shí)刻),D觸發(fā)器被清零,同時(shí)使B和C觸發(fā)器清零。從上面可以看出來(lái),只要t3時(shí)刻不超過(guò)t4時(shí)刻則不破壞原來(lái)信號的正負區間。

在A(yíng)信號實(shí)際下降沿到來(lái)時(shí)刻(t4時(shí)刻),相當于定時(shí)觸發(fā)器清零后第一次下降沿到來(lái)時(shí)刻,此時(shí)C觸發(fā)器又受到觸發(fā),同時(shí)引發(fā)D觸發(fā)器觸發(fā)。B觸發(fā)器在第一個(gè)毛刺到來(lái)時(shí)刻(t5時(shí)刻)得到觸發(fā),與前面相同。在這次定時(shí)沒(méi)有結束前三個(gè)觸發(fā)器變成不變,直到定時(shí)結束時(shí)刻(t6時(shí)刻),三個(gè)觸發(fā)器同時(shí)被清零。余下依此類(lèi)推。


圖4 去抖動(dòng)電路時(shí)序圖

最后,我們來(lái)看一下D觸發(fā)器波形,它在A(yíng)信號正半周期間正負變化一次,在A(yíng)信號負半周期間正負再變化一次,因此,只需用D觸發(fā)器的上升沿來(lái)觸發(fā)E信號,即可準確的恢復出沒(méi)有抖動(dòng)的A信號來(lái),如圖所示。如果A信號是周期信號,則E信號就是D信號的二分頻信號(注意用信號本身與D信號來(lái)對齊正半周就行)。

上面是有信號邊沿抖動(dòng)的情況的分析,現在再來(lái)看看信號沒(méi)有邊沿抖動(dòng)的情況?梢韵胂,在t2到t3時(shí)刻期間C觸發(fā)器沒(méi)有觸發(fā),但B和D觸發(fā)器依然觸發(fā),因為A信號存在上升沿,在t5到t6時(shí)刻期間B觸發(fā)器沒(méi)有觸發(fā),但C和D觸發(fā)器仍然觸發(fā),因為A信號在t4時(shí)刻存在下降沿,由此可以看出,在這種情況下,D觸發(fā)器波形沒(méi)有改變,從而可以用同樣的方法得到E恢復信號。

當信號頻率變化(或根本不是周期信號,只是一個(gè)個(gè)脈沖群)時(shí),只要設置的波門(mén)定時(shí)范圍滿(mǎn)足前面提出的兩個(gè)條件,則仍然可以適用。如果在多倍頻程變化時(shí),由于信號邊沿抖動(dòng)寬度不一致,低端的抖動(dòng)范圍可能已經(jīng)超出了高頻端周期的一半,不能進(jìn)行準確還原,因此需要進(jìn)行分段處理。在輸入信號頻率完全未知的情況下,可以實(shí)際測量參數,根據最穩定的情況來(lái)確定分段的界限和參數,如果配合少量的軟件編程,提取信號穩定的段結果即可。這樣,就可以在很寬的頻帶內,自動(dòng)選擇頻段參數以正確進(jìn)行去抖動(dòng)處理。

智能去抖動(dòng)方法的性能

從上面分析可以看出,只需用四個(gè)觸發(fā)器加一個(gè)定時(shí)器即可,定時(shí)器的位數由CPLD時(shí)鐘以及信號頻率決定,一般做到八位就非常好了。相對于其他方法,該智能去抖動(dòng)方法有以下優(yōu)點(diǎn):

(1)軟硬件上花費資源很少,但性能很好;

(2)能準確界定和還原信號的正半周和負半周;

(3)可在較寬的頻段里適用;

(4)不附帶引入的相位偏移等任何破壞原信號的信息。

應 用

下面是該去抖動(dòng)技術(shù)應用于模擬信號頻率測量的實(shí)際情況。

模擬信號的測頻方法比較多,以測周期方法為例。信號輸入到CPLD后,進(jìn)行電平比較,對于有邊沿抖動(dòng)的信號先用智能去抖動(dòng)方法進(jìn)行去抖動(dòng)處理。然后對恢復信號進(jìn)行邊沿檢測,啟動(dòng)計數,測量信號周期內信號計得的采樣個(gè)數,即可測得信號周期,從而計算出信號頻率。如果沒(méi)有去除抖動(dòng),測量結果勢必有非常大的誤差。一個(gè)實(shí)際的頻率測量電路如圖5所示。



圖5 頻率測量電路框圖

這里,前面的電路主要用于信號的匹配、放大和調理處理,CPLD與MPU 完成智能去抖動(dòng)、測頻和計算、顯示功能。實(shí)際測量當中,對于20Hz~20kHz信號只需三個(gè)頻段就能可靠解決抖動(dòng)的問(wèn)題。由于同時(shí)采用了分頻方法,實(shí)際測量精度在頻率高端達到1Hz。
本文地址:http://selenalain.com/thread-16579-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页