(57)【要約】【課題】従来M-ary/SS方式で誤り訂正を行う場合、１シンボル当りの伝送情報ビット数ｍが複数の場合、各ｍの値に対応する誤り訂正装置が必要で回路規模が大きくなる。【解決手段】１シンボル当りの伝送情報ビット数ｍと時分割カウンタからの動作タイミングカウント値で決定される所定状態のＡＣＳ演算を行い、所定状態の生き残りパス情報とパスメトリック値及び複数個の状態のパスメトリック値をグループ化して出力するＡＣＳ演算手段と、パスメトリックメモリ制御手段からのパスメトリックメモリ制御信号を基に、ＡＣＳ演算手段からのグループ化された複数個の状態のパスメトリック値の書き込みや読み込みを行うパスメトリックメモリと、前記ｍと前記カウント値を基に指定アドレスに、ＡＣＳ演算手段よりの生き残りパス情報を記録し、これら生き残りパス情報を基に復号結果を算出し出力するパスメモリを備える。【選択図】図１
2006211403.tif 000002
【特許請求の範囲】
【請求項１】
M-ary/SS方式を用い、１シンボル当りに伝送する情報ビット数ｍ（ｍは１以上の自然数）とする場合において、複数の前記ｍに対して復号する誤り訂正装置であって、
時分割処理を考慮した動作クロックをカウントし、そのカウント値を出力すると共に、装置全体が１回動作する周期でカウント値を繰り返しカウントする時分割カウンタと、
前記ｍと前記カウント値で決定される所定の状態のＡＣＳ演算を行い、所定の状態の生き残りパス情報とパスメトリック値、及び、複数個の状態のパスメトリック値をグループ化して出力する第１のＡＣＳ演算手段と、
前記ｍと前記カウント値を基に、パスメトリックメモリ制御信号を生成して出力する第１のパスメトリックメモリ制御手段と、
前記第１のパスメトリックメモリ制御手段から出力されるパスメトリックメモリ制御信号を基に、前記第１のＡＣＳ演算手段より出力されるグループ化された複数個の状態のパスメトリック値の書き込みや読み込みを行うパスメトリックメモリと、
前記ｍと前記カウント値を基に指定されるアドレスに、前記第１のＡＣＳ演算手段より出力される所定の状態の生き残りパス情報を記録していき、これら記録された生き残りパス情報を基に復号結果を算出して出力する第１のパスメモリとを備えることを特徴とする誤り訂正装置。
【請求項２】
前記第１のパスメモリは、システムで想定される前記ｍの最大値がｍmax（ｍmaxは２以上の自然数）の場合に、任意の時刻における任意の状態に対してｍmaxビットずつのメモリ容量が用意され、ｍビットの生き残りパス情報と（ｍmax−ｍ）ビットの任意データが割り当てられることを特徴とする請求項１記載の誤り訂正装置。
【請求項３】
M-ary/SS方式を用い、１シンボル当りに伝送する情報ビット数ｍ（ｍは１以上の自然数）とする場合において、複数の前記ｍに対して復号する誤り訂正装置であって、
時分割処理を考慮した動作クロックのカウント値を出力し、装置全体が１回動作する周期でカウント値を繰り返しカウントする時分割カウンタと、
前記ｍと前記カウント値でそれぞれ決定される複数の所定の状態のＡＣＳ演算を並列して行い、それぞれ所定の状態の生き残りパス情報とパスメトリック値、及び、複数個の状態のパスメトリック値をグループ化して出力するｒ個（ｒは２以上の自然数）の第２のＡＣＳ演算手段と、
前記ｍと前記カウント値を基に、後記パスメトリックメモリと後記セレクタを制御するパスメトリックメモリ制御信号を生成する第２のパスメトリックメモリ制御手段と、
前記第２のパスメトリックメモリ制御手段より出力されるパスメトリック制御信号を基に、前記ｒ個の第２のＡＣＳ演算手段のいずれかから出力される複数個の状態でグループ化されたパスメトリック値、または、任意の値から選択して出力するセレクタと、
前記第２のパスメトリックメモリ制御手段から出力されるパスメトリックメモリ制御信号を基に、前記セレクタにより選択された前記第２のＡＣＳ演算手段よりの出力の書き込みや読み込みを行うパスメトリックメモリと、
前記ｍと前記カウント値を基に指定されるアドレスに、前記ｒ個の第２のＡＣＳ演算手段よりそれぞれ出力される所定の状態の生き残りパス情報をグループ化して記録していき、これらグループ化して記録された生き残りパス情報を基に復号結果を算出して出力する第２のパスメモリとを備えることを特徴とする誤り訂正装置。
【請求項４】
前記第２のパスメモリは、システムで想定される前記ｍの最大値がｍmax（ｍmaxは２以上の自然数）の場合に、任意の時刻における任意のｒ個の状態のグループに対して（ｒ×ｍmax）ビットずつのメモリ容量が用意され、（ｒ×ｍ）ビットの生き残りパス情報と｛ｒ×（ｍmax−ｍ）｝ビットの任意データが割り当てられることを特徴とする請求項３記載の誤り訂正装置。
【請求項５】
前記第１のパスメトリックメモリ制御手段または前期第２のパスメトリックメモリ制御手段は、前記パスメトリックメモリでパスメトリック値の管理を行うグループに対して、ある任意のグループ内の状態を他のグループの状態に対して優先的に前記第１のＡＣＳ演算手段または前記第２のＡＣＳ演算手段でＡＣＳ演算を行うようにパスメトリックメモリ制御信号を生成することを特徴とする請求項１または請求項３記載の誤り訂正装置。
【請求項６】
システムで想定される前記ｍの最大値がｍmaxの場合において、前記第１のＡＣＳ演算手段または前記第２のＡＣＳ演算手段と前記パスメトリックメモリは、前記ｍが前記ｍmaxの場合に同じ状態に遷移する全候補の状態の集合毎にパスメトリック値をグループ化して取り扱う構成にされたことを特徴とする、請求項１または請求項３記載の誤り訂正装置。
【請求項７】
システムで想定される前記ｍの最大値がｍmaxの場合において、前記第１のＡＣＳ演算手段または前記第２のＡＣＳ演算手段と前記パスメトリックメモリは、前記ｍが前記ｍmaxの場合に同じ状態に遷移する全候補の状態の集合の部分集合となる複数個の状態のパスメトリック値をグループ化して取り扱う構成にされたことを特徴とする請求項１または請求項３記載の誤り訂正装置。
【請求項８】
システムで想定される前記ｍの最大値がｍmaxの場合において、前記第２のＡＣＳ演算手段と前記パスメトリックメモリは、前記ｍが前記ｍmaxの場合に同じ状態に遷移する全候補の状態の集合が部分集合となる複数個の状態のパスメトリック値をグループ化して取り扱う構成にされたことを特徴とする請求項３記載の誤り訂正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体通信システムや衛星通信システム等のディジタル通信システムに適用される誤り訂正技術に関するものである。
【背景技術】
【０００２】
近年、移動体通信システムや衛星通信システムでは、画像、音声、データ等のトラヒックを伝送する方式の一つとしてスペクトラム拡散（Spread Spectrum：SS）方式が注目されている。
SS通信方式には、直接拡散（Direct Sequence：DS）方式や周波数ホッピング（(Frequency Hopping：FH)）方式等があるが、DS方式は情報信号に比してはるかに広帯域の擬似雑音（Pseudo Noise：ＰＮ）系列を情報信号に直接乗算し、これによって情報信号をスペクトル拡散して通信を行う方式である。
そして、ｍ（ｍは自然数）ビットの送信データに対して、２ｍ個の互いに直交する符号系列から１つを選択し、選択した符号系列により直接拡散して信号伝送する方式（以下、M-ary/SS方式）は、スペクトル拡散を実現しつつ、直交する符号系列の１周期の時間でｍビットの情報伝送を行うことができるため、情報伝送速度の高速化に適した伝送方式である。
【０００３】
図１０は、“M系列を用いたM-ary/SS/CDMA(Code Division Multiple Access)システムの受信方式及び高速データ伝送特性”、電子情報通信学会論文誌 B、 Vol.J84-B、 No.8、 pp.1421-1432（2001年8月）に示されている従来のM-ary/SS方式の誤り訂正装置で想定しているブロック化したトレリス遷移図である。
図１０では、拘束長ｋ＝３，１シンボル当りに２ビットの情報ビットを伝送する場合であり、“００”，“１０”，“０１”，“１１”の４つの状態を持つ。
図１０において、１シンボル当りに２ビットの情報伝送を行うため、時刻ｎ（ｎは整数）の各状態は、時刻（ｎ＋１）のそれぞれ４（＝２２）つの状態に遷移する。また、時刻（ｎ＋１）の各状態は、時刻ｎの４つの状態からのそれぞれの遷移がある。時刻（ｎ＋１）の各状態では、各々時刻ｎの４つの状態からの遷移からＡＣＳ（Add Compare Select）演算を行い、生き残りパス情報を求めるようなビタビ復号を行うことにより、M-ary/SS方式でこのブロック化したトレリス遷移図を用いて誤り訂正を行うことができる。
【０００４】
一方、伝送路状況に適した情報伝送速度で通信を行う適応変調が実現化されつつある。M-ary/SS方式では、１シンボル当りに伝送する情報ビット数ｍを伝送路状況に応じて変えることにより適応変調を行うことが考えられる。
【０００５】
【非特許文献１】伊藤  匠、三瓶  政一、森永  規彦、“M系列を用いたM-ary/SS/CDMAシステムの受信方式及び高速データ伝送特性”、電子情報通信学会論文誌 B 、電子情報通信学会、2001年8月、Vol.J84-B No.8 、pp.1421-1432
【発明の開示】
【発明が解決しようとする課題】
【０００６】
図２に、拘束長ｋ＝５，１シンボル当りに伝送する情報ビット数ｍが３と２の場合のブロック化したトレリス遷移図を示す。図２から判るように、拘束長ｋが同じでも１シンボル当りに伝送する情報ビット数ｍが異なる場合、M-ary/SS方式で適用するブロック化したトレリス遷移図は大きく変化する。しかしながら、従来技術では、複数のｍの値に対応するM-ary/SS方式で誤り訂正を行う場合、各ｍの値に対応する誤り訂正装置が必要となるため、誤り訂正装置全体の回路規模が大きくなるという課題があった。
本発明は、上記課題を解決するためになされたものであり、M-ary/SS方式で適応変調等を実現するために、小さい回路規模で複数のｍの値に対応するM-ary/SS方式用誤り訂正装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る誤り訂正装置は、
M-ary/SS方式を用い、１シンボル当りに伝送する情報ビット数ｍ（ｍは１以上の自然数）とする場合において、複数の前記ｍに対して復号する誤り訂正装置であって、
時分割処理を考慮した動作クロックのカウント値を出力し、装置全体が１回動作する周期でカウント値を繰り返しカウントする時分割カウンタと、
前記ｍと前記カウント値で決定される所定の状態のＡＣＳ演算を行い、所定の状態の生き残りパス情報とパスメトリック値、及び、複数個の状態のパスメトリック値をグループ化して出力する第１のＡＣＳ演算手段と、
前記ｍと前記カウント値を基に、パスメトリックメモリ制御信号を生成して出力する第１のパスメトリックメモリ制御手段と、
前記第１のパスメトリックメモリ制御手段から出力されるパスメトリックメモリ制御信号を基に、前記第１のＡＣＳ演算手段より出力されるグループ化された複数個の状態のパスメトリック値の書き込みや読み込みを行うパスメトリックメモリと、
前記ｍと前記カウント値を基に指定されるアドレスに、前記第１のＡＣＳ演算手段より出力される所定の状態の生き残りパス情報を記録していき、これら記録された生き残りパス情報を基に復号結果を算出して出力する第１のパスメモリとを備える。
【発明の効果】
【０００８】
本発明の誤り訂正装置は、第１のＡＣＳ演算手段及びパスメトリックメモリが複数個の状態のパスメトリック値を所定の集合毎にグループ化して管理することにより、第１のＡＣＳ演算手段、パスメトリックメモリを共用することが可能であるため、小さい回路規模で複数のｍの値に対応できる誤り訂正装置を得ることが可能である。
またＡＣＳ演算を行う際にパスメトリックメモリへのアクセス回数を減らすことができるため、時分割による全状態に対する合計のＡＣＳ演算時間を短縮化できる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
本実施の形態１では、M-ary/SS方式において１シンボル当りに伝送する情報ビット数ｍの値が異なる場合でも、ＡＣＳ演算部、パスメトリックメモリ、及び、パスメモリを共用可能にすることにより、小さい回路規模で複数のｍの値に対応できる誤り訂正装置を得る。
図１は、本発明の実施の形態１の誤り訂正装置の一構成図である。図１において、10は時分割用カウンタ、11は第１のパスメトリックメモリ制御部、12は第１のＡＣＳ演算部、13はパスメトリックメモリ、14は最尤状態検出部、15は第１のパスメモリである。
【００１０】
まず、本実施の形態１で用いるM-ary/SS方式においてｍの値が異なる場合のパスメトリックメモリ管理方法とＡＣＳ演算処理手順に関して、図２を用いて説明を行う。
図２に示すように、拘束長ｋ＝５の場合には、時刻（ｎ−１）→ｎにおいて次の状態遷移を行う（ｎは整数。また、ｋ≧４の場合には同様に取り扱うことが可能である）。ｍ＝３の場合には状態A1X1X2X3 → 状態Y1Y2Y3A1の状態遷移を行い、ｍ＝２の場合には状態A1'，A2'X1'X2' → 状態Y1'Y2'A1'A2'の状態遷移を行う。但し、A1 ，A1'，A2'，X1 ，X2, X3 ，X1'，X2'，Y1 ，Y2 ，Y3 ，Y1'，Y2'は、それぞれ２値（図２中では“１”または“０”）の値である。
【００１１】
ここで、A1=A1'の場合を考える。一例として、時刻ｎにおいて、A1=A1'=1，Y1Y2Y3=110，Y1'Y2'=01，A2'=0、つまり、ｍ＝３の場合の状態1101への遷移と、ｍ＝２の場合の状態0110への遷移を考える。この場合、時刻（ｎ−１）の状態は、ｍ＝３の場合には状態1000,1100,1010,1110,1001,1101,1011,1111の８通りが考えられ、ｍ＝２の場合には状態1000,1010,1001,1011の４通りが考えられる。このように、A1=A1'の関係を満たす状態遷移（A1とA1'は任意の値で良い）ではY1,Y2,Y3,Y1',Y2',A2'がそれぞれ任意の値において、ｍ＝２の状態遷移前の状態の候補の集合は、ｍ＝３の状態遷移前の状態の候補の集合の部分集合になる。
このｍが小さい場合の特定の状態へ遷移する状態の候補の集合は、ｍが大きい場合のある状態へ遷移する状態の候補の集合の部分集合になる特性に基づき、システムで想定されるｍの最大の値ｍmax（ｍmaxは２以上の自然数）に対してそれぞれ同じ状態に遷移する全候補の状態の集合毎にパスメトリック値をグループ化して１つのアドレスを割り当ててパスメトリックメモリへのアクセス管理を行う。
【００１２】
例えば、前述のパスメトリック値のグループ化方法に基づき、図２の拘束長ｋ＝５でｍ＝３とｍ＝２を考慮する場合には、25-1＝16の全１６状態を{1000,1100,1010,1110,1001,1101,1011,1111}（以下、状態グループ１）と{0000,0100,0010,0110,0001,0101,0011,0111}（以下、状態グループ２）の２つの状態グループにしてパスメトリックメモリにアクセスできるようにする。
このパスメトリックメモリへのアクセス管理方法により、１シンボル当りに伝送する情報ビット数ｍが異なる場合でも、任意の状態に対して１回のパスメトリックメモリへのアクセスでＡＣＳ演算を行うことが可能となるため、ＡＣＳ演算を行う際のパスメトリックメモリへのアクセス回数を減らしつつ、パスメトリックメモリを共有することができる。
【００１３】
また、前述のようにシステムで想定されるｍの最大の値ｍmaxに対してそれぞれ同じ状態に遷移する全候補の状態の集合毎にパスメトリック値をグループ化して１つのアドレスを割り当ててパスメトリックメモリへのアクセス管理を適用する場合の全状態に対するＡＣＳ演算を行う手順について説明を行う。
例えば、図２においてｍ＝３の場合、時刻（ｎ−１）の状態グループ１からは、時刻ｎの{0001,1001,0101,1101,0011,1011,0111,1111}（以下、状態グループ３）の８つの状態に遷移する。また、時刻（ｎ−１）の状態グループ２からは、時刻ｎの{0000,1000,0100,1100,0010,1010,0110,1110}（以下、状態グループ４）の８つの状態に遷移する。ここで、パスメトリック値は、状態グループ１と状態グループ２の２グループでパスメトリックメモリに格納する必要がある。このため、時分割処理を用いて、時刻ｎにおいて状態グループ１に含まれる状態のパスメトリック値を先に求め、状態グループ２に含まれる状態のパスメトリック値を後に求める手順が考えられる。具体的には、状態グループ１に含まれる状態グループ３内の{1001, 1101, 1011, 1111}の４状態と状態グループ４内の{1000, 1100, 1010, 1110}の４状態のＡＣＳ演算を先に行い、状態グループ２に含まれる状態グループ３内の{0001, 0101, 0011, 0111}の４状態と状態グループ４内の{0000, 0100, 0010, 0110}の４状態のＡＣＳ演算を後に行う。
【００１４】
一方、図２においてｍ＝２の場合、時刻（ｎ−１）の状態グループ１からは、時刻ｎの{0010,1010,0110,1110,0011,1011,0111,1111}（以下、状態グループ５）の８つの状態に遷移する。また、時刻（ｎ−１）の状態グループ２からは、時刻ｎの{0000,1000,0100,1100,0001,1001,0101,1101}（以下、状態グループ６）の８つの状態に遷移する。ｍ＝３の場合と同様に、パスメトリック値は、状態グループ１と状態グループ２の２グループでパスメトリックメモリに格納する必要があるため、時分割処理を用いて、時刻ｎにおいて状態グループ５内の{1010,1110,1011,1111}の４状態と状態グループ６内の{1000,1100,1001,1101}の４状態のＡＣＳ演算を先に行い、状態グループ５内の{0010, 0110, 0011, 0111}の４状態と状態グループ６内の{0000, 0100, 0001, 0101}の４状態のＡＣＳ演算を後に行う手順が考えられる。
【００１５】
時刻ｎの各状態のパスメトリック値を状態グループ毎にパスメトリックメモリに格納する際には一時的に状態グループ単位でパスメトリック値を格納するレジスタが必要であり、前述のように状態グループ内の状態を他の状態グループ内の状態より優先的にＡＣＳ演算を行う手順で各状態のパスメトリック値を演算する場合には、格納するレジスタを１つの状態グループ分だけ用意すれば良いので、少ないレジスタ量で装置を生成することができる。
但し、ここでは、時刻ｎにおける状態グループ１内の各状態のパスメトリック値を先に求め、状態グループ２内の各状態のパスメトリック値を後に求める手順を示したが、各状態グループ間での演算手順順序は任意で良い。例えば、時刻ｎにおける状態グループ２内の各状態のパスメトリック値を先に求め、状態グループ１内の各状態のパスメトリック値を後に求めても少ないレジスタ量で装置を生成することができる。
【００１６】
次に、上述のように、システムで想定されるｍの最大値ｍmaxに対してそれぞれ同じ状態に遷移する全候補の状態の集合毎にパスメトリック値をグループ化してパスメトリックメモリの管理を行う実施の形態１の誤り訂正装置の動作について図１を用いて説明する。
まず、時分割用カウンタ10は、時分割処理を考慮した動作クロックを生成し、その動作クロックでカウントアップ又はカウントダウンを行い、各部の動作開始タイミングを規定する時分割用カウンタ値ｃ（ｃは整数）を出力する。またこの時分割用カウンタ値ｃは本誤り訂正装置全体が１回動作する周期でリセットされる所定の値を繰り返しカウントする。例えば、パスメトリックメモリ13にリード用とライト用のパスメトリック値をそれぞれ交互に２面で格納する場合には、本誤り訂正装置全体は２シンボル周期で１回動作する。
【００１７】
第１のパスメトリックメモリ制御部11は、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ値ｃからパスメトリックメモリ13を制御するパスメトリックメモリ制御信号を生成する。このパスメトリックメモリ制御信号は、本実施の形態１では、リードアドレス、ライトイネーブル、及び、ライトアドレスを指し示す。
第１のＡＣＳ演算部12は、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃを基に定められる状態の生き残りパス情報とパスメトリック値を算出するためにＡＣＳ演算を行う。更に、パスメトリックメモリ13向けのパスメトリック値は、各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化して出力する。
【００１８】
図３に、第１のＡＣＳ演算部12の一構成を示す。図３において、20_1〜20_（２のｍmax乗）は枝メトリック選択部、21は加算器、22は正規化部、23は最尤選択部であり、24はパスメトリックレジスタである。
枝メトリック選択部20_1〜20_（２のｍmax乗）は、それぞれ１シンボル当りに伝送する情報ビット数ｍ、時分割用カウンタ10から出力される時分割カウンタ値ｃ、及び、枝メトリック選択部の添え字の番号を基に一意に決定される状態遷移に対応する枝メトリック値を（２のｍmax乗）個の中から選択して出力する。
【００１９】
加算器21は、それぞれ、枝メトリック選択部20_1〜20_（２のｍmax乗）の何れかから出力される現在の枝メトリック値とパスメトリックメモリ13からの（２のｍmax乗）個の１時刻前のパスメトリック値の何れかとを状態遷移に対応して一意に決まる組み合わせで加算する。
正規化部22は、加算部21から出力される値に対して最尤状態検出部14から出力される最尤状態のパスメトリック値を基準にして正規化処理を行い、正規化されたメトリック値を出力する。ここでの正規化処理は、パスメトリック値の発散を防ぐために行う処理であり、例えば、加算部21から出力される値から最尤状態検出部14から出力される最尤状態のパスメトリック値を減算する処理である。
【００２０】
最尤選択部23は、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃで定められる状態遷移に対して、（２のｍmax乗）個の正規化部より出力される正規化されたメトリック値を基に最尤な状態遷移を選択し、選択した状態遷移に対応する生き残りパス情報を出力する。また、最尤選択部23は、選択した状態遷移に対応する正規化されたメトリック値を、１シンボル当りに伝送する情報ビット数ｍと時分割カウンタ値ｃで一意に決定される状態のパスメトリック値として出力する。
【００２１】
パスメトリックレジスタ24は、最尤選択部23より出力されるパスメトリック値を時分割カウンタ値ｃで規定される時分割制御に応じて一時記憶する。そして、パスメトリックレジスタ24は、パスメトリックメモリ13に格納するために、時分割カウンタ値ｃに応じて、一時記憶されたパスメトリック値を各状態へ遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にまとめて出力する。ここで、パスメトリックレジスタ24は、所定状態のパスメトリック値を一時記憶するシフトレジスタ等で構成可能である。
但し、ｍ＜ｍmaxの場合には各状態への状態遷移は（２のｍmax乗）より少なくなるため、枝メトリック選択部20_1〜20_（２のｍmax乗）、加算器21、正規化部22は、（２のｍmax乗）個の内の状態遷移に対応する2m個分だけ最低限動作すれば良い。そして、最尤選択部23において、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃで定められる（２のｍmax乗）個の内の2m個の状態遷移のみを考慮して生き残りパス情報とパスメトリック値を求めることにより、複数のｍの値に対して第１のＡＣＳ演算部12を共用することが可能である。
【００２２】
再度、図１を用いて説明を行う。パスメトリックメモリ13は、パスメトリックメモリ制御部11より出力されるリードアドレスで指定される（２のｍmax乗）個の状態のパスメトリック値を出力する。また、パスメトリックメモリ13は、第１のパスメトリックメモリ制御部11より出力されるライトイネーブルで書き込み指示がある場合には、第１のＡＣＳ演算部12より出力される（２のｍmax乗）個の状態のパスメトリック値を、第１のパスメトリックメモリ制御部11より出力されるライトアドレスで指定される領域に書き込みを行う。ここで、パスメトリックメモリ13は、Dual Port RAM等で構成可能である。また、上述したように、パスメトリックメモリ13において、各状態へ遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化してパスメトリック値を管理することにより、複数のｍの値に対してパスメトリックメモリ13を共用することが可能である。
【００２３】
最尤状態検出部14は、第１のＡＣＳ演算部12より出力される、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃで一意に決定される状態のパスメトリック値を基に、１シンボル又は複数シンボルに一回だけ全2k-1個の状態の中から最尤状態を検出し、その最尤状態の状態番号を示す最尤状態情報と最尤状態のパスメトリック値を出力する。ここで、“最尤状態を検出する”とは、例えば、尤度が高い時に枝メトリックが大きい値を持つと定義する場合には全2k-1個の状態の中で最大のパスメトリック値を有する状態を求める処理を示し、尤度が高い時に枝メトリックが小さい値と持つと定義する場合には全2k-1個の状態の中で最小のパスメトリック値を有する状態を求める処理を示す。
【００２４】
第１のパスメモリ15は、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃで指定されるアドレスに、第１のＡＣＳ演算部12より出力される生き残りパス情報を記録する。そして、第１のパスメモリ15は、最尤状態検出部14より出力される最尤状態情報を基に、最尤状態検出部14と同じ動作周期でトレースバック処理等を実施して復号データを出力する。ここで、第１のパスメモリ15において、任意の時刻における任意の状態に対してｍmaxビットずつのメモリ容量を用意し、ｍビットの生き残りパス情報と（ｍmax−ｍ）ビットの任意データを格納することにより、複数のｍの値に対して第１のパスメモリ15を共用することが可能である。
【００２５】
以上のとおり、本実施の形態１の誤り訂正装置では、複数のｍの値に対して第１のＡＣＳ演算部12、パスメトリックメモリ13、及び、第１のパスメモリ15を共用することが可能であるため、小さい回路規模で複数のｍの値に対応できる誤り訂正装置を得ることが可能である。
そして、パスメトリック値を各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化して管理することにより、ＡＣＳ演算を行う際にパスメトリックメモリへのアクセス回数を減らすことができるため、時分割による全状態に対する合計のＡＣＳ演算時間を短縮化できる。
【００２６】
また、図４に本実施の形態１のｋ＝５、ｍ＝３の場合の動作タイミングチャートの一例を示し、図５に本実施の形態１のｋ＝５、ｍ＝２の場合の動作タイミングチャートの一例を示す。
図４と図５では、時分割タイミングが8の時に、状態グループ１に含まれる全状態のＡＣＳ演算が完了するため、ライトイネーブルをonにし、パスメトリックメモリ13の状態グループ１の領域に書き込みを行う。同様に、時分割タイミングが16の時に、状態グループ２に含まれる全状態のＡＣＳ演算が完了するため、ライトイネーブルをonにし、パスメトリックメモリ13の状態グループ２の領域に書き込みを行う。
但し、現在の全状態に対するＡＣＳ演算が完了するまでパスメトリックメモリ13に記録されている１シンボル前のパスメトリック値を更新することができないため、パスメトリックメモリ13は、現在の全状態のパスメトリック値と１シンボル前の全状態のパスメトリック値の両方を記録しておく等の工夫が必要とされる場合もある。
【００２７】
このように第１のパスメトリックメモリ制御部11で状態グループ１に属する状態のパスメトリック値を先に求め、状態グループ２に属する状態のパスメトリック値を後に求めるように、リードアドレス、ライトイネーブル、及び、ライトアドレスを生成することにより、パスメトリックレジスタ24で用いるレジスタは１つの状態グループ分だけで用意すればよく、ＡＣＳ演算を状態グループに関係ない手順で行う場合と比べて小さい回路規模で構成できる。
なお、正規化部22における正規化処理の際に、最尤状態検出部14において最尤状態のパスメトリック値を用いたが、その代わりに全2k-1個の状態の最大または最小のパスメトリック値を用いて正規化処理を行ってもパスメトリック値の発散を防ぐことが可能である。
【００２８】
また、上述では、パスメトリック値を各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化して管理する方法について記述したが、各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎のグループをｐ個（ｐは２以上の自然数）のグループに分けてパスメトリック値を管理しても良い。つまり、パスメトリック値を（２のｍmax乗）／ｐ個ずつのグループで管理しても良い。この場合も複数のｍの値に対して第１のＡＣＳ演算部12、パスメトリックメモリ13、及び、第１のパスメモリ15を共用することが可能であるため、小さい回路規模で複数のｍの値に対応できる誤り訂正装置を得ることが可能である。そして、ＡＣＳ演算を（２のｍmax乗）個ずつ存在する枝メトリック選択部20_1〜20_（２のｍmax乗）、加算器21、及び、正規化部22をそれぞれ１／ｐの数で実現できるため、回路規模をパスメトリック値を（２のｍmax乗）個ずつのグループで管理する場合より小さくすることが可能である。
【００２９】
なお、本実施の形態１では、最尤状態検出部14で求まる最尤状態情報を基にして第１のパスメモリ15で復号データを得る手順を説明したが、伝送する情報ビットに特殊なパターンを用いて既知の状態に収束させる処理を行う場合には、最尤状態情報の代わりにこの既知の状態を用いることにより、第１のパスメモリ15で復号データを得ることが可能である。
【００３０】
実施の形態２．
本実施の形態２では、１シンボル当りに伝送する情報ビット数ｍの値が異なる場合でも、ＡＣＳ演算部、パスメトリックメモリ、及び、パスメモリを共用可能にして、小さい回路規模で複数のｍの値に対応できるようにしつつ、複数の状態のＡＣＳ演算を並列に行うことにより、実施の形態１で示した誤り訂正装置よりも短時間で復号結果を得ることが可能な誤り訂正装置を得る。
なお、本実施の形態２の誤り訂正装置は、上述の実施の形態１の誤り訂正装置に対して複数のＡＣＳ演算を並列に行うことを可能としたものであり、その他の構成は上述の実施の形態１と同様であるため、以下では、実施の形態１と同一の構成については同一の符号を付して説明を省略する。
【００３１】
図６は、本発明の実施の形態２の誤り訂正装置の一構成図である。図６において、30は第２のパスメトリックメモリ制御部、31_1〜31_r（ｒは２以上の自然数）は第２のＡＣＳ演算部、32はセレクタ、33は最尤状態検出部であり、34は第２のパスメモリである。
次に、実施の形態１と同様に、システムで想定されるｍの最大値ｍmaxに対してそれぞれ同じ状態に遷移する全候補の状態の集合毎にパスメトリック値をグループ化してパスメトリックメモリの管理を行う実施の形態２の誤り訂正装置の動作について図６を用いて説明する。
第２のパスメトリックメモリ制御部30は、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ値ｃから、パスメトリックメモリ13やセレクタ32を制御するパスメトリックメモリ制御信号を生成し、出力する。このパスメトリックメモリ制御信号は、本実施の形態２では、リードアドレス、ライトイネーブル、ライトアドレス、及び、ＡＣＳ選択信号を指し示す。
【００３２】
第２のＡＣＳ演算部31_1〜31_rは、それぞれ、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃを基に各第２のＡＣＳ演算部で定められる状態の生き残りパス情報とパスメトリック値を算出するためにＡＣＳ演算を並列して行う。セレクタ32向けのパスメトリック値は、各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化し、更に遅延調整を行って出力する。
【００３３】
図７に、第２のＡＣＳ演算部31_s（s∈{1,2,…,r}）の一構成図を示す。図７において、40_1_s〜40_（２のｍmax乗）_sは枝メトリック選択部、41_sは最尤選択部、42_sは遅延器であり、43_sはパスメトリックレジスタである。
枝メトリック選択部40_1_s〜40_（２のｍmax乗）_sは、それぞれ１シンボル当りに伝送する情報ビット数ｍ、時分割用カウンタ10から出力される時分割カウンタ値ｃ、枝メトリック選択部の添え字の番号、及び、第２のＡＣＳ演算部の添え字の番号ｓを基に一意に決定される状態遷移に対応する枝メトリック値を（２のｍmax乗）個の中から選択して出力する。
【００３４】
最尤選択部41_sは、１シンボル当りに伝送する情報ビット数ｍ、時分割用カウンタ10から出力される時分割カウンタ値ｃ、及び、第２のＡＣＳ演算部の添え字の番号ｓで定められる状態遷移に対して、（２のｍmax乗）個の正規化部22より出力される正規化されたメトリック値を基に最尤な状態遷移を選択し、選択した状態遷移に対応する生き残りパス情報を出力する。また、最尤選択部41_sは、選択した状態遷移に対応する正規化されたメトリック値を、１シンボル当りに伝送する情報ビット数ｍ、時分割カウンタ値ｃ、及び、第２のＡＣＳ演算部の添え字の番号ｓで一意に決定される状態番号のパスメトリック値として出力する。
遅延器42_sは、各第２のＡＣＳ演算部からセレクタ32への信号出力のタイミング調整を目的として、最尤選択部41_sから出力されるパスメトリック値を、第２のＡＣＳ演算部の添え字の番号ｓで一意に決定される遅延時間を与えて出力する。但し、第２のＡＣＳ演算部の添え字の番号ｓによっては、遅延時間が零の場合もある。
【００３５】
パスメトリックレジスタ43_sは、遅延器42_sより出力されるパスメトリック値を時分割カウンタ値ｃと第２のＡＣＳ演算部の添え字の番号ｓで規定される時分割制御に応じて一時記憶する。そして、パスメトリックレジスタ43_sは、パスメトリックメモリ13に格納するために、一時記憶されたパスメトリック値を時分割カウンタ値ｃに応じて、各状態へ遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化して出力する。ここで、パスメトリックレジスタ43_sは、所定状態のパスメトリック値を一時記憶するシフトレジスタ等で構成可能である。
但し、ｍ＜ｍmaxの場合には各状態への状態遷移は（２のｍmax乗）より少なくなるため、実施の形態１と同様に、枝メトリック選択部40_1_s〜40_（２のｍmax乗）_s、加算器21、及び、正規化部22は、（２のｍmax乗）個の内の状態遷移に対応する2m個分だけ最低限動作すれば良い。そして、最尤選択部41_sにおいて、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃで定められる（２のｍmax乗）個の内の2m個の状態遷移のみを考慮して生き残りパス情報とパスメトリック値を求めることにより、複数のｍの値に対して第２のＡＣＳ演算部31_sを共用することが可能である。
【００３６】
再度、図６を用いて説明を行う。セレクタ32は、第２のパスメトリックメモリ制御部30より出力されるＡＣＳ選択信号を基に、ｒ個の第２のＡＣＳ演算部31_1〜31_rの何れかから出力される各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化されたパスメトリック値を選択して出力する。
【００３７】
最尤状態検出部33は、ｒ個の第２のＡＣＳ演算部31_s（s∈{1,2,…,r}）よりそれぞれ出力される、１シンボル当りに伝送する情報ビット数ｍ、時分割用カウンタ10から出力される時分割カウンタ値ｃ、及び、第２のＡＣＳ演算部の添え字ｓで一意に決定される状態のパスメトリック値を基に、１シンボル又は複数シンボルに一回だけ全2k-1個の状態の中から最尤状態を検出し、その最尤状態の状態番号を示す最尤状態情報と最尤状態のパスメトリック値を出力する。ここで、“最尤状態を検出する”とは、例えば、尤度が高い時に枝メトリックが大きい値を持つと定義する場合には全2k-1個の状態の中で最大のパスメトリック値を有する状態を求める処理を示し、尤度が高い時に枝メトリックが小さい値と持つと定義する場合には全2k-1個の状態の中で最小のパスメトリック値を有する状態を求める処理を示す。
【００３８】
パスメモリ34は、１シンボル当りに伝送する情報ビット数ｍと時分割用カウンタ10から出力される時分割カウンタ値ｃで指定されるアドレスに、ｒ個の第２のＡＣＳ演算部31_sよりそれぞれ出力される生き残りパス情報をグループ化して記録する。そして、第２のパスメモリ34は、最尤状態検出部33より出力される最尤状態情報を基に、最尤状態検出部33と同じ動作周期でトレースバック処理等を実施して復号データを出力する。ここで、第２のパスメモリ34においてそのメモリ容量は、任意の時刻でのｒ個のグループ化された状態毎に対して（ｒ×ｍmax）ビットずつ分用意し、（ｒ×ｍ）ビットの生き残りパス情報と｛ｒ×（ｍmax−ｍ）｝ビットの任意データを格納することにより、実施の形態１と同様に、複数のｍの値に対して第２のパスメモリ34を共用することが可能である。
【００３９】
以上のとおり、本実施の形態２の誤り訂正装置では、実施の形態１と同様に、複数のｍの値に対して第２のＡＣＳ演算部31_1〜31_r、パスメトリックメモリ13、及び、第２のパスメモリ34を共用することが可能であるため、小さい回路規模で複数のｍの値に対応できる誤り訂正装置を得ることが可能である。
【００４０】
また、図８に本実施の形態２のｋ＝５、ｍ＝３、ｒ＝２の場合の動作タイミングチャートの一例を示し、図９に本実施の形態２のｋ＝５、ｍ＝２、ｒ＝２の場合の動作タイミングチャートの一例を示す。
図８と図９では、時分割タイミングが8の時に、第２のＡＣＳ演算部31_1で状態グループ１に含まれる全状態のＡＣＳ演算が完了し、第２のＡＣＳ演算部31_2で状態グループ２に含まれる全状態のＡＣＳ演算が完了する。そこで、遅延器42_1の遅延時間を零にして、時分割タイミングが8の時に、ライトイネーブルをon、かつ、セレクタ32で第２のＡＣＳ演算部31_1から出力される（２のｍmax乗）乗個のグループ化されたパスメトリック値を選択するように第２のパスメトリックメモリ制御部30がＡＣＳ選択信号を生成して、パスメトリックメモリ13の状態グループ１の領域に書き込みを行う。更に、遅延器42_2の遅延時間を１タイミングにして、時分割タイミングが9の時に、ライトイネーブルをon、かつ、セレクタ32で第２のＡＣＳ演算部31_2から出力される（２のｍmax乗）個のグループ化されたパスメトリック値を選択するように第２のパスメトリックメモリ制御部30がＡＣＳ選択信号を生成して、パスメトリックメモリ13の状態グループ２の領域に書き込みを行う。
但し、現在の全状態に対するＡＣＳ演算が完了するまでパスメトリックメモリ13に記録されている１シンボル前のパスメトリック値を更新することができないため、パスメトリックメモリ13は、現在の全状態のパスメトリック値と１シンボル前の全状態のパスメトリック値の両方を記録しておく等の工夫が必要とされる場合もある。
【００４１】
このように第２のパスメトリックメモリ制御部30で各状態グループに属する状態のパスメトリック値を１つのＡＣＳ演算部で順番に求めるように、リードアドレス、ライトイネーブル、ライトアドレス、ＡＣＳ選択信号を生成することにより、パスメトリックレジスタ43_sで用いるレジスタは１つの状態グループ分だけで用意すればよく、ＡＣＳ演算を状態グループに関係ない手順で行う場合と比べて小さい回路規模で構成できる。
そして、複数の状態のＡＣＳ演算を並列に行うことにより全状態に対するＡＣＳ演算時間を短縮化できるため、実施の形態１で示した誤り訂正装置よりも短時間で復号結果を得ることが可能である。
【００４２】
また、上述では、最尤選択部41_sより出力されるメトリックを、遅延器42_sで遅延処理した後に、パスメトリックレジスタ43_sで各状態へ遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化して出力する処理を実施したが、これらの処理の順番は入れ替えてもよい。つまり、各状態へ遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化して出力する処理を行った後に、遅延処理を行っても等価の処理が実施される。
なお、実施の形態１と同様に、正規化部22における正規化処理の際に、最尤状態検出部33において最尤状態のパスメトリック値を用いたが、その代わりに全2k-1個の状態の最大または最小のパスメトリック値を用いて正規化処理を行ってもパスメトリック値の発散を防ぐことが可能である。
【００４３】
また、上述では、各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎にグループ化してパスメトリック値を管理する方法について記述したが、実施の形態１と同様に、各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎のグループをｐ個（ｐは２以上の自然数）のグループに分けてパスメトリック値を管理しても良い。つまり、パスメトリック値を（２のｍmax乗）／ｐ個ずつのグループで管理しても良い。この場合も複数のｍの値に対して第２のＡＣＳ演算部31_1〜31_r、パスメトリックメモリ13、及び、第２のパスメモリ34を共用することが可能であるため、小さい回路規模で複数のｍの値に対応できる誤り訂正装置を得ることが可能である。そして、ＡＣＳ演算を（２のｍmax乗）個ずつ存在する枝メトリック選択部40_1_s〜40_（２のｍmax乗）_s（s∈{1,2,…,r}）、加算器21、正規化部22をそれぞれ１／ｐの数で実現できるため、回路規模をパスメトリック値を（２のｍmax乗）個ずつのグループで管理する場合より小さくすることが可能である。
【００４４】
一方、各同じ状態に遷移する（２のｍmax乗）個ずつの全候補の状態の集合毎のグループをｑグループ（ｑは２以上の自然数）ずつ更にグループ化してパスメトリック値を管理しても良い。つまり、パスメトリック値を（２のｍmax乗）×ｑ個ずつのグループで管理しても良い。この場合も複数のｍの値に対して第２のＡＣＳ演算部31_1〜31_r、パスメトリックメモリ13、及び、第２のパスメモリ34を共用することが可能であるため、小さい回路規模で複数のｍの値に対応できる誤り訂正装置を得ることが可能である。そして、ＡＣＳ演算を行う際にパスメトリックメモリへのアクセス回数をより少なくすることができ、時分割による全状態に対する合計のＡＣＳ演算時間をより短縮化することが可能であるため、より短時間で復号結果を得ることができる。
【００４５】
なお、本実施の形態２では、実施の形態１と同様に、最尤状態検出部33で求まる最尤状態情報を基にして第２のパスメモリ34で復号データを得る手順を説明したが、伝送する情報ビットに特殊なパターンを用いて既知の状態に収束させる処理を行う場合には、最尤状態情報の代わりにこの既知の状態を用いることにより、第２のパスメモリ34で復号データを得ることが可能である。
【産業上の利用可能性】
【００４６】
本発明は、小さい回路規模で１シンボル当りに伝送する情報ビット数が複数のシステムに対応でき、かつ、情報伝送速度の高速化を実現できるため、移動体通信システムや衛星通信システム等のディジタル通信システムへの適用に好適である。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施の形態１の誤り訂正装置の一構成図である。
【図２】１シンボル当りに伝送する情報ビット数ｍが２と３の場合のブロック化したトレリス遷移図である。
【図３】実施の形態１における第１のＡＣＳ演算部の一構成図である
【図４】本実施の形態１のｋ＝５、ｍ＝３の場合の動作タイミングチャート図である。
【図５】本実施の形態１のｋ＝５、ｍ＝２の場合の動作タイミングチャート図である。
【図６】本発明の実施の形態２の誤り訂正装置の一構成図である。
【図７】実施の形態２における第２のＡＣＳ演算部の一構成図である。
【図８】本実施の形態２のｋ＝５、ｍ＝３、ｒ＝２の場合の動作タイミングチャート図である。
【図９】本実施の形態２のｋ＝５、ｍ＝２、ｒ＝２の場合の動作タイミングチャート図である。
【図１０】従来のM-ary/SS方式の誤り訂正装置で想定しているブロック化したトレリス遷移図である。
【符号の説明】
【００４８】
10：時分割用カウンタ、11：第１のパスメトリックメモリ制御部、12：第１のＡＣＳ演算部、13：パスメトリックメモリ、14：最尤状態検出部、15：第１のパスメモリ、20_1〜20_（２のｍmax乗）：枝メトリック選択部、21：加算器、22：正規化部、23：最尤選択部、24：パスメトリックレジスタ、30：第２のパスメトリックメモリ制御部、31_1〜31_r：第２のＡＣＳ演算部、32：セレクタ、33：最尤状態検出部、34：第２のパスメモリ、40_1_s〜40_（２のｍmax乗）_s：枝メトリック選択部、41_s：最尤選択部、42_s：遅延器、43_s：パスメトリックレジスタ。
【図１】
2006211403.tif 000003
【図２】
2006211403.tif 000004
【図３】
2006211403.tif 000005
【図４】
2006211403.tif 000006
【図５】
2006211403.tif 000007
【図６】
2006211403.tif 000008
【図７】
2006211403.tif 000009
【図８】
2006211403.tif 000010
【図９】
2006211403.tif 000011
【図１０】
2006211403.tif 000012