維特比譯碼器(Viterbi Decoder)硬件架構(二)--卷積碼解碼算法

1.網格圖(Trellis Diagram)

網格圖(Trellis Diagram)是卷積解碼用到的概念,是理解解碼過程的基礎。網格圖是由按時間順序排列的狀態結點矩陣, 每一列代表當前時刻的所有狀態,最左側第一列代表初始狀態(t=0),第二列代表第一個輸入進入編碼器後的轉移狀態。紅色路徑表示輸入是0時的轉移路徑,藍色表示輸入爲1時的轉移路徑。如下圖所示,

  • t=1時刻,只有兩個從初始狀態過來的轉移路徑,只存在2個可能的狀態;
  • t=2時刻,從t=1向t=2轉移存在四個路徑,此刻存在四種可能狀態。
  • t=3時刻,從t=2過來的轉移路徑有8條。
  • 以此類推形成整個網格圖(Trellis Diagram)
    Trellis

2.用網格圖表示編碼過程

如下圖所示,編碼器初始狀態爲 state=‘00’,

  • t=1,輸入的第一bit爲1,走藍色加粗線段所示的轉移路徑,轉移後的狀態爲state=‘10’ . 編碼輸出爲’11’.
  • t=2,輸入bit爲1,轉移路徑在上圖中用藍色加粗線段表示,轉移後的狀態爲state=‘11’ . 編碼輸出爲’01’.
  • t=3,輸入bit爲1,轉移路徑在上圖中用紅色粗線表示,轉移後的狀態爲state=‘11’ . 編碼輸出爲’01’.
  • t=4,輸入bit爲0,轉移路徑在上圖中用藍色粗線表示,轉移後的狀態爲state=‘11’ . 編碼輸出爲’00’.
  • 以此類推,可以形成編碼過程的狀態轉移路徑。
    用網格圖示意卷積碼編碼過程

3. 解碼過程

參考文獻

  1. Encoding/Decoding - Presentation of Convolutional Code
  2. 翻譯 | 卷積碼的維特比(Viterbi)譯碼
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章