理解數位電路時序:Setup、Hold、污染延遲與時脈偏移
1 分鐘
- 數位設計中的時序參數:
- 傳播延遲 vs 污染延遲:
- 時脈偏移:
- Setup 時間:
- Hold 時間:
- 數位電路中的時序路徑:
- 時序公式:
- 數值範例(單週期路徑):
- 違規的常見原因與實用解法
- 設計技巧(有用偏移、多週期路徑、重定時)
- 結論
這是關於數位電路傳播延遲系列的第二篇文章。設計數位電路時,我們必須確保兩件事:第一是功能性,第二是時序。我們已在另一篇文章中介紹過基本模組。在電子領域,時間就是時脈的滴答聲,所有動作都基於這些時脈週期,它決定了電子電路的運作頻率、速度等。我們先前看過的電路只有在與時脈同步時才會運作,稱為時序電路。使用微控制器、FPGA 或 ASIC 時,必須符合時序限制,才能確保電路正確運作。今天我們將探討有哪些時序限制需要注意。本指南涵蓋基礎:setup 時間、hold 時間、污染(最小)延遲與時脈偏移,並說明它們如何在時序公式與實際設計中互動。
數位設計中的時序參數:
組合邏輯區塊有兩個重要的延遲指標:
- Tpd(傳播延遲,最大值):由組合邏輯元件所造成的最長可能延遲,用於 setup 檢查。
- Tcd(污染延遲,最小值):最短可能延遲,用於 hold 檢查。
- 時脈週期(Tclk):用於某路徑之連續時脈邊緣之間的時間。
傳播延遲 vs 污染延遲:
- 傳播延遲(Tpd,最大值):閘極/邏輯區塊的最壞情況(最長)延遲,用於 setup 檢查,以確保最晚資料仍能滿足 setup。
- 污染/最小延遲(Tcd,最小值):閘極/邏輯區塊的最佳情況(最短)延遲,用於 hold 檢查,以考量訊號最早可能改變的時間。
時脈偏移:
來源正反器與目的正反器之間的時脈到達時間差。可能由時脈到正反器 A 與 B 的長系統線造成。由於訊號無法同時到達所有正反器,會造成時序不匹配。主要來源包括時脈樹不平衡、佈線差異、緩衝器、合成/CTS 選擇、本地時脈閘控、PLL/BUF 插入抖動。
- 正偏移:擷取時脈比另一邏輯區塊晚到。
- 負偏移:擷取時脈比另一邏輯區塊早到。
為了改善時序,有時會故意引入偏移(通常用來放鬆關鍵路徑的 setup),同時確保 hold 限制仍被滿足。
Setup 時間:
Setup 時間(Tsu)是在正反器的有效時脈邊緣之前,輸入資料必須穩定的最短時間間隔。若資料在該時脈邊緣前的指定區間內未穩定,就會發生 setup 時間違規。若資料到達太晚,擷取正反器可能會取樣到錯誤值。
時序檢查:Setup 時間違規多由不當的傳播延遲造成。若從第一個正反器出發的傳播延遲超過下一個時脈邊緣,資料將無法被擷取,或與時脈同時出現,導致正反器進入亞穩態。
Hold 時間:
Hold 時間(Thold)是在有效時脈邊緣之後,輸入資料必須維持穩定的最短時間間隔。若資料在發射邊緣後太快改變,並在擷取正反器內部取樣鎖存器完成 hold 之前到達,擷取正反器可能會取樣到錯誤值。
時序檢查:新資料最早可能在 Tcq + Tcd 時到達,該時間必須晚於擷取正反器完成 hold 所需的時間。
數位電路中的時序路徑:
典型的同步時序路徑如下。我們將逐一檢視每個部分:
發射邊緣(正反器 A)→ Tcq(clock-to-Q)→ 組合邏輯 → Tpd/Tcd(傳播/污染延遲)→ 擷取正反器 B → Setup/Hold 檢查
- 發射事件:正反器 A 在時脈事件後產生新的資料值,輸出固定為該值,並通過組合邏輯傳播。
- 擷取事件:該資料作為正反器 B 的輸入,將在下一個相關時脈邊緣取樣。
發射與擷取是時序路徑的開始與結束,但中間還有許多細節,將於下一節討論。
時序公式:
Setup:
Hold:
其中 Jclk 為時脈抖動(保守地將正抖動加入 setup 公式,並在 hold 中適當加減作為安全裕度。抖動視為可用時序裕度的減少。)
數值範例(單週期路徑):
給定(典型數值):
- Tclk = 5.0 ns(目標週期)
- Tskew = +0.10 ns(擷取時脈晚到 0.1 ns)
- Tcx (Tcq) = 0.12 ns(clock-to-Q)
- Tpd = 2.80 ns(最大組合邏輯傳播延遲)
- Tsu = 0.08 ns(setup 時間)
- Tcd = 0.02 ns(污染/最小延遲)
- Thold = 0.05 ns(正反器 hold 需求)
Setup 檢查:
所需週期:Tcq + Tpd + Tsu - Tskew = 0.12 + 2.80 + 0.08 - 0.10 = 2.90 ns
Slack_setup = Tclk - 2.90 = 5.00 - 2.90 = 2.10 ns → PASS(充裕裕度)。
Hold 檢查:
允許 hold = Tcq + Tcd - Tskew = 0.12 + 0.02 - 0.10 = 0.04 ns
Slack_hold = 0.04 - Thold = 0.04 - 0.05 = -0.01 ns → HOLD 違規 10 ps。
該路徑輕鬆通過 setup(大裕度),但極快的路徑導致 hold 違規。這在實際設計中很常見:setup 充裕而 hold 失敗。
違規的常見原因與實用解法
Setup 違規(常見解法):
- 路徑過長:可插入流水線/暫存器、減少邏輯深度,或重構演算法。
- 製程角慢:使用更快元件庫(更高驅動能力)、提高 VDD、優化佈線以減少 Tpd。
Hold 違規(常見解法):
- 路徑過快:故意加入延遲(插入緩衝器/反相器)、在佈線階段使用最小延遲插入,或拉長佈線。
- 多週期路徑:若功能允許,可將該路徑設為多週期(在 STA 工具中正確標記)。
設計技巧(有用偏移、多週期路徑、重定時)
- 有用偏移:故意引入偏移以放鬆關鍵路徑的 setup,同時確保 hold 安全。此為需謹慎分析的高階技巧。
- 多週期路徑:若架構允許路徑跨多個週期,請在 STA 中標記為多週期,並設定適當限制,而非強制單週期時序。
結論
本文深入探討了 setup 與 hold 時間,並結合範例說明污染延遲與時脈偏移如何與時序公式相互關聯。Setup 由最壞情況(最大)延遲決定,而 hold 則由最佳情況(最小)延遲決定。我們也分享了一些設計技巧及常見違規與解法。對於數位電路而言,不僅功能性重要,時序也同等關鍵。本系列未來將繼續探討更多數位設計與時序相關概念。請造訪JLCPCB 專區快速獲取這些知識。
持續學習
為什麼 PCB 排針對可靠電路板設計至關重要
重點摘要 雙重功能:同時作為電氣引腳及機械固定件;準確的孔徑可防止焊點承受過大應力。 間距與電流:2.54 mm 引腳約可承載 3 A,而 1.27 mm 引腳約可承載 1 A。 焊盤尺寸:應根據引腳對角尺寸設計鍍通孔;對於 0.64 mm 方形引腳,孔徑通常為 1.05–1.15 mm。 智能佈局:將接地引腳放在訊號旁邊以降低噪聲,並配合線纜引腳編號。 組裝規則:回流焊應使用 LCP 材料,並達到至少 75% 的垂直焊料填充率。 PCB 排針通常是電路板上最便宜的連接器,但卻承受最多的操作。線纜會插入其中,電路板也可能堆疊在其上。即使組裝完成很久之後,使用者仍可能以斜角拉扯線纜。所有這些負載最終都會集中到幾個焊點上,因為排針同時承擔兩項工作。從電氣角度看,它是一排傳輸電源及訊號的裸露短導體;從機械角度看,它是一個固定件。每根引腳都穿過鍍銅通孔,可防止拉扯線纜時將焊盤從層壓板上撕下。 圖 1:電路板上的直式、直角及堆疊式 PCB 排針 許多排針故障其實是機械問題,卻表現得像電氣問題,例如只有在線纜移動時才會斷開的焊點。將排針同時視為結構件及連接器,間距、孔徑及方向的選擇便不再是隨意決定。本指南涵蓋......
深入了解具高熱穩定性的聚酰亞胺 PCB 材料
重點摘要 兩種形態:可製成柔性薄膜(彎曲時不會開裂)或硬質玻璃纖維層壓板(提供結構穩定性)。 極高耐熱性:可承受超過 200°C 的工作溫度,Tg 可達 250°C–410°C。 高過孔可靠性:在 50°C 至 260°C 之間,Z 軸方向只膨脹 1.2%,可防止鍍孔裂紋。 必須烘焙:可吸收相當於自身重量 2.8% 的水分,因此回焊前必須烘焙,以避免分層。 JLCPCB 柔性電路支援:適合高可靠性應用;JLCPCB 支援 1 至 4 層柔性聚酰亞胺 FPC。 聚酰亞胺 PCB 可以在 FR-4 已經軟化的溫度下繼續運作,因此會被用於引擎艙、衛星及深井鑽探工具。代價是成本:聚酰亞胺層壓板的價格可能是傳統 FR-4 的數倍,所以只有在應用真正需要其熱性能及機械性能時,才值得選用。 本指南將介紹: 聚酰亞胺是甚麼,以及它為何有兩種不同形態 Tg、CTE 及分解溫度與 FR-4 有何差異 在哪些情況下吸濕特性有幫助,哪些情況下會造成問題 哪些行業願意為其付費,以及能獲得甚麼回報 JLCPCB 目前實際可以製造哪些聚酰亞胺產品 圖 1:聚酰亞胺柔性電路 了解聚酰亞胺這種先進 PCB 材料 聚酰亞胺之所以被列......
掌握高良率製造中的 PCB 電鍍類型及製程控制
重點摘要 兩步電鍍:先建立化學種子層,再以電解銅增加結構強度。 工藝選擇:圖形電鍍適合細線路;整板電鍍適合厚銅。 導通孔完整性:將縱橫比保持在 10:1 或以下,避免孔壁最薄處開裂。 表面處理:BGA 平面焊盤使用 ENIG,高磨損接點使用硬金。 IPC 標準:Class 2 要求 20 µm 銅孔壁厚度;Class 3 要求 25 µm 且不得有空洞。 PCB 電鍍會將一疊已鑽孔的覆銅板變成可運作的電路。這也是唯一無法從外部直接檢查的製程。電路板上的每個過孔,都是一個內部生長出銅管的孔。阻焊層完成後,你便再也看不到這條銅管。理解以下概念,便能掌握整個主題:銅不會黏附在已固化的環氧樹脂上,而環氧樹脂也不導電,因此製造商必須先在裸露樹脂上形成化學種子層。 圖 1:板件通過垂直連續銅電鍍線 只有完成這一步,電流才可以建立真正關鍵的銅厚。這種先化學處理、再通電增厚的兩步方法,解釋了你會遇到的大部分電鍍類型、缺陷及檢查規則。本指南將說明這兩種機制的差異,以及圖形電鍍與整板電鍍的不同;同時也會介紹 ENIG 及硬金 等表面處理的沉積方式。最後才會討論電鍍液化學成分及電流密度,因為它們決定深孔過孔能否通過回流......
了解 IPC-6012 標準:高可靠性剛性 PCB 製造指南
重點摘要 IPC-6012 與 IPC-A-600:IPC-6012 是具約束力的性能規範,而 IPC-A-600 僅作為外觀驗收參考文件。 Class 2 與 Class 3:Class 3 要求更厚的孔壁銅厚(25 μm,而 Class 2 為 20 μm),並且不允許鍍層空洞。 測試驗證:品質透過對拼板上的測試 coupon 進行熱應力測試後,再進行微切片分析確認。 提前指定等級:必須在製造圖紙中提前標註所需等級,電路板製造完成後無法再升級為更高等級。 IPC-6012 是決定 PCB 製造商可以交付什麼品質電路板的重要規範。許多設計者會在製造圖紙中標註「依 IPC-6012 Class 2 製造」後便繼續下一步,但製造商會仔細閱讀這項要求,因為它將成為檢驗人員判定是否合格的依據。 裸 PCB 並不是僅靠外觀即可判定是否合格。為確認鍍通孔品質,製造商會從樣品板中切取通孔截面,研磨拋光後,使用顯微鏡測量孔壁銅厚。 圖 1:金相顯微鏡下的鍍通孔微切片 PCB 等級並不會改變您的設計,因此 Class 3 電路板並不是「更聰明」或設計更好的電路板。它只是同一份設計圖稿,在更嚴格的驗收標準下進行評估......
電容 ESR 完整指南:定義、合適數值與量測方法
重點摘要 定義:電容 ESR(等效串聯電阻)以單一電阻值表示實際電容內部的損耗,包括來自電極、端接結構、電解質與介電材料的損耗。 重要性:漣波電流流經 ESR 時,會在電源軌上產生漣波電壓跳變,並在電容內部造成 I²R 發熱,進而限制電容的額定漣波電流與使用壽命。 測試條件:ESR 會隨頻率、溫度、電容量、封裝尺寸與技術類型而變化,因此只有同時註明測試頻率與溫度,ESR 數值才具有意義。 量測方式:ESR 電表適合快速檢查;搭配四線式 Kelvin(克爾文)接線的 LCR 電表,則可用於依規格書核對元件。一般萬用電表無法量測 ESR。 並非越低越好:部分線性穩壓器依賴輸出電容的 ESR 維持迴路穩定性,並規定最低 ESR,因此替換成低 ESR 元件之前,請先查看穩壓器規格書。 電容 ESR(等效串聯電阻)是實際電容阻抗中的電阻性成分,會將漣波電流轉化為漣波電壓與熱量。即使每顆電容量測出的電容量都正確,ESR 仍可能是電源供應器過熱,或輸出漣波高於設計預期的常見原因。 本指南將帶您了解: 什麼是電容 ESR,以及它的來源。 ESR 為何會影響漣波電壓、自發熱與穩壓器穩定性。 不同電容技術應具備什麼樣......
掌握 PCB 走線寬度設計,預防熱失效與訊號失效
重點摘要 預防焊接缺陷:熱隔離輻條可保留焊接熱量,避免冷焊點,並防止小型元件出現立碑現象。 電源焊墊避免使用熱隔離:散熱焊墊與承載超過 3 A 電流的走線應採用實心連接,以最大限度散熱並降低壓降。 選擇合適的輻條尺寸:被動元件使用較細的輻條(0.10–0.20 mm),一般 SMD 元件則使用較寬的輻條(0.20–0.30 mm)。 預留蝕刻餘裕:輻條寬度應比板廠的最小製造能力增加 30%,以承受生產過程中的過度蝕刻。 談到尺寸,電路板上有一項尺寸直接關係到實際電流、發熱與失效風險,那就是 PCB 走線寬度。您只需幾秒鐘就能在佈線時設定線寬,但它究竟能否承受負載,結果截然不同。如果設定錯誤,銅線路可能過熱、防焊層變成褐色、邏輯電源軌的電壓降至臨界值以下,最後讓電路板不是在您的工作台上,而是在客戶手中失效! 本指南將說明走線寬度如何影響電氣性能,透過一個完整計算範例介紹標準線寬公式,解釋計算器何時有幫助、何時可能誤導您,以及為什麼內層與外層需要不同線寬,並介紹板廠實際能夠蝕刻出的線路尺寸。 PCB 走線寬度選擇錯誤的隱藏風險 您可以將銅走線想像成延長線。較細的延長線可以整天為桌燈供電而沒有問題;但如......