JP2004193892A - Viterbi decoder - Google Patents
Viterbi decoder Download PDFInfo
- Publication number
- JP2004193892A JP2004193892A JP2002358503A JP2002358503A JP2004193892A JP 2004193892 A JP2004193892 A JP 2004193892A JP 2002358503 A JP2002358503 A JP 2002358503A JP 2002358503 A JP2002358503 A JP 2002358503A JP 2004193892 A JP2004193892 A JP 2004193892A
- Authority
- JP
- Japan
- Prior art keywords
- path
- metric
- viterbi decoder
- state
- path metric
- 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.)
- Withdrawn
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、畳み込み符号化されて伝送された符号化信号を、復号語のデータビット長よりも短いトレースバック長を単位として復号化するビタビ復号器に関する。
【0002】
【従来の技術】
デジタル信号で表された情報を伝送する場合、伝送途中のノイズなどの影響により、正確な情報が伝送されなくなることが予想される。従来、伝送途中にノイズなどの影響をうけても、情報を正確に伝送できるようにするために、情報を表すデジタル信号を各種アルゴリズムを使用して符号語に変換することにより冗長性を持たせた符号化信号を生成し、この符号化信号を伝送することが実施されている。また、受信側では伝送されてきた符号化信号を復号化することにより、符号化信号の一部がノイズなど影響により変わってしまっていたとしても、正確な情報を得ることができる。
【0003】
送信側で符号語を生成する符号器の1例として、畳み込み符号器があり、畳み込み符号器によって畳み込み符号化されて伝送されて来た符号化信号を、受信側で復号化する復号器として、従来からビタビ復号器が利用されている。
【0004】
図1は、畳み込み符号器とビタビ復号器の関係を模式的に示す図である。
【0005】
図1に示されている畳み込み符号器100には、伝送される情報を1ビットの情報信号の羅列で表現した情報信号系列a1a2a3…が入力される。
【0006】
畳み込み符号器100に入力された情報信号系列a1a2a3…は、1ビット毎に所定数のビットからなる符号語に変換され、この符号語の系列である符号化信号が畳み込み符号器100から出力される。この符号化信号は伝送路を経由してビタビ復号器200に入力される。ビタビ復号器200は、伝送路上のノイズの影響を受けている可能性のある符号化信号を復号化し、畳み込み符号器100によって符号化される以前の情報信号系列と同じ内容の復号信号系列a1a2a3…を出力する。
【0007】
ここで、符号化信号を復号化するにあたって、この符号化信号を生成した畳み込み符号器100に対応するトレリス線図(図3にて後述)を利用するビタビアルゴリズムと呼ばれる復号化プロセスを、デジタル回路で実現したものがビタビ復号器200である。
【0008】
上記のトレリス線図には、所定のデータビット長の情報信号に基づいて畳み込み符号器100が生成するであろう符号化信号の全てが、畳み込み符号器100の回路構成に基づいて求められ示されている。このトレリス線図に示されている符号化信号の中から、ビタビ復号器200が受け取った符号化信号と最も近いデータ構造を有する符号化信号を選択し、この選択された符号化信号から、符号化される以前の情報信号を推定するという復号化プロセスがビタビアルゴリズムである。
【0009】
前述したように、ビタビ復号器200が受け取る符号化信号はノイズなど影響により一部が変わってしまっている可能性がある。一方、トレリス線図に示されている符号化信号は、畳み込み符号器から理論的に求められたものであるから正確である。ビタビアルゴリズムでは、トレリス線図に示されている正確な符号化信号に基づいて情報信号を推定するので、伝送途中のノイズなどの影響が排除された正確な復号化を実施することができる。
【0010】
ここで、ビタビ復号器について説明する前に、まず畳み込み符号器について説明する。
【0011】
図2は、畳み込み符号器の一例を示すブロック図である。
【0012】
図2に示されている畳み込み符号器110は、互いに直列に接続された2つのシフトレジスタ111,112と、排他的論理和を実行する5つの演算器113,114,115,116,117とで構成されている。
【0013】
図2では、畳み込み符号器110のシフトレジスタ111,112には既に1番目の情報信号a1と2番目の情報信号a2が格納されており、3番目の情報信号a3が入力された時点での3ビットの符号語G1G2G3が出力された、2時点目の状態にある畳み込み符号器110が示されている。
【0014】
図2に示されている畳み込み符号器110のステートはa2a1である。この畳み込み符号器110のシフトレジスタ111に情報信号a3が格納されると同時に、1段目のシフトレジスタ111からの情報信号a2が2段目のシフトレジスタ112に格納される。その後入力される新たな情報信号(図示せず)と2つの情報信号a2a3に基づいて新たな3ビットの符号語が生成され出力される。つまり、情報信号a3の畳み込み符号器110のシフトレジスタ111への格納により、畳み込み符号器110のステートは、a2a1からa3a2に遷移する。
【0015】
以上に説明したように図2に示されている畳み込み符号器110では、情報信号が1ビット入力される毎に3ビットの符号語が1つ生成されるとともに、そのステートが遷移する。
【0016】
次に、トレリス線図について説明する。
【0017】
図3は、図2に示す畳み込み符号器におけるトレリス線図である。
【0018】
図3に示すトレリス線図には、7ビットのデータビット長の情報信号系列に基づいて畳み込み符号器110(図2参照)が生成する符号語とそのときのステートの遷移が全て示されている
畳み込み符号器110のステートは2つのビットの組み合わせで表現される。従って、畳み込み符号器110には、4通りのステート00,10,01,11がある。また図3の例では、0時点目に初期状態にあるときの、畳み込み符号器110の初期ステートは00に設定されている。
【0019】
また、図3の例では、畳み込み符号器110に入力される情報信号系列のデータビット長は7ビットである。従って、この情報信号系列の最後の情報信号が入力され、この情報信号に基づいて畳み込み符号器110が最後の符号語の生成を完了する時点は7時点目である。また、図3の例では、畳み込み符号器110が符号化信号の生成を完了したときにそのステートが初期ステートと同じ00となるように、情報信号系列の末尾の2ビットが00に設定されている。従って畳み込み符号器110の7時点目のステートは00である。
【0020】
図3に示すトレリス線図では、各時点のステートを黒丸で表し、ある時点のステートから次の時点のステートへの遷移を矢印で表している。また個々の矢印の近傍には、その矢印が示すステートの遷移に対応する符号語が付記されている。
【0021】
ここで、個々の矢印をブランチ、ある時点のステートから1時点以上離れた別の時点のステートへの遷移をブランチの組み合わせで表現したものをパスと称する。例えば、0時点目のステート00から1時点目のステート10への遷移は、ブランチb1で表される。また、0時点目のステート00から2時点目のステート11への遷移は、2本のブランチb1,b2を組み合わせたパスPで表される。また、各ブランチに付記されている符号語は、畳み込み符号器110の回路構成から推定されたものであるので、ここでは推定符号語と称する。
【0022】
さらに、説明の便宜上、トレリス線図において、ある時点のステートに向かってくるブランチをその時点のブランチと称する。例えば、図3に示されているトレリス線図において、1時点目のステート00に向かってくるブランチb3と、1時点目のステート10に向かってくるブランチb1は1時点目のブランチである。
【0023】
このようなトレリス線図を利用し、符号化信号を復号化する復号化プロセスがビタビアルゴリズムであり、ビタビアルゴリズムによる復号化をデジタル回路で実現したものがビタビ復号器である。
【0024】
ここで、畳み込み符号化されて伝送された符号化信号に対して、復号後のデータビット長よりも短いトレースバック(図4にて後述)長を単位としてビタビアルゴリズムによる復号化を施すビタビ復号器が提案されている(例えば、特許文献1参照。)。
【0025】
【特許文献1】
特開平11−355150号公報(段落番号0011−0071、第6図、第11図)
【0026】
【発明が解決しようとする課題】
図4は、特許文献1に示されたビタビ復号器を示すブロック図である。
【0027】
ここで、図4に示されているビタビ復号器210を説明するにあたり、符号化信号を生成する符号器は図2に示された畳み込み符号器110であり、ビタビ復号器210で実現されている復号化プロセスには、畳み込み符号器110に対応する図3に示されたトレリス線図が利用されているものとする。これは後述する図5の説明においても同様である。
【0028】
図4に示すビタビ復号器210に伝送される符号化信号は、畳み込み符号器110によって生成された符号語が、生成された時点順に連なったものである。この符号化信号がビタビ復号器210のブランチメトリック計算器211に入力される。ブランチメトリック計算器211が実行するブランチメトリック計算プロセスでは、符号化信号を構成する符号語が1つ入力される毎に、この符号語が生成された時点と、トレリス線図(図3参照)の時点が一致するブランチのブランチメトリックが計算される。ここで、ブランチメトリックとは、ブランチに付記されている推定符号語と、ビタビ復号器210に入力された符号語とを桁毎に比較したとき、対応する桁の値が一致しないものの個数である。例えば、1時点目に生成された符号語が001であったとする。トレリス線図の1時点目には2本のブランチb1,b3がある。ブランチb1に付記されている推定符号語は111である。推定符号語111と符号語001とを桁毎に比較すると、対応する桁の値が一致しないものの個数は2個であるから、ブランチb1のブランチメトリックは2になる。また同様に計算すると、ブランチb3のブランチメトリックは1になる。ブランチメトリック計算器211で得られたブランチメトリックを示す情報は、ACS(Add Compare Select)回路212に供給される。
【0029】
ACS回路212では、ブランチメトリック計算器211から供給された、ブランチメトリックを示す情報に基づいて、以下のACSプロセスを実行する。
【0030】
まずステートのパスメトリックが計算される。ここで、ステートのパスメトリックとは、トレリス線図(図3参照)上のあるステートに至るパスに対して、このパスを構成するブランチのブランチメトリックの累積値を計算したものである。ACSプロセスでは、あるステートにつながるブランチのブランチメトリックを示す情報がブランチメトリック計算器211から供給されたとき、トレリス線図上で、このブランチによって結ばれる1時点前のステートのパスメトリックを示す情報がパスメトリックメモリ213から読み出される。この情報が示す1時点前のステートのパスメトリックに、ブランチメトリック計算器211から供給された情報が示すブランチメトリックを加えてパスメトリックを計算する。計算されたパスメトリックを示す情報は、パスメトリックメモリ213に格納され、次の時点でのパスメトリックの計算に用いられる。
【0031】
ここで、例えば、トレリス線図の3時点目のステート00には、2時点目のステート00からのブランチb4と、2時点目のステート01からのブランチb5との2本のブランチがつながっている。これは0時点目のステート00から3時点目のステート00に至るパスには、2時点目のステート00を経由するパスと、2時点目のステート01を経由するパスとの2種類のパスが存在することを意味する。このように、あるステートに至るパスが2種類存在するときには、ACSプロセスでは、2種類のパスに対するパスメトリックを計算し、その値が小さい方のパスをこのステートに至るパスとして選択する。ここで、選択されたパスを生き残りパスと称する。この生き残りパスを示す情報は、生き残りパスメモリ214に格納される。また、生き残りパスのパスメトリックを示す情報がパスメトリックメモリ213に格納される。
【0032】
ACSプロセスでは、パスメトリックの計算とパスの選択を、トレリス線図の各時点における全てのステートに対して実施する。
【0033】
ACS回路212において実行されているACSプロセスが、トレリス線図の所定の時点まで実行されると、MAXパスメトリック判定器215は、その時点におけるステートの中から、最も小さいパスメトリックを有するステートを1つ選択するという選択プロセスを実行する。この選択プロセスによって得られたステートを示す情報がトレースバック回路216に供給される。
【0034】
MAXパスメトリック判定器215から、ステートを示す情報を受け取ったトレースバック回路216は、このステートに至るパスを示す情報を、生き残りパスメモリ214から読み出す。
【0035】
ここで、この情報が示すパスに従って、このパスを構成するブランチに付記されている推定符号語を羅列した推定符号語列は、トレリス線図において、0時点目から上記の所定の時点までの間に示されている全てのパスに対して同様に作成される推定符号語列の中で、ビタビ復号器210に伝送されて来た符号化信号に最も近いデータ構造を有する推定符号語列である。ここで、この推定符号語列に対応するパスを最尤のパスと称する。
【0036】
トレースバック回路216は、この最尤のパスに基づいて、畳み込み符号器110に入力された情報信号系列を推定するプロセスを実行し、推定された結果を復号信号系列として出力する。推定は1時点目の直前に入力された情報信号a1から時点順に、MAXパスメトリック判定器215によってステートの選択が行なわれた所定の時点まで行なわれる。この推定プロセスをトレースバックと呼び、1回のトレースバックによって得られる復号信号系列のデータビット長をトレースバック長と称する。
【0037】
また、ビタビ復号器210の各部の動作は制御回路217によって制御されている。
【0038】
ここで、本来のビタビアルゴリズムによる復号化では、ACSプロセスにおけるパスメトリックの計算とパスの選択をトレリス線図(図3参照)の最後の時点まで繰り返すことにより、0時点目のステート00から最終時点のステート00に至る最尤のパスを1本決定する。しかしながら、この本来のビタビアルゴリズムによる復号化をデジタル回路で実現しようとすると、復号化中に得られるパスメトリックや生き残りパスの情報などを格納しておくパスメトリックメモリ213や生き残りパスメモリ214として大規模なメモリ回路が必要となってしまう。そこで、図4に示されているビタビ復号器210では、MAXパスメトリック判定器215によって、ACS回路212におけるACSプロセスを所定の時点で1度中断し、復号後のデータビット長よりも短いトレースバック長を単位として復号化を行なうことにより、パスメトリックメモリ213や生き残りパスメモリ214の回路規模を抑えている。
【0039】
図4に示すビタビ復号器210では、トレースバックが終了すると、ACSプロセスを再開する。ここで、再開時の初期ステートは、トレースバックの前に、MAXパスメトリック判定器215で実行された選択プロセスによって得られたステートである。このようにして、ビタビ復号器210はトレースバック長単位の復号化を繰り返し、全ての情報信号系列の復号化を行なう。
【0040】
以上に説明したように、図4に示されているビタビ復号器210では、MAXパスメトリック判定器215で実行された選択プロセスによって、所定の時点における複数のステートの中から、最も小さいパスメトリックを有するステートを1つ選択し、このステートに至るパスを最尤のパスとして、この最尤のパスに基づいてトレースバックを実行している。
【0041】
しかしながら、図4に示すビタビ復号器210には、上記の所定の時点における複数のステートの中に、同じパスメトリックを有するステートや、あるいは似通ったパスメトリックを有するステートが多数存在するような場合、間違ったパスを選択し、このパスに基づいて間違った復号化を行なってしまうおそれがある。
【0042】
本発明は、上記事情に鑑み、トレリス線図の所定の時点における複数のステートの中に、同じパスメトリックを有するステートや、あるいは似通ったパスメトリックを有するステートが多数存在するような場合にも、最尤のパスに基づいた復号化を実行することができるビタビ復号器を提供することを目的とする。
【0043】
【課題を解決するための手段】
上記目的を達成する本発明のビタビ復号器は、畳み込み符号化されて伝送された符号化信号のうちの復号後のデータビット長よりも短いトレースバック長連続する信号の、トレリス線図上の複数のパスのパスメトリックを求めるパスメトリック算出部と、このパスメトリック算出部で算出されたパスメトリックに基づいて複数のパスのうちのいずれか1つのパスを選択するとともに、このパスメトリックに基づいてはいずれか1つのパスを選択することが不能な場合に、このパスメトリックから直前のブランチメトリックを除いた直前のパスメトリックに基づいていずれか1つのパスを選択するパス選択部とを備えたことを特徴とする。
【0044】
本発明のビタビ復号器は、トレリス線図上の複数のパスの中から、パスのパスメトリックから直前のブランチメトリックを除いた直前のパスメトリックに基づいていずれか1つのパスを選択するパス選択部を備えている。従って、例えば同じパスメトリックを有するパスや、あるいは似通ったパスメトリックを有するパスが多数存在し、これらのパスメトリックに基づいては、トレリス線図上の複数のパスの中から最尤のパスを1つ選択することが不能な場合にも、上記のパス選択部によって最尤のパスを選択することができる。
【0045】
ここで、本発明のビタビ復号器において、上記パス選択部は、上記直前のブランチメトリックの信頼度の高低を判定し、この信頼度が低い場合に上記直前のパスメトリックに基づいていずれか1つのパスを選択するものであることが好ましい。
【0046】
このようなビタビ復号器では、上記直前のブランチメトリックの信頼度が低い場合にのみ、直前のパスメトリックに基づいたパスの選択を実施するので、復号化処理の効率化が図られる。
【0047】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【0048】
図5は、本発明のビタビ復号器の一実施形態を示す図である。
【0049】
図5に示されているビタビ復号器220は、ブランチメトリック計算プロセスを実行するブランチメトリック計算器221、ACSプロセスを実行するACS回路222、パスメトリックを示す情報を格納するパスメトリックメモリ223、生き残りパスを示す情報を格納する生き残りパスメモリ224、トレリス線図の所定の時点の複数のステートの中からいずれか1つのステートを選択する選択プロセスを実行するMAXパスメトリック信頼度判定器225、トレースバックを実行するトレースバック回路226、およびビタビ復号器220の各部の動作を制御する制御回路227で構成されている。
【0050】
ここで、図5に示されているビタビ復号器220の構成や動作は、MAXパスメトリック信頼度判定器225を除いて、図4に示すビタビ復号器210の構成や動作と同一である。そこで、ここでは図4に示されたビタビ復号器210との同一点については説明を省略し、相違点であるMAXパスメトリック信頼度判定器225について説明する。
【0051】
MAXパスメトリック信頼度判定器225は、ACS回路222におけるACSプロセスが、トレリス線図上でトレースバック長に対応した所定の時点まで終了したとき、その時点における複数のステートの中から、以下の手順を経ていずれか1つのステートを選択する選択プロセスを実行する。
【0052】
まず、複数のステートの中で、最小のパスメトリックを有するステートを選択する。
【0053】
次に、この最小のパスメトリックに所定の数値を加算した上限値を計算する。さらに、複数のステートの中から、上記の最小のパスメトリックから上記の上限値までの範囲に入るパスメトリックを有するステートを選択する。
【0054】
選択されたステートが1つである場合には、このステートを示す情報をトレースバック回路226に出力する。
【0055】
選択されたステートが複数である場合には、これらのステートにつながるブランチのブランチメトリックを、ブランチメトリック計算器221から読み出し、これらのブランチメトリックの信頼度を判定する。判定の結果、この信頼度が高いと判定された場合には、選択された複数のステートの中で、最小のパスメトリックを有するステートを選択する。また、この最小のパスメトリックを有するステートが複数存在している場合には、これらの同じパスメトリックを有する複数のステートの中から、所定の規則によって1つのステートを選択し、このステートを示す情報をトレースバック回路226に供給する。
【0056】
ブランチメトリックの信頼度の判定の結果、信頼度が低いと判定された場合には、まず、選択された複数のステートそれぞれに対して、これらのステートのパスメトリックから直前のブランチメトリックを除いた1時点前のパスメトリックを、パスメトリックメモリ223から読み出す。次に、選択された複数のステートの中から、1時点前のパスメトリックが最小となるステートを1つ選択する。選択された1つのステートを示す情報がトレースバック回路226に出力される。
【0057】
このように、MAXパスメトリック信頼度判定器225は、トレリス線図の所定の時点における複数のステートの中に、同じパスメトリックを有するステートや、あるいは似通ったパスメトリックを有するステートが多数存在するような場合にも、1つのステートを選択することができる。
【0058】
本実施形態のビタビ復号器220は、このようにして選択されたステートにつながる最尤のパスに基づいてトレースバックを行ない、復号信号系列を出力するものであるため、復号利得の向上が可能となる。
【0059】
【発明の効果】
以上説明したように、本発明のビタビ復号器によれば、トレリス線図の所定の時点における複数のステートの中に、同じパスメトリックを有するステートや、あるいは似通ったパスメトリックを有するステートが多数存在するような場合にも、最尤のパスに基づいた復号化を実施することができる。従って、復号利得の向上が可能となる。
【図面の簡単な説明】
【図1】畳み込み符号器とビタビ復号器の関係を模式的に示す図である。
【図2】畳み込み符号器の1例を示すブロック図である。
【図3】畳み込み符号器に対応するトレリス線図である。
【図4】従来のビタビ復号器を示すブロック図である。
【図5】本発明のビタビ復号器の一実施形態を示す図である。
【符号の説明】
100,110 畳み込み符号器
111,112 シフトレジスタ
113,114,115,116,117 演算器
200,210,220 ビタビ符号器
211,221 ブランチメトリック計算器
212,222 ACS回路
213,223 パスメトリックメモリ
214,224 生き残りパスメモリ
215 MAXパスメトリック判定器
216,226 トレースバック回路
217,227 制御回路
225 MAXパスメトリック信頼度判定器[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a Viterbi decoder for decoding a coded signal transmitted by convolutional coding in units of a traceback length shorter than the data bit length of a decoded word.
[0002]
[Prior art]
When transmitting information represented by a digital signal, it is expected that accurate information will not be transmitted due to the influence of noise or the like during transmission. Conventionally, in order to transmit information accurately even if it is affected by noise during transmission, the digital signal representing the information is converted into a code word using various algorithms to provide redundancy. It has been practiced to generate an encoded signal and transmit the encoded signal. Also, by decoding the transmitted coded signal on the receiving side, accurate information can be obtained even if a part of the coded signal has been changed due to the influence of noise or the like.
[0003]
As an example of an encoder that generates a codeword on the transmission side, there is a convolutional encoder, and as a decoder for decoding an encoded signal transmitted by being convolutionally encoded by the convolutional encoder on the reception side, Conventionally, a Viterbi decoder has been used.
[0004]
FIG. 1 is a diagram schematically illustrating the relationship between a convolutional encoder and a Viterbi decoder.
[0005]
An information signal sequence a 1 a 2 a 3 ... In which information to be transmitted is represented by a series of 1-bit information signals is input to the
[0006]
The information signal sequence a 1 a 2 a 3 ... Inputted to the
[0007]
Here, when decoding the encoded signal, a decoding process called a Viterbi algorithm using a trellis diagram (described later with reference to FIG. 3) corresponding to the
[0008]
In the above trellis diagram, all the encoded signals that the
[0009]
As described above, the encoded signal received by the Viterbi
[0010]
Here, before describing the Viterbi decoder, a convolutional encoder will be described first.
[0011]
FIG. 2 is a block diagram illustrating an example of the convolutional encoder.
[0012]
The
[0013]
In Figure 2, already the first information signal a 1 and the second information signal a 2 to the
[0014]
The state of the
[0015]
As described above, in the
[0016]
Next, a trellis diagram will be described.
[0017]
FIG. 3 is a trellis diagram in the convolutional encoder shown in FIG.
[0018]
The trellis diagram shown in FIG. 3 shows all codewords generated by convolutional encoder 110 (see FIG. 2) based on an information signal sequence having a data bit length of 7 bits and state transitions at that time. The state of the
[0019]
In the example of FIG. 3, the data bit length of the information signal sequence input to
[0020]
In the trellis diagram shown in FIG. 3, the state at each time point is represented by a black circle, and the transition from the state at a certain time point to the state at the next time point is represented by an arrow. In the vicinity of each arrow, a code word corresponding to the state transition indicated by the arrow is added.
[0021]
Here, each arrow is referred to as a branch, and a transition from a state at a certain point in time to a state at another point one or more points away from the state at one or more points is referred to as a path. For example, a transition from
[0022]
Further, for convenience of description, in the trellis diagram, a branch heading toward a state at a certain time is referred to as a branch at that time. For example, in the trellis diagram shown in FIG. 3, a branch b 3 coming towards one
[0023]
A decoding process for decoding an encoded signal using such a trellis diagram is a Viterbi algorithm, and a Viterbi decoder realizes decoding using the Viterbi algorithm with a digital circuit.
[0024]
Here, a Viterbi decoder that performs decoding based on the Viterbi algorithm on a coded signal transmitted after being subjected to convolutional coding in units of a traceback (to be described later with reference to FIG. 4) shorter than the data bit length after decoding. Has been proposed (for example, see Patent Document 1).
[0025]
[Patent Document 1]
JP-A-11-355150 (paragraph number 0011-0071, FIG. 6, FIG. 11)
[0026]
[Problems to be solved by the invention]
FIG. 4 is a block diagram showing a Viterbi decoder disclosed in
[0027]
Here, in describing the
[0028]
The encoded signal transmitted to the
[0029]
The
[0030]
First, the path metric of the state is calculated. Here, the path metric of the state is obtained by calculating the cumulative value of the branch metric of the branch constituting the path for a path to a certain state on the trellis diagram (see FIG. 3). In the ACS process, when information indicating a branch metric of a branch connected to a certain state is supplied from the branch
[0031]
Here, for example, in the 3 point-
[0032]
In the ACS process, the calculation of the path metric and the selection of the path are performed for all the states at each point in the trellis diagram.
[0033]
When the ACS process executed in the
[0034]
The
[0035]
Here, according to the path indicated by this information, an estimated codeword string in which the estimated codewords added to the branches making up this path are listed in the trellis diagram from
[0036]
The
[0037]
The operation of each unit of the
[0038]
Here, in the decoding based on the original Viterbi algorithm, the calculation of the path metric and the selection of the path in the ACS process are repeated until the last time point of the trellis diagram (see FIG. 3), so that the
[0039]
In the
[0040]
As described above, the
[0041]
However, in the
[0042]
The present invention has been made in view of the above circumstances, even when a plurality of states having the same path metric or a plurality of states having a similar path metric exist among a plurality of states at a predetermined time in a trellis diagram, It is an object of the present invention to provide a Viterbi decoder that can execute decoding based on the maximum likelihood path.
[0043]
[Means for Solving the Problems]
The Viterbi decoder of the present invention, which achieves the above object, comprises a plurality of convolutionally-encoded coded signals having a traceback length shorter than the data bit length after decoding, which is continuous on a trellis diagram. A path metric calculation unit that obtains a path metric of the path, and one of the plurality of paths is selected based on the path metric calculated by the path metric calculation unit. A path selecting unit that selects any one path based on the immediately preceding path metric obtained by removing the immediately preceding branch metric from the path metric when it is impossible to select one of the paths. Features.
[0044]
A Viterbi decoder according to the present invention is a path selection unit that selects any one path from a plurality of paths on a trellis diagram, based on the immediately preceding path metric obtained by removing the immediately preceding branch metric from the path metric of the path. It has. Therefore, for example, there are a large number of paths having the same path metric or paths having similar path metrics. Based on these path metrics, the maximum likelihood path is determined as one of the paths on the trellis diagram. Even when it is not possible to select one, the path with the highest likelihood can be selected by the above-described path selection unit.
[0045]
Here, in the Viterbi decoder according to the present invention, the path selection unit determines whether the reliability of the immediately preceding branch metric is high or low, and when the reliability is low, any one of the branch metrics based on the immediately preceding path metric. It is preferable to select a path.
[0046]
In such a Viterbi decoder, only when the reliability of the immediately preceding branch metric is low, a path is selected based on the immediately preceding path metric, so that the efficiency of the decoding process is improved.
[0047]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described.
[0048]
FIG. 5 is a diagram showing one embodiment of the Viterbi decoder of the present invention.
[0049]
The
[0050]
Here, the configuration and operation of the
[0051]
When the ACS process in the
[0052]
First, a state having a minimum path metric is selected from a plurality of states.
[0053]
Next, an upper limit value is calculated by adding a predetermined numerical value to the minimum path metric. Further, a state having a path metric falling within the range from the minimum path metric to the above upper limit is selected from a plurality of states.
[0054]
If the number of selected states is one, information indicating this state is output to the
[0055]
If there are a plurality of selected states, the branch metrics of the branches connected to these states are read from the branch
[0056]
When the reliability of the branch metric is determined to be low as a result, first, for each of the selected states, 1 is obtained by removing the immediately preceding branch metric from the path metrics of these states. The path metric before the time point is read from the path
[0057]
As described above, the MAX path
[0058]
Since the
[0059]
【The invention's effect】
As described above, according to the Viterbi decoder of the present invention, among a plurality of states at a predetermined time in a trellis diagram, there are many states having the same path metric or a number of states having similar path metrics. In such a case, decoding based on the maximum likelihood path can be performed. Therefore, the decoding gain can be improved.
[Brief description of the drawings]
FIG. 1 is a diagram schematically illustrating a relationship between a convolutional encoder and a Viterbi decoder.
FIG. 2 is a block diagram illustrating an example of a convolutional encoder.
FIG. 3 is a trellis diagram corresponding to a convolutional encoder.
FIG. 4 is a block diagram showing a conventional Viterbi decoder.
FIG. 5 is a diagram showing one embodiment of a Viterbi decoder of the present invention.
[Explanation of symbols]
100, 110
Claims (2)
前記符号化信号のうちの前記トレースバック長連続する信号の、トレリス線図上の複数のパスのパスメトリックを求めるパスメトリック算出部と、
前記パスメトリック算出部で算出されたパスメトリックに基づいて前記複数のパスのうちのいずれか1つのパスを選択するとともに、該パスメトリックに基づいてはいずれか1つのパスを選択することが不能な場合に、該パスメトリックから直前のブランチメトリックを除いた直前のパスメトリックに基づいていずれか1つのパスを選択するパス選択部とを備えたことを特徴とするビタビ復号器。In a Viterbi decoder that decodes a coded signal transmitted by convolutional coding in units of a traceback length shorter than the data bit length after decoding,
A path metric calculation unit that obtains path metrics of a plurality of paths on a trellis diagram of the signal having the traceback length continuous among the encoded signals,
It is not possible to select any one of the plurality of paths based on the path metric calculated by the path metric calculation unit and to select any one of the paths based on the path metric. A path selection unit that selects any one path based on the immediately preceding path metric obtained by removing the immediately preceding branch metric from the path metric.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002358503A JP2004193892A (en) | 2002-12-10 | 2002-12-10 | Viterbi decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002358503A JP2004193892A (en) | 2002-12-10 | 2002-12-10 | Viterbi decoder |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004193892A true JP2004193892A (en) | 2004-07-08 |
Family
ID=32758206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002358503A Withdrawn JP2004193892A (en) | 2002-12-10 | 2002-12-10 | Viterbi decoder |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004193892A (en) |
-
2002
- 2002-12-10 JP JP2002358503A patent/JP2004193892A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100580160B1 (en) | Two-step soft output viterbi algorithm decoder using modified trace-back | |
US7765459B2 (en) | Viterbi decoder and viterbi decoding method | |
US6738941B1 (en) | Data error correction system | |
US5802116A (en) | Soft decision Viterbi decoding with large constraint lengths | |
KR100853139B1 (en) | Transport format detecting apparatus and method | |
KR100737648B1 (en) | Viterbi decoder and viterbi decoding method | |
US6697442B1 (en) | Viterbi decoding apparatus capable of shortening a decoding process time duration | |
US8489972B2 (en) | Decoding method and decoding device | |
US20070201586A1 (en) | Multi-rate viterbi decoder | |
JP3823731B2 (en) | Error correction decoder | |
US7225393B2 (en) | Viterbi decoder and Viterbi decoding method | |
US7062000B1 (en) | Viterbi decoder | |
JP2004193892A (en) | Viterbi decoder | |
JP5370487B2 (en) | Decoding method and decoding apparatus | |
KR0180303B1 (en) | Standardization method and apparatus of viterbi decoder | |
JP3272173B2 (en) | Error correction code / decoding device | |
JP3236979B2 (en) | Viterbi decoding device | |
JP4295871B2 (en) | Error correction decoder | |
KR100564757B1 (en) | Low power Viterbi decoder and trace-back method | |
JP3351414B2 (en) | Viterbi decoding device | |
JP3720251B2 (en) | Viterbi decoder | |
KR100333336B1 (en) | Traceback method of viterbi decoder | |
JPH0730438A (en) | Viterbi decoding method | |
US20040153958A1 (en) | Path metric calculation circuit in viterbi decoders | |
KR20070035912A (en) | Apparatus and method for viterbi decoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060307 |