暢談無線通信系統物理層之CRC(一)概述與定義

CRC英文爲Cyclic Redundancy Check,翻譯過來即循環冗餘校驗,通過添加餘式進行錯誤校驗,CRC編碼作爲循環碼字的一種,其生成原理與循環碼字的生成完全一致。

嚴格來說,CRC並不屬於物理層,它屬於鏈路層的一部分,在CPU繁忙時,CRC用軟件實現的時候佔用資源較多,CRC會用硬件實現,此時和物理層接口比較緊密,同時CRC檢錯功能也可以用來定性物理層的錯誤,所以CRC也可以看做物理層的一部分。

爲什麼需要CRC?在通信設備傳輸過程中,尤其是無線通信中,無論傳輸系統物理層的設計再怎麼完美,差錯總會存在,有的時候,出錯的某些數據一旦進入下一個流程,可能會引起重大的破環作用,這時需要丟棄,同時也可通知發送端重傳,所以在接收方接收數據之前需要對數據進行差錯檢測,當且僅當檢測的結果爲正確時接收方纔真正收下數據。檢測的方式有多種,常見的有奇偶校驗、因特網校驗和循環冗餘校驗等。CRC特點是:檢錯能力強,開銷小,易於用編碼器及檢測電路實現。從其檢錯能力來看,它所不能發現的錯誤的機率僅爲0.0047%以下。從性能上和開銷上考慮,均遠遠優於奇偶校驗及算術和校驗等方式

各種書籍和網站都對CRC進行了大量的介紹,如果只進行應用的話,發送接收端設計比較簡單,按照標準流程和開源算法進行設計即可,但其實稍微仔細研究的話,會發現CRC其實並不簡單,有一些有趣的性能會影響系統設計,比如CRC能糾錯嗎?CRC能發現所有的錯誤嗎?通過CRC校驗就一定沒有錯誤嗎?這裏對基本問題進行總結,試圖能全面瞭解CRC性能,爲工程應用提供更好的支持。

一、定義

先給出CRC定義:通過添加用循環碼字生成多項式生成的冗餘碼字進行校驗的方法

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