JP5338506B2 - 復号装置及び信号処理システム - Google Patents

復号装置及び信号処理システム Download PDF

Info

Publication number
JP5338506B2
JP5338506B2 JP2009143561A JP2009143561A JP5338506B2 JP 5338506 B2 JP5338506 B2 JP 5338506B2 JP 2009143561 A JP2009143561 A JP 2009143561A JP 2009143561 A JP2009143561 A JP 2009143561A JP 5338506 B2 JP5338506 B2 JP 5338506B2
Authority
JP
Japan
Prior art keywords
unit
traceback
processing unit
current state
decoding
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.)
Expired - Fee Related
Application number
JP2009143561A
Other languages
English (en)
Other versions
JP2011003997A (ja
Inventor
勝洋 依田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009143561A priority Critical patent/JP5338506B2/ja
Publication of JP2011003997A publication Critical patent/JP2011003997A/ja
Application granted granted Critical
Publication of JP5338506B2 publication Critical patent/JP5338506B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、復号装置及び信号処理システムに関し、テールバイティングコードの復号技術に関する。
テールバイティングコード(tail biting code)は、誤り訂正方式の畳み込み符号において、テール部分(終端ビット)をなくし、通信路をより有効に利用する方式である。しかし、復号側では、畳み込み符号におけるテール部分がないために終了ステートを予め認識することができず、開始ステートと終了ステートとが一致することを利用して解析し復号結果を得るという複雑さがある。
畳み込み符号の復号法として、例えばビタビ復号が知られている。ビタビ復号によりテールバイティングコードの復号を行う場合の初歩的な手法としては、トレースバックを何度も行い、開始ステートと終了ステートが一致した場合を結果とする方法がある。しかし、この方法は、トレースバックの回数の多さによる処理遅延が発生してしまう。
また、処理方法の改善を図るために、開始ステートと終了ステートとが一致することを利用した次のような方法がある。例えば、2周以上ビタビ演算を繰り返すとともに、2周目以降で前回のビタビ演算の結果との比較を行い、すべて一致したらトレースバックを行う方法がある(例えば、特許文献1参照。)。また、例えば、2周分程度ビタビ演算を行った後、トレースバックを一つずつずらしながら繰り返し行い、一致している箇所を残すことで結果を得る方法がある(例えば、特許文献2参照。)。また、例えば、パスメトリック値(その状態らしさ、尤度)の高いステートからトレースバックを行いデータ長だけ進んで一致すれば終了し一致しなければひとつ前からトレースバックしてという動作を一致するまで行う方法(例えば、特許文献3参照。)や、MAP(maximum a posteriori probability:最大事後確率)法を用いた方法(例えば、特許文献4参照。)がある。
特開平7−30439号公報 特表2001−506811号公報 特表2002−517120号公報 特開2008−136006号公報
しかし、前述したテールバイティングコードの復号においては、トレースバック、あるいはACS(Add-Compare-Select)演算やMAP演算の回数が多く、処理遅延が大きくなる。特許文献1に記載の方法では、1回のトレースバックで結果が得られるが、トレースバックを開始するまでのビタビ演算結果の一致比較に係る処理量が大きく、例えば拘束長を9、データ長を500とすると、128,000(=28×500)ビットの比較を毎回行うこととなる。
本発明の一観点によれば、畳み込み符号化されたデータに基づいてトレリス線図における生き残りパスを演算する演算処理部と、演算結果をトレースバックして復号結果を出力するトレースバック部とを備える復号装置が提供される。トレースバック部は、演算結果を基にトレリス線図における状態を取得するトレースバック処理部と、トレースバック処理部により得られる現在の状態とデータ長分前の状態とを比較する比較部とを有し、現在の状態とデータ長分前の状態との比較を、1データ分の演算結果毎に現在の状態を逐次更新して行い、一致した場合にトレースバックを終了する。
開示の復号装置は、トレースバックを複数回行うことなく、1回のトレースバックで復号結果を得ることができ、処理遅延を低減することができる。また、1データ分の演算結果毎に現在の状態を逐次更新して現在の状態とデータ長分前の状態とが一致するか否かを比較するので、比較に係る処理量が増大することなく、容易に復号処理を行うことができる。
本発明の実施形態における復号装置の構成例を示す図である。 第1の実施形態におけるトレースバック部の構成例を示す図である。 トレースバック処理部の構成例を示す図である。 トレースバック処理におけるパスメモリの値、ステート、及び復号結果の関係の一例を示す図である。 第2の実施形態におけるトレースバック部の構成例を示す図である。 第3の実施形態におけるトレースバック部の構成例を示す図である。 第3の実施形態における動作を説明するための図である。 本実施形態における信号処理システムの構成例を示す図である。
以下、本発明の実施形態を図面に基づいて説明する。
(第1の実施形態)
本発明の第1の実施形態について説明する。
図1は、第1の実施形態における復号装置の構成例を示すブロック図である。図1には、本実施形態における復号装置の一例として、ビタビアルゴリズムを用いてテールバイティングコード(テールバイティング畳み込み符号)の復号を行う復号装置(ビタビ復号器)を示している。
第1の実施形態における復号装置は、入力メモリ1、ブランチメトリック演算部2、ACS(Add-Compare-Select)演算部3、パスメトリックメモリ4、パスメモリ5、トレースバック部6、及び結果メモリ7を有する。
入力メモリ1には、復号処理の対象である畳み込み符号化されたデータが入力され記憶される。ブランチメトリック演算部2は、入力メモリ1からの入力データに基づいて、トレリス線図におけるブランチメトリック(例えば、符号のハミング距離)を計算する。
ACS演算部3は、トレリス線図における各状態についてACS演算を行う。すなわち、ACS演算部3は、まず、状態へのすべてのパスについて、ブランチメトリック演算部2により算出されたブランチメトリックとパスメトリックメモリ4に格納された前回演算での生き残りパスのパスメトリックとを加算する(Add)。次に、ACS演算部3は、加算後のパスメトリックを比較して(Compare)、パスメトリックが小さい方(最小)のパスを生き残りパスとして選択する(Select)。ACS演算部3は、トレリス線図における状態毎に前述の演算を行う。ACS演算部3での演算により選択された生き残りパスとそのパスメトリックが、パスメモリ5とパスメトリックメモリ4にそれぞれ格納される。
トレースバック部6は、前述したブランチメトリック演算部2及びACS演算部3等によるビタビ演算が所定の回数行われたら、ビタビ演算の結果をトレースバックし結果メモリ7に結果を出力する。トレースバック部6は、トレースバックをデータ長分前のステートと比較しながら進め、現在の状態と一致したらその結果を正しいと判定してトレースバックを終了する。
以下、トレースバック部6について説明する。
図2は、第1の実施形態におけるトレースバック部6の構成例を示すブロック図である。トレースバック部6は、制御用カウンタ11、トレースバック処理部12、現在ステート格納部13、レジスタ群14、セレクタ15、選択信号生成部16、及び比較部17を有する。
制御用カウンタ11は、信号INS及び信号DTLが入力され、これらの信号に応じてカウント動作を行い、カウンタ値CNTを出力する。制御用カウンタ11は、信号INSにより動作開始が指示されるとカウント動作を開始し、信号DTLにより設定されるデータ長Nの2倍の値(2N)から順次カウントダウンしてカウンタ値CNTを出力する。制御用カウンタ11から出力されたカウンタ値CNTは、読み出しアドレスとしてパスメモリ5に供給される。なお、比較部17での比較の結果、ステートが一致した場合には、制御用カウンタ11はカウント動作を終了する。
トレースバック処理部12は、パスメモリ5から供給されるデータIDTに基づいて、現在ステート格納部13に格納されているステート(状態)を更新するとともに、結果メモリ7に結果を出力する。
図3は、トレースバック処理部12の構成例を示すブロック図である。トレースバック処理部12は、セレクタ20及びデータ処理部21を有する。トレースバック処理部12には、カウンタ値CNTを読み出しアドレスとしてパスメモリ5から読み出した2(K-1)ビット(Kは拘束長、以下においても同様)のデータIDTが入力される。図3において、信号PST及び信号USTは(K−1)ビットの信号であり、信号SBT及び信号RBTは1ビットの信号である。
セレクタ20は、現在ステート格納部13からの信号PSTが示す現在のステートを用いて、データIDTから1ビットを選択して信号SBTとして出力する。
データ処理部21は、現在ステート格納部13からの信号PSTが示す現在のステートにおける最下位ビット(LSB:Least Significant Bit)を結果信号RBTとして結果メモリ7に出力する。また、データ処理部21は、信号PSTが示す現在のステートを右(下位側)に1ビットだけシフトし、最上位ビット(MSB:Most Significant Bit)に、セレクタ20からの信号SBTが示す選択されたビットを入れて信号USTとして現在ステート格納部13に出力する。
現在ステート格納部13は、データ処理部21からの信号USTを受けると、現在のステートを信号USTが示すステートに更新する。また、現在ステート格納部13は、格納している現在のステートを信号PSTにより出力する。
以上説明したトレースバック処理部12での処理におけるパスメモリの値、ステート、及び復号結果の関係の一例を図4に示す。図4においては、拘束長が7、すなわちステートの数(状態数)が64の場合を一例として示している。また、図4において、読み出したパスメモリの値は、セレクタ20から出力される信号SBTが示す値であって、生き残りパスに係る情報である。図4に示すように、ステートは、下位側に1ビットずつシフトされるとともに、パスメモリの値がMSBに挿入されるようにして更新される。また、ステートにおけるLSBが復号結果として出力される。
図2に戻り、レジスタ群14は、複数のレジスタを有し、現在ステート格納部13からの信号PSTが示す現在のステートを過去の履歴として保持する。レジスタ群14は、少なくともデータ長N個のレジスタを有し、レジスタの各々は(K−1)ビットの情報を保持する。
選択信号生成部16は、制御用カウンタ11から出力されたカウンタ値CNTが供給され、そのカウンタ値CNTにデータ長Nを加算して選択信号として出力する。セレクタ15は、レジスタ群14が有する複数のレジスタの中から、選択信号生成部16より出力される選択信号に基づいて値(CNT+N)に対応するレジスタを選択し、そのレジスタの値を出力する。つまり、セレクタ15及び選択信号生成部16は、レジスタ群14が有する複数のレジスタの中から、データ長分前のステートが保持されているレジスタを選択し、そのレジスタの値を比較部17に出力する。
比較部17は、現在ステート格納部13に格納されている現在のステートと、セレクタ15より出力される現在よりもデータ長分前のステートとを比較する。
次に、トレースバック部6の動作について説明する。
ブランチメトリック演算部2及びACS演算部3等により2周分程度のビタビ演算が行われた後、信号INSにより動作開始が指示されるとトレースバックが開始され、制御用カウンタ11は、値2Nから順次カウントダウンしカウンタ値CNTを出力する。制御用カウンタ11から出力されたカウンタ値CNTは、パスメモリ5に読み出しアドレスとして供給される。これにより、パスメモリ5からアドレス2N、2N−1、2N−2、・・・に記憶されている2(K-1)ビットのデータIDTが順次読み出され、トレースバック処理部12に入力される。トレースバック処理部12は、入力されるデータIDTに基づいて、現在のステートを更新するとともに、結果メモリ7に結果を出力する。また、現在のステートはレジスタ群14に逐次供給され、過去の履歴としてレジスタ群14のレジスタに保持される。
そして、データ長分進んでカウンタ値CNTがN以下となると、現在ステート格納部13に格納されている現在のステートと、セレクタ15及び選択信号生成部16の動作によって選択出力される現在よりもデータ長分前のステートとの比較が比較部17で行われる。その比較の結果、現在のステートとデータ長分前のステートとが一致した場合にはトレースバックを終了する。
一方、一致しない場合には、カウンタ値CNTに応じて読み出されるデータIDTに基づいて、ステートの更新、復号結果の出力、及び過去の履歴としてのレジスタ群14への現在のステートの保持を行い、前述した比較部17による比較動作を繰り返す。すなわち、現在のステートとデータ長分前のステートとが一致しない場合には、1データ分だけ、ステートの更新、復号結果の出力、及びレジスタ群14への現在のステートの保持を行い、比較を繰り返す。
第1の実施形態によれば、パスメモリ5から入力されるデータIDTに基づいて得られた現在のステートと、現在よりもデータ長分前のステートとを比較し、一致した場合にはその結果を正しいと判定してトレースバックを終了する。また、現在のステートとデータ長分前のステートとが一致しない場合には、1データ分だけ、ステートの更新や復号結果の出力等を行って比較を繰り返す。これにより、トレースバックを複数繰り返して行わなくとも、1回のトレースバックだけで復号結果を得ることができ、処理遅延を低減することができる。また、ステートを示すビット、すなわち拘束長より1ビット少ないビットについて一致するか否かを比較すれば良いので、比較に係る処理量が少なく、容易かつわずかな処理量で復号処理を実現することができる。
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
前述した第1の実施形態では、現在ステート格納部13からの(K−1)ビットの信号PSTが示す現在のステートを、レジスタ群14のレジスタに過去の履歴として保持している。すなわち、第1の実施形態においては、過去の履歴としてステートそのものを保持するので、拘束長K、データ長Nの場合には、レジスタ群14は少なくとも(K−1)×Nビット分の記憶素子が必要となる。例えば、拘束長を7、データ長を500とすると、3000ビット分も記憶素子が必要となる。
ここで、図4に示したように時間的に隣り合うステートは、1ビットシフトした値に対して、読み出したパスメモリの値を付加した値となっている。つまり、時間的に隣り合うステートにおいて付加される値(パスメモリの値)以外は変化がなく、過去の履歴としてステートそのものを保持すると情報を重複して保持することとなる。
そこで、第2の実施形態では、ステートそのものではなく、読み出したパスメモリの値(トレースバック処理部12内のセレクタ20により選択された1ビットの生き残りパスに係る情報)だけを保持し、それらを連結することでデータ長分前のステートに相当する情報を得る。これにより、過去の履歴としての情報を保持するのに必要な記憶容量を低減することができる。第2の実施形態によれば、拘束長Kにはかかわらず、データ長Nの場合にはNビット分の記憶素子を有すればよい。例えば、拘束長を7、データ長を500とすると、500ビット分の記憶素子で良く、第1の実施形態の場合と比較して2500ビット分の記憶素子を削減することができる。
第2の実施形態における復号装置の全体構成は、第1の実施形態における復号装置と同様であるので、その説明は省略し、以下では第2の実施形態におけるトレースバック部について説明する。図5は、第2の実施形態におけるトレースバック部6の構成例を示すブロック図である。なお、この図5において、図2に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
図5において、14Aは、トレースバック処理部12からの1ビットの信号SBTが入力され、その値を保持するシフトレジスタである。信号SBTは、現在ステート格納部13からの信号PSTが示す現在のステートを用いて、トレースバック処理部12内のセレクタ20がデータIDTから選択した1ビットを示す信号である。
16Aは、信号DTLにより設定されるデータ長Nに応じて選択信号を生成する選択信号生成部である。選択信号生成部16Aは、信号DTLによりデータ長Nが設定されると、シフトレジスタ14AのN番目から(N+K−1)番目の記憶素子を選択するようセレクタ15に選択信号を出力する。これにより、シフトレジスタ14AのN番目から(N+K−1)番目の記憶素子に保持されている値が、現在よりもデータ長分前のステートとしてセレクタ15より比較部17に出力される。
次に、第2の実施形態におけるトレースバック部6の動作について説明する。
ブランチメトリック演算部2及びACS演算部3等により2周分程度のビタビ演算が行われた後、信号INSにより動作開始が指示されるとトレースバックが開始される。なお、パスメモリ5から入力されるデータIDTに基づく、トレースバック部6によるステートの更新及び復号結果の出力に係る動作は第1の実施形態と同様である。第2の実施形態では、パスメモリ5より入力されるデータIDTから現在のステートを用いて選択された1ビットの値(パスメモリの値)を、過去の履歴を構成する情報としてシフトレジスタ14Aに逐次保持する。
そして、データ長分進んでカウンタ値CNTがN以下となると、現在ステート格納部13に格納されている現在のステートと、現在よりもデータ長分前のステートとの比較が比較部17で行われる。ここで、現在よりもデータ長分前のステートは、セレクタ15を介して出力される、シフトレジスタ14AのN番目から(N+K−1)番目の記憶素子に保持されている値を連結したものである。比較部17での比較の結果、現在のステートとデータ長分前のステートとが一致した場合にはトレースバックを終了する。
一方、一致しない場合には、カウンタ値CNTに応じて読み出されるデータIDTに基づいて、現在のステートの更新、復号結果の出力、及びシフトレジスタ14Aへの選択されたパスメモリの値の保持を行い、前述した比較部17による比較動作を繰り返す。すなわち、現在のステートとデータ長分前のステートとが一致しない場合には、1データ分だけ、現在のステートの更新、復号結果の出力、及び選択されたパスメモリの値の保持を行い、比較を繰り返す。
第2の実施形態によれば、第1の実施形態と同様の効果が得られるとともに、過去のステートの情報を保持するのに必要な記憶容量を低減することができる。
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。
第3の実施形態は、トレースバック処理に係る構成を並列化して、現在及び現在よりもデータ長分前の処理を並行して行い比較することで、過去の履歴を保持する必要をなくしたものである。
第3の実施形態における復号装置の全体構成は、第1の実施形態における復号装置と同様であるので、その説明は省略し、以下では第3の実施形態におけるトレースバック部について説明する。図6は、第3の実施形態におけるトレースバック部6の構成例を示すブロック図である。
第3の実施形態におけるトレースバック部6は、制御用カウンタ31、セレクタ32、トレースバック処理部A33、現在ステート格納部A34、トレースバック処理部B35、現在ステート格納部B36、及び比較部37を有する。なお、第3の実施形態においては、パスメモリとしてパスメモリA5A及びパスメモリB5Bを有する。以下の説明では、ブランチメトリック演算部2及びACS演算部3等による1周目のビタビ演算の結果がパスメモリA5Aに格納され、2周目のビタビ演算の結果がパスメモリB5Bに格納されているものとする。
制御用カウンタ31は、信号INS及び信号DTLが入力され、これらの信号に応じてカウント動作を行い、カウンタ値CNTを出力する。制御用カウンタ31は、信号INSにより動作開始が指示されるとカウント動作を開始する。制御用カウンタ31は、信号DTLにより設定されるデータ長がNの場合には、最上位ビットの値を1にして(N−1)から順次カウントダウンし、最上位ビットを除く値が0になると、最上位ビットの値を0にして再び(N−1)から順次カウントダウンする。なお、比較部17での比較の結果、現在ステート格納部A34及び現在ステート格納部B36に格納されているステートが一致した場合には、制御用カウンタ31はカウント動作を終了する。
制御用カウンタ31から出力されたカウンタ値CNTは、その最上位ビットCNTMSBを除き、読み出しアドレスとしてパスメモリA5A及びパスメモリB5Bに供給されるとともに、書き込みアドレスとして結果メモリ7に供給される。また、制御用カウンタ31から出力されたカウンタ値CNTの最上位ビットCNTMSBは、セレクタ32、トレースバック処理部B35、及び比較部37に供給される。
セレクタ32は、カウンタ値の最上位ビットCNTMSBに応じて、データIDTA又はデータIDTBを選択しトレースバック処理部A33に出力する。セレクタ32は、カウンタ値の最上位ビットCNTMSBの値が1の場合には、パスメモリB5Bから読み出される2(K-1)ビットのデータIDTBを選択して出力する。一方、セレクタ32は、カウンタ値の最上位ビットCNTMSBの値が0の場合には、パスメモリA5Aから読み出される2(K-1)ビットのデータIDTAを選択して出力する。
トレースバック処理部A33は、前述した実施形態におけるトレースバック処理部12と同様に構成される。トレースバック処理部A33は、セレクタ32からの出力及び現在ステート格納部A34からの信号PSTAに基づいて、現在ステート格納部A34に格納されているステート(状態)を更新するとともに、結果メモリ7に結果RBTAを出力する。信号PSTA、USTA、RBTAは、それぞれ図3に示した信号PST、UST、RBTに相当する。
現在ステート格納部A34は、トレースバック処理部A33からの信号USTAを受けると、現在のステートを信号USTAが示すステートに更新する。また、現在ステート格納部A34は、格納している現在のステートを信号PSTAにより出力する。
トレースバック処理部B35は、結果を示す信号を出力しない点が異なるだけで、前述した実施形態におけるトレースバック処理部12と同様に構成される。トレースバック処理部B35は、パスメモリB5Bから供給されるデータIDTB及び現在ステート格納部B36からの信号PSTBに基づいて、現在ステート格納部B36に格納されているステート(状態)を更新する。信号PSTB、USTBは、それぞれ図3に示した信号PST、USTに相当する。なお、トレースバック処理部B35は、カウンタ値の最上位ビットCNTMSBの値が1の場合には動作しない。
現在ステート格納部B36は、トレースバック処理部B35からの信号USTBを受けると、現在のステートを信号USTBが示すステートに更新する。また、現在ステート格納部B36は、格納している現在のステートを信号PSTBにより出力する。
比較部37は、現在ステート格納部A34に格納されている現在のステートと、現在ステート格納部B36に格納されている現在のステートとを比較して比較結果を出力する。なお、比較部37は、カウンタ値の最上位ビットCNTMSBの値が1の場合には動作しない。
次に、第3の実施形態におけるトレースバック部6の動作について、図7を適宜参照して説明する。
1周目のビタビ演算の結果をパスメモリA5Aに格納し、2周目のビタビ演算の結果をパスメモリB5Bに格納するようにして、ブランチメトリック演算部2及びACS演算部3等により2周分のビタビ演算が行われる。その後、信号INSにより動作開始が指示されるとトレースバック部6の動作が開始される。
図7に示すように、制御用カウンタ31は、最上位ビットの値を1にして(N−1)からカウントダウンしカウンタ値CNTを出力する。これにより、パスメモリA5A及びパスメモリB5BからアドレスN−1、N−2、N−3、・・・に記憶されている2(K-1)ビットのデータIDTA及びデータIDTBが順次読み出される。また、セレクタ32は、制御用カウンタ31から出力されたカウンタ値の最上位ビットCNTMSBの値が1であるので、パスメモリB5Bから読み出されるデータIDTBを選択し出力する。したがって、図7に示すように制御用カウンタ31から出力されたカウンタ値の最上位ビットCNTMSBの値が1である場合には、パスメモリB5Bから読み出されるデータIDTBが、トレースバック処理部A33及びトレースバック処理部B35に入力される。
トレースバック処理部A33は、入力されるデータIDTBに基づいて、現在のステートを更新するとともに、結果メモリ7に結果を出力する。トレースバック処理部A33より出力された結果は、制御用カウンタ31から出力された最上位ビットを除くカウンタ値CNTを書き込みアドレスとして結果メモリ7に書き込まれる。なお、制御用カウンタ31から出力されたカウンタ値の最上位ビットCNTMSBの値が1であるので、トレースバック処理部B35及び比較部37は動作しない。
そして、最上位ビットを除く値が0になると、すなわちデータ長分進むと、図7に示すように、制御用カウンタ31は、最上位ビットの値を0にして(N−1)からカウントダウンしカウンタ値CNTを出力する。これにより、パスメモリA5A及びパスメモリB5Bからはカウンタ値CNTに応じてデータIDTA及びデータIDTBが順次読み出される。セレクタ32は、制御用カウンタ31から出力されたカウンタ値の最上位ビットCNTMSBの値が0であるので、パスメモリA5Aから読み出されるデータIDTAを選択し出力する。したがって、図7に示すように制御用カウンタ31から出力されたカウンタ値の最上位ビットCNTMSBの値が0である場合には、パスメモリA5Aから読み出されるデータIDTAがトレースバック処理部A33に入力され、パスメモリB5Bから読み出されるデータIDTBがトレースバック処理部B35に入力される。
トレースバック処理部A33は、入力されるデータIDTAに基づいて、現在のステートを更新するとともに、結果メモリ7に結果を出力する。トレースバック処理部A33より出力された結果は、制御用カウンタ31から出力された最上位ビットを除くカウンタ値CNTを書き込みアドレスとして結果メモリ7に上書きするようにして書き込まれる。また、トレースバック処理部B35は、入力されるデータIDTBに基づいて、現在のステートを更新する。
つまり、制御用カウンタ31から出力されるカウンタ値の最上位ビットCNTMSBの値が0であるときは、パスメモリA5A及びパスメモリB5Bからビタビ演算の結果であるデータIDTA及びデータIDTBが同時に読み出される。そして、トレースバック処理部A33は1周目の結果を基にトレースバック処理を行い、トレースバック処理部B35は2周目の結果を基にトレースバック処理を行う。したがって、現在ステート格納部B36には、現在ステート格納部A34に格納されているものに対して、データ長分前のステートが格納されることとなる。
比較部37は、現在ステート格納部A34に格納されている現在のステートと、現在ステート格納部B36に格納されている現在のステートとを比較する。その結果、現在ステート格納部A34及び現在ステート格納部B36にそれぞれ格納されているステートが一致した場合にはトレースバックを終了する。一方、一致しない場合には、1データ分だけ1データ分だけ現在のステートの更新、復号結果の出力を行い、比較を繰り返す。
ここで、第3の実施形態では、トレースバック処理部A33より出力された結果は、制御用カウンタ31から出力された最上位ビットを除くカウンタ値CNTを書き込みアドレスとして結果メモリ7に書き込んでいる。また、カウンタ値の最上位ビットCNTMSBの値が0であるときは、トレースバック処理部A33より出力された結果を上書きするようにして結果メモリ7に書き込む。すなわち、データ長Nで巡回するアドレスを書き込みアドレスとして最新の結果が結果メモリ7に書き込まれる。これにより、現在ステート格納部A34及び現在ステート格納部B36に格納されているステートが一致してトレースバックを終了すると、結果として保持されているデータは整列された状態となっているので、トレースバック終了時にあらためてデータを整列させる処理を行う必要がない。
第3の実施形態によれば、第1の実施形態と同様の効果が得られるとともに、過去の履歴を保持するための記憶素子を設けずに、トレースバック処理に係る構成(トレースバック処理部と現在ステート格納部)を2組設けるだけで良いので回路規模を低減することができる。
なお、前述した説明では、制御用カウンタ31から出力されるカウンタ値の最上位ビットCNTMSBの値が1の場合には、トレースバック処理部B35及び比較部37を動作させないようにしているが、比較部37だけを動作させないようにしても良い。
(その他の実施形態)
図8は、前述した第1〜第3の実施形態における復号装置を用いた信号処理システムの構成例を示すブロック図である。本実施形態における信号処理システムは、ベースバンド処理部101及び通信プロトコル制御部110を有する。
ベースバンド処理部101は、RF部102、アナログ−デジタル(AD)変換器/デジタル−アナログ(DA)変換器103、及び信号処理部104を有する。
RF部102は、アンテナ111で受信した無線周波数の信号を所定周波数の信号に変換する。また、信号処理システムが送信機能を有する場合には、RF部102は、AD変換器/DA変換器103の出力を無線周波数の信号に変換してアンテナ111より送信する。AD変換器/DA変換器103は、RF部102から供給される所定周波数の信号をアナログ形式からデジタル形式に変換する。また、信号処理システムが送信機能を有する場合には、AD変換器/DA変換器103は、信号処理部104から出力される信号をデジタル形式からアナログ形式に変換する。
信号処理部104は、データ通信における物理層の制御を行うPHY部107、及び通信規格で規定されるMAC機能を制御するMAC部106を有する。PHY部107は、復調部107及び誤り訂正部108を有し、さらに信号処理システムが送信機能を有する場合には変調部109を有する。復調部107は、受信データに係る復調処理を行う。誤り訂正部108は、前述した第1〜第3の実施形態における復号装置を内部に有し、畳み込み符号化されたデータを復号し、復号結果を出力する。変調部109は、送信データに係る変調処理を行う。
通信プロトコル制御部110は、データの受信(又は送受信)を実現するための通信プロトコルに係る制御を行う。
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
(付記1)
テールバイティング畳み込み符号を復号する復号装置であって、
畳み込み符号化されたデータに基づいて、トレリス線図における生き残りパスを演算する演算処理部と、
前記演算処理部での演算結果をトレースバックして復号結果を出力するトレースバック部とを備え、
前記トレースバック部は、
前記演算処理部での演算結果を基に、前記トレリス線図における状態を取得するトレースバック処理部と、
前記トレースバック処理部により得られる現在の状態とデータ長分前の状態とを比較する比較部とを有し、
前記現在の状態とデータ長分前の状態との比較を、1データ分の前記演算結果毎に現在の状態を逐次更新して行い、一致した場合にトレースバックを終了することを特徴とする復号装置。
(付記2)
前記トレースバック部は、
前記トレースバック処理部での処理にて得られる状態に係る情報を保持する情報保持部を有し、
前記情報保持部に保持された情報を選択し前記データ長分前の状態として前記比較部に供給することを特徴とする付記1記載の復号装置。
(付記3)
前記情報保持部は、前記演算処理部での前記演算結果から前記トレースバック処理部により得られた現在の状態に応じて前記演算結果毎に選択され供給される前記生き残りパスに係る1ビットの情報を保持するシフトレジスタであることを特徴とする付記2記載の復号装置。
(付記4)
前記トレースバック処理部は、
前記演算処理部での第1の演算結果を基に、前記トレリス線図における状態を取得する第1のトレースバック処理部と、
前記第1の演算結果に対して前記データ長分前の前記演算処理部での第2の演算結果を基に、前記トレリス線図における状態を取得する第2のトレースバック処理部とを有し、
前記比較部は、前記第1のトレースバック処理部により得られた状態と前記第2のトレースバック処理部により得られた状態とを比較することを特徴とする付記1記載の復号装置。
(付記5)
前記復号結果を前記データ長でアドレスを巡回させメモリに書き込むことを特徴とする付記4記載の復号装置。
(付記6)
前記トレースバック処理部は、現在の状態における最下位ビットを捨てるとともに、前記演算処理部での前記演算結果から前記現在の状態に応じて選択される前記生き残りパスに係る1ビットの情報を最上位ビットとして付加し、前記トレリス線図における状態を取得することを特徴とする付記1〜5の何れか1項に記載の復号装置。
(付記7)
受信データを復調する復調部と、
付記1〜6の何れか1項に記載の復号装置を有し、前記受信データを復号し復号結果を出力する誤り訂正部とを備えることを特徴とする信号処理システム。
1 入力メモリ
2 ブランチメトリック演算部
3 ACS演算部
4 パスメトリックメモリ
5 パスメモリ
6 トレースバック部
7 結果メモリ
11、31 制御用カウンタ
12、33、35 トレースバック処理部
13、34、36 現在ステート格納部
14 レジスタ群
14A シフトレジスタ
15 セレクタ
16、16A 選択信号生成部
17、37 比較部

Claims (6)

  1. テールバイティング畳み込み符号を復号する復号装置であって、
    畳み込み符号化されたデータに基づいて、トレリス線図における生き残りパスを演算する演算処理部と、
    前記演算処理部での演算結果をトレースバックして復号結果を出力するトレースバック部とを備え、
    前記トレースバック部は、
    前記演算処理部での演算結果を基に、前記トレリス線図における状態を取得するトレースバック処理部と、
    前記トレースバック処理部により得られる現在の状態とデータ長分前の状態とを比較する比較部とを有し、
    前記現在の状態とデータ長分前の状態との比較を、1データ分の前記演算結果毎に現在の状態を逐次更新して行い、一致した場合にトレースバックを終了することを特徴とする復号装置。
  2. 前記トレースバック部は、
    前記トレースバック処理部での処理にて得られる状態に係る情報を保持する情報保持部を有し、
    前記情報保持部に保持された情報を選択し前記データ長分前の状態として前記比較部に供給することを特徴とする請求項1記載の復号装置。
  3. 前記情報保持部は、前記演算処理部での前記演算結果から前記トレースバック処理部により得られた現在の状態に応じて前記演算結果毎に選択され供給される前記生き残りパスに係る1ビットの情報を保持するシフトレジスタであることを特徴とする請求項2記載の復号装置。
  4. テールバイティング畳み込み符号を復号する復号装置であって、
    畳み込み符号化されたデータに基づいて、トレリス線図における生き残りパスを演算する演算処理部と、
    前記演算処理部での演算結果をトレースバックして復号結果を出力するトレースバック部とを備え、
    前記トレースバック部は、
    前記演算処理部での演算結果と現在の状態とを用いて現在の状態を更新することで、前記トレリス線図における状態を取得するトレースバック処理部と、
    前記トレースバック処理部により得られる現在の状態とデータ長分前の状態とを比較する比較部と、
    前記トレースバック処理部での処理にて得られる状態に係る情報を保持する情報保持部とを有し、
    前記情報保持部に保持された情報を選択し前記データ長分前の状態として前記比較部に供給し、
    前記現在の状態とデータ長分前の状態との比較を、1データ分の前記演算結果毎に現在の状態を逐次更新して行い、一致した場合にトレースバックを終了することを特徴とする復号装置。
  5. テールバイティング畳み込み符号を復号する復号装置であって、
    畳み込み符号化されたデータに基づいて、トレリス線図における生き残りパスを演算する演算処理部と、
    前記演算処理部での演算結果をトレースバックして復号結果を出力するトレースバック部とを備え、
    前記トレースバック部は、
    前記演算処理部での演算結果を基に、前記トレリス線図における状態を取得するトレースバック処理部と、
    前記トレースバック処理部により得られる現在の状態とデータ長分前の状態とを比較する比較部と、
    前記トレースバック処理部での処理にて得られる状態に係る情報を保持する情報保持部とを有し、
    前記情報保持部は、前記演算処理部での前記演算結果から前記トレースバック処理部により得られた現在の状態に応じて前記演算結果毎に選択され供給される前記生き残りパスに係る1ビットの情報を保持するシフトレジスタであり、
    前記情報保持部に保持された情報を選択し前記データ長分前の状態として前記比較部に供給し、
    前記現在の状態とデータ長分前の状態との比較を、1データ分の前記演算結果毎に現在の状態を逐次更新して行い、一致した場合にトレースバックを終了することを特徴とする復号装置。
  6. 受信データを復調する復調部と、
    請求項1〜の何れか1項に記載の復号装置を有し、前記受信データを復号し復号結果を出力する誤り訂正部とを備えることを特徴とする信号処理システム。
JP2009143561A 2009-06-16 2009-06-16 復号装置及び信号処理システム Expired - Fee Related JP5338506B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009143561A JP5338506B2 (ja) 2009-06-16 2009-06-16 復号装置及び信号処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009143561A JP5338506B2 (ja) 2009-06-16 2009-06-16 復号装置及び信号処理システム

Publications (2)

Publication Number Publication Date
JP2011003997A JP2011003997A (ja) 2011-01-06
JP5338506B2 true JP5338506B2 (ja) 2013-11-13

Family

ID=43561627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009143561A Expired - Fee Related JP5338506B2 (ja) 2009-06-16 2009-06-16 復号装置及び信号処理システム

Country Status (1)

Country Link
JP (1) JP5338506B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920597A (en) * 1996-09-16 1999-07-06 Ericsson Inc. Decoding technique for tail biting codes
JP2005294898A (ja) * 2004-03-31 2005-10-20 Matsushita Electric Ind Co Ltd ビタビ復号方法、復号化装置、移動局無線装置、基地局無線装置および移動通信システム
JP5169771B2 (ja) * 2008-11-27 2013-03-27 富士通株式会社 復号器および復号方法

Also Published As

Publication number Publication date
JP2011003997A (ja) 2011-01-06

Similar Documents

Publication Publication Date Title
JP3604955B2 (ja) 畳込み復号装置
US7765459B2 (en) Viterbi decoder and viterbi decoding method
US7277507B2 (en) Viterbi decoder
US8009773B1 (en) Low complexity implementation of a Viterbi decoder with near optimal performance
US8301990B2 (en) Programmable compute unit with internal register and bit FIFO for executing Viterbi code
JP3233847B2 (ja) ビタビ復号方法及びビタビ復号回路
US11165446B1 (en) Parallel backtracking in Viterbi decoder
US6697442B1 (en) Viterbi decoding apparatus capable of shortening a decoding process time duration
US7617440B2 (en) Viterbi traceback initial state index initialization for partial cascade processing
JP4580927B2 (ja) ビタビ復号装置、およびビタビ復号方法
US7756224B2 (en) Viterbi decoding circuit and wireless device
JP5169771B2 (ja) 復号器および復号方法
JP5338506B2 (ja) 復号装置及び信号処理システム
JP2010206570A (ja) 復号装置、復号方法
EP0851591B1 (en) Data processor and data processing method
JP4729938B2 (ja) ビタビ復号器及びそれを用いる移動体通信装置、基地局装置、移動体通信端末
US20070168845A1 (en) Viterbi decoder
JP3337950B2 (ja) 誤り訂正復号化方法及び誤り訂正復号化装置
JP4633759B2 (ja) ビタビ復号器
JP5177028B2 (ja) 復号化装置
CN101527573B (zh) 维特比解码器
JPH06112848A (ja) ビタビ復号用演算装置
JP5196567B2 (ja) 演算装置、復号化装置およびメモリ制御方法ならびにプログラム
JP2003198435A (ja) ダイバーシティ装置およびその方法
JPH07288478A (ja) ビタビ復号方法およびビタビ復号化装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130423

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130620

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130722

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees