JPH04329027A - viterbi decoder - Google Patents
viterbi decoderInfo
- Publication number
- JPH04329027A JPH04329027A JP12461091A JP12461091A JPH04329027A JP H04329027 A JPH04329027 A JP H04329027A JP 12461091 A JP12461091 A JP 12461091A JP 12461091 A JP12461091 A JP 12461091A JP H04329027 A JPH04329027 A JP H04329027A
- Authority
- JP
- Japan
- Prior art keywords
- path
- sequence
- viterbi
- data
- states
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000007476 Maximum Likelihood Methods 0.000 claims description 6
- 230000015654 memory Effects 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 230000007704 transition Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
Landscapes
- Error Detection And Correction (AREA)
- Dc Digital Transmission (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【0001】0001
【産業上の利用分野】本発明は、情報系列が、データ送
信時に任意な初期状態をとりこの初期状態と最終状態と
が同一な畳み込み符号器によって、符号化された符号系
列をビタビシーケンスを用いて最尤復号するビタビ復号
器に関する。[Industrial Application Field] The present invention uses a Viterbi sequence to encode a code sequence in which an information sequence is encoded by a convolutional encoder that takes an arbitrary initial state at the time of data transmission and whose initial state and final state are the same. This invention relates to a Viterbi decoder that performs maximum likelihood decoding.
【0002】周知のように、畳み込み符号器は、符号の
情報速度Rと拘束長Kとによって特長づけられる。符号
の情報速度Rは、情報系列のk情報ビットが符号系列の
n符号ビットに符号化される場合、k/nで与えられる
。例えば、情報系列の1情報ビットが符号系列の2符号
ビットで表わされる場合、R=1/2である。拘束長K
は、あるブロックの情報ビットの影響が及ぶ範囲を示す
もので、符号生成多項式の次数mと部分ブロックの長さ
nとによって、K=(m+1)nで与えられる。畳み込
み符号は、符号化がブロック単位で行われるが、過去の
ブロックの情報が現在のブロックにも影響を及ぼすよう
な符号である。畳み込み符号器は、複数の内部状態を取
り得る。即ち、畳み込み符号器に含まれる遅延素子の数
がdであると、各遅延素子は論理“0”か“1”を取る
ので、畳み込み符号器は2d 通りの内部状態を取り得
る。情報系列のk情報ビットが入力される毎に、畳み込
み符号器の内部状態が遷移する。時間の経過に伴う畳み
込み符号器の内部状態の遷移の様子は、この技術分野で
周知である、トレリス線図によって示される。簡単に述
べると、トレリス線図とは、内部状態の遷移と出力とを
時間軸を横にとって表したものである。従って、データ
送信時、即ち、情報系列を符号系列に符号化するとき、
畳み込み符号器はその内部状態が初期状態から最終状態
へ遷移する。初期状態は始点とも呼ばれ、最終状態は終
点とも呼ばれる。内部状態間の遷移経路はパスと呼ばれ
る。畳み込み符号器の始点の選択の仕方は3種類に分類
される。すなわち、■始点を畳み込み符号器に含まれる
全ての遅延素子が論理“0”の状態にする。■始点を規
定しない。■始点として畳み込み符号器の取り得る内部
状態の1つを選択する。さらに、■の中で、始点と終点
とが同一なものがある。本発明は、始点と終点とが同一
な畳み込み符号器によって、情報系列が符号化された符
号系列を、伝送路を介して受信系列として受け、この受
信系列をビタビシーケンスを用いて最尤復号するビタビ
復号器に係る。As is well known, convolutional encoders are characterized by the information rate R and constraint length K of the code. The information rate R of the code is given by k/n when k information bits of the information sequence are encoded into n code bits of the code sequence. For example, when one information bit of an information sequence is represented by two code bits of a code sequence, R=1/2. Restraint length K
indicates the range affected by the information bits of a certain block, and is given by K=(m+1)n, where m is the order of the code generation polynomial and n is the length of the partial block. Convolutional codes are codes in which encoding is performed block by block, but information on past blocks also affects the current block. Convolutional encoders can take on multiple internal states. That is, when the number of delay elements included in a convolutional encoder is d, each delay element takes a logic "0" or "1", so the convolutional encoder can take on 2d internal states. Every time k information bits of the information sequence are input, the internal state of the convolutional encoder changes. The transition of the internal states of a convolutional encoder over time is illustrated by a trellis diagram, which is well known in the art. Simply stated, a trellis diagram is a representation of internal state transitions and outputs with the time axis horizontal. Therefore, when transmitting data, that is, when encoding an information sequence into a code sequence,
A convolutional encoder undergoes a transition in its internal state from an initial state to a final state. The initial state is also called the starting point, and the final state is also called the ending point. A transition route between internal states is called a path. There are three types of methods for selecting the starting point of a convolutional encoder. That is, (2) all the delay elements included in the convolutional encoder are set to the logic "0" state at the starting point. ■Do not specify a starting point. ■ Select one of the possible internal states of the convolutional encoder as a starting point. Furthermore, among ■, some have the same starting point and ending point. The present invention receives a code sequence in which an information sequence is encoded by a convolutional encoder having the same starting point and ending point as a received sequence via a transmission path, and maximum likelihood decodes this received sequence using a Viterbi sequence. It concerns a Viterbi decoder.
【0003】0003
【従来の技術】従来のビタビ復号器は、ビタビシーケン
スによりパスメトリックの加算比較、トレリスの選択を
パスメモリ長の回数だけ繰り返し、復号データを出力し
ている。この時のパスの終結は、畳み込み符号器の初期
状態と最終状態とが同一という事を利用して、復号デー
タを使用してパスの始点を推測し、強制的にその場所に
終結させている。2. Description of the Related Art A conventional Viterbi decoder repeatedly adds and compares path metrics and selects a trellis as many times as the path memory length using a Viterbi sequence, and outputs decoded data. At this time, the path ends by taking advantage of the fact that the initial state and final state of the convolutional encoder are the same, using the decoded data to infer the starting point of the path, and forcing it to end at that location. .
【0004】0004
【発明が解決しようとする課題】従来のビタビ復号器は
、先頭の拘束長ビット分の復号データより終点を推測す
るため、この間に復号時に誤りがあった場合、受信デー
タの後半、特に最後の拘束長ビット分の復号データを誤
らせるという問題がある。[Problems to be Solved by the Invention] Conventional Viterbi decoders estimate the end point from the decoded data for the first constraint length bits, so if there is an error during decoding during this time, the second half of the received data, especially the last There is a problem that the decoded data corresponding to the constraint length bits is erroneous.
【0005】従って、本発明の目的は、復号時に誤りを
波及させる事なく、より正確にパスの終結を行えるビタ
ビ復号器を提供することにある。[0005] Accordingly, an object of the present invention is to provide a Viterbi decoder that can more accurately terminate a path without propagating errors during decoding.
【0006】[0006]
【課題を解決するための手段】本発明のビタビ復号器は
、データ送信時に任意な初期状態をとり該初期状態と最
終状態とが同一な畳み込み符号器によって、情報系列が
符号化された符号系列を、伝送路を介して受信系列とし
て受け、該受信系列をビタビシーケンスを用いて最尤復
号するビタビ復号器であって、全状態について各々をパ
スの始点と仮定してメトリックの演算を行う手段と、前
記全状態について前記演算されたメトリックの加算、比
較、及びトレリスの選択を行う手段と、前記全状態の前
記選択されたトレリスを記憶する手段と、前記記憶され
たトレリスの中で始点と終点とが同位置であるパスを優
先的に選択する手段と、を有することを特徴とする。[Means for Solving the Problems] The Viterbi decoder of the present invention provides a code sequence in which an information sequence is encoded by a convolutional encoder that takes an arbitrary initial state at the time of data transmission and whose initial state and final state are the same. A Viterbi decoder that receives the received sequence as a received sequence via a transmission path, and maximum likelihood decodes the received sequence using a Viterbi sequence, and calculates a metric for all states assuming that each is a starting point of a path. means for adding and comparing the calculated metrics and selecting a trellis for all the states; means for storing the selected trellis for all the states; and a starting point in the stored trellis. The present invention is characterized by comprising means for preferentially selecting a path whose end point is at the same position.
【0007】[0007]
【実施例】次に、本発明の実施例について図面を参照し
て説明する。図1を参照すると、本発明の一実施例によ
るビタビ復号器は、符号の情報速度R=1/2で拘束長
K=3の畳み込み符号を伝送路を介して受信系列として
受け、この受信系列をビタビシーケンスを用いて最尤復
号する。このような畳み込み符号を生成する畳み込み符
号器は、遅延素子を2個含み、従って、22 =4通り
の内部状態を取り得る。即ち、畳み込み符号器は、(0
0),(01),(10),及び(11)の内部状態を
取り得る。ここでは、(00),(01),(10),
及び(11)の内部状態を、それぞれ、第1乃至第4の
状態と呼ぶことにする。データを送信するとき、本実施
例が適用される畳み込み符号器は第1乃至第4の状態の
いずれかを初期状態(始点)としてとり、初期状態(始
点)と最終状態(終点)とが同一である。Embodiments Next, embodiments of the present invention will be described with reference to the drawings. Referring to FIG. 1, a Viterbi decoder according to an embodiment of the present invention receives a convolutional code with a code information rate R=1/2 and a constraint length K=3 as a received sequence via a transmission path, and receives this received sequence. Maximum likelihood decoding is performed using the Viterbi sequence. A convolutional encoder that generates such a convolutional code includes two delay elements and can therefore take on 22 = 4 internal states. That is, the convolutional encoder is (0
It can take the following internal states: 0), (01), (10), and (11). Here, (00), (01), (10),
The internal states of and (11) will be referred to as first to fourth states, respectively. When transmitting data, the convolutional encoder to which this embodiment is applied takes one of the first to fourth states as the initial state (starting point), and the initial state (starting point) and final state (end point) are the same. It is.
【0008】本実施例のビタビ復号器は、上記畳み込み
符号器によって情報系列が符号化された符号系列を伝送
路を介して受信系列として受信する。上述したように、
畳み込み符号器の初期状態は第1乃至第4の状態のいず
れかであるが、ビタビ復号器側では畳み込み符号器の初
期状態がどの状態であったかは分からないことに注意さ
れたい。The Viterbi decoder of this embodiment receives a code sequence in which an information sequence is encoded by the convolutional encoder as a reception sequence via a transmission path. As mentioned above,
Although the initial state of the convolutional encoder is one of the first to fourth states, it should be noted that the Viterbi decoder side does not know which state the convolutional encoder was in the initial state.
【0009】ビタビ復号器は、受信系列を受けるデータ
入力端1と、ブランチメトリック算出回路2と、第1乃
至第4の処理部10、20、30、及び40と、比較判
定制御回路3と、データセレクタ4と、データ出力端5
とを有する。ブランチメトリック算出回路2は、データ
入力端1より入力された受信系列の各受信符号(2符号
ビット)に対するブランチメトリック(符号間距離)を
算出する。ブランチメトリック算出回路2は、算出した
ブランチメトリックを第1乃至第4の処理部10〜40
へ送出する。第1乃至第4の処理部10〜40は、それ
ぞれ、第1乃至第4の状態を第1乃至第4の始点と仮定
してビタビシーケンスを実行する。第1乃至第4の処理
部10〜40は同様の構成を有しているので、以下では
、第1の処理部10について詳細に説明する。The Viterbi decoder includes a data input terminal 1 receiving a received sequence, a branch metric calculation circuit 2, first to fourth processing units 10, 20, 30, and 40, a comparison judgment control circuit 3, Data selector 4 and data output terminal 5
and has. The branch metric calculation circuit 2 calculates the branch metric (inter-symbol distance) for each received code (two code bits) of the received sequence input from the data input terminal 1. The branch metric calculation circuit 2 applies the calculated branch metric to the first to fourth processing units 10 to 40.
Send to. The first to fourth processing units 10 to 40 execute the Viterbi sequence assuming the first to fourth states as the first to fourth starting points, respectively. Since the first to fourth processing units 10 to 40 have similar configurations, the first processing unit 10 will be described in detail below.
【0010】第1の処理部10は、第1のACS演算回
路11と、第1のパスメトリックメモリ12と、第1の
パスメモリ13と、第1の終点データラッチ14と、第
1の始点終点比較回路15と、第1の復号データバッフ
ァ16とを有する。第1のパスメトリックメモリ12に
は、第1のACS演算回路11によって演算された過去
の第1のパスメトリックが記憶されている。第1のAC
S演算回路11は、ブランチメトリック算出回路2で算
出したブランチメトリックと第1のパスメトリックメモ
リ12に記憶されている過去の第1のパスメトリックと
を加算し、この加算で得られたパスメトリックを比較し
、その中で小さい方のパスメトリック及びそれに対応す
るパスを選択する。この選択されたパスメトリック及び
パス(トレリス)は、それぞれ、新しい第1のパスメト
リック及び第1のトレリスとして、第1のパスメトリッ
クメモリ12及び第1のパスメモリ13に記憶される。
すなわち、第1のACS演算回路11は、第1の状態を
第1の始点と仮定して、第1のパスメトリックの加算、
比較、及び第1のトレリスの選択を行う。第1のパスメ
モリ13は第1のトレリスに対応した第1の復号データ
を出力する。第1のパスメモリ13から出力された第1
の復号データは、第1の復号データバッファ16に記憶
される。また、終点の第1の復号データが第1の終点デ
ータとして第1の終点データラッチ14にラッチされる
。第1の始点終点比較回路15は、第1の始点を表す第
1の始点データと第1の終点データラッチ14にラッチ
された第1の終点データとを比較し、第1の比較判定結
果信号を出力する。このようにして、第1の処理部10
は第1の復号データと第1の比較判定結果信号とを出力
する。The first processing unit 10 includes a first ACS calculation circuit 11, a first path metric memory 12, a first path memory 13, a first end point data latch 14, and a first starting point. It has an end point comparison circuit 15 and a first decoded data buffer 16. The first path metric memory 12 stores the past first path metric calculated by the first ACS calculation circuit 11. 1st AC
The S calculation circuit 11 adds the branch metric calculated by the branch metric calculation circuit 2 and the past first path metric stored in the first path metric memory 12, and calculates the path metric obtained by this addition. Compare and select the smaller path metric and its corresponding path. The selected path metric and path (trellis) are stored in the first path metric memory 12 and the first path memory 13 as a new first path metric and first trellis, respectively. That is, the first ACS calculation circuit 11 assumes that the first state is the first starting point, and adds the first path metric;
Compare and select the first trellis. The first path memory 13 outputs first decoded data corresponding to the first trellis. The first output from the first path memory 13
The decoded data is stored in the first decoded data buffer 16. Further, the first decoded data of the end point is latched into the first end point data latch 14 as the first end point data. The first start point/end point comparison circuit 15 compares the first start point data representing the first start point with the first end point data latched in the first end point data latch 14, and generates a first comparison determination result signal. Output. In this way, the first processing unit 10
outputs the first decoded data and the first comparison determination result signal.
【0011】同様に、第2の処理部20は第2の復号デ
ータと第2の比較判定結果信号とを出力し、第3の処理
部30は第3の復号データと第3の比較判定結果信号と
を出力し、第4の処理部40は第4の復号データと第4
の比較判定結果信号とを出力する。Similarly, the second processing unit 20 outputs the second decoded data and the second comparison determination result signal, and the third processing unit 30 outputs the third decoded data and the third comparison determination result signal. The fourth processing unit 40 outputs the fourth decoded data and the fourth
A comparison judgment result signal is output.
【0012】第1乃至第4の復号データはデータセレク
タ4へ供給され、第1乃至第4の比較判定結果信号は比
較判定制御回路3へ供給される。比較判定制御回路3は
、第1乃至第4の比較判定結果信号からどの処理部で始
点と終点とが一致しているのかを判定し、始点と終点と
が一致している処理部を指示する選択信号をデータセレ
クタ4へ送出する。データセレクタ4は、第1乃至第4
の復号データの中から、この選択信号によって指示され
る処理部からのものを選択し、選択された復号データを
データ出力端5から出力する。尚、これら第1乃至第4
の処理部10〜40のいずれにおいても、始点と終点と
が一致していない場合には、比較判定制御回路3は、各
処理部のパスメトリックメモリの尤度に基づいて、選択
信号をデータセレクタ4へ送出する。従って、データセ
レクタ4と比較判定制御回路3とによって、パスメモリ
13,23,33,及び43に記憶されたトレリスの中
で始点と終点とが同位置であるパスが優先的に選択され
る。The first to fourth decoded data are supplied to the data selector 4, and the first to fourth comparison determination result signals are supplied to the comparison determination control circuit 3. The comparison/determination control circuit 3 determines in which processing unit the starting point and the ending point match from the first to fourth comparison/judgment result signals, and instructs the processing unit in which the starting point and the ending point match. A selection signal is sent to the data selector 4. The data selector 4 has first to fourth
The decoded data from the processing unit designated by this selection signal is selected from among the decoded data of , and the selected decoded data is output from the data output terminal 5. Furthermore, these first to fourth
If the start point and end point do not match in any of the processing units 10 to 40, the comparison determination control circuit 3 transmits the selection signal to the data selector based on the likelihood of the path metric memory of each processing unit. Send to 4. Therefore, the data selector 4 and the comparison/judgment control circuit 3 preferentially select paths whose starting point and ending point are at the same position among the trellises stored in the path memories 13, 23, 33, and 43.
【0013】上記実施例では符号の情報速度R=1/2
で拘束長K=3の畳み込み符号を最尤復号する例につい
て述べたが、本発明はこれに限定されず、データを送信
するときに初期状態(始点)と最終状態(終点)とが同
一である畳み込み符号器によって符号化された畳み込み
符号に適用できる。In the above embodiment, the code information rate R=1/2
An example of maximum likelihood decoding of a convolutional code with a constraint length of K=3 was described in , but the present invention is not limited to this. It can be applied to convolutional codes encoded by a certain convolutional encoder.
【0014】[0014]
【発明の効果】以上説明したように本発明は、全状態に
ついて各々のパスの始点を仮定してACS演算を開始さ
せ、この全状態のトレリスを記憶し、始点と終点が同位
置であるパスを選択して、パスを終結させる事により、
復号時の誤りの波及をなくし、パスの終結による誤り率
の増加を抑える事ができる。As explained above, the present invention starts an ACS calculation by assuming the starting point of each path for all states, stores the trellis of all the states, and calculates a path whose starting point and ending point are at the same position. By selecting and terminating the path,
It is possible to eliminate the spread of errors during decoding and suppress the increase in error rate due to path termination.
【図1】本発明の一実施例によるビタビ復号器を示すブ
ロック図である。FIG. 1 is a block diagram illustrating a Viterbi decoder according to an embodiment of the invention.
1 データ入力端 2 ブランチメトリック算出回路 3 比較判定制御回路 4 データセレクタ 5 データ出力端 10,20,30,40 処理部 1 Data input terminal 2 Branch metric calculation circuit 3 Comparison judgment control circuit 4 Data selector 5 Data output terminal 10, 20, 30, 40 processing section
Claims (1)
該初期状態と最終状態とが同一な畳み込み符号器によっ
て、情報系列が符号化された符号系列を、伝送路を介し
て受信系列として受け、該受信系列をビタビシーケンス
を用いて最尤復号するビタビ復号器に於いて、全状態に
ついて各々をパスの始点と仮定してメトリックの演算を
行う手段と、前記全状態について前記演算されたメトリ
ックの加算、比較、及びトレリスの選択を行う手段と、
前記全状態の前記選択されたトレリスを記憶する手段と
、前記記憶されたトレリスの中で始点と終点とが同位置
であるパスを優先的に選択する手段と、を有することを
特徴とするビタビ復号器。1. A code sequence in which an information sequence is encoded by a convolutional encoder that takes an arbitrary initial state at the time of data transmission and whose initial state and final state are the same, is received as a received sequence via a transmission path, A Viterbi decoder for maximum likelihood decoding of the received sequence using a Viterbi sequence includes means for calculating a metric for all states assuming each as a starting point of a path; means for adding, comparing, and selecting a trellis;
Viterbi characterized by comprising: means for storing the selected trellis in all the states; and means for preferentially selecting a path whose start point and end point are at the same position among the stored trellises. decoder.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03124610A JP3120342B2 (en) | 1991-04-30 | 1991-04-30 | Viterbi decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03124610A JP3120342B2 (en) | 1991-04-30 | 1991-04-30 | Viterbi decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04329027A true JPH04329027A (en) | 1992-11-17 |
JP3120342B2 JP3120342B2 (en) | 2000-12-25 |
Family
ID=14889692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03124610A Expired - Fee Related JP3120342B2 (en) | 1991-04-30 | 1991-04-30 | Viterbi decoder |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3120342B2 (en) |
-
1991
- 1991-04-30 JP JP03124610A patent/JP3120342B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3120342B2 (en) | 2000-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8443272B1 (en) | Methods, algorithms, software, circuits, receivers and systems for decoding convolutional code | |
US5436918A (en) | Convolutional encoding/decoding apparatus with fixed bit insertion | |
US5802116A (en) | Soft decision Viterbi decoding with large constraint lengths | |
JPS6356728B2 (en) | ||
JPH0316046B2 (en) | ||
JP3233847B2 (en) | Viterbi decoding method and Viterbi decoding circuit | |
US6697442B1 (en) | Viterbi decoding apparatus capable of shortening a decoding process time duration | |
US7035356B1 (en) | Efficient method for traceback decoding of trellis (Viterbi) codes | |
US5878060A (en) | Viterbi decoding apparatus and viterbe decoding method | |
US5657333A (en) | Method and apparatus for error-control coding in a digital data communication system | |
US8489972B2 (en) | Decoding method and decoding device | |
JP3120342B2 (en) | Viterbi decoder | |
US7861146B2 (en) | Viterbi decoding apparatus and Viterbi decoding method | |
JPH04329026A (en) | viterbi decoder | |
US20050138535A1 (en) | Method and system for branch metric calculation in a viterbi decoder | |
KR100564757B1 (en) | Low Power Viterbi Decoder and Traceback Method | |
JP4295871B2 (en) | Error correction decoder | |
US6842490B1 (en) | Viterbi decoder with adaptive traceback | |
JP4226165B2 (en) | Decoding device and decoding method | |
JP5370487B2 (en) | Decoding method and decoding apparatus | |
JP3235333B2 (en) | Viterbi decoding method and Viterbi decoding device | |
JP3337950B2 (en) | Error correction decoding method and error correction decoding device | |
JP3255458B2 (en) | Convolutional encoding and Viterbi decoding method, convolutional encoding device and Viterbi decoding device | |
JP3720251B2 (en) | Viterbi decoder | |
KR100333336B1 (en) | Traceback method of viterbi decoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000920 |
|
LAPS | Cancellation because of no payment of annual fees |