理解數位電路時序:Setup、Hold、污染延遲與時脈偏移
1 分鐘
這是關於數位電路傳播延遲系列的第二篇文章。設計數位電路時,我們必須確保兩件事:第一是功能性,第二是時序。我們已在另一篇文章中介紹過基本模組。在電子領域,時間就是時脈的滴答聲,所有動作都基於這些時脈週期,它決定了電子電路的運作頻率、速度等。我們先前看過的電路只有在與時脈同步時才會運作,稱為時序電路。使用微控制器、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 中整合間隔柱:機械可靠性與效能的關鍵考量
Standoff 間隔柱本質上是小型支柱,用於支撐電路板。它們遠不止是 PCB 組裝中的小零件。這些元件透過將 PCB 稍微抬高,讓空氣得以流通,從而提供更好的絕緣與機械支撐。Standoff 能固定電路板,防止其與其他零件接觸。選擇合適的 standoff 確實能帶來改變;它確保設備正常運作,而非故障或鬆脫。如此一來,它們能在零件下方創造空氣循環空間,這是合理的設計選擇。在密集排列中保持適當間距對於散熱與安全都極為重要。 確保穩固安裝與抗振能力 金屬 standoff 能在工業控制器與伺服器機殼之間穩定並支撐電路板,防止因移動而彎曲或斷裂。金屬 standoff 透過為電路板提供金屬支撐,防止大型電路板因過度移動而彎曲。緊固件(主要是螺絲)通常會搭配墊圈,為緊固接頭提供額外保護,防止過度鎖緊。為了妥善固定電路板,必須以能讓電路板承受多次負載與跌落等衝擊而不受損的方式放置緊固件與 standoff。Standoff 可視為避震器,為電路板提供安全的固定點。若電路板未使用 standoff,PCB 將因裂縫與短路而受損。 在密集布局中支援散熱與 EMI 屏蔽 透過將 PCB 抬離安裝表面,stand......
PCB 層數解析:透過智慧疊構、標準與設計實踐打造更優質的電路板
PCB 是由銅箔與絕緣層層疊而成的「三明治」,用來形成電路板。每一層都有特定功能:有些負責承載訊號(連接元件的走線),有些則作為完整的電源或接地平面。可以把 PCB 層想像成大樓的樓層,每層扮演不同角色,例如一層是辦公室(訊號),另一層是倉庫(接地/電源)。層數依設計複雜度而定,從單層到十幾層的高階電子產品都有。本文將說明如何有效安排這些層,降低 EMI 並提升訊號完整性,關鍵就在於佈線與配置的規劃。 單層與多層 PCB 的定義 最基礎的是單層 PCB,只有一面銅箔,製造成本低,適合 LED 驅動等低成本電路。 業界主流是雙層 PCB,上下兩面都有銅箔,走線選擇翻倍,兩層間透過稱為「過孔」的小孔互連訊號。 多層 PCB則使用三層以上銅箔,內部通常夾有電源與接地平面,並位於訊號層之間。手機、筆電、醫療設備等高密度產品都採用多層板,以滿足嚴格的雜訊管理需求。 從簡單到複雜的層配置演進 早期電子產品單雙層板即可應付,但隨著功能複雜與速度提升,設計者必須增加層數。每多一層就多出佈線空間,避免交叉。實際應用上,低階產品為成本考量維持 2–4 層;中階設計常見 6 層;高速高階系統則普遍 8 層以上。8 層板......
PCB 的生產與製造流程是什麼?
PCB 的創造者是一位名叫 Paul Eisler 的奧地利人。1936 年,他首次在收音機中使用印刷電路板。1948 年,美國正式認可這項發明並投入商業應用。自 1950 年代中期起,印刷電路板被廣泛採用。幾乎每台電子設備都包含 PCB。如果設備中有電子元件,它們都安裝在各種尺寸的 PCB 上。PCB 的主要功能是將各種電子元件連接起來,形成預定的電路,充當電信號傳輸的中繼站,常被稱為「電子產品之母」。 談到 PCB 的生產與製造,需要經過一系列步驟,以確保最終產品的品質與可靠性。以下是更多步驟與細節,幫助你更深入理解 PCB 的生產製造流程: 準備工作: 在開始生產前,需要準備 PCB 圖紙與相關資料。這些圖紙包含 PCB 尺寸、電路走線、元件佈局等資訊。主要設計與選擇的方面包括 PCB 基材 的類型、焊盤、導電走線等。 確定 板厚:根據圖紙要求,選擇合適的板厚(以毫米為單位)。 確定表面處理:決定板材的表面處理方式,如鍍金、鍍銀或熱風整平(HASL)。 指定元件類型與規格:確定所需的元件類型與規格,包括電阻、電容、二極體等。 準備工具與設備:收集製造過程中所需的工具與設備,如鑽孔機、成型機與......
PCB 基礎:6:新興趨勢與技術
談到學習 PCB 及相關電子的實用知識,不得不提新興趨勢與技術,才能掌握最新進展。PCB 無所不在! 今天,我們將深入探討從軟性 PCB、軟硬結合板到高密度互連(HDI)等技術的變革潛力,並討論物聯網(IoT)與穿戴式裝置對 PCB 設計的影響。 與我們一起踏上創新之旅,突破 PCB 技術的疆界! PCB 技術的突破: 讓我們探索幾項顛覆 PCB 設計的重大進展: A) 軟性 PCB: 軟性 PCB(flex PCBs)是卓越的進步,相較於傳統硬板更具彈性與耐用性。其採用聚醯亞胺或聚酯等柔性材料,可彎曲並貼合複雜形狀,特別適用於空間受限或需動態運動的場景,如醫療設備、汽車電子與消費性電子。 B) 軟硬結合板: 軟硬結合板整合硬板區與軟板區,兼具兩者優勢,可設計出複雜的三維電路。其高可靠度、小型化與優異訊號完整性,廣泛應用於航太、工業電子與穿戴裝置。 C) 高密度互連(HDI): HDI 是 PCB 技術的關鍵進展,能在更小尺寸內實現更高功能。透過微盲埋孔與先進製程,達到更高電路密度並縮短訊號傳遞延遲,支援多層板與更細線寬,實現小型化與高效能,常見於智慧型手機、平板等高效能電子產品。 IoT 與穿戴......
電路板設計的演進
歡迎來到 JLCPCB 的部落格,在這裡我們將深入探討 PCB 設計、製造與組裝的精彩世界。電路板經歷了非凡的演進,從簡單的單層設計轉變為複雜且多功能的 multi-layer 板。今天,我們將深入回顧電路板設計的演進歷程,追溯其從簡單單層板到複雜多層板的轉變。與我們一起探索推動電路板設計演進的歷史、優勢與進步。 從卑微的起點: 自誕生以來,電路板已經走過了漫長的道路。早期,單層板是常態。這些板子由單層導電材料(通常是銅)層壓在絕緣基板上。元件焊接在板子的一側,而另一側的走線提供必要的互連。雖然對基本電子設備有效,但單層板有其局限性。 單層板適用於元件較少、要求不高的簡單電子設備。然而,隨著技術的進步和對更複雜電子系統需求的增長,對更高連接性和功能性的需求導致了多層板的發展。 多層板的出現: 多層板徹底改變了 PCB 設計領域。它們由多層導電材料組成,這些導電層由絕緣層隔開,並透過 vias 互連。這些 vias 允許訊號在層間傳遞,實現更高的元件密度和更複雜的設計。 優勢與進步: 從單層板轉向多層板帶來了許多優勢。首先,多層板提供了更多的佈線選項,實現更高效的訊號路徑並減少電磁干擾。這提高了電子......
前 10 大常用電子元件指南
電子元件是電子科技的基礎單元,是電子電路不可或缺的建構基石。隨著技術與應用快速演進,設計流程中使用的元件數量與日俱增。電子工程師或愛好者務必掌握常用電子元件的特性與應用。本文介紹工程師最常用的十大電子元件,並提供選型指引。 電阻器 它是電路中最常用的元件,屬於限流元件。電阻對電流具有阻礙作用,透過改變電阻值,即可控制流經該分支的電流,使電子設備中的各種元件在額定電流下穩定運作。常見電阻包括熱敏電阻、壓敏電阻、分壓電阻、色環電阻、功率電阻與光敏電阻。電阻在電路圖中通常以符號(鋸齒線)表示,或以字母 R 標註,阻值單位為歐姆(Ω)。 電容器 在電子學中,電容器能在特定電壓下儲存電荷,此儲存能力稱為電容,以 C 表示,單位為法拉(F)。電容值決定其可儲存的電荷量。在電路圖中,電容器通常以字母 C 開頭編號,如 C01、C02、C03、C100 等。 二極體 二極體又稱晶體二極體,簡稱二極體,具有兩個電極(接腳)。它具有單向導電特性,電流只能沿單一方向流動,可用於整流、保護、開關與檢波等應用。 齊納二極體 齊納二極體是專為反向崩潰區操作而設計的特殊二極體。與一般二極體不同,當反向電壓超過其崩潰電壓時,它會......