如果電路有非同步訊號,就可能使電路進入亞穩態,(因為非同步訊號可能處於時鐘訊號建立時間以內)即是輸出不確定的狀態。
非同步訊號如果是外部的機械輸入,比如鍵盤等,輸入訊號就會產生機械性地振盪,因此首先需要對此類非同步訊號加乙個去抖電路。可採用如下的基於nand鎖存器的開關去抖電路:
假設開關從上撥到下,當開關撥動時,開關臂立即與上方電路連線中斷,上面的輸入也就穩定,開關臂與下方電路接觸後,電路就會完成狀態轉換。即使現在開關仍舊會抖動,nand鎖存器的結構也能保證此時的輸出是穩定的。這類電路一般用在鍵盤下。
重要規則是乙個非同步訊號不能使用多個同步裝置實現同步;
同步裝置一般有兩個型別,根據非同步訊號的脈衝寬度是否大於同步訊號的時鐘週期 來劃分;
若非同步訊號的脈衝寬度大於同步訊號的時鐘週期,同步的方法是使用n級的移位暫存器,如下圖所示使用的是2級同步電路。輸出穩定的最長時間是n+1 個週期,最壞情況是當不穩定的非同步輸入處於建立時間以內。具體使用幾級需要根據非同步訊號和同步訊號週期來確定。
若非同步訊號的脈衝寬度小於同步訊號的時鐘週期,採用如下的同步電路。(教科書中對於此電路的波形圖有兩處是錯誤的,只有e 圖是正確的)當然此類電路乙個週期只能處理乙個脈衝訊號,若乙個週期出現多個脈衝訊號,則應該選用更小的同步週期。
以上的非同步轉同步電路,得到的同步訊號都有一定的delay, 但是沒有關係,因為非同步訊號本來就沒有乙個確定的輸入時間。
同步時序電路與非同步時序電路,
同步時序電路與非同步時序電路的區別 簡而言之 同步電路 儲存電路中所有觸發器的時鐘輸入端都接同乙個時鐘脈衝源,因而所有觸發器的狀態的變化都與所加的時鐘脈衝訊號同步。非同步電路 電路沒有統一的時鐘,有些觸發器的時鐘輸入端與時鐘脈衝源相連 這有這些觸發器的狀態變化與時鐘脈衝同步,而 其他的觸發器的狀態變...
非同步電路中時鐘同步的方法
時鐘是數位電路中所有訊號的參考,特別是在fpga中,時鐘是時序電路的動力,是血液,是核心。沒有時鐘或者時鐘訊號處理不得當,都會影響系統的效能甚至功能,所以在一般情況下,在同乙個設計中使用同乙個時鐘源,當系統中有多個時鐘時,需要根據不同情況選擇不同的處理方法,將所有的時鐘進行同步處理,下面分幾種情況介...
關於消抖電路的再認知(消抖電路的簡潔寫法)
2019年11月,學習了梅雪松的消抖電路,但始終覺得他用狀態機來判斷抖動並消除抖動會增加很多功耗,畢竟乙個按鍵的每次抖動都要用狀態機來判斷,增加了電路電平某段時間的翻轉率,覺得不妥。可是本人始終覺得兩人的寫法都有些欠缺。恰巧入職未滿一周,有幸接觸到了公司合作方所給的fpga 其中簡潔的消抖電路令我拍...