理解數位電路時序: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 板框設計:關鍵技巧與實用指南
重點摘要 板框定義:繪製於機械層 1 的封閉多邊形輪廓,用來定義 PCB 的最終實體邊界,包括內部挖空、槽孔及安裝孔。 重要性:板框會直接影響機殼配合度、機械穩定性、組裝效率及生產良率;完善的設計可降低成本並縮短交期。 關鍵參數:板邊間距至少應為 0.2 mm,圓角半徑至少為 0.5~1.0 mm,並依外型加工方式選擇適當公差(精密加工 ±0.1 mm,一般加工 ±0.2 mm)。 拼板方式:矩形陣列適合採用 V-CUT,成本較低且速度較快;複雜或不規則外形則適合採用連接橋銑削,彈性較高但成本也較高。 DFM 不可或缺:正式生產前務必執行設計規則檢查,並使用 JLCPCB 線上 DFM 檢查工具找出板框問題。 什麼是 PCB 板框?為什麼如此重要? 板框的明確定義與核心元素 板框定義成品印刷電路板的實際形狀、尺寸及周邊特徵。它相當於機構藍圖,會引導後續每一道製造步驟,包括拼板、外型銑削及最終成型。經過周詳設計的板框,可確保電路板正確裝入機殼、維持機械穩定性、提高組裝效率並獲得最佳生產良率。 經驗豐富的工程師都知道,板框絕不只是一個簡單的矩形,它會直接影響成本、交期、可靠度及產品整合。精密板框加工是......
為高效能 PCB 最佳化走線間距
重點摘要 走線間距與安全間距:走線間距是指同一層上銅導體之間的邊緣到邊緣距離;而安全間距則涵蓋更廣泛的安全範圍,包括走線與板邊、安裝孔等非走線特徵之間的距離。 3W 規則:對高速訊號而言,中心線之間至少應保持 3 倍走線寬度,也就是邊緣到邊緣至少 2W 的距離,以將串擾最多降低約 70%。 IPC-2221 標準:業界標準的安全間距數值取決於電壓等級、海拔高度,以及導體位於內層、未塗覆外層,或有防焊層覆蓋的外層。 製造限制很重要:過窄的走線間距會增加化學蝕刻過程中產生銅橋與銅屑的風險,直接影響生產良率與可靠性。 JLCPCB 製造能力:JLCPCB 支援多層板設計中最小線寬與線距低至 3.5 mil(0.09 mm),並建議以 4 mil 作為量產基準,以取得最佳良率與成本。 在現代硬體工程中,產品不斷朝更小外形尺寸與更高資料速率發展,已經從根本上改變印刷電路板的工程設計方式。當訊號頻率逐漸進入 GHz 範圍、功率密度持續上升時,過去被視為可忽略寄生異常的電氣特性,如今已成為關鍵效能瓶頸。 這場典範轉移的核心,正是 PCB 走線間距。你如何安排電路板上的銅箔路徑間距,會決定電子系統能否完美運作,或......
了解導熱墊在電子設備散熱中的作用
介紹 在各種電子系統中維持理想溫度,關鍵取決於導熱墊,它們也是有效冷卻電子設備的基本組成部分。 作為一種導熱介面材料 (TIM),這些導熱墊能確保熱量在散熱器或其他冷卻系統與電子元件之間有效傳遞。鑑於當代電子產品日益增長的功率密度和精巧設計,導熱墊在維持設備可靠性和效能方面的重要性,再怎麼強調也不為過。本文將探討導熱墊的價值、其種類、用途以及放置和選擇的最佳實務。 什麼是導熱墊? 導熱墊 導熱墊是一種柔軟、可順應的聚合物,旨在填補電子元件與散熱元件(如散熱器或金屬外殼)之間的空隙。它們能確保 CPU、GPU 和功率電晶體產生的熱量有效傳輸至冷卻系統,從而防止過熱。與導熱膏不同,導熱墊是固態的,這使得處理和應用更加簡便。它們在整個接觸面上提供均勻的導熱性,因此在需要填補較大或不規則間隙的情況下特別有用。 導熱墊的種類 市面上有幾種導熱墊,每種都因其材料構成和預期用途而具有特定的優點: 矽膠基導熱墊: 最常使用的導熱墊類型,矽膠基導熱墊的特點是其靈活性、易於應用和良好的導熱性。它們在效能和成本效益之間取得平衡,因此在消費性電子產品中相當受歡迎。 石墨導熱墊: 石墨導熱墊具有優異的導熱性,非常適合高效熱......
什麼是 PCB 導孔?您應該選擇哪種類型?
印刷電路板(PCB)設計是電子產品開發中的關鍵環節。PCB 為電子元件提供了井然有序且緊湊的佈局,實現高效的信號傳輸,並將電氣干擾的風險降至最低。PCB 設計中的一個基本要素是導孔(via),它是在電路板上鑽出的小孔,用於實現電路板不同層之間的電氣連接。 在本文中,我們將全面概述 PCB 導孔,包括其類型、設計考量與應用。我們還將討論為 PCB 設計選擇正確導孔類型的重要性,以及它如何影響產品的效能和可靠性。 什麼是導孔? 導孔是在 PCB 上鑽出的小孔,用於連接電路板的不同層。導孔內壁襯有導電材料(如銅),允許電流通過孔洞,從而在各層之間建立連接。導孔在多層 PCB 設計中至關重要,因為它們為電路板不同層之間的電氣和熱連接提供了途徑。 導孔可以貫穿電路板的整個厚度,連接所有層,也可以僅部分鑽穿電路板,只連接其中幾層。導孔的尺寸和形狀取決於具體的應用和設計要求。導孔可以是圓形或非圓形,其直徑可以從幾密耳到幾百密耳不等。 導孔的放置位置在PCB 設計中也很關鍵。導孔通常放置在沒有關鍵元件或走線的區域,因為它們可能會干擾信號或產生電氣雜訊。此外,導孔的位置會影響電路板的散熱效能,因此在放置導孔時,考慮......
電路板維修入門指南
電路板是現代電子產品的骨幹,懂得如何維修它們是一項寶貴的技能。在這份初學者指南中,我們將提供詳細的說明,協助您成功維修電路板。無論您是需要對故障裝置進行疑難排解,還是想挽救一塊貴重的電路板,本指南都將賦予您能力。從了解電路板元件到掌握焊接技術,您將獲得自信地處理電路板維修所需的知識。 了解電路板元件 要有效維修電路板,了解不同的元件至關重要。電阻、電容、電晶體和積體電路是電路板上常見的一些元件。每個元件都有特定的功能,當其發生故障時,都可能導致電路失效。 範例: 在檢查電路板時,您可能會遇到一個鼓包的電容器。這表示該電容器已失效,需要更換。了解電容器的角色有助於您識別此問題並採取適當的措施。 識別常見的電路板問題 診斷常見問題是電路板維修的關鍵步驟。一些常見問題包括短路、損壞的走線或焊盤、故障元件以及電源相關問題。透過使用萬用表和示波器等各種測試方法和工具,您可以準確地識別這些問題。 範例:假設您正在對一塊沒有產生任何聲音的電路板進行疑難排解。透過使用示波器,您可以測量音訊電路中不同點的輸出訊號,以精確定位訊號在哪裡丟失或失真。 電路板維修的工具與設備 擁有正確的工具和設備對於成功的電路板維修至關......
PCB 板類型:規格與應用場景終極指南
印刷電路板(PCB)由絕緣層與導電層壓合而成,用於連接多個電子元件。可以把 PCB 想像成玻璃纖維與環氧樹脂疊成的複合板材,上面蝕刻出銅線路,作為訊號與電源的導電路徑。PCB 可以是單層、雙層(兩層導電層)或多層(三層以上導電層),在極小空間內容納大量電路。根據 IPC 的定義,PCB 是由導電與非導電材料經壓合後,形成電氣組件所需的電路。 官方 IPC 定義與層次結構 實務上,PCB 是由交替的介電層與銅箔層構成。銅層上佈有線路、平面、焊墊與通孔,用於連接元件。典型的 4 層 PCB 疊構可能如下: 銅層 – 預浸料或芯材 – 銅層 – 芯材 – 銅層 所有層次都經壓合固定。樹脂/玻璃基材提供機械強度與絕緣。IPC-2221 與 IPC-4101 標準規範了疊構幾何與材料特性。簡單來說,PCB 就是一塊多層三明治板,銅片(線路)負責導電,而非起司。 12 種核心 PCB 類型(2025 版) 工程師通常依結構與用途分類 PCB。以下為 2025 年最常見的 12 種基礎 PCB 類型: 單面 / 雙面 / 多層 單面板:僅有一層銅線路,成本最低,用於基本消費電子,如玩具、簡單電源電路。 雙面板:......
