編碼釋義
數位訊號可以直接採用
基帶傳輸,所謂基帶就是指基本頻帶。基帶傳輸就是線上路中直接傳送數位訊號的電脈衝,這是一種最簡單的傳輸方式,近距離通信的區域網路都採用基帶傳輸。
信號電平由0、1表示,並且在表示完一個碼元後,電壓不需回到0。
在給定一個信號頻率的情況下(比如說
比特率),NRZ 代碼只需要
曼徹斯特碼(Manchester code) 的一半頻寬。
當用於異步傳輸時,由於缺少中性狀態,必須依靠其他種機制,來達成在同步傳輸中使用時鐘偵測錯誤的資料回復工作。
不歸零編碼本身並非一種同步系統,而更是一種編碼方式,因為它可用於同步環境、或異步環境中,也就是不管有沒有明確的時鐘信號,都可以運作。所以,討論不歸零編碼是否在時鐘“跳動 (clock-edge)”或“跳動之間 (between clock-edge)”並非必要的,因為每一個信號一定都是以給定的時脈來傳輸的,這就暗示了信號內在的時脈。真正的問題是,能否在接收端以當初取樣時的同樣頻率重繪該信號。
然而,由於 NRZ 信號的脈衝與時鐘是一致的,這就很容易看出不歸零編碼和其他編碼方式的不同,例如前面提到的曼徹斯特碼,它需要明確的時脈信息(即 NRZ 和時鐘的 XOR 值),還能看出與 NRZ-Mark 和 NRZ-Inverted 等編碼的不同。
編碼特點
不歸零碼,數位訊號可以直接採用
基帶傳輸,基帶傳輸是線上路中直接傳送數位訊號的
電脈衝,是一種最簡單的傳輸方式,近距離通信的區域網路都採用基帶傳輸。
雙極性不歸零碼:"1"碼和"0"碼都有電流,但是"1"碼是正電流,"0"碼是
負電流,正和負的幅度相等,故稱為雙極性碼。此時的判決門限為零電平,接收端使用零判決器或正負判決器,接收信號的值若在零電平以上為正,判為"1"碼;若在零電平以下為負,判為"0"碼。
兩種編碼,都是在一個碼元的全部時間內發出或不發出電流(單極性),以及發出正電流或負電流(雙極性)。每一位編碼占用了全部碼元的寬度,故這兩種編碼都屬於全寬碼,也稱作不歸零碼NRZ (Non Return Zero)。如果重複傳送"1"碼,勢必要連續傳送正電流;如果重複傳送"0"碼,勢必要連續不送電流或連續傳送
負電流,這樣使某一位碼元與其下一位碼元之間沒有間隙,不易區分識別。
歸零碼可以改善這種狀況。
單極性歸零碼,當發"1"碼時,發出正電流,但持續時間短於一個碼元的時間寬度,即發出一個窄脈衝;當發"0"碼時,仍然完全不傳送電流,所以稱這種碼為單極性歸零碼。
雙極性歸零碼,其中"1"碼發正的窄脈衝,"0"碼發負的窄脈衝,兩個
碼元的間隔時間可以大於每一個窄脈衝的寬度,取樣時間是對準脈衝的中心。
編碼比較
單極 NRZ-Level
“1”由一種物理電平表現,例如傳輸線上的直流偏移 (DC bias)。
“0”由另一種電平表現(通常是正電壓)。
在時脈術語中,通常“1”沿著上一個比特的時脈邊緣,維持或改變到一個較低的位置;而“0”則沿著上一個比特的時脈邊緣,維持或改變到一個較高的位置,或者兩者反過來。這可能會造成一長串不改變的電平,讓同步工作變得困難。一個解決辦法是只傳送有著許多變化的信號,見限制游長(Run Length Limited)。
圖表顯示最低一條線代表真正的零電平,而其上是代表“0”的邏輯電平,電壓代表“1”,這種配置較稀少。
兩極 NRZ-Level
“1”由一物理電平表現(通常是負電壓)。
“0”由另一電平表現(通常是正電壓)。
在時脈術語中,兩極的 NRZ-Level 電壓沿著上一個比特的時脈邊緣,從正轉向負。
這種信號的例子是
RS-232,它的“1”是 -5v 至 -12V 之間、“0”是 +5V 至 +12V 之間。
NRZ-Mark
“1”由物理電平的改變來表示。
“0”由物理電平的沒有改變來表示。
在時脈術語中,沿著上一個比特的時脈邊緣作出改變的代表“1”,沒有改變的代表“0”。
觀看圖表來理解以改變為基礎的編碼時,必須理解到如果第一個比特之前的初始狀態被判斷為相反的,則整個信號會是反相的、或部分反相的。
在其他檔案中,這個編碼很常只用“NRZ”單名來稱呼;FIPS 1037 也把“不歸零改變為一 (non-return-to-zero change-on-ones)”和“不歸零一 (non-return-to-zero one)”定義為與此相同的東西。
NRZ-Space
“1”由物理電平的沒有改變來表現。
“0”由電平的改變來表現。
在時脈術語中,沿著前一個比特的時脈邊緣改變的電平代表的是“0”。
這個“改變為零”的套用例子是High-Level Data Link Control和
USB。它們利用插入零比特來避免長串的未改變比特(即使資料中包含了大量的 1 比特序列)。
HDLC 傳輸器會在連續的五個 1 比特後面,自動插入一個 0 比特(一個例外是區塊定義符 "01111110")。USB 傳輸器會在六個連續的 1 比特後,插入一個 0 比特。接收端將使用每一個電平的轉換(不管是資料本身還是自動插入比特)來維持時脈的同步性,若不為同步,則這些插入 0 比特會被忽略。
NRZ-Inverted (NRZI)
一改變:“1”為物理電平上的改變。“0”為沒有改變。
零改變:“0”為物理電平上的改變。“1”為沒有改變。
改變發生在當下比特的時鐘脈衝前緣。
但是,
NRZI會有長串的 0或1 比特出現,導致時脈回復有困難,可以使用一些編碼技巧(例如游長限制)來解決。
曼徹斯特碼永遠有時脈信號,但傳輸效率比 NRZI 低。