在許多應用中,對整個設計項目使用外部全局時鐘是不可能或不切實際的。
PLD具有產品術語邏輯陣列時鐘(即,時鐘由邏輯生成),允許任何功能單獨為各個觸發器提供時鐘。
但是,使用陣列時鐘時,應仔細分析時鐘功能以避免毛刺。
柵極時鐘通常由陣列時鐘形成。
門控時鐘通常與微處理器接口相關聯,地址線用于控制寫脈沖。
但是,只要觸發器由組合功能計時,通常就會有門控時鐘。
如果滿足以下條件,門控時鐘可以像全局時鐘一樣可靠地工作:1。
驅動時鐘的邏輯必須只包含一個AND門或一個OR門。
如果在某些操作條件下使用任何其他邏輯,競爭將會出現故障。
2.邏輯門的輸入充當實際時鐘,邏輯門的所有其他輸入必須被視為遵守時鐘設置和保持時間約束的地址或控制線。
所謂的門控時鐘意味著連接觸發器的時鐘端子來自組合邏輯。
任何組合邏輯肯定會在布局和布線后產生毛刺,如果該毛刺信號用作時鐘,則會出現功能錯誤。
門控時鐘用于組合邏輯。
通常,驅動門控時鐘的邏輯僅包含一個門。
如果存在其他額外邏輯,則由于競爭而容易產生不期望的故障。
門控時鐘通過每小時信號控制時鐘的切換。
當系統不工作時,時鐘可以關閉,整個系統處于非活動狀態,這可以在一定程度上降低系統功耗。
然而,門控時鐘的使用不符合同步設計的想法,這可能影響設計的實現和驗證。
在功能上,使用啟用時鐘而不是門控時鐘是一個不錯的選擇;但是,當使能信號關閉時,使能時鐘仍然有效,并且它不像門控時鐘那樣降低系統的功耗。
解決方案:對于上升沿的有效系統時鐘clk,其下降沿首先擊中門控時鐘,然后使用該使能信號和系統時鐘clk作為后續電路的門控時鐘。