解讀香農定理、奈奎斯特定理、編碼與調製

https://mp.weixin.qq.com/s?__biz=MjM5ODYyODM4Mg==&mid=2655684738&idx=1&sn=70a65dfe4f397d4335476ed8e3d9ddba&chksm=bd79f5f38a0e7ce5fc407b144f163910b0c0b3c494af7edcfe888abe4d1c2c77cabd1fa25400&mpshare=1&scene=23&srcid=1210rn6SrHlo922TSi0kaz9T#rd

工程師都會考慮一個問題:信道上到底可以傳輸多大的數據,或者指定的信道上的極限傳輸率是多少。這就是信道容量的問題。例如,在xDSL系統中,我們使用的傳輸介質是僅有幾兆帶寬的電話線,而上面要傳送幾兆、十幾兆甚至幾十兆帶寬的數據,如此高的速率能保證在幾兆帶寬的雙絞線上可靠傳輸嗎?或者說從另一個角度說,在給定通頻帶寬(Hz)的物理信道上,到底可以有多高的數據速率(b/S)來可靠傳送信息?

早在1924年,AT&T的工程師奈奎斯特(Henry Nyquist)就認識到在任何信道中,碼元傳輸的速率都是有上限的,並推導出一個計算公式,用來推算無噪聲的、有限帶寬信道的最大數據傳輸速率,這就是 今天的奈奎斯特定理。由於這個定理只侷限在無噪聲的環境下計算信道最大數據傳輸速率,而在有噪聲的環境下仍然不能有效計算出信道最大數據傳輸速率,因此在 1948年,香農(Claude Shannon)把奈奎斯特的工作進一步擴展到了信道受到隨機噪聲干擾的情況,即在有隨機噪聲干擾的情況計算信道最大數據傳輸速率,這就是今天的香農定理。下面分別介紹這兩個定理。

一、奈奎斯特定理
奈奎斯特證明,對於一個帶寬爲W赫茲的理想信道,其最大碼元(信號)速率爲2W波特。這一限制是由於存在碼間干擾。如果被傳輸的信號包含了M個狀態值(信號的狀態數是M),那麼W赫茲信道所能承載的最大數據傳輸速率(信道容量)是:

C =2×W×log2M(bps)

假設帶寬爲W赫茲信道中傳輸的信號是二進制信號(即信道中只有兩種物理信號),那麼該信號所能承載的最大數據傳輸速率是2Wbps。例如,使用 帶寬爲3KHz的話音信道通過調制解調器來傳輸數字數據,根據奈奎斯特定理,發送端每秒最多隻能發送2×3000個碼元。如果信號的狀態數爲2,則每個信 號可以攜帶1個比特信息,那麼話音信道的最大數據傳輸速率是6Kbps;如果信號的狀態數是4,則每個信號可以攜帶2個比特信息,那麼話音信道的最大數據 傳輸速率是12Kbps。

因此對於給定的信道帶寬,可以通過增加不同信號單元的個數來提高數據傳輸速率。然而這樣會增加接收端的負擔,因爲,接收端每接收一個碼元,它不再只是從兩個可能的信號取值中區分一個,而是必須從M個可能的信號中區分一個。傳輸介質上的噪聲將會限制M的實際取值。

二、香農定理
奈奎斯特考慮了無噪聲的理想信道,而且奈奎斯特定理指出,當所有其他條件相同時,信道帶寬加倍則數據傳輸速率也加倍。但是對於有噪聲的信道,情況將會迅速變壞。現在讓我們考慮一下數據傳輸速率、噪聲和誤碼率之間的關係。噪聲的存在會破壞數據的一個比特或多個比特。假如數據傳輸速率增加了,每比特所佔用 的時間會變短,因而噪聲會影響到更多比特,則誤碼率會越大。

對於有噪聲信道,我們希望通過提高信號強度來提高接收端正確接收數據的能力。衡量信道質量好壞的參數是信噪比(Signal-to-Noise Ratio,S/N),信噪比是信號功率與在信道某一個特定點處所呈現的噪聲功率的比值。通常信噪比在接收端進行測量,因爲我們正是在接收端處理信號並試 圖消除噪聲的。如果用S表示信號功率,用N表示噪聲功率,則信噪比表示爲S/N。爲了方便起見,人們一般用10log10(S/N)來表示信噪比,單位是 分貝(dB)。S/N的值越高,表示信道的質量越好。例如,S/N爲1000,其信噪比爲30dB;S/N爲100,其信噪比爲20dB;S/N爲10, 其信噪比爲10dB。

對於通過有噪聲信道傳輸數字數據而言,信噪比非常重要,因爲它設定了有噪聲信道一個可達的數據傳輸速率上限,即對於帶寬爲W赫茲,信噪比爲S/N的信道,其最大數據傳輸速率(信道容量)爲:

C = W×log2(1+S/N)(bps)

例如,對於一個帶寬爲3KHz,信噪比爲30dB(S/N就是1000)的話音信道,無論其使用多少個電平信號發送二進制數據,其數據傳輸速率 不可能超過30Kbps。值得注意的是,香農定理僅僅給出了一個理論極限,實際應用中能夠達到的速率要低得多。其中一個原因是香農定理只考慮了熱噪聲(白噪聲),而沒有考慮脈衝噪聲等因素。

香農定理給出的是無誤碼數據傳輸速率。香農還證明,假設信道實際數據傳輸速率比無誤碼數據傳輸速率低,那麼使用一個適當的信號編碼來達到無誤碼數據傳 輸速率在理論上是可能的。遺憾的是,香農並沒有給出如何找到這種編碼的方法。不可否認的是,香農定理確實提供了一個用來衡量實際通信系統性能的標準。

