# 期中準備 ### 1. 舉個例,說明靜態互補式 CMOS 邏輯閘之設計? ANS: - 1.每一個閘級都分別由一NMOS及一PMOS構成的網路;輸入訊號加到各電晶體的閘級,PMOS網路上街電源VDD,NMOS網路下接地線GND,單一輸出端從PMOS網路與NMOS網路的交接點拉出 - 2.每一最小項使許多變數的積,其相當於是串聯的NMOS電晶體與並聯的PMOS電晶體 - 3.積之和再NMOS網路上便是各串聯電晶體之並聯,而在PMOS網路中便是各並聯電晶體之串聯 ### 2. 說明靜態互補式 CMOS 邏輯電路的基本特性(至少三種)。 ANS: - 1.對於C-CMOS電路而言,由於完全對稱的結構,若是輸入電壓有0~VDD的全擺幅(full swing),則輸出訊號也一定擁有VDD~0的全擺幅。同時當輸入電壓是0或VDD時,電路也沒有直流功耗。 - 2.由於輸入及輸出訊號均有全擺幅,任何閘級鈞能任意銜接,不需要考慮電壓準位問題 - 3.由於輸入及輸出訊號均有全擺幅,製程變動也不會影響此特性。所以縱然製造後製程特性可能與設計時稍有不同,對於一般的C-CMOS電路,或許會影響其速度或功耗等電性表現,卻不會影響到其應有的功能。為大型電路之量產特性提供絕佳的支持---可靠度(reliability) - 4.一般在設計時會考慮variation corners,讓設計除了滿足功能要求外,也讓電性的表現甚至比規格更嚴一點,留有margin。因此製造後,非但功能一定可以達成,電性也能滿足規格。 ### 3. 請說明 flip-flop的set-up time (ts)、hold time (th)、及delay time(td)分別如何定義。 ANS: - 1.Setup time: 每一週期,正確資料(data)必須在時脈訊號(clock)最後抓取資料之時間點之ts以前穩定(變化完成)。 - 2.Hold time: 每一週期,正確資料再時脈訊號(clock)最後抓取資料之時間點後之th以前仍須保持穩定(之後才能變化) - 3.delay time:在資料可以輸出之時脈訊號準位時段內,當資料有所變化時,從資料變化起至輸出訊號跟著完成變化為止之時間延遲。 ### 4.在數位系統裡.如何預估系統的最高工作頻率?請推導公式,並說明公式推導之考量! ANS: - 要找到最高頻率必須找到function正常的情況下最短的cycle time,而週期是由critical path所決定,以下為critical path delay推導,以單一方向正反器為例 從FF1-->FF2之間會經過Tcq+Tcomb+Tsetup 然後為了滿足FF2的setup time,資料到達時間<=下一個edge到達時間-Tsetup 資料到達時間= Tcq+Tcomb 下一個edge到達時間為Tcyc+Tskew 因次Tcq+Tcomb <= Tcyc + Tskew - Tsetup Tcyc >= Tcq+Tcomb+Tsetup - Tskew Tcyc,min = Tcq+Tcomb+Tsetup - Tskew 因此Fmax = 1/Tcyc,min = 1/( Tcq+Tcomb+Tsetup - Tskew) ### 5.上述問題.如何將PVT變異納入考量? ANS: - 將PVT變異造成的影響考慮的最嚴謹,設計時及考慮worst case 以setup time考量:通常是SS corner+0.9VDD+Tmin,這是決定Fmax的關鍵 以hold time考量:通常是FF corner+1.1VDD+Tmax,這是檢查hold time violation的關鍵 若是在上述兩項設計考量下均可達到,不會有violation,則此設計可以最小化PVT變異帶來的電路功能不正常 ### 6.在數位系統裡,如何避免發生 hold-time violation 問題? ANS: - 由於tcq+tcomb >= tsk+th,由於tcq、tsk、th都不是設計者可以決定的,只能確保combinaitonal circuit的delay。在資料變化路徑加入buffer chain,確保tcq + tcomb>=tsk+th,並做足夠嚴謹的時序分析,以免發生hold time violation。 ### 7.進行管線(pipelined)電路之時序驗證時 ### (a)有哪幾項重要的參數? ### (b)說明此些參數在電路上的意義 ANS: - 1.setup time:每一週期,正確資料(data)必須在時脈訊號(clock)最後抓取資料之時間點之ts以前穩定(變化完成) - 2.hold time:每一週期,正確資料再時脈訊號(clock)最後抓取資料之時間點後之th以前仍須保持穩定(之後才能變化) - 3.delay time:在資料可以輸出之時脈訊號準位時段內,當資料有所變化時,從資料變化起至輸出訊號跟著完成變化為止之時間延遲 - 4.skew time:相鄰pipeline register之間的clock到達時間差 ### (c)說明控制此些参數的因素 - 影響setup time、hold time、delay time的因素:由flip-flop本身的transistor level設計決定 - 影響skew time的因素:由時脈樹的結構與平衡決定 ### (d)說明時序驗證與操作 PVT 條件間的關係。 - 1.驗證setup time:必須在Slow corner(SS, Tmax,-40C,VDD-10%) 下進行,因為此時延遲最長,以確保在最差情況下還能達到目標頻率 - 2.驗證hold time:必須在Fast corner(FF,Tmin,125C,VDD+10%)下進行,因為此時延遲最短,確保在最快的情況下不會有資料race的問題 ### 8. 就你蒐集過有關"奈米積體電路設計"的論文刊物的熟悉度,回答IEEE、ISSCC及JSSC的全稱是什麼? ANS: - IEEE:Institute of Electrical and Electronics Engineers - ISSCC:International Solid-State Circuits Conference - JSSC:Journal of Solid-State Circuits ### 9.IEEE的Jornal 跟 Conference排行 - **Jornal paper:** - #1: JSSC:Jornal of Solid-State Circuits - #2: Trans on CAS I:IEEE Transactions on Circuits and Systems I: Regular Papers - #2: Trans on CAS II: IEEE Transactions on Circuits and Systems II: Express Briefs - #3: Trans VLSI system: IEEE Transactions on Very Large Scale Integration (VLSI) Systems - **Conference paper:** - #1 ISSCC: Internal Solid-State Circuits Conference - #2 ASSCC: Asian Solid-State Circuits Conference - #3 ISCAS: IEEE International Symposium on Circuits and Systems ### 10.管線(pipelined)電路之時序驗證議題:假設input data相對於DFF之clock rising edge的時間是tarrival,而DFF有 setup time(ts)、hold time(th)、clock-to-Q delay time(tcq)等參數 #### (a)請畫出tarrival與tcq之關係圖。(b)於上圖中標出ts及th,並說明其定義。(c)畫出一個時序圖以顯示並說明clock skew(tsk)之重要性。 ANS: - 有兩個情境可能會使Tcq增加 - 1.當Data從左邊越來越逼近edge即將setup violation時,Tcq會明顯上升 - 2.當Data從右邊越來越逼近edge即將hold violation時,Tcq也會明顯增加 - Tarrival為Data從左邊的FF出來經過combinational circuit到最後data停止變化的時間,Tarrival越接近clk edge,Tcq會越大,關係如下圖 ![518983](https://hackmd.io/_uploads/BJZ8wNH0el.jpg) - Ts:在clk edge到達前的Ts時間內Data要保持穩定FF才能鎖住正確的data value - Th:在clk edge到達後的Th時間內Data仍須保持穩定 - 看到上圖,若是clk skew太大(正負皆是)會使原本timing正常的電路發生setup time violaton或是hold time violation