理解數位系統隨時間的行為,是電子與電腦工程的基礎。無論是設計微控制器介面或除錯通訊協定,視覺化訊號轉換都至關重要。時序圖以圖形方式呈現一個或多個訊號在特定時間範圍內的變化。它作為同步的藍圖,確保資料在元件間正確傳輸。
本指南將探討時序圖的運作機制、其關鍵元件,以及如何解讀它們以實現穩健的數位設計。我們將涵蓋時鐘週期、訊號狀態與決定系統可靠性的時序限制等細微差異。

什麼是時序圖?📊
時序圖沿著代表時間的橫軸繪製訊號的行為。縱軸則代表訊號的邏輯狀態,通常為高電平(1)或低電平(0)。與顯示連接關係的電路原理圖不同,時序圖用於說明時間上的關聯。
主要特性包括:
- 時間軸:通常為水平方向,由左至右延伸。
- 訊號線:每一條水平線代表特定的導線、匯流排或介面。
- 轉換:垂直線表示狀態的改變(上升沿或下降沿)。
- 標籤:每個訊號線的名稱或識別符。
這些圖表對於驗證資料在時鐘邊沿捕捉前是否穩定至關重要。它們填補了抽象邏輯與物理現實之間的差距。
時序圖的核心元件 🛠️
要準確閱讀時序圖,必須理解其基本構成要素。每張圖表都依賴特定元素來傳達關於電路運作的資訊。
1. 時鐘訊號 ⏰
時鐘如同同步系統的脈搏,決定資料應在何時被採樣。在圖表中,時鐘通常呈現為方波。時鐘的週期決定了系統可運作的最高速度。
- 週期(T):完成一個完整週期所需的時間。
- 頻率(f):每秒發生的週期數(赫茲,Hz)。
- 佔空比:訊號處於高電平的週期百分比。
2. 資料訊號 💾
資料線承載實際的資訊。它們可以是並列或串列。在時序圖中,資料顯示為相對於時鐘在特定時刻發生轉換。
- 建立時間:資料在時鐘邊沿之前必須保持穩定的最小時間。
- 保持時間:數據在時鐘邊沿後必須保持穩定的最小時間。
3. 控制信號 🎛️
晶片選擇、寫入使能或復位等信號用於管理設備的運作。這些信號通常以低電平有效(以圓圈或上劃線表示)或高電平有效的形式出現。
時序圖的類型 🔄
並非所有時序圖都相同。它們會根據系統架構及所分析的信號而有所不同。
| 類型 | 說明 | 常見應用場景 |
|---|---|---|
| 同步 | 所有信號均參考單一時鐘源。 | CPU 暫存器、SDRAM 介面 |
| 非同步 | 信號運作時無需全局時鐘參考。 | I2C、UART、握手機制協議 |
| 混合 | 顯示時鐘信號與非時鐘信號之間的互動。 | 系統匯流排仲裁、中斷處理 |
同步系統
在同步設計中,每個狀態變更都發生在時鐘邊沿。這使得時序分析具有可預測性。圖表顯示數據從一個暫存器發出,並在一個時鐘週期內到達另一個暫存器。
非同步系統
非同步設計依賴握手機制。「請求」信號變為高電平,接收端處理該信號後,回傳「確認」信號。此處的時序圖著重於脈衝寬度與回應延遲,而非時鐘邊沿。
關鍵時序參數 ⚙️
理解時序圖上的具體指標是技術權威的體現。這些參數定義了性能的極限。
建立時間 (tsu)
建立時間是指有效時鐘邊沿之前的一段時間窗口,在此期間輸入數據必須保持不變。如果數據在時鐘邊沿附近過早變更,接收端的觸發器可能無法正確捕捉該值。
- 違規:如果數據在建立時間窗口內發生變更,系統將失效。
- 約束:數據必須至少有效tsu在時鐘邊沿之前。
保持時間 (th)
保持時間是指有效時鐘邊沿之後的窗口,在此期間數據必須保持穩定。即使時鐘觸發了採樣,數據也不得立即變動。
- 違規:如果數據在時鐘邊沿之後變化過快,則值將丟失。
- 約束:數據必須至少保持有效th在時鐘邊沿之後。
傳播延遲 (tpd)
這是信號通過邏輯閘或組件從輸入傳輸到輸出所需的時間。在時序圖中,這通常被視覺化為輸入跳變與產生的輸出跳變之間的間隙。
- 邏輯延遲:在晶片內部處理所花費的時間。
- 線路延遲:在 PCB 走線上傳輸所花費的時間。
時鐘偏斜 ⚡
當時鐘信號在不同時間到達不同組件時,就會發生時鐘偏斜。這會導致感知到的時序出現差異。過大的偏斜會減少可用的建立時間和保持時間餘量。
如何閱讀時序圖 🧐
解讀圖表需要系統化的方法。請遵循以下步驟以分析任何信號行為。
- 識別時鐘:找到週期性信號。這是您的參考點。
- 標記有效邊沿:確定系統是在上升沿(0 到 1)還是下降沿(1 到 0)觸發。
- 追蹤數據轉換:觀察數據線相對於時鐘邊沿何時改變狀態。
- 檢查穩定性:確保數據在建立時間和保持時間窗口內保持平穩。
- 計算延遲:測量輸入變化與輸出響應之間的水平距離。
範例情境:
想像一個記憶體晶片正在寫入數據。圖表顯示:
- 一個寫入使能信號變為低電平。
- 一個位址線路在時鐘邊沿之前穩定。
- 數據線路在時鐘邊沿觸發後改變數值。
- 一個寫入脈衝脈衝,指示寫入操作的持續時間。
常見時序違規與錯誤 ❌
即使設計謹慎,仍會發生時序違規。在圖表中識別這些違規有助於診斷系統故障。
亞穩態
當信號違反建立時間或保持時間時,觸發器可能進入亞穩態。它既不被讀作高電平也不被讀作低電平,而是懸浮在不確定的電壓上。在圖表中,這可能看起來像緩慢的轉換,或信號未能在預期時間內達到軌道電壓。
競態條件
當兩個信號競爭以影響同一輸出時就會發生。如果其中一個信號的時序比另一個稍早到達,結果就會改變。圖表將此顯示為重疊的轉換,從而產生不可預測的狀態。
毛刺
出現在信號線上的短暫、不需要的脈衝。這些通常是由並聯邏輯路徑中不同的傳播延遲引起的。在圖表中,它們顯示為與預期邏輯不符的微小尖峰。
通訊協議中的時序 📡
不同的協議具有獨特的時序要求。理解這些對於整合至關重要。
SPI(串行周邊介面)
SPI 是一種同步協定。它使用時脈(SCK)、主機輸出從機輸入(MOSI)以及主機輸入從機輸出(MISO)。SPI 的時序圖定義了:
- 時脈開始切換的時機。
- 資料採樣的時機(最高有效位元優先或最低有效位元優先)。
- 時脈線的空閒狀態。
I2C(整合電路間通訊)
I2C 使用時脈(SCL)和資料(SDA)線。它採用開集極設計,表示裝置將線拉低,但依賴電阻將其拉高。I2C 的時序圖對於定義以下內容至關重要:
- 起始條件:當 SCL 為高電位時,SDA 由高電位轉為低電位。
- 停止條件:當 SCL 為高電位時,SDA 由低電位轉為高電位。
- 確認/未確認:來自從機裝置的回應。
UART(通用非同步接收器發射器)
UART 是非同步的,因此沒有時脈線。時序圖著重於位元持續時間。起始位元啟動資料框,接著是資料位元、可選的奇偶校驗位元以及停止位元。
時序分析的最佳實踐 ✅
為確保設計具備韌性,請遵循以下工程實踐。
- 容錯餘裕:設計時應保留超過最小所需設定時間與保持時間的餘裕。環境因素如溫度與電壓可能導致效能下降。
- 最小化時鐘偏斜:仔細佈線時脈走線,以確保它們同時抵達各元件。
- 使用緩衝器:若訊號傳輸距離過遠,請使用緩衝器恢復訊號強度並降低延遲不確定性。
- 透過模擬進行驗證:在構建硬體之前,請模擬時序圖以早期發現違規情況。
- 清晰記錄:確保文件中的時序圖標註了單位(ns、µs)及參考點。
高速設計進階考量 🚀
隨著資料傳輸速率提升,時序變得更加複雜。在高頻率下,電路的物理特性將佔主導地位。
訊號完整性
反射與串擾會導致訊號失真。時序圖可能顯示訊號出現過衝或振鈴現象。工程師必須考量阻抗匹配,以預防這些失真。
抖動
抖動是指訊號邊沿偏離其理想位置的現象。高抖動會降低有效的建立時間與保持時間容限。在時序圖中,這表現為邊緣呈現「模糊」或「不清晰」,而非銳利的垂直線。
鎖相迴路(PLL)
鎖相迴路將內部時鐘與外部參考訊號同步。PLL 的時序圖顯示鎖定時間與相位雜訊特性,這些對於維持高速鏈路中的資料完整性至關重要。
關鍵概念摘要 📝
時序圖是數位同步的語言。它們將抽象邏輯轉化為具體的時間約束。透過掌握這些圖表的解讀,工程師可以預測行為並預防故障。
- 時間是維度:一切皆以時鐘或參考點為基準進行測量。
- 穩定性至關重要:訊號在建立時間與保持時間窗口內必須保持穩定。
- 延遲至關重要:傳播延遲會影響最大運作頻率。
- 存在變異:溫度與電壓會影響時序參數。
無論是在開發簡單的嵌入式系統還是複雜的處理器,閱讀與繪製時序圖的能力都是一項核心技能。這確保了實體硬體能完全按照邏輯設計意圖運作。