三、編碼與調製
說完上面這兩個定理,在說說對編碼和調製的解說。

信源與信宿
信源與信宿是網絡中的兩個專業名詞,其實,信源與信宿可簡單地理解爲信息的發送者和信息的接收者。信息傳播的過程一般可描述爲:信源→信道→信 宿。在傳統的信息傳播過程中,對信源的資格有嚴格的限制,通常是指廣播電臺、電視臺等機構,採用的是有中心的結構。而在計算機網絡中,對信源的資格並無特 殊限制,任何一個網絡中的計算機都可以成爲信源,當然任何一個網絡中計算機也可以成爲信宿。

由於傳輸介質及其格式的限制,通信雙方的信號不能直接進行傳送,必須通過一定的方式處理之後,使之能夠適合傳輸媒體特性,才能夠正確無誤地傳送到目的地。

調製是指用模擬信號承載數字或模擬數據;而編碼則是指用數字信號承載數字或模擬數據。

目前存在的傳輸通道主要有模擬信道和數字信道兩種,其中模擬信道一般只用於傳輸模擬信號,而數字信道一般只用於傳輸數字信號。有時爲了需要,也可能需 要用數字信道傳輸模擬信號,或用模擬信道傳輸數字信號,此時,我們就需要先對傳輸的數據進行轉換,轉換爲信道能傳送的數據類型,即模擬信號與數字信號的轉 換,這是編碼與調製的主要內容。當然模擬數據、數字數據如何通過通道發送的問題也是編碼與調製的重要內容。下面我們分別從模擬信號使用模擬信道傳送、模擬 信號使用數字信道傳送、數字信號使用模擬信道傳送和數字信號使用數字信道傳送四個方面來介紹數據的調製與編碼。

1.模擬信號使用模擬信道傳送
有時候模擬數據可以在模擬信道上直接傳送,但在網絡數據傳送中這並不常用,人們仍然會將模擬數據調製出來,然後再通過模擬信道發送。調製的目的是將模 擬信號調製到高頻載波信號上以便於遠距離傳輸。目前,存在的調製方式主要有調幅(Amplitude Modulation,AM)、調頻(Frequency Modulation,FM)及調相(Phase Modulation,PM)。

2.模擬信號使用數字信道傳送
使模擬信號在數字信道上傳送,首先要將模擬信號轉換爲數字信號,這個轉換的過程就是數字化的過程,數字化的過程主要包括採用和量化兩步。常見的將模擬 信號編碼到數字信道傳送的方法主要有:脈衝幅度調製(Pulse Amplitude Modulation,PAM)、脈衝編碼調製(Pulse Code Modulation,PCM)、差分脈衝編碼調製(Differential PCM,DPCM)和增量脈碼調製方式(Delta Modulation,DM)。

3.數字信號使用模擬信道傳送
將數字信號使用模擬信道傳送的過程是一個調製的過程,它是一個將數字信號(二進制0或1)表示的數字數據來改變模擬信號特徵的過程,即將二進制數據調製到模擬信號上來的過程。

一個正弦波可以通過3個特性進行定義:振幅、頻率和相位。當我們改變其中任何一個特性時,就有了波的另一個形式。如果用原來的波表示二進制1,那麼波 的變形就可以表示二進制0;反之亦然。波的3個特性中的任意一個都可以用這種方式改變,從而使我們至少有3種將數字數據調製到模擬信號的機制:幅移鍵控法 (Amplitude-Shift Keying,ASK)、頻移鍵控法(Frequency-Shift Keying,FSK)以及相移鍵控法(Phase-Shift Keying,PSK)。另外,還有一種將振幅和相位變化結合起來的機制叫正交調幅(Quadrature Amplitude Modulation,QAM)。其中正交調幅的效率最高,也是現在所有的調制解調器中經常採用的技術。

4.數字信號使用數字信道傳送
要是數字信號在數字信道上傳送,需要對數字信號先進行編碼。例如,當數據從計算機傳輸到打印機時,一般是採用這種方式。在這種方式下,首先須進行對數 字信號編碼,即由計算機產生的二進制0和1數字信號被轉換成一串可以在導線上傳輸的電壓脈衝。對信源進行編碼可以降低數據率,提高信息量效率,對信道進行 編碼可以提高系統的抗干擾能力。

目前,常見的數據編碼方式主要有不歸零碼、曼徹斯特編碼和差分曼徹斯特編碼三種。

(1)不歸零碼(NRZ,Non-Return to Zero):二進制數字0、1分別用兩種電平來表示,常用-5V表示1,+5V表示0。缺點是存在直流分量,傳輸中不能使用變壓器;不具備自同步機制,傳輸時必須使用外同步。

(2)曼徹斯特編碼(Manchester Code):用電壓的變化表示0和1,規定在每個碼元的中間發生跳變。高→低的跳變代表0,低→高的跳變代表1(注意:某種教程中關於此部分內容有相反的 描述,也是正確的)。每個碼元中間都要發生跳變,接收端可將此變化提取出來,作爲同步信號。這種編碼也稱爲自同步碼(Self- Synchronizing Code)。其缺點是需要雙倍的傳輸帶寬(即信號速率是數據速率的2倍)。

(3)差分曼徹斯特編碼:每個碼元的中間仍要發生跳變,用碼元開始處有無跳變來表示0和1。有跳變代表0,無跳變代表1(注意:某種教程中關於此部分內容有相反的描述,也是正確的)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章