歡迎來到數碼世界!
在本章中,我們將離開「平滑」的模擬電子世界,踏入「開與關」的數碼訊號處理(Digital Signal Processing)領域。為什麼這很重要?事實上,每當你發送短訊、串流音樂或玩電子遊戲時,你都在使用我們即將探討的概念。數碼訊號是現代科技的骨幹,因為它們可靠、易於處理,並且對「雜訊」(干擾)有極強的抵抗力。
如果起初覺得這些內容很像「電腦程式」,別擔心——我們會利用你已經熟悉的知識,一步步拆解這些概念!
1. 模擬與數碼:重大差異
在處理訊號之前,我們必須了解訊號的類型。在物理學中,我們主要處理兩種類型:
模擬訊號(Analogue Signals): 這些是連續的。它們在範圍內可以取任何數值。試想一下燈光的調光開關或傳統水銀溫度計。數值會平滑地上下滑動。
數碼訊號(Digital Signals): 這些是離散的。它們由「階梯」組成,通常只有兩個電位:高電位(High) (1) 或 低電位(Low) (0)。試想一下標準電燈開關——它不是開就是關。
位元(Bits)與位元組(Bytes)
- 位元(Bit,二進制數位) 是數碼資訊的最小單位——即單個 0 或 1。
- 位元組(Byte) 是一組 8 個位元。
二進制基礎(1 至 10)
你不需要成為數學天才也能應付這個課程!你只需識別 1 到 10 的二進制數值長什麼樣子(使用 4 位元表示):
- 1: 0001
- 2: 0010
- 3: 0011
- 4: 0100
- 5: 0101
- 6: 0110
- 7: 0111
- 8: 1000
- 9: 1001
- 10: 1010
記憶小撇步: 把斜坡想像成「模擬」,把樓梯想像成「數碼」。在斜坡上,你可以站在任何高度;在樓梯上,你要麼站在這一級,要麼站在下一級——不存在「中間」位置。
核心重點: 模擬訊號是一條平滑曲線;數碼訊號是一系列「開」與「關」的脈衝。
2. 模擬至數碼轉換(ADC)
現實世界中的大多數事物(如你的聲音或感應器測得的熱量)都是模擬訊號。為了讓電腦處理這些訊號,我們必須使用模擬至數碼轉換器(ADC)將其轉換為數碼訊號。
運作原理:採樣與量化
轉換過程分為兩個主要步驟:
- 採樣(Sampling): ADC 會以固定的時間間隔查看模擬訊號。這稱為採樣率(Sampling Rate)(單位為赫茲,Hz)。
- 量化(Quantisation): ADC 測量每個採樣點的電壓,並分配一個二進制數值。由於二進制有固定的階梯,測量結果會四捨五入到最近的可用「級別」。
什麼會影響質量?
- 採樣率: 如果採樣太慢,你會錯過訊號中的「波動」。較高的採樣率能更準確地呈現原始波形。
- 位元數(解析度): 如果每個採樣使用更多位元(例如 16 位元而非 4 位元),你就會擁有更多可用的「階梯」。這能減少量化誤差(Quantisation error),使數碼版本的聲音或影像與原始訊號更接近。
你知道嗎? CD 品質的音訊每秒會對音樂採樣 44,100 次!這種高採樣率確保了我們無法聽出數碼數值之間的「階梯」。
數碼訊號的優勢
- 抗雜訊能力: 在模擬訊號中,雜訊會增加難以去除的「嘶嘶聲」。在數碼訊號中,只要我們能區分「0」和「1」,即使訊號有些混亂,我們也能完美地重製(regenerate)原始訊號。
- 數據壓縮: 數碼檔案可以被壓縮(例如 MP3)以節省空間。
- 易於處理: 電腦可以輕鬆儲存和加密數碼數據。
核心重點: 透過更頻繁的採樣(較高採樣率)和使用更多位元(較多級別),可以獲得更好的品質。
3. 組合邏輯(決策制定)
數碼系統利用邏輯門(Logic Gates)進行決策。這些邏輯門接收一個或多個輸入,並根據布林代數(Boolean Algebra)產生單一輸出。
基本邏輯門
- NOT: 「反相」門。若輸入為 1,輸出為 0。(寫作 \(\bar{A}\))
- AND: 僅在兩個輸入均為 1 時,輸出才為 1。(寫作 \(A \cdot B\))
- OR: 若其中一個或兩個輸入為 1,輸出則為 1。(寫作 \(A + B\))
- NAND: 一個 AND 門後接一個 NOT 門。僅在兩個輸入均為 1 時,輸出才為 0。
- NOR: 一個 OR 門後接一個 NOT 門。僅在兩個輸入均為 0 時,輸出才為 1。
- EOR(互斥或,Exclusive OR): 若輸入不同(一個為 1,另一個為 0),輸出則為 1。
快速複習框:真值表(Truth Tables)
真值表列出了所有可能的輸入組合,並顯示相應的輸出。對於雙輸入邏輯門,共有 4 種組合(00、01、10、11)。
常見錯誤: 學生經常混淆 OR 和 EOR。記住:在標準 OR 門中,若兩個輸入均為 1,輸出為 1。在 EOR 門中,若兩個輸入均為 1,輸出為 0!
核心重點: 邏輯門是數碼電路的構建模塊,使電路能夠遵循「如果……那麼……」的規則。
4. 時序邏輯(計數器)
雖然組合邏輯對輸入作出即時反應,但時序邏輯(Sequential Logic)具有「記憶」功能。它取決於之前發生了什麼。最常見的例子是計數電路(Counting Circuits)。
計數器類型
- 二進制計數器: 以標準二進制計數(0000, 0001, 0010...)。
- BCD(二進制編碼十進制)計數器: 從 0 計數到 9,然後重置為 0。這非常適合數碼時鐘或計算機。
- 強生計數器(Johnson Counter): 一種特殊的移位暫存器計數器,能產生特定的「開」狀態序列。
計數器的輸入
- 時鐘(Clock): 一個脈衝訊號,告知計數器何時移動到下一個數字。
- 重置(Reset): 一個將計數器強制歸零的訊號。
- 增/減(Up/Down): 一個控制訊號,告知計數器應向上還是向下計數。
模 n 計數器(Modulo-n Counters): 這只是一種花俏的說法,意思是計數到 n 後會重置的計數器。例如,模 6(Modulo-6)計數器會計數 0, 1, 2, 3, 4, 5,然後跳回 0。我們透過將輸出連接到一個邏輯門來實現,當達到特定數字時,該邏輯門會觸發重置(Reset)引腳。
核心重點: 時序邏輯允許電路「記憶」其狀態,並根據時鐘脈衝按順序運行。
5. 無穩態多諧振盪器(脈衝發生器,Astables)
每個數碼系統都需要一個「心跳」來保持同步。這由無穩態多諧振盪器(Astable Oscillator)提供。
無穩態電路沒有穩定的狀態——它會不斷地在高低電位之間切換,產生方形波的時鐘脈衝(Clock pulse)。
無穩態電路的關鍵術語:
- 脈衝頻率(Pulse Rate / Frequency): 每秒發生的脈衝次數(\(f = \frac{1}{T}\))。
- 佔空比(Mark-to-Space Ratio): 訊號處於「高電位」(Mark)與「低電位」(Space)的時間比。
- 工作週期(Duty Cycle): 訊號處於高電位佔一個週期的百分比。如果訊號高電位維持 1ms,低電位維持 1ms,工作週期就是 50%。
類比: 把無穩態電路想像成音樂家的節拍器。它提供穩定的節拍,告訴數碼「樂隊」中的其他成員(邏輯門和計數器)何時演奏下一個音符。
小撇步: 無穩態電路的頻率通常由 RC 網絡(電阻和電容器)控制。改變 \(R\) 或 \(C\) 的值將改變時鐘滴答的速度!
核心重點: 無穩態電路提供了時序邏輯電路運作所需的時序脈衝(時鐘)。
總結檢查清單
在你繼續之前,請確保你能:
- 解釋為什麼在雜訊環境中數碼訊號優於模擬訊號。
- 描述採樣率和位元深度如何影響 ADC 品質。
- 繪製 AND、OR、NAND、NOR、NOT 和 EOR 門的真值表。
- 識別計數器中 Clock(時鐘) 和 Reset(重置) 引腳的用途。
- 定義無穩態訊號的工作週期(Duty Cycle)。
你做得到的! 數碼電子學就是關於簡單的區塊共同運作以完成複雜任務的過程。繼續練習那些真值表吧!