施朝霞+南余榮+賈立新
摘 要:D觸發器是構成時序電路的基本單元,是數字電路課程中的重要內容,D觸發器的動態參數是教學的難點和重點。課堂教學中由于學時有限只分析了D觸發器動態參數對時序電路工作特性的影響,沒有探討D觸發器動態參數與其自身內部電路結構的關系,學生對該知識點理解不透。該文以開關型主從結構上升沿D觸發器為例,分析了其動態參數與內部電路結構的關系,并進行了仿真驗證和分析。該文對D觸發器的動態參數教學有一定的指導作用。
關鍵詞:D觸發器 動態參數 電路結構
中圖分類號:TN79 文獻標識碼:A 文章編號:1674-098X(2017)07(a)-0081-04
Abstract:D flip-flop is the basic unit of sequential circuit, which is an important part of digital circuit course. The dynamic parameters of D flip-flop are the difficulty and key point when teaching. The influence of the dynamic parameters of the D flip-flop on the working characteristics of the sequential circuit is analyzed, the relationship between the dynamic parameters of the D flip-flop and its internal circuit structure is not discussed due to the limited class hours. Students can not profound understanding this point of knowledge. In this paper, the rising edge D flip-flop with switching master slave structure is designed as an example. The relationship between the dynamic parameters and the internal circuit structure under typical conditions are simulated and analyzed. This paper has some guidance to the teaching of dynamic parameters for D flip-flop.
Key Words:D flip-flop; Dynamic parameters; Circuit structure
D觸發器是構成數字時序邏輯電路的最基本單元,D觸發器的三個重要動態參數建立時間、保持時間和傳播延時決定了構成的時序電路能被時鐘控制的速度,是“數字電路與數字邏輯”課程的重要內容。數字電路教學中通過如下思考題引入了動態參數的教學內容:上升沿D觸發器,時鐘CLK端接收上升沿信號的同時數據輸入端D信號剛好從0變為1,則此時D觸發器輸出0還是1?結論是D觸發器輸出0[1],因為數據信號D在時鐘信號CLK上升沿到來之前有穩定最小時間的要求。
課堂教學中舉例法很好地給出了D觸發器建立時間的概念,但也給了學生部分錯誤的暗示,那就是數據信號D在時鐘信號CLK上升沿到來之前必須有一個穩定的最小時間。實際上,經過D觸發器內部電路結構的優化設計,D觸發器的建立時間可以是0,也可以是負的,也就是,即使時鐘信號CLK上升沿到來之后,數據信號D發生0到1的變換,D觸發器的輸出照樣可以得到1。
筆者認為,在D觸發器動態參數的課堂教學中不能脫離兩點:首先是要明確D觸發器動態參數的應用背景;其次是不能脫離開D觸發器本身的內部結構。否則,學生難以掌握動態參數的本質,也就不能靈活應用進行電路的分析。基于對D觸發器動態參數的概念的理解基礎上,掌握動態參數與其內部電路結構的關系,有利于明確D觸發器動態參數的工程實際背景和意義,也更有利于后面時序邏輯電路中時序設計課程內容的學習。
但是,“數字電路與數字邏輯”理論教學中只給出了D觸發器動態參數的定性概念說明。該文在課程教學的基礎上深入分析了D觸發器動態參數與電路內部結構的關系,供不同層次的學生學習時參考。
1 D觸發器的動態參數
D觸發器的動態參數用來表征輸入信號和時鐘信號之間的時間要求,以及輸出對時鐘信號響應的延遲時間。如圖1(a)所示為上升沿D觸發器的動態時序圖,建立時間tSU為數據信號D在時鐘信號CLK上升沿到來之前應穩定的最小時間;保持時間tH為數據信號D在時鐘信號CLK上升沿到來以后應穩定的最小時間;tW為觸發脈沖寬度;tp(CQ)為時鐘信號的上升沿至觸發器輸出端建立新的穩定狀態所產生的延遲時間。
正確理解觸發器的建立時間、保持時間、傳輸延遲時間對保證時序電路的正常工作十分重要,它們直接影響時序電路能被時鐘控制的速度[2]。在同步時序電路中,對時鐘CLK激勵做出響應的觸發器是同時發生的,每一級觸發器運行的結果必須等到下一個時鐘翻轉時進入下一級。以圖1(b)由D觸發器構成的二分頻電路為例,電路能正確工作的時序條件是,CLK脈沖的周期T應滿足:T≥tp(CQ)+tSU+tpNOT,其中tpNOT為組合邏輯電路反相器的延遲時間。同時在CLK上升沿到來之后,如果輸出Q的改變值通過反相器很快反饋到觸發器的輸入端,就會無法滿足觸發器的保持時間,為了滿足觸發器的保持時間,應滿足tp(CQ)+tpNOT≥tH。經過課堂的理論學習,學生能夠掌握D觸發器動態參數的基本概念,會畫一些簡單的時序電路波形。在課堂上學時有限沒有對D觸發器的動態參數進行深入分析,比如說建立時間tSU,在D觸發器時鐘信號CLK上升沿到來之前,數據D必須要提前出現嗎?答案是否定的,D觸發器的內部結構決定了這些動態參數值的大小,因此掌握D觸發器動態參數與其內部電路結構的關系,更有利于學生深層次的掌握數字電路相關知識點,并進行工程應用。endprint
2 電路結構對D觸發器動態參數的影響
構成一個D觸發器的常用結構是主從結構[3],舉個例子如圖2所示,D觸發器由多路開關型兩個主從結構的鎖存器構成,多路開關采用傳輸門來實現。當時鐘CLK=0時,T1、T4導通T2、T3關斷,輸入D被采樣到節點QM上,輸出Q保持不變。當時鐘CLK上升到1時,主級T1關斷停止采樣輸入并進入維持狀態,T2導通,交叉耦合的反相器N2和N3保持QM狀態。同時,T3導通T4關斷,QM被復制到輸出Q上。
假設圖2中每一個反相器的傳播延時為tpd_inv,傳輸門的傳播延時為tpd_tx。建立時間是輸入數據D在時鐘CLK上升沿之前必須有效的時間,從圖2的工作原理分析,這就相當于問:在時鐘上升沿之前輸入D必須穩定多長時間才能使QM采樣的值是可靠的?分析可知,輸入D在時鐘上升沿之前必須傳播通過N1、T1、N3和N2,必須充分保證傳輸門T2兩端A和B的節點電壓值相等,否則,交叉耦合的一對反相器N2和N3就可能得不到正確的輸入D的值。因此建立時間等于3× tpd_inv+tpd_tx。如何通過內部結構的設計來改變建立時間呢?一個非常簡單的方法就是在CLK輸入端后加入兩級反相器,通過延緩時鐘上升沿到達傳輸門T2的時間來減小建立時間,此時的建立時間等于1×tpd_inv+tpd_tx。
傳播延時是QM值傳播到輸出Q所需要的時間,在滿足建立時間的前提下,數據D已經傳播到反相器N4的輸出端,因此傳播延時為通過T3和N6的延時,tp(CQ)=1×tpd_inv+tpd_tx。
保持時間表示在時鐘上升沿之后輸入必須保持穩定的時間,如圖2電路結構中,當時鐘為高電平時,傳輸門T1關斷。由于D輸入和CLK在到達T1前都有一個反相器的延遲時間,所以在時鐘變為高電平之后輸入上的任何變化都不會影響輸出,因為保持時間tH=0,這里也可以通過在D輸入或者CLK輸入后加反相器的方法來改變維持時間。
3 仿真驗證
基于0.5 ?m CMOS工藝[4]設計的多路開關主從型上升沿D觸發器詳細內部電路如圖3所示,功能框圖為對應的圖2,電路電源電壓為5 V。采用Cadence軟件[5]重點對D觸發器的建立時間進行了仿真,并通過比較說明電路結構對D觸發器建立時間的影響。
為了得到上升沿D觸發器的建立時間,設置變化的數據輸入端D(從0變為1)逐漸靠近時鐘CLK上升沿直到電路失效無法獲取到正確的D信號。圖4中(a)和(b)分別仿真了數據輸入D與時鐘邊沿偏差0.33 ns和0.34 ns時觸發器的工作波形,對于偏差0.34 ns的情況,輸出Q維持在高電平,對輸入D的采樣值是正確的,對于偏差0.33 ns的情況,傳送到輸出Q的值是錯誤的,因為節點QM沒有足夠的時間上升到高電平,從而導致輸出Q仍為低電平。通過圖4的仿真可以清楚地看到該D觸發器的建立時間tSU=0.34 ns。
為了說明電路結構對建立時間的影響,在時鐘信號CLK后加了兩級反相器,如圖2中圓圈所示。采用相同的仿真方法,數據輸入端D逐漸靠近時鐘信號CLK端,仿真結果如圖5所示,當tSU=0.08 ns,輸出Q得到低電平,對數據輸入端D高電平的采樣是錯誤的,當tSU=0.1 ns,輸出Q得到高電平,對數據輸入端D高電平的采樣是正確的,因此修改電路結構D觸發器的建立時間tSU=0.1 ns。相比于圖4的仿真結果,CLK后加了兩級反相器的D觸發器的建立時間比CLK沒有加反相器的D觸發器的建立時間少了0.24 ns。
4 結語
該文從D觸發器的電路內部結構出發,分析了D觸發器動態參數與內部電路結構的關系,并以建立時間為例,利用CMOS工藝設計了完整的電路內部結構圖并進行了仿真驗證,仿真結果表明,D觸發器的動態參數是可以進行優化設計的。在數字電路課程D觸發器動態參數的學習中,建議將此內容補充進去,使學生能夠正確完善地理解動態參數與時序電路之間的關系,并能更好地應用到工程實踐中。
參考文獻
[1] 賈立新.數字電路[M].2版.北京:電子工業出版社,2011.
[2] Jan M,Rabaey.數字集成電路-電路、系統與設計[M].2版.周潤德,譯.北京:電子工業出版社,2011.
[3] Anant Agarwal,Jeffrey H.Lang.模擬和數字電子電路基礎[M].于歆杰,朱桂萍,劉秀成,譯.北京:清華大學出版社,2008.
[4] Charles Hawkins.CMOS數字集成電路設計[M].王昱陽,尹說,譯.北京:機械工業出版社,2016.
[5] 陳鋮穎.CMOS模擬集成電路設計與仿真實例-基于Cadence A[M].北京:電子工業出版社,2013.endprint