TW202023191A - 除彈跳電路 - Google Patents
除彈跳電路 Download PDFInfo
- Publication number
- TW202023191A TW202023191A TW107143231A TW107143231A TW202023191A TW 202023191 A TW202023191 A TW 202023191A TW 107143231 A TW107143231 A TW 107143231A TW 107143231 A TW107143231 A TW 107143231A TW 202023191 A TW202023191 A TW 202023191A
- Authority
- TW
- Taiwan
- Prior art keywords
- signal
- output signal
- output
- clock
- potential
- Prior art date
Links
Images
Abstract
一種除彈跳電路具有取樣電路以及邏輯閘。取樣電路用以在第一時脈訊號的兩個相鄰的上昇邊緣以及兩個相鄰的下降邊緣,對輸入訊號進行四次取樣,以決定第一輸出訊號、第二輸出訊號、第三輸出訊號及第四輸出訊號之電位。其中上述的兩個相鄰的上昇邊緣中至少有一上昇邊緣介於上述的兩個相鄰的下降邊緣之間,且上述的兩個相鄰的下降邊緣中至少有一下降邊緣介於上述的兩個相鄰的上昇邊緣之間。邏輯閘則用以對第一輸出訊號、第二輸出訊號、第三輸出訊號及第四輸出訊號進行及運算(AND operation)或是進行或運算(OR operation),以輸出一除彈跳訊號。
Description
本發明是有關於一種除彈跳電路(debounce circuit),且特別是有關於一種使用D型正反器(D flip-flop)的除彈跳電路。
在系統控制的過程中,訊號在元件之間相互傳遞,通常以上一級的輸出訊號作為下一級的輸入訊號。然而訊號在傳輸時,元件所輸出的訊號並非理想的完美波形,如鍵盤或按鍵所輸入的訊號。根據物理特性,當特性或準位被瞬間改變時,無法立即轉態,會產生擾動,導致訊號在進入穩定輸出狀態之前,以數位訊號的觀點來看會收到許多在數位邏輯值0與1交互跳動的彈跳現象,而此一現象將會導致系統視輸入端的訊號為連續輸入,因而導致狀態誤判,產生錯誤的訊息。
特別是系統上某些裝置,在邏輯判斷的設定上,只要偵測到轉態的現象就使系統進入電壓或訊息錯誤的處理,甚至可能因為一個不穩定的訊號,而造成系統關機或當機。因此,許多裝置的輸出訊號在輸入下一級元件之前,會利用除彈跳電路加以除彈跳,將輸入訊號透過除彈跳的延遲緩衝,轉變為輸出訊號,待狀態穩定後才將訊號輸入至下一級元件。
先前技術中的除彈跳電路通常會對輸入訊號進行取樣,而取樣的頻率須高於輸入訊號的頻率十倍以上。當輸入訊號轉態(例如:從數位邏輯值0轉為數位邏輯值1或從數位邏輯值1轉為數位邏輯值0)時,只要輸入訊號其被取樣到的邏輯值有一定數量連續的1或0(例如:連續取樣到四個1或四個0),除彈跳電路即可認定輸入訊號已達穩定狀態,而輸出除彈跳後的訊號。
然而,由於先前技術中的除彈跳電路所需的取樣頻率須高於輸入訊號的頻率十倍以上,這對某些電子設備來說,並無法提供頻率足夠高的訊號來對輸入訊號進行取樣。另一方面,由於傳統的除彈跳電路須連續取樣一定數量連續的1或0才會認定輸入訊號已達穩定狀態,裝置的設置時間(Setup time)會因這些過多的取樣而被縮短,而當設置時間被縮得太短時,訊號傳遞時的接收端即可能會接收到錯誤的訊號。
本發明提供一種除彈跳(debounce)電路,其包含取樣電路以及邏輯閘。取樣電路用以在第一時脈訊號的兩個相鄰的上昇邊緣(rising edge)以及兩個相鄰的下降邊緣(falling edge),對輸入訊號進行四次取樣,以決定第一輸出訊號之電位、第二輸出訊號之電位、第三輸出訊號之電位及第四輸出訊號之電位。其中上述的兩個相鄰的上昇邊緣中至少有一上昇邊緣介於上述的兩個相鄰的下降邊緣之間,且上述的兩個相鄰的下降邊緣中至少有一下降邊緣介於上述的兩個相鄰的上昇邊緣之間。邏輯閘則用以對第一輸出訊號、第二輸出訊號、第三輸出訊號及第四輸出訊號進行及運算(AND operation)或是進行或運算(OR operation),以輸出一除彈跳訊號。
請參考第1圖。第1圖為本發明一實施例之除彈跳電路(debounce)100的電路圖。除彈跳電路100一般用於將從訊號發送端所傳送過來的輸入訊號Sw進行除彈跳處理後,以產生除彈跳訊號Db1,並將除彈跳訊號Db1傳送到訊號接收端。彈跳電路100包含取樣電路50以及邏輯閘150。取樣電路50用以在第一時脈訊號CK1的兩個相鄰的上昇邊緣(rising edge)以及兩個相鄰的下降邊緣(falling edge),對輸入訊號Sw進行四次取樣,以決定第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4之電位。其中上述的兩個相鄰的上昇邊緣中至少有一上昇邊緣介於上述的兩個相鄰的下降邊緣之間,且上述的兩個相鄰的下降邊緣中至少有一下降邊緣介於上述的兩個相鄰的上昇邊緣之間。邏輯閘150則用以對第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4進行及運算(AND operation)或是進行或運算(OR operation),以輸出除彈跳訊號Db1。
在本發明一實施例中,取樣電路50可包含上昇邊緣觸發模組101以及下降邊緣觸發模組102。上昇邊緣觸發模組101用以當第一時脈訊號CK1處於上昇邊緣(rising edge)時,對輸入訊號Sw進行取樣以決定第一輸出訊號S1之電位,並對第一輸出訊號S1進行取樣以決定第三輸出訊號S3之電位。下降邊緣觸發模組102則用以當第一時脈訊號CK1處於下降邊緣(falling edge)時,對輸入訊號Sw進行取樣以決定第二輸出訊號S2之電位,並對第二輸出訊號S2進行取樣以決定第四輸出訊號S4之電位。
請參考第2圖,第2圖為第1圖的除彈跳電路100之各種訊號的時序圖。由於上昇邊緣觸發模組101是依據第一時脈訊號CK1的上昇邊緣,分別對輸入訊號Sw及第一輸出訊號S1進行取樣,以決定第一輸出訊號S1的電位與第三輸出訊號S3的電位,故第三輸出訊號S3的波形在時序上會落後第一輸出訊號S1的波形一個第一時脈訊號CK1的週期時間T。因此,第三輸出訊號S3可視為上昇邊緣觸發模組101在前一個週期對輸入訊號Sw進行上緣取樣的結果。相對地,第一輸出訊號S1則為上昇邊緣觸發模組101在當下這個週期對輸入訊號Sw進行上緣取樣的結果。相似地,由於下降邊緣觸發模組102是依據第一時脈訊號CK1的下降邊緣,分別對輸入訊號Sw及第二輸出訊號S2進行取樣,以決定第二輸出訊號S2的電位與第四輸出訊號S4的電位,故第四輸出訊號S4的波形在時序上會落後第二輸出訊號S2的波形一個第一時脈訊號CK1的週期時間T。因此,第四輸出訊號S4可視為下降邊緣觸發模組102在前一個週期對輸入訊號Sw進行下緣取樣的結果。相對地,第二輸出訊號S2則為下降邊緣觸發模組102在當下這個週期對輸入訊號Sw進行下緣取樣的結果。基於上述上昇邊緣觸發模組101及下降邊緣觸發模組102所輸出的四個輸出訊號S1至S4的時序特性,透過邏輯閘150對第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4進行及運算(AND operation)或是進行或運算(OR operation),即可產生所需的除彈跳訊號Db1。詳言之,在本實施例中,由於除彈跳訊號Db1是用於一高態動作(high-active)電路,故邏輯閘150可以是一個或閘(OR gate),而當第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4當中只要有一個其數位邏輯值為1時,邏輯閘150即可輸出數位邏輯值為1的除彈跳訊號Db1。相對地,只有當第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4其數位邏輯值都為0時,邏輯閘150才會輸出數位邏輯值為0的除彈跳訊號Db1。因此,即使在時間點t1至t11的過程中,因有雜訊30對輸入訊號Sw造成了干擾,進而使第一輸出訊號S1在時間點t5至t7之間降為低電位,使第二輸出訊號S2在時間點t6至t8之間降為低電位,使第三輸出訊號S1在時間點t7至t9之間降為低電位,且使第四輸出訊號S4在時間點t9至t10之間降為低電位,但由於第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4的數位邏輯值在時間點ta至t11都不全為0,故除彈跳訊號Db1的數位邏輯值在時間點ta至t11可一直維持在1。由此可知,除彈跳訊號Db1的數位邏輯值並不會因雜訊30而產生彈跳,故除彈跳電路100的確具有除彈跳的功能。
本實施例中的除彈跳電路100的除彈跳原理可簡單地說明如下。其中,上昇邊緣觸發模組101可輸出於第一時脈訊號CK1的兩相鄰上昇邊緣因對輸入訊號Sw進行取樣而產生的第一輸出信號S1及第三輸出信號S3,而下降邊緣觸發模組102可輸出於第一時脈訊號CK1的兩相鄰下降邊緣因對輸入訊號Sw進行取樣而產生的第二輸出信號S2及第四輸出信號S4。因此,整體來說,上昇邊緣觸發模組101和下降邊緣觸發模組102會在第一時脈訊號CK1的四個相鄰的訊號邊緣(即兩個上昇邊緣與兩個下降邊緣)對輸入訊號Sw進行四次的取樣。此外,在本實施例中,因除彈跳訊號Db1是用於高態動作電路,而決定邏輯閘150可為或閘,以對因四次的取樣而輸出的訊號S1、S2、S3及S4進行或運算,以輸出所要的除彈跳訊號Db1。由於輸入訊號Sw因雜訊30而產生的彈跳其歷經的時間不會太長(都會小於第一時脈訊號CK1的兩個週期2T),故藉由上述四次的取樣以及邏輯閘150的運算,本發明的除彈跳電路100所產生的除彈跳訊號Db1並不會因雜訊30而產生彈跳。
以下說明中,將搭配除彈跳電路100的時序圖來進一步地說明除彈跳電路100運作時的相關細節。請同時參考第1圖及第2圖。在時間點t0,輸入訊號Sw正要從低電位被切換至高電位。之後,在時間點t1,輸入訊號Sw的電位已升高到足夠高的電位,而足以讓上昇邊緣觸發模組101及下降邊緣觸發模組以102對其取樣時會輸出邏輯值為“1”的訊號。因此,當第一時脈訊號CK1在時間點t1被拉至高電位時,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位從低電位被上拉至高電位。其中,由於上昇邊緣觸發模組101的反應時間(response time)不為零,故第一輸出訊號S1的上昇邊緣與第一時脈訊號CK1的上昇邊緣之間(即時間點t1至ta之間)存在著些許的潛伏時間(latency),而由於有此一潛伏時間的存在,使得第一輸出訊號S1在時間點t1當下的電位還是低電位,故當上昇邊緣觸發模組101在時間點t1對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3後,第三輸出訊號S3的電位將會維持在低電位。接著,因第一時脈訊號CK1在時間點t2被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位從低電位被上拉至高電位。其中,由於下降邊緣觸發模組102的反應時間不為零,故第二輸出訊號S2的上昇邊緣與第一時脈訊號CK1的下降邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第二輸出訊號S2在時間點t2當下的電位還是低電位,故當下降邊緣觸發模組102在時間點t2對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4的後,第四輸出訊號S4的電位將會維持在低電位。
之後,因第一時脈訊號CK1在時間點t3被拉至高電位,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位維持在高電位;同時,上昇邊緣觸發模組101在時間點t3會對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3,而使得第三輸出訊號S3的電位被上拉至高電位。接著,因第一時脈訊號CK1在時間點t4被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位維持在高電位;同時,下降邊緣觸發模組102在時間點t4會對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4,而使得第四輸出訊號S4的電位被上拉至高電位。
在時間點t4至t6之間,因有雜訊30產生而對輸入訊號Sw的波形產生影響,故當第一時脈訊號CK1在時間點t5被拉至高電位時,將會使上昇邊緣觸發模組101因對輸入訊號Sw取樣而輸出的第一輸出訊號S1的電位從高電位被下拉至低電位。其中,由於上昇邊緣觸發模組101的反應時間不為零,故第一輸出訊號S1的下降邊緣與第一時脈訊號CK1的上昇邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第一輸出訊號S1在時間點t5當下的電位還是高電位,故當上昇邊緣觸發模組101在時間點t5對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3的後,第三輸出訊號S3的電位將會維持在高電位。類似地,由於雜訊30對輸入訊號Sw產生了影響,故當第一時脈訊號CK1在時間點t6被下拉至低電位時,將會使下降邊緣觸發模組102因對輸入訊號Sw取樣而輸出的第二輸出訊號S2的電位從高電位被下拉至低電位。其中,由於下降邊緣觸發模組102的反應時間不為零,故第二輸出訊號S2的下降邊緣與第一時脈訊號CK1的下降邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第二輸出訊號S2在時間點t6當下的電位還是高電位,故當下降邊緣觸發模組102在時間點t6對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4的後,第四輸出訊號S4的電位將會維持在高電位。
接著,由於雜訊30在時間點t6之後已經消失,故輸入訊號Sw的波形在時間點t6之後回復到正常的波形。因此,當第一時脈訊號CK1在時間點t7被拉至高電位時,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位從低電位被上拉至高電位。其中,由於上昇邊緣觸發模組101的反應時間不為零,故此時第一輸出訊號S1的上昇邊緣與第一時脈訊號CK1的上昇邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第一輸出訊號S1在時間點t7當下的電位還是低電位,故當上昇邊緣觸發模組101在時間點t7對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3的後,第三輸出訊號S3的電位將會從高電位被下拉至低電位。接著,因第一時脈訊號CK1在時間點t8被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位從低電位被上拉至高電位。其中,由於下降邊緣觸發模組102的反應時間不為零,故此時第二輸出訊號S2的上昇邊緣與第一時脈訊號CK1的下降邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第二輸出訊號S2在時間點t8當下的電位還是低電位,故當下降邊緣觸發模組102在時間點t8對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4的後,第四輸出訊號S4的電位將會從高電位被下拉至低電位。
之後,因第一時脈訊號CK1在時間點t9被拉至高電位,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位維持在高電位;同時,上昇邊緣觸發模組101在時間點t9會對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3,而使得第三輸出訊號S3的電位被上拉至高電位。接著,因第一時脈訊號CK1在時間點t10被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位維持在高電位;同時,下降邊緣觸發模組102在時間點t10會對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4,而使得第四輸出訊號S4的電位被上拉至高電位。
以下說明中,將就上述除彈跳電路100的特性,來說明本發明除彈跳電路100相較於先前技術的優點。在與第2圖具有相同雜訊30的條件下,先前技術的除彈跳電路因須其輸入訊號被取樣到的邏輯值有一定數量連續的1,才會輸出邏輯值為1的除彈跳訊號,故先前技術的除彈跳電路得在時間點t6之後(即無雜訊30的情況下)再經過幾個週期T以連續取得多個1後,才會輸出邏輯值為1的除彈跳訊號,故先前技術的除彈跳電路具有設置時間會被過度地縮短的問題。相較之下,本發明的除彈跳電路100所產生的除彈跳訊號Db1其數位邏輯值在時間點ta之後就可以是1,故本發明的除彈跳電路100的設置時間不會因過多的取樣而被過度地縮短,進而可確保訊號傳遞時的接收端所接收到的訊號之正確性。
在本發明一實施例中,上昇邊緣觸發模組101可包含第一D型正反器(D flip-flop)110及第三D型正反器130,而下降邊緣觸發模組102可包含第二D型正反器120及第四D型正反器140。第一D型正反器110的資料輸入端D接收輸入訊號Sw,第一D型正反器110的時脈輸入端CK接收第一時脈訊號CK1,而第一D型正反器110的第一資料輸出端Q輸出第一輸出訊號S1。當第一時脈訊號CK1由0轉為1時,第一資料輸出端Q所輸出的第一輸出訊號S1的邏輯值會等於輸入訊號Sw的邏輯值。因此,第一D型正反器110是當第一時脈訊號CK1處於上昇邊緣(rising edge)時,對輸入訊號Sw進行取樣,並輸出所取樣到的值。
第二D型正反器120的資料輸入端D接收輸入訊號Sw,第二D型正反器120的時脈輸入端CK接收第二時脈訊號CK2,而第二D型正反器120的第一資料輸出端Q輸出第二輸出訊號S2。第二時脈訊號CK2與第一時脈訊號CK1具有相同的頻率但與第一時脈訊號CK1反相。其中,第二時脈訊號CK2可藉由下降邊緣觸發模組102的第一反相器122產生,而第一時脈訊號CK1會被傳送到第一反相器122的輸入端。再者,當第二時脈訊號CK2由0轉為1時(即第一時脈訊號CK1由1轉為0時),第二D型正反器120的第一資料輸出端Q所輸出的第二輸出訊號S2的邏輯值會等於輸入訊號Sw的邏輯值。因此,第二D型正反器120相當於是當第一時脈訊號CK1處於下降邊緣(falling edge)時,對輸入訊號Sw進行取樣,並輸出所取樣到的值。
此外,第三D型正反器130的資料輸入端D接收第一輸出訊號S1,第三D型正反器130的時脈輸入端CK接收第一時脈訊號CK1,而第三D型正反器130的第一資料輸出端Q輸出第三輸出訊號S3。當第一時脈訊號CK1由0轉為1時,第三D型正反器130的第一資料輸出端Q所輸出的第三輸出訊號S3的邏輯值會等於第一輸出訊號S1的邏輯值。因此,第三D型正反器130是當第一時脈訊號CK1處於上昇邊緣時,對於第一輸出訊號S1進行取樣,並輸出所取樣到的值。
第四D型正反器140的資料輸入端D接收第二輸出訊號S2,第四D型正反器140的時脈輸入端CK接收第二時脈訊號CK2,而第四D型正反器140的第一資料輸出端Q輸出第四輸出訊號S4。在本實施例中,第四D型正反器140的時脈輸入端CK所接收第二時脈訊號CK2由下降邊緣觸發模組102的第二反相器142產生。而在本發明另一實施例中,第二反相器142則可被省略,而由單一個第一反相器122產生第二時脈訊號CK2,並將第二時脈訊號CK2同時傳送到第二D型正反器120的時脈輸入端CK及第四D型正反器140的時脈輸入端CK。當第二時脈訊號CK2由0轉為1時(即第一時脈訊號CK1由1轉為0時),第四D型正反器140的第一資料輸出端Q所輸出的第四輸出訊號S4的邏輯值會等於第二輸出訊號S2的邏輯值。因此,第四D型正反器140相當於是當第一時脈訊號CK1處於下降邊緣時,對第二輸出訊號S2進行取樣,並輸出所取樣到的值。
此外,在本實施例中,各D型正反器的設定端S、重置端R以及第二資料輸出端與一般的D型正反器的操作方式相同,其中設定端S用以設定D型正反器,重置端R用以重新設定D型正反器,而第二資料輸出端所輸出的訊號與第一資料輸出端Q所輸出的訊號互為反相的訊號。在本實施例中,各D型正反器的設定端S和重置端R維持在低電位,而第二資料輸出端所輸出的訊號不被另外處理。
請參考第3圖。第3圖繪示了包含第1圖中之輸入訊號Sw及除彈跳訊號Db1在內的四種訊號的波形。其中,Sw表示第1圖的輸入訊號Sw之原始波形,Dw表示當輸入訊號Sw未經除彈跳處理時訊號接收端所收到的訊號之波形,Dp表示當輸入訊號Sw經過習知技術的除彈跳電路處理過後所輸出的訊號之波形,而Db1表示經第1圖的除彈跳電路100所輸出的除彈跳訊號Db1之波形。在時間點T0,輸入訊號Sw正要從低電位被切換至高電位。然而,由於在時間點T1和T2之間所產生的干擾330,未經過除彈跳處理過的訊號Dw會因此而具有一低電位的脈波31。相較之下,同樣在有干擾330的情況下,訊號Dp和除彈跳訊號Db1則不具有脈波31。然而,由於習知技術的除彈跳電路必須對輸入訊號Sw連續取樣到多個1才會使訊號Dp為高電位,故訊號Dp在時間點T5才被提升至高電位。因此,採用習知技術的除彈跳電路之裝置其設置時間會因這些過多的取樣而被過度地縮短。其中,第一時脈訊號CK1的週期為T,而時間點T1和T5之間的時間長度約為第一時脈訊號CK1的四個週期4T。相較之下,本發明的除彈跳電路100利用第一D型正反器110及第三D型正反器130在第一時脈訊號CK1處於上昇邊緣時進行取樣,並利用第二D型正反器120及第四D型正反器140在第一時脈訊號CK1處於下降邊緣時進行取樣,故取樣的次數較習知的取樣次數密集,進而可使第一時脈訊號CK1的頻率不需太高。假設輸入訊號Sw的頻率為fa,而第一時脈訊號CK1與第二時脈訊號CK2的頻率為fb,則2fa≦fb≦5fa。亦即,第一時脈訊號CK1與第二時脈訊號CK2的頻率fb可大於或等於兩倍的輸入訊號Sw的頻率(即2fa),且第一時脈訊號CK1與第二時脈訊號CK2的頻率fb可小於或等於五倍的輸入訊號Sw的頻率(即5fa)。此外,本發明的除彈跳電路100所輸出的除彈跳訊號Db1在時間點T1即被提升至高電位,且彈跳訊號Db1處於高電位的狀態會至少一直維持到時間點T6之後。因此,利用本發明的除彈跳電路100,裝置的設置時間並不會被過度地縮短,而可確保訊號傳遞時的接收端所接收到的訊號之正確性。
請參考第4圖,第4圖為本發明另一實施例之除彈跳電路400的電路圖。除彈跳電路400與除彈跳電路100之間最大的不同點在於除彈跳電路400所輸出的除彈跳訊號Db2是用於一低態動作(low-active)電路,且除彈跳電路100的邏輯閘150由除彈跳電路400的邏輯閘450所取代。其中,邏輯閘450為一個及閘(AND gate),用以對第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4進行及運算(AND operation),以輸出除彈跳訊號Db2。因此,當第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4都為高電位時,除彈跳訊號Db2才會為高電位,而表示1的邏輯值。相對地,倘若第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4若有任一訊號為低電位時,除彈跳訊號Db2即為低電位,而表示0的邏輯值。
彈跳電路400同樣包含有取樣電路50,而取樣電路50包含上昇邊緣觸發模組101以及下降邊緣觸發模組102。上昇邊緣觸發模組101用以當第一時脈訊號CK1處於上昇邊緣時,對輸入訊號Sw進行取樣以決定第一輸出訊號S1之電位,並對第一輸出訊號S1進行取樣以決定第三輸出訊號S3之電位。下降邊緣觸發模組102則用以當第一時脈訊號CK1處於下降邊緣時,對輸入訊號Sw進行取樣以決定第二輸出訊號S2之電位,並對第二輸出訊號S2進行取樣以決定第四輸出訊號S4之電位。同樣的,上昇邊緣觸發模組101可包含第一D型正反器110及第三D型正反器130,而下降邊緣觸發模組102可包含第二D型正反器120及第四D型正反器140。
請參考第5圖,第5圖為第4圖的除彈跳電路400之各種訊號的時序圖。由於上昇邊緣觸發模組101是依據第一時脈訊號CK1的上昇邊緣,分別對輸入訊號Sw及第一輸出訊號S1進行取樣,以決定第一輸出訊號S1的電位與第三輸出訊號S3的電位,故第三輸出訊號S3的波形在時序上會落後第一輸出訊號S1的波形一個第一時脈訊號CK1的週期時間T。相似地,由於下降邊緣觸發模組102是依據第一時脈訊號CK1的下降邊緣,分別對輸入訊號Sw及第二輸出訊號S2進行取樣,以決定第二輸出訊號S2的電位與第四輸出訊號S4的電位,故第四輸出訊號S4的波形在時序上會落後第二輸出訊號S2的波形一個第一時脈訊號CK1的週期時間T。類似於上述實施例中的邏輯閘150,在本實施例中是透過邏輯閘450對第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4進行及運算(AND operation),以產生所需的除彈跳訊號Db2。詳言之,在本實施例中,由於除彈跳訊號Db2是用於低態動作(low-active)電路,故邏輯閘450可以是一個及閘(AND gate),而當第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4當中只要有一個其數位邏輯值為0時,邏輯閘450即可輸出數位邏輯值為0的除彈跳訊號Db2。相對地,只有當第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4其數位邏輯值都為1時,邏輯閘450才會輸出數位邏輯值為1的除彈跳訊號Db2。因此,即使在時間點t1至t11的過程中,因有雜訊530對輸入訊號Sw造成了干擾,進而使第一輸出訊號S1在時間點t5至t7之間升為高電位,使第二輸出訊號S2在時間點t6至t8之間升為高電位,使第三輸出訊號S1在時間點t7至t9之間升為高電位,且使第四輸出訊號S4在時間點t9至t10之間升為高電位,但由於第一輸出訊號S1、第二輸出訊號S2、第三輸出訊號S3及第四輸出訊號S4的數位邏輯值在時間點ta至t11都不全為1,故除彈跳訊號Db2的數位邏輯值在時間點ta至t11可一直維持在0。由此可知,除彈跳訊號Db2的數位邏輯值並不會因雜訊530而產生彈跳,故除彈跳電路400的確具有除彈跳的功能。
以下說明中,將就上述除彈跳電路400的特性,來說明本發明除彈跳電路400相較於先前技術的優點。在與第4圖具有相同雜訊530的條件下,先前技術的除彈跳電路因須其輸入訊號被取樣到的邏輯值有一定數量連續的0,才會輸出邏輯值為0的除彈跳訊號,故先前技術的除彈跳電路得在時間點t6之後(即無雜訊530的情況下)再經過幾個週期T以連續取得多個1後,才會輸出邏輯值為0的除彈跳訊號,故先前技術的除彈跳電路具有設置時間會被過度地縮短的問題。相較之下,本發明的除彈跳電路400所產生的除彈跳訊號Db2其數位邏輯值在時間點ta之後就可以是0,故本發明的除彈跳電路400的設置時間不會因過多的取樣而被過度地縮短,進而可確保訊號傳遞時的接收端所接收到的訊號之正確性。
以下說明中,將搭配除彈跳電路400的時序圖來進一步地說明除彈跳電路400運作時的相關細節。請同時參考第4圖及第5圖。在時間點t0,輸入訊號Sw正要從高電位被切換至低電位。之後,在時間點t1,輸入訊號Sw的電位已降低到足夠低的電位,而足以讓上昇邊緣觸發模組101及下降邊緣觸發模組以102對其取樣時會輸出邏輯值為“0”的訊號。因此,當第一時脈訊號CK1在時間點t1被上拉至高電位時,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位從高電位被下拉至低電位。其中,由於上昇邊緣觸發模組101的反應時間不為零,故第一輸出訊號S1的下降邊緣與第一時脈訊號CK1的上昇邊緣之間(即時間點t1至ta之間)存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第一輸出訊號S1在時間點t1當下的電位還是高電位,故當上昇邊緣觸發模組101在時間點t1對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3後,第三輸出訊號S3的電位將會維持在高電位。接著,因第一時脈訊號CK1在時間點t2被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位從高電位被下拉至低電位。其中,由於下降邊緣觸發模組102的反應時間不為零,故第二輸出訊號S2的下降邊緣與第一時脈訊號CK1的下降邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第二輸出訊號S2在時間點t2當下的電位還是高電位,故當下降邊緣觸發模組102在時間點t2對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4的後,第四輸出訊號S4的電位將會維持在高電位。
之後,因第一時脈訊號CK1在時間點t3被拉至高電位,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位維持在低電位;同時,上昇邊緣觸發模組101在時間點t3會對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3,而使得第三輸出訊號S3的電位被下拉至低電位。接著,因第一時脈訊號CK1在時間點t4被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位維持在低電位;同時,下降邊緣觸發模組102在時間點t4會對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4,而使得第四輸出訊號S4的電位被下拉至低電位。
在時間點t4至t6之間,因有雜訊530產生而對輸入訊號Sw的波形產生影響,故當第一時脈訊號CK1在時間點t5被拉至高電位時,將會使上昇邊緣觸發模組101因對輸入訊號Sw取樣而輸出的第一輸出訊號S1的電位從低電位被上拉至高電位。其中,由於上昇邊緣觸發模組101的反應時間不為零,故第一輸出訊號S1的上昇邊緣與第一時脈訊號CK1的上昇邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第一輸出訊號S1在時間點t5當下的電位還是低電位,故當上昇邊緣觸發模組101在時間點t5對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3的後,第三輸出訊號S3的電位將會維持在低電位。類似地,由於雜訊530對輸入訊號Sw產生了影響,故當第一時脈訊號CK1在時間點t6被下拉至低電位時,將會使下降邊緣觸發模組102因對輸入訊號Sw取樣而輸出的第二輸出訊號S2的電位從低電位被上拉至高電位。其中,由於下降邊緣觸發模組102的反應時間不為零,故第二輸出訊號S2的上昇邊緣與第一時脈訊號CK1的下降邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第二輸出訊號S2在時間點t6當下的電位還是低電位,故當下降邊緣觸發模組102在時間點t6對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4的後,第四輸出訊號S4的電位將會維持在低電位。
接著,由於雜訊530在時間點t6之後已經消失,故輸入訊號Sw的波形在時間點t6之後回復到正常的波形。因此,當第一時脈訊號CK1在時間點t7被上拉至高電位時,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位從高電位被下拉至低電位。其中,由於上昇邊緣觸發模組101的反應時間不為零,故此時第一輸出訊號S1的下降邊緣與第一時脈訊號CK1的上昇邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第一輸出訊號S1在時間點t7當下的電位還是高電位,故當上昇邊緣觸發模組101在時間點t7對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3的後,第三輸出訊號S3的電位將會從低電位被上拉至高電位。接著,因第一時脈訊號CK1在時間點t8被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位從高電位被下拉至低電位。其中,由於下降邊緣觸發模組102的反應時間不為零,故此時第二輸出訊號S2的上昇邊緣與第一時脈訊號CK1的下降邊緣之間存在著些許的潛伏時間,而由於有此一潛伏時間的存在,使得第二輸出訊號S2在時間點t8當下的電位還是高電位,故當下降邊緣觸發模組102在時間點t8對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4的後,第四輸出訊號S4的電位將會從低電位被上拉至高電位。
之後,因第一時脈訊號CK1在時間點t9被拉至高電位,上昇邊緣觸發模組101會對輸入訊號Sw進行取樣,進而使第一輸出訊號S1的電位維持在低電位;同時,上昇邊緣觸發模組101在時間點t9會對第一輸出訊號S1進行取樣以輸出第三輸出訊號S3,而使得第三輸出訊號S3的電位被下拉至低電位。接著,因第一時脈訊號CK1在時間點t10被下拉至低電位,下降邊緣觸發模組102會對輸入訊號Sw進行取樣,進而使第二輸出訊號S2的電位維持在低電位;同時,下降邊緣觸發模組102在時間點t10會對第二輸出訊號S2進行取樣以輸出第四輸出訊號S4,而使得第四輸出訊號S4的電位被下拉至低電位。
綜上所述,本發明的除彈跳電路具有上昇邊緣觸發模組、下降邊緣觸發模組及邏輯閘。其中,上昇邊緣觸發模組可輸出於時脈訊號的兩相鄰上昇邊緣因對輸入訊號進行取樣而產生的兩輸出信號,而下降邊緣觸發模組可輸出於時脈訊號的兩相鄰下降邊緣因對輸入訊號進行取樣而產生的兩輸出信號。因此,整體來說,上昇邊緣觸發模組和下降邊緣觸發模組會在時脈訊號的四個相鄰的訊號邊緣(即兩個上昇邊緣與兩個下降邊緣)對輸入訊號進行四次的取樣。此外,本發明是依據除彈跳訊號是用於高態動作電路或是用於低態動作電路,來決定邏輯閘可為或閘或是及閘,而對因四次的取樣而輸出的訊號進行或運算或是進行及運算,以輸出所要的除彈跳訊號。由於輸入訊號因雜訊而產生的彈跳其歷經的時間不會太長(都會小於兩個取樣時脈的週期),故藉由上述四次的取樣以及邏輯閘的運算,本發明的除彈跳電路所產生的除彈跳訊號並不會因雜訊而產生彈跳。再者,由於本發明的除彈跳電路利用上昇邊緣觸發模組在時脈訊號處於上昇邊緣時進行取樣,並利用下降邊緣觸發模組在時脈訊號處於下降邊緣時進行取樣,故取樣的次數密集,用以取樣的時脈訊號之頻率不需太高。此外,本發明的除彈跳電路的設置時間不會因過多的取樣而被過度地縮短,進而可確保訊號傳遞時的接收端所接收到的訊號之正確性。 以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
30、330、530:雜訊50:取樣電路100、400:除彈跳電路101:上昇邊緣觸發模組102:下降邊緣觸發模組110:第一D型正反器120:第二D型正反器122:第一反相器130:第三D型正反器140:第四D型正反器142:第二反相器150:邏輯閘、或閘450:邏輯閘、及閘CK:時脈輸入端CK1:第一時脈訊號CK2:第二時脈訊號D:資料輸入端Db1、Db2:除彈跳訊號Dp、Dw:訊號Q:第一資料輸出端:第二資料輸出端R:重置端S:設定端S1:第一輸出訊號S2:第二輸出訊號S3:第三輸出訊號S4:第四輸出訊號Sw:輸入訊號T:週期T0、T1至T6、ta、t0、t1至t11:時間點
第1圖為本發明一實施例之除彈跳電路的電路圖。 第2圖為第1圖的除彈跳電路之各種訊號的時序圖。 第3圖繪示了包含第1圖中之輸入訊號Sw及除彈跳訊號Db1在內的四種訊號的波形。 第4圖為本發明另一實施例之除彈跳電路的電路圖。 第5圖為第4圖的除彈跳電路之各種訊號的時序圖。
100:除彈跳電路
50:取樣電路
101:上昇邊緣觸發模組
102:下降邊緣觸發模組
110:第一D型正反器
120:第二D型正反器
122:第一反相器
130:第三D型正反器
140:第四D型正反器
142:第二反相器
150:邏輯閘;或閘
CK:時脈輸入端
CK1:第一時脈訊號
CK2:第二時脈訊號
D:資料輸入端
Db1:除彈跳訊號
Q:第一資料輸出端
R:重置端
S:設定端
S1:第一輸出訊號
S2:第二輸出訊號
S3:第三輸出訊號
S4:第四輸出訊號
Sw:輸入訊號
Claims (10)
- 一種除彈跳(debounce)電路,包含: 一取樣電路,用以在一第一時脈訊號的兩個相鄰的上昇邊緣(rising edge)以及兩個相鄰的下降邊緣(falling edge),對一輸入訊號進行四次取樣,以決定一第一輸出訊號之電位、一第二輸出訊號之電位、一第三輸出訊號之電位及一第四輸出訊號之電位,其中該兩個相鄰的上昇邊緣中至少有一上昇邊緣介於該兩個相鄰的下降邊緣之間,且該兩個相鄰的下降邊緣中至少有一下降邊緣介於該兩個相鄰的上昇邊緣之間;以及 一邏輯閘,用以對該第一輸出訊號、該第二輸出訊號、該第三輸出訊號及該第四輸出訊號進行及運算(AND operation)或是進行或運算(OR operation),以輸出一除彈跳訊號。
- 如請求項1之除彈跳電路,其中該取樣電路包含: 一上昇邊緣觸發模組,用以當該第一時脈訊號處於上昇邊緣時,對該輸入訊號進行取樣以決定該第一輸出訊號之電位,並對該第一輸出訊號進行取樣以決定該第三輸出訊號之電位;以及 一下降邊緣觸發模組,用以當該第一時脈訊號處於下降邊緣時,對該輸入訊號進行取樣以決定該第二輸出訊號之電位,並對該第二輸出訊號進行取樣以決定該第四輸出訊號之電位。
- 如請求項1或2之除彈跳電路,其中該邏輯閘為一或閘(OR gate),用以對該第一輸出訊號、該第二輸出訊號、該第三輸出訊號及該第四輸出訊號進行或運算(OR operation),以輸出該除彈跳訊號。
- 如請求項1或2之除彈跳電路,其中該邏輯閘為一及閘(AND gate),用以對該第一輸出訊號、該第二輸出訊號、該第三輸出訊號及該第四輸出訊號進行及運算(AND operation),以輸出該除彈跳訊號。
- 如請求項2之除彈跳電路,其中該上昇邊緣觸發模組包含一第一D型正反器(D flip-flop)及一第三D型正反器,該下降邊緣觸發模組包含一第二D型正反器及一第四D型正反器; 其中該第一D型正反器(D flip-flop),包含: 一資料輸入端,用以接收該輸入訊號; 一時脈輸入端,用以接收該第一時脈訊號;以及 一第一資料輸出端,用以輸出該第一輸出訊號; 其中該第二D型正反器,包含: 一資料輸入端,用以接收該輸入訊號; 一時脈輸入端,用以接收一第二時脈訊號,其中該第二時脈訊號與該第一時脈訊號具有相同的頻率但與該第一時脈訊號反相;以及 一第一資料輸出端,用以輸出該第二輸出訊號; 其中該第三D型正反器,包含: 一資料輸入端,用以接收該第一輸出訊號; 一時脈輸入端,用以接收該第一時脈訊號;以及 一第一資料輸出端,用以輸出該第三輸出訊號;以及 其中該第四D型正反器,包含: 一資料輸入端,用以接收該第二輸出訊號; 一時脈輸入端,用以接收該第二時脈訊號;以及 一第一資料輸出端,用以輸出該第四輸出訊號。
- 如請求項5之除彈跳電路,其中該下降邊緣觸發模組另包含一反相器,其輸入端接收該第一時脈訊號,而其輸出端輸出該第二時脈訊號。
- 如請求項6之除彈跳電路,其中該反相器的輸出端耦接該第二D型正反器的該時脈輸入端及該第四D型正反器的該時脈輸入端。
- 如請求項5之除彈跳電路,其中該下降邊緣觸發模組另包含: 一第一反相器,其輸入端接收該第一時脈訊號,而其輸出端耦接該第二D型正反器的該時脈輸入端;以及 一第二反相器,其輸入端接收該第一時脈訊號,而其輸出端耦接該第四D型正反器的該時脈輸入端。
- 如請求項1或2之除彈跳電路,其中該第一時脈訊號的頻率小於或等於五倍的該輸入訊號的頻率。
- 如請求項9之除彈跳電路,其中該第一時脈訊號的頻率大於或等於兩倍的該輸入訊號的頻率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107143231A TW202023191A (zh) | 2018-12-03 | 2018-12-03 | 除彈跳電路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107143231A TW202023191A (zh) | 2018-12-03 | 2018-12-03 | 除彈跳電路 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202023191A true TW202023191A (zh) | 2020-06-16 |
Family
ID=72175899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107143231A TW202023191A (zh) | 2018-12-03 | 2018-12-03 | 除彈跳電路 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TW202023191A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11521480B1 (en) | 2021-06-30 | 2022-12-06 | Wiwynn Corporation | Intrusion detection apparatus and method thereof |
-
2018
- 2018-12-03 TW TW107143231A patent/TW202023191A/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11521480B1 (en) | 2021-06-30 | 2022-12-06 | Wiwynn Corporation | Intrusion detection apparatus and method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6710726B2 (en) | Serializer-deserializer circuit having increased margins for setup and hold time | |
US8686773B1 (en) | In-system margin measurement circuit | |
US5087828A (en) | Timing circuit for single line serial data | |
US5968180A (en) | Data capture circuit for asynchronous data transfer | |
US7482841B1 (en) | Differential bang-bang phase detector (BBPD) with latency reduction | |
CN109120257A (zh) | 一种低抖动分频时钟电路 | |
KR20130095832A (ko) | 비트 생성 장치 및 비트 생성 방법 | |
JP3080341B2 (ja) | データ一致検出回路 | |
CN111211774B (zh) | 除弹跳电路 | |
US6163584A (en) | Synchronization element for converting an asynchronous pulse signal into a synchronous pulse signal | |
TW202023191A (zh) | 除彈跳電路 | |
US7692564B2 (en) | Serial-to-parallel conversion circuit and method of designing the same | |
TWI804187B (zh) | 眼開監測裝置與其操作方法 | |
US7679404B2 (en) | Missing clock pulse detector | |
CN114185397B (zh) | 跨时钟域数据传输电路及方法 | |
US9800265B2 (en) | Data serialization circuit | |
JP2003264454A (ja) | 高速差動データサンプリング回路 | |
US7098695B2 (en) | Dynamic-to-static logic converter | |
TWI835503B (zh) | 邊緣偵測器 | |
US11901038B2 (en) | Memory system | |
TWI605694B (zh) | 接收器損失信號的去雜訊裝置與方法 | |
JPH04239819A (ja) | 同期式カウンタ | |
TWI452837B (zh) | 時脈回復電路及其頻率偵測模組 | |
JPH0563524A (ja) | 信号入力回路 | |
JP2000112921A (ja) | マイクロコンピュータ |