(57)【特許請求の範囲】
【請求項１】
軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて復号を行う軟出力復号装置であって、
上記受信値毎に、符号の出力パターンと上記受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、
上記第１の対数尤度に基づいて、上記受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、
上記第１の対数尤度に基づいて、上記受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを備え、
上記第２の確率算出手段は、算出した複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が、該第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、上記第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、
上記第３の確率算出手段は、算出した複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が、該第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行い、上記第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有し、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のそれぞれの最上位ビットを反転し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のそれぞれの最上位ビットを反転する軟出力復号装置。
【請求項２】
上記第２の確率正規化手段は、算出した複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、次のタイムスロットにおいて、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、
上記第３の確率正規化手段は、算出した複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、次のタイムスロットにおいて、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行う請求項１記載の軟出力復号装置。
【請求項３】
上記第２の確率算出手段は、算出した複数の上記第２の対数尤度を１タイムスロットだけ保持する第２の確率保持手段を有し、上記第２の確率保持手段から読み出された上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、上記次のタイムスロットにおいて、上記正規化を行い、
上記第３の確率算出手段は、算出した複数の上記第３の対数尤度を１タイムスロットだけ保持する第３の確率保持手段を有し、上記第３の確率保持手段から読み出された上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、上記次のタイムスロットにおいて、上記正規化を行う請求項２記載の軟出力復号装置。
【請求項４】
上記第２の対数尤度及び上記第３の対数尤度を負値として扱い、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のうち、最大値を有するものが上記第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して上記第１の値を加算し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のうち、最大値を有するものが上記第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して上記第２の値を加算する請求項１記載の軟出力復号装置。
【請求項５】
上記第２の対数尤度及び上記第３の対数尤度を正値として扱い、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のうち、最小値を有するものが上記第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれから上記第１の値を減算し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のうち、最小値を有するものが上記第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれから上記第２の値を減算する請求項１記載の軟出力復号装置。
【請求項６】
上記第１の対数尤度と、上記第２の対数尤度と、上記第３の対数尤度とを用いて、各時刻における軟出力を対数表記した対数軟出力を算出する軟出力算出手段を備える請求項１記載の軟出力復号装置。
【請求項７】
上記軟出力算出手段から供給された上記対数軟出力と、事前確率情報とを用いて、外部情報を算出する外部情報算出手段を備える請求項６記載の軟出力復号装置。
【請求項８】
上記第１の対数尤度を、符号構成に応じたトレリス上の枝に対応するように分配する第１の確率分配手段を備える請求項１記載の軟出力復号装置。
【請求項９】
半導体基板に集積させて構成されている請求項１記載の軟出力復号装置。
【請求項１０】
畳み込み符号の復号を行う請求項１記載の軟出力復号装置。
【請求項１１】
Ｌｏｇ−ＢＣＪＲアルゴリズムに基づく最大事後確率復号を行う請求項１記載の軟出力復号装置。
【請求項１２】
軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて復号を行う軟出力復号方法であって、
上記受信値毎に、符号の出力パターンと上記受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、
上記第１の対数尤度に基づいて、上記受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、
上記第１の対数尤度に基づいて、上記受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを備え、
上記第２の確率算出工程は、算出された複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が、該第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、上記第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、
上記第３の確率算出工程は、算出された複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が、該第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行い、上記第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有し、
上記第２の確率正規化工程では、算出された複数の上記第２の対数尤度のそれぞれの最上位ビットが反転され、
上記第３の確率正規化工程では、算出された複数の上記第３の対数尤度のそれぞれの最上位ビットが反転される軟出力復号方法。
【請求項１３】
上記第２の確率正規化工程では、算出された複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、次のタイムスロットにおいて、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算が行われ、
上記第３の確率正規化工程では、算出された複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、次のタイムスロットにおいて、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算が行われる請求項１２記載の軟出力復号方法。
【請求項１４】
上記第２の確率算出工程では、算出された複数の上記第２の対数尤度を１タイムスロットだけ保持する第２の確率保持手段から読み出された上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、上記次のタイムスロットにおいて、上記正規化が行われ、
上記第３の確率算出工程では、算出された複数の上記第３の対数尤度を１タイムスロットだけ保持する第３の確率保持手段から読み出された上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、上記次のタイムスロットにおいて、上記正規化が行われる請求項１３記載の軟出力復号方法。
【請求項１５】
軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて、複数の要素符号をインターリーバを介して連接して生成された符号を繰り返し復号するための、上記要素符号に対応する復号装置であって、
上記受信値毎に、符号の出力パターンと上記受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、上記第１の対数尤度に基づいて、上記受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、上記第１の対数尤度に基づいて、上記受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを少なくとも有し、上記受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号手段と、
上記軟出力復号手段により生成された上記外部情報を入力し、上記インターリーバと同一の置換位置情報に基づいて、上記外部情報の順序を置換して並べ替える、又は、上記インターリーバにより並べ替えられた情報の配列を元に戻すように、上記外部情報の順序を置換して並べ替えるインターリーブ手段とを備え、
上記第２の確率算出手段は、算出した複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が、該第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、上記第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、
上記第３の確率算出手段は、算出した複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が、該第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行い、上記第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有し、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のそれぞれの最上位ビットを反転し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のそれぞれの最上位ビットを反転する復号装置。
【請求項１６】
上記第２の確率正規化手段は、算出した複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、次のタイムスロットにおいて、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、
上記第３の確率正規化手段は、算出した複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、次のタイムスロットにおいて、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行う請求項１５記載の復号装置。
【請求項１７】
上記第２の確率算出手段は、算出した複数の上記第２の対数尤度を１タイムスロットだけ保持する第２の確率保持手段を有し、上記第２の確率保持手段から読み出された上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、上記次のタイムスロットにおいて、上記正規化を行い、
上記第３の確率算出手段は、算出した複数の上記第３の対数尤度を１タイムスロットだけ保持する第３の確率保持手段を有し、上記第３の確率保持手段から読み出された上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、上記次のタイムスロットにおいて、上記正規化を行う請求項１６記載の復号装置。
【請求項１８】
上記軟出力復号手段は、上記第２の対数尤度及び上記第３の対数尤度を負値として扱い、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のうち、最大値を有するものが上記第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して上記第１の値を加算し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のうち、最大値を有するものが上記第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して上記第２の値を加算する請求項１５記載の復号装置。
【請求項１９】
上記軟出力復号手段は、上記第２の対数尤度及び上記第３の対数尤度を正値として扱い、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のうち、最小値を有するものが上記第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれから上記第１の値を減算し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のうち、最小値を有するものが上記第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれから上記第２の値を減算する請求項１５記載の復号装置。
【請求項２０】
上記軟出力復号手段は、上記第１の対数尤度と、上記第２の対数尤度と、上記第３の対数尤度とを用いて、各時刻における軟出力を対数表記した対数軟出力を算出する軟出力算出手段を有する請求項１５記載の復号装置。
【請求項２１】
上記軟出力復号手段は、上記軟出力算出手段から供給された上記対数軟出力と、事前確率情報とを用いて、外部情報を算出する外部情報算出手段を有する請求項２０記載の復号装置。
【請求項２２】
上記第１の対数尤度を、符号構成に応じたトレリス上の枝に対応するように分配する第１の確率分配手段を備える請求項１５記載の復号装置。
【請求項２３】
半導体基板に集積させて構成されている請求項１５記載の復号装置。
【請求項２４】
並列連接符号化、縦列連接符号化、並列連接符号化変調又は縦列連接符号化変調がなされた符号を繰り返し復号するためのものである請求項１５記載の復号装置。
【請求項２５】
上記要素符号は、畳み込み符号である請求項２４記載の復号装置。
【請求項２６】
上記軟出力復号手段は、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づく最大事後確率復号を行う請求項１５記載の復号装置。
【請求項２７】
軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて、複数の要素符号を第１のインターリーブ工程を介して連接して生成された符号を繰り返し復号するための、上記要素符号に対応する復号方法であって、
上記受信値毎に、符号の出力パターンと上記受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、上記第１の対数尤度に基づいて、上記受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、上記第１の対数尤度に基づいて、上記受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを少なくとも有し、上記受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号工程と、
上記軟出力復号工程にて生成された上記外部情報を入力し、上記第１のインターリーブ工程と同一の置換位置情報に基づいて、上記外部情報の順序を置換して並べ替える、又は、上記第１のインターリーブ工程にて並べ替えられた情報の配列を元に戻すように、上記外部情報の順序を置換して並べ替える第２のインターリーブ工程とを備え、
上記第２の確率算出工程は、算出された複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が、該第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、上記第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、
上記第３の確率算出工程は、算出された複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が、該第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行い、上記第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有し、
上記第２の確率正規化工程では、算出された複数の上記第２の対数尤度のそれぞれの最上位ビットが反転され、
上記第３の確率正規化工程では、算出された複数の上記第３の対数尤度のそれぞれの最上位ビットが反転される復号方法。
【請求項２８】
上記第２の確率正規化工程では、算出された複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、次のタイムスロットにおいて、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算が行われ、
上記第３の確率正規化工程では、算出された複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、次のタイムスロットにおいて、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算が行われる請求項２７記載の復号方法。
【請求項２９】
上記第２の確率算出工程では、算出された複数の上記第２の対数尤度を１タイムスロットだけ保持する第２の確率保持手段から読み出された上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、上記次のタイムスロットにおいて、上記正規化が行われ、
上記第３の確率算出工程では、算出された複数の上記第３の対数尤度を１タイムスロットだけ保持する第３の確率保持手段から読み出された上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、上記次のタイムスロットにおいて、上記正規化が行われる請求項２８記載の復号方法。
【請求項３０】
軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて、複数の要素符号をインターリーバを介して連接して生成された符号を繰り返し復号する復号装置であって、
当該復号装置は、連接された複数の要素復号器からなり、
上記要素復号器は、それぞれ、
上記受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号手段と、
上記軟出力復号手段により生成された上記外部情報を入力し、上記インターリーバと同一の置換位置情報に基づいて、上記外部情報の順序を置換して並べ替える、又は、上記インターリーバにより並べ替えられた情報の配列を元に戻すように、上記外部情報の順序を置換して並べ替えるインターリーブ手段とを備え、
上記軟出力復号手段は、
上記受信値毎に、符号の出力パターンと上記受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、
上記第１の対数尤度に基づいて、上記受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、
上記第１の対数尤度に基づいて、上記受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを有し、
上記第２の確率算出手段は、算出した複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が、該第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、上記第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、
上記第３の確率算出手段は、算出した複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が、該第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行い、上記第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有し、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のそれぞれの最上位ビットを反転し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のそれぞれの最上位ビットを反転する復号装置。
【請求項３１】
上記第２の確率正規化手段は、算出した複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、次のタイムスロットにおいて、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、
上記第３の確率正規化手段は、算出した複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、次のタイムスロットにおいて、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行う請求項３０記載の復号装置。
【請求項３２】
上記第２の確率算出手段は、算出した複数の上記第２の対数尤度を１タイムスロットだけ保持する第２の確率保持手段を有し、上記第２の確率保持手段から読み出された上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、上記次のタイムスロットにおいて、上記正規化を行い、
上記第３の確率算出手段は、算出した複数の上記第３の対数尤度を１タイムスロットだけ保持する第３の確率保持手段を有し、上記第３の確率保持手段から読み出された上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、上記次のタイムスロットにおいて、上記正規化を行う請求項３１記載の復号装置。
【請求項３３】
上記軟出力復号手段は、上記第２の対数尤度及び上記第３の対数尤度を負値として扱い、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のうち、最大値を有するものが上記第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して上記第１の値を加算し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のうち、最大値を有するものが上記第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して上記第２の値を加算する請求項３０記載の復号装置。
【請求項３４】
上記軟出力復号手段は、上記第２の対数尤度及び上記第３の対数尤度を正値として扱い、
上記第２の確率正規化手段は、算出された複数の上記第２の対数尤度のうち、最小値を有するものが上記第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれから上記第１の値を減算し、
上記第３の確率正規化手段は、算出された複数の上記第３の対数尤度のうち、最小値を有するものが上記第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれから上記第２の値を減算する請求項３０記載の復号装置。
【請求項３５】
上記軟出力復号手段は、上記第１の対数尤度と、上記第２の対数尤度と、上記第３の対数尤度とを用いて、各時刻における軟出力を対数表記した対数軟出力を算出する軟出力算出手段を有する請求項３０記載の復号装置。
【請求項３６】
上記軟出力復号手段は、上記軟出力算出手段から供給された上記対数軟出力と、事前確率情報とを用いて、外部情報を算出する外部情報算出手段を有する請求項３５記載の復号装置。
【請求項３７】
上記第１の対数尤度を、符号構成に応じたトレリス上の枝に対応するように分配する第１の確率分配手段を備える請求項３０記載の復号装置。
【請求項３８】
上記要素復号器は、上記要素符号の数と上記繰り返し復号の繰り返し回数との積で表される数だけ連接される請求項３０記載の復号装置。
【請求項３９】
上記要素復号器は、半導体基板に集積させて構成されている請求項３０記載の復号装置。
【請求項４０】
並列連接符号化、縦列連接符号化、並列連接符号化変調又は縦列連接符号化変調がなされた符号を繰り返し復号する請求項３０記載の復号装置。
【請求項４１】
上記要素符号は、畳み込み符号である請求項４０記載の復号装置。
【請求項４２】
上記軟出力復号手段は、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づく最大事後確率復号を行う請求項３０記載の復号装置。
【請求項４３】
軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、上記対数尤度を用いて、複数の要素符号を第１のインターリーブ工程を介して連接して生成された符号を繰り返し復号する復号方法であって、
当該復号方法は、複数の要素復号工程が連続して行われるものであり、
上記要素復号工程は、それぞれ、
上記受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号工程と、
上記軟出力復号工程にて生成された上記外部情報を入力し、上記第１のインターリーブ工程と同一の置換位置情報に基づいて、上記外部情報の順序を置換して並べ替える、又は、上記第１のインターリーブ工程にて並べ替えられた情報の配列を元に戻すように、上記外部情報の順序を置換して並べ替える第２のインターリーブ工程とを備え、
上記軟出力復号工程は、
上記受信値毎に、符号の出力パターンと上記受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、
上記第１の対数尤度に基づいて、上記受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、
上記第１の対数尤度に基づいて、上記受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを有し、
上記第２の確率算出工程は、算出された複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が、該第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算を行い、上記第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、
上記第３の確率算出工程は、算出された複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が、該第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算を行い、上記第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有し、
上記第２の確率正規化工程では、算出された複数の上記第２の対数尤度のそれぞれの最上位ビットが反転され、
上記第３の確率正規化工程では、算出された複数の上記第３の対数尤度のそれぞれの最上位ビットが反転される復号方法。
【請求項４４】
上記第２の確率正規化工程では、算出された複数の上記第２の対数尤度のうち、上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、次のタイムスロットにおいて、複数の上記第２の対数尤度のそれぞれに対して、上記第１の値を用いた演算が行われ、
上記第３の確率正規化工程では、算出された複数の上記第３の対数尤度のうち、上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、次のタイムスロットにおいて、複数の上記第３の対数尤度のそれぞれに対して、上記第２の値を用いた演算が行われる請求項４３記載の復号方法。
【請求項４５】
上記第２の確率算出工程では、算出された複数の上記第２の対数尤度を１タイムスロットだけ保持する第２の確率保持手段から読み出された上記第２の確率が最大のメトリックに対応する第２の対数尤度が上記第１の値を超過したときに、上記次のタイムスロットにおいて、上記正規化が行われ、
上記第３の確率算出工程では、算出された複数の上記第３の対数尤度を１タイムスロットだけ保持する第３の確率保持手段から読み出された上記第３の確率が最大のメトリックに対応する第３の対数尤度が上記第２の値を超過したときに、上記次のタイムスロットにおいて、上記正規化が行われる請求項４４記載の復号方法。
【請求項４６】
上記要素復号工程は、上記要素符号の数と上記繰り返し復号の繰り返し回数との積で表される数だけ行われる請求項４３記載の復号方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、軟出力復号を行う軟出力復号装置及び軟出力復号方法、並びに、繰り返し復号に適した復号装置及び復号方法に関する。
【０００２】
【従来の技術】
近年、連接符号における内符号の復号出力や繰り返し復号法における各繰り返し復号動作の出力を軟出力とすることで、シンボル誤り率を小さくする研究がなされており、それに適した復号法に関する研究が盛んに行われている。例えば畳み込み符号等の所定の符号を復号した際のシンボル誤り率を最小にする方法としては、「Bahl, Cocke, Jelinek and Raviv, “Optimal decoding of linear codes for minimizing symbol error rate”, IEEE Trans. Inf. Theory, vol. IT-20, pp. 284-287, Mar. 1974」に記載されているＢＣＪＲアルゴリズムが知られている。このＢＣＪＲアルゴリズムにおいては、復号結果として各シンボルを出力するのではなく、各シンボルの尤度を出力する。このような出力は、軟出力（soft-output）と呼ばれる。以下、このＢＣＪＲアルゴリズムの内容について説明する。なお、以下の説明では、図１１２に示すように、ディジタル情報を図示しない送信装置が備える符号化装置１００１により畳み込み符号化し、その出力を雑音のある無記憶通信路１００２を介して図示しない受信装置に入力して、この受信装置が備える復号装置１００３により復号し、観測する場合を考える。
【０００３】
まず、符号化装置１００１が備えるシフトレジスタの内容を表すＭ個のステート（遷移状態）をｍ（０，１，・・・，Ｍ−１）で表し、時刻ｔのステートをＳtで表す。また、１タイムスロットにｋビットの情報が入力されるものとすると、時刻ｔにおける入力をｉt＝（ｉt1，ｉt2，・・・，ｉtk）で表し、入力系統をＩ1T＝（ｉ1，ｉ2，・・・，ｉT）で表す。このとき、ステートｍ’からステートｍへの遷移がある場合には、その遷移に対応する情報ビットをｉ（ｍ’，ｍ）＝（ｉ1（ｍ’，ｍ），ｉ2（ｍ’，ｍ），・・・，ｉk（ｍ’，ｍ））で表す。さらに、１タイムスロットにｎビットの符号が出力されるものとすると、時刻ｔにおける出力をｘt＝（ｘt1，ｘt2，・・・，ｘtn）で表し、出力系統をＸ1T＝（ｘ1，ｘ2，・・・，ｘT）で表す。このとき、ステートｍ’からステートｍへの遷移がある場合には、その遷移に対応する符号ビットをｘ（ｍ’，ｍ）＝（ｘ1（ｍ’，ｍ），ｘ2（ｍ’，ｍ），・・・，ｘn（ｍ’，ｍ））で表す。
【０００４】
符号化装置１００１による畳み込み符号化は、ステートＳ0＝０から始まり、Ｘ1Tを出力してＳT＝０で終了するものとする。ここで、各ステート間の遷移確率Ｐt（ｍ｜ｍ’）を次式（１）により定義する。
【０００５】
【数１】
0004543522.tif 000002
【０００６】
なお、上式（１）における右辺に示すＰｒ｛Ａ｜Ｂ｝は、Ｂが生じた条件の下でのＡが生じる条件付き確率である。この遷移確率Ｐt（ｍ｜ｍ’）は、次式（２）に示すように、入力ｉでステートｍ’からステートｍへと遷移するときに、時刻ｔでの入力ｉtがｉである確率Ｐｒ｛ｉt＝ｉ｝と等しいものである。
【０００７】
【数２】
0004543522.tif 000003
【０００８】
雑音のある無記憶通信路１００２は、Ｘ1Tを入力とし、Ｙ1Tを出力する。ここで、１タイムスロットにｎビットの受信値が出力されるものとすると、時刻ｔにおける出力をｙt＝（ｙt1，ｙt2，・・・，ｙtn）で表し、Ｙ1T＝（ｙ1，ｙ2，・・・，ｙT）で表す。雑音のある無記憶通信路１００２の遷移確率は、全てのｔ（１≦ｔ≦Ｔ）について、次式（３）に示すように、各シンボルの遷移確率Ｐｒ｛ｙj｜ｘj｝を用いて定義することができる。
【０００９】
【数３】
0004543522.tif 000004
【００１０】
ここで、次式（４）のようにλtjを定義する。この次式（４）に示すλtjは、Ｙ1Tを受信した際の時刻ｔでの入力情報の尤度を表し、本来求めるべき軟出力である。
【００１１】
【数４】
0004543522.tif 000005
【００１２】
ＢＣＪＲアルゴリズムにおいては、次式（５）乃至次式（７）に示すような確率αt，βt及びγtを定義する。なお、Ｐｒ｛Ａ；Ｂ｝は、ＡとＢとがともに生じる確率を表すものとする。
【００１３】
【数５】
0004543522.tif 000006
【００１４】
【数６】
0004543522.tif 000007
【００１５】
【数７】
0004543522.tif 000008
【００１６】
ここで、これらの確率αt，βt及びγtの内容について、符号化装置１００１における状態遷移図であるトレリスを図１１３を用いて説明する。同図において、αt-1は、符号化開始ステートＳ0＝０から受信値をもとに時系列順に算出した時刻ｔ−１における各ステートの通過確率に対応する。また、βtは、符号化終了ステートＳT＝０から受信値をもとに時系列の逆順に算出した時刻ｔにおける各ステートの通過確率に対応する。さらに、γtは、時刻ｔにおける受信値と入力確率とをもとに算出した時刻ｔにステート間を遷移する各枝の出力の受信確率に対応する。
【００１７】
これらの確率αt，βt及びγtを用いると、軟出力λtjは、次式（８）のように表すことができる。
【００１８】
【数８】
0004543522.tif 000009
【００１９】
ところで、ｔ＝１，２，・・・，Ｔについて、次式（９）が成立する。
【００２０】
【数９】
0004543522.tif 000010
【００２１】
同様に、ｔ＝１，２，・・・，Ｔについて、次式（１０）が成立する。
【００２２】
【数１０】
0004543522.tif 000011
【００２３】
さらに、γtについて、次式（１１）が成立する。
【００２４】
【数１１】
0004543522.tif 000012
【００２５】
したがって、復号装置１００３は、ＢＣＪＲアルゴリズムを適用して軟出力復号を行う場合には、これらの関係に基づいて、図１１４に示す一連の工程を経ることにより軟出力λtを求める。
【００２６】
まず、復号装置１００３は、同図に示すように、ステップＳ１００１において、ｙtを受信する毎に、上式（９）及び上式（１１）を用いて、確率αt（ｍ）及びγt（ｍ’，ｍ）を算出する。
【００２７】
続いて、復号装置１００３は、ステップＳ１００２において、系列Ｙ1Tの全てを受信した後に、上式（１０）を用いて、全ての時刻ｔにおける各ステートｍについて、確率βt（ｍ）を算出する。
【００２８】
そして、復号装置１００３は、ステップＳ１００３において、ステップＳ１００１及びステップＳ１００２において算出した確率αt，βt及びγtを上式（８）に代入し、各時刻ｔにおける軟出力λtを算出する。
【００２９】
復号装置１００３は、このような一連の処理を経ることによって、ＢＣＪＲアルゴリズムを適用した軟出力復号を行うことができる。
【００３０】
ところで、このようなＢＣＪＲアルゴリズムにおいては、確率を直接値として保持して演算を行う必要があり、積演算を含むために演算量が大きいという問題があった。そこで、演算量を削減する手法として、「Robertson, Villebrun and Hoeher, “A comparison of optimal and sub-optimal MAP decoding algorithms operating in the domain”, IEEE Int. Conf. on Communications, pp. 1009-1013, June 1995」に記載されているＭａｘ−Ｌｏｇ−ＭＡＰアルゴリズム及びＬｏｇ−ＭＡＰアルゴリズム（以下、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズム及びＬｏｇ−ＢＣＪＲアルゴリズムと称する。）がある。
【００３１】
まず、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムについて説明する。Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムは、確率αt，βt並びにγt、及び軟出力λtを自然対数を用いて対数表記し、次式（１２）に示すように、確率の積演算を対数の和演算に置き換えるとともに、次式（１３）に示すように、確率の和演算を対数の最大値演算で近似するものである。なお、次式（１３）に示すｍａｘ（ｘ，ｙ）は、ｘ，ｙのうち大きい値を有するものを選択する関数である。
【００３２】
【数１２】
0004543522.tif 000013
【００３３】
【数１３】
0004543522.tif 000014
【００３４】
ここで、記載を簡略化するため、自然対数をＩと略記し、αt，βt，γt，λtの自然対数値を、それぞれ、次式（１４）に示すように、Ｉαt，Ｉβt，Ｉγt，Ｉλtと表すものとする。なお、次式（１４）に示すｓｇｎは、正負を識別する符号を示す定数、すなわち、“＋１”又は“−１”のいずれかである。
【００３５】
【数１４】
0004543522.tif 000015
【００３６】
このような定数ｓｇｎを与える理由としては、主に、確率αt，βt，γtが０乃至１の値をとることから、一般に算出される対数尤度（log likelihood）Ｉαt，Ｉβt，Ｉγtが負値をとることにある。
【００３７】
例えば、復号装置１００３がソフトウェアとして構成される場合には、正負いずれの値をも処理可能であるため、定数ｓｇｎは“＋１”又は“−１”のいずれであってもよいが、復号装置１００３がハードウェアとして構成される場合には、ビット数の削減を目的として、算出される負値の正負識別符号を反転して正値として扱う方が望ましい。
【００３８】
すなわち、定数ｓｇｎは、復号装置１００３が対数尤度として負値のみを扱う系として構成される場合には、“＋１”をとり、復号装置１００３が対数尤度として正値のみを扱う系として構成される場合には、“−１”をとる。以下では、このような定数ｓｇｎを考慮したアルゴリズムの説明を行うものとする。
【００３９】
Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムにおいては、これらの対数尤度Ｉαt，Ｉβt，Ｉγtを、それぞれ、次式（１５）乃至次式（１７）に示すように近似する。ここで、次式（１５）及び次式（１６）に示すｍｓｇｎ（ｘ，ｙ）は、定数ｓｇｎが“＋１”の場合には、ｘ，ｙのうち大きい値を有するものを選択する関数ｍａｘ（ｘ，ｙ）を示し、定数ｓｇｎが“−１”の場合には、ｘ，ｙのうち小さい値を有するものを選択する関数ｍｉｎ（ｘ，ｙ）を示すものである。次式（１５）における右辺のステートｍ’における関数ｍｓｇｎは、ステートｍへの遷移が存在するステートｍ’の中で求めるものとし、次式（１６）における右辺のステートｍ’における関数ｍｓｇｎは、ステートｍからの遷移が存在するステートｍ’の中で求めるものとする。
【００４０】
【数１５】
0004543522.tif 000016
【００４１】
【数１６】
0004543522.tif 000017
【００４２】
【数１７】
0004543522.tif 000018
【００４３】
また、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムにおいては、対数軟出力Ｉλtについても同様に、次式（１８）に示すように近似する。ここで、次式（１８）における右辺第１項の関数ｍｓｇｎは、入力が“１”のときにステートｍへの遷移が存在するステートｍ’の中で求め、第２項の関数ｍｓｇｎは、入力が“０”のときにステートｍへの遷移が存在するステートｍ’の中で求めるものとする。
【００４４】
【数１８】
0004543522.tif 000019
【００４５】
したがって、復号装置１００３は、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムを適用して軟出力復号を行う場合には、これらの関係に基づいて、図１１５に示す一連の工程を経ることにより軟出力λtを求める。
【００４６】
まず、復号装置１００３は、同図に示すように、ステップＳ１０１１において、ｙtを受信する毎に、上式（１５）及び上式（１７）を用いて、対数尤度Ｉαt（ｍ）及びＩγt（ｍ’，ｍ）を算出する。
【００４７】
続いて、復号装置１００３は、ステップＳ１０１２において、系列Ｙ1Tの全てを受信した後に、上式（１６）を用いて、全ての時刻ｔにおける各ステートｍについて、対数尤度Ｉβt（ｍ）を算出する。
【００４８】
そして、復号装置１００３は、ステップＳ１０１３において、ステップＳ１０１１及びステップＳ１０１２において算出した対数尤度Ｉαt，Ｉβt及びＩγtを上式（１８）に代入し、各時刻ｔにおける対数軟出力Ｉλtを算出する。
【００４９】
復号装置１００３は、このような一連の処理を経ることによって、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムを適用した軟出力復号を行うことができる。
【００５０】
このように、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムは、積演算が含まれないことから、ＢＣＪＲアルゴリズムと比較して、演算量を大幅に削減することができる。
【００５１】
つぎに、Ｌｏｇ−ＢＣＪＲアルゴリズムについて説明する。Ｌｏｇ−ＢＣＪＲアルゴリズムは、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムによる近似の精度をより向上させたものである。具体的には、Ｌｏｇ−ＢＣＪＲアルゴリズムは、上式（１３）に示した確率の和演算を次式（１９）に示すように補正項を追加することで変形し、和演算の正確な対数値を求めるものである。ここでは、このような補正をｌｏｇ−ｓｕｍ補正と称するものとする。
【００５２】
【数１９】
0004543522.tif 000020
【００５３】
ここで、上式（１９）における左辺に示す演算をｌｏｇ−ｓｕｍ演算と称するものとし、このｌｏｇ−ｓｕｍ演算の演算子を、「S. S. Pietrobon, “Implemntation and performance of a turbo/MAP decoder”, Int. J. Satellite Commun., vol. 16, pp. 23-46, Jan.-Feb. 1998」に記載されている記数法を踏襲し、次式（２０）に示すように、便宜上“＃”（ただし、同論文中では、“Ｅ”。）と表すものとする。
【００５４】
【数２０】
0004543522.tif 000021
【００５５】
なお、上式（１９）及び上式（２０）は、上述した定数ｓｇｎが“＋１”の場合を示している。定数ｓｇｎが“−１”の場合には、上式（１９）及び上式（２０）に相当する演算は、それぞれ、次式（２１）及び次式（２２）に示すようになる。
【００５６】
【数２１】
0004543522.tif 000022
【００５７】
【数２２】
0004543522.tif 000023
【００５８】
さらに、ｌｏｇ−ｓｕｍ演算の累積加算演算の演算子を、次式（２３）に示すように、“＃Σ”（ただし、同論文中では、“Ｅ”。）と表すものとする。
【００５９】
【数２３】
0004543522.tif 000024
【００６０】
これらの演算子を用いると、Ｌｏｇ−ＢＣＪＲアルゴリズムにおける対数尤度Ｉαt，Ｉβt及び対数軟出力Ｉλtは、それぞれ、次式（２４）乃至次式（２６）に示すように表すことができる。なお、対数尤度Ｉγtは、上式（１７）で表されるため、ここでは、その記述を省略する。
【００６１】
【数２４】
0004543522.tif 000025
【００６２】
【数２５】
0004543522.tif 000026
【００６３】
【数２６】
0004543522.tif 000027
【００６４】
なお、上式（２４）における右辺のステートｍ’におけるｌｏｇ−ｓｕｍ演算の累積加算演算は、ステートｍへの遷移が存在するステートｍ’の中で求めるものとし、上式（２５）における右辺のステートｍ’におけるｌｏｇ−ｓｕｍ演算の累積加算演算は、ステートｍからの遷移が存在するステートｍ’の中で求めるものとする。また、上式（２６）における右辺第１項のｌｏｇ−ｓｕｍ演算の累積加算演算は、入力が“１”のときにステートｍへの遷移が存在するステートｍ’の中で求め、第２項のｌｏｇ−ｓｕｍ演算の累積加算演算は、入力が“０”のときにステートｍへの遷移が存在するステートｍ’の中で求めるものとする。
【００６５】
したがって、復号装置１００３は、Ｌｏｇ−ＢＣＪＲアルゴリズムを適用して軟出力復号を行う場合には、これらの関係に基づいて、先に図１１５に示した一連の工程を経ることにより軟出力λtを求めることができる。
【００６６】
まず、復号装置１００３は、同図に示すように、ステップＳ１０１１において、ｙtを受信する毎に、上式（２４）及び上式（１７）を用いて、対数尤度Ｉαt（ｍ）及びＩγt（ｍ’，ｍ）を算出する。
【００６７】
続いて、復号装置１００３は、ステップＳ１０１２において、系列Ｙ1Tの全てを受信した後に、上式（２５）を用いて、全ての時刻ｔにおける各ステートｍについて、対数尤度Ｉβt（ｍ）を算出する。
【００６８】
そして、復号装置１００３は、ステップＳ１０１３において、ステップＳ１０１１及びステップＳ１０１２において算出した対数尤度Ｉαt，Ｉβt及びＩγtを上式（２６）に代入し、各時刻ｔにおける対数軟出力Ｉλtを算出する。
【００６９】
復号装置１００３は、このような一連の処理を経ることによって、Ｌｏｇ−ＢＣＪＲアルゴリズムを適用した軟出力復号を行うことができる。なお、上式（１９）及び上式（２１）において、右辺第２項に示す補正項は、変数｜ｘ−ｙ｜に対する１次元の関数で表されることから、復号装置１００３は、この値を図示しないＲＯＭ（Read Only Memory）等にテーブルとして予め記憶させておくことによって、正確な確率計算を行うことができる。
【００７０】
このようなＬｏｇ−ＢＣＪＲアルゴリズムは、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムと比較すると演算量は増えるものの積演算を含むものではなく、その出力は、量子化誤差を除けば、ＢＣＪＲアルゴリズムの軟出力の対数値そのものに他ならない。
【００７１】
【発明が解決しようとする課題】
ところで、上述したＢＣＪＲアルゴリズム、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズム又はＬｏｇ−ＢＣＪＲアルゴリズムは、畳み込み符号等のトレリス符号の復号を可能とするアルゴリズムであるが、このトレリス符号を要素符号とし、複数の要素符号化器をインターリーバを介して連接することにより生成される符号の復号にも適用することができる。すなわち、ＢＣＪＲアルゴリズム、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズム又はＬｏｇ−ＢＣＪＲアルゴリズムは、並列連接畳み込み符号（Parallel Concatenated Convolutional Codes；以下、ＰＣＣＣと記す。）又は縦列連接畳み込み符号（Serially Concatenated Convolutional Codes；以下、ＳＣＣＣと記す。）や、これらのＰＣＣＣ又はＳＣＣＣを応用して多値変調と組み合わせ、信号点の配置と誤り訂正符号の復号特性とを統括して考慮するターボ符号化変調（Turbo Trellis Coded Modulation；以下、ＴＴＣＭと記す。）又は縦列連接符号化変調（Serial Concatenated Trellis Coded Modulation；以下、ＳＣＴＣＭと記す。）の復号に適用することができる。
【００７２】
これらのＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭを復号する復号装置は、ＢＣＪＲアルゴリズム、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズム又はＬｏｇ−ＢＣＪＲアルゴリズムに基づく最大事後確率（Maximum A Posteriori probability；ＭＡＰ）復号を行う複数の復号器の間で、いわゆる繰り返し復号を行うことになる。
【００７３】
ここで、Ｌｏｇ−ＢＣＪＲアルゴリズムにおいては、一般に、対数尤度同士の差分値のみが結果に影響し、対数尤度の値が大きいものほど重要度が高い。
【００７４】
しかしながら、対数尤度Ｉα，Ｉβは、算出される過程において、時刻の経過とともに値の分布に偏りを生じ、一定時間の経過後には、対数尤度Ｉα，Ｉβを算出する系が表現可能な値の範囲を超過してしまうことがある。
【００７５】
例えば、対数尤度Ｉα，Ｉβをハードウェアのように正値のみを扱う系により算出する場合には、対数尤度Ｉα，Ｉβの値は、それぞれ、徐々に増大していき、一定時間の経過後には、ハードウェアが表現可能な値の範囲を超過してしまう。また、対数尤度Ｉα，Ｉβを浮動小数点演算を行う系のように負値のみを扱う系により算出する場合を考えると、この場合には、対数尤度Ｉα，Ｉβの値は、それぞれ、徐々に減少していき、一定時間の経過後には、ソフトウェアとして表現可能な値の範囲を超過してしまう。
【００７６】
このように、対数尤度Ｉα，Ｉβが表現可能な値の範囲を超過してしまい、当該表現可能な値の範囲を超過した対数尤度Ｉα，Ｉβは、それぞれ、クリップされることになる。したがって、復号装置においては、対数尤度Ｉα，Ｉβがクリップされてしまうことから、適切な対数尤度同士の差分を表現することが困難となる場合があった。
【００７７】
本発明は、このような実情に鑑みてなされたものであり、算出される対数尤度Ｉα，Ｉβが表現可能な値の範囲を超過するのを回避して高精度に復号を行うことができる軟出力復号装置及び軟出力復号方法を提供することを目的とする。また、本発明は、算出される対数尤度Ｉα，Ｉβが表現可能な値の範囲を超過するのを回避して高精度に復号を行うことができる繰り返し復号に適した復号装置及び復号方法を提供することを目的とする。
【００７８】
【課題を解決するための手段】
上述した目的を達成する本発明にかかる軟出力復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて復号を行う軟出力復号装置であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを備え、第２の確率算出手段は、算出した複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、第３の確率算出手段は、算出した複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有し、第２の確率正規化手段は、算出された複数の第２の対数尤度のそれぞれの最上位ビットを反転し、第３の確率正規化手段は、算出された複数の第３の対数尤度のそれぞれの最上位ビットを反転する。
【００７９】
このような本発明にかかる軟出力復号装置は、第２の確率算出手段における第２の確率正規化手段によって、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を施して正規化を行うとともに、第３の確率算出手段における第３の確率正規化手段によって、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を施して正規化を行う。
【００８０】
また、上述した目的を達成する本発明にかかる軟出力復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて復号を行う軟出力復号方法であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを備え、第２の確率算出工程は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、第３の確率算出工程は、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有し、第２の確率正規化工程では、算出された複数の第２の対数尤度のそれぞれの最上位ビットが反転され、第３の確率正規化工程では、算出された複数の第３の対数尤度のそれぞれの最上位ビットが反転される。
【００８１】
このような本発明にかかる軟出力復号方法は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を施して正規化を行うとともに、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を施して正規化を行う。
【００８２】
また、上述した目的を達成する本発明にかかる復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーバを介して連接して生成された符号を繰り返し復号するための、要素符号に対応する復号装置であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを少なくとも有し、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号手段と、この軟出力復号手段により生成された外部情報を入力し、インターリーバと同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、インターリーバにより並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替えるインターリーブ手段とを備え、第２の確率算出手段は、算出した複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、第１の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、第３の確率算出手段は、算出した複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有し、第２の確率正規化手段は、算出された複数の第２の対数尤度のそれぞれの最上位ビットを反転し、第３の確率正規化手段は、算出された複数の第３の対数尤度のそれぞれの最上位ビットを反転する。
【００８３】
このような本発明にかかる復号装置は、第２の確率算出手段における第２の確率正規化手段によって、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を施して正規化を行うとともに、第３の確率算出手段における第３の確率正規化手段によって、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を施して正規化を行い、軟出力復号を行う。
【００８４】
また、上述した目的を達成する本発明にかかる復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号を第１のインターリーブ工程を介して連接して生成された符号を繰り返し復号するための、要素符号に対応する復号方法であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを少なくとも有し、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号工程と、この軟出力復号工程にて生成された外部情報を入力し、第１のインターリーブ工程と同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、第１のインターリーブ工程にて並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替える第２のインターリーブ工程とを備え、第２の確率算出工程は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の上記第２の対数尤度のそれぞれに対して、第１の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、第３の確率算出工程は、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有し、第２の確率正規化工程では、算出された複数の第２の対数尤度のそれぞれの最上位ビットが反転され、第３の確率正規化工程では、算出された複数の第３の対数尤度のそれぞれの最上位ビットが反転される。
【００８５】
このような本発明にかかる復号方法は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を施して正規化を行うとともに、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を施して正規化を行い、軟出力復号を行う。
【００８６】
また、上述した目的を達成する本発明にかかる復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーバを介して連接して生成された符号を繰り返し復号する復号装置であって、当該復号装置は、連接された複数の要素復号器からなり、要素復号器は、それぞれ、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号手段と、軟出力復号手段により生成された外部情報を入力し、インターリーバと同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、インターリーバにより並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替えるインターリーブ手段とを備え、軟出力復号手段は、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを有し、第２の確率算出手段は、算出した複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、第３の確率算出手段は、算出した複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有し、第２の確率正規化手段は、算出された複数の第２の対数尤度のそれぞれの最上位ビットを反転し、第３の確率正規化手段は、算出された複数の第３の対数尤度のそれぞれの最上位ビットを反転する。
【００８７】
このような本発明にかかる復号装置は、繰り返し復号を行う際に、第２の確率算出手段における第２の確率正規化手段によって、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度がこの第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を施して正規化を行うとともに、第３の確率算出手段における第３の確率正規化手段によって、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を施して正規化を行い、軟出力復号を行う。
【００８８】
また、上述した目的を達成する本発明にかかる復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号を第１のインターリーブ工程を介して連接して生成された符号を繰り返し復号する復号方法であって、当該復号方法は、複数の要素復号工程が連続して行われるものであり、これらの要素復号工程は、それぞれ、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号工程と、軟出力復号工程にて生成された外部情報を入力し、第１のインターリーブ工程と同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、第１のインターリーブ工程にて並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替える第２のインターリーブ工程とを備え、軟出力復号工程は、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを有し、第２の確率算出工程は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、第３の確率算出工程は、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有し、第２の確率正規化工程では、算出された複数の第２の対数尤度のそれぞれの最上位ビットが反転され、第３の確率正規化工程では、算出された複数の上記第３の対数尤度のそれぞれの最上位ビットが反転される。
【００８９】
このような本発明にかかる復号方法は、繰り返し復号を行う際に、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が、この第２の対数尤度のダイナミックレンジの１／２である第１の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、第１の値を用いた演算を施して正規化を行うとともに、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が、この第３の対数尤度のダイナミックレンジの１／２である第２の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、第２の値を用いた演算を施して正規化を行い、軟出力復号を行う。
【００９０】
【発明の実施の形態】
以下、本発明を適用した具体的な実施の形態について図面を参照しながら詳細に説明する。
【００９１】
この実施の形態は、図１に示すように、ディジタル情報を図示しない送信装置が備える符号化装置１により符号化し、その出力を雑音のある無記憶通信路２を介して図示しない受信装置に入力して、この受信装置が備える復号装置３により復号する通信モデルに適用したデータ送受信システムである。
【００９２】
このデータ送受信システムにおいて、符号化装置１は、畳み込み符号等のトレリス符号を要素符号とする並列連接畳み込み符号（Parallel Concatenated Convolutional Codes；以下、ＰＣＣＣと記す。）又は縦列連接畳み込み符号（Serially Concatenated Convolutional Codes；以下、ＳＣＣＣと記す。）や、これらのＰＣＣＣ又はＳＣＣＣを応用して多値変調と組み合わせたターボ符号化変調（Turbo Trellis Coded Modulation；以下、ＴＴＣＭと記す。）又は縦列連接符号化変調（Serial Concatenated Trellis Coded Modulation；以下、ＳＣＴＣＭと記す。）を行うものとして構成される。これらの符号化は、いわゆるターボ符号化（Turbo coding）の一種として知られているものである。
【００９３】
一方、復号装置３は、符号化装置１により符号化がなされた符号の復号を行うものであって、「Robertson, Villebrun and Hoeher, “A comparison of optimal and sub-optimal MAP decoding algorithms operating in the domain”, IEEE Int. Conf. on Communications, pp. 1009-1013, June 1995」に記載されているＭａｘ−Ｌｏｇ−ＭＡＰアルゴリズム又はＬｏｇ−ＭＡＰアルゴリズム（以下、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズム又はＬｏｇ−ＢＣＪＲアルゴリズムと称する。）に基づく最大事後確率（Maximum A Posteriori probability；以下、ＭＡＰと記す。）復号を行い、いわゆる確率α，β，γ、及び軟出力（soft-output）λを自然対数を用いて対数尤度（log likelihood）の形式で対数表記した対数尤度Ｉα，Ｉβ，Ｉγ、及びいわゆる事後確率情報（a posteriori probability information）に対応する対数軟出力Ｉλを求める軟出力復号回路と、入力したデータを並べ替えるインターリーバとを少なくとも含むモジュールを、１つの要素復号器とし、複数の要素復号器を連接することによって、繰り返し復号を行うものとして構成される。
【００９４】
特に、復号装置３は、算出された複数の対数尤度Ｉα，Ｉβのうち、確率α，βが最大のメトリックに対応する対数尤度Ｉα，Ｉβが所定の値を超過したときに、複数の対数尤度Ｉα，Ｉβのそれぞれに対して、所定の値を用いた演算を行い、対数尤度Ｉα，Ｉβの値の分布の偏りを是正するための正規化を行うものである。
【００９５】
なお、以下では、復号装置３における各要素復号器は、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づくＭＡＰ復号を行うものとして説明する。
【００９６】
以下、下記目次に沿って内容を説明していく。
【００９７】
目次
１．  ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ及びＳＣＴＣＭによる符号化・復号を行う符号化装置及び復号装置の概略
１−１    ＰＣＣＣによる符号化・復号を行う符号化装置及び復号装置
１−２    ＳＣＣＣによる符号化・復号を行う符号化装置及び復号装置
２．  要素復号器の詳細
２−１    要素復号器の全体構成
２−２    軟出力復号回路の詳細
２−３    インターリーバの詳細
３．  要素復号器を連接して構成される復号装置
４．  要素復号器の全体に関する特徴
４−１    符号尤度の切り替え機能
４−２    受信値の遅延機能
４−３    復号受信値選択機能
４−４    復号用の記憶回路と遅延用の記憶回路の共用
４−５    フレーム先頭情報の遅延機能
４−６    軟出力復号回路又はインターリーバ単体動作機能
４−７    遅延モード切り替え機能
４−８    次段情報生成機能
４−９    システム検証機能
５．  軟出力復号回路に関する特徴
５−１    符号情報の持たせ方
５−１−１  トレリス上の全枝の入出力パターンの算出
５−１−２  遷移元のステートと遷移先のステートとの間での番号付け
５−１−３  時間軸に沿った番号付け及び時間軸とは逆順に沿った番号付け
５−１−４  トレリス全体の一意性に基づく番号付け
５−２    終結情報の入力方法
５−２−１  入力ビット数分の情報の終結期間分の入力
５−２−２  終結ステートを示す情報の１タイムスロットでの入力
５−３    消去位置の処理
５−４    対数尤度Ｉγの算出及び分配
５−４−１  全入出力パターン分の対数尤度Ｉγの算出・分配
５−４−２  少なくとも一部の入出力パターン分の対数尤度Ｉγの算出・分配
５−４−３  全入出力パターン分の対数尤度Ｉγに対する１時刻毎の正規化
５−４−４  少なくとも一部の入出力パターン分の対数尤度Ｉγに対する正規化
５−５    対数尤度Ｉα，Ｉβの算出
５−５−１  対数尤度Ｉαと対数尤度Ｉγとの和の算出
５−５−２  パラレルパスに対する前処理
５−５−３  加算比較選択回路の共用
５−５−４  対数軟出力Ｉλの算出用の対数尤度Ｉγの出力
５−５−５  パラレルパスに対する対数尤度Ｉαと対数尤度Ｉγとの和の算出
５−５−６  符号構成に応じた対数尤度の選択
５−５−７  対数尤度Ｉα，Ｉβに対する正規化
５−５−８  ｌｏｇ−ｓｕｍ補正における補正項の算出
５−５−９  ｌｏｇ−ｓｕｍ演算における選択用の制御信号の生成
５−６    対数軟出力Ｉλの算出
５−６−１  イネーブル信号を用いたｌｏｇ−ｓｕｍ演算の累積加算演算
５−６−２  イネーブル信号を用いないｌｏｇ−ｓｕｍ演算の累積加算演算
５−７    外部情報に対する正規化
５−８    受信値の硬判定
６．  インターリーバに関する特徴
６−１    複数種類のインターリーブ機能
６−２    インターリーブ用の記憶回路と遅延用の記憶回路の共用
６−３    クロック阻止信号による記憶回路の動作制御
６−４    デインターリーブ機能
６−５    書き込みアドレス及び読み出しアドレスの発生
６−６    インターリーブ長分の遅延機能
６−７    アドレス空間の利用方法
６−８    パーシャルライト機能によるデータの書き込み及び読み出し
６−９    偶数長遅延及び奇数長遅延への対応
６−１０  入出力順序入れ替え機能
７．  まとめ
【００９８】
１．  ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ及びＳＣＴＣＭによる符号化・復号を行う符号化装置及び復号装置の概略
まず、本発明の外延をより明確にするために、本発明の詳細な説明に先立って、図２及び図３に示すＰＣＣＣによる符号化・復号を行う符号化装置１’及び復号装置３’と、図４及び図５に示すＳＣＣＣによる符号化・復号を行う符号化装置１’’及び復号装置３’’とについて説明する。これらの符号化装置１’，１’’は、符号化装置１の例として位置付けられるものであり、復号装置３’，３’’は、復号装置３の例として位置付けられるものである。特に、復号装置３’，３’’は、要素復号器を連接することにより構成可能とされるものである。
【００９９】
１−１  ＰＣＣＣによる符号化・復号を行う符号化装置及び復号装置
最初に、ＰＣＣＣによる符号化を行う符号化装置１’と、この符号化装置１’による符号の復号を行う復号装置３’について説明する。
【０１００】
符号化装置１’としては、図２に示すように、入力したデータを遅延させる遅延器１１と、畳み込み演算を行う２つの畳み込み符号化器１２，１４と、入力したデータの順序を並べ替えるインターリーバ１３とを備えるものがある。この符号化装置１’は、入力した１ビットの入力データＤ１に対して、符号化率が“１／３”の並列連接畳み込み演算を行い、３ビットの出力データＤ４，Ｄ５，Ｄ６を生成し、例えば２相位相（Binary Phase Shift Keying；以下、ＢＰＳＫと記す。）変調方式や４相位相（Quadrature Phase Shift Keying；以下、ＱＰＳＫと記す。）変調方式による変調を行う図示しない変調器を介して外部に出力する。
【０１０１】
遅延器１１は、３ビットの出力データＤ４，Ｄ５，Ｄ６が出力されるタイミングを合わせるために備えられるものであって、１ビットの入力データＤ１を入力すると、この入力データＤ１をインターリーバ１３が要する処理時間と同時間だけ遅延させる。遅延器１１は、遅延させて得られた遅延データＤ２を、出力データＤ４として外部に出力するとともに、後段の畳み込み符号化器１２に供給する。
【０１０２】
畳み込み符号化器１２は、遅延器１１から出力された１ビットの遅延データＤ２を入力すると、この遅延データＤ２に対して畳み込み演算を行い、演算結果を出力データＤ５として外部に出力する。
【０１０３】
インターリーバ１３は、１つのビット系列からなる入力データＤ１を入力し、この入力データＤ１を構成する各ビットの順序を並べ替え、生成したインターリーブデータＤ３を後段の畳み込み符号化器１４に供給する。
【０１０４】
畳み込み符号化器１４は、インターリーバ１３から供給される１ビットのインターリーブデータＤ３を入力すると、このインターリーブデータＤ３に対して畳み込み演算を行い、演算結果を出力データＤ６として外部に出力する。
【０１０５】
このような符号化装置１’は、１ビットの入力データＤ１を入力すると、この入力データＤ１を組織成分の出力データＤ４として、遅延器１１を介してそのまま外部に出力するとともに、畳み込み符号化器１２による遅延データＤ２の畳み込み演算の結果得られる出力データＤ５と、畳み込み符号化器１４によるインターリーブデータＤ３の畳み込み演算の結果得られる出力データＤ６とを外部に出力することによって、全体として、符号化率が“１／３”の並列連接畳み込み演算を行う。この符号化装置１’により符号化されたデータは、図示しない変調器により所定の変調方式に基づいて信号点のマッピングが行われ、無記憶通信路２を介して受信装置に出力される。
【０１０６】
一方、符号化装置１’による符号の復号を行う復号装置３’としては、図３に示すように、軟出力復号を行う２つの軟出力復号回路１５，１７と、入力したデータの順序を並べ替えるインターリーバ１６と、入力したデータの順序を元に戻す２つのデインターリーバ１８，２０と、２つのデータを加算する加算器１９とを備えるものがある。この復号装置３’は、無記憶通信路２上で発生したノイズの影響により軟入力（soft-input）とされる受信値Ｄ７から符号化装置１’における入力データＤ１を推定し、復号データＤ１３として出力する。
【０１０７】
軟出力復号回路１５は、符号化装置１’における畳み込み符号化器１２に対応して備えられるものであり、Ｌｏｇ−ＢＣＪＲに基づくＭＡＰ復号を行う。軟出力復号回路１５は、軟入力の受信値Ｄ７を入力するとともに、デインターリーバ１８から出力された軟入力の情報ビットに対する事前確率情報（a priori probability information）Ｄ８を入力し、これらの受信値Ｄ７と事前確率情報Ｄ８とを用いて、軟出力復号を行う。そして、軟出力復号回路１５は、符号の拘束条件により求められる情報ビットに対するいわゆる外部情報（extrinsic information）Ｄ９を生成し、この外部情報Ｄ９を後段のインターリーバ１６に軟出力として出力する。
【０１０８】
インターリーバ１６は、軟出力復号回路１５から出力された軟入力である情報ビットに対する外部情報Ｄ９に対して、符号化装置１’におけるインターリーバ１３と同一の置換位置情報に基づいたインターリーブを施す。インターリーバ１６は、インターリーブして得られたデータを後段の軟出力復号回路１７における情報ビットに対する事前確率情報Ｄ１０として出力するとともに、後段の加算器１９に出力する。
【０１０９】
軟出力復号回路１７は、符号化装置１’における畳み込み符号化器１４に対応して備えられるものであり、軟出力復号回路１５と同様に、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づくＭＡＰ復号を行う。軟出力復号回路１７は、軟入力の受信値Ｄ７を入力するとともに、インターリーバ１６から出力された軟入力の情報ビットに対する事前確率情報Ｄ１０を入力し、これらの受信値Ｄ７と事前確率情報Ｄ１０とを用いて、軟出力復号を行う。そして、軟出力復号回路１７は、符号の拘束条件により求められる情報ビットに対する外部情報Ｄ１１を生成し、この外部情報Ｄ１１をデインターリーバ１８に軟出力として出力するとともに、加算器１９に出力する。
【０１１０】
デインターリーバ１８は、符号化装置１’におけるインターリーバ１３によりインターリーブされたインターリーブデータＤ３のビット配列を、元の入力データＤ１のビット配列に戻すように、軟出力復号回路１７から出力される軟入力の外部情報Ｄ１１にデインターリーブを施す。デインターリーバ１８は、デインターリーブして得られたデータを軟出力復号回路１５における情報ビットに対する事前確率情報Ｄ８として出力する。
【０１１１】
加算器１９は、インターリーバ１６から出力された軟入力の情報ビットに対する事前確率情報Ｄ１０と、軟出力復号回路１７から出力された情報ビットに対する外部情報Ｄ１１とを加算する。加算器１９は、得られたデータＤ１２を後段のデインターリーバ２０に軟出力として出力する。
【０１１２】
デインターリーバ２０は、符号化装置１’におけるインターリーバ１３によりインターリーブされたインターリーブデータＤ３のビット配列を、元の入力データＤ１のビット配列に戻すように、加算器１９から出力される軟出力のデータＤ１２にデインターリーブを施す。デインターリーバ２０は、デインターリーブして得られたデータを復号データＤ１３として外部に出力する。
【０１１３】
このような復号装置３’は、符号化装置１’における畳み込み符号化器１２，１４のそれぞれに対応する軟出力復号回路１５，１７を備えることによって、復号複雑度が高い符号を複雑度の小さい要素に分解し、軟出力復号回路１５，１７の間の相互作用により特性を逐次的に向上させることができる。復号装置３’は、受信値Ｄ７を受信すると、所定の繰り返し回数での繰り返し復号を行い、この復号動作の結果得られた軟出力の外部情報に基づいて、復号データＤ１３を出力する。
【０１１４】
なお、ＴＴＣＭによる符号化を行う符号化装置は、符号化装置１’の最終段に、例えば８相位相（8-Phase Shift Keying；以下、８ＰＳＫと記す。）変調方式による変調を行う変調器を備えることによって実現することができる。また、ＴＴＣＭによる符号の復号を行う復号装置は、復号装置３’と同様の構成で実現することができ、受信値として、同相成分及び直交成分のシンボルを直接入力することになる。
【０１１５】
１−２  ＳＣＣＣによる符号化・復号を行う符号化装置及び復号装置
つぎに、ＳＣＣＣによる符号化を行う符号化装置１’’と、この符号化装置１’’による符号の復号を行う復号装置３’’について説明する。
【０１１６】
符号化装置１’’としては、図４に示すように、外符号と呼ばれる符号の符号化を行う畳み込み符号化器３１と、入力したデータの順序を並べ替えるインターリーバ３２と、内符号と呼ばれる符号の符号化を行う畳み込み符号化器３３とを備えるものがある。この符号化装置１’’は、入力した１ビットの入力データＤ２１に対して、符号化率が“１／３”の縦列連接畳み込み演算を行い、３ビットの出力データＤ２６，Ｄ２７，Ｄ２８を生成し、例えばＢＰＳＫ変調方式やＱＰＳＫ変調方式による変調を行う図示しない変調器を介して外部に出力する。
【０１１７】
畳み込み符号化器３１は、１ビットの入力データＤ２１を入力すると、この入力データＤ２１に対して畳み込み演算を行い、演算結果を２ビットの符号化データＤ２２，Ｄ２３として後段のインターリーバ３２に供給する。すなわち、畳み込み符号化器３１は、外符号の符号化として符号化率が“１／２”の畳み込み演算を行い、生成した符号化データＤ２２，Ｄ２３を後段のインターリーバ３２に供給する。
【０１１８】
インターリーバ３２は、畳み込み符号化器３１から供給された２つのビット系列からなる符号化データＤ２２，Ｄ２３を入力し、これらの符号化データＤ２２，Ｄ２３を構成する各ビットの順序を並べ替え、生成した２つのビット系列からなるインターリーブデータＤ２４，Ｄ２５を後段の畳み込み符号化器３３に供給する。
【０１１９】
畳み込み符号化器３３は、インターリーバ３２から供給される２ビットのインターリーブデータＤ２４，Ｄ２５を入力すると、これらのインターリーブデータＤ２４，Ｄ２５に対して畳み込み演算を行い、演算結果を３ビットの出力データＤ２６，Ｄ２７，Ｄ２８として外部に出力する。すなわち、畳み込み符号化器３３は、内符号の符号化として符号化率が“２／３”の畳み込み演算を行い、出力データＤ２６，Ｄ２７，Ｄ２８を外部に出力する。
【０１２０】
このような符号化装置１’’は、畳み込み符号化器３１により外符号の符号化として符号化率が“１／２”の畳み込み演算を行い、畳み込み符号化器３３により内符号の符号化として符号化率が“２／３”の畳み込み演算を行うことによって、全体として、符号化率が“（１／２）×（２／３）＝１／３”の縦列連接畳み込み演算を行う。この符号化装置１’’により符号化されたデータは、図示しない変調器により所定の変調方式に基づいて信号点のマッピングが行われ、無記憶通信路２を介して受信装置に出力される。
【０１２１】
一方、符号化装置１’’による符号の復号を行う復号装置３’’としては、図５に示すように、軟出力復号を行う２つの軟出力復号回路３４，３６と、入力したデータの順序を元に戻すデインターリーバ３５と、入力したデータの順序を並べ替えるインターリーバ３７とを備えるものがある。この復号装置３’’は、無記憶通信路２上で発生したノイズの影響により軟入力とされる受信値Ｄ２９から符号化装置１’’における入力データＤ２１を推定し、復号データＤ３６として出力する。
【０１２２】
軟出力復号回路３４は、符号化装置１’’における畳み込み符号化器３３に対応して備えられるものであり、Ｌｏｇ−ＢＣＪＲに基づくＭＡＰ復号を行う。軟出力復号回路３４は、軟入力の受信値Ｄ２９を入力するとともに、インターリーバ３７から出力された軟入力の情報ビットに対する事前確率情報Ｄ３０を入力し、これらの受信値Ｄ２９と事前確率情報Ｄ３０とを用いて、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づくＭＡＰ復号を行い、内符号の軟出力復号を行う。そして、軟出力復号回路３４は、符号の拘束条件により求められる情報ビットに対する外部情報Ｄ３１を生成し、この外部情報Ｄ３１を後段のデインターリーバ３５に軟出力として出力する。なお、この外部情報Ｄ３１は、符号化装置１’’におけるインターリーバ３２によりインターリーブされたインターリーブデータＤ２４，Ｄ２５に対応するものである。
【０１２３】
デインターリーバ３５は、符号化装置１’’におけるインターリーバ３２によりインターリーブされたインターリーブデータＤ２４，Ｄ２５のビット配列を、それぞれ、元の符号化データＤ２２，Ｄ２３のビット配列に戻すように、軟出力復号回路３４から出力される軟入力の外部情報Ｄ３１にデインターリーブを施す。デインターリーバ３５は、デインターリーブして得られたデータを後段の軟出力復号回路３６における符号ビットに対する事前確率情報Ｄ３２として出力する。
【０１２４】
軟出力復号回路３６は、符号化装置１’’における畳み込み符号化器３１に対応して備えられるものであり、Ｌｏｇ−ＢＣＪＲに基づくＭＡＰ復号を行う。軟出力復号回路３６は、デインターリーバ３５から出力された軟入力の符号ビットに対する事前確率情報Ｄ３２を入力するとともに、値が“０”である情報ビットに対する事前確率情報Ｄ３３を入力し、これらの事前確率情報Ｄ３２，Ｄ３３を用いて、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づくＭＡＰ復号を行い、外符号の軟出力復号を行う。軟出力復号回路３６は、符号の拘束条件により求められる外部情報Ｄ３４，Ｄ３５を生成し、外部情報Ｄ３４を復号データＤ３６として外部に出力するとともに、外部情報Ｄ３５をインターリーバ３７に軟出力として出力する。
【０１２５】
インターリーバ３７は、軟出力復号回路３６から出力された軟入力である符号ビットに対する外部情報Ｄ３５に対して、符号化装置１’’におけるインターリーバ３２と同一の置換位置情報に基づいたインターリーブを施す。インターリーバ３７は、インターリーブして得られたデータを軟出力復号回路３４における情報ビットに対する事前確率情報Ｄ３０として出力する。
【０１２６】
このような復号装置３’’は、符号化装置１’’における畳み込み符号化器３１，３３のそれぞれに対応する軟出力復号回路３６，３４を備えることによって、復号装置３’と同様に、復号複雑度が高い符号を複雑度の小さい要素に分解し、軟出力復号回路３４，３６の間の相互作用により特性を逐次的に向上させることができる。復号装置３’’は、受信値Ｄ２９を受信すると、所定の繰り返し回数での繰り返し復号を行い、この復号動作の結果得られた軟出力の外部情報に基づいて、復号データＤ３６を出力する。
【０１２７】
なお、ＳＣＴＣＭによる符号化を行う符号化装置は、符号化装置１’’の最終段に、例えば８ＰＳＫ変調方式による変調を行う変調器を備えることによって実現することができる。また、ＳＣＴＣＭによる符号の復号を行う復号装置は、復号装置３’’と同様の構成で実現することができ、受信値として、同相成分及び直交成分のシンボルを直接入力することになる。
【０１２８】
２．  要素復号器の詳細
本発明の実施の形態として示す復号装置３は、図３中破線部又は図５中破線部に示すように、軟出力復号回路とインターリーバ若しくはデインターリーバとを少なくとも含むモジュールを上述した要素復号器とし、複数の要素復号器を連接してＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭのうち、任意の符号を復号するものである。ここで、デインターリーバは、インターリーバと逆の置換位置情報に基づいてデータを並べ替えるものであることから、インターリーバの１形態として擬制することができる。そこで、要素復号器としては、軟出力復号回路とインターリーバとを備えるものであればよく、インターリーブ処理とデインターリーブ処理とを、インターリーバとデインターリーバとの機能の切り替えを行うことで実現することができる。そこで、以下では、特に区別を要しない場合には、インターリーバはデインターリーバの機能を併有するものとして説明する。
【０１２９】
さて、このような復号装置３における要素復号器について、以下詳細に説明する。なお、以下では、必要に応じて、符号化装置１における各要素符号化器が備えるシフトレジスタの内容を表すＭ個のステート（遷移状態）をｍ（０，１，・・・，Ｍ−１）で表し、時刻ｔのステートをＳtで表す。さらに、１タイムスロットにｋビットの情報が入力されるものとすると、時刻ｔにおける入力をｉt＝（ｉt1，ｉt2，・・・，ｉtk）で表し、入力系統をＩ1T＝（ｉ1，ｉ2，・・・，ｉT）で表す。このとき、ステートｍ’からステートｍへの遷移がある場合には、その遷移に対応する情報ビットをｉ（ｍ’，ｍ）＝（ｉ1（ｍ’，ｍ），ｉ2（ｍ’，ｍ），・・・，ｉk（ｍ’，ｍ））で表す。さらにまた、１タイムスロットにｎビットの符号が出力されるものとすると、時刻ｔにおける出力をｘt＝（ｘt1，ｘt2，・・・，ｘtn）で表し、出力系統をＸ1T＝（ｘ1，ｘ2，・・・，ｘT）で表す。このとき、ステートｍ’からステートｍへの遷移がある場合には、その遷移に対応する符号ビットをｘ（ｍ’，ｍ）＝（ｘ1（ｍ’，ｍ），ｘ2（ｍ’，ｍ），・・・，ｘn（ｍ’，ｍ））で表す。また、無記憶通信路２は、Ｘ1Tを入力とし、Ｙ1Tを出力するものとする。ここで、１タイムスロットにｎビットの受信値が出力されるものとすると、時刻ｔにおける出力をｙt＝（ｙt1，ｙt2，・・・，ｙtn）で表し、Ｙ1T＝（ｙ1，ｙ2，・・・，ｙT）で表す。
【０１３０】
２−１  要素復号器の全体構成
ここでは、要素復号器の全体構成について、図６乃至図８を用いて説明する。
【０１３１】
図６に概略を示す要素復号器５０は、大規模集積回路（Large‐Scale Integrated circuit；以下、ＬＳＩと記す。）として各部を単一半導体基板に集積させ、１チップとして構成される。要素復号器５０は、各部を制御する制御回路６０と、復号する受信値を選択する復号受信値選択回路７０と、フレームの先頭を検出するエッジ検出回路８０と、軟出力復号を行う軟出力復号回路９０と、入力したデータの順序を並べ替えるインターリーバ１００と、このインターリーバ１００が参照する置換先のアドレスデータを保持するアドレス用記憶回路１１０と、１０個のセレクタ１２０1，１２０2，１２０3，１２０4，１２０5，１２０6，１２０7，１２０8，１２０9，１２０10と、システムの検証のために用いられる信号線１３０とを備える。
【０１３２】
ここで、同図に示す要素復号器５０の左半分部分の詳細を図７に示し、右半分部分の詳細を図８に示す。
【０１３３】
制御回路６０は、復号受信値選択回路７０、軟出力復号回路９０、インターリーバ１００、アドレス用記憶回路１１０、及び、９個のセレクタ１２０2，１２０3，１２０4，１２０5，１２０6，１２０7，１２０8，１２０9，１２０10に対して、それぞれ、各種情報を生成して供給するとともに、アドレス用記憶回路１１０からの情報を受け取り、各部の動作を制御する。
【０１３４】
具体的には、制御回路６０は、復号受信値選択回路７０に対して、受信値Ｒ（受信値ＴＲ）のうち、復号すべき受信値である復号受信値ＴＳＲを選択させるための受信値選択情報ＣＲＳを生成して供給する。
【０１３５】
また、制御回路６０は、軟出力復号回路９０に対して、受信値Ｒとして入力されるデータが、実際には受信値又は外部情報のいずれであるのか、さらには、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合におけるＩ／Ｑ値であるのか、といった受信値Ｒの形式を示す受信値形式情報ＣＲＴＹと、事前確率情報がビット単位で入力されるのかシンボル単位で入力されるのか、といった事前確率情報の形式を示す事前確率情報形式情報ＣＡＰＰと、符号化装置１における要素符号化器の符号化率を示す符号化率情報ＣＲＡＴと、符号化装置１における要素符号化器の生成行列を示す生成行列情報ＣＧと、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合における信号点の配置を示す信号点配置情報ＣＳＩＧとを生成して供給する。
【０１３６】
さらに、制御回路６０は、インターリーバ１００に対して、いかなるインターリーブを行うかの種別を示すインターリーバタイプ情報ＣＩＮＴと、インターリーブ長を示すインターリーブ長情報ＣＩＮＬと、後述するように複数シンボル間で順序を相互に置換するための入出力置換情報といった当該インターリーバ１００の処理内容に関するインターリーバ入出力置換情報ＣＩＰＴと、符号の終結位置を示す終結位置情報ＣＮＦＴと、符号の終結期間を示す終結期間情報ＣＮＦＬと、符号の終結ステートを示す終結ステート情報ＣＮＦＤと、符号がパンクチャされている場合におけるパンクチャ周期を示すパンクチャ周期情報ＣＮＥＬと、パンクチャパターンを示すパンクチャパターン情報ＣＮＥＰとを生成して供給する。また、制御回路６０は、インターリーバ１００に対して、後述する動作モードを示す動作モード情報ＣＢＦを生成して供給する。
【０１３７】
さらにまた、制御回路６０は、アドレス用記憶回路１１０にインターリーバ１００が参照する置換先のアドレスデータを書き込む場合には、このアドレス用記憶回路１１０対して、インターリーバタイプ情報ＣＩＮＴと、アドレス用記憶回路１１０のアドレスを示すアドレスＣＩＡＤと、インターリーバ１００が参照する置換先のアドレスデータである書き込みデータＣＩＷＤとを供給する。
【０１３８】
また、制御回路６０は、６個のセレクタ１２０2，１２０3，１２０4，１２０5，１２０6，１２０7に対して、動作モード情報ＣＢＦを供給するとともに、３つのセレクタ１２０8，１２０9，１２０10に対して、後述する検証モードであるか否かを示す検証モード情報ＣＴＨＲを供給する。
【０１３９】
一方、制御回路６０は、アドレス用記憶回路１１０に保持されているインターリーバ１００が参照する置換先のアドレスデータである読み出しアドレスデータＡＤＡを入力する。
【０１４０】
このような制御回路６０は、復号受信値選択回路７０、軟出力復号回路９０、インターリーバ１００、及び、セレクタ１２０2，１２０3，１２０4，１２０5，１２０6，１２０7，１２０8，１２０9，１２０10に対して、生成した各種情報を供給し、各部の動作を制御するとともに、アドレス用記憶回路１１０に対するアドレスデータの書き込み制御・動作等を行う。
【０１４１】
復号受信値選択回路７０は、後述するように、任意の符号の復号を行うために設けられるものであって、制御回路６０から供給される受信値選択情報ＣＲＳに基づいて、入力された受信値ＴＲのうち、復号受信値ＴＳＲを選択する。復号受信値選択回路７０は、選択した復号受信値ＴＳＲを軟出力復号回路９０に供給する。
【０１４２】
具体的には、復号受信値選択回路７０は、例えば受信値ＴＲが６系統の受信値ＴＲ０，ＴＲ１，ＴＲ２，ＴＲ３，ＴＲ４，ＴＲ５からなり、このうち４系統の受信値を復号受信値ＴＳＲ０，ＴＳＲ１，ＴＳＲ２，ＴＳＲ３として選択するものとすると、例えば図９に示すように、４つのセレクタ７１，７２，７３，７４を有するものとして実現することができる。このとき、制御回路６０から供給される受信値選択情報ＣＲＳは、各セレクタ７１，７２，７３，７４に対して個別に与えられ、４系統の受信値選択情報ＣＲＳ０，ＣＲＳ１，ＣＲＳ２，ＣＲＳ３からなる。
【０１４３】
すなわち、セレクタ７１は、受信値選択情報ＣＲＳ０に基づいて、受信値ＴＲ０，ＴＲ１，ＴＲ２，ＴＲ３，ＴＲ４，ＴＲ５のうち、所定の受信値を選択し、復号受信値ＴＳＲ０として軟出力復号回路９０に供給する。
【０１４４】
また、セレクタ７２は、受信値選択情報ＣＲＳ１に基づいて、受信値ＴＲ０，ＴＲ１，ＴＲ２，ＴＲ３，ＴＲ４，ＴＲ５のうち、所定の受信値を選択し、復号受信値ＴＳＲ１として軟出力復号回路９０に供給する。
【０１４５】
さらに、セレクタ７３は、受信値選択情報ＣＲＳ２に基づいて、受信値ＴＲ０，ＴＲ１，ＴＲ２，ＴＲ３，ＴＲ４，ＴＲ５のうち、所定の受信値を選択し、復号受信値ＴＳＲ２として軟出力復号回路９０に供給する。
【０１４６】
そして、セレクタ７４は、受信値選択情報ＣＲＳ３に基づいて、受信値ＴＲ０，ＴＲ１，ＴＲ２，ＴＲ３，ＴＲ４，ＴＲ５のうち、所定の受信値を選択し、復号受信値ＴＳＲ３として軟出力復号回路９０に供給する。
【０１４７】
このように、復号受信値選択回路７０は、制御回路６０から供給される受信値選択情報ＣＲＳに基づいて、復号受信値ＴＳＲを選択し、軟出力復号回路９０に供給する。
【０１４８】
エッジ検出回路８０は、外部から供給されるインターリーブの開始位置、すなわち、フレームの先頭を示すインターリーブ開始位置信号ＩＬＳ（インターリーブ開始位置信号ＴＩＬＳ）を入力し、入力される受信値ＴＲを構成するフレームの先頭を検出する。エッジ検出回路８０は、検出したフレームの先頭を示すエッジ信号ＴＥＩＬＳを軟出力復号回路９０及びセレクタ１２０5に供給する。
【０１４９】
具体的には、エッジ検出回路８０は、例えば図１０に示すように、レジスタ８１と、ＡＮＤゲート８２とを有するものとして実現することができる。
【０１５０】
レジスタ８１は、例えば１ビットからなるインターリーブ開始位置信号ＴＩＬＳを１クロックだけ保持する。レジスタ８１は、保持した遅延インターリーブ開始位置信号ＴＩＬＳＤをＡＮＤゲート８２に供給する。
【０１５１】
ＡＮＤゲート８２は、インターリーブ開始位置信号ＴＩＬＳと、レジスタ８１から供給される１クロック前のインターリーブ開始位置信号ＴＩＬＳである遅延インターリーブ開始位置信号ＴＩＬＳＤを反転したデータとの論理積をとる。ＡＮＤゲート８２は、得られた論理積をエッジ信号ＴＥＩＬＳとして軟出力復号回路９０及びセレクタ１２０5に供給する。
【０１５２】
すなわち、エッジ検出回路８０は、例えば外部から供給されるインターリーブ開始位置信号ＴＩＬＳが“０”から“１”へと切り替わることを検出すればよく、ＡＮＤゲート８２による論理積をとることによって、受信値ＴＲを構成するフレームの先頭が入力されたことを検出することができる。
【０１５３】
軟出力復号回路９０は、復号受信値選択回路７０から供給される復号受信値ＴＳＲと、事前確率情報として外部から供給される外部情報又はインターリーブデータＥＸＴ（外部情報又はインターリーブデータＴＥＸＴ）とを用いて、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づくＭＡＰ復号を行う。
【０１５４】
このとき、軟出力復号回路９０は、制御回路６０から供給される受信値形式情報ＣＲＴＹと、事前確率情報形式情報ＣＡＰＰと、符号化率情報ＣＲＡＴと、生成行列情報ＣＧと、必要に応じて信号点配置情報ＣＳＩＧとの他、外部から供給されるパンクチャパターンを示す消去情報ＥＲＳ（消去情報ＴＥＲＳ）及び事前確率情報消去情報ＥＡＰ（事前確率情報消去情報ＴＥＡＰ）と、符号の終結時刻を示す終結時刻情報ＴＮＰ（終結時刻情報ＴＴＮＰ）と、終結ステートを示す終結ステート情報ＴＮＳ（終結ステート情報ＴＴＮＳ）とを用いて、復号処理を行う。
【０１５５】
軟出力復号回路９０は、復号処理の結果得られた軟出力ＳＯＬ及び外部情報ＳＯＥをセレクタ１２０1に供給する。このとき、軟出力復号回路９０は、外部から供給される出力データ選択制御信号ＩＴＭ（出力データ選択制御信号ＣＩＴＭ）に基づいて、情報シンボル又は情報ビットに対する情報と符号シンボル又は符号ビットに対する情報とを選択的に出力する。また、軟出力復号回路９０は、硬判定をした場合には、復号値である軟出力を硬判定して得られた復号値硬判定情報ＳＤＨ及び受信値を硬判定して得られた受信値硬判定情報ＳＲＨを外部に出力する。このときも、軟出力復号回路９０は、出力データ選択制御信号ＣＩＴＭに基づいて、情報シンボル又は情報ビットに対する情報と符号シンボル又は符号ビットに対する情報とを選択的に出力する。
【０１５６】
また、軟出力復号回路９０は、後述するように、受信値ＴＲ、外部情報又はインターリーブデータＴＥＸＴ、及び、エッジ検出回路８０から供給されるエッジ信号ＴＥＩＬＳを、それぞれ、遅延させることもできる。この場合、軟出力復号回路９０は、受信値ＴＲを遅延させた遅延受信値ＳＤＲをセレクタ１２０3，１２０6に供給し、外部情報又はインターリーブデータＴＥＸＴを遅延させた遅延外部情報ＳＤＥＸをセレクタ１２０2に供給し、エッジ信号ＴＥＩＬＳを遅延させた遅延エッジ信号ＳＤＩＬＳをセレクタ１２０5に供給する。
【０１５７】
なお、軟出力復号回路９０の詳細については“２−２”において述べる。
【０１５８】
インターリーバ１００は、セレクタ１２０4から供給されたデータＴＩＩに対して、図示しない符号化装置１におけるインターリーバと同一の置換位置情報に基づいたインターリーブ、若しくは、符号化装置１におけるインターリーバによりインターリーブされたインターリーブデータのビット配列を元のデータのビット配列に戻すようなデインターリーブを施す。このとき、インターリーバ１００は、外部から供給されるインターリーブモード信号ＤＩＮ（インターリーブモード信号ＣＤＩＮ）に基づいて、インターリーバ又はデインターリーバとして機能する。
【０１５９】
インターリーバ１００は、セレクタ１２０5から供給されるインターリーブ開始位置信号ＴＩＳを入力すると、アドレス用記憶回路１１０に対して、アドレスデータＩＡＡを与えてアドレスを指定することによって、当該アドレス用記憶回路１１０に保持されているアドレスデータを読み出しアドレスデータＡＤＡとして読み出し、この読み出しアドレスデータＡＤＡに基づいて、インターリーブ又はデインターリーブを行う。このとき、インターリーバ１００は、制御回路６０から供給されるインターリーバタイプ情報ＣＩＮＴと、インターリーブ長情報ＣＩＮＬと、インターリーバ入出力置換情報ＣＩＰＴとを用いて、インターリーブ又はデインターリーブを行う。インターリーバ１００は、インターリーブ又はデインターリーブして得られたインターリーバ出力データＩＩＯをセレクタ１２０7に供給する。
【０１６０】
また、インターリーバ１００は、後述するように、セレクタ１２０3から供給される受信値ＴＲ又は遅延受信値ＳＤＲのうちのいずれか一方のデータＴＤＩを遅延させることもできる。このとき、インターリーバ１００は、制御回路６０から供給される動作モード情報ＣＢＦに基づいて、データＴＤＩを遅延させる。インターリーバ１００は、データＴＤＩを遅延させて得られたインターリーブ長遅延受信値ＩＤＯをセレクタ１２０6に供給する。
【０１６１】
さらに、インターリーバ１００は、後述するように、制御回路６０から供給される終結位置情報ＣＮＦＴと、終結期間情報ＣＮＦＬと、終結ステート情報ＣＮＦＤと、パンクチャ周期情報ＣＮＥＬと、パンクチャパターン情報ＣＮＥＰとに基づいて、当該要素復号器を複数連接した場合において、次段の要素復号器における符号の終結時刻及び終結ステートを示す終結時刻情報ＩＧＴ及び終結ステート情報ＩＧＳと、符号のパンクチャ位置を示す消去位置情報ＩＧＥ及びインターリーバ無出力位置情報ＩＮＯとを生成する。これと同時に、インターリーバ１００は、セレクタ１２０5から供給されるインターリーブ開始位置信号ＴＩＳを遅延させ、遅延インターリーブ開始位置信号ＩＤＳを生成する。インターリーバ１００は、生成した終結時刻情報ＩＧＴ、終結ステート情報ＩＧＳ、消去位置情報ＩＧＥ、インターリーバ無出力位置情報ＩＮＯ、及び、遅延インターリーブ開始位置信号ＩＤＳを、生成次段情報として、フレームの先頭に同期させ、セレクタ１２０10に供給する。
【０１６２】
なお、インターリーバ１００の詳細については“２−３”において述べる。
【０１６３】
アドレス用記憶回路１１０は、図示しないが、例えば、複数バンクのＲＡＭ（Random Access Memory）や選択回路等を有し、インターリーバ１００によるインターリーブ又はデインターリーブの際に参照されるデータの置換位置情報をアドレスデータとして保持する。このアドレス用記憶回路１１０に保持されているアドレスデータは、インターリーバ１００により当該アドレス用記憶回路１１０のアドレスがアドレスデータＩＡＡとして指定されることによって、読み出しアドレスデータＡＤＡとして読み出される。また、アドレス用記憶回路１１０に対するアドレスデータの書き込みは、制御回路６０により行われ、当該アドレス用記憶回路１１０のアドレスがアドレスＣＩＡＤとして指定されることによって、アドレスデータが書き込みデータＣＩＷＤとして書き込まれる。このようにすることによって、アドレス用記憶回路１１０には、任意のインターリーブのパターンを書き込むことができる。なお、アドレス用記憶回路１１０は、インターリーバ１００の内部に備えるようにしてもよい。すなわち、要素復号器５０は、インターリーバ１００とアドレス用記憶回路１１０との両者を以て、インターリーブ処理又はデインターリーブ処理を行う。
【０１６４】
セレクタ１２０1は、出力データ選択制御信号ＣＩＴＭに基づいて、軟出力復号回路９０から供給される軟出力ＳＯＬと外部情報ＳＯＥとのうち、いずれか一方を選択し、データＴＬＸとしてセレクタ１２０2に供給する。すなわち、セレクタ１２０1は、軟出力復号回路９０が、繰り返し復号における過程で外部情報を出力すべきものであるのか、或いは、最終結果としての軟出力を出力すべきものであるのかを、決定するために設けられるものである。
【０１６５】
セレクタ１２０2は、動作モード情報ＣＢＦに基づいて、軟出力復号回路９０から供給される遅延外部情報ＳＤＥＸと、セレクタ１２０1から供給されるデータＴＬＸとのうち、いずれか一方を選択し、データＴＤＬＸとして、セレクタ１２０4，１２０7に供給する。
【０１６６】
ここで、要素復号器５０の動作モードについて説明する。要素復号器５０は、例えば６つの動作モードを有する。第１には、軟出力復号回路９０及びインターリーバ１００が、それぞれ、通常の軟出力復号処理及びインターリーブ処理を行うモードである。第２には、軟出力復号回路９０のみが通常の軟出力復号処理を行うモードである。第３には、インターリーバ１００のみが通常のインターリーブ処理を行うモードである。第４には、軟出力復号回路９０及びインターリーバ１００が、それぞれ、通常の軟出力復号処理及びインターリーブ処理を行わずに、遅延回路として機能するモードである。第５には、軟出力復号回路９０のみが通常の軟出力復号処理を行わずに、遅延回路として機能するモードである。第６には、インターリーバ１００のみが通常のインターリーブ処理を行わずに、遅延回路として機能するモードである。これらの動作モードは、制御回路６０により決定され、動作モード情報ＣＢＦとして各部に供給される。以下では、必要に応じて、第１のモード乃至第３のモードを通常モードと総称し、第４のモード乃至第６のモードを遅延モードと総称する。
【０１６７】
具体的には、セレクタ１２０2は、動作モード情報ＣＢＦが、軟出力復号回路９０が要する処理時間と同時間の遅延、インターリーバ１００が要する処理時間と同時間の遅延、又は、軟出力復号回路９０及びインターリーバ１００が要する処理時間と同時間の遅延のいずれかを行うべき遅延モードを示すものであった場合には、遅延外部情報ＳＤＥＸを選択して出力し、動作モード情報ＣＢＦが、軟出力復号回路９０及び／又はインターリーバ１００による遅延を行わず、軟出力復号回路９０及び／又はインターリーバ１００による処理を行う通常モードを示すものであった場合には、データＴＬＸを選択して出力する。すなわち、セレクタ１２０2は、要素復号器５０の動作モードが遅延モードであるのか、或いは、通常モードであるのかを、決定するために設けられるものであり、各動作モードに応じて、出力するデータを選択する。
【０１６８】
セレクタ１２０3は、動作モード情報ＣＢＦに基づいて、受信値ＴＲと、軟出力復号回路９０から供給される遅延受信値ＳＤＲとのうち、いずれか一方を選択し、データＴＤＩとしてインターリーバ１００に供給する。具体的には、セレクタ１２０3は、動作モード情報ＣＢＦが、インターリーバ１００による処理のみを行う通常モード、又は、インターリーバ１００が要する処理時間と同時間の遅延を行うべき遅延モードを示すものであった場合には、受信値ＴＲを選択して出力し、動作モード情報ＣＢＦが、それ以外の通常モード又は遅延モードを示すものであった場合には、遅延受信値ＳＤＲを選択して出力する。すなわち、セレクタ１２０3は、インターリーバ１００に入力されるデータとして、軟出力復号回路９０による軟出力復号処理又は軟出力復号回路９０が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定するために設けられるものであり、各動作モードに応じて、出力するデータを選択する。
【０１６９】
セレクタ１２０4は、動作モード情報ＣＢＦに基づいて、外部情報又はインターリーブデータＴＥＸＴと、セレクタ１２０2から供給されるデータＴＤＬＸとのうち、いずれか一方を選択し、データＴＩＩとしてインターリーバ１００に供給する。具体的には、セレクタ１２０4は、動作モード情報ＣＢＦが、インターリーバ１００による処理のみを行う通常モード、又は、インターリーバ１００が要する処理時間と同時間の遅延を行うべき遅延モードを示すものであった場合には、外部情報又はインターリーブデータＴＥＸＴを選択して出力し、動作モード情報ＣＢＦが、それ以外の通常モード又は遅延モードを示すものであった場合には、データＴＤＬＸを選択して出力する。すなわち、セレクタ１２０4は、インターリーバ１００に入力されるデータとして、軟出力復号回路９０による軟出力復号処理又は軟出力復号回路９０が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定するために設けられるものであり、各動作モードに応じて、出力するデータを選択する。
【０１７０】
セレクタ１２０5は、動作モード情報ＣＢＦに基づいて、エッジ検出回路８０から供給されるエッジ信号ＴＥＩＬＳと、軟出力復号回路９０から供給される遅延エッジ信号ＳＤＩＬＳとのうち、いずれか一方を選択し、インターリーブ開始位置信号ＴＩＳとしてインターリーバ１００に供給する。具体的には、セレクタ１２０5は、動作モード情報ＣＢＦが、インターリーバ１００による処理のみを行う通常モード、又は、インターリーバ１００が要する処理時間と同時間の遅延を行うべき遅延モードを示すものであった場合には、エッジ信号ＴＥＩＬＳを選択して出力し、動作モード情報ＣＢＦが、それ以外の通常モード又は遅延モードを示すものであった場合には、遅延エッジ信号ＳＤＩＬＳを選択して出力する。すなわち、セレクタ１２０5は、インターリーバ１００に入力されるデータとして、軟出力復号回路９０による軟出力復号処理又は軟出力復号回路９０が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定するために設けられるものであり、各動作モードに応じて、出力するデータを選択する。
【０１７１】
セレクタ１２０6は、動作モード情報ＣＢＦに基づいて、軟出力復号回路９０から供給される遅延受信値ＳＤＲと、インターリーバ１００から供給されるインターリーブ長遅延受信値ＩＤＯとのうち、いずれか一方を選択し、遅延受信値ＴＤＲとしてセレクタ１２０8に供給する。具体的には、セレクタ１２０6は、動作モード情報ＣＢＦが、軟出力復号回路９０による処理のみを行う通常モード、又は、軟出力復号回路９０が要する処理時間と同時間の遅延を行うべき遅延モードを示すものであった場合には、遅延受信値ＳＤＲを選択して出力し、それ以外の通常モード又は遅延モードを示すものであった場合には、インターリーブ長遅延受信値ＩＤＯを選択して出力する。すなわち、セレクタ１２０6は、出力すべきデータとして、インターリーバ１００によるインターリーブ処理又はインターリーバ１００が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定するために設けられるものであり、各動作モードに応じて、出力するデータを選択する。
【０１７２】
セレクタ１２０7は、動作モード情報ＣＢＦに基づいて、インターリーバ１００から供給されるインターリーバ出力データＩＩＯと、セレクタ１２０2から供給されるデータＴＤＬＸとのうち、いずれか一方を選択し、軟出力ＴＳＯとしてセレクタ１２０9に供給する。具体的には、セレクタ１２０7は、動作モード情報ＣＢＦが、軟出力復号回路９０による処理のみを行う通常モード、又は、軟出力復号回路９０が要する処理時間と同時間の遅延を行うべき遅延モードを示すものであった場合には、データＴＤＬＸを選択して出力し、それ以外の通常モード又は遅延モードを示すものであった場合には、インターリーバ出力データＩＩＯを選択して出力する。すなわち、セレクタ１２０7は、出力すべきデータとして、インターリーバ１００によるインターリーブ処理又はインターリーバ１００が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定するために設けられるものであり、各動作モードに応じて、出力するデータを選択する。
【０１７３】
セレクタ１２０8は、検証モード情報ＣＴＨＲに基づいて、セレクタ１２０6から供給される遅延受信値ＴＤＲと、信号線１３０により伝送されてくるスルー信号とのうち、いずれか一方を選択し、遅延受信値ＴＲＮとして外部に出力する。なお、遅延受信値ＴＲＮは、遅延受信値ＲＮとして出力される。すなわち、セレクタ１２０8は、次段の要素復号器に対する遅延受信値を出力するのか、システムの検証を行うのかを、決定するために設けられるものである。
【０１７４】
セレクタ１２０9は、検証モード情報ＣＴＨＲに基づいて、セレクタ１２０7から供給される軟出力ＴＳＯと、信号線１３０により伝送されてくるスルー信号とのうち、いずれか一方を選択し、軟出力ＴＩＮＴとして外部に出力する。なお、この軟出力ＴＩＮＴは、軟出力ＩＮＴとして出力される。すなわち、セレクタ１２０9は、次段の要素復号器に対する軟出力を出力するのか、システムの検証を行うのかを、決定するために設けられるものである。
【０１７５】
セレクタ１２０10は、検証モード情報ＣＴＨＲに基づいて、インターリーバ１００から供給される終結時刻情報ＩＧＴ及び終結ステート情報ＩＧＳと、消去位置情報ＩＧＥ及びインターリーバ無出力位置情報ＩＮＯと、遅延インターリーブ開始位置信号ＩＤＳとからなる生成次段情報と、信号線１３０により伝送されてくるスルー信号とのうち、いずれか一方を選択し、次段終結時刻情報ＴＴＮＰＮ及び次段終結ステート情報ＴＴＮＳＮと、次段消去位置情報ＴＥＲＳＮ及び次段事前確率情報消去情報ＴＥＡＰＮと、次段インターリーブ開始位置信号ＴＩＬＳＮとして外部に出力する。なお、これらの次段終結時刻情報ＴＴＮＰＮ、次段終結ステート情報ＴＴＮＳＮ、次段消去位置情報ＴＥＲＳＮ、次段事前確率情報消去情報ＴＥＡＰＮ、及び、次段インターリーブ開始位置信号ＴＩＬＳＮは、それぞれ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮとして出力される。すなわち、セレクタ１２０10は、次段の要素復号器に対する次段情報を出力するのか、システムの検証を行うのかを、決定するために設けられるものである。
【０１７６】
信号線１３０は、後述するように、主に、複数の要素復号器５０を連接することにより上述した復号装置３’，３’’と同様の復号装置３を構成した場合におけるシステムの検証を行うために用いられるものである。信号線１３０は、受信値ＴＲ、外部情報又はインターリーブデータＴＥＸＴ、消去情報ＴＥＲＳ、事前確率情報消去情報ＴＥＡＰ、終結時刻情報ＴＴＮＰ、終結ステート情報ＴＴＮＳ、及び、インターリーブ開始位置信号ＴＩＬＳのそれぞれを伝送するための信号線を束ねて構成され、これらの信号をセレクタ１２０8，１２０9，１２０10に供給する。
【０１７７】
このような要素復号器５０は、例えば、図３中破線部又は図５中破線部に示したように、軟出力復号回路とインターリーバ若しくはデインターリーバとを少なくとも含むモジュールと等価なものである。この要素復号器５０は、複数連接されることによって、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭのうち、任意の符号を復号することができる復号装置３を構成することができる。なお、要素復号器５０の全体に関する各種特徴については、後述する“４．”においてさらに説明する。
【０１７８】
以下、軟出力復号回路９０及びインターリーバ１００についてさらに詳細に説明していく。
【０１７９】
２−２  軟出力復号回路の詳細
まず、軟出力復号回路９０について詳述する。軟出力復号回路９０は、図１１に概略を示すように、符号化装置１における要素符号化器の符号情報を生成する符号情報生成回路１５１と、符号化装置１におけるパンクチャパターンを示す内部消去情報を生成する内部消去情報生成回路１５２と、符号化装置１における終結情報を生成する終結情報生成回路１５３と、復号処理のために入力されるべき受信値と事前確率情報とを選択するとともに、符号出力が存在しない位置を尤度が“０”のシンボルに置き換える受信値及び事前確率情報選択回路１５４と、受信データと遅延用のデータとをともに記憶する受信データ及び遅延用記憶回路１５５と、第１の対数尤度である対数尤度Ｉγを算出するＩγ算出回路１５６と、符号化装置１に応じて算出した対数尤度Ｉγを分配するＩγ分配回路１５７と、第２の対数尤度である対数尤度Ｉαを算出するＩα算出回路１５８と、第３の対数尤度である対数尤度Ｉβを算出するＩβ算出回路１５９と、算出した対数尤度Ｉβを記憶するＩβ記憶回路１６０と、対数軟出力Ｉλを算出する軟出力算出回路１６１と、受信値と事前確率情報とを分離する受信値又は事前確率情報分離回路１６２と、外部情報を算出する外部情報算出回路１６３と、対数軟出力Ｉλの振幅を調整するとともに所定のダイナミックレンジにクリップ（clip）する振幅調整及びクリップ回路１６４と、復号値である軟出力及び受信値を硬判定する硬判定回路１６５とを有する。
【０１８０】
ここで、同図に示す軟出力復号回路９０の左半分部分の詳細を図１２に示し、右半分部分の詳細を図１３に示す。
【０１８１】
符号情報生成回路１５１は、制御回路６０から供給される符号化率情報ＣＲＡＴと生成行列情報ＣＧとに基づいて、符号化装置１における要素符号化器の符号情報を生成する。具体的には、符号情報生成回路１５１は、符号化装置１における要素符号化器の入力ビット数を示す入力ビット数情報ＩＮと、符号化装置１における要素符号化器が畳み込み符号化器である場合に、その畳み込み符号化器がいわゆるボーゼンクラフト（Wozencraft）型であるかマッシィ（Massey）型であるかを示す型情報ＷＭと、符号化装置１における要素符号化器のシフトレジスタ、すなわち、ステート（遷移状態）を表すメモリの数を示すメモリ数情報ＭＮと、符号化装置１における要素符号化器の状態遷移図であるトレリスにおいて、各枝に関する時間軸に沿った入出力情報を示す枝入出力情報ＢＩＯと、符号化装置１における要素符号化器からの出力が存在しており、対応する受信値が存在していることを表す出力位置の有効性を示す有効出力位置情報ＰＥとを生成する。
【０１８２】
ここで、ボーゼンクラフト型の畳み込み符号化器とマッシィ型の畳み込み符号化器とについて説明する。
【０１８３】
ボーゼンクラフト型の畳み込み符号化器は、遅延素子と組み合わせ回路とからなり、遅延素子に対して時系列にデータが保持されるものである。ボーゼンクラフト型の畳み込み符号化器の例としては、例えば図１４に示すように、４つのシフトレジスタ２０１1，２０１2，２０１3，２０１4と、１６個の排他的論理和回路２０２1，２０２2，２０２3，２０２4，２０２5，２０２6，２０２7，２０２8，２０２9，２０２10，２０２11，２０２12，２０２13，２０２14，２０２15，２０２16及び２０個のＡＮＤゲートＧ０［０］，ＧＢ［０］，ＧＢ［１］，ＧＢ［２］，ＧＢ［３］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ１［３］，Ｇ１［４］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ２［３］，Ｇ２［４］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］，Ｇ３［３］，Ｇ３［４］で表される組み合わせ回路とを有し、符号化率が“１／４”の畳み込み演算を行うものがある。なお、この畳み込み符号化器において、ＡＮＤゲートＧ０［０］，ＧＢ［０］，ＧＢ［１］，ＧＢ［２］，ＧＢ［３］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ１［３］，Ｇ１［４］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ２［３］，Ｇ２［４］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］，Ｇ３［３］，Ｇ３［４］は、符号構成により結線するか否かを示すものであり、全てのＡＮＤゲートが用いられるわけではない。すなわち、この畳み込み符号化器は、これらのＡＮＤゲートＧ０［０］，ＧＢ［０］，ＧＢ［１］，ＧＢ［２］，ＧＢ［３］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ１［３］，Ｇ１［４］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ２［３］，Ｇ２［４］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］，Ｇ３［３］，Ｇ３［４］によって、組み合わせ回路が変化し、符号構成が変化するものであって、ステート数が最大で“２4＝１６”のボーゼンクラフト型の畳み込み演算を行うことができるものである。この畳み込み符号化器の生成行列Ｇは次式（２７）で表される。次式（２７）において、ＧＢ（Ｄ），Ｇ１（Ｄ），Ｇ２（Ｄ），Ｇ３（Ｄ）は、それぞれ、次式（２８）乃至次式（３１）で表される。
【０１８４】
【数２７】
0004543522.tif 000028
【０１８５】
【数２８】
0004543522.tif 000029
【０１８６】
【数２９】
0004543522.tif 000030
【０１８７】
【数３０】
0004543522.tif 000031
【０１８８】
【数３１】
0004543522.tif 000032
【０１８９】
また、ボーゼンクラフト型の畳み込み符号化器の例としては、例えば図１５に示すように、３つのシフトレジスタ２０３1，２０３2，２０３3と、１２個の排他的論理和回路２０４1，２０４2，２０４3，２０４4，２０４5，２０４6，２０４7，２０４8，２０４9，２０４10，２０４11，２０４12及び１５個のＡＮＤゲートＧ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ１［３］，Ｇ１［４］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ２［３］，Ｇ２［４］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］，Ｇ３［３］，Ｇ３［４］で表される組み合わせ回路とを有し、符号化率が“２／３”の畳み込み演算を行うものがある。なお、この畳み込み符号化器においても、ＡＮＤゲートＧ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ１［３］，Ｇ１［４］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ２［３］，Ｇ２［４］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］，Ｇ３［３］，Ｇ３［４］は、符号構成により結線するか否かを示すものであり、全てのＡＮＤゲートが用いられるわけではなく、組み合わせ回路が変化し、符号構成が変化するものであって、ステート数が最大で“２3＝８”のボーゼンクラフト型の畳み込み演算を行うことができるものである。この畳み込み符号化器の生成行列Ｇは次式（３２）で表される。次式（３２）において、Ｇ１１（Ｄ），Ｇ２１（Ｄ），Ｇ３１（Ｄ），Ｇ１２（Ｄ），Ｇ２２（Ｄ），Ｇ３２（Ｄ）は、それぞれ、次式（３３）乃至次式（３８）で表される。
【０１９０】
【数３２】
0004543522.tif 000033
【０１９１】
【数３３】
0004543522.tif 000034
【０１９２】
【数３４】
0004543522.tif 000035
【０１９３】
【数３５】
0004543522.tif 000036
【０１９４】
【数３６】
0004543522.tif 000037
【０１９５】
【数３７】
0004543522.tif 000038
【０１９６】
【数３８】
0004543522.tif 000039
【０１９７】
一方、マッシィ型の畳み込み符号化器は、遅延素子と組み合わせ回路とからなり、入力ビットのいずれかが組織成分としてそのまま出力される構成とされるものであり、遅延素子に対して時系列にデータが保持されないものである。マッシィ型の畳み込み符号化器の例としては、例えば図１６に示すように、３つのシフトレジスタ２０５1，２０５2，２０５3と、４つの排他的論理和回路２０６1，２０６2，２０６3，２０６4及び１１個のＡＮＤゲートＧＢ［０］，ＧＢ［１］，ＧＢ［２］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ１［３］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ２［３］で表される組み合わせ回路とを有し、符号化率が“２／３”の畳み込み演算を行うものがある。なお、この畳み込み符号化器においても、ＡＮＤゲートＧＢ［０］，ＧＢ［１］，ＧＢ［２］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ１［３］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ２［３］は、符号構成により結線するか否かを示すものであり、全てのＡＮＤゲートが用いられるわけではなく、組み合わせ回路が変化し、符号構成が変化するものであって、ステート数が最大で“２3＝８”のマッシィ型の畳み込み演算を行うことができるものである。この畳み込み符号化器の生成行列Ｇは次式（３９）で表される。次式（３９）において、ＧＢ（Ｄ），Ｇ１（Ｄ），Ｇ２（Ｄ）は、それぞれ、次式（４０）乃至次式（４２）で表される。
【０１９８】
【数３９】
0004543522.tif 000040
【０１９９】
【数４０】
0004543522.tif 000041
【０２００】
【数４１】
0004543522.tif 000042
【０２０１】
【数４２】
0004543522.tif 000043
【０２０２】
また、マッシィ型の畳み込み符号化器の例としては、例えば図１７に示すように、２つのシフトレジスタ２０７1，２０７2と、３つの排他的論理和回路２０８1，２０８2，２０８3及び１１個のＡＮＤゲートＧＢ［０］，ＧＢ［１］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］で表される組み合わせ回路とを有し、符号化率が“３／３”の畳み込み演算を行うものがある。なお、この畳み込み符号化器においても、ＡＮＤゲートＧＢ［０］，ＧＢ［１］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ２［０］，Ｇ２［１］，Ｇ２［２］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］は、符号構成により結線するか否かを示すものであり、全てのＡＮＤゲートが用いられるわけではなく、組み合わせ回路が変化し、符号構成が変化するものであって、ステート数が最大で“２2＝４”のマッシィ型の畳み込み演算を行うことができるものである。この畳み込み符号化器の生成行列Ｇは次式（４３）で表される。次式（４３）において、ＧＢ（Ｄ），Ｇ１（Ｄ），Ｇ２（Ｄ），Ｇ３（Ｄ）は、それぞれ、次式（４４）乃至次式（４７）で表される。
【０２０３】
【数４３】
0004543522.tif 000044
【０２０４】
【数４４】
0004543522.tif 000045
【０２０５】
【数４５】
0004543522.tif 000046
【０２０６】
【数４６】
0004543522.tif 000047
【０２０７】
【数４７】
0004543522.tif 000048
【０２０８】
ここで、符号情報生成回路１５１により生成される情報について具体的に説明するために、各畳み込み符号化器の具体例を示す。
【０２０９】
まず、図１４に示したボーゼンクラフト型の畳み込み符号化器としては、１５個のＡＮＤゲートＧ０［０］，ＧＢ［２］，ＧＢ［３］，Ｇ１［０］，Ｇ１［１］，Ｇ１［３］，Ｇ１［４］，Ｇ２［０］，Ｇ２［２］，Ｇ２［４］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］，Ｇ３［３］，Ｇ３［４］を結線すると、図１８に示すように、４つのシフトレジスタ２０１1，２０１2，２０１3，２０１4と、１１個の排他的論理和回路２０２1，２０２4，２０２5，２０２7，２０２8，２０２10，２０２12，２０２13，２０２14，２０２15，２０２16とを有するものが考えられる。この畳み込み符号化器は、１ビットの入力データｉ0を入力すると、この入力データｉ0に対して畳み込み演算を行い、演算結果を４ビットの出力データＯ0，Ｏ1，Ｏ2，Ｏ3として出力する。
【０２１０】
この畳み込み符号化器におけるトレリスを記述すると、図１９に示すようになる。同図において、各枝に付されたラベルは枝番号を示している。この枝番号に対する遷移前後のステートと入力データ／出力データとの関係は、次表１に示すようになる。ここでは、ステートは、シフトレジスタ２０１4、シフトレジスタ２０１3、シフトレジスタ２０１2及びシフトレジスタ２０１1の内容を順次並べたものであり、“００００”、“０００１”、“００１０”、“００１１”、“０１００”、“０１０１”、“０１１０”、“０１１１”、“１０００”、“１００１”、“１０１０”、“１０１１”、“１１００”、“１１０１”、“１１１０”、“１１１１”のステート番号を、それぞれ、“０”、“１”、“２”、“３”、“４”、“５”、“６”、“７”、“８”、“９”、“１０”、“１１”、“１２”、“１３”、“１４”、“１５”と表している。また、入力データ／出力データは、ｉ0／Ｏ3，Ｏ2，Ｏ1，Ｏ0である。
【０２１１】
【表１】
0004543522.tif 000049
【０２１２】
このように、図１８に示す畳み込み符号化器におけるステート数は１６となり、トレリスは、各ステートから次時刻におけるステートへと２本のパスが到達する構造であり、全３２本の枝を有する構造を有するものとなる。
【０２１３】
符号情報生成部１５１は、この畳み込み符号化器の場合、入力ビット数情報ＩＮとして“１ビット”を、型情報ＷＭとして“ボーゼンクラフト型”を、メモリ数情報ＭＮとして“４”を、枝入出力情報ＢＩＯとして表１に示すような各枝の入出力パターンを生成する。
【０２１４】
また、図１５に示したボーゼンクラフト型の畳み込み符号化器としては、９個のＡＮＤゲートＧ１［２］，Ｇ１［３］，Ｇ２［０］，Ｇ２［４］，Ｇ３［０］，Ｇ３［１］，Ｇ３［２］，Ｇ３［３］，Ｇ３［４］を結線すると、図２０に示すように、３つのシフトレジスタ２０３1，２０３2，２０３3と、６個の排他的論理和回路２０４5，２０４6，２０４9，２０４10，２０４11，２０４12とを有するものが考えられる。この畳み込み符号化器は、２ビットの入力データｉ0，ｉ1を入力すると、これらの入力データｉ0，ｉ1に対して畳み込み演算を行い、演算結果を３ビットの出力データＯ0，Ｏ1，Ｏ2として出力する。
【０２１５】
この畳み込み符号化器におけるトレリスを記述すると、図２１に示すようになる。同図において、各枝に付されたラベルは枝番号を示している。この枝番号に対する遷移前後のステートと入力データ／出力データとの関係は、次表２に示すようになる。ここでは、ステートは、シフトレジスタ２０３3、シフトレジスタ２０３2及びシフトレジスタ２０３1の内容を順次並べたものであり、“０００”、“００１”、“０１０”、“０１１”、“１００”、“１０１”、“１１０”、“１１１”のステート番号を、それぞれ、“０”、“１”、“２”、“３”、“４”、“５”、“６”、“７”と表している。また、入力データ／出力データは、ｉ1，ｉ0／Ｏ2，Ｏ1，Ｏ0である。
【０２１６】
【表２】
0004543522.tif 000050
【０２１７】
このように、図２０に示す畳み込み符号化器におけるステート数は８となり、トレリスは、各ステートから次時刻におけるステートへと４本のパスが到達する構造であり、全３２本の枝を有するものとなる。
【０２１８】
符号情報生成部１５１は、この畳み込み符号化器の場合、入力ビット数情報ＩＮとして“２ビット”を、型情報ＷＭとして“ボーゼンクラフト型”を、メモリ数情報ＭＮとして“３”を、枝入出力情報ＢＩＯとして表２に示すような各枝の入出力パターンを生成する。
【０２１９】
さらに、図１６に示したマッシィ型の畳み込み符号化器としては、３つのＡＮＤゲートＧＢ［２］，Ｇ１［２］，Ｇ２［１］を結線すると、図２２に示すように、３つのシフトレジスタ２０５1，２０５2，２０５3と、２つの排他的論理和回路２０６2，２０６3とを有するものが考えられる。この畳み込み符号化器は、２ビットの入力データｉ0，ｉ1を入力すると、これらの入力データｉ0，ｉ1に対して再帰的組織畳み込み演算を行い、演算結果を３ビットの出力データＯ0，Ｏ1，Ｏ2として出力する。
【０２２０】
この畳み込み符号化器におけるトレリスを記述すると、図２３に示すようになる。同図において、各枝に付されたラベルは枝番号を示している。この枝番号に対する遷移前後のステートと入力データ／出力データとの関係は、次表３に示すようになる。ここでは、ステートは、シフトレジスタ２０５1、シフトレジスタ２０５2及びシフトレジスタ２０５3の内容を順次並べたものであり、“０００”、“００１”、“０１０”、“０１１”、“１００”、“１０１”、“１１０”、“１１１”のステート番号を、それぞれ、“０”、“１”、“２”、“３”、“４”、“５”、“６”、“７”と表している。また、入力データ／出力データは、ｉ1，ｉ0／Ｏ2，Ｏ1，Ｏ0である。
【０２２１】
【表３】
0004543522.tif 000051
【０２２２】
このように、図２２に示す畳み込み符号化器におけるステート数は８となり、トレリスは、各ステートから次時刻におけるステートへと４本のパスが到達する構造であり、全３２本の枝を有するものとなる。
【０２２３】
符号情報生成部１５１は、この畳み込み符号化器の場合、入力ビット数情報ＩＮとして“２ビット”を、型情報ＷＭとして“マッシィ型”を、メモリ数情報ＭＮとして“３”を、枝入出力情報ＢＩＯとして表３に示すような各枝の入出力パターンを生成する。
【０２２４】
さらにまた、図１７に示したマッシィ型の畳み込み符号化器としては、６個のＡＮＤゲートＧＢ［１］，Ｇ１［０］，Ｇ１［１］，Ｇ１［２］，Ｇ２［０］，Ｇ３［０］を結線すると、図２４に示すように、２つのシフトレジスタ２０７1，２０７2と、３つの排他的論理和回路２０８1，２０８2，２０８3とを有するものが考えられる。この畳み込み符号化器は、３ビットの入力データｉ0，ｉ1，ｉ2を入力すると、これらの入力データｉ0，ｉ1，ｉ2に対して再帰的組織畳み込み演算を行い、演算結果を３ビットの出力データＯ0，Ｏ1，Ｏ2として出力する。
【０２２５】
この畳み込み符号化器におけるトレリスを記述すると、図２５に示すようになる。同図において、各枝に付されたラベルは枝番号を示している。この枝番号に対する遷移前後のステートと入力データ／出力データとの関係は、次表４に示すようになる。ここでは、ステートは、シフトレジスタ２０７1及びシフトレジスタ２０７2の内容を順次並べたものであり、“００”、“０１”、“１０”、“１１”のステート番号を、それぞれ、“０”、“１”、“２”、“３”と表している。また、入力データ／出力データは、ｉ2，ｉ1，ｉ0／Ｏ2，Ｏ1，Ｏ0である。
【０２２６】
【表４】
0004543522.tif 000052
【０２２７】
このように、図２４に示す畳み込み符号化器におけるステート数は４となり、トレリスは、各ステートから次時刻におけるステートへと４組のパラレルパスが到達する構造であり、全３２本の枝を有するものとなる。
【０２２８】
符号情報生成部１５１は、この畳み込み符号化器の場合、入力ビット数情報ＩＮとして“３ビット”を、型情報ＷＭとして“マッシィ型”を、メモリ数情報ＭＮとして“２”を、枝入出力情報ＢＩＯとして表４に示すような各枝の入出力パターンを生成する。
【０２２９】
このように、符号情報生成回路１５１は、符号化装置１における要素符号化器に応じた符号情報を生成する。特に、符号情報生成回路１５１は、符号に応じたトレリス上の全ての枝の入出力パターンを算出し、枝入出力情報ＢＩＯを生成するが、これについては、さらに後述する。符号情報生成回路１５１は、生成した入力ビット数情報ＩＮを、終結情報生成回路１５３、受信値及び事前確率情報１５４、Ｉγ算出回路１５６、Ｉγ分配回路１５７、Ｉα算出回路１５８、Ｉβ算出回路１５９、軟出力算出回路１６１、受信値又は事前確率情報分離回路１６２、及び、硬判定回路１６５に供給する。また、符号情報生成回路１５１は、生成した型情報ＷＭを、Ｉγ算出回路１５６、Ｉγ分配回路１５７、Ｉα算出回路１５８及びＩβ算出回路１５９に供給する。さらに、符号情報生成回路１５１は、生成したメモリ数情報ＭＮを、終結情報生成回路１５３、Ｉγ分配回路１５７、Ｉα算出回路１５８、Ｉβ算出回路１５９、及び、軟出力算出回路１６１に供給する。さらにまた、符号情報生成回路１５１は、生成した枝入出力情報ＢＩＯを、Ｉγ分配回路１５７及び軟出力算出回路１６１に供給する。また、符号情報生成回路１５１は、生成した有効出力位置情報ＰＥを内部消去情報生成回路１５２に供給する。
【０２３０】
内部消去情報生成回路１５２は、外部から供給される消去情報ＴＥＲＳと、符号情報生成回路１５１から供給される有効出力位置情報ＰＥとに基づいて、パンクチャパターンと有効出力位置とを総括的に考慮して得られる符号出力が存在しない位置を示す内部消去位置情報ＩＥＲＳを生成する。
【０２３１】
具体的には、内部消去情報生成回路１５２は、例えば図２６に示すように、４つのＯＲゲート２１１1，２１１2，２１１3，２１１4を有するものとして実現することができる。
【０２３２】
ＯＲゲート２１１1，２１１2，２１１3，２１１4は、それぞれ、消去情報ＴＥＲＳと、符号情報生成回路１５１から供給される有効出力位置情報ＰＥを反転したデータとの論理和をとる。ＯＲゲート２１１1，２１１2，２１１3，２１１4は、それぞれ、得られた論理和を内部消去位置情報ＩＥＲＳとして受信値及び事前確率情報選択回路１５４に供給する。
【０２３３】
このように、内部消去情報生成回路１５２は、ＯＲゲート２１１1，２１１2，２１１3，２１１4による論理和をとることによって、符号出力が存在しない位置を示す内部消去位置情報ＩＥＲＳを生成する。
【０２３４】
終結情報生成回路１５３は、外部から供給される終結時刻情報ＴＴＮＰ及び終結ステート情報ＴＴＮＳと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮ及びメモリ数情報ＭＮとに基づいて、符号化装置１における終結情報を生成する。具体的には、終結情報生成回路１５３は、終結時刻情報ＴＴＮＰ、終結ステート情報ＴＴＮＳ、入力ビット数情報ＩＮ及びメモリ数情報ＭＮに基づいて、符号化装置１における終結時刻を示す終結時刻情報ＴＰＭ及び終結ステートを示す終結ステート情報ＴＳＭを生成する。
【０２３５】
終結情報生成回路１５３は、例えば図２７に示すように、複数のレジスタ２１２1，２１２2，２１２3，２１２4，２１２5，２１２6と、複数のセレクタ２１３1，２１３2，２１３3，２１３4，２１３5，２１３6，２１３7，２１３8，２１３9と、ＡＮＤゲート２１４とを有するものとして実現することができる。
【０２３６】
レジスタ２１２1は、外部から供給される終結時刻情報ＴＴＮＰを１クロックだけ保持し、保持した終結時刻情報ＴＴＮＰをレジスタ２１２2及びセレクタ２１３3に供給する。
【０２３７】
レジスタ２１２2は、レジスタ２１２1から供給される終結時刻情報ＴＴＮＰを１クロックだけ保持し、保持した終結時刻情報ＴＴＮＰをレジスタ２１２3及びセレクタ２１３4に供給する。
【０２３８】
レジスタ２１２3は、レジスタ２１２2から供給される終結時刻情報ＴＴＮＰを１クロックだけ保持し、保持した終結時刻情報ＴＴＮＰをセレクタ２１３5に供給する。
【０２３９】
レジスタ２１２4は、外部から供給される終結ステート情報ＴＴＮＳを１クロックだけ保持し、保持した終結ステート情報ＴＴＮＳをレジスタ２１２5及びセレクタ２１３6に供給する。
【０２４０】
レジスタ２１２5は、レジスタ２１２4から供給される終結ステート情報ＴＴＮＳを１クロックだけ保持し、保持した終結ステート情報ＴＴＮＳをレジスタ２１２6及びセレクタ２１３7に供給する。
【０２４１】
レジスタ２１２6は、レジスタ２１２5から供給される終結ステート情報ＴＴＮＳを１クロックだけ保持し、保持した終結ステート情報ＴＴＮＳをセレクタ２１３8に供給する。
【０２４２】
セレクタ２１３1は、入力ビット数情報ＩＮに基づいて、メモリ数情報ＭＮのうち、例えば、符号化装置１における要素符号化器のメモリ数が“１”であることを示す情報と、メモリ数が“２”であることを示す情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１３1は、例えば、符号化装置１における入力ビット数が“１”である場合には、メモリ数が“１”であることを示す情報を選択する。セレクタ２１３1は、選択したデータを選択用の制御信号としてセレクタ２１３3に供給する。
【０２４３】
セレクタ２１３2は、入力ビット数情報ＩＮに基づいて、メモリ数情報ＭＮのうち、例えば、符号化装置１における要素符号化器のメモリ数が“２”であることを示す情報と、メモリ数が“３”であることを示す情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１３2は、例えば、符号化装置１における入力ビット数が“１”である場合には、メモリ数が“２”であることを示す情報を選択する。セレクタ２１３2は、選択したデータを選択用の制御信号としてセレクタ２１３4に供給する。
【０２４４】
セレクタ２１３3は、セレクタ２１３1により選択されたデータに基づいて、レジスタ２１２1から供給される終結時刻情報ＴＴＮＰと値が“１”であるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１３3は、符号化装置１における要素符号化器のメモリ数が“１”である場合には、レジスタ２１２1から供給される終結時刻情報ＴＴＮＰを選択する。セレクタ２１３3は、選択したデータをＡＮＤゲート２１４に供給する。
【０２４５】
セレクタ２１３4は、セレクタ２１３2により選択されたデータに基づいて、レジスタ２１２2から供給される終結時刻情報ＴＴＮＰと値が“１”であるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１３4は、符号化装置１における要素符号化器のメモリ数が“２”である場合には、レジスタ２１２2から供給される終結時刻情報ＴＴＮＰを選択する。セレクタ２１３4は、選択したデータをＡＮＤゲート２１４に供給する。
【０２４６】
セレクタ２１３5は、メモリ数情報ＭＮに基づいて、レジスタ２１２3から供給される終結時刻情報ＴＴＮＰと値が“１”であるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１３5は、符号化装置１における要素符号化器のメモリ数が“３”である場合には、レジスタ２１２3から供給される終結時刻情報ＴＴＮＰを選択する。セレクタ２１３5は、選択したデータをＡＮＤゲート２１４に供給する。
【０２４７】
セレクタ２１３6は、メモリ数情報ＭＮに基づいて、レジスタ２１２4から供給される終結ステート情報ＴＴＮＳと値が“０”であるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１３6は、符号化装置１における要素符号化器のメモリ数が“１”である場合には、レジスタ２１２4から供給される終結ステート情報ＴＴＮＳを選択する。セレクタ２１３6は、選択したデータをセレクタ２１３8に供給する。
【０２４８】
セレクタ２１３7は、メモリ数情報ＭＮに基づいて、レジスタ２１２5から供給される終結ステート情報ＴＴＮＳと値が“０”であるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１３7は、符号化装置１における要素符号化器のメモリ数が“２”である場合には、レジスタ２１２5から供給される終結ステート情報ＴＴＮＳを選択する。セレクタ２１３7は、選択したデータをセレクタ２１３8に供給する。
【０２４９】
セレクタ２１３8は、メモリ数情報ＭＮに基づいて、レジスタ２１２6から供給される終結ステート情報ＴＴＮＳと値が“０”であるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１３8は、符号化装置１における要素符号化器のメモリ数が“３”である場合には、レジスタ２１２6から供給される終結ステート情報ＴＴＮＳを選択する。セレクタ２１３8は、選択したデータをセレクタ２１３8に供給する。
【０２５０】
セレクタ２１３9は、入力ビット数情報ＩＮに基づいて、外部から供給される終結ステート情報ＴＴＮＳと、セレクタ２１３6，２１３7，２１３8から供給されるデータとのうち、いずれか一方を選択する。セレクタ２１３9は、選択したデータを終結ステート情報ＴＳＭとして受信データ及び遅延用記憶回路１５５に供給する。
【０２５１】
ＡＮＤゲート２１４は、外部から供給される終結時刻情報ＴＴＮＰと、セレクタ２１３3，２１３4，２１３5から供給されるデータとの論理積をとる。ＡＮＤゲート２１４は、得られた論理積を終結時刻情報ＴＰＭとして受信データ及び遅延用記憶回路１５５に供給する。
【０２５２】
このような終結情報生成回路１５３は、メモリ数情報ＭＮに基づいて、終結期間を把握し、この終結期間に応じたデータの選択をセレクタ２１３3，２１３4，２１３5，２１３6，２１３7，２１３8により行うことによって、任意の終結期間の終結情報を生成することができる。特に、終結情報生成回路１５３は、後述するように、符号化装置１における要素符号化器がボーゼンクラフト型の畳み込み符号化器であった場合には、終結情報として、入力ビット数分の情報を終結期間分だけ生成することによって、終結ステートを明示する。また、終結情報生成回路１５３は、後述するように、符号化装置１における要素符号化器が例えばマッシィ型といったボーゼンクラフト型の畳み込み符号化器以外のものであった場合には、終結情報として、終結ステートを示す情報を１タイムスロットで生成することによって、終結ステートを１タイムスロットで明示する。
【０２５３】
受信値及び事前確率情報選択回路１５４は、後述するように、任意の符号の復号を行うために設けられるものである。受信値及び事前確率情報選択回路１５４は、制御回路６０から供給される受信値形式情報ＣＲＴＹと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮと、外部から供給される事前確率情報消去情報ＴＥＡＰと、内部消去情報生成回路１５２から供給される内部消去位置情報ＩＥＲＳとに基づいて、入力した復号受信値ＴＳＲと外部情報又はインターリーブデータＴＥＸＴとのうち、軟出力復号を行うために必要な情報を選択する。また、受信値及び事前確率情報選択回路１５４は、後述するように、内部消去情報生成回路１５２から供給される内部消去位置情報ＩＥＲＳに基づいて、符号出力が存在しない位置を尤度が“０”のシンボルに置き換える。すなわち、受信値及び事前確率情報選択回路１５４は、符号出力が存在しない位置に相当するビットが“０”であるか“１”であるかの確率が“１／２”であるものとするような情報を出力する。
【０２５４】
具体的には、受信値及び事前確率情報選択回路１５４は、例えば、復号受信値ＴＳＲが４系統の復号受信値ＴＳＲ０，ＴＳＲ１，ＴＳＲ２，ＴＳＲ３からなるとともに、外部情報又はインターリーブデータＴＥＸＴが３系統の外部情報又はインターリーブデータＴＥＸＴ０，ＴＥＸＴ１，ＴＥＸＴ２からなるものとすると、例えば図２８に示すように、１６個のセレクタ２１５1，２１５2，２１５3，２１５4，２１５5，２１５6，２１５7，２１５8，２１５9，２１５10，２１５11，２１５12，２１５13，２１５14，２１５15，２１５16とを有するものとして実現することができる。
【０２５５】
セレクタ２１５1は、受信値形式情報ＣＲＴＹに基づいて、復号受信値ＴＳＲ０と、外部情報又はインターリーブデータＴＥＸＴ０とのうち、いずれか一方を選択する。具体的には、セレクタ２１５1は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、外部情報又はインターリーブデータＴＥＸＴ０を選択する。セレクタ２１５1は、選択したデータをセレクタ２１５8に供給する。
【０２５６】
セレクタ２１５2は、受信値形式情報ＣＲＴＹに基づいて、復号受信値ＴＳＲ１と、外部情報又はインターリーブデータＴＥＸＴ１とのうち、いずれか一方を選択する。具体的には、セレクタ２１５2は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、外部情報又はインターリーブデータＴＥＸＴ１を選択する。セレクタ２１５2は、選択したデータをセレクタ２１５9に供給する。
【０２５７】
セレクタ２１５3は、受信値形式情報ＣＲＴＹに基づいて、復号受信値ＴＳＲ２と、外部情報又はインターリーブデータＴＥＸＴ２とのうち、いずれか一方を選択する。具体的には、セレクタ２１５3は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、外部情報又はインターリーブデータＴＥＸＴ２を選択する。セレクタ２１５3は、選択したデータをセレクタ２１５10に供給する。
【０２５８】
セレクタ２１５4は、受信値形式情報ＣＲＴＹに基づいて、外部情報又はインターリーブデータＴＥＸＴ０と、値が“０”である事前確率情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５4は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、値が“０”である事前確率情報を選択する。セレクタ２１５4は、選択したデータをセレクタ２１５12に供給する。
【０２５９】
セレクタ２１５5は、受信値形式情報ＣＲＴＹに基づいて、外部情報又はインターリーブデータＴＥＸＴ１と、値が“０”である事前確率情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５5は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、値が“０”である事前確率情報を選択する。セレクタ２１５5は、選択したデータをセレクタ２１５13に供給する。
【０２６０】
セレクタ２１５6は、受信値形式情報ＣＲＴＹに基づいて、外部情報又はインターリーブデータＴＥＸＴ２と、値が“０”である事前確率情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５6は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、値が“０”である事前確率情報を選択する。セレクタ２１５6は、選択したデータをセレクタ２１５14に供給する。
【０２６１】
セレクタ２１５7は、受信値形式情報ＣＲＴＹに基づいて、内部消去位置情報ＩＥＲＳのうち、例えば、符号化装置１における要素符号化器から出力される出力ビットのうちの１シンボル目が存在しないことを示す情報と、２シンボル目が存在しないことを示す情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５7は、符号化装置１がＴＴＣＭ又はＳＣＴＣＭによる符号化を行うものでないことを受信値形式情報ＣＲＴＹが示すものであった場合には、２シンボル目が存在しないことを示す情報を選択する。セレクタ２１５7は、選択したデータを選択用の制御信号としてセレクタ２１５9に供給する。なお、このセレクタ２１５7による選択動作は、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合における消去動作に起因するものである。すなわち、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合における消去動作は、同相成分及び直交成分のシンボルをともに消去するものとなるため、セレクタ２１５7は、２シンボル目が存在しないことを示す情報を選択することになる。
【０２６２】
セレクタ２１５8は、内部消去位置情報ＩＥＲＳに基づいて、セレクタ２１５1から供給されるデータと、値が“０”である情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５8は、内部消去位置情報ＩＥＲＳが符号化装置１における要素符号化器から出力される出力ビットのうちの１シンボル目が存在しないことを示すものであった場合には、値が“０”である情報を選択する。
セレクタ２１５8により選択されたデータは、セレクタ２１５9，２１５10，２１５14，２１５15，２１５16から供給されるデータとともに束ねられ、選択受信値及び事前確率情報ＲＡＰとして受信データ及び遅延用記憶回路１５５に供給される。
【０２６３】
セレクタ２１５9は、セレクタ２１５7から供給されるデータに基づいて、セレクタ２１５2から供給されるデータと、値が“０”である情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５9は、セレクタ２１５7から供給されるデータが符号化装置１における要素符号化器から出力される出力ビットのうちの２シンボル目が存在しないことを示すものであった場合には、値が“０”である情報を選択する。セレクタ２１５9により選択されたデータは、セレクタ２１５8，２１５10，２１５14，２１５15，２１５16から供給されるデータとともに束ねられ、選択受信値及び事前確率情報ＲＡＰとして受信データ及び遅延用記憶回路１５５に供給される。
【０２６４】
セレクタ２１５10は、内部消去位置情報ＩＥＲＳに基づいて、セレクタ２１５3から供給されるデータと、値が“０”である情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５10は、内部消去位置情報ＩＥＲＳが符号化装置１における要素符号化器から出力される出力ビットのうちの３シンボル目が存在しないことを示すものであった場合には、値が“０”である情報を選択する。セレクタ２１５10により選択されたデータは、セレクタ２１５8，２１５9，２１５14，２１５15，２１５16から供給されるデータとともに束ねられ、選択受信値及び事前確率情報ＲＡＰとして受信データ及び遅延用記憶回路１５５に供給される。
【０２６５】
セレクタ２１５11は、内部消去位置情報ＩＥＲＳに基づいて、復号受信値ＴＳＲ３と、値が“０”である情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５11は、内部消去位置情報ＩＥＲＳが符号化装置１における要素符号化器から出力される出力ビットのうちの４シンボル目が存在しないことを示すものであった場合には、値が“０”である情報を選択する。セレクタ２１５11は、選択したデータをセレクタ２１５15に供給する。
【０２６６】
セレクタ２１５12は、事前確率情報消去情報ＴＥＡＰに基づいて、セレクタ２１５4から供給されるデータと、値が“０”である情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５12は、事前確率情報消去情報ＴＥＡＰがパンクチャされていることを示すものであった場合には、値が“０”である情報を選択する。セレクタ２１５12は、選択したデータをセレクタ２１５15，２１５16に供給する。
【０２６７】
セレクタ２１５13は、事前確率情報消去情報ＴＥＡＰに基づいて、セレクタ２１５5から供給されるデータと、値が“０”である情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５13は、事前確率情報消去情報ＴＥＡＰがパンクチャされていることを示すものであった場合には、値が“０”である情報を選択する。セレクタ２１５13は、選択したデータをセレクタ２１５16に供給する。
【０２６８】
セレクタ２１５14は、事前確率情報消去情報ＴＥＡＰに基づいて、セレクタ２１５6から供給されるデータと、値が“０”である情報とのうち、いずれか一方を選択する。具体的には、セレクタ２１５14は、事前確率情報消去情報ＴＥＡＰがパンクチャされていることを示すものであった場合には、値が“０”である情報を選択する。セレクタ２１５14により選択されたデータは、セレクタ２１５8，２１５9，２１５10，２１５15，２１５16から供給されるデータとともに束ねられ、選択受信値及び事前確率情報ＲＡＰとして受信データ及び遅延用記憶回路１５５に供給される。
【０２６９】
セレクタ２１５15は、入力ビット数情報ＩＮに基づいて、セレクタ２１５11から供給されるデータと、セレクタ２１５12から供給されるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１５15は、符号化装置１における要素符号化器の符号化率が“１／ｎ”で表され、且つ、入力ビット数が“１”であることを入力ビット数情報ＩＮが示すものであった場合には、セレクタ２１５11から供給されるデータを選択する。セレクタ２１５15により選択されたデータは、セレクタ２１５8，２１５9，２１５10，２１５14，２１５16から供給されるデータとともに束ねられ、選択受信値及び事前確率情報ＲＡＰとして受信データ及び遅延用記憶回路１５５に供給される。
【０２７０】
セレクタ２１５16は、入力ビット数情報ＩＮに基づいて、セレクタ２１５12から供給されるデータと、セレクタ２１５13から供給されるデータとのうち、いずれか一方を選択する。具体的には、セレクタ２１５16は、符号化装置１における要素符号化器の符号化率が“１／ｎ”で表され、且つ、入力ビット数が“１”であることを入力ビット数情報ＩＮが示すものであった場合には、セレクタ２１５12から供給されるデータを選択する。セレクタ２１５16により選択されたデータは、セレクタ２１５8，２１５9，２１５10，２１５14，２１５15から供給されるデータとともに束ねられ、選択受信値及び事前確率情報ＲＡＰとして受信データ及び遅延用記憶回路１５５に供給される。
【０２７１】
このような受信値及び事前確率情報選択回路１５４は、セレクタ２１５1，２１５2，２１５3，２１５4，２１５5，２１５6により復号受信値ＴＳＲと外部情報又はインターリーブデータＴＥＸＴとを選択することによって、これらの復号受信値ＴＳＲと外部情報又はインターリーブデータＴＥＸＴとを符号尤度として切り替えることができ、軟出力復号を行うために入力されるべき情報を適切に選択することができる。また、受信値及び事前確率情報選択回路１５４は、セレクタ２１５8，２１５9，２１５10，２１５11，２１５12，２１５13，２１５14による選択動作を行うことによって、符号出力が存在しない位置を尤度が“０”のシンボルに置き換えることができる。
【０２７２】
受信データ及び遅延用記憶回路１５５は、図示しないが、例えば、複数バンクのＲＡＭと、制御回路と、選択回路とを有する。受信データ及び遅延用記憶回路１５５は、終結情報生成回路１５３から供給される終結時刻情報ＴＰＭ及び終結ステート情報ＴＳＭと、受信値及び事前確率情報選択回路１５４から供給される選択受信値及び事前確率情報ＲＡＰとを記憶する。
【０２７３】
そして、受信データ及び遅延用記憶回路１５５は、内部の制御回路による制御の下に、記憶した終結時刻情報ＴＰＭ及び終結ステート情報ＴＳＭのうち、所定の情報を選択回路により選択し、Ｉα算出回路１５８にて用いる終結情報ＴＡＬ、Ｉβ算出回路１５９にて用いる終結情報ＴＢ０，ＴＢ１として出力する。終結情報ＴＡＬは、所定の遅延が施された後、終結情報ＴＡＬＤとしてＩα算出回路１５８に供給される。また、終結情報ＴＢ０，ＴＢ１は、それぞれ、所定の遅延が施された後、終結情報ＴＢ０Ｄ，ＴＢ１ＤとしてＩβ算出回路１５９に供給される。
【０２７４】
また、受信データ及び遅延用記憶回路１５５は、内部の制御回路による制御の下に、記憶した選択受信値及び事前確率情報ＲＡＰのうち、所定の情報を選択回路により選択し、Ｉα算出回路１５８にて用いる受信データＤＡ、Ｉβ算出回路１５９にて用いる２系統の受信データＤＢ０，ＤＢ１として出力する。受信データＤＡは、Ｉγ算出回路１５６に供給されるとともに、所定の遅延が施された後、遅延受信データＤＡＤとして受信値又は事前確率情報分離回路１６２に供給される。また、受信データＤＢ０，ＤＢ１は、それぞれ、Ｉγ算出回路１５６に供給される。
【０２７５】
なお、要素復号器５０は、連続データを処理する方法として知られるいわゆるスライディングウィンドウ処理を行うが、このスライディングウィンドウ処理を行う際の受信データ及び遅延用記憶回路１５５及び後述するＩβ記憶回路１６０におけるメモリマネジメントの手法として、本願出願人が既に国際特許出願している国際公開番号ＷＯ９９／６２１８３号公報に記載されているものを採用している。すなわち、要素復号器５０は、簡略的に説明すると、受信データ及び遅延用記憶回路１５５から、所定の打ち切り長で区切られた受信データを読み出し、Ｉβ記憶回路１６０によって、対数尤度Ｉβを記憶することによって、最終的に対数軟出力Ｉλが本来の時系列順に求められるようなメモリマネジメントを行う。ただし、要素復号器５０は、国際公開番号ＷＯ９９／６２１８３号公報に記載されているように、対数尤度Ｉγを算出してからメモリマネジメントを行うのではなく、受信データを受信データ及び遅延用記憶回路１５５に記憶してから、適切なメモリマネジメントの下に受信データを読み出し、対数尤度Ｉγを算出している。
【０２７６】
さらに、受信データ及び遅延用記憶回路１５５は、後述するように、遅延用のデータを記憶することもできる。すなわち、受信データ及び遅延用記憶回路１５５は、受信値ＴＲと、エッジ検出回路８０から供給されるエッジ信号ＴＥＩＬＳとを記憶し、軟出力復号回路９０が要する処理時間と同時間だけ遅延させる。受信データ及び遅延用記憶回路１５５は、受信値ＴＲを遅延させて得られた遅延受信値ＰＤＲを、遅延受信値ＳＤＲとしてセレクタ１２０3，１２０6に供給する。
また、受信データ及び遅延用記憶回路１５５は、エッジ信号ＴＥＩＬＳを遅延させて得られた遅延エッジ信号ＰＤＩＬを、遅延エッジ信号ＳＤＩＬＳとしてセレクタ１２０5に供給する。
【０２７７】
Ｉγ算出回路１５６は、受信データ及び遅延用記憶回路１５５から供給される受信データＤＡ，ＤＢ０，ＤＢ１を用いて、対数尤度Ｉγを算出する。具体的には、Ｉγ算出回路１５６は、“２．”の冒頭に記載した表記に基づくと、受信値ｙt毎に、次式（４８）に示す演算を行い、各時刻ｔにおける対数尤度Ｉγを算出する。なお、次式（４８）に示すｓｇｎは、正負を識別する符号を示す定数、すなわち、“＋１”又は“−１”のいずれかである。この定数ｓｇｎは、要素復号器５０が対数尤度として負値のみを扱う系として構成される場合には、“＋１”をとり、要素復号器５０が対数尤度として正値のみを扱う系として構成される場合には、“−１”をとる。すなわち、Ｉγ算出回路１５６は、受信値ｙt毎に、符号の出力パターンと受信値により決定される確率γを対数表記した対数尤度Ｉγ又は確率γを対数表記して正負識別符号を反転した対数尤度Ｉγを算出する。
【０２７８】
【数４８】
0004543522.tif 000053
【０２７９】
なお、以下では、必要に応じて、要素復号器５０が対数尤度として負値又は正値のみを扱う系として構成される場合における議論を行うものの、特に断りがない場合は、定数ｓｇｎが“−１”である場合、すなわち、要素復号器５０が対数尤度として正値のみを扱う系として構成され、確率が高いものほど小さい値で表すものとして説明する。
【０２８０】
このとき、Ｉγ算出回路１５６は、制御回路６０から供給される受信値形式情報ＣＲＴＹ、事前確率情報形式情報ＣＡＰＰ、及び、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合には信号点配置情報ＣＳＩＧと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮ及び型情報ＷＭとに基づいて、対数尤度Ｉγを算出する。Ｉγ算出回路１５６は、算出した対数尤度ＩγをＩγ分配回路１５７に供給する。すなわち、Ｉγ算出回路１５６は、Ｉα算出回路１５８にて用いる対数尤度Ｉγを対数尤度ＧＡとしてＩγ分配回路１５７に供給するとともに、Ｉβ算出回路１５９にて用いる対数尤度Ｉγを対数尤度ＧＢ０，ＧＢ１としてＩγ分配回路１５７に供給する。
【０２８１】
このようなＩγ算出回路１５６は、例えば図２９に示すように、２系統の対数尤度Ｉβ０，Ｉβ１のうち、対数尤度Ｉβ０を算出するために用いる対数尤度Ｉγを算出するＩβ０用Ｉγ算出回路２２０1と、対数尤度Ｉβ１を算出するために用いる対数尤度Ｉγを算出するＩβ１用Ｉγ算出回路２２０2と、対数尤度Ｉαを算出するために用いる対数尤度Ｉγを算出するＩα用Ｉγ算出回路２２０3とを有するものとして実現することができる。ここで、これらのＩβ０用Ｉγ算出回路２２０1、Ｉβ１用Ｉγ算出回路２２０2及びＩα用Ｉγ算出回路２２０3は、入力されるデータが異なるのみで同一の構成で実現できることから、ここでは、Ｉβ０用Ｉγ算出回路２２０1のみの説明を行い、Ｉβ１用Ｉγ算出回路２２０2及びＩα用Ｉγ算出回路２２０3の説明は図示とともに省略する。
【０２８２】
Ｉβ０用Ｉγ算出回路２２０1は、情報・符号Ｉγ算出回路２２１と、Ｉγ正規化回路２２２とを有する。
【０２８３】
情報・符号Ｉγ算出回路２２１は、後述するように、受信値及び事前確率情報からなる受信データＤＢ０を入力すると、受信値形式情報ＣＲＴＹ、事前確率情報形式情報ＣＡＰＰ、信号点配置情報ＣＳＩＧ及び入力ビット数情報ＩＮに基づいて、あり得る全ての入出力パターン分の対数尤度Ｉγ又は少なくとも一部の入出力パターン分の対数尤度Ｉγを算出する。
【０２８４】
このとき、情報・符号Ｉγ算出回路２２１は、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものでない場合には、入力した受信データＤＢ０から、事前確率情報といわゆる通信路値との和を対数尤度Ｉγとして算出する。
【０２８５】
また、情報・符号Ｉγ算出回路２２１は、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合には、入力した受信データＤＢ０の内積を算出することによって、対数尤度Ｉγを算出する。これは、Ｉ／Ｑ平面上でのユークリッド距離が対数尤度Ｉγとなるが、ＰＳＫ変調方式の場合には、符号化装置からの出力の送信振幅が一定値をとることから、ユークリッド距離を求めることは、内積を求めることと等価となるからである。
【０２８６】
情報・符号Ｉγ算出回路２２１は、算出した対数尤度Ｉγを、Ｉγ正規化回路２２２に供給する。
【０２８７】
Ｉγ正規化回路２２２は、後述するように、情報・符号Ｉγ算出回路２２１による演算結果の分布の偏りを是正するための正規化を行う。具体的には、Ｉγ正規化回路２２２は、情報・符号Ｉγ算出回路２２１により算出された複数の対数尤度Ｉγのうち、確率が最大値を有するものに対応する対数尤度を、とり得る確率の最大値に対応する対数尤度に合わせるように、各対数尤度に対して所定の演算を施す。すなわち、Ｉγ正規化回路２２２は、要素復号器５０が対数尤度を負値として扱う場合には、情報・符号Ｉγ算出回路２２１により算出された複数の対数尤度Ｉγのうち、最大値を有するものを、要素復号器５０が表現可能な最大値に合わせるように、複数の対数尤度Ｉγのそれぞれに対して所定の値を加算するような正規化を行う。また、Ｉγ正規化回路２２２は、要素復号器５０が対数尤度を正値として扱う場合には、情報・符号Ｉγ算出回路２２１により算出された複数の対数尤度Ｉγのうち、最小値を有するものを、要素復号器５０が表現可能な最小値に合わせるように、複数の対数尤度Ｉγのそれぞれから所定の値を減算するような正規化を行う。Ｉγ正規化回路２２２は、正規化後の対数尤度Ｉγを、必要なダイナミックレンジに応じてクリッピングを行い、対数尤度ＧＢ０としてＩγ分配回路１５７に供給する。
【０２８８】
このようなＩβ０用Ｉγ算出回路２２０1は、対数尤度Ｉβ０を算出するために用いる対数尤度Ｉγを算出し、対数尤度ＧＢ０としてＩγ分配回路１５７に供給する。
【０２８９】
また、Ｉβ１用Ｉγ算出回路２２０2は、Ｉβ０用Ｉγ算出回路２２０1に入力される受信データＤＢ０の代わりに、受信データＤＢ１を入力し、Ｉβ０用Ｉγ算出回路２２０1と同様の処理を行う。Ｉβ１用Ｉγ算出回路２２０2は、対数尤度Ｉβ１を算出するために用いる対数尤度Ｉγを算出し、対数尤度ＧＢ１としてＩγ分配回路１５７に供給する。
【０２９０】
同様に、Ｉα用Ｉγ算出回路２２０3は、Ｉβ０用Ｉγ算出回路２２０1に入力される受信データＤＢ０の代わりに、受信データＤＡを入力し、Ｉβ０用Ｉγ算出回路２２０1と同様の処理を行う。Ｉα用Ｉγ算出回路２２０3は、対数尤度Ｉαを算出するために用いる対数尤度Ｉγを算出し、対数尤度ＧＡとしてＩγ分配回路１５７に供給する。
【０２９１】
このようなＩγ算出回路１５６は、受信データＤＡ，ＤＢ０，ＤＢ１を用いて、対数尤度Ｉγとして算出した対数尤度ＧＡ，ＧＢ０，ＧＢ１を生成し、これらの対数尤度ＧＡ，ＧＢ０，ＧＢ１をＩγ分配回路１５７に供給する。
【０２９２】
Ｉγ分配回路１５７は、後述するように、Ｉγ算出回路１５６から供給される対数尤度ＧＡ，ＧＢ０，ＧＢ１を、それぞれ、符号構成に応じて分配する。すなわち、Ｉγ分配回路１５７は、符号構成に応じたトレリス上の枝に対応するように、対数尤度ＧＡ，ＧＢ０，ＧＢ１を分配する。このとき、Ｉγ分配回路１５７は、制御回路６０から供給される生成行列情報ＣＧと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮ、型情報ＷＭ、メモリ数情報ＭＮ及び枝入出力情報ＢＩＯとに基づいて、対数尤度ＧＡ，ＧＢ０，ＧＢ１を分配する。
【０２９３】
また、Ｉγ分配回路１５７は、後述するように、トレリス上にパラレルパスが存在する符号を復号する際には、これらのパラレルパスを束ねる機能を兼ね備える。
【０２９４】
Ｉγ分配回路１５７は、分配して得られた対数尤度ＩγをＩα算出回路１５８及びＩβ算出回路１５９に供給する。すなわち、Ｉγ分配回路１５７は、Ｉα算出回路１５８にて用いる対数尤度Ｉγを対数尤度ＤＧＡとしてＩα算出回路１５８に供給するとともに、Ｉβ算出回路１５９にて用いる対数尤度Ｉγを対数尤度ＤＧＢ０，ＤＧＢ１としてＩβ算出回路１５９に供給する。また、Ｉγ分配回路１５７は、後述するように、パラレルパスを束ねない状態で得られる対数尤度Ｉγを対数尤度ＤＧＡＢとしてＩα算出回路１５８に供給する。
【０２９５】
具体的には、Ｉγ分配回路１５７は、例えば図３０に示すように、符号構成に応じたトレリス上の枝の入出力情報を算出する枝入出力情報算出回路２２３と、２系統の対数尤度Ｉβ０，Ｉβ１のうち、対数尤度Ｉβ０を算出するために用いる対数尤度Ｉγを分配するＩβ０用Ｉγ分配回路２２４1と、対数尤度Ｉβ１を算出するために用いる対数尤度Ｉγを分配するＩβ１用Ｉγ分配回路２２４2と、対数尤度Ｉαを算出するために用いる対数尤度Ｉγを分配するＩα用Ｉγ分配回路２２４3と、トレリス上にパラレルパスが存在する符号の場合に、対数尤度Ｉβ０を算出するために用いる当該パラレルパスを処理するＩβ０用パラレルパス処理回路２２５1と、トレリス上にパラレルパスが存在する符号の場合に、対数尤度Ｉβ１を算出するために用いる当該パラレルパスを処理するＩβ１用パラレルパス処理回路２２５2と、トレリス上にパラレルパスが存在する符号の場合に、対数尤度Ｉαを算出するために用いる当該パラレルパスを処理するＩα用パラレルパス処理回路２２５3とを有するものとして実現することができる。
【０２９６】
枝入出力情報算出回路２２３は、生成行列情報ＣＧと、入力ビット数情報ＩＮと、型情報ＷＭと、メモリ数情報ＭＮと、枝入出力情報ＢＩＯとに基づいて、符号構成を識別し、当該符号構成に対応するトレリス上の枝の時間軸とは逆順に沿った枝入出力情報を算出する。枝入出力情報算出回路２２３は、算出した枝入出力情報ＢＩをＩβ０用Ｉγ分配回路２２４1及びＩβ１用Ｉγ分配回路２２４2に供給する。
【０２９７】
Ｉβ０用Ｉγ分配回路２２４1は、対数尤度ＧＢ０を入力すると、枝入出力情報ＢＩに基づいて、符号構成に応じた分配を行う。Ｉβ０用Ｉγ分配回路２２４1は、分配して得られた対数尤度ＰＧＢ０をＩβ０用パラレルパス処理回路２２５1に供給する。
【０２９８】
Ｉβ１用Ｉγ分配回路２２４2は、対数尤度ＧＢ１を入力すると、枝入出力情報ＢＩに基づいて、符号構成に応じた分配を行う。Ｉβ１用Ｉγ分配回路２２４2は、分配して得られた対数尤度ＰＧＢ１をＩβ１用パラレルパス処理回路２２５2に供給する。
【０２９９】
Ｉα用Ｉγ分配回路２２４3は、対数尤度ＧＡを入力すると、枝入出力情報ＢＩＯに基づいて、符号構成に応じた分配を行う。Ｉα用Ｉγ分配回路２２４3は、分配して得られた対数尤度ＰＧＡをＩα用パラレルパス処理回路２２５3に供給する。また、Ｉα用Ｉγ分配回路２２４3は、分配して得られた対数尤度ＰＧＡを、対数尤度ＤＧＡＢとしてＩα算出回路１５８に供給する。
【０３００】
Ｉβ０用パラレルパス処理回路２２５1は、後述するように、対数尤度ＰＧＢ０を入力すると、この対数尤度ＰＧＢ０がパラレルパスに対応するものであった場合には、対数尤度ＰＧＢ０を束ね、対数尤度ＤＧＢ０、すなわち、対数尤度Ｉβ０を算出するために用いる対数尤度Ｉγとして出力する。また、Ｉβ０用パラレルパス処理回路２２５1は、入力した対数尤度ＰＧＢ０がパラレルパスに対応するものでなかった場合には、この対数尤度ＰＧＢ０を対数尤度ＤＧＢ０としてそのまま出力する。このとき、Ｉβ０用パラレルパス処理回路２２５1は、入力ビット数情報ＩＮに基づいて、出力すべき対数尤度ＤＧＢ０を選択する。
【０３０１】
具体的には、Ｉβ０用パラレルパス処理回路２２５1は、図３１に示すように、復号の対象とする符号のステート数のうちの最大値の数のパラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６nと、２対１の選択を行うセレクタ２２７とを有する。ここでは、Ｉβ０用パラレルパス処理回路２２５1は、トレリス上にパラレルパスが存在する符号のうち、最大で３２本の枝を有するトレリスで表され且つ最大で４ステートを有する符号、より具体的には、４ステートに対して各ステートに８本のパスが到達するようなパラレルパスがトレリス上に存在する符号の復号を行うものとし、３２本の枝を１６個の対数尤度Ｉγに変換するための１６個のパラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６1，２２６2，２２６3，・・・，２２６16を有するものとする。
【０３０２】
パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６1は、図３２に示すように、２つの差分器２２９1，２２９2と、３つのセレクタ２３０，２３１，２３３と、これらのセレクタ２３０，２３１，２３３による選択動作を制御するための制御信号を生成する選択用制御信号生成回路２３２と、いわゆるｌｏｇ−ｓｕｍ補正における補正項の値をテーブルとして記憶するＲＯＭ（Read Only Memory）等から構成されるルックアップテーブル２３４と、加算器２３５とを有する。これらの各部のうち、差分器２２９1，２２９2、セレクタ２３０，２３１及び選択用制御信号生成回路２３２は、比較及び絶対値算出回路２２８を構成する。
【０３０３】
比較及び絶対値算出回路２２８は、入力した２つのデータの大小を比較し、これらの２つのデータの差分値の絶対値を算出する。
【０３０４】
差分器２２９1は、３２通りの対数尤度Ｉγの集合である対数尤度ＰＧＢ０のうち、２つの対数尤度Ｉγである対数尤度ＰＧ００と対数尤度ＰＧ０１との差分をとる。厳密には、差分器２２９1は、対数尤度ＰＧ００，ＰＧ０１が、それぞれ、例えば９ビットからなるものとすると、対数尤度ＰＧ００の下位６ビットのデータの最上位ビットに“１”を付したものと、対数尤度ＰＧ０１の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。差分器２２９1は、算出した差分値ＤＡ１をセレクタ２３０及び選択用制御信号生成回路２３２に供給する。
【０３０５】
差分器２２９2は、対数尤度ＰＧ０１と対数尤度ＰＧ００との差分をとる。厳密には、差分器２２９2は、対数尤度ＰＧ００，ＰＧ０１が、それぞれ、例えば９ビットからなるものとすると、対数尤度ＰＧ０１の下位６ビットのデータの最上位ビットに“１”を付したものと、対数尤度ＰＧ００の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。差分器２２９2は、算出した差分値ＤＡ０をセレクタ２３０及び選択用制御信号生成回路２３２に供給する。
【０３０６】
セレクタ２３０は、選択用制御信号生成回路２３２から供給される制御信号ＳＬ１に基づいて、差分器２２９1から供給される差分値ＤＡ１と、差分器２２９2から供給される差分値ＤＡ０とのうち、値が大きいものを選択する。セレクタ２３０は、選択して得られたデータＣＡをセレクタ２３１に供給する。
【０３０７】
セレクタ２３１は、選択用制御信号生成回路２３２から供給される制御信号ＳＬ２に基づいて、セレクタ２３０から供給されるデータＣＡと、所定の値Ｍを有するデータとのうち、いずれか一方を選択する。具体的には、データＣＡとして供給される差分値に対する補正項の値は、所定の値に漸近する性質を有していることから、セレクタ２３１は、データＣＡの値が所定の値Ｍを超過している場合には、所定の値Ｍを有するデータを選択する。セレクタ２３１は、選択して得られたデータＤＭをルックアップテーブル２３４に供給する。
【０３０８】
選択用制御信号生成回路２３２は、対数尤度ＰＧ００，ＰＧ０１と、差分値ＤＡ１，ＤＡ０とに基づいて、セレクタ２３０，２３３による選択動作を制御するための制御信号ＳＬ１を生成するとともに、セレクタ２３１による選択動作を制御するための制御信号ＳＬ２を生成する。この際、選択用制御信号生成回路２３２は、対数尤度ＰＧ００，ＰＧ０１に基づいて、メトリックの上位ビットと下位ビットとを分割して、選択用の判定文を示す制御信号ＳＬ１，ＳＬ２を生成するが、これについては後述する。
【０３０９】
このような比較及び絶対値算出回路２２８は、対数尤度ＰＧ００，ＰＧ０１の差分値の絶対値を算出する。この際、比較及び絶対値算出回路２２８においては、後述するように、差分器２２９1に供給されるデータは、対数尤度ＰＧ００，ＰＧ０１が、それぞれ、例えば９ビットからなるものとすると、対数尤度ＰＧ００の下位６ビットのデータの最上位ビットに“１”を付したものと、対数尤度ＰＧ０１の下位６ビットのデータの最上位ビットに“０”を付したものとである。
同様に、比較及び絶対値算出回路２２８においては、差分器２２９2に供給されるデータは、対数尤度ＰＧ００の下位６ビットのデータの最上位ビットに“０”を付したものと、対数尤度ＰＧ０１の下位６ビットのデータの最上位ビットに“１”を付したものとである。すなわち、差分器２２９1，２２９2には、対数尤度ＰＧ００，ＰＧ０１のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータが供給されるが、これは、対数尤度ＰＧ００，ＰＧ０１の大小比較を高速に行うためであり、また、選択用制御信号生成回路２３２によって、メトリックの上位ビットと下位ビットとを分割して、選択用の判定文を作成することに関係がある。これについては後述するものとする。
【０３１０】
セレクタ２３３は、選択用制御信号生成回路２３２から供給される制御信号ＳＬ１に基づいて、対数尤度ＰＢ００，ＰＧ０１のうち、値が小さいものを選択する。セレクタ２３３は、選択して得られたデータＳＰＧを加算器２３５に供給する。
【０３１１】
ルックアップテーブル２３４は、ｌｏｇ−ｓｕｍ補正における補正項の値をテーブルとして記憶する。ルックアップテーブル２３４は、セレクタ２３１から供給されるデータＤＭの値に対応する補正項の値をテーブルから読み出し、データＲＤＭとして加算器２３５に供給する。
【０３１２】
加算器２３５は、セレクタ２３３から供給されるデータＳＰＧと、ルックアップテーブル２３４から供給されるデータＲＤＭとを加算し、対数尤度Ｉγを算出する。加算器２３５は、算出した対数尤度Ｉγを対数尤度ＰＰＧ００としてセレクタ２２７に供給する。
【０３１３】
このようなパラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６1は、パラレルパスに対応する２つの対数尤度ＰＧ００，ＰＧ０１を束ね、対数尤度ＰＰＧ００としてセレクタ２２７に供給する。
【０３１４】
パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６2は、パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６1と同様の構成からなり、パラレルパスに対応する２つの対数尤度ＰＧ０２，ＰＧ０３を束ね、対数尤度ＰＰＧ０１としてセレクタ２２７に供給する。
【０３１５】
また、パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６3は、パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６1と同様の構成からなり、パラレルパスに対応する２つの対数尤度ＰＧ０４，ＰＧ０５を束ね、対数尤度ＰＰＧ０２としてセレクタ２２７に供給する。
【０３１６】
さらに、パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６16は、パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６1と同様の構成からなり、パラレルパスに対応する２つの対数尤度ＰＧ０３０，ＰＧ０３１を束ね、対数尤度ＰＰＧ１５としてセレクタ２２７に供給する。
【０３１７】
このように、複数のパラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６nは、それぞれ、パラレルパスに対応する２つの対数尤度を束ねる。各パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６nにより束ねられて得られた対数尤度ＰＰＧ００，ＰＰＧ０１，ＰＰＧ０２，・・・，ＰＰＧ１５は、対数尤度ＰＰＧとしてセレクタ２２７に供給される。
【０３１８】
Ｉβ０用パラレルパス処理回路２２５1において、セレクタ２２７は、入力ビット数情報ＩＮに基づいて、Ｉβ０用Ｉγ分配回路２２４1から供給される対数尤度ＰＧＢ０のうち、下位のメトリックに相当するものと、各パラレルパス用ｌｏｇ−ｓｕｍ演算回路２２６nから供給される対数尤度ＰＰＧとのうち、いずれか一方を選択する。具体的には、セレクタ２２７は、符号化装置１における要素符号化器がトレリス上にパラレルパスが存在する符号化を行うものであった場合には、対数尤度ＰＰＧを選択する。すなわち、ここでは、セレクタ２２７による選択動作を制御するための制御信号として、入力ビット数情報ＩＮを用いているが、実際には、トレリス上にパラレルパスが存在する符号であるか否かを示す制御信号がセレクタ２２７に入力される。
【０３１９】
このようなＩβ０用パラレルパス処理回路２２５1は、対数尤度ＰＧＢ０を入力すると、この対数尤度ＰＧＢ０がパラレルパスに対応するものであった場合には、セレクタ２２７によって、束ねられた対数尤度ＰＰＧを選択し、この対数尤度ＰＰＧと、対数尤度ＰＧＢ０のうち、上位のメトリックに相当するものとを併せ、対数尤度ＤＧＢ０としてＩβ算出回路１５９に供給する。また、Ｉβ０用パラレルパス処理回路２２５1は、対数尤度ＰＧＢ０がパラレルパスに対応するものでなかった場合には、この対数尤度ＰＧＢ０を対数尤度ＤＧＢ０としてそのまま出力する。
【０３２０】
Ｉβ１用パラレルパス処理回路２２５2は、Ｉβ０用パラレルパス処理回路２２５1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＰＧＢ１を入力すると、この対数尤度ＰＧＢ１がパラレルパスに対応するものであった場合には、対数尤度ＰＧＢ１を束ね、対数尤度ＤＧＢ１、すなわち、対数尤度Ｉβ１を算出するために用いる対数尤度ＩγとしてＩβ算出回路１５９に供給する。また、Ｉβ１用パラレルパス処理回路２２５2は、入力した対数尤度ＰＧＢ１がパラレルパスに対応するものでなかった場合には、この対数尤度ＰＧＢ１を対数尤度ＤＧＢ１としてそのままＩβ算出回路１５９に供給する。
【０３２１】
また、Ｉα用パラレルパス処理回路２２５3も、Ｉβ０用パラレルパス処理回路２２５1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＰＧＡを入力すると、この対数尤度ＰＧＡがパラレルパスに対応するものであった場合には、対数尤度ＰＧＡを束ね、対数尤度ＤＧＡ、すなわち、対数尤度Ｉαを算出するために用いる対数尤度ＩγとしてＩα算出回路１５８に供給する。また、Ｉα用パラレルパス処理回路２２５3は、入力した対数尤度ＰＧＡがパラレルパスに対応するものでなかった場合には、この対数尤度ＰＧＡを対数尤度ＤＧＡとしてそのままＩα算出回路１５８に供給する。
【０３２２】
このようなＩγ分配回路１５７は、対数尤度ＧＡ，ＧＢ０，ＧＢ１を、それぞれ、符号構成に応じて分配し、さらに、トレリス上にパラレルパスが存在する符号を復号する際には、これらのパラレルパスを束ね、得られた対数尤度ＤＧＡ，ＤＧＡＢをＩα算出回路１５８に供給するとともに、得られた対数尤度ＤＧＢ０，ＤＧＢ１をＩβ算出回路１５９に供給する。
【０３２３】
Ｉα算出回路１５８は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡ，ＤＧＡＢを用いて、対数尤度Ｉαを算出する。具体的には、Ｉα算出回路１５８は、“２．”の冒頭に記載した表記に基づくと、対数尤度Ｉγを用いて、次式（４９）に示す演算を行い、各時刻ｔにおける対数尤度Ｉαを算出する。なお、次式（４９）における演算子“＃”は、いわゆるｌｏｇ−ｓｕｍ演算を示すものであり、入力“０”でステートｍ’からステートｍへと遷移するときにおける対数尤度と、入力“１”でステートｍ’’からステートｍへと遷移するときにおける対数尤度とのｌｏｇ−ｓｕｍ演算を示すものである。より具体的には、Ｉα算出回路１５８は、定数ｓｇｎが“＋１”の場合には、次式（５０）に示す演算を行うことによって、一方、定数ｓｇｎが“−１”の場合には、次式（５１）に示す演算を行うことによって、各時刻ｔにおける対数尤度Ｉαを算出する。すなわち、Ｉα算出回路１５８は、対数尤度Ｉγに基づいて、受信値ｙt毎に、符号化開始ステートから時系列順に各ステートに至る確率αを対数表記した対数尤度Ｉα又は確率αを対数表記して正負識別符号を反転した対数尤度Ｉαを算出する。
【０３２４】
【数４９】
0004543522.tif 000054
【０３２５】
【数５０】
0004543522.tif 000055
【０３２６】
【数５１】
0004543522.tif 000056
【０３２７】
このとき、Ｉα算出回路１５８は、制御回路６０から供給される生成行列情報ＣＧと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮ、型情報ＷＭ及びメモリ数情報ＭＮと、受信データ及び遅延用記憶回路１５５から供給される終結情報ＴＡＬＤとに基づいて、対数尤度Ｉαを算出する。Ｉα算出回路１５８は、算出した対数尤度Ｉαと対数尤度Ｉγとの和を軟出力算出回路１６１に供給する。すなわち、Ｉα算出回路１５８は、後述するように、算出した対数尤度Ｉαをそのまま出力するのではなく、対数軟出力Ｉλの算出に用いる対数尤度Ｉαと対数尤度Ｉγとの和を、データＡＧとして出力する。
【０３２８】
具体的には、Ｉα算出回路１５８は、例えば図３３に示すように、制御信号を生成する制御信号生成回路２４０と、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号に対して、加算比較選択（add compare select）処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行う加算比較選択回路２４１と、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号に対して、加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行う加算比較選択回路２４２と、対数尤度Ｉαと対数尤度Ｉγとの和を算出するＩα＋Ｉγ算出回路２４３と、３対１の選択を行うセレクタ２４４とを有するものとして実現することができる。
【０３２９】
制御信号生成回路２４０は、生成行列情報ＣＧ、入力ビット数情報ＩＮ、型情報ＷＭ及びメモリ数情報ＭＮを用いて、トレリス上の各ステートから次時刻におけるステートへと４本のパスが到達するような符号における遷移元のステートを算出し、制御信号ＰＳＴとして加算比較選択回路２４２に供給する。
【０３３０】
加算比較選択回路２４１は、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号に対して、加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行うことによって、ｌｏｇ−ｓｕｍ演算を行う。
【０３３１】
具体的には、加算比較選択回路２４１は、図３４に示すように、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号のうち、復号の対象とする符号のステート数のうちの最大値の数のｌｏｇ−ｓｕｍ演算回路２４５nを有する。ここでは、加算比較選択回路２４１は、最大で１６ステートを有する符号の復号を行うものとし、１６個のｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16を有するものとする。
【０３３２】
これらのｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16には、それぞれ、トレリス上の遷移に基づいて、トレリス上の出力パターンに対応する枝の対数尤度Ｉγと、各ステートにおける１時刻前の対数尤度Ｉαが供給される。すなわち、ｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16には、それぞれ、対数尤度ＤＧＡのうち、トレリス上の出力パターンに対応する枝の対数尤度Ｉγに相当するものと、算出した１時刻前の対数尤度ＡＬのうち、各ステートにおける対数尤度Ｉαに相当するものとが供給される。そして、ｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16は、それぞれ、次時刻の各ステートにおける対数尤度Ｉαを対数尤度ＡＬとして求める。各ｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16に対する対数尤度ＡＬの分配は、符号構成に応じて異なり、ここではメモリ数情報ＭＮに基づいて、図示しないセレクタ等により決定される。この対数尤度ＡＬの分配については、さらに後述する。
【０３３３】
具体的には、ｌｏｇ−ｓｕｍ演算回路２４５1は、３つの加算器２４６1，２４６2，２４９と、ｌｏｇ−ｓｕｍ補正における補正項の値を算出する補正項算出回路２４７と、セレクタ２４８と、Ｉα正規化回路２５０とを有する。
【０３３４】
加算器２４６1は、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ００を入力するとともに、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ０として入力し、これらの対数尤度ＤＧＡ００，Ａ０を加算する。加算器２４６1は、加算して得られた対数尤度Ｉαと対数尤度Ｉγとの和を示すデータＡＭ０を補正項算出回路２４７及びセレクタ２４８に供給する。
【０３３５】
加算器２４６2は、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ０１を入力するとともに、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ１として入力し、これらの対数尤度ＤＧＡ０１，Ａ１を加算する。加算器２４６2は、加算して得られたＩα＋Ｉγを示すデータＡＭ１を補正項算出回路２４７及びセレクタ２４８に供給する。
【０３３６】
補正項算出回路２４７は、加算器２４６1から供給されるデータＡＭ０と、加算器２４６2から供給されるデータＡＭ１とを入力し、補正項の値を示すデータＤＭを算出する。この補正項算出回路２４７は、図３５に示すように、２つの差分器２５１1，２５１2と、ｌｏｇ−ｓｕｍ補正における補正項の値をテーブルとして記憶する２つのルックアップテーブル２５２1，２５２2と、３つのセレクタ２４８，２５４，２５５による選択動作を制御するための制御信号を生成する選択用制御信号生成回路２５３と、２つのセレクタ２５４，２５５とを有する。
【０３３７】
差分器２５１1は、加算器２４６1から供給されるデータＡＭ０と、加算器２４６2から供給されるデータＡＭ１との差分をとる。厳密には、差分器２５１1は、データＡＭ０，ＡＭ１が、それぞれ、例えば１２ビットからなるものとすると、データＡＭ０の下位６ビットのデータの最上位ビットに“１”を付したものと、データＡＭ１の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。差分器２５１1は、算出した差分値ＤＡ１をルックアップテーブル２５２1及び選択用制御信号生成回路２５３に供給する。
【０３３８】
差分器２５１2は、データＡＭ１と、データＡＭ０との差分をとる。厳密には、差分器２５１2は、データＡＭ０，ＡＭ１が、それぞれ、例えば１２ビットからなるものとすると、データＡＭ１の下位６ビットのデータの最上位ビットに“１”を付したものと、データＡＭ０の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。差分器２５１2は、算出した差分値ＤＡ０をルックアップテーブル２５２2及び選択用制御信号生成回路２５３に供給する。
【０３３９】
ルックアップテーブル２５２1，２５２2は、それぞれ、ｌｏｇ−ｓｕｍ補正における補正項の値をテーブルとして記憶する。ルックアップテーブル２５２1は、差分器２５１1から供給される差分値ＤＡ１の値に対応する補正項の値をテーブルから読み出し、データＲＤＡ１としてセレクタ２５４に供給する。また、ルックアップテーブル２５２2は、差分器２５１2から供給される差分値ＤＡ０の値に対応する補正項の値をテーブルから読み出し、データＲＤＡ０としてセレクタ２５４に供給する。
【０３４０】
選択用制御信号生成回路２５３は、データＡＭ０，ＡＭ１と、差分値ＤＡ１，ＤＡ０とに基づいて、セレクタ２４８，２５４による選択動作を制御するための制御信号ＳＥＬを生成するとともに、セレクタ２５５による選択動作を制御するための制御信号ＳＬを生成する。この際、選択用制御信号生成回路２５３は、上述した選択用制御信号生成回路２３２と同様に、データＡＭ０，ＡＭ１に基づいて、メトリックの上位ビットと下位ビットとを分割して、選択用の判定文を示す制御信号ＳＥＬ，ＳＬを生成するが、これについては後述する。
【０３４１】
セレクタ２５４は、選択用制御信号生成回路２５３から供給される制御信号ＳＥＬに基づいて、ルックアップテーブル２５２1から供給されるデータＲＤＡ１と、ルックアップテーブル２５２2から供給されるデータＲＤＡ０とのうち、いずれか一方を選択する。具体的には、セレクタ２５４は、データＡＭ０の値がデータＡＭ１の値よりも大きい場合には、ルックアップテーブル２５２1からのデータＲＤＡ１を選択する。すなわち、セレクタ２５４は、データＡＭ０とデータＡＭ１との差分値の絶対値に対応する補正項の値を選択する。セレクタ２５４は、選択して得られたデータＣＡをセレクタ２５５に供給する。
【０３４２】
セレクタ２５５は、選択用制御信号生成回路２５３から供給される制御信号ＳＬに基づいて、セレクタ２５４から供給されるデータＣＡと、所定の値Ｍを有するデータとのうち、いずれか一方を選択する。具体的には、データＣＡとして供給される差分値に対する補正項の値は、所定の値に漸近する性質を有していることから、セレクタ２５５は、データＣＡの値が所定の値Ｍを超過している場合には、所定の値Ｍを有するデータを選択する。セレクタ２５５は、選択して得られたデータＤＭを加算器２４９に供給する。
【０３４３】
このような補正項算出回路２４７は、ｌｏｇ−ｓｕｍ補正における補正項の値を算出する。この際、補正項算出回路２４７は、後述するように、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２４７においては、差分器２５１1に供給されるデータは、加算器２４６1から供給されるデータＡＭ０及び加算器２４６2から供給されるデータＡＭ１が、それぞれ、例えば１２ビットからなるものとすると、データＡＭ０の下位６ビットのデータの最上位ビットに“１”を付したものと、データＡＭ１の下位６ビットのデータの最上位ビットに“０”を付したものとである。同様に、補正項算出回路２４７においては、差分器２５１2に供給されるデータは、データＡＭ０の下位６ビットのデータの最上位ビットに“０”を付したものと、データＡＭ１の下位６ビットのデータの最上位ビットに“１”を付したものとである。すなわち、差分器２５１1，２５２2には、加算器２４６1，２４６2から供給されるデータのうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータが供給されるが、これは、データＡＭ０，ＡＭ１の大小比較を高速に行うためであり、また、選択用制御信号生成回路２５３によって、メトリックの上位ビットと下位ビットとを分割して、選択用の判定文を作成することに関係がある。これについては後述するものとする。
【０３４４】
セレクタ２４８は、選択用制御信号生成回路２５３から供給される制御信号ＳＥＬに基づいて、データＡＭ０，ＡＭ１のうち、値が小さいものを選択する。セレクタ２４８は、選択して得られたデータＳＡＭを加算器２４９に供給する。
【０３４５】
加算器２４９は、セレクタ２４８から供給されるデータＳＡＭと、補正項算出回路２４７から供給されるデータＤＭとを加算し、対数尤度Ｉαを算出する。加算器２４７は、算出した対数尤度Ｉαを対数尤度ＣＭとしてＩα正規化回路２５０に供給する。
【０３４６】
Ｉα正規化回路２５０は、加算器２４９から供給される対数尤度ＣＭの分布の偏りを是正するための正規化を行う。この正規化処理については各種方法が考えられるが、これについては後述する。また、Ｉα正規化回路２５０は、終結情報ＴＡＬＤを用いて、終結処理も行う。Ｉα正規化回路２５０は、正規化後の対数尤度Ｉαを、必要なダイナミックレンジに応じてクリッピングを行い、対数尤度ＡＬ００として、所定のｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16に供給する。このとき、対数尤度ＡＬ００は、図示しないレジスタにより１時刻分の遅延がなされた後、所定のｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16に供給される。
【０３４７】
このようなｌｏｇ−ｓｕｍ演算回路２４５1は、対数尤度ＡＬ００を求めて出力するとともに、データＡＭ０，ＡＭ１を束ねてデータＡＧ００として出力する。すなわち、ｌｏｇ−ｓｕｍ演算回路２４５1は、求めた対数尤度ＡＬ００を、次時刻における対数尤度Ｉαの算出に用いるために、所定のｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16に供給するとともに、対数尤度Ｉαの算出過程において求めた対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを示すデータＡＧ００を出力する。
【０３４８】
ｌｏｇ−ｓｕｍ演算回路２４５2は、ｌｏｇ−ｓｕｍ演算回路２４５1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ０２，ＤＧＡ０３と、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ０，Ａ１として入力し、これらの対数尤度ＤＧＡ０２，ＤＧＡ０３，Ａ０，Ａ１を用いて、対数尤度Ｉαを算出し、対数尤度ＡＬ０１として、所定のｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16に供給するとともに、対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを示すデータＡＧ０１を出力する。
【０３４９】
また、ｌｏｇ−ｓｕｍ演算回路２４５3も、ｌｏｇ−ｓｕｍ演算回路２４５1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ０４，ＤＧＡ０５と、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ０，Ａ１として入力し、これらの対数尤度ＤＧＡ０４，ＤＧＡ０５，Ａ０，Ａ１を用いて、対数尤度Ｉαを算出し、対数尤度ＡＬ０２として、所定のｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16に供給するとともに、対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを示すデータＡＧ０２を出力する。
【０３５０】
さらに、ｌｏｇ−ｓｕｍ演算回路２４５16も、ｌｏｇ−ｓｕｍ演算回路２４５1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ３０，ＤＧＡ３１と、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ０，Ａ１として入力し、これらの対数尤度ＤＧＡ３０，ＤＧＡ３１，Ａ０，Ａ１を用いて、対数尤度Ｉαを算出し、対数尤度ＡＬ１５として、所定のｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16に供給するとともに、対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを示すデータＡＧ１５を出力する。
【０３５１】
このような加算比較選択回路２４１は、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号における対数尤度Ｉαを算出する。加算比較選択回路２４１は、後述するように、算出した対数尤度Ｉαを出力するのではなく、対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを出力する。すなわち、加算比較選択回路２４１は、ｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16のそれぞれにより求められたデータＡＧ００，ＡＧ０１，ＡＧ０２，・・・，ＡＧ１５を束ね、データＡＧＴとしてセレクタ２４４に供給する。
【０３５２】
加算比較選択回路２４２は、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号に対して、加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行うことによって、ｌｏｇ−ｓｕｍ演算を行う。
【０３５３】
具体的には、加算比較選択回路２４２は、図３６に示すように、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号のうち、復号の対象とする符号のステート数のうちの最大値の数のｌｏｇ−ｓｕｍ演算回路２５６nを有する。ここでは、加算比較選択回路２４２は、最大で８ステートを有する符号の復号を行うものとし、８個のｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8を有するものとする。
【０３５４】
これらのｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8には、それぞれ、上述した加算比較選択回路２４１におけるｌｏｇ−ｓｕｍ演算回路２４５1，２４５2，２４５3，・・・，２４５16と同様に、トレリス上の遷移に基づいて、トレリス上の出力パターンに対応する枝の対数尤度Ｉγと、各ステートにおける１時刻前の対数尤度Ｉαが供給される。すなわち、ｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8には、それぞれ、対数尤度ＤＧＡのうち、トレリス上の出力パターンに対応する枝の対数尤度Ｉγに相当するものと、算出した１時刻前の対数尤度ＡＬのうち、各ステートにおける対数尤度Ｉαに相当するものとが供給される。そして、ｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8は、それぞれ、次時刻の各ステートにおける対数尤度Ｉαを対数尤度ＡＬとして求める。各ｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8に対する対数尤度ＡＬの分配は、符号構成に応じて異なり、ここでは制御信号ＰＳＴに基づいて、図示しないセレクタ等により決定される。この対数尤度ＡＬの分配については、さらに後述する。
【０３５５】
具体的には、ｌｏｇ−ｓｕｍ演算回路２５６1は、５つの加算器２５７1，２５７2，２５７3，２５７4，２７１と、ｌｏｇ−ｓｕｍ補正における補正項の値を算出する６個の補正項算出回路２５８1，２５８2，２５８3，２５８4，２５８5，２５８6と、１１個のセレクタ２５９，２６０，２６１，２６２，２６３，２６４，２６５，２６６，２６７，２６８，２６９と、セレクタ２６９による選択動作を制御するための制御信号を生成する選択用制御信号生成回路２７０と、Ｉα正規化回路２７２とを有する。
【０３５６】
加算器２５７1は、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ００を入力するとともに、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ０として入力し、これらの対数尤度ＤＧＡ００，Ａ０を加算する。
加算器２５７1は、加算して得られた対数尤度Ｉαと対数尤度Ｉγとの和を示すデータＡＭ０を補正項算出回路２５８1，２５８3，２５８5及びセレクタ２５９に供給する。
【０３５７】
加算器２５７2は、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ０１を入力するとともに、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ１として入力し、これらの対数尤度ＤＧＡ０１，Ａ１を加算する。加算器２５７2は、加算して得られたＩα＋Ｉγを示すデータＡＭ１を補正項算出回路２５８1，２５８4，２５８6及びセレクタ２５９に供給する。
【０３５８】
加算器２５７3は、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ０２を入力するとともに、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ２として入力し、これらの対数尤度ＤＧＡ０２，Ａ２を加算する。加算器２５７3は、加算して得られたＩα＋Ｉγを示すデータＡＭ２を補正項算出回路２５８2，２５８3，２５８4及びセレクタ２６０に供給する。
【０３５９】
加算器２５７4は、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ０３を入力するとともに、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ３として入力し、これらの対数尤度ＤＧＡ０３，Ａ３を加算する。加算器２５７4は、加算して得られたＩα＋Ｉγを示すデータＡＭ３を補正項算出回路２５８2，２５８5，２５８6及びセレクタ２６０に供給する。
【０３６０】
補正項算出回路２５８1は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２５７1から供給されるデータＡＭ０と、加算器２５７2から供給されるデータＡＭ１とを入力し、補正項の値を示すデータＤＭ０を算出する。この際、補正項算出回路２５８1は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２５８1においては、加算器２５７1，２５７2から供給されるデータＡＭ０，ＡＭ１のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ０，ＡＭ１の大小比較を高速に行う。補正項算出回路２５８1は、算出したデータＤＭ０をセレクタ２６８に供給する。また、補正項算出回路２５８1は、セレクタ２５９，２６１，２６２，２６３，２６４による選択動作を制御するための制御信号ＳＥＬ０を生成する。
【０３６１】
補正項算出回路２５８2は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２５７3から供給されるデータＡＭ２と、加算器２５７4から供給されるデータＡＭ３とを入力し、補正項の値を示すデータＤＭ１を算出する。この際、補正項算出回路２５８2は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２５８2においては、加算器２５７3，２５７4から供給されるデータＡＭ２，ＡＭ３のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ２，ＡＭ３の大小比較を高速に行う。補正項算出回路２５８2は、算出したデータＤＭ１をセレクタ２６８に供給する。また、補正項算出回路２５８2は、セレクタ２６０，２６５，２６６による選択動作を制御するための制御信号ＳＥＬ１を生成する。
【０３６２】
補正項算出回路２５８3は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２５７1から供給されるデータＡＭ０と、加算器２５７3から供給されるデータＡＭ２とを入力し、補正項の値を示すデータＤＭ２を算出する。この際、補正項算出回路２５８3は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２５８3においては、加算器２５７1，２５７3から供給されるデータＡＭ０，ＡＭ２のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ０，ＡＭ２の大小比較を高速に行う。補正項算出回路２５８3は、算出したデータＤＭ２をセレクタ２６３に供給する。また、補正項算出回路２５８3は、最終的にセレクタ２６７，２６８による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ２を生成し、この制御信号ＳＥＬ２をセレクタ２６１及び選択用制御信号生成回路２７０に供給する。
【０３６３】
補正項算出回路２５８4は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２５７2から供給されるデータＡＭ１と、加算器２５７3から供給されるデータＡＭ２とを入力し、補正項の値を示すデータＤＭ３を算出する。この際、補正項算出回路２５８4は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２５８4においては、加算器２５７2，２５７3から供給されるデータＡＭ１，ＡＭ２のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ１，ＡＭ２の大小比較を高速に行う。補正項算出回路２５８4は、算出したデータＤＭ３をセレクタ２６３に供給する。また、補正項算出回路２５８4は、最終的にセレクタ２６７，２６８による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ３を生成し、この制御信号ＳＥＬ３をセレクタ２６１及び選択用制御信号生成回路２７０に供給する。
【０３６４】
補正項算出回路２５８5は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２５７1から供給されるデータＡＭ０と、加算器２５７4から供給されるデータＡＭ３とを入力し、補正項の値を示すデータＤＭ４を算出する。この際、補正項算出回路２５８5は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２５８5においては、加算器２５７1，２５７4から供給されるデータＡＭ０，ＡＭ３のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ０，ＡＭ３の大小比較を高速に行う。補正項算出回路２５８5は、算出したデータＤＭ４をセレクタ２６４に供給する。また、補正項算出回路２５８5は、最終的にセレクタ２６７，２６８による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ４を生成し、この制御信号ＳＥＬ４をセレクタ２６２及び選択用制御信号生成回路２７０に供給する。
【０３６５】
補正項算出回路２５８6は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２５７2から供給されるデータＡＭ１と、加算器２５７4から供給されるデータＡＭ３とを入力し、補正項の値を示すデータＤＭ５を算出する。この際、補正項算出回路２５８6は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２５８6においては、加算器２５７2，２５７4から供給されるデータＡＭ１，ＡＭ３のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ１，ＡＭ３の大小比較を高速に行う。補正項算出回路２５８6は、算出したデータＤＭ５をセレクタ２６４に供給する。また、補正項算出回路２５８6は、最終的にセレクタ２６７，２６８による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ５を生成し、この制御信号ＳＥＬ５をセレクタ２６２及び選択用制御信号生成回路２７０に供給する。
【０３６６】
セレクタ２５９は、補正項算出回路２５８1から供給される制御信号ＳＥＬ０に基づいて、データＡＭ０，ＡＭ１のうち、値が小さいものを選択する。セレクタ２５９は、選択して得られたデータＳＡＭ０をセレクタ２６７に供給する。
【０３６７】
セレクタ２６０は、補正項算出回路２５８2から供給される制御信号ＳＥＬ１に基づいて、データＡＭ２，ＡＭ３のうち、値が小さいものを選択する。セレクタ２６０は、選択して得られたデータＳＡＭ１をセレクタ２６７に供給する。
【０３６８】
セレクタ２６１は、補正項算出回路２５８1から供給される制御信号ＳＥＬ０に基づいて、制御信号ＳＥＬ２，ＳＥＬ３のうち、いずれか一方を選択する。具体的には、セレクタ２６１は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、制御信号ＳＥＬ３を選択する。セレクタ２６１は、選択して得られた制御信号ＳＥＬ６をセレクタ２６５に供給する。
【０３６９】
セレクタ２６２は、補正項算出回路２５８1から供給される制御信号ＳＥＬ０に基づいて、制御信号ＳＥＬ４，ＳＥＬ５のうち、いずれか一方を選択する。具体的には、セレクタ２６２は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、制御信号ＳＥＬ５を選択する。セレクタ２６２は、選択して得られた制御信号ＳＥＬ７をセレクタ２６５に供給する。
【０３７０】
セレクタ２６３は、補正項算出回路２５８1から供給される制御信号ＳＥＬ０に基づいて、データＤＭ２，ＤＭ３のうち、いずれか一方を選択する。具体的には、セレクタ２６３は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、データＤＭ３を選択する。セレクタ２６３は、選択して得られたデータＤＳ０をセレクタ２６６に供給する。
【０３７１】
セレクタ２６４は、補正項算出回路２５８1から供給される制御信号ＳＥＬ０に基づいて、データＤＭ４，ＤＭ５のうち、いずれか一方を選択する。具体的には、セレクタ２６４は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、データＤＭ５を選択する。セレクタ２６４は、選択して得られたデータＤＳ１をセレクタ２６６に供給する。
【０３７２】
セレクタ２６５は、補正項算出回路２５８2から供給される制御信号ＳＥＬ１に基づいて、制御信号ＳＥＬ６，ＳＥＬ７のうち、いずれか一方を選択する。具体的には、セレクタ２６５は、データＡＭ３よりもデータＡＭ２の方が値が大きい場合には、制御信号ＳＥＬ７を選択する。セレクタ２６５は、選択して得られた制御信号ＳＥＬ８をセレクタ２６７，２６８における選択用の制御信号として供給する。
【０３７３】
セレクタ２６６は、補正項算出回路２５８2から供給される制御信号ＳＥＬ１に基づいて、データＤＳ０，ＤＳ１のうち、いずれか一方を選択する。具体的には、セレクタ２６６は、データＡＭ３よりもデータＡＭ２の方が値が大きい場合には、データＤＳ１を選択する。セレクタ２６６は、選択して得られたデータＤＳ２をセレクタ２６９に供給する。
【０３７４】
セレクタ２６７は、制御信号ＳＥＬ８に基づいて、データＳＡＭ０，ＳＡＭ１のうち、いずれか一方を選択する。具体的には、セレクタ２６７は、制御信号ＳＥＬ８が制御信号ＳＥＬ７であった場合には、データＳＡＭ１を選択する。セレクタ２６７は、選択して得られたデータＳＡＭ２を加算器２７１に供給する。
【０３７５】
セレクタ２６８は、制御信号ＳＥＬ８に基づいて、データＤＭ０，ＤＭ１のうち、いずれか一方を選択する。具体的には、セレクタ２６８は、制御信号ＳＥＬ８が制御信号ＳＥＬ７であった場合には、データＤＭ１を選択する。セレクタ２６８は、選択して得られたデータＤＳ３をセレクタ２６９に供給する。
【０３７６】
セレクタ２６９は、選択用制御信号生成回路２７０から供給される制御信号ＳＥＬ９に基づいて、データＤＳ２，ＤＳ３のうち、いずれか一方を選択する。セレクタ２６９は、選択して得られたデータＲＤＭを加算器２７１に供給する。
【０３７７】
選択用制御信号生成回路２７０は、制御信号ＳＥＬ２，ＳＥＬ３，ＳＥＬ４，ＳＥＬ５に基づいて、セレクタ２６９による選択動作を制御するための制御信号ＳＥＬ９を生成する。具体的には、選択用制御信号生成回路２７０は、制御信号ＳＥＬ２，ＳＥＬ３，ＳＥＬ４，ＳＥＬ５の論理積と、制御信号ＳＥＬ２，ＳＥＬ３，ＳＥＬ４，ＳＥＬ５の論理積の否定との論理和をとることによって、制御信号ＳＥＬ９を生成する。
【０３７８】
加算器２７１は、セレクタ２６７から供給されるデータＳＡＭ２と、セレクタ２６９から供給されるデータＲＤＭとを加算し、対数尤度Ｉαを算出する。加算器２７１は、算出した対数尤度Ｉαを対数尤度ＣＭとしてＩα正規化回路２７２に供給する。
【０３７９】
Ｉα正規化回路２７２は、上述したＩα正規化回路２５０と同様に、加算器２７１から供給される対数尤度ＣＭの分布の偏りを是正するための正規化を行う。
また、Ｉα正規化回路２７２は、終結情報ＴＡＬＤを用いて、終結処理も行う。
Ｉα正規化回路２７２は、正規化後の対数尤度Ｉαを、必要なダイナミックレンジに応じてクリッピングを行い、対数尤度ＡＬ００として、所定のｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8に供給する。このとき、対数尤度ＡＬ００は、図示しないレジスタにより１時刻分の遅延がなされた後、所定のｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8に供給される。
【０３８０】
このようなｌｏｇ−ｓｕｍ演算回路２５６1は、対数尤度ＡＬ００を求めて出力するとともに、データＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３を束ねてデータＡＧ００として出力する。すなわち、ｌｏｇ−ｓｕｍ演算回路２５６1は、求めた対数尤度ＡＬ００を、次時刻における対数尤度Ｉαの算出に用いるために、所定のｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8に供給するとともに、対数尤度Ｉαの算出過程において求めた対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを示すデータＡＧ００を出力する。
【０３８１】
この際、ｌｏｇ−ｓｕｍ演算回路２５６1は、各ステートに到達した４本のパス、又は、符号によっては８本のパスを束ねて得られる４組のパスに対応する尤度を示すデータＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３の中から選択した２つのパスに対応するデータの組み合わせの全てについて尤度の大小を比較することによって、これらのデータＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３のうち、尤度の高い少なくとも２つ以上のパスに対応するデータを求め、これらのパスに対応するデータの中から、最も尤度の高いパスである最尤パスに対応するデータを選択する。より具体的には、ｌｏｇ−ｓｕｍ演算回路２５６1は、データＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３について、いわば勝ち抜き戦に喩えられる動作を行うことによって、データＡＭ０の値、データＡＭ１の値、データＡＭ２の値及びデータＡＭ３の値の大小を比較し、最尤パスに対応するデータを選択する。
【０３８２】
また、ｌｏｇ−ｓｕｍ演算回路２５６8は、ｌｏｇ−ｓｕｍ演算回路２５６1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＡのうちの対数尤度ＤＧＡ２８，ＤＧＡ２９，ＤＧＡ３０，ＤＧＡ３１と、１時刻前に算出された対数尤度ＡＬのうち、符号に応じて該当するものを対数尤度Ａ０，Ａ１，Ａ２，Ａ３として入力し、これらの対数尤度ＤＧＡ２８，ＤＧＡ２９，ＤＧＡ３０，ＤＧＡ３１，Ａ０，Ａ１，Ａ２，Ａ３を用いて、対数尤度Ｉαを算出し、対数尤度ＡＬ０７として、所定のｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8に供給するとともに、対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを示すデータＡＧ０７を出力する。
【０３８３】
このような加算比較選択回路２４２は、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号における対数尤度Ｉαを算出する。加算比較選択回路２４２は、上述した加算比較選択回路２４１と同様に、算出した対数尤度Ｉαを出力するのではなく、対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを出力する。すなわち、加算比較選択回路２４２は、ｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8のそれぞれにより求められたデータＡＧ００，・・・，ＡＧ０７を束ね、データＡＧＦとしてセレクタ２４４に供給する。また、加算比較選択回路２４２は、ｌｏｇ−ｓｕｍ演算回路２５６1，・・・，２５６8のそれぞれにより求められた対数尤度ＡＬ００，・・・，ＡＬ０７を束ね、対数尤度ＡＬとしてＩα＋Ｉγ算出回路２４３に供給する。なお、加算比較選択回路２４２は、本来は、トレリス上の各ステートから次時刻におけるステートへと４本のパスが到達するような符号における対数尤度Ｉαを求めるために設けられるものであるが、上述したように、符号によっては８本のパスが到達するような符号における対数尤度Ｉαを求めることができる。これについては、“５−５−３”及び“５−５−５”に詳述する。
【０３８４】
Ｉα＋Ｉγ算出回路２４３は、後述するように、例えば先に図１７に示した畳み込み符号化器による符号のように、トレリス上にパラレルパスが存在する符号を復号するために設けられるものであり、対数尤度Ｉαと対数尤度Ｉγとの和を算出する。具体的には、Ｉα＋Ｉγ算出回路２４３は、図３７に示すように、３つのセレクタ２７３，２７４，２７５と、ここでは４つのＩα＋Ｉγ算出セル回路２７６1，２７６2，２７６3，２７６4とを有する。
【０３８５】
セレクタ２７３は、メモリ数情報ＭＮに基づいて、加算比較選択回路２４２から供給される対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ００，ＡＬ０１のうち、いずれか一方を選択する。セレクタ２７３は、選択して得られた対数尤度ＡＬ０１ＳをＩα＋Ｉγ算出セル回路２７６1，２７６2，２７６3，２７６4に供給する。
【０３８６】
セレクタ２７４は、メモリ数情報ＭＮに基づいて、加算比較選択回路２４２から供給される対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ０１，ＡＬ０２のうち、いずれか一方を選択する。セレクタ２７４は、選択して得られた対数尤度ＡＬ０２ＳをＩα＋Ｉγ算出セル回路２７６1，２７６2，２７６3，２７６4に供給する。
【０３８７】
セレクタ２７５は、メモリ数情報ＭＮに基づいて、加算比較選択回路２４２から供給される対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ０１，ＡＬ０３のうち、いずれか一方を選択する。セレクタ２７５は、選択して得られた対数尤度ＡＬ０３ＳをＩα＋Ｉγ算出セル回路２７６1，２７６2，２７６3，２７６4に供給する。
【０３８８】
Ｉα＋Ｉγ算出セル回路２７６1は、８個の加算器２７７1，２７７2，２７７3，２７７4，２７７5，２７７6，２７７7，２７７8を有する。
【０３８９】
加算器２７７1は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ００と、加算比較選択回路２４２から供給される対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ００とを加算する。加算器２７７1は、加算して得られたデータをデータＡＭ０として出力する。
【０３９０】
加算器２７７2は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０１と、加算比較選択回路２４２から供給される対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ００とを加算する。加算器２７７2は、加算して得られたデータをデータＡＭ１として出力する。
【０３９１】
加算器２７７3は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０２と、セレクタ２７３から供給される対数尤度ＡＬ０１Ｓとを加算する。加算器２７７3は、加算して得られたデータをデータＡＭ２として出力する。
【０３９２】
加算器２７７4は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０３と、セレクタ２７３から供給される対数尤度ＡＬ０１Ｓとを加算する。加算器２７７4は、加算して得られたデータをデータＡＭ３として出力する。
【０３９３】
加算器２７７5は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０４と、セレクタ２７４から供給される対数尤度ＡＬ０２Ｓとを加算する。加算器２７７5は、加算して得られたデータをデータＡＭ４として出力する。
【０３９４】
加算器２７７6は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０５と、セレクタ２７４から供給される対数尤度ＡＬ０２Ｓとを加算する。加算器２７７6は、加算して得られたデータをデータＡＭ５として出力する。
【０３９５】
加算器２７７7は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０６と、セレクタ２７５から供給される対数尤度ＡＬ０３Ｓとを加算する。加算器２７７7は、加算して得られたデータをデータＡＭ６として出力する。
【０３９６】
加算器２７７8は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０７と、セレクタ２７５から供給される対数尤度ＡＬ０３Ｓとを加算する。加算器２７７8は、加算して得られたデータをデータＡＭ７として出力する。
【０３９７】
このようなＩα＋Ｉγ算出セル回路２７６1は、Ｉγ分配回路１５７によりパラレルパスを束ねない状態で得られる対数尤度Ｉγを示す対数尤度ＤＧＡＢと、加算比較選択回路２４２により算出される対数尤度ＡＬとを加算することによって、パラレルパスを束ねた場合に対数軟出力Ｉλを求める際に用いる対数尤度Ｉαと対数尤度Ｉγとの和を算出する。Ｉα＋Ｉγ算出セル回路２７６1は、算出したデータＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３，ＡＭ４，ＡＭ５，ＡＭ６，ＡＭ７をデータＡＧ００として出力する。
【０３９８】
また、Ｉα＋Ｉγ算出セル回路２７６2は、Ｉα＋Ｉγ算出セル回路２７６1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ０８，ＤＧＡＢ０９，ＤＧＡＢ１０，ＤＧＡＢ１１，ＤＧＡＢ１２，ＤＧＡＢ１３，ＤＧＡＢ１４，ＤＧＡＢ１５と、対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ００と、対数尤度ＡＬ０１Ｓ，ＡＬ０２Ｓ，ＡＬ０３Ｓとを用いて、パラレルパスを束ねた場合に対数軟出力Ｉλを求める際に用いる対数尤度Ｉαと対数尤度Ｉγとの和を算出する。Ｉα＋Ｉγ算出セル回路２７６2は、算出したデータをデータＡＧ０１として出力する。
【０３９９】
さらに、Ｉα＋Ｉγ算出セル回路２７６3は、Ｉα＋Ｉγ算出セル回路２７６1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ１６，ＤＧＡＢ１７，ＤＧＡＢ１８，ＤＧＡＢ１９，ＤＧＡＢ２０，ＤＧＡＢ２１，ＤＧＡＢ２２，ＤＧＡＢ２３と、対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ００と、対数尤度ＡＬ０１Ｓ，ＡＬ０２Ｓ，ＡＬ０３Ｓとを用いて、パラレルパスを束ねた場合に対数軟出力Ｉλを求める際に用いる対数尤度Ｉαと対数尤度Ｉγとの和を算出する。Ｉα＋Ｉγ算出セル回路２７６3は、算出したデータをデータＡＧ０２として出力する。
【０４００】
さらにまた、Ｉα＋Ｉγ算出セル回路２７６4は、Ｉα＋Ｉγ算出セル回路２７６1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＡＢのうち、符号に応じて該当する所定の対数尤度ＤＧＡＢ２４，ＤＧＡＢ２５，ＤＧＡＢ２６，ＤＧＡＢ２７，ＤＧＡＢ２８，ＤＧＡＢ２９，ＤＧＡＢ３０，ＤＧＡＢ３１と、対数尤度ＡＬのうち、符号に応じて該当する所定の対数尤度ＡＬ００と、対数尤度ＡＬ０１Ｓ，ＡＬ０２Ｓ，ＡＬ０３Ｓとを用いて、パラレルパスを束ねた場合に対数軟出力Ｉλを求める際に用いる対数尤度Ｉαと対数尤度Ｉγとの和を算出する。Ｉα＋Ｉγ算出セル回路２７６4は、算出したデータをデータＡＧ０３として出力する。
【０４０１】
このようなＩα＋Ｉγ算出回路２４３は、対数尤度Ｉαと対数尤度Ｉγとの和を算出し、算出したデータＡＧ００，ＡＧ０１，ＡＧ０２，ＡＧ０３を束ね、データＡＧＥとしてセレクタ２４４に供給する。
【０４０２】
セレクタ２４４は、入力ビット数情報ＩＮに基づいて、加算比較選択回路２４１から供給される対数尤度Ｉαと対数尤度Ｉγとの和を示すデータＡＧＴと、加算比較選択回路２４２から供給される対数尤度Ｉαと対数尤度Ｉγとの和を示すデータＡＧＦと、Ｉα＋Ｉγ算出回路２４３から供給される対数尤度Ｉαと対数尤度Ｉγとの和を示すデータＡＧＥとのうち、いずれか一のデータを選択する。
具体的には、セレクタ２４４は、符号化装置１における要素符号化器による符号が、トレリス上にパラレルパスが存在せず且つ各ステートから次時刻におけるステートへと２本のパスが到達するような符号であった場合には、データＡＧＴを選択し、符号化装置１における要素符号化器による符号が、トレリス上にパラレルパスが存在せず且つ各ステートから次時刻におけるステートへと４本のパスが到達するような符号であった場合には、データＡＧＦを選択し、符号化装置１における要素符号化器による符号が、最大で３２本の枝を有するトレリスで表され且つ最大で４ステートを有する符号、より具体的には、４ステートに対して各ステートに８本のパスが到達するようなパラレルパスがトレリス上に存在する符号であった場合には、データＡＧＥを選択する。すなわち、ここでは、セレクタ２４４による選択動作を制御するための制御信号として、入力ビット数情報ＩＮを用いているが、実際には、符号構成の示す制御信号がセレクタ２４４に入力される。
【０４０３】
このようなＩα算出回路１５８は、対数尤度Ｉαを算出し、この算出した対数尤度Ｉαをそのまま出力するのではなく、対数軟出力Ｉλの算出に用いる対数尤度Ｉαと対数尤度Ｉγとの和を、データＡＧとして出力する。このデータＡＧは、所定の遅延が施された後、データＡＧＤとして軟出力算出回路１６１に供給される。
【０４０４】
Ｉβ算出回路１５９は、Ｉγ分配回路１５７から供給される対数尤度ＤＧＢ０，ＤＧＢ１を用いて、対数尤度Ｉβを算出する。具体的には、Ｉβ算出回路１５９は、“２．”の冒頭に記載した表記に基づくと、対数尤度Ｉγを用いて、次式（５２）に示す演算を行い、各時刻ｔにおける２系統の対数尤度Ｉβを並列的に算出する。なお、次式（５２）における演算子“＃”は、上述したように、ｌｏｇ−ｓｕｍ演算を示すものであり、入力“０”でステートｍ’からステートｍへと遷移するときにおける対数尤度と、入力“１”でステートｍ’’からステートｍへと遷移するときにおける対数尤度とのｌｏｇ−ｓｕｍ演算を示すものである。より具体的には、Ｉβ算出回路１５９は、定数ｓｇｎが“＋１”の場合には、次式（５３）に示す演算を行うことによって、一方、定数ｓｇｎが“−１”の場合には、次式（５４）に示す演算を行うことによって、各時刻ｔにおける対数尤度Ｉβを算出する。すなわち、Ｉβ算出回路１５９は、対数尤度Ｉγに基づいて、受信値ｙt毎に、打ち切りステートから時系列の逆順に各ステートに至る確率βを対数表記した対数尤度Ｉβ又は確率βを対数表記して正負識別符号を反転した対数尤度Ｉβを算出する。
【０４０５】
【数５２】
0004543522.tif 000057
【０４０６】
【数５３】
0004543522.tif 000058
【０４０７】
【数５４】
0004543522.tif 000059
【０４０８】
このとき、Ｉβ算出回路１５９は、制御回路６０から供給される生成行列情報ＣＧと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮ、型情報ＷＭ及びメモリ数情報ＭＮと、受信データ及び遅延用記憶回路１５５から供給される終結情報ＴＢ０Ｄ，ＴＢ１Ｄとに基づいて、対数尤度Ｉβを算出する。Ｉβ算出回路１５９は、算出した２系統の対数尤度Ｉβを、対数尤度Ｂ０，Ｂ１としてＩβ記憶回路１６０に供給する。
【０４０９】
具体的には、Ｉβ算出回路１５９は、例えば図３８に示すように、制御信号を生成する制御信号生成回路２８０と、２系統の対数尤度Ｉβのうちの一方の対数尤度Ｉβ０を算出するためのＩβ０用加算比較選択回路２８１と、対数尤度Ｉβ１を算出するためのＩβ１用加算比較選択回路２８２とを有するものとして実現することができる。
【０４１０】
制御信号生成回路２８０は、生成行列情報ＣＧ、入力ビット数情報ＩＮ、型情報ＷＭ及びメモリ数情報ＭＮを用いて、トレリス上の各ステートから次時刻におけるステートへと４本のパスが到達するような符号における遷移先のステートを算出し、制御信号ＮＳＴとしてＩβ０用加算比較選択回路２８１及びＩβ１用加算比較選択回路２８２に供給する。
【０４１１】
Ｉβ０用加算比較選択回路２８１は、対数尤度Ｉβ０を算出するために設けられるものである。Ｉβ０用加算比較選択回路２８１は、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号に対して、加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行う加算比較選択回路２８３と、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号に対して、加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行う加算比較選択回路２８４と、２対１の選択を行うセレクタ２８５とを有する。
【０４１２】
加算比較選択回路２８３は、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号に対して、加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行うことによって、ｌｏｇ−ｓｕｍ演算を行う。
【０４１３】
具体的には、加算比較選択回路２８３は、図３９に示すように、上述した加算比較選択回路２４１と同様に、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号のうち、復号の対象とする符号のステート数のうちの最大値の数のｌｏｇ−ｓｕｍ演算回路２８６nを有する。ここでは、加算比較選択回路２８３は、最大で１６ステートを有する符号の復号を行うものとし、１６個のｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16を有するものとする。
【０４１４】
これらのｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16には、それぞれ、トレリス上の遷移に基づいて、トレリス上の出力パターンに対応する枝の対数尤度Ｉγと、各ステートにおける１時刻前の対数尤度Ｉβ０が供給される。すなわち、ｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16には、それぞれ、対数尤度ＤＧＢ０のうち、トレリス上の出力パターンに対応する枝の対数尤度Ｉγに相当するものと、算出した１時刻前の対数尤度ＢＴＴのうち、各ステートにおける対数尤度Ｉβ０に相当するものとが供給される。そして、ｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16は、それぞれ、次時刻の各ステートにおける対数尤度Ｉβを対数尤度ＢＴＴとして求める。各ｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16に対する対数尤度ＢＴＴの分配は、符号構成に応じて異なり、ここではメモリ数情報ＭＮに基づいて、図示しないセレクタ等により決定される。この対数尤度ＢＴＴの分配については、さらに後述する。
【０４１５】
具体的には、ｌｏｇ−ｓｕｍ演算回路２８６1は、３つの加算器２８７1，２８７2，２９０と、ｌｏｇ−ｓｕｍ補正における補正項の値を算出する補正項算出回路２８８と、セレクタ２８９と、Ｉβ０正規化回路２９１とを有する。
【０４１６】
加算器２８７1は、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ００を入力するとともに、１時刻前に算出された対数尤度ＢＴＴのうち、符号に応じて該当するものを対数尤度Ｂ０として入力し、これらの対数尤度ＤＧＢ００，Ｂ０を加算する。加算器２８７1は、加算して得られた対数尤度Ｉβと対数尤度Ｉγとの和を示すデータＡＭ０を補正項算出回路２８８及びセレクタ２８９に供給する。
【０４１７】
加算器２８７2は、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ０１を入力するとともに、１時刻前に算出された対数尤度ＢＴＴのうち、符号に応じて該当するものを対数尤度Ｂ１として入力し、これらの対数尤度ＤＧＢ０１，Ｂ１を加算する。加算器２８７2は、加算して得られたＩβ０＋Ｉγを示すデータＡＭ１を補正項算出回路２８８及びセレクタ２８９に供給する。
【０４１８】
補正項算出回路２８８は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２８７1から供給されるデータＡＭ０と、加算器２８７2から供給されるデータＡＭ１とを入力し、補正項の値を示すデータＤＭを算出する。この際、補正項算出回路２８８は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２８８においては、加算器２８７1，２８７2から供給されるデータＡＭ０，ＡＭ１のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ０，ＡＭ１の大小比較を高速に行う。補正項算出回路２８８は、算出したデータＤＭを加算器２９０に供給する。また、補正項算出回路２８８は、セレクタ２８９による選択動作を制御するための制御信号ＳＥＬを生成する。
【０４１９】
セレクタ２８９は、補正項算出回路２８８から供給される制御信号ＳＥＬに基づいて、データＡＭ０，ＡＭ１のうち、値が小さいものを選択する。セレクタ２８９は、選択して得られたデータＳＡＭを加算器２９０に供給する。
【０４２０】
加算器２９０は、セレクタ２８９から供給されるデータＳＡＭと、補正項算出回路２８８から供給されるデータＤＭとを加算し、対数尤度Ｉβ０を算出する。加算器２９０は、算出した対数尤度Ｉβ０を対数尤度ＣＭとしてＩβ０正規化回路２９１に供給する。
【０４２１】
Ｉβ０正規化回路２９１は、上述したＩα正規化回路２５０と同様に、加算器２９０から供給される対数尤度ＣＭの分布の偏りを是正するための正規化を行う。また、Ｉβ０正規化回路２９１は、終結情報ＴＢ０Ｄを用いて、終結処理も行う。Ｉβ０正規化回路２９１は、正規化後の対数尤度Ｉβ０を、必要なダイナミックレンジに応じてクリッピングを行い、対数尤度ＢＴ００として、所定のｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16に供給する。このとき、対数尤度ＢＴ００は、図示しないレジスタにより１時刻分の遅延がなされた後、所定のｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16に供給される。
【０４２２】
このようなｌｏｇ−ｓｕｍ演算回路２８６1は、対数尤度ＢＴ００を求めて出力する。すなわち、ｌｏｇ−ｓｕｍ演算回路２８６1は、求めた対数尤度ＢＴ００を、次時刻における対数尤度Ｉβ０の算出に用いるために、所定のｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16に供給するとともに、外部に出力する。
【０４２３】
ｌｏｇ−ｓｕｍ演算回路２８６2は、ｌｏｇ−ｓｕｍ演算回路２８６1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ０２，ＤＧＢ０３と、１時刻前に算出された対数尤度ＢＴＴのうち、符号に応じて該当するものを対数尤度Ｂ０，Ｂ１として入力し、これらの対数尤度ＤＧＢ０２，ＤＧＢ０３，Ｂ０，Ｂ１を用いて、対数尤度Ｉβ０を算出し、対数尤度ＢＴ０１として、所定のｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16に供給するとともに、外部に出力する。
【０４２４】
また、ｌｏｇ−ｓｕｍ演算回路２８６3も、ｌｏｇ−ｓｕｍ演算回路２８６1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ０４，ＤＧＢ０５と、１時刻前に算出された対数尤度ＢＴＴのうち、符号に応じて該当するものを対数尤度Ｂ０，Ｂ１として入力し、これらの対数尤度ＤＧＢ０４，ＤＧＢ０５，Ｂ０，Ｂ１を用いて、対数尤度Ｉβ０を算出し、対数尤度ＢＴ０２として、所定のｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16に供給するとともに、外部に出力する。
【０４２５】
さらに、ｌｏｇ−ｓｕｍ演算回路２８６16も、ｌｏｇ−ｓｕｍ演算回路２８６1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ３０，ＤＧＢ３１と、１時刻前に算出された対数尤度ＢＴＴのうち、符号に応じて該当するものを対数尤度Ｂ０，Ｂ１として入力し、これらの対数尤度ＤＧＢ３０，ＤＧＢ３１，Ｂ０，Ｂ１を用いて、対数尤度Ｉβ０を算出し、対数尤度ＢＴ１５として、所定のｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16に供給するとともに、外部に出力する。
【０４２６】
このような加算比較選択回路２８３は、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号における対数尤度Ｉβ０を算出する。加算比較選択回路２８３は、ｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16のそれぞれにより求められたデータＢＴ００，ＢＴ０１，ＢＴ０２，・・・，ＢＴ１５を束ね、対数尤度ＢＴＴとしてセレクタ２８５に供給する。
【０４２７】
加算比較選択回路２８４は、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号に対して、加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行うことによって、ｌｏｇ−ｓｕｍ演算を行う。
【０４２８】
具体的には、加算比較選択回路２８４は、図４０に示すように、上述した加算比較選択回路２４２と同様に、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号のうち、復号の対象とする符号のステート数のうちの最大値の数のｌｏｇ−ｓｕｍ演算回路２９２nを有する。ここでは、加算比較選択回路２８４は、最大で８ステートを有する符号の復号を行うものとし、８個のｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8を有するものとする。
【０４２９】
これらのｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8には、それぞれ、上述した加算比較選択回路２８３におけるｌｏｇ−ｓｕｍ演算回路２８６1，２８６2，２８６3，・・・，２８６16と同様に、トレリス上の遷移に基づいて、トレリス上の出力パターンに対応する枝の対数尤度Ｉγと、各ステートにおける１時刻前の対数尤度Ｉβ０が供給される。すなわち、ｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8には、それぞれ、対数尤度ＤＧＢ０のうち、トレリス上の出力パターンに対応する枝の対数尤度Ｉγに相当するものと、算出した１時刻前の対数尤度ＢＴＦのうち、各ステートにおける対数尤度Ｉβ０に相当するものとが供給される。そして、ｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8は、それぞれ、次時刻の各ステートにおける対数尤度Ｉβ０を対数尤度ＢＴＦとして求める。各ｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8に対する対数尤度ＢＴＦの分配は、符号構成に応じて異なり、ここでは制御信号ＮＳＴに基づいて、図示しないセレクタ等により決定される。この対数尤度ＢＴＦの分配については、さらに後述する。
【０４３０】
具体的には、ｌｏｇ−ｓｕｍ演算回路２９２1は、５つの加算器２９３1，２９３2，２９３3，２９３4，３０７と、ｌｏｇ−ｓｕｍ補正における補正項の値を算出する６個の補正項算出回路２９４1，２９４2，２９４3，２９４4，２９４5，２９４6と、１１個のセレクタ２９５，２９６，２９７，２９８，２９９，３００，３０１，３０２，３０３，３０４，３０５と、セレクタ３０５による選択動作を制御するための制御信号を生成する選択用制御信号生成回路３０６と、Ｉβ０正規化回路３０８とを有する。
【０４３１】
加算器２９３1は、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ００を入力するとともに、１時刻前に算出された対数尤度ＢＴＦのうち、符号に応じて該当するものを対数尤度Ｂ０として入力し、これらの対数尤度ＤＧＢ００，Ｂ０を加算する。加算器２９３1は、加算して得られた対数尤度Ｉβ０と対数尤度Ｉγとの和を示すデータＡＭ０を補正項算出回路２９４1，２９４3，２９４5及びセレクタ２９５に供給する。
【０４３２】
加算器２９３2は、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ０１を入力するとともに、１時刻前に算出された対数尤度ＢＴＦのうち、符号に応じて該当するものを対数尤度Ｂ１として入力し、これらの対数尤度ＤＧＢ０１，Ｂ１を加算する。加算器２９３2は、加算して得られたＩβ０＋Ｉγを示すデータＡＭ１を補正項算出回路２９４1，２９４4，２９４6及びセレクタ２９５に供給する。
【０４３３】
加算器２９３3は、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ０２を入力するとともに、１時刻前に算出された対数尤度ＢＴＦのうち、符号に応じて該当するものを対数尤度Ｂ２として入力し、これらの対数尤度ＤＧＢ０２，Ｂ２を加算する。加算器２９３3は、加算して得られたＩβ０＋Ｉγを示すデータＡＭ２を補正項算出回路２９４2，２９４3，２９４4及びセレクタ２９６に供給する。
【０４３４】
加算器２９３4は、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ０３を入力するとともに、１時刻前に算出された対数尤度ＢＴＦのうち、符号に応じて該当するものを対数尤度Ｂ３として入力し、これらの対数尤度ＤＧＢ０３，Ｂ３を加算する。加算器２９３4は、加算して得られたＩβ０＋Ｉγを示すデータＡＭ３を補正項算出回路２９４2，２９４5，２９４6及びセレクタ２９６に供給する。
【０４３５】
補正項算出回路２９４1は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２９３1から供給されるデータＡＭ０と、加算器２９３2から供給されるデータＡＭ１とを入力し、補正項の値を示すデータＤＭ０を算出する。この際、補正項算出回路２９４1は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２９４1においては、加算器２９３1，２９３2から供給されるデータＡＭ０，ＡＭ１のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ０，ＡＭ１の大小比較を高速に行う。補正項算出回路２９４1は、算出したデータＤＭ０をセレクタ３０４に供給する。また、補正項算出回路２９４1は、セレクタ２９５，２９７，２９８，２９９，３００による選択動作を制御するための制御信号ＳＥＬ０を生成する。
【０４３６】
補正項算出回路２９４2は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２９３3から供給されるデータＡＭ２と、加算器２９３4から供給されるデータＡＭ３とを入力し、補正項の値を示すデータＤＭ１を算出する。この際、補正項算出回路２９４2は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２９４2においては、加算器２９３3，２９３4から供給されるデータＡＭ２，ＡＭ３のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ２，ＡＭ３の大小比較を高速に行う。補正項算出回路２９４2は、算出したデータＤＭ１をセレクタ３０４に供給する。また、補正項算出回路２９４2は、セレクタ２９６，３０１，３０２による選択動作を制御するための制御信号ＳＥＬ１を生成する。
【０４３７】
補正項算出回路２９４3は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２９３1から供給されるデータＡＭ０と、加算器２９３3から供給されるデータＡＭ２とを入力し、補正項の値を示すデータＤＭ２を算出する。この際、補正項算出回路２９４3は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２９４3においては、加算器２９３1，２９３3から供給されるデータＡＭ０，ＡＭ２のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ０，ＡＭ２の大小比較を高速に行う。補正項算出回路２９４3は、算出したデータＤＭ２をセレクタ２９９に供給する。また、補正項算出回路２９４3は、最終的にセレクタ３０３，３０４による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ２を生成し、この制御信号ＳＥＬ２をセレクタ２９７及び選択用制御信号生成回路３０６に供給する。
【０４３８】
補正項算出回路２９４4は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２９３2から供給されるデータＡＭ１と、加算器２９３3から供給されるデータＡＭ２とを入力し、補正項の値を示すデータＤＭ３を算出する。この際、補正項算出回路２９４4は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２９４4においては、加算器２９３2，２９３3から供給されるデータＡＭ１，ＡＭ２のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ１，ＡＭ２の大小比較を高速に行う。補正項算出回路２９４4は、算出したデータＤＭ３をセレクタ２９９に供給する。また、補正項算出回路２９４4は、最終的にセレクタ３０３，３０４による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ３を生成し、この制御信号ＳＥＬ３をセレクタ２９７及び選択用制御信号生成回路３０６に供給する。
【０４３９】
補正項算出回路２９４5は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２９３1から供給されるデータＡＭ０と、加算器２９３4から供給されるデータＡＭ３とを入力し、補正項の値を示すデータＤＭ４を算出する。この際、補正項算出回路２９４5は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２９４5においては、加算器２９３1，２９３4から供給されるデータＡＭ０，ＡＭ３のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ０，ＡＭ３の大小比較を高速に行う。補正項算出回路２９４5は、算出したデータＤＭ４をセレクタ３００に供給する。また、補正項算出回路２９４5は、最終的にセレクタ３０３，３０４による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ４を生成し、この制御信号ＳＥＬ４をセレクタ２９８及び選択用制御信号生成回路３０６に供給する。
【０４４０】
補正項算出回路２９４6は、先に図３５に示した補正項算出回路２４７と同様の構成からなるため、ここでは詳細を省略するが、加算器２９３2から供給されるデータＡＭ１と、加算器２９３4から供給されるデータＡＭ３とを入力し、補正項の値を示すデータＤＭ５を算出する。この際、補正項算出回路２９４6は、補正項算出回路２４７と同様に、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、複数の補正項の値を算出し、その中から適切なものを選択する。また、補正項算出回路２９４6においては、加算器２９３2，２９３4から供給されるデータＡＭ１，ＡＭ３のうちの下位ビットの最上位ビットに“１”又は“０”が付されたデータ間の差分をとり、データＡＭ１，ＡＭ３の大小比較を高速に行う。補正項算出回路２９４6は、算出したデータＤＭ５をセレクタ３００に供給する。また、補正項算出回路２９４6は、最終的にセレクタ３０３，３０４による選択動作を制御するための制御信号ＳＥＬ８となる制御信号ＳＥＬ５を生成し、この制御信号ＳＥＬ５をセレクタ２９８及び選択用制御信号生成回路３０６に供給する。
【０４４１】
セレクタ２９５は、補正項算出回路２９４1から供給される制御信号ＳＥＬ０に基づいて、データＡＭ０，ＡＭ１のうち、値が小さいものを選択する。セレクタ２９５は、選択して得られたデータＳＡＭ０をセレクタ３０３に供給する。
【０４４２】
セレクタ２９６は、補正項算出回路２９４2から供給される制御信号ＳＥＬ１に基づいて、データＡＭ２，ＡＭ３のうち、値が小さいものを選択する。セレクタ２９６は、選択して得られたデータＳＡＭ１をセレクタ３０３に供給する。
【０４４３】
セレクタ２９７は、補正項算出回路２９４1から供給される制御信号ＳＥＬ０に基づいて、制御信号ＳＥＬ２，ＳＥＬ３のうち、いずれか一方を選択する。具体的には、セレクタ２９７は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、制御信号ＳＥＬ３を選択する。セレクタ２９７は、選択して得られた制御信号ＳＥＬ６をセレクタ３０１に供給する。
【０４４４】
セレクタ２９８は、補正項算出回路２９４1から供給される制御信号ＳＥＬ０に基づいて、制御信号ＳＥＬ４，ＳＥＬ５のうち、いずれか一方を選択する。具体的には、セレクタ２９８は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、制御信号ＳＥＬ５を選択する。セレクタ２９８は、選択して得られた制御信号ＳＥＬ７をセレクタ３０１に供給する。
【０４４５】
セレクタ２９９は、補正項算出回路２９４1から供給される制御信号ＳＥＬ０に基づいて、データＤＭ２，ＤＭ３のうち、いずれか一方を選択する。具体的には、セレクタ２９９は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、データＤＭ３を選択する。セレクタ２９９は、選択して得られたデータＤＳ０をセレクタ３０２に供給する。
【０４４６】
セレクタ３００は、補正項算出回路２９４1から供給される制御信号ＳＥＬ０に基づいて、データＤＭ４，ＤＭ５のうち、いずれか一方を選択する。具体的には、セレクタ３００は、データＡＭ１よりもデータＡＭ０の方が値が大きい場合には、データＤＭ５を選択する。セレクタ３００は、選択して得られたデータＤＳ１をセレクタ３０２に供給する。
【０４４７】
セレクタ３０１は、補正項算出回路２９４2から供給される制御信号ＳＥＬ１に基づいて、制御信号ＳＥＬ６，ＳＥＬ７のうち、いずれか一方を選択する。具体的には、セレクタ３０１は、データＡＭ３よりもデータＡＭ２の方が値が大きい場合には、制御信号ＳＥＬ７を選択する。セレクタ３０１は、選択して得られた制御信号ＳＥＬ８をセレクタ３０３，３０４における選択用の制御信号として供給する。
【０４４８】
セレクタ３０２は、補正項算出回路２９４2から供給される制御信号ＳＥＬ１に基づいて、データＤＳ０，ＤＳ１のうち、いずれか一方を選択する。具体的には、セレクタ３０２は、データＡＭ３よりもデータＡＭ２の方が値が大きい場合には、データＤＳ１を選択する。セレクタ３０２は、選択して得られたデータＤＳ２をセレクタ３０５に供給する。
【０４４９】
セレクタ３０３は、制御信号ＳＥＬ８に基づいて、データＳＡＭ０，ＳＡＭ１のうち、いずれか一方を選択する。具体的には、セレクタ３０３は、制御信号ＳＥＬ８が制御信号ＳＥＬ７であった場合には、データＳＡＭ１を選択する。セレクタ３０３は、選択して得られたデータＳＡＭ２を加算器３０７に供給する。
【０４５０】
セレクタ３０４は、制御信号ＳＥＬ８に基づいて、データＤＭ０，ＤＭ１のうち、いずれか一方を選択する。具体的には、セレクタ３０４は、制御信号ＳＥＬ８が制御信号ＳＥＬ７であった場合には、データＤＭ１を選択する。セレクタ３０４は、選択して得られたデータＤＳ３をセレクタ３０５に供給する。
【０４５１】
セレクタ３０５は、選択用制御信号生成回路３０６から供給される制御信号ＳＥＬ９に基づいて、データＤＳ２，ＤＳ３のうち、いずれか一方を選択する。セレクタ３０５は、選択して得られたデータＲＤＭを加算器３０７に供給する。
【０４５２】
選択用制御信号生成回路３０６は、制御信号ＳＥＬ２，ＳＥＬ３，ＳＥＬ４，ＳＥＬ５に基づいて、セレクタ３０５による選択動作を制御するための制御信号ＳＥＬ９を生成する。具体的には、選択用制御信号生成回路３０６は、制御信号ＳＥＬ２，ＳＥＬ３，ＳＥＬ４，ＳＥＬ５の論理積と、制御信号ＳＥＬ２，ＳＥＬ３，ＳＥＬ４，ＳＥＬ５の論理積の否定との論理和をとることによって、制御信号ＳＥＬ９を生成する。
【０４５３】
加算器３０７は、セレクタ３０３から供給されるデータＳＡＭ２と、セレクタ３０５から供給されるデータＲＤＭとを加算し、対数尤度Ｉβ０を算出する。加算器３０７は、算出した対数尤度Ｉβ０を対数尤度ＣＭとしてＩβ０正規化回路３０８に供給する。
【０４５４】
Ｉβ０正規化回路３０８は、上述したＩβ０正規化回路２９１と同様に、加算器３０７から供給される対数尤度ＣＭの分布の偏りを是正するための正規化を行う。また、Ｉβ０正規化回路３０８は、終結情報ＴＢ０Ｄを用いて、終結処理も行う。Ｉβ０正規化回路３０８は、正規化後の対数尤度Ｉβ０を、必要なダイナミックレンジに応じてクリッピングを行い、対数尤度ＢＴ００として、所定のｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8に供給する。このとき、対数尤度ＢＴ００は、図示しないレジスタにより１時刻分の遅延がなされた後、所定のｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8に供給される。
【０４５５】
このようなｌｏｇ−ｓｕｍ演算回路２９２1は、対数尤度ＢＴ００を求めて出力する。すなわち、ｌｏｇ−ｓｕｍ演算回路２９２1は、求めた対数尤度ＢＴ００を、次時刻における対数尤度Ｉβ０の算出に用いるために、所定のｌｏｇ−ｓｕｍ演算回路２０２1，・・・，２９２8に供給するとともに、外部に出力する。
【０４５６】
この際、ｌｏｇ−ｓｕｍ演算回路２９２1は、各ステートに到達した４本のパス、又は、符号によっては８本のパスを束ねて得られる４組のパスに対応する尤度を示すデータＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３の中から選択した２つのパスに対応するデータの組み合わせの全てについて尤度の大小を比較することによって、これらのデータＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３のうち、尤度の高い少なくとも２つ以上のパスに対応するデータを求め、これらのパスに対応するデータの中から、最も尤度の高いパスである最尤パスに対応するデータを選択する。より具体的には、ｌｏｇ−ｓｕｍ演算回路２９２1は、データＡＭ０，ＡＭ１，ＡＭ２，ＡＭ３について、いわば勝ち抜き戦に喩えられる動作を行うことによって、データＡＭ０の値、データＡＭ１の値、データＡＭ２の値及びデータＡＭ３の値の大小を比較し、最尤パスに対応するデータを選択する。
【０４５７】
また、ｌｏｇ−ｓｕｍ演算回路２９２8は、ｌｏｇ−ｓｕｍ演算回路２９２1と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＢ０のうちの対数尤度ＤＧＢ２８，ＤＧＢ２９，ＤＧＢ３０，ＤＧＢ３１と、１時刻前に算出された対数尤度ＢＴＦのうち、符号に応じて該当するものを対数尤度Ｂ０，Ｂ１，Ｂ２，Ｂ３として入力し、これらの対数尤度ＤＧＢ２８，ＤＧＢ２９，ＤＧＢ３０，ＤＧＢ３１，Ｂ０，Ｂ１，Ｂ２，Ｂ３を用いて、対数尤度Ｉβ０を算出し、対数尤度ＢＴ０７として、所定のｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8に供給するとともに、外部に出力する。
【０４５８】
このような加算比較選択回路２８４は、トレリス上の各ステートから次時刻におけるステートへと４本、又は、符号によっては８本のパスが到達するような符号における対数尤度Ｉβ０を算出する。加算比較選択回路２８４は、ｌｏｇ−ｓｕｍ演算回路２９２1，・・・，２９２8のそれぞれにより求められたデータＢＴ００，・・・，ＢＴ０７を束ね、データＢＴＦとしてセレクタ２８５に供給する。なお、加算比較選択回路２８４は、上述した加算比較選択回路２４２と同様に、本来は、トレリス上の各ステートから次時刻におけるステートへと４本のパスが到達するような符号における対数尤度Ｉβ０を求めるために設けられるものであるが、上述したように、符号によっては８本のパスが到達するような符号における対数尤度Ｉβ０を求めることができる。これについては、“５−５−３”及び“５−５−５”に詳述する。
【０４５９】
セレクタ２８５は、入力ビット数情報ＩＮに基づいて、加算比較選択回路２８３から供給される対数尤度Ｉβ０を示す対数尤度ＢＴＴと、加算比較選択回路２８４から供給される対数尤度Ｉβ０を示すデータＢＴＦとのうち、いずれか一方を選択する。具体的には、セレクタ２８５は、符号化装置１における要素符号化器による符号が、トレリス上にパラレルパスが存在せず且つ各ステートから次時刻におけるステートへと２本のパスが到達するような符号であった場合には、対数尤度ＢＴＴを選択し、符号化装置１における要素符号化器による符号が、トレリス上にパラレルパスが存在せず且つ各ステートから次時刻におけるステートへと４本のパスが到達するような符号であった場合には、対数尤度ＢＴＦを選択する。すなわち、ここでは、セレクタ２８５による選択動作を制御するための制御信号として、入力ビット数情報ＩＮを用いているが、実際には、符号構成の示す制御信号がセレクタ２８５に入力される。
【０４６０】
このようなＩβ０用加算比較選択回路２８１は、対数尤度Ｉβ０を算出し、この算出した対数尤度Ｉβ０を、対数尤度Ｂ０として出力する。この対数尤度Ｂ０は、Ｉβ記憶回路１６０に供給される。
【０４６１】
一方、Ｉβ１用加算比較選択回路２８２は、対数尤度Ｉβ１を算出するために設けられるものである。Ｉβ１用加算比較選択回路２８２は、Ｉβ０用加算比較選択回路２８１と同様の構成からなるため、詳細な説明は省略するが、対数尤度ＤＧＢ０及び終結情報ＴＢ０Ｄの代わりに対数尤度ＤＧＢ１及び終結情報ＴＢ１Ｄを入力して対数尤度Ｉβ１を算出し、この算出した対数尤度Ｉβ１を、対数尤度Ｂ１として出力する。この対数尤度Ｂ１は、Ｉβ記憶回路１６０に供給される。
【０４６２】
このようなＩβ算出回路１５９は、２系統の対数尤度Ｉβ０，Ｉβ１を並列的に算出し、これらの算出した対数尤度Ｉβ０，Ｉβ１を、それぞれ、対数尤度Ｂ０，Ｂ１としてＩβ記憶回路１６０に供給する。
【０４６３】
Ｉβ記憶回路１６０は、図示しないが、例えば、複数バンクのＲＡＭと、制御回路と、選択回路とを有する。Ｉβ記憶回路１６０は、Ｉβ算出回路１５９から供給される対数尤度Ｂ０，Ｂ１を記憶する。そして、Ｉβ記憶回路１６０は、内部の制御回路による制御の下に、記憶した対数尤度Ｂ０，Ｂ１のうち、所定の情報を選択回路により選択し、対数軟出力Ｉλを算出するために用いる対数尤度ＢＴとして、軟出力算出回路１６１に供給する。なお、要素復号器５０は、上述したように、スライディングウィンドウ処理を行う際のＩβ記憶回路１６０におけるメモリマネジメントの手法として、国際公開番号ＷＯ９９／６２１８３号公報に記載されているものを採用しており、上述した受信データ及び遅延用記憶回路１５５に対するメモリマネジメントを行うとともに、Ｉβ記憶回路１６０に対するメモリマネジメントを行うことによって、最終的に対数軟出力Ｉλを本来の時系列順に求めることができる。
【０４６４】
軟出力算出回路１６１は、Ｉα算出回路１５８から供給されるデータＡＧＤと、Ｉβ記憶回路１６０から供給される対数尤度ＢＴとを用いて、対数軟出力Ｉλを算出する。具体的には、軟出力算出回路１６１は、“２．”の冒頭に記載した表記に基づくと、対数尤度Ｉγ、対数尤度Ｉα及び対数尤度Ｉβを用いて、次式（５５）に示す演算を行い、各時刻ｔにおける対数軟出力Ｉλを算出する。なお、次式（５５）における演算子“＃Σ”は、上述した演算子“＃”で表されるｌｏｇ−ｓｕｍ演算の累積加算演算を示すものである。
【０４６５】
【数５５】
0004543522.tif 000060
【０４６６】
また、軟出力算出回路１６１は、シンボル単位又はビット単位で対数軟出力Ｉλを算出することもできる。軟出力算出回路１６１は、外部から供給される出力データ選択制御信号ＣＩＴＭと、制御回路６０から供給される事前確率情報形式情報ＣＡＰＰと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮ、メモリ数情報ＭＮ及び枝入出力情報ＢＩＯとに基づいて、情報シンボル又は情報ビットに対する事後確率情報に対応する対数軟出力Ｉλ、又は、符号シンボル又は符号ビットに対する事後確率情報に対応する対数軟出力Ｉλを算出する。軟出力算出回路１６１は、シンボル単位で算出した対数軟出力Ｉλ又はビット単位で算出した対数軟出力Ｉλを、それぞれ、対数軟出力ＳＬＭ，ＢＬＭとして、外部情報算出回路１６３、振幅調整及びクリップ回路１６４、及び、硬判定回路１６５に供給する。
【０４６７】
具体的には、軟出力算出回路１６１は、例えば図４１に示すように、対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和を算出するＩα＋Ｉγ＋Ｉβ算出回路３１０と、イネーブル信号を生成するイネーブル信号生成回路３１１と、例えば６個のｌｏｇ−ｓｕｍ演算回路３１２1，３１２2，３１２3，３１２4，３１２5，３１２6と、対数軟出力Ｉλを算出するＩλ算出回路３１３とを有するものとして実現することができる。
【０４６８】
Ｉα＋Ｉγ＋Ｉβ算出回路３１０は、対数尤度Ｉβを分配するＩβ分配回路３１４と、復号の対象とする符号のステート数のうちの最大値、ここでは３２個の加算器３１５1，３１５2，３１５3，３１５4，３１５5，３１５6，・・・，３１５31，３１５32とを有する。
【０４６９】
Ｉβ分配回路３１４は、Ｉβ記憶回路１６０から供給される対数尤度ＢＴを符号構成に応じて分配する。すなわち、Ｉβ分配回路３１４は、符号構成に応じたトレリスに対応するように、対数尤度ＢＴを分配する。このとき、Ｉβ分配回路３１４は、符号情報生成回路１５１から供給される入力ビット数情報ＩＮに基づいて、対数尤度ＢＴを分配する。Ｉβ分配回路３１４は、分配して得られた対数尤度Ｉβを加算器３１５1，３１５2，３１５3，３１５4，３１５5，３１５6，・・・，３１５31，３１５32に供給する。すなわち、Ｉβ分配回路３１４は、対数軟出力Ｉλの算出に用いる対数尤度Ｉβを対数尤度ＢＴＤとして加算器３１５1，３１５2，３１５3，３１５4，３１５5，３１５6，・・・，３１５31，３１５32に供給する。
【０４７０】
加算器３１５1は、Ｉα算出回路１５８から供給される対数尤度Ｉαと対数尤度Ｉγとの和を示すデータＡＧＤのうちのデータＡＧ００と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ００とを加算する。加算器３１５1は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ００として出力する。
【０４７１】
加算器３１５2は、Ｉα算出回路１５８から供給されるデータＡＧＤのうちのデータＡＧ０１と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ００とを加算する。加算器３１５2は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ０１として出力する。
【０４７２】
加算器３１５3は、Ｉα算出回路１５８から供給されるデータＡＧＤのうちのデータＡＧ０２と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ０１とを加算する。加算器３１５3は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ０２として出力する。
【０４７３】
加算器３１５4は、Ｉα算出回路１５８から供給されるデータＡＧＤのうちのデータＡＧ０３と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ０１とを加算する。加算器３１５4は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ０３として出力する。
【０４７４】
加算器３１５5は、Ｉα算出回路１５８から供給されるデータＡＧＤのうちのデータＡＧ０４と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ０２とを加算する。加算器３１５5は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ０４として出力する。
【０４７５】
加算器３１５6は、Ｉα算出回路１５８から供給されるデータＡＧＤのうちのデータＡＧ０５と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ０２とを加算する。加算器３１５6は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ０５として出力する。
【０４７６】
加算器３１５31は、Ｉα算出回路１５８から供給されるデータＡＧＤのうちのデータＡＧ３０と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ１５とを加算する。加算器３１５31は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ３０として出力する。
【０４７７】
加算器３１５32は、Ｉα算出回路１５８から供給されるデータＡＧＤのうちのデータＡＧ３１と、Ｉβ分配回路３１４から供給される対数尤度ＢＴＤのうちの対数尤度ＢＴＤ１５とを加算する。加算器３１５32は、加算して得られた対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和をデータＡＧＢ３１として出力する。
【０４７８】
このようなＩα＋Ｉγ＋Ｉβ算出回路３１０は、対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和を算出し、算出したデータＡＧＢ００，ＡＧＢ０１，ＡＧＢ０２，ＡＧＢ０３，ＡＧＢ０４，ＡＧＢ０５，・・・，ＡＧＢ３０，ＡＧＢ３１を束ね、データＡＧＢとしてｌｏｇ−ｓｕｍ演算回路３１２1，３１２2，３１２3，３１２4，３１２5，３１２6に供給する。
【０４７９】
イネーブル信号生成回路３１１は、セレクタ３２３1，３２３2，３２３3，３２３4による選択動作を制御するための制御信号を生成する選択用制御信号生成回路３１６と、シンボル該当枝選出回路３１９及びビット該当枝選出回路３２０，３２１，３２２により選出されるべき枝を選択するための有効枝選択回路３１７と、対数軟出力Ｉλの算出時に参照すべき枝入出力情報ＢＩＯを選択する出力データ選択回路３１８と、シンボル単位で対数軟出力Ｉλを算出する際に当該シンボルに該当する枝を選出するシンボル該当枝選出回路３１９と、ビット単位で対数軟出力Ｉλを算出する際に当該ビットに該当する枝を選出するビット該当枝選出回路３２０，３２１，３２２と、セレクタ３２３1，３２３2，３２３3，３２３4とを有する。
【０４８０】
選択用制御信号生成回路３１６は、外部から供給される出力データ選択制御信号ＣＩＴＭと、制御回路６０から供給される事前確率情報形式情報ＣＡＰＰとに基づいて、セレクタ３２３1，３２３2，３２３3，３２３4による選択動作を制御するための制御信号ＡＰを生成する。
【０４８１】
有効枝選択回路３１７は、符号情報生成回路１５１から供給される入力ビット数情報ＩＮ及びメモリ数情報ＭＮに基づいて、シンボル該当枝選出回路３１９及びビット該当枝選出回路３２０，３２１，３２２のそれぞれに入力される枝入出力情報ＢＩＯが有効であるか否かを示す制御信号Ｍ１，Ｍ２，Ｍ３を生成する。
すなわち、有効枝選択回路３１７は、シンボル該当枝選出回路３１９及びビット該当枝選出回路３２０，３２１，３２２のそれぞれにより選出されるべき枝を選択するための制御信号Ｍ１，Ｍ２，Ｍ３を生成する。有効枝選択回路３１７は、生成した制御信号Ｍ１，Ｍ２をビット該当枝選出回路３２０，３２１，３２２に供給するとともに、制御信号Ｍ３をシンボル該当枝選出回路３１９及びビット該当枝選出回路３２０，３２１，３２２に供給する。
【０４８２】
出力データ選択回路３１８は、外部から供給される出力データ選択制御信号ＣＩＴＭと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮとに基づいて、符号情報生成回路１５１から供給される枝入出力情報ＢＩＯの中から、符号構成に応じた枝に対応するものを選択する。出力データ選択回路３１８は、選択した枝入出力情報ＢＩＯ０をビット該当枝選出回路３２０に供給するとともに、選択した枝入出力情報ＢＩＯ１をビット該当枝選出回路３２１に供給するとともに、選択した枝入出力情報ＢＩＯ２をビット該当枝選出回路３２２に供給する。
【０４８３】
シンボル該当枝選出回路３１９は、シンボル単位で対数軟出力Ｉλを算出するために設けられるものである。シンボル該当枝選出回路３１９は、符号情報生成回路１５１から供給される枝入出力情報ＢＩＯを用いて、当該シンボルに該当する枝を選出する。このとき、シンボル該当枝選出回路３１９は、有効枝選択回路３１７から供給される制御信号Ｍ３に基づいて枝を選出する。シンボル該当枝選出回路３１９は、選出した枝に対応する入力が“０”であるか“１”であるかを示すイネーブル信号ＳＥＮ０，ＳＥＮ１，ＳＥＮ２，ＳＥＮ３を生成し、イネーブル信号ＳＥＮ０をセレクタ３２３1に供給するとともに、イネーブル信号ＳＥＮ１をセレクタ３２３2に供給するとともに、イネーブル信号ＳＥＮ２をセレクタ３２３3に供給するとともに、イネーブル信号ＳＥＮ３をセレクタ３２３4に供給する。
【０４８４】
ビット該当枝選出回路３２０は、ビット単位で対数軟出力Ｉλを算出するために設けられるものである。ビット該当枝選出回路３２０は、出力データ選択回路３１８から供給される枝入出力情報ＢＩＯ０を用いて、当該ビットに該当する枝を選出する。このとき、ビット該当枝選出回路３２０は、有効枝選択回路３１７から供給される制御信号Ｍ１，Ｍ２，Ｍ３に基づいて枝を選出する。ビット該当枝選出回路３２０は、選出した枝に対応する入力が“０”であるか“１”であるかを示すイネーブル信号ＥＮ００，ＥＮ０１を生成し、イネーブル信号ＥＮ００をセレクタ３２３1に供給するとともに、イネーブル信号ＥＮ０１をセレクタ３２３2に供給する。
【０４８５】
ビット該当枝選出回路３２１は、ビット該当枝選出回路３２０と同様に、ビット単位で対数軟出力Ｉλを算出するために設けられるものである。ビット該当枝選出回路３２１は、出力データ選択回路３１８から供給される枝入出力情報ＢＩＯ１を用いて、当該ビットに該当する枝を選出する。このとき、ビット該当枝選出回路３２１は、有効枝選択回路３１７から供給される制御信号Ｍ１，Ｍ２，Ｍ３に基づいて枝を選出する。ビット該当枝選出回路３２１は、選出した枝に対応する入力が“０”であるか“１”であるかを示すイネーブル信号ＥＮ１０，ＥＮ１１を生成し、イネーブル信号ＥＮ１０をセレクタ３２３3に供給するとともに、イネーブル信号ＥＮ１１をセレクタ３２３4に供給する。
【０４８６】
ビット該当枝選出回路３２２は、ビット該当枝選出回路３２０と同様に、ビット単位で対数軟出力Ｉλを算出するために設けられるものである。ビット該当枝選出回路３２２は、出力データ選択回路３１８から供給される枝入出力情報ＢＩＯ２を用いて、当該ビットに該当する枝を選出する。このとき、ビット該当枝選出回路３２２は、有効枝選択回路３１７から供給される制御信号Ｍ１，Ｍ２，Ｍ３に基づいて枝を選出する。ビット該当枝選出回路３２２は、選出した枝に対応する入力が“０”であるか“１”であるかを示すイネーブル信号ＥＮ２０，ＥＮ２１を生成し、イネーブル信号ＥＮ２０をｌｏｇ−ｓｕｍ演算回路３１２5に供給するとともに、イネーブル信号ＥＮ２１をｌｏｇ−ｓｕｍ演算回路３１２6に供給する。
【０４８７】
セレクタ３２３1は、選択用制御信号生成回路３１６から供給される制御信号ＡＰに基づいて、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ０と、ビット該当枝選出回路３２０から供給されるイネーブル信号ＥＮ００とのうち、いずれか一方を選択する。具体的には、セレクタ３２３1は、制御信号ＡＰが、情報シンボル又は情報ビットに対する情報を出力する旨を出力データ選択制御信号ＣＩＴＭが示し、且つ、シンボル単位である旨を事前確率情報形式情報ＣＡＰＰが示すものであった場合には、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ０を選択する。セレクタ３２３1は、選択したイネーブル信号ＥＮＳ０をｌｏｇ−ｓｕｍ演算回路３１２1に供給する。
【０４８８】
セレクタ３２３2は、選択用制御信号生成回路３１６から供給される制御信号ＡＰに基づいて、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ１と、ビット該当枝選出回路３２０から供給されるイネーブル信号ＥＮ０１とのうち、いずれか一方を選択する。具体的には、セレクタ３２３2は、制御信号ＡＰが、情報シンボル又は情報ビットに対する情報を出力する旨を出力データ選択制御信号ＣＩＴＭが示し、且つ、シンボル単位である旨を事前確率情報形式情報ＣＡＰＰが示すものであった場合には、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ１を選択する。セレクタ３２３2は、選択したイネーブル信号ＥＮＳ１をｌｏｇ−ｓｕｍ演算回路３１２2に供給する。
【０４８９】
セレクタ３２３3は、選択用制御信号生成回路３１６から供給される制御信号ＡＰに基づいて、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ２と、ビット該当枝選出回路３２１から供給されるイネーブル信号ＥＮ１０とのうち、いずれか一方を選択する。具体的には、セレクタ３２３3は、制御信号ＡＰが、情報シンボル又は情報ビットに対する情報を出力する旨を出力データ選択制御信号ＣＩＴＭが示し、且つ、シンボル単位である旨を事前確率情報形式情報ＣＡＰＰが示すものであった場合には、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ２を選択する。セレクタ３２３3は、選択したイネーブル信号ＥＮＳ２をｌｏｇ−ｓｕｍ演算回路３１２3に供給する。
【０４９０】
セレクタ３２３4は、選択用制御信号生成回路３１６から供給される制御信号ＡＰに基づいて、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ３と、ビット該当枝選出回路３２１から供給されるイネーブル信号ＥＮ１１とのうち、いずれか一方を選択する。具体的には、セレクタ３２３4は、制御信号ＡＰが、情報シンボル又は情報ビットに対する情報を出力する旨を出力データ選択制御信号ＣＩＴＭが示し、且つ、シンボル単位である旨を事前確率情報形式情報ＣＡＰＰが示すものであった場合には、シンボル該当枝選出回路３１９から供給されるイネーブル信号ＳＥＮ３を選択する。セレクタ３２３4は、選択したイネーブル信号ＥＮＳ３をｌｏｇ−ｓｕｍ演算回路３１２4に供給する。
【０４９１】
このようなイネーブル信号生成回路３１１は、出力データ選択制御信号ＣＩＴＭ、事前確率情報形式情報ＣＡＰＰ、メモリ数情報ＭＮ及び枝入出力情報ＢＩＯを用いて、選出した枝に対応するイネーブル信号ＥＮＳ０，ＥＮＳ１，ＥＮＳ２，ＥＮＳ３，ＥＮ２０，ＥＮ２１を生成し、ｌｏｇ−ｓｕｍ演算回路３１２1，３１２2，３１２3，３１２4，３１２5，３１２6に供給する。
【０４９２】
ｌｏｇ−ｓｕｍ演算回路３１２1は、図４２に示すように、復号の対象とする符号のステート数のうちの最大値をＭとすると、Ｍ×２−１で表される数のｌｏｇ−ｓｕｍ演算セル回路３２５nを有する。ここでは、ｌｏｇ−ｓｕｍ演算回路３１２1は、最大で１６ステートを有する符号の復号を行うものとし、３１個のｌｏｇ−ｓｕｍ演算セル回路３２５1，・・・，３２５31を有するものとする。
【０４９３】
ｌｏｇ−ｓｕｍ演算セル回路３２５1は、２つの差分器３２６1，３２６2と、６個のセレクタ３２７，３２８，３２９，３３２，３３６，３３８と、セレクタ３２７，３２８，３２９による選択動作を制御するための制御信号を生成する選択用制御信号生成回路３３０と、セレクタ３３２による選択動作を制御するための制御信号を生成する選択用制御信号生成回路３３１と、ＡＮＤゲート３３３と、ＯＲゲート３３４と、ｌｏｇ−ｓｕｍ補正における補正項の値をテーブルとして記憶するルックアップテーブル３３５と、加算器３３７とを有する。
【０４９４】
差分器３２６1は、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢのうち、符号に応じて該当する所定のデータＡＧＢ０００，ＡＧＢ００１の差分をとる。厳密には、差分器３２６1は、データＡＧＢ０００，ＡＧＢ００１が、それぞれ、例えば１３ビットからなるものとすると、データＡＧＢ０００の下位６ビットのデータの最上位ビットに“１”を付したものと、データＡＧＢ００１の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。差分器３２６1は、算出した差分値ＤＡ１をセレクタ３２７及び選択用制御信号生成回路３３０に供給する。
【０４９５】
差分器３２６2は、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢのうち、符号に応じて該当する所定のデータＡＧＢ００１，ＡＧＢ０００の差分をとる。厳密には、差分器３２６2は、データＡＧＢ０００，ＡＧＢ００１が、それぞれ、例えば１３ビットからなるものとすると、データＡＧＢ００１の下位６ビットのデータの最上位ビットに“１”を付したものと、データＡＧＢ０００の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。差分器３２６2は、算出した差分値ＤＡ０をセレクタ３２８及び選択用制御信号生成回路３３０に供給する。
【０４９６】
セレクタ３２７は、選択用制御信号生成回路３３０から供給される制御信号ＳＬ１に基づいて、差分器３２６1から供給される差分値ＤＡ１と、所定の値Ｎ１を有するデータとのうち、いずれか一方を選択する。具体的には、差分値ＤＡ１に対する補正項の値は、所定の値に漸近する性質を有していることから、セレクタ３２７は、差分値ＤＡ１の値が所定の値Ｎ１を超過している場合には、所定の値Ｎ１を有するデータを選択する。セレクタ３２７は、選択して得られたデータＳＤＡ１をセレクタ３２９に供給する。
【０４９７】
セレクタ３２８は、選択用制御信号生成回路３３０から供給される制御信号ＳＬ１に基づいて、差分器３２６2から供給される差分値ＤＡ０と、所定の値Ｎ１を有するデータとのうち、いずれか一方を選択する。具体的には、差分値ＤＡ０に対する補正項の値は、所定の値に漸近する性質を有していることから、セレクタ３２８は、差分値ＤＡ０の値が所定の値Ｎ１を超過している場合には、所定の値Ｎ１を有するデータを選択する。セレクタ３２８は、選択して得られたデータＳＤＡ０をセレクタ３２９に供給する。
【０４９８】
セレクタ３２９は、選択用制御信号生成回路３３０から供給される制御信号ＳＬ２に基づいて、セレクタ３２７から供給されるデータＳＤＡ１と、セレクタ３２８から供給されるデータＳＤＡ０とのうち、いずれか一方を選択する。具体的には、セレクタ３２９は、データＡＧＢ０００の値がデータＡＧＢ００１の値よりも大きい場合には、セレクタ３２７から供給されるデータＳＤＡ１を選択する。セレクタ３２９は、選択して得られたデータＤＭをルックアップテーブル３３５に供給する。
【０４９９】
選択用制御信号生成回路３３０は、データＡＧＢ００，ＡＧＢ０１と、差分値ＤＡ１，ＤＡ０とに基づいて、セレクタ３２７，３２８による選択動作を制御するための制御信号ＳＬ１を生成するとともに、セレクタ３２９による選択動作を制御するための制御信号ＳＬ２を生成する。選択用制御信号生成回路３３０は、生成した制御信号ＳＬ２を選択用制御信号生成回路３３１にも供給する。この際、選択用制御信号生成回路３３０は、上述した選択用制御信号生成回路２３２と同様に、データＡＧＢ００，ＡＧＢ０１に基づいて、メトリックの上位ビットと下位ビットとを分割して、選択用の判定文を示す制御信号ＳＬ１，ＳＬ２を生成するが、これについては後述する。
【０５００】
選択用制御信号生成回路３３１は、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮＳ０のうちのイネーブル信号ＥＮ０００，ＥＮ００１と、制御信号ＳＬ２とに基づいて、セレクタ３３２による選択動作を制御するための制御信号ＳＥＬを生成する。
【０５０１】
セレクタ３３２は、選択用制御信号生成回路３３１から供給される制御信号ＳＥＬに基づいて、データＡＧＢ０００，ＡＧＢ００１のうち、いずれか一方を選択する。セレクタ３３２は、選択して得られたデータＤＡＧを加算器３３７に供給する。
【０５０２】
ＡＮＤゲート３３３は、イネーブル信号ＥＮ０００，ＥＮ００１の論理積をとる。ＡＮＤゲート３３３は、得られた論理積ＥＮＡを選択用の制御信号としてセレクタ３３６に供給する。
【０５０３】
ＯＲゲート３３４は、イネーブル信号ＥＮ０００，ＥＮ００１の論理和をとる。ＯＲゲート３３４は、得られた論理和ＥＮを選択用の制御信号としてセレクタ３３８に供給するとともに、イネーブル信号ＥＮ１００としてｌｏｇ−ｓｕｍ演算セル回路３２５17に供給する。
【０５０４】
ルックアップテーブル３３５は、ｌｏｇ−ｓｕｍ補正における補正項の値をテーブルとして記憶する。ルックアップテーブル３３５は、セレクタ３２９から供給されるデータＤＭの値に対応する補正項の値をテーブルから読み出し、データＲＤＭとしてセレクタ３３６に供給する。
【０５０５】
セレクタ３３６は、ＡＮＤゲート３３３から供給される論理積ＥＮＡに基づいて、ルックアップテーブル３３５から供給されるデータＲＤＭと、所定の値Ｎ２を有するデータとのうち、いずれか一方を選択する。具体的には、セレクタ３３６は、論理積ＥＮＡが“１”であった場合には、データＲＤＭを選択する。セレクタ３３６は、選択して得られたデータＳＤＭを加算器３３７に供給する。なお、所定の値Ｎ２は、後述するデータＣＡＧの正負識別符号を統一するように加算するオフセット値である。すなわち、データＡＧＢ０００，ＡＧＢ００１のうちのいずれか一方であるデータＤＡＧは、正負を跨いだ値をとることが考えられるが、正負両方の値を表現することは、回路規模の増大を招く。そこで、ｌｏｇ−ｓｕｍ演算セル回路３２５1においては、データＤＡＧの正負識別符号を統一するように、後述する加算器３３７により加算すべき所定の値Ｎ２を導入している。
【０５０６】
加算器３３７は、セレクタ３３２から供給されるデータＤＡＧと、セレクタ３３６から供給されるデータＳＤＭとを加算する。加算器３３７は、算出したデータＣＡＧをセレクタ３３８に供給する。
【０５０７】
セレクタ３３８は、ＯＲゲート３３４から供給される論理和ＥＮに基づいて、加算器３３７から供給されるデータＣＡＧと、所定の値Ｎ３を有するデータとのうち、いずれか一方を選択する。具体的には、セレクタ３３８は、論理和ＥＮが“１”であった場合には、データＣＡＧを選択する。セレクタ３３８は、選択して得られたデータＡＧＬをｌｏｇ−ｓｕｍ演算セル回路３２５17に供給する。
【０５０８】
このようなｌｏｇ−ｓｕｍ演算回路３２５1は、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０００及びデータＡＧＢ００１、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０００及びイネーブル信号ＥＮ００１を用いて、後述するように、いわば勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、対数軟出力Ｉλを算出する際に行われるｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５1は、算出したデータＡＧＬをデータＡＧＢ１００として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５17に供給するとともに、イネーブル信号ＥＮ１００をｌｏｇ−ｓｕｍ演算セル回路３２５17に供給する。
【０５０９】
ｌｏｇ−ｓｕｍ演算回路３２５2は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ００２及びデータＡＧＢ００３、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ００２及びイネーブル信号ＥＮ００３を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５2は、算出したデータＡＧＬをデータＡＧＢ１０１として、ｌｏｇ−ｓｕｍ演算セル回路３２５17に供給するとともに、イネーブル信号ＥＮ１０１をｌｏｇ−ｓｕｍ演算セル回路３２５17に供給する。
【０５１０】
ｌｏｇ−ｓｕｍ演算回路３２５3は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ００４及びデータＡＧＢ００５、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ００４及びイネーブル信号ＥＮ００５を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５3は、算出したデータＡＧＬをデータＡＧＢ１０２として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５18に供給するとともに、イネーブル信号ＥＮ１０２をｌｏｇ−ｓｕｍ演算セル回路３２５18に供給する。
【０５１１】
ｌｏｇ−ｓｕｍ演算回路３２５4は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ００６及びデータＡＧＢ００７、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ００６及びイネーブル信号ＥＮ００７を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５4は、算出したデータＡＧＬをデータＡＧＢ１０３として、ｌｏｇ−ｓｕｍ演算セル回路３２５18に供給するとともに、イネーブル信号ＥＮ１０３をｌｏｇ−ｓｕｍ演算セル回路３２５18に供給する。
【０５１２】
ｌｏｇ−ｓｕｍ演算回路３２５5は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ００８及びデータＡＧＢ００９、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ００８及びイネーブル信号ＥＮ００９を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５5は、算出したデータＡＧＬをデータＡＧＢ１０４として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５19に供給するとともに、イネーブル信号ＥＮ１０４をｌｏｇ−ｓｕｍ演算セル回路３２５19に供給する。
【０５１３】
ｌｏｇ−ｓｕｍ演算回路３２５6は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０１０及びデータＡＧＢ０１１、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０１０及びイネーブル信号ＥＮ０１１を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５6は、算出したデータＡＧＬをデータＡＧＢ１０５として、ｌｏｇ−ｓｕｍ演算セル回路３２５19に供給するとともに、イネーブル信号ＥＮ１０５をｌｏｇ−ｓｕｍ演算セル回路３２５19に供給する。
【０５１４】
ｌｏｇ−ｓｕｍ演算回路３２５7は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０１２及びデータＡＧＢ０１３、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０１２及びイネーブル信号ＥＮ０１３を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５7は、算出したデータＡＧＬをデータＡＧＢ１０６として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５20に供給するとともに、イネーブル信号ＥＮ１０６をｌｏｇ−ｓｕｍ演算セル回路３２５20に供給する。
【０５１５】
ｌｏｇ−ｓｕｍ演算回路３２５8は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０１４及びデータＡＧＢ０１５、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０１４及びイネーブル信号ＥＮ０１５を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５8は、算出したデータＡＧＬをデータＡＧＢ１０７として、ｌｏｇ−ｓｕｍ演算セル回路３２５20に供給するとともに、イネーブル信号ＥＮ１０７をｌｏｇ−ｓｕｍ演算セル回路３２５20に供給する。
【０５１６】
ｌｏｇ−ｓｕｍ演算回路３２５9は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０１６及びデータＡＧＢ０１７、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０１６及びイネーブル信号ＥＮ０１７を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５9は、算出したデータＡＧＬをデータＡＧＢ１０８として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５21に供給するとともに、イネーブル信号ＥＮ１０８をｌｏｇ−ｓｕｍ演算セル回路３２５21に供給する。
【０５１７】
ｌｏｇ−ｓｕｍ演算回路３２５10は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０１８及びデータＡＧＢ０１９、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０１８及びイネーブル信号ＥＮ０１９を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５10は、算出したデータＡＧＬをデータＡＧＢ１０９として、ｌｏｇ−ｓｕｍ演算セル回路３２５21に供給するとともに、イネーブル信号ＥＮ１０９をｌｏｇ−ｓｕｍ演算セル回路３２５21に供給する。
【０５１８】
ｌｏｇ−ｓｕｍ演算回路３２５11は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０２０及びデータＡＧＢ０２１、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０２０及びイネーブル信号ＥＮ０２１を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５11は、算出したデータＡＧＬをデータＡＧＢ１１０として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５22に供給するとともに、イネーブル信号ＥＮ１１０をｌｏｇ−ｓｕｍ演算セル回路３２５22に供給する。
【０５１９】
ｌｏｇ−ｓｕｍ演算回路３２５12は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０２２及びデータＡＧＢ０２３、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０２２及びイネーブル信号ＥＮ０２３を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５12は、算出したデータＡＧＬをデータＡＧＢ１１１として、ｌｏｇ−ｓｕｍ演算セル回路３２５22に供給するとともに、イネーブル信号ＥＮ１１１をｌｏｇ−ｓｕｍ演算セル回路３２５22に供給する。
【０５２０】
ｌｏｇ−ｓｕｍ演算回路３２５13は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０２４及びデータＡＧＢ０２５、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０２４及びイネーブル信号ＥＮ０２５を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５13は、算出したデータＡＧＬをデータＡＧＢ１１２として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５23に供給するとともに、イネーブル信号ＥＮ１１２をｌｏｇ−ｓｕｍ演算セル回路３２５23に供給する。
【０５２１】
ｌｏｇ−ｓｕｍ演算回路３２５14は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０２６及びデータＡＧＢ０２７、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０２６及びイネーブル信号ＥＮ０２７を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５14は、算出したデータＡＧＬをデータＡＧＢ１１３として、ｌｏｇ−ｓｕｍ演算セル回路３２５23に供給するとともに、イネーブル信号ＥＮ１１３をｌｏｇ−ｓｕｍ演算セル回路３２５23に供給する。
【０５２２】
ｌｏｇ−ｓｕｍ演算回路３２５15は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０２８及びデータＡＧＢ０２９、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０２８及びイネーブル信号ＥＮ０２９を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５15は、算出したデータＡＧＬをデータＡＧＢ１１４として、勝ち抜き戦における第２回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５24に供給するとともに、イネーブル信号ＥＮ１１４をｌｏｇ−ｓｕｍ演算セル回路３２５24に供給する。
【０５２３】
ｌｏｇ−ｓｕｍ演算回路３２５16は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、Ｉα＋Ｉγ＋Ｉβ算出回路３１０から供給されるデータＡＧＢ０３０及びデータＡＧＢ０３１、並びに、イネーブル信号生成回路３１１から供給されるイネーブル信号ＥＮ０３０及びイネーブル信号ＥＮ０３１を用いて、勝ち抜き戦における第１回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５16は、算出したデータＡＧＬをデータＡＧＢ１１５として、ｌｏｇ−ｓｕｍ演算セル回路３２５24に供給するとともに、イネーブル信号ＥＮ１１５をｌｏｇ−ｓｕｍ演算セル回路３２５24に供給する。
【０５２４】
ｌｏｇ−ｓｕｍ演算回路３２５17は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５1から供給されるデータＡＧＢ１００及びイネーブル信号ＥＮ１００、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５2から供給されるデータＡＧＢ１０１及びイネーブル信号ＥＮ１０１を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５17は、算出したデータＡＧＬをデータＡＧＢ２００として、勝ち抜き戦における第３回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５25に供給するとともに、イネーブル信号ＥＮ２００をｌｏｇ−ｓｕｍ演算セル回路３２５25に供給する。
【０５２５】
ｌｏｇ−ｓｕｍ演算回路３２５18は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５3から供給されるデータＡＧＢ１０２及びイネーブル信号ＥＮ１０２、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５4から供給されるデータＡＧＢ１０３及びイネーブル信号ＥＮ１０３を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５18は、算出したデータＡＧＬをデータＡＧＢ２０１として、ｌｏｇ−ｓｕｍ演算セル回路３２５25に供給するとともに、イネーブル信号ＥＮ２０１をｌｏｇ−ｓｕｍ演算セル回路３２５25に供給する。
【０５２６】
ｌｏｇ−ｓｕｍ演算回路３２５19は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５5から供給されるデータＡＧＢ１０４及びイネーブル信号ＥＮ１０４、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５6から供給されるデータＡＧＢ１０５及びイネーブル信号ＥＮ１０５を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５19は、算出したデータＡＧＬをデータＡＧＢ２０２として、勝ち抜き戦における第３回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５26に供給するとともに、イネーブル信号ＥＮ２０２をｌｏｇ−ｓｕｍ演算セル回路３２５26に供給する。
【０５２７】
ｌｏｇ−ｓｕｍ演算回路３２５20は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５7から供給されるデータＡＧＢ１０６及びイネーブル信号ＥＮ１０６、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５8から供給されるデータＡＧＢ１０７及びイネーブル信号ＥＮ１０７を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５20は、算出したデータＡＧＬをデータＡＧＢ２０３として、ｌｏｇ−ｓｕｍ演算セル回路３２５26に供給するとともに、イネーブル信号ＥＮ２０３をｌｏｇ−ｓｕｍ演算セル回路３２５26に供給する。
【０５２８】
ｌｏｇ−ｓｕｍ演算回路３２５21は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５9から供給されるデータＡＧＢ１０８及びイネーブル信号ＥＮ１０８、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５10から供給されるデータＡＧＢ１０９及びイネーブル信号ＥＮ１０９を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５21は、算出したデータＡＧＬをデータＡＧＢ２０４として、勝ち抜き戦における第３回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５27に供給するとともに、イネーブル信号ＥＮ２０４をｌｏｇ−ｓｕｍ演算セル回路３２５27に供給する。
【０５２９】
ｌｏｇ−ｓｕｍ演算回路３２５22は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５11から供給されるデータＡＧＢ１１０及びイネーブル信号ＥＮ１１０、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５12から供給されるデータＡＧＢ１１１及びイネーブル信号ＥＮ１１１を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５22は、算出したデータＡＧＬをデータＡＧＢ２０５として、ｌｏｇ−ｓｕｍ演算セル回路３２５27に供給するとともに、イネーブル信号ＥＮ２０５をｌｏｇ−ｓｕｍ演算セル回路３２５27に供給する。
【０５３０】
ｌｏｇ−ｓｕｍ演算回路３２５23は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５13から供給されるデータＡＧＢ１１２及びイネーブル信号ＥＮ１１２、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５14から供給されるデータＡＧＢ１１３及びイネーブル信号ＥＮ１１３を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５23は、算出したデータＡＧＬをデータＡＧＢ２０６として、勝ち抜き戦における第３回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５28に供給するとともに、イネーブル信号ＥＮ２０６をｌｏｇ−ｓｕｍ演算セル回路３２５28に供給する。
【０５３１】
ｌｏｇ−ｓｕｍ演算回路３２５24は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５15から供給されるデータＡＧＢ１１４及びイネーブル信号ＥＮ１１４、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５16から供給されるデータＡＧＢ１１５及びイネーブル信号ＥＮ１１５を用いて、勝ち抜き戦における第２回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５24は、算出したデータＡＧＬをデータＡＧＢ２０７として、ｌｏｇ−ｓｕｍ演算セル回路３２５28に供給するとともに、イネーブル信号ＥＮ２０７をｌｏｇ−ｓｕｍ演算セル回路３２５28に供給する。
【０５３２】
ｌｏｇ−ｓｕｍ演算回路３２５25は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５17から供給されるデータＡＧＢ２００及びイネーブル信号ＥＮ２００、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５18から供給されるデータＡＧＢ２０１及びイネーブル信号ＥＮ２０１を用いて、勝ち抜き戦における第３回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５25は、算出したデータＡＧＬをデータＡＧＢ３００として、勝ち抜き戦における第４回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５29に供給するとともに、イネーブル信号ＥＮ３００をｌｏｇ−ｓｕｍ演算セル回路３２５29に供給する。
【０５３３】
ｌｏｇ−ｓｕｍ演算回路３２５26は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５19から供給されるデータＡＧＢ２０２及びイネーブル信号ＥＮ２０２、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５20から供給されるデータＡＧＢ２０３及びイネーブル信号ＥＮ２０３を用いて、勝ち抜き戦における第３回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５26は、算出したデータＡＧＬをデータＡＧＢ３０１として、ｌｏｇ−ｓｕｍ演算セル回路３２５29に供給するとともに、イネーブル信号ＥＮ３０１をｌｏｇ−ｓｕｍ演算セル回路３２５29に供給する。
【０５３４】
ｌｏｇ−ｓｕｍ演算回路３２５27は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５21から供給されるデータＡＧＢ２０４及びイネーブル信号ＥＮ２０４、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５22から供給されるデータＡＧＢ２０５及びイネーブル信号ＥＮ２０５を用いて、勝ち抜き戦における第３回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５27は、算出したデータＡＧＬをデータＡＧＢ３０２として、勝ち抜き戦における第４回戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５30に供給するとともに、イネーブル信号ＥＮ３０２をｌｏｇ−ｓｕｍ演算セル回路３２５30に供給する。
【０５３５】
ｌｏｇ−ｓｕｍ演算回路３２５28は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５23から供給されるデータＡＧＢ２０６及びイネーブル信号ＥＮ２０６、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５24から供給されるデータＡＧＢ２０７及びイネーブル信号ＥＮ２０７を用いて、勝ち抜き戦における第３回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５28は、算出したデータＡＧＬをデータＡＧＢ３０３として、ｌｏｇ−ｓｕｍ演算セル回路３２５30に供給するとともに、イネーブル信号ＥＮ３０３をｌｏｇ−ｓｕｍ演算セル回路３２５30に供給する。
【０５３６】
ｌｏｇ−ｓｕｍ演算回路３２５29は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５25から供給されるデータＡＧＢ３００及びイネーブル信号ＥＮ３００、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５26から供給されるデータＡＧＢ３０１及びイネーブル信号ＥＮ３０１を用いて、勝ち抜き戦における第４回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５29は、算出したデータＡＧＬをデータＡＧＢ４００として、勝ち抜き戦における第５回戦、ここでは決勝戦に喩えられる動作を行うｌｏｇ−ｓｕｍ演算セル回路３２５31に供給するとともに、イネーブル信号ＥＮ４００をｌｏｇ−ｓｕｍ演算セル回路３２５31に供給する。
【０５３７】
ｌｏｇ−ｓｕｍ演算回路３２５30は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５27から供給されるデータＡＧＢ３０２及びイネーブル信号ＥＮ３０２、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５28から供給されるデータＡＧＢ３０３及びイネーブル信号ＥＮ３０３を用いて、勝ち抜き戦における第４回戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５30は、算出したデータＡＧＬをデータＡＧＢ４０１として、ｌｏｇ−ｓｕｍ演算セル回路３２５31に供給するとともに、イネーブル信号ＥＮ４０１をｌｏｇ−ｓｕｍ演算セル回路３２５31に供給する。
【０５３８】
ｌｏｇ−ｓｕｍ演算回路３２５31は、ｌｏｇ−ｓｕｍ演算回路３２５1と同様の構成からなるため、詳細な説明は省略するが、ｌｏｇ−ｓｕｍ演算セル回路３２５29から供給されるデータＡＧＢ４００及びイネーブル信号ＥＮ４００、並びに、ｌｏｇ−ｓｕｍ演算セル回路３２５30から供給されるデータＡＧＢ４０１及びイネーブル信号ＥＮ４０１を用いて、勝ち抜き戦における決勝戦に喩えられる動作を行うことによって、ｌｏｇ−ｓｕｍ演算の累積加算演算における一のｌｏｇ−ｓｕｍ演算を行う。ｌｏｇ−ｓｕｍ演算回路３２５31は、算出したイネーブル信号ＥＮ５００を出力することはないが、算出したデータＡＧＬをデータＡＧＢ５００として出力する。なお、データＡＧＢ５００は、データＬ００としてＩλ算出回路３１３に供給される。
【０５３９】
このようなｌｏｇ−ｓｕｍ演算回路３１２1は、データＡＧＢとイネーブル信号ＥＮＳ０とを用いて、トレリス上の各枝に対応するイネーブル信号に基づいた勝ち抜き戦に喩えられる動作を行うことによって、例えばトレリス上の枝の入力が“０”であるｌｏｇ−ｓｕｍ演算の累積加算演算を行い、データＬ００を算出する。
【０５４０】
ｌｏｇ−ｓｕｍ演算回路３１２2は、ｌｏｇ−ｓｕｍ演算回路３１２1と同様の構成からなるため、詳細な説明は省略するが、データＡＧＢとイネーブル信号ＥＮＳ１とを用いて、ｌｏｇ−ｓｕｍ演算回路３１２1と同様に、トレリス上の各枝に対応するイネーブル信号に基づいた勝ち抜き戦に喩えられる動作を行うことによって、例えばトレリス上の枝の入力が“１”であるｌｏｇ−ｓｕｍ演算の累積加算演算を行い、データＬ０１を算出する。ｌｏｇ−ｓｕｍ演算回路３１２2は、算出したデータＬ０１をＩλ算出回路３１３に供給する。
【０５４１】
また、ｌｏｇ−ｓｕｍ演算回路３１２3も、ｌｏｇ−ｓｕｍ演算回路３１２1と同様の構成からなるため、詳細な説明は省略するが、データＡＧＢとイネーブル信号ＥＮＳ２とを用いて、ｌｏｇ−ｓｕｍ演算回路３１２1と同様に、トレリス上の各枝に対応するイネーブル信号に基づいた勝ち抜き戦に喩えられる動作を行うことによって、例えばトレリス上の枝の入力が“０”であるｌｏｇ−ｓｕｍ演算の累積加算演算を行い、データＬ１０を算出する。ｌｏｇ−ｓｕｍ演算回路３１２3は、算出したデータＬ１０をＩλ算出回路３１３に供給する。
【０５４２】
さらに、ｌｏｇ−ｓｕｍ演算回路３１２4も、ｌｏｇ−ｓｕｍ演算回路３１２1と同様の構成からなるため、詳細な説明は省略するが、データＡＧＢとイネーブル信号ＥＮＳ３とを用いて、ｌｏｇ−ｓｕｍ演算回路３１２1と同様に、トレリス上の各枝に対応するイネーブル信号に基づいた勝ち抜き戦に喩えられる動作を行うことによって、例えばトレリス上の枝の入力が“１”であるｌｏｇ−ｓｕｍ演算の累積加算演算を行い、データＬ１１を算出する。ｌｏｇ−ｓｕｍ演算回路３１２4は、算出したデータＬ１１をＩλ算出回路３１３に供給する。
【０５４３】
さらにまた、ｌｏｇ−ｓｕｍ演算回路３１２5も、ｌｏｇ−ｓｕｍ演算回路３１２1と同様の構成からなるため、詳細な説明は省略するが、データＡＧＢとイネーブル信号ＥＮＳ２０とを用いて、ｌｏｇ−ｓｕｍ演算回路３１２1と同様に、トレリス上の各枝に対応するイネーブル信号に基づいた勝ち抜き戦に喩えられる動作を行うことによって、例えばトレリス上の枝の入力が“０”であるｌｏｇ−ｓｕｍ演算の累積加算演算を行い、データＬ２０を算出する。ｌｏｇ−ｓｕｍ演算回路３１２5は、算出したデータＬ２０をＩλ算出回路３１３に供給する。
【０５４４】
また、ｌｏｇ−ｓｕｍ演算回路３１２6も、ｌｏｇ−ｓｕｍ演算回路３１２1と同様の構成からなるため、詳細な説明は省略するが、データＡＧＢとイネーブル信号ＥＮＳ２１とを用いて、ｌｏｇ−ｓｕｍ演算回路３１２1と同様に、トレリス上の各枝に対応するイネーブル信号に基づいた勝ち抜き戦に喩えられる動作を行うことによって、例えばトレリス上の枝の入力が“１”であるｌｏｇ−ｓｕｍ演算の累積加算演算を行い、データＬ２１を算出する。ｌｏｇ−ｓｕｍ演算回路３１２6は、算出したデータＬ２１をＩλ算出回路３１３に供給する。
【０５４５】
Ｉλ算出回路３１３は、３つの差分器３２４1，３２４2，３２４3を有する。
【０５４６】
差分器３２４1は、ｌｏｇ−ｓｕｍ演算回路３１２1から供給されるデータＬ００と、ｌｏｇ−ｓｕｍ演算回路３１２2から供給されるデータＬ０１との差分をとる。差分器３２４1により算出されたデータＬＭ０は、例えば２の補数（2's complement）表記変換等が施される。
【０５４７】
差分器３２４2は、ｌｏｇ−ｓｕｍ演算回路３１２3から供給されるデータＬ１０と、ｌｏｇ−ｓｕｍ演算回路３１２4から供給されるデータＬ１１との差分をとる。差分器３２４2により算出されたデータＬＭ１は、例えば２の補数表記変換等が施される。
【０５４８】
差分器３２４3は、ｌｏｇ−ｓｕｍ演算回路３１２4から供給されるデータＬ２０と、ｌｏｇ−ｓｕｍ演算回路３１２6から供給されるデータＬ２１との差分をとる。差分器３２４3により算出されたデータＬＭ２は、例えば２の補数表記変換等が施される。
【０５４９】
このようなＩλ算出回路３１３は、ｌｏｇ−ｓｕｍ演算回路３１２1，３１２2，３１２3，３１２4のそれぞれから供給され、いわゆるストレートバイナリ（straight binary）表記とされるデータＬ００，Ｌ０１，Ｌ１０，Ｌ１１を束ね、シンボル単位で算出した対数軟出力ＳＬＭとして出力する。また、Ｉλ算出回路３１３は、差分器３２４1，３２４2，３２４3のそれぞれにより算出した２の補数表記とされるデータＬＭ０，ＬＭ１，ＬＭ２を束ね、ビット単位で算出した対数軟出力ＢＬＭとして出力する。
【０５５０】
以上のように構成される軟出力算出回路１６１は、イネーブル信号を用いた勝ち抜き戦に喩えられる動作を行うことによって、トレリス上の各枝の入力に応じたｌｏｇ−ｓｕｍ演算の累積加算演算を実現し、シンボル単位又はビット単位で対数軟出力Ｉλを算出することができ、それぞれ、対数軟出力ＳＬＭ，ＢＬＭとして出力する。これらの対数軟出力ＳＬＭ，ＢＬＭは、外部情報算出回路１６３、振幅調整及びクリップ回路１６４、及び、硬判定回路１６５に供給される。
【０５５１】
受信値又は事前確率情報分離回路１６２は、受信データ及び遅延用記憶回路１５５から出力され、所定の遅延が施された遅延受信データＤＡＤから、受信値又は事前確率情報を分離して取り出すものである。受信値又は事前確率情報分離回路１６２は、制御回路６０から供給される受信値形式情報ＣＲＴＹと、符号情報生成回路１５１から供給される入力ビット数情報ＩＮとに基づいて、入力した遅延受信データＤＡＤを分離する。
【０５５２】
具体的には、受信値又は事前確率情報分離回路１６２は、例えば図４３に示すように、４つのセレクタ３４１，３４２，３４３，３４４を有するものとして実現することができる。
【０５５３】
セレクタ３４１は、入力ビット数情報ＩＮに基づいて、遅延受信データＤＡＤのうちの遅延受信データＤＡＤ３，ＤＡＤ４のうち、いずれか一方を選択する。
具体的には、セレクタ３４１は、要素符号化器に対する入力ビット数が“１”であった場合には、遅延受信データＤＡＤ４を選択する。セレクタ３４１は、選択したデータを遅延受信データＤＡＳとして出力する。
【０５５４】
セレクタ３４２は、受信値形式情報ＣＲＴＹに基づいて、遅延受信データＤＡＤのうちの遅延受信データＤＡＤ０と、セレクタ３４１から供給される遅延受信データＤＡＳとのうち、いずれか一方を選択する。具体的には、セレクタ３４２は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、遅延受信データＤＡＤ０を選択する。セレクタ３４２は、選択したデータを遅延受信データＰＤ０として出力する。
【０５５５】
セレクタ３４３は、受信値形式情報ＣＲＴＹに基づいて、遅延受信データＤＡＤのうちの遅延受信データＤＡＤ１，ＤＡＤ４のうち、いずれか一方を選択する。具体的には、セレクタ３４３は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、遅延受信データＤＡＤ１を選択する。セレクタ３４３は、選択したデータを遅延受信データＰＤ１として出力する。
【０５５６】
セレクタ３４４は、受信値形式情報ＣＲＴＹに基づいて、遅延受信データＤＡＤのうちの遅延受信データＤＡＤ２，ＤＡＤ５のうち、いずれか一方を選択する。具体的には、セレクタ３４４は、受信値形式情報ＣＲＴＹが外部情報を示すものであった場合には、遅延受信データＤＡＤ２を選択する。セレクタ３４４は、選択したデータを遅延受信データＰＤ２として出力する。
【０５５７】
このような受信値又は事前確率情報分離回路１６２は、入力した遅延受信データＤＡＤのうち、遅延受信データＤＡＤ０，ＤＡＤ１，ＤＡＤ２，ＤＡＤ３を束ね、いわゆるオフセットバイナリ（offset binary）表記とされる遅延受信値ＤＲＣとして出力するとともに、遅延受信データＤＡＳ，ＤＡＤ４，ＤＡＤ５を束ね、遅延事前確率情報ＤＡＰとして出力するとともに、遅延受信データＰＤ０，ＰＤ１，ＰＤ２を束ね、遅延外部情報ＤＥＸとして出力する。遅延受信値ＤＲＣは、外部情報算出回路１６３及び硬判定回路１６５に供給され、遅延事前確率情報ＤＡＰは、外部情報算出回路１６３に供給され、遅延外部情報ＤＥＸは、そのまま、遅延外部情報ＳＤＥＸとしてセレクタ１２０2に供給される。
【０５５８】
外部情報算出回路１６３は、軟出力算出回路１６１から供給される対数軟出力ＳＬＭ又は対数軟出力ＢＬＭと、受信値又は事前確率情報分離回路１６２から供給される遅延受信値ＤＲＣ又は遅延事前確率情報ＤＡＰとを用いて、外部情報ＯＥを算出する。
【０５５９】
具体的には、外部情報算出回路１６３は、例えば図４４に示すように、情報ビットに対する外部情報を算出する情報ビット外部情報算出回路３５０と、情報シンボルに対する外部情報を算出する情報シンボル外部情報算出回路３５１と、符号に対する外部情報を算出する符号外部情報算出回路３５２と、２つのセレクタ３５３，３５４とを有するものとして実現することができる。
【０５６０】
情報ビット外部情報算出回路３５０は、例えば３つの外部情報算出セル回路３５５1，３５５2，３５５3を有する。これらの外部情報算出セル回路３５５1，３５５2，３５５3は、それぞれ、実質的には、対数軟出力ＢＬＭと遅延事前確率情報ＤＡＰとの差分をとる図示しない差分器から構成される。
【０５６１】
外部情報算出セル回路３５５1は、対数軟出力ＢＬＭのうちの対数軟出力ＢＬＭ０と、遅延事前確率情報ＤＡＰのうちの遅延事前確率情報ＤＡＰ０との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施し、さらにオフセットバイナリ表記変換等を施した後、外部情報ＥＸ０として出力する。
【０５６２】
外部情報算出セル回路３５５2は、対数軟出力ＢＬＭのうちの対数軟出力ＢＬＭ１と、遅延事前確率情報ＤＡＰのうちの遅延事前確率情報ＤＡＰ１との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施し、さらにオフセットバイナリ表記変換等を施した後、外部情報ＥＸ１として出力する。
【０５６３】
外部情報算出セル回路３５５3は、対数軟出力ＢＬＭのうちの対数軟出力ＢＬＭ２と、遅延事前確率情報ＤＡＰのうちの遅延事前確率情報ＤＡＰ２との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施し、さらにオフセットバイナリ表記変換等を施した後、外部情報ＥＸ２として出力する。
【０５６４】
このような情報ビット外部情報算出回路３５０は、例えば３系統の外部情報ＥＸ０，ＥＸ１，ＥＸ２をビット単位で算出し、これらの外部情報ＥＸ０，ＥＸ１，ＥＸ２を束ねて外部情報ＥＸＢとしてセレクタ３５３に供給する。
【０５６５】
情報シンボル外部情報算出回路３５１は、例えば４つの外部情報算出セル回路３５６1，３５６2，３５６3，３５６4と、正規化回路３５７とを有する。これらの各部のうち、外部情報算出セル回路３５６1，３５６2，３５６3，３５６4は、それぞれ、外部情報算出セル回路３５５1，３５５2，３５５3と同様に、実質的には、対数軟出力ＳＬＭと遅延事前確率情報ＤＡＰとの差分をとる図示しない差分器から構成される。
【０５６６】
外部情報算出セル回路３５６1は、対数軟出力ＳＬＭのうちの対数軟出力ＳＬＭ０と、所定の値Ｍを有するデータとの差分を算出し、この差分値に対して、振幅調整及びクリッピングを施した後、外部情報ＥＤ０として正規化回路３５７に供給する。
【０５６７】
外部情報算出セル回路３５６2は、対数軟出力ＳＬＭのうちの対数軟出力ＳＬＭ１と、遅延事前確率情報ＤＡＰのうちの遅延事前確率情報ＤＡＰ０との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施した後、外部情報ＥＤ１として正規化回路３５７に供給する。
【０５６８】
外部情報算出セル回路３５６3は、対数軟出力ＳＬＭのうちの対数軟出力ＳＬＭ２と、遅延事前確率情報ＤＡＰのうちの遅延事前確率情報ＤＡＰ１との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施した後、外部情報ＥＤ２として正規化回路３５７に供給する。
【０５６９】
外部情報算出セル回路３５６4は、対数軟出力ＳＬＭのうちの対数軟出力ＳＬＭ３と、遅延事前確率情報ＤＡＰのうちの遅延事前確率情報ＤＡＰ２との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施した後、外部情報ＥＤ３として正規化回路３５７に供給する。
【０５７０】
正規化回路３５７は、後述するように、外部情報算出セル回路３５６1，３５６2，３５６3，３５６4により算出された外部情報ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３の分布の偏りを是正し且つ情報量を削減するための正規化を行う。具体的には、正規化回路３５７は、外部情報算出セル回路３５６1，３５６2，３５６3，３５６4により算出された外部情報ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３のうち、最大値を有するものを、例えば“０”といった所定の値に合わせるように、外部情報ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３のそれぞれに対して所定の値を加算した後、必要なダイナミックレンジに応じてクリッピングを行い、さらに、ある１つのシンボルに対する外部情報の値を、他の全てのシンボルに対する外部情報の値から差分するような正規化を行う。正規化回路３５７は、正規化後の外部情報を外部情報ＥＸ０，ＥＸ１，ＥＸ２として出力する。
【０５７１】
このような情報シンボル外部情報算出回路３５１は、例えば３系統の外部情報ＥＸ０，ＥＸ１，ＥＸ２をシンボル単位で算出し、これらの外部情報ＥＸ０，ＥＸ１，ＥＸ２を束ねて外部情報ＥＸＳとしてセレクタ３５３に供給する。
【０５７２】
符号外部情報算出回路３５２は、例えば３つの外部情報算出セル回路３５８1，３５８2，３５８3を有する。これらの外部情報算出セル回路３５８1，３５８2，３５８3は、それぞれ、外部情報算出セル回路３５５1，３５５2，３５５3と同様に、実質的には、対数軟出力ＢＬＭと遅延受信値ＤＲＣとの差分をとる図示しない差分器から構成される。
【０５７３】
外部情報算出セル回路３５８1は、対数軟出力ＢＬＭのうちの対数軟出力ＢＬＭ０と、遅延受信値ＤＲＣのうちの遅延受信値ＡＰＳ０との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施し、さらにオフセットバイナリ表記変換等を施した後、外部情報ＥＸ０として出力する。
【０５７４】
外部情報算出セル回路３５８2は、対数軟出力ＢＬＭのうちの対数軟出力ＢＬＭ１と、遅延受信値ＤＲＣのうちの遅延受信値ＡＰＳ１との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施し、さらにオフセットバイナリ表記変換等を施した後、外部情報ＥＸ１として出力する。
【０５７５】
外部情報算出セル回路３５８3は、対数軟出力ＢＬＭのうちの対数軟出力ＢＬＭ２と、遅延受信値ＤＲＣのうちの遅延受信値ＡＰＳ２との差分を算出し、この差分値に対して、振幅調整及びクリッピングを施し、オフセットバイナリ表記変換等を施した後、外部情報ＥＸ２として出力する。
【０５７６】
このような符号外部情報算出回路３５２は、例えば３系統の外部情報ＥＸ０，ＥＸ１，ＥＸ２を算出し、これらの外部情報ＥＸ０，ＥＸ１，ＥＸ２を束ねて外部情報ＥＸＣとしてセレクタ３５４に供給する。
【０５７７】
セレクタ３５３は、事前確率情報形式情報ＣＡＰＰに基づいて、情報ビット外部情報算出回路３５０から供給される外部情報ＥＸＢと、情報シンボル外部情報算出回路３５１から供給される外部情報ＥＸＳとのうち、いずれか一方を選択する。具体的には、セレクタ３５３は、事前確率情報形式情報ＣＡＰＰがシンボル単位であることを示すものであった場合には、外部情報ＥＸＳを選択する。セレクタ３５３は、選択して得られた外部情報ＥＳをセレクタ３５４に供給する。
【０５７８】
セレクタ３５４は、出力データ選択制御信号ＣＩＴＭに基づいて、セレクタ３５３から供給される外部情報ＥＳと、符号外部情報算出回路３５２から供給される外部情報ＥＸＣとのうち、いずれか一方を選択する。具体的には、セレクタ３５４は、出力データ選択制御信号ＣＩＴＭが符号に対する情報を出力する旨を示すものであった場合には、外部情報ＥＸＣを選択する。セレクタ３５４は、選択して得られた外部情報ＯＥを外部に出力する。
【０５７９】
このような外部情報算出回路１６３は、入力した対数軟出力ＳＬＭ又は対数軟出力ＢＬＭと、遅延受信値ＤＣＲ又は遅延事前確率情報ＤＡＰとを用いて、外部情報ＯＥを算出し、この外部情報ＯＥを、そのまま、外部情報ＳＯＥとしてセレクタ１２０1に供給する。
【０５８０】
振幅調整及びクリップ回路１６４は、図示しないが、シンボル単位の対数軟出力ＳＬＭの振幅を調整するとともに所定のダイナミックレンジにクリップする回路と、ビット単位の対数軟出力ＢＬＭの振幅を調整するとともに所定のダイナミックレンジにクリップする回路とを有する。このとき、振幅調整及びクリップ回路１６４は、外部から供給される出力データ選択制御信号ＣＩＴＭと、制御回路６０から供給される事前確率情報形式情報ＣＡＰＰとに基づいて、対数軟出力ＳＬＭ，ＢＬＭのそれぞれの振幅を調整するとともに所定のダイナミックレンジにクリップしたデータのうち、いずれか一方を、振幅調整後の対数軟出力ＯＬとして出力する。この対数軟出力ＯＬは、そのまま、軟出力ＳＯＬとしてセレクタ１２０1に供給される。
【０５８１】
硬判定回路１６５は、復号値である対数軟出力ＳＬＭ，ＢＬＭを硬判定するとともに、遅延受信値ＤＲＣを硬判定する。このとき、硬判定回路１６５は、外部から供給される出力データ選択制御信号ＣＩＴＭと、制御回路６０から供給される受信値形式情報ＣＲＴＹ、事前確率情報形式情報ＣＡＰＰ及び信号点配置情報ＣＳＩＧとに基づいて、対数軟出力ＳＬＭ，ＢＬＭ及び遅延受信値ＤＲＣを硬判定する。なお、ここでは、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合には、この符号化装置１は、８ＰＳＫ変調方式による変調を行うものとし、信号点配置情報ＣＳＩＧは、８系統の信号点配置情報ＣＳＩＧ０，ＣＳＩＧ１，ＣＳＩＧ２，ＣＳＩＧ３，ＣＳＩＧ４，ＣＳＩＧ５，ＣＳＩＧ６，ＣＳＩＧ７からなるものとする。
【０５８２】
具体的には、硬判定回路１６５は、例えば図４５に示すように、インバータ３６０と、値が最小であるシンボルを算出する最小シンボル算出回路３６１と、後述するセレクタ３６９による選択動作を制御するための制御信号を生成する選択用制御信号生成回路３６８と、セレクタ３６９，３７１と、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合におけるＩ／Ｑ値のデマッピングを行うＩ／Ｑデマップ回路３７０とを有するものとして実現することができる。
【０５８３】
インバータ３６０は、軟出力算出回路１６１から供給され、２の補数表記とされる対数軟出力ＢＬＭのうち、所定のビット群を反転し、復号ビット硬判定情報ＢＨＤとして出力する。
【０５８４】
最小シンボル算出回路３６１は、例えば、３つの比較回路３６２，３６４，３６６と、３つのセレクタ３６３，３６５，３６７とを有するものとして実現することができる。
【０５８５】
比較回路３６２は、軟出力算出回路１６１から供給され、ストレートバイナリ表記とされる対数軟出力ＳＬＭのうち、対数軟出力ＳＬＭ０，ＳＬＭ１の大小関係を比較する。比較回路３６２は、求めた大小関係を示す制御信号ＳＬ０をセレクタ３６７に供給するとともに、選択用の制御信号としてセレクタ３６３に供給する。
【０５８６】
セレクタ３６３は、比較回路３６２から供給される制御信号ＳＬ０に基づいて、対数軟出力ＳＬＭ０，ＳＬＭ１のうち、値が小さいものを選択する。セレクタ３６３は、選択して得られたデータＳＳＬ０を比較回路３６６に供給する。
【０５８７】
比較回路３６４は、軟出力算出回路１６１から供給される対数軟出力ＳＬＭのうち、対数軟出力ＳＬＭ２，ＳＬＭ３の大小関係を比較する。比較回路３６４は、求めた大小関係を示す制御信号ＳＬ１をセレクタ３６７に供給するとともに、選択用の制御信号としてセレクタ３６５に供給する。
【０５８８】
セレクタ３６５は、比較回路３６４から供給される制御信号ＳＬ１に基づいて、対数軟出力ＳＬＭ２，ＳＬＭ３のうち、値が小さいものを選択する。セレクタ３６５は、選択して得られたデータＳＳＬ１を比較回路３６６に供給する。
【０５８９】
比較回路３６６は、セレクタ３６３から供給されるデータＳＳＬ０と、セレクタ３６５から供給されるデータＳＳＬ１との大小関係を比較する。比較回路３６６は、求めた大小関係を示す制御信号ＳＥＬ１を選択用の制御信号としてセレクタ３６７に供給する。
【０５９０】
セレクタ３６７は、比較回路３６６から供給される制御信号ＳＥＬ１に基づいて、比較回路３６２から供給される制御信号ＳＬ０と、比較回路３６４から供給される制御信号ＳＬ１とのうち、いずれか一方を選択する。具体的には、セレクタ３６７は、データＳＳＬ０の値がデータＳＳＬ１の値よりも大きい場合には、制御信号ＳＬ１を選択する。セレクタ３６７は、選択して得られたデータを制御信号ＳＥＬ０として出力する。
【０５９１】
このような最小シンボル算出回路３６１は、シンボル単位の対数軟出力ＳＬＭのうち、値が最小であるものを算出し、制御信号ＳＥＬ０，ＳＥＬ１を束ねた復号シンボル硬判定情報ＳＨＤとして、セレクタ３６９に供給する。
【０５９２】
選択用制御信号生成回路３６８は、外部から供給される出力データ選択制御信号ＣＩＴＭと、制御回路６０から供給される事前確率情報形式情報ＣＡＰＰとに基づいて、セレクタ３６９による選択動作を制御するための制御信号ＡＩＳを生成する。
【０５９３】
セレクタ３６９は、選択用制御信号生成回路３６８から供給される制御信号ＡＩＳに基づいて、インバータ３６０から供給される復号ビット硬判定情報ＢＨＤと、最小シンボル算出回路３６１から供給される復号シンボル硬判定情報ＳＨＤとのうち、いずれか一方を選択する。具体的には、セレクタ３６９は、制御信号ＡＩＳが、情報シンボル又は情報ビットに対する情報を出力する旨を出力データ選択制御信号ＣＩＴＭが示し、且つ、シンボル単位である旨を事前確率情報形式情報ＣＡＰＰが示すものであった場合には、復号シンボル硬判定情報ＳＨＤを選択する。セレクタ３６９は、選択したデータを復号値硬判定情報ＤＨＤ１として出力する。
【０５９４】
硬判定回路１６５は、これらの各部によって、復号ビット硬判定情報ＢＨＤと復号シンボル硬判定情報ＳＨＤとを求め、セレクタ３６９により選択された復号値硬判定情報ＤＨＤ１を、復号値硬判定情報ＤＨＤとして出力する。この復号値硬判定情報ＤＨＤは、そのまま、復号値硬判定情報ＳＤＨとして外部に出力される。
【０５９５】
なお、硬判定回路１６５は、復号ビット硬判定情報ＢＨＤを求めるにあたって、インバータ３６０を用いているが、これは、データの表記法に起因するものである。すなわち、復号ビット硬判定情報ＢＨＤは、上述したように、２の補数表記とされる対数軟出力ＢＬＭを前提に求められるものである。そのため、硬判定回路１６５は、インバータ３６０によって、対数軟出力ＢＬＭのうち、所定のビット群、具体的には最上位ビットを反転して得られた反転ビットを用いて判定することによって、ビット単位で算出した対数軟出力ＢＬＭを硬判定することができる。
【０５９６】
また、硬判定回路１６５において、Ｉ／Ｑデマップ回路３７０は、例えば、デマッピング用のテーブルを記憶するルックアップテーブル３７２と、７個のセレクタ３７３，３７４，３７５，３７６，３７７，３７９，３８０と、セレクタ３７９，３８０による選択動作を制御するための制御信号を生成する選択用制御信号生成回路３７８とを有するものとして実現することができる。
【０５９７】
ルックアップテーブル３７２は、受信値のデマッピング用のテーブルを記憶する。具体的には、ルックアップテーブル３７２は、後述するように、Ｉ／Ｑ平面におけるＩ軸に対する境界値をテーブルとして記憶する。ルックアップテーブル３７２は、オフセットバイナリ表記とされる遅延受信値ＤＲＣのうち、同相成分に対応する遅延受信値ＩＲの値と、直交成分に対応する遅延受信値ＱＲの値との組み合わせに対応する境界値をテーブルから読み出し、例えば４系統の境界値データＢＤＲ０，ＢＤＲ１，ＢＤＲ２，ＢＤＲ３として選択用制御信号生成回路３７８に供給する。
【０５９８】
セレクタ３７３は、遅延受信値ＱＲに基づいて、信号点配置情報ＣＳＩＧ２，ＣＳＩＧ６のうち、いずれか一方を選択する。具体的には、セレクタ３７３は、遅延受信値ＱＲが正値を示すものであった場合には、信号点配置情報ＣＳＩＧ２を選択する。セレクタ３７３は、選択したデータを信号点配置情報ＳＳＳＳ０としてセレクタ３８０に供給する。
【０５９９】
セレクタ３７４は、遅延受信値ＱＲに基づいて、信号点配置情報ＣＳＩＧ３，ＣＳＩＧ５のうち、いずれか一方を選択する。具体的には、セレクタ３７４は、遅延受信値ＱＲが正値を示すものであった場合には、信号点配置情報ＣＳＩＧ３を選択する。セレクタ３７４は、選択したデータを信号点配置情報ＳＳ０としてセレクタ３７６に供給する。
【０６００】
セレクタ３７５は、遅延受信値ＱＲに基づいて、信号点配置情報ＣＳＩＧ１，ＣＳＩＧ７のうち、いずれか一方を選択する。具体的には、セレクタ３７５は、遅延受信値ＱＲが正値を示すものであった場合には、信号点配置情報ＣＳＩＧ１を選択する。セレクタ３７５は、選択したデータを信号点配置情報ＳＳ１としてセレクタ３７６に供給する。
【０６０１】
セレクタ３７６は、遅延受信値ＩＲに基づいて、セレクタ３７４から供給される信号点配置情報ＳＳ０と、セレクタ３７５から供給される信号点配置情報ＳＳ１とのうち、いずれか一方を選択する。具体的には、セレクタ３７６は、遅延受信値ＩＲが正値を示すものであった場合には、信号点配置情報ＳＳ１を選択する。セレクタ３７６は、選択したデータを信号点配置情報ＳＳＳ０としてセレクタ３７９に供給する。
【０６０２】
セレクタ３７７は、遅延受信値ＩＲに基づいて、所定の値Ｍを有するデータと、信号点配置情報ＣＳＩＧ４とのうち、いずれか一方を選択する。具体的には、セレクタ３７７は、遅延受信値ＩＲが正値を示すものであった場合には、所定の値Ｍを有するデータを選択する。セレクタ３７７は、選択したデータを信号点配置情報ＳＳＳ１としてセレクタ３７９に供給する。
【０６０３】
選択用制御信号生成回路３７８は、遅延受信値ＱＲと、ルックアップテーブル３７２から供給される境界値データＢＤＲ０，ＢＤＲ１，ＢＤＲ２，ＢＤＲ３とに基づいて、セレクタ３７９による選択動作を制御するための制御信号ＳＥＬ５を生成するとともに、セレクタ３８０による選択動作を制御するための制御信号ＳＥＬ６を生成する。
【０６０４】
セレクタ３７９は、選択用制御信号生成回路３７８から供給される制御信号ＳＥＬ５に基づいて、信号点配置情報ＳＳＳ０，ＳＳＳ１のうち、いずれか一方を選択する。セレクタ３７９は、選択したデータを信号点配置情報ＳＳＳＳ１としてセレクタ３８０に供給する。
【０６０５】
セレクタ３８０は、選択用制御信号生成回路３７８から供給される制御信号ＳＥＬ６に基づいて、信号点配置情報ＳＳＳＳ０，ＳＳＳＳ１のうち、いずれか一方を選択する。セレクタ３８０は、選択したデータを受信値硬判定情報ＩＲＨとしてセレクタ３７１に供給する。
【０６０６】
このようなＩ／Ｑデマップ回路３７０は、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであった場合における受信値硬判定情報ＩＲＨを求める。
【０６０７】
さらに、硬判定回路１６５において、セレクタ３７１は、遅延受信値ＤＣＲのうちの所定のビット群からなり、オフセットバイナリ表記の硬判定結果を示す受信値硬判定情報ＢＲＨと、Ｉ／Ｑデマップ回路３７０から供給される受信値硬判定情報ＩＲＨとのうち、いずれか一方を選択する。具体的には、セレクタ３７１は、符号化装置１がＴＴＣＭやＳＣＴＣＭによる符号化を行うものであることを受信値形式情報ＣＲＴＹが示すものであった場合には、受信値硬判定情報ＩＲＨを選択する。セレクタ３７１は、選択したデータを受信値硬判定情報ＲＨＤとして出力する。この受信値硬判定情報ＲＨＤは、そのまま、受信値硬判定情報ＳＲＨとして外部に出力される。
【０６０８】
なお、硬判定回路１６５は、受信値硬判定情報ＢＲＨを求めるにあたって、上述した復号ビット硬判定情報ＢＨＤを求める場合のようにビット反転処理を行わないが、これは、データの表記法に起因するものである。すなわち、受信値硬判定情報ＢＲＨは、上述したように、オフセットバイナリ表記とされる遅延受信値ＤＲＣを前提に求められるものである。そのため、硬判定回路１６５は、遅延受信値ＤＲＣのうちの所定のビット群、具体的には最上位ビットを用いて判定することによって、遅延受信値ＤＲＣを硬判定することができる。
【０６０９】
このような硬判定回路１６５は、復号値である対数軟出力ＳＬＭ，ＢＬＭを硬判定して復号値硬判定情報ＳＤＨを求めるとともに、遅延受信値ＤＲＣを硬判定して受信値硬判定情報ＳＲＨを求める。これらの復号値硬判定情報ＳＤＨ及び受信値硬判定情報ＳＲＨは、それぞれ、復号値硬判定情報ＤＨＤ及び受信値硬判定情報ＲＨＤとして外部に出力され、必要に応じてモニタされる。
【０６１０】
以上説明した軟出力復号回路９０は、軟入力の復号受信値ＴＳＲを入力すると、Ｉγ算出回路１５６及びＩγ分配回路１５７によって、受信値を受信する毎に、対数尤度Ｉγを算出し、Ｉα算出回路１５８によって、対数尤度Ｉαを算出した後、全ての受信値を受信すると、Ｉβ算出回路１５９によって、全ての時刻における各ステートについて、対数尤度Ｉβを算出する。そして、要素復号器５０は、軟出力算出回路１６１によって、算出した対数尤度Ｉα，Ｉβ及びＩγを用いて、各時刻における対数軟出力Ｉλを算出し、この対数軟出力Ｉλを外部に出力するか、若しくは、外部情報算出回路１６３に供給する。また、要素復号器５０は、外部情報算出回路１６３によって、各時刻における外部情報を算出する。
このように、要素復号器５０は、復号受信値ＴＳＲと外部情報又はインターリーブデータＴＥＸＴとを用いて、Ｌｏｇ−ＢＣＪＲアルゴリズムを適用した軟出力復号を行うことができる。特に、軟出力復号回路９０は、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭにおける要素符号化器の符号構成に拘泥せず、任意の符号に対する軟出力復号を行うことができる。
【０６１１】
なお、軟出力復号回路９０に関する各種特徴については、後述する“５．”においてさらに説明する。
【０６１２】
２−３  インターリーバの詳細
つぎに、インターリーバ１００について詳述する。具体的な構成の説明に先立って、インターリーバ１００の基本的な設計概念について説明する。
【０６１３】
インターリーバ１００は、後述するように、インターリーブ処理及びデインターリーブ処理を行うとともに、入力した受信値を遅延させることもできる。そのため、インターリーバ１００は、入力した受信値を遅延させるためのＲＡＭと、入力したデータにインターリーブを施すためのＲＡＭとを備えるものとする。なお、これらのＲＡＭは、後述するように、実際には、共用されるものであって、施すべきインターリーブの種類を含む符号構成を示すモードに応じて切り替えられて使用されるものである。
【０６１４】
遅延用のＲＡＭは、例えば図４６に示すように、インターリーバ１００が有する後述する制御回路からは、バンクＡ，Ｂからなるデュアルポートの１つのＲＡＭに見えるように構成される。ここで、制御回路は、このＲＡＭに対するデータの書き込みに用いる書き込みアドレスと、データの読み出しに用いる読み出しアドレスとによって、同時に偶数アドレス又は奇数アドレスにアクセスすることはできないものとする。インターリーバ１００においては、この遅延用のＲＡＭを用いて偶数長遅延させる場合には、例えば、０，１，２，３，４，・・・，ＤＬ−２，ＤＬ−１，０，１，２，・・・といった書き込みアドレスに基づいて、ＲＡＭにおける各アドレスにデータが記憶される。そして、インターリーバ１００においては、例えば、１，２，３，４，５，・・・，ＤＬ−１，０，１，２，３，・・・といった読み出しアドレスに基づいて、ＲＡＭにおける各アドレスからデータが読み出される。また、インターリーバ１００は、奇数長遅延させる場合には、偶数長遅延させた出力をレジスタ等に保持させることにより実現する。実際には、遅延用のＲＡＭは、例えば図４７に示すように、バンクＡ，Ｂのそれぞれの上位アドレス及び下位アドレス用の複数個のＲＡＭから構成される。そのため、インターリーバ１００においては、例えば図４８に示すように、制御回路により発生したアドレスを適切に変換して各ＲＡＭに与える必要がある。なお、図４７において、アドレスの最上位ビットを反転させているのは、後述するように、複数のシンボルを入出力する際に、アドレスの指定を簡易にするためである。
【０６１５】
一方、インターリーブ用のＲＡＭは、例えば図４９に示すように、制御回路からは、バンクＡ，Ｂからなる２つのＲＡＭに見えるように構成される。インターリーバ１００は、上述したように、インターリーブ処理とデインターリーブ処理とを切り替えることができる。そこで、インターリーバ１００においては、インターリーブ処理を行う場合には、通常、例えば０，１，２，３，・・・といったようにカウントアップ、又は、・・・，３，２，１，０といったようにカウントダウンしていくことにより発生されるシーケンシャルな書き込みアドレスに基づいて、書き込み用のバンクＡとしてのＲＡＭにおける各アドレスにデータが記憶される。そして、インターリーバ１００においては、ランダムな読み出しアドレスに基づいて、読み出し用のバンクＢとしてのＲＡＭにおける各アドレスからデータが読み出される。一方、インターリーバ１００においては、デインターリーブ処理を行う場合には、インターリーブ処理とは逆に、ランダムな書き込みアドレスに基づいて、書き込み用のバンクＡとしてのＲＡＭにおける各アドレスにデータが記憶されるとともに、シーケンシャルな読み出しアドレスに基づいて、読み出し用のバンクＢとしてのＲＡＭにおける各アドレスからデータが読み出される。インターリーバ１００においては、例えば図５０に示すように、シーケンシャルな書き込みアドレスとランダムな読み出しアドレスとに基づいて、バンクＡ，Ｂのそれぞれに用いるアドレスに変換し、各ＲＡＭに与えることになる。
【０６１６】
つぎに、インターリーバ１００から見たアドレス用記憶回路１１０に対する入出力について説明する。
【０６１７】
アドレス用記憶回路１１０は、基本的に、インターリーバ１００から供給されるシーケンシャルなアドレスデータＩＡＡに基づいて、例えば３系統のランダムなアドレスデータである読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２を出力するものとする。このように、インターリーバ１００に対して、アドレス用記憶回路１１０から複数系統の読み出しアドレスデータＡＤＡが与えられることによって、インターリーバ１００は、最大で３シンボルのデータに対する複数種類のインターリーブを行うことができる。
【０６１８】
例えば、インターリーバ１００は、図５１（Ａ）に示すように、１シンボルの入力データに対して、ランダムなインターリーブを施す場合には、アドレス用記憶回路１１０からの３系統の読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２のうち、読み出しアドレスデータＡＤＡ０を用いて、インターリーブを行う。なお、以下の説明では、ランダムなインターリーブをランダムインターリーブと称するものとする。
【０６１９】
また、インターリーバ１００は、同図（Ｂ）に示すように、２シンボルの入力データに対して、ランダムインターリーブを施す場合には、アドレス用記憶回路１１０からの３系統の読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２のうち、読み出しアドレスデータＡＤＡ０，ＡＤＡ１を用いて、インターリーブを行う。
【０６２０】
さらに、インターリーバ１００は、同図（Ｃ）に示すように、２シンボルの入力データに対して、互いに異なるアドレスに基づいて個別的にインターリーブを施す場合には、アドレス用記憶回路１１０からの３系統の読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２のうち、読み出しアドレスデータＡＤＡ０，ＡＤＡ１を用いて、インターリーブを行う。なお、以下の説明では、このようなインターリーブをインライン（inline）インターリーブと称するものとする。
【０６２１】
さらにまた、インターリーバ１００は、同図（Ｄ）に示すように、２シンボルの入力データに対して、各ビットの組み合わせを保持するように、すなわち、各シンボルに対して同一のアドレスに基づいたインターリーブを施す場合には、アドレス用記憶回路１１０からの３系統の読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２のうち、読み出しアドレスデータＡＤＡ０，ＡＤＡ１を用いて、インターリーブを行う。なお、以下の説明では、このようなインターリーブをペアワイズ（pair wise）インターリーブと称するものとする。
【０６２２】
また、インターリーバ１００は、同図（Ｅ）に示すように、３シンボルの入力データに対して、ランダムインターリーブを施す場合には、アドレス用記憶回路１１０からの３系統の読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２の全てを用いて、インターリーブを行う。
【０６２３】
さらに、インターリーバ１００は、同図（Ｆ）に示すように、３シンボルの入力データに対して、インラインインターリーブを施す場合には、アドレス用記憶回路１１０からの３系統の読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２の全てを用いて、インターリーブを行う。
【０６２４】
さらにまた、インターリーバ１００は、同図（Ｇ）に示すように、３シンボルの入力データに対して、ペアワイズインターリーブを施す場合には、アドレス用記憶回路１１０からの３系統の読み出しアドレスデータＡＤＡ０，ＡＤＡ１，ＡＤＡ２の全てを用いて、インターリーブを行う。
【０６２５】
このように、インターリーバ１００は、アドレス用記憶回路１１０から与えられる複数系統の読み出しアドレスデータＡＤＡを用いて、複数種類のインターリーブを行うことができる。なお、複数種類のインターリーブとは、当該インターリーブと逆の置換を行う複数種類のデインターリーブを含むことは勿論である。インターリーバ１００は、複数個のＲＡＭを有し、インターリーブの種別に応じて、使用するＲＡＭを適切に選択して切り替えることによって、複数種類のインターリーブを実現する。
【０６２６】
なお、複数のＲＡＭの具体的な利用方法については後述する。
【０６２７】
さて、このようなインターリーブ処理又はデインターリーブ処理を行うことが可能であるインターリーバ１００は、例えば図５２に示すように構成される。インターリーバ１００は、アドレス発生等の各種処理を行う制御回路４００と、遅延アドレスを発生する遅延アドレス発生回路４０１と、奇数長遅延を補償するための奇数長遅延補償回路４０２と、入力したアドレスデータをインターリーブ用のアドレスデータに変換するインターリーブアドレス変換回路４０３と、入力したアドレスデータを遅延用のアドレスデータに変換する遅延アドレス変換回路４０４と、後述する記憶回路４０７1，４０７2，・・・，４０７16に分配するアドレスデータを選択するアドレス選択回路４０５と、記憶回路４０７1，４０７2，・・・，４０７16に分配するデータを選択する入力データ選択回路４０６と、例えば１６個の記憶回路４０７1，４０７2，・・・，４０７16と、出力するデータを選択する出力データ選択回路４０８とを有する。
【０６２８】
制御回路４００は、後述する記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込み及び／または読み出しを制御するものであって、セレクタ１２０5から供給されるインターリーブ開始位置信号ＴＩＳを入力すると、インターリーブ又はデインターリーブの際に用いる書き込みアドレスと読み出しアドレスとを発生する。このとき、制御回路４００は、外部から供給されるインターリーブモード信号ＣＤＩＮと、制御回路６０から供給されるインターリーブ長情報ＣＩＮＬ及びインターリーブ長だけ遅延すべき旨を示す動作モード情報ＣＢＦとに基づいて、書き込みアドレスと読み出しアドレスとを発生する。制御回路４００は、発生したシーケンシャルなアドレスデータである書き込みアドレスデータＩＷＡをインターリーブアドレス変換回路４０３に供給する。また、制御回路４００は、発生したシーケンシャルなアドレスデータＩＡＡをアドレス用記憶回路１１０に供給するとともに、インターリーブ長遅延読み出しアドレスデータＩＲＡとしてインターリーブアドレス変換回路４０３に供給する。
【０６２９】
さらに、制御回路４００は、後述するように、制御回路６０から供給される終結位置情報ＣＮＦＴと、終結期間情報ＣＮＦＬと、終結ステート情報ＣＮＦＤと、パンクチャ周期情報ＣＮＥＬと、パンクチャパターン情報ＣＮＥＰとを入力すると、インターリーブ長情報ＣＩＮＬに基づいて、インターリーバ無出力位置情報ＣＮＯと、遅延インターリーブ開始位置信号ＣＤＳとを生成するとともに、終結時刻情報ＣＧＴと、終結ステート情報ＣＧＳと、消去位置情報ＣＧＥとを生成する。制御回路４００は、インターリーブ長分の時間の経過後に、生成したこれらの情報を、それぞれ、インターリーバ無出力位置情報ＩＮＯ、遅延インターリーブ開始位置信号ＩＤＳ、終結時刻情報ＩＧＴと、終結ステート情報ＩＧＳと、消去位置情報ＩＧＥとして、フレームの先頭に同期させてセレクタ１２０10に供給する。また、制御回路４００は、生成したインターリーバ無出力位置情報ＣＮＯをアドレス選択回路４０５にも供給する。
【０６３０】
なお、後述するが、制御回路４００により発生されたシーケンシャルなアドレスデータである書き込みアドレスデータＩＷＡは、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がインターリーブ処理を行う旨を指示するものであった場合には、記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込みに用いるアドレスデータとなるが、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がデインターリーブ処理を行う旨を指示するものであった場合には、記憶回路４０７1，４０７2，・・・，４０７16からのデータの読み出しに用いるアドレスデータとなる。同様に、制御回路４００により発生されたシーケンシャルなアドレスデータＩＡＡは、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がインターリーブ処理を行う旨を指示するものであった場合には、記憶回路４０７1，４０７2，・・・，４０７16からのデータの読み出しに用いるランダムなアドレスデータをアドレス用記憶回路１１０から読み出すためのものとなるが、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がデインターリーブ処理を行う旨を指示するものであった場合には、記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込みに用いるランダムなアドレスデータをアドレス用記憶回路１１０から読み出すためのものとなる。
【０６３１】
また、制御回路４００は、書き込みアドレスと読み出しアドレスとを発生する際には、図示しないカウンタによりカウントアップしていくことによって、シーケンシャルなアドレスデータを発生するが、書き込みアドレス用のカウンタと、読み出しアドレス用のカウンタとは、後述するが、個別に設けられるものである。
【０６３２】
遅延アドレス発生回路４０１は、制御回路６０から供給されるインターリーブ長情報ＣＩＮＬに基づいて、遅延用のアドレスデータを発生する。遅延アドレス発生回路４０１は、発生した書き込み用のアドレスデータである遅延用書き込みアドレスデータＤＷＡと、読み出し用のアドレスデータである遅延用読み出しアドレスデータＤＲＡとを遅延アドレス変換回路４０４に供給する。
【０６３３】
奇数長遅延補償回路４０２は、奇数長遅延を補償するために設けられるものである。すなわち、インターリーバ１００は、上述したように、遅延を行う際には２バンクのＲＡＭを用いて構成される。そして、インターリーバ１００は、後述するように、各バンクの間で１タイムスロット毎にデータの書き込み及び読み出しを切り替えることから、遅延長、すなわち、インターリーブ長の半分のタイムスロット分のワード数のＲＡＭを２バンク用いることによって、データの遅延を実現することができる。しかしながら、インターリーバ１００は、この場合には、遅延長が偶数長に限定されることになる。そこで、奇数長遅延補償回路４０２は、奇数長遅延に対応するために設けられるものであって、制御回路６０から供給されるインターリーブ長情報ＣＩＮＬに基づいて、偶数長遅延を行う場合には、データＴＤＩに対して、ＲＡＭによる遅延のみを行い、奇数長遅延を行う場合には、データＴＤＩに対して、ＲＡＭによる遅延長−１分の遅延と、レジスタによる１タイムスロット分の遅延を行うように、遅延の対象とするデータであるデータＴＤＩを選択する。
【０６３４】
具体的には、奇数長遅延補償回路４０２は、データＴＤＩが６系統のデータＴＤＩ０，ＴＤＩ１，ＴＤＩ２，ＴＤＩ３，ＴＤＩ４，ＴＤＩ５からなるものとすると、例えば図５３に示すように、６個のレジスタ４１０1，４１０2，４１０3，４１０4，４１０5，４１０6と、６個のセレクタ４１１1，４１１2，４１１3，４１１4，４１１5，４１１6とを有するものとして実現することができる。
【０６３５】
レジスタ４１０1は、データＴＤＩ０を入力すると、このデータＴＤＩ０を１タイムスロット分だけ保持する。レジスタ４１０1は、保持したデータＤＤＤ０をセレクタ４１１1に供給する。
【０６３６】
レジスタ４１０2は、データＴＤＩ１を入力すると、このデータＴＤＩ１を１タイムスロット分だけ保持する。レジスタ４１０2は、保持したデータＤＤＤ１をセレクタ４１１2に供給する。
【０６３７】
レジスタ４１０3は、データＴＤＩ２を入力すると、このデータＴＤＩ２を１タイムスロット分だけ保持する。レジスタ４１０3は、保持したデータＤＤＤ２をセレクタ４１１3に供給する。
【０６３８】
レジスタ４１０4は、データＴＤＩ３を入力すると、このデータＴＤＩ３を１タイムスロット分だけ保持する。レジスタ４１０4は、保持したデータＤＤＤ３をセレクタ４１１4に供給する。
【０６３９】
レジスタ４１０5は、データＴＤＩ４を入力すると、このデータＴＤＩ４を１タイムスロット分だけ保持する。レジスタ４１０5は、保持したデータＤＤＤ４をセレクタ４１１5に供給する。
【０６４０】
レジスタ４１０6は、データＴＤＩ５を入力すると、このデータＴＤＩ５を１タイムスロット分だけ保持する。レジスタ４１０6は、保持したデータＤＤＤ５をセレクタ４１１6に供給する。
【０６４１】
セレクタ４１１1は、インターリーブ長情報ＣＩＮＬに基づいて、レジスタ４１０1から供給されるデータＤＤＤ０と、データＴＤＩ０とのうち、いずれか一方を選択する。具体的には、セレクタ４１１1は、インターリーブ長が偶数長であった場合には、データＴＤＩ０を選択する。セレクタ４１１1は、選択したデータＤＳ０を、データＤ０として入力データ選択回路４０６に供給する。なお、このセレクタ４１１1に入力されるインターリーブ長情報ＣＩＮＬは、実際には、当該インターリーブ長情報ＣＩＮＬを表すビット列の最下位ビットで足りることはいうまでもない。
【０６４２】
セレクタ４１１2は、インターリーブ長情報ＣＩＮＬに基づいて、レジスタ４１０2から供給されるデータＤＤＤ１と、データＴＤＩ１とのうち、いずれか一方を選択する。具体的には、セレクタ４１１2は、インターリーブ長が偶数長であった場合には、データＴＤＩ１を選択する。セレクタ４１１2は、選択したデータＤＳ１を、データＤ１として入力データ選択回路４０６に供給する。なお、このセレクタ４１１2に入力されるインターリーブ長情報ＣＩＮＬは、実際には、当該インターリーブ長情報ＣＩＮＬを表すビット列の最下位ビットで足りることはいうまでもない。
【０６４３】
セレクタ４１１3は、インターリーブ長情報ＣＩＮＬに基づいて、レジスタ４１０3から供給されるデータＤＤＤ２と、データＴＤＩ２とのうち、いずれか一方を選択する。具体的には、セレクタ４１１3は、インターリーブ長が偶数長であった場合には、データＴＤＩ２を選択する。セレクタ４１１3は、選択したデータＤＳ２を、データＤ２として入力データ選択回路４０６に供給する。なお、このセレクタ４１１3に入力されるインターリーブ長情報ＣＩＮＬは、実際には、当該インターリーブ長情報ＣＩＮＬを表すビット列の最下位ビットで足りることはいうまでもない。
【０６４４】
セレクタ４１１4は、インターリーブ長情報ＣＩＮＬに基づいて、レジスタ４１０4から供給されるデータＤＤＤ３と、データＴＤＩ３とのうち、いずれか一方を選択する。具体的には、セレクタ４１１4は、インターリーブ長が偶数長であった場合には、データＴＤＩ３を選択する。セレクタ４１１4は、選択したデータＤＳ３を、データＤ３として入力データ選択回路４０６に供給する。なお、このセレクタ４１１4に入力されるインターリーブ長情報ＣＩＮＬは、実際には、当該インターリーブ長情報ＣＩＮＬを表すビット列の最下位ビットで足りることはいうまでもない。
【０６４５】
セレクタ４１１5は、インターリーブ長情報ＣＩＮＬに基づいて、レジスタ４１０5から供給されるデータＤＤＤ４と、データＴＤＩ４とのうち、いずれか一方を選択する。具体的には、セレクタ４１１5は、インターリーブ長が偶数長であった場合には、データＴＤＩ４を選択する。セレクタ４１１5は、選択したデータＤＳ４を、データＤ４として入力データ選択回路４０６に供給する。なお、このセレクタ４１１5に入力されるインターリーブ長情報ＣＩＮＬは、実際には、当該インターリーブ長情報ＣＩＮＬを表すビット列の最下位ビットで足りることはいうまでもない。
【０６４６】
セレクタ４１１6は、インターリーブ長情報ＣＩＮＬに基づいて、レジスタ４１０6から供給されるデータＤＤＤ５と、データＴＤＩ５とのうち、いずれか一方を選択する。具体的には、セレクタ４１１6は、インターリーブ長が偶数長であった場合には、データＴＤＩ５を選択する。セレクタ４１１6は、選択したデータＤＳ５を、データＤ５として入力データ選択回路４０６に供給する。なお、このセレクタ４１１6に入力されるインターリーブ長情報ＣＩＮＬは、実際には、当該インターリーブ長情報ＣＩＮＬを表すビット列の最下位ビットで足りることはいうまでもない。
【０６４７】
このような奇数長遅延補償回路４０２は、データＴＤＩを入力すると、偶数長遅延の場合には、データＴＤＩをレジスタを通さないで出力し、奇数長遅延の場合には、データＴＤＩをレジスタにより１タイムスロットだけ保持してから出力する。
【０６４８】
インターリーブアドレス変換回路４０３は、外部から供給されるインターリーブモード信号ＣＤＩＮと、制御回路６０から供給されるインターリーバタイプ情報ＣＩＮＴ及びインターリーブ長だけ遅延すべき旨を示す動作モード情報ＣＢＦとに基づいて、制御回路４００から供給されるシーケンシャルなアドレスデータである書き込みアドレスデータＩＷＡ及びインターリーブ長遅延読み出しアドレスデータＩＲＡと、アドレス用記憶回路１１０から供給されるランダムなアドレスデータである読み出しアドレスデータＡＤＡとのうち、所望のアドレスデータを選択し、インターリーブ用のアドレスデータに変換する。インターリーブアドレス変換回路４０３は、変換して得られた例えば６系統のアドレスデータＡＡ０，ＢＡ０，ＡＡ１，ＢＡ１，ＡＡ２，ＢＡ２をアドレス選択回路４０５に供給する。また、インターリーブアドレス変換回路４０３は、入力した情報に基づいて、出力データ選択回路４０８における選択動作を指示するための例えば４系統の制御信号ＩＯＢＳ，ＩＯＢＰ０，ＩＯＢＰ１，ＩＯＢＰ２を生成し、これらの制御信号を出力データ選択回路４０８に供給する。
【０６４９】
遅延アドレス変換回路４０４は、遅延アドレス発生回路４０１から供給される遅延用書き込みアドレスデータＤＷＡと、遅延用読み出しアドレスデータＤＲＡとのうち、所望のアドレスデータを選択し、遅延用のアドレスデータに変換する。遅延アドレス変換回路４０４は、変換して得られた例えば２系統のアドレスデータＤＡＡ，ＤＢＡをアドレス選択回路４０５に供給する。また、遅延アドレス変換回路４０４は、入力した情報に基づいて、出力データ選択回路４０８における選択動作を指示するための例えば２系統の制御信号ＤＯＢＳ，ＤＯＢＰを生成し、これらの制御信号を出力データ選択回路４０８に供給する。
【０６５０】
アドレス選択回路４０５は、制御回路６０から供給されるインターリーバタイプ情報ＣＩＮＴと、制御回路４００から供給されるインターリーバ無出力位置情報ＣＮＯとに基づいて、インターリーブアドレス変換回路４０３から供給されるアドレスデータＡＡ０，ＢＡ０，ＡＡ１，ＢＡ１，ＡＡ２，ＢＡ２と、遅延アドレス変換回路４０４から供給されるアドレスデータＤＡＡ，ＤＢＡとのうち、記憶回路４０７1，４０７2，・・・，４０７16に分配するアドレスデータを選択する。アドレス選択回路４０５は、選択したアドレスデータＡＲ００，ＡＲ０１，・・・，ＡＲ１５を、それぞれ、記憶回路４０７1，４０７2，・・・，４０７16に供給する。
【０６５１】
また、アドレス選択回路４０５には、インターリーバタイプ情報ＣＩＮＴと、インターリーバ無出力位置情報ＣＮＯとの他に、図示しないが、制御回路４００により生成され且つインターリーブアドレス変換回路４０５を経て入力される制御信号であって、インターリーブ又はデインターリーブを行う際における記憶回路４０７1，４０７2，・・・，４０７16に対する書き込み許可信号や書き込み用のバンクを示す信号と、遅延アドレス変換回路４０４により生成される制御信号であって、遅延を行う際における記憶回路４０７1，４０７2，・・・，４０７16に対する書き込み許可信号や書き込み用のバンクを示す信号とが入力される。アドレス選択回路４０５は、これらの情報に基づいて、記憶回路４０７1，４０７2，・・・，４０７16に対する書き込み許可信号ＸＷＥと、記憶回路４０７1，４０７2，・・・，４０７16に対するクロック信号を阻止するためのクロック阻止（clock inhibit）信号ＩＨと、記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込みをいわゆるパーシャルライト（partial write）として行わせるためのパーシャルライト制御信号ＰＷとを生成する。アドレス選択回路４０５は、これらの書き込み許可信号ＸＷＥ、クロック阻止信号ＩＨ及びパーシャルライト制御信号ＰＷを、記憶回路４０７1，４０７2，・・・，４０７16に供給する。
【０６５２】
入力データ選択回路４０６には、セレクタ１２０4から供給される例えば３系統のデータＴＩＩ０，ＴＩＩ１，ＴＩＩ２がデータＩ０，Ｉ１，Ｉ２として入力されるとともに、奇数長遅延補償回路４０２から供給されるデータＤ０，Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５が入力される。入力データ選択回路４０６は、外部から供給されるインターリーブモード信号ＣＤＩＮと、制御回路６０から供給されるインターリーバタイプ情報ＣＩＮＴ及びインターリーバ入出力置換情報ＣＩＰＴとに基づいて、データＩ０，Ｉ１，Ｉ２，Ｄ０，Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５のうち、記憶回路４０７1，４０７2，・・・，４０７16に分配するデータを選択する。特に、入力データ選択回路４０６は、入力したデータにインターリーブ又はデインターリーブを施す場合には、データＩ０，Ｉ１，Ｉ２を入力し、これらのデータＩ０，Ｉ１，Ｉ２のうち、記憶回路４０７1，４０７2，・・・，４０７16に分配するデータを選択する。また、入力データ選択回路４０６は、入力したデータを遅延させる場合には、遅延用のデータＤ０，Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５を入力し、これらのデータＤ０，Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５のうち、記憶回路４０７1，４０７2，・・・，４０７16に分配するデータを選択する。入力データ選択回路４０６は、選択したデータＩＲ００，ＩＲ０１，・・・，ＩＲ１５を、それぞれ、記憶回路４０７1，４０７2，・・・，４０７16に供給する。
【０６５３】
なお、この入力データ選択回路４０６は、後述するように、複数シンボルに対してインターリーブを施す場合に、各シンボル間で相互に置換する機能を有する。すなわち、入力データ選択回路４０６は、インターリーバ入出力置換情報ＣＩＰＴに基づいて、入力したデータＩ０，Ｉ１，Ｉ２について、各シンボルの順序を入れ替える機能を有する。
【０６５４】
記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、パーシャルライト機能を有するＲＡＭの他、複数のセレクタ等を有する。記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ００，ＡＲ０１，・・・，ＡＲ１５により指定されたアドレスに対して、入力データ選択回路４０６から供給されるデータＩＲ００，ＩＲ０１，・・・，ＩＲ１５を書き込み、記憶する。そして、記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ００，ＡＲ０１，・・・，ＡＲ１５により指定されたアドレスから、記憶しているデータを読み出し、データＯＲ００，ＯＲ０１，・・・，ＯＲ１５として出力データ選択回路４０８に供給する。このとき、記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、アドレス選択回路４０５から供給される書き込み許可信号ＸＷＥに基づいて、データの書き込みを開始する。
また、記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、クロック阻止信号ＩＨに基づいて、書き込み及び／又は読み出しを含む一切の動作を停止することもできる。
【０６５５】
さらに、記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、パーシャルライト制御信号ＰＷに基づいて、パーシャルライト機能によるデータの書き込みを行うこともできる。すなわち、通常のＲＡＭにおいては、その書き込み動作は、あるアドレスが指定された場合に、このアドレスに対応するビット数分のメモリセルが選択され、これらの全てのメモリセルに情報を一度に書き込むことにより行われる。一方、パーシャルライトのＲＡＭにおいては、その書き込み動作は、選択された全てのメモリセルに情報を一度に書き込むものではなく、アドレスにより選択されたメモリセルのうち、任意のビットのメモリセルにのみ書き込むことにより行われる。記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、このようなパーシャルライト機能を有するＲＡＭを有しており、パーシャルライト制御信号ＰＷに基づいて、指定アドレスの一部分への情報の書き込みを行うこともできる。
【０６５６】
インターリーバ１００は、これらの記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込み及び／又は読み出しを制御することによって、インターリーブ処理及びデインターリーブ処理、並びに、受信値の遅延処理を実現することができる。
【０６５７】
具体的には、記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、例えば図５４に示すように、インバータ４２０と、５つのセレクタ４２１，４２２，４２３，４２５，４２６と、パーシャルライト機能付きのＲＡＭ４２４とを有するものとして実現することができる。なお、同図においては、記憶回路４０７と総称する。また、同図においては、アドレス選択回路４０５から供給されるアドレスデータＡＲ００，ＡＲ０１，・・・，ＡＲ１５をアドレスデータＡＲと総称するとともに、入力データ選択回路４０６から供給されるデータＩＲ００，ＩＲ０１，・・・，ＩＲ１５をデータＩＲと総称するものとし、さらに、出力データ選択回路４０８に供給するデータＯＲ００，ＯＲ０１，・・・，ＯＲ１５をデータＯＲと総称するものとする。
【０６５８】
インバータ４２０は、アドレスデータＡＲの最上位ビットを入力し、この最上位ビットを反転する。インバータ４２０は、反転して得られた反転ビットＩＡＲをセレクタ４２１に供給する。
【０６５９】
セレクタ４２１は、アドレス選択回路４０５から供給されるパーシャルライト制御信号ＰＷに基づいて、インバータ４２０から供給される反転ビットＩＡＲと、値が“０”であるビットとのうち、いずれか一方を選択し、１ビットのデータＨＰＷとして出力する。具体的には、セレクタ４２１は、パーシャルライト制御信号ＰＷが、パーシャルライト機能によるデータの書き込みを指示するものであった場合には、反転ビットＩＡＲを選択する。このセレクタ４２１により選択されたデータＨＰＷは、例えば８ビットにパラレル変換され、データＶＩＨとしてＲＡＭ４２４に供給される。
【０６６０】
セレクタ４２２は、アドレス選択回路４０５から供給されるパーシャルライト制御信号ＰＷに基づいて、アドレスデータＡＲの最上位ビットと、値が“０”であるビットとのうち、いずれか一方を選択し、１ビットのデータＬＰＷとして出力する。具体的には、セレクタ４２２は、パーシャルライト制御信号ＰＷが、パーシャルライト機能によるデータの書き込みを指示するものであった場合には、アドレスデータＡＲの最上位ビットを選択する。このセレクタ４２２により選択されたデータＬＰＷは、例えば８ビットにパラレル変換され、データＶＩＬとしてＲＡＭ４２４に供給される。
【０６６１】
セレクタ４２３には、データＩＲが上位ビットと下位ビットとに分割されて入力される。例えば、セレクタ４２３には、データＩＲが１６ビットからなる場合には、上位８ビットのデータＩＲ［１５：８］と、下位８ビットのデータＩＲ［７：０］が入力される。セレクタ４２３は、アドレス選択回路４０５から供給されるパーシャルライト制御信号ＰＷに基づいて、データＩＲの上位ビットと下位ビットとのうち、いずれか一方を選択する。具体的には、セレクタ４２３は、パーシャルライト制御信号ＰＷが、パーシャルライト機能によるデータの書き込みを指示するものであった場合には、データＩＲの下位ビットを選択する。このセレクタ４２３により選択されたデータＩＲ１は、データＩＲの下位ビットのデータＩＲ０と束ねられ、データＩ（＝｛ＩＲ１，ＩＲ０｝）としてＲＡＭ４２４に供給される。
【０６６２】
ＲＡＭ４２４は、簡潔に言えば、アドレスデータＡＲに基づいて、データＩＲの書き込み及びデータＯＲの読み出しを行うものであるが、上述したように、パーシャルライト機能を有することから、単純に、アドレスデータＡＲ及びデータＩＲを入力し、データＯＲを出力する構成とはなっていない。
【０６６３】
ＲＡＭ４２４には、アドレス選択回路４０５から供給される書き込み許可信号ＸＷＥ及びクロック阻止信号ＩＨが供給される。ＲＡＭ４２４は、書き込み許可信号ＸＷＥが入力されると、データの書き込みが可能な状態となる。ＲＡＭ４２４には、アドレスデータＡＲの最上位ビットを除いたデータであるアドレスデータＩＡと、データＶＩＨ，ＶＩＬとに基づいて、データＩ（＝｛ＩＲ１，ＩＲ０｝）が書き込まれる。また、ＲＡＭ４２４からは、アドレスデータＩＡと、データＶＩＨ，ＶＩＬとに基づいて、データＯＨ，ＯＬが読み出される。これらのデータＯＨ，ＯＬは、ともに、セレクタ４２５，４２６に供給される。また、ＲＡＭ４２４は、クロック阻止信号ＩＨが入力されると、書き込み及び／又は読み出しを含む一切の動作を停止する。
【０６６４】
なお、ＲＡＭ４２４に対して入出力される各データの詳細については後述するものとする。
【０６６５】
セレクタ４２５は、セレクタ４２２から供給されたデータＬＰＷに所定の遅延が施されたデータＬＰＤに基づいて、ＲＡＭ４２４から供給されるデータＯＨ，ＯＬのうち、いずれか一方を選択し、データＳＯＨとして出力する。具体的には、セレクタ４２５は、データＬＰＤが“０”であった場合には、データＯＨを選択し、データＬＰＤが“１”であった場合には、データＯＬを選択する。すなわち、セレクタ４２５は、パーシャルライト機能によるデータの書き込み及び読み出しを考慮し、アドレス方向で、上位ビットのデータ又は下位ビットのデータのうちのいずれを出力すべきかを決定するために設けられるものである。
【０６６６】
セレクタ４２６は、セレクタ４２２から供給されたデータＬＰＷに所定の遅延が施されたデータＬＰＤに基づいて、ＲＡＭ４２４から供給されるデータＯＨ，ＯＬのうち、いずれか一方を選択し、データＳＯＬとして出力する。具体的には、セレクタ４２６は、データＬＰＤが“０”であった場合には、データＯＬを選択し、データＬＰＤが“１”であった場合には、データＯＨを選択する。すなわち、セレクタ４２６は、セレクタ４２５と同様に、パーシャルライト機能によるデータの書き込み及び読み出しを考慮し、アドレス方向で、上位ビットのデータ又は下位ビットのデータのうちのいずれを出力すべきかを決定するために設けられるものである。
【０６６７】
なお、セレクタ４２５により選択されたデータＳＯＨと、セレクタ４２６により選択されたデータＳＯＬとは、データＯＲ（＝｛ＳＯＨ，ＳＯＬ｝）として、出力データ選択回路４０８に供給される。
【０６６８】
このような記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、アドレスデータＡＲ００，ＡＲ０１，・・・，ＡＲ１５に基づいて、データＩＲ００，ＩＲ０１，・・・，ＩＲ１５の書き込み、及び、データＯＲ００，ＯＲ０１，・・・，ＯＲ１５の読み出しを行う。
【０６６９】
なお、記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、上述したように、パーシャルライト機能によるデータの書き込みを可能とするが、これについては後述する。
【０６７０】
出力データ選択回路４０８は、外部から供給されるインターリーブモード信号ＣＤＩＮと、制御回路６０から供給されるインターリーバタイプ情報ＣＩＮＴ及びインターリーバ入出力置換情報ＣＩＰＴと、インターリーブアドレス変換回路４０３から供給される制御信号ＩＯＢＳ，ＩＯＢＰ０，ＩＯＢＰ１，ＩＯＢＰ２と、遅延アドレス変換回路４０４から供給される制御信号ＤＯＢＳ，ＤＯＢＰとに基づいて、記憶回路４０７1，４０７2，・・・，４０７16のそれぞれから供給されるデータＯＲ００，ＯＲ０１，・・・，ＯＲ１５のうち、出力すべきデータを選択する。出力データ選択回路４０８は、入力したデータにインターリーブ又はデインターリーブを施した場合には、選択したデータを、例えば３系統のインターリーバ出力データＩＩＯ０，ＩＩＯ１，ＩＩＯ２として、それぞれ、セレクタ１２０7に供給する。また、出力データ選択回路４０８は、入力したデータを遅延させた場合には、選択したデータを、例えば６系統のインターリーブ長遅延受信値ＩＤＯ０，ＩＤＯ１，ＩＤＯ２，ＩＤＯ３，ＩＤＯ４，ＩＤＯ５として、それぞれ、セレクタ１２０6に供給する。
【０６７１】
なお、この出力データ選択回路４０８は、後述するように、複数シンボルに対してデインターリーブを施す場合に、各シンボル間で相互に置換する機能を有する。すなわち、出力データ選択回路４０８は、インターリーバ入出力置換情報ＣＩＰＴに基づいて、出力するインターリーバ出力データＩＩＯ０，ＩＩＯ１，ＩＩＯ２について、各シンボルの順序を入れ替える機能を有する。
【０６７２】
以上説明したインターリーバ１００は、インターリーブ処理を行う場合には、制御回路４００により発生したシーケンシャルなアドレスデータである書き込みアドレスデータＩＷＡを用いて、アドレス選択回路４０５によって、適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配するとともに、入力データ選択回路４０６によって、データＩ０，Ｉ１，Ｉ２を適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配し、これらの記憶回路４０７1，４０７2，・・・，４０７16にデータを書き込む。一方、インターリーバ１００は、制御回路４００により発生したシーケンシャルなアドレスデータＩＡＡに基づいてアドレス用記憶回路１１０から読み出されたランダムなアドレスデータである読み出しアドレスデータＡＤＡを用いて、アドレス選択回路４０５によって、適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配し、記憶回路４０７1，４０７2，・・・，４０７16に記憶されているデータを読み出す。そして、インターリーバ１００は、出力データ選択回路４０８によって、適切な記憶回路４０７1，４０７2，・・・，４０７16から出力されるデータを選択し、インターリーバ出力データＩＩＯ０，ＩＩＯ１，ＩＩＯ２として出力する。このようにすることによって、インターリーバ１００は、インターリーブ処理を行うことができる。
【０６７３】
また、インターリーバ１００は、デインターリーブ処理を行う場合には、制御回路４００により発生したシーケンシャルなアドレスデータＩＡＡに基づいてアドレス用記憶回路１１０から読み出されたランダムなアドレスデータである読み出しアドレスデータＡＤＡを用いて、アドレス選択回路４０５によって、適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配するとともに、入力データ選択回路４０６によって、データＩ０，Ｉ１，Ｉ２を適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配し、これらの記憶回路４０７1，４０７2，・・・，４０７16にデータを書き込む。一方、インターリーバ１００は、制御回路４００により発生したシーケンシャルなアドレスデータである書き込みアドレスデータＩＷＡを用いて、アドレス選択回路４０５によって、適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配し、記憶回路４０７1，４０７2，・・・，４０７16に記憶されているデータを読み出す。
そして、インターリーバ１００は、出力データ選択回路４０８によって、適切な記憶回路４０７1，４０７2，・・・，４０７16から出力されるデータを選択し、インターリーバ出力データＩＩＯ０，ＩＩＯ１，ＩＩＯ２として出力する。このようにすることによって、インターリーバ１００は、デインターリーブ処理を行うことができる。
【０６７４】
さらに、インターリーバ１００は、入力したデータを遅延させる場合には、制御回路４００により発生した書き込みアドレスデータＩＷＡを用いて、アドレス選択回路４０５によって、適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配するとともに、入力データ選択回路４０６によって、データＤ０，Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５を適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配し、これらの記憶回路４０７1，４０７2，・・・，４０７16にデータを書き込む。一方、インターリーバ１００は、制御回路４００により発生したシーケンシャルなアドレスデータであるインターリーブ長遅延読み出しアドレスデータＩＲＡを用いて、アドレス選択回路４０５によって、適切な記憶回路４０７1，４０７2，・・・，４０７16にアドレスを分配し、記憶回路４０７1，４０７2，・・・，４０７16に記憶されているデータを読み出す。そして、インターリーバ１００は、出力データ選択回路４０８によって、適切な記憶回路４０７1，４０７2，・・・，４０７16から出力されるデータを選択し、インターリーブ長遅延受信値ＩＤＯ０，ＩＤＯ１，ＩＤＯ２，ＩＤＯ３，ＩＤＯ４，ＩＤＯ５として出力する。このようにすることによって、インターリーバ１００は、入力したデータを遅延させることができる。
【０６７５】
つぎに、インターリーバ１００におけるＲＡＭの利用方法の具体例について説明する。
【０６７６】
要素復号器５０は、データ用のＲＡＭとして、インターリーバ１００における記憶回路４０７1，４０７2，・・・，４０７16のそれぞれが有する１６個のＲＡＭを備え、アドレス用のＲＡＭとして、アドレス用記憶回路１１０が有する複数のＲＡＭを備える。ここでは、記憶回路４０７1，４０７2，・・・，４０７16のそれぞれが有する１６個のＲＡＭは、１６ビット×４０９６ワードの記憶容量を有するものとし、アドレス用記憶回路１１０は、１４ビット×４０９６ワードの記憶容量を有する６個のＲＡＭを備えるものとする。また、記憶回路４０７1，４０７2，・・・，４０７16におけるＲＡＭを、それぞれ、ＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６と称するとともに、アドレス用記憶回路１１０におけるＲＡＭを、ＲＡＭＡと称するものとする。
【０６７７】
まず、１シンボルの入力データに対して、ランダムインターリーブを施す例について説明する。ここでは、符号化装置１が、符号化率が“１／６以上”のＰＣＣＣを行うものであり、入力されるデータの容量が“１６キロワード以下”であるものとする。
【０６７８】
この場合、インターリーバ１００は、１シンボルのデータについてインターリーブを施すとともに、６シンボルのデータについて遅延を施す必要がある。そこで、インターリーバ１００は、例えば図５５（Ａ）に示すように、１６個のＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６のうち、１２個のＲＡＭＤ０１，Ｄ０２，Ｄ０３，Ｄ０４，Ｄ０５，Ｄ０６，Ｄ０７，Ｄ０８，Ｄ０９，Ｄ１０，Ｄ１１，Ｄ１２を遅延に用いるとともに、同図（Ｂ）に示すように、残りの４つのＲＡＭＤ１３，Ｄ１４，Ｄ１５，Ｄ１６をインターリーブに用いる。また、アドレス用のＲＡＭとしては、同図（Ｃ）に示すように、６個のＲＡＭＡのうち、任意の４つのＲＡＭＡを用いればよい。したがって、インターリーバ１００及びアドレス用記憶回路１１０は、同図（Ｄ）に示すように、２つのＲＡＭＡを用いないことになる。
【０６７９】
より具体的には、インターリーバ１００は、同図（Ａ）及び同図（Ｂ）に示すように、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４を、上述したバンクＡ（Ａ0，Ａ1）として用い、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６を、上述したバンクＢ（Ｂ0，Ｂ1）として用いる。すなわち、インターリーバ１００は、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４に対してデータを書き込んでいる場合には、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６からデータを読み出し、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６に対してデータを書き込んでいる場合には、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４からデータを読み出す。
【０６８０】
ＲＡＭＤ０１，Ｄ０２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ００，ＡＲ０１に基づいて、入力データ選択回路４０６からデータＩＲ００，ＩＲ０１として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０１には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０２には、４乃至８キロワード分のデータが書き込まれる。また、ＲＡＭＤ０５，Ｄ０６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０４，ＡＲ０５に基づいて、入力データ選択回路４０６からデータＩＲ０４，ＩＲ０５として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０５には、データＤ２，Ｄ３のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０６には、４乃至８キロワード分のデータが書き込まれる。さらに、ＲＡＭＤ０９，Ｄ１０には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０８，ＡＲ０９に基づいて、入力データ選択回路４０６からデータＩＲ０８，ＩＲ０９として、遅延用のデータＤ４，Ｄ５が供給され、書き込まれる。このとき、ＲＡＭＤ０９には、データＤ４，Ｄ５のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ１０には、４乃至８キロワード分のデータが書き込まれる。
【０６８１】
これと同時に、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２からは、それぞれ、記憶しているデータが、データＯＲ０２，ＯＲ０３，ＯＲ０６，ＯＲ０７，ＯＲ１０，ＯＲ１１として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０６８２】
同様に、ＲＡＭＤ０３，Ｄ０４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０２，ＡＲ０３に基づいて、入力データ選択回路４０６からデータＩＲ０２，ＩＲ０３として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０３には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０４には、４乃至８キロワード分のデータが書き込まれる。また、ＲＡＭＤ０７，Ｄ０８には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０６，ＡＲ０７に基づいて、入力データ選択回路４０６からデータＩＲ０６，ＩＲ０７として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０７には、データＤ２，Ｄ３のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０８には、４乃至８キロワード分のデータが書き込まれる。さらに、ＲＡＭＤ１１，Ｄ１２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１０，ＡＲ１１に基づいて、入力データ選択回路４０６からデータＩＲ１０，ＩＲ１１として、遅延用のデータＤ４，Ｄ５が供給され、書き込まれる。このとき、ＲＡＭＤ１１には、データＤ４，Ｄ５のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ１２には、４乃至８キロワード分のデータが書き込まれる。
【０６８３】
これと同時に、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０からは、それぞれ、記憶しているデータが、データＯＲ００，ＯＲ０１，ＯＲ０４，ＯＲ０５，ＯＲ０８，ＯＲ０９として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０６８４】
また、ＲＡＭＤ１３，Ｄ１４，Ｄ１５，Ｄ１６は、それぞれ、パーシャルライト制御信号ＰＷに基づいて、パーシャルライトのＲＡＭとして機能し、擬似的に８ビット×８１９２ワードの記憶容量を有するＲＡＭとして作用する。
【０６８５】
ＲＡＭＤ１３，Ｄ１４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１２，ＡＲ１３に基づいて、入力データ選択回路４０６からデータＩＲ１２，ＩＲ１３として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１３には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１４には、８乃至１６キロワード分のデータが書き込まれる。
【０６８６】
これと同時に、ＲＡＭＤ１５，Ｄ１６からは、それぞれ、記憶しているデータが、データＯＲ１４，ＯＲ１５として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０６８７】
同様に、ＲＡＭＤ１５，Ｄ１６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１４，ＡＲ１５に基づいて、入力データ選択回路４０６からデータＩＲ１５，ＩＲ１６として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１５には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１６には、８乃至１６キロワード分のデータが書き込まれる。
【０６８８】
これと同時に、ＲＡＭＤ１３，Ｄ１４からは、それぞれ、記憶しているデータが、データＯＲ１２，ＯＲ１３として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０６８９】
このようにすることによって、インターリーバ１００は、符号化装置１によって、符号化率が“１／６以上”のＰＣＣＣが行われ、データの容量が“１６キロワード以下”である１シンボルの入力データに対して、ランダムインターリーブ及び遅延を施すことができる。
【０６９０】
つぎに、２シンボルの入力データに対して、ランダムインターリーブを施す例について説明する。ここでは、符号化装置１が、符号化率が“１／３以上”のＳＣＣＣを行うものであり、入力されるデータの容量が“８キロワード以下”であるものとする。
【０６９１】
この場合、インターリーバ１００は、２シンボルのデータについてインターリーブを施すとともに、６シンボルのデータについて遅延を施す必要がある。そこで、インターリーバ１００は、例えば図５６（Ａ）に示すように、１６個のＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６のうち、６個のＲＡＭＤ０１，Ｄ０２，Ｄ０３，Ｄ０４，Ｄ０５，Ｄ０７を遅延に用いるとともに、同図（Ｂ）に示すように、８個のＲＡＭＤ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６をインターリーブに用いる。また、アドレス用のＲＡＭとしては、同図（Ｃ）に示すように、６個のＲＡＭＡのうち、任意の４つのＲＡＭＡを用いればよい。したがって、インターリーバ１００及びアドレス用記憶回路１１０は、同図（Ｄ）に示すように、２つのＲＡＭＤ０６，Ｄ０８と、２つのＲＡＭＡとを用いないことになる。
【０６９２】
より具体的には、インターリーバ１００は、同図（Ａ）及び同図（Ｂ）に示すように、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４を、上述したバンクＡ（Ａ0）として用い、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６を、上述したバンクＢ（Ｂ0）として用いる。すなわち、インターリーバ１００は、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４に対してデータを書き込んでいる場合には、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６からデータを読み出し、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６に対してデータを書き込んでいる場合には、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４からデータを読み出す。
【０６９３】
ＲＡＭＤ０１には、アドレス選択回路４０５から供給されるアドレスデータＡＲ００に基づいて、入力データ選択回路４０６からデータＩＲ００として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０１には、０乃至４キロワード分のデータＤ０，Ｄ１が書き込まれる。また、ＲＡＭＤ０５には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０４に基づいて、入力データ選択回路４０６からデータＩＲ０４として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０５には、０乃至４キロワード分のデータＤ２，Ｄ３が書き込まれる。さらに、ＲＡＭＤ０２には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０１に基づいて、入力データ選択回路４０６からデータＩＲ０１として、遅延用のデータＤ４，Ｄ５が供給され、書き込まれる。このとき、ＲＡＭＤ０２には、０乃至４キロワード分のデータＤ４，Ｄ５が書き込まれる。
【０６９４】
これと同時に、ＲＡＭＤ０３，Ｄ０４，Ｄ０７からは、それぞれ、記憶しているデータが、データＯＲ０２，ＯＲ０３，ＯＲ０６として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０６９５】
同様に、ＲＡＭＤ０３には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０２に基づいて、入力データ選択回路４０６からデータＩＲ０２として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０３には、０乃至４キロワード分のデータＤ０，Ｄ１が書き込まれる。また、ＲＡＭＤ０７には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０６に基づいて、入力データ選択回路４０６からデータＩＲ０６として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０７には、０乃至４キロワード分のデータＤ２，Ｄ３が書き込まれる。さらに、ＲＡＭＤ０４には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０３に基づいて、入力データ選択回路４０６からデータＩＲ０３として、遅延用のデータＤ４，Ｄ５が供給され、書き込まれる。このとき、ＲＡＭＤ０４には、０乃至４キロワード分のデータＤ４，Ｄ５が書き込まれる。
【０６９６】
これと同時に、ＲＡＭＤ０１，Ｄ０２，Ｄ０５からは、それぞれ、記憶しているデータが、データＯＲ００，ＯＲ０１，ＯＲ０４として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０６９７】
また、ＲＡＭＤ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６は、それぞれ、パーシャルライト制御信号ＰＷに基づいて、パーシャルライトのＲＡＭとして機能し、擬似的に８ビット×８１９２ワードの記憶容量を有するＲＡＭとして作用する。
【０６９８】
ＲＡＭＤ１３には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１２に基づいて、入力データ選択回路４０６からデータＩＲ１２として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１３には、０乃至８キロワード分のデータＩ０が書き込まれる。また、ＲＡＭＤ１４にも、ＲＡＭＤ１３と同様に、アドレス選択回路４０５から供給されるアドレスデータＡＲ１３に基づいて、入力データ選択回路４０６からデータＩＲ１３として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１４には、０乃至８キロワード分のデータＩ０が書き込まれる。さらに、ＲＡＭＤ０９には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０８に基づいて、入力データ選択回路４０６からデータＩＲ０８として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ０９には、０乃至８キロワード分のデータＩ１が書き込まれる。また、ＲＡＭＤ１０にも、ＲＡＭＤ０９と同様に、アドレス選択回路４０５から供給されるアドレスデータＡＲ０９に基づいて、入力データ選択回路４０６からデータＩＲ０９として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１０には、０乃至８キロワード分のデータＩ１が書き込まれる。
【０６９９】
これと同時に、ＲＡＭＤ１１，Ｄ１５からは、それぞれ、記憶しているデータが、データＯＲ１０，ＯＲ１４として読み出され、２シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ１２，Ｄ１６からは、それぞれ、記憶しているデータが、データＯＲ１１，ＯＲ１５として読み出され、２シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７００】
同様に、ＲＡＭＤ１５には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１４に基づいて、入力データ選択回路４０６からデータＩＲ１４として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１５には、０乃至８キロワード分のデータＩ０が書き込まれる。また、ＲＡＭＤ１６にも、ＲＡＭＤ１５と同様に、アドレス選択回路４０５から供給されるアドレスデータＡＲ１５に基づいて、入力データ選択回路４０６からデータＩＲ１５として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１６には、０乃至８キロワード分のデータＩ０が書き込まれる。さらに、ＲＡＭＤ１１には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１０に基づいて、入力データ選択回路４０６からデータＩＲ１０として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１１には、０乃至８キロワード分のデータＩ１が書き込まれる。また、ＲＡＭＤ１２にも、ＲＡＭＤ１１と同様に、アドレス選択回路４０５から供給されるアドレスデータＡＲ１１に基づいて、入力データ選択回路４０６からデータＩＲ１１として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１２には、０乃至８キロワード分のデータＩ１が書き込まれる。
【０７０１】
これと同時に、ＲＡＭＤ０９，Ｄ１３からは、それぞれ、記憶しているデータが、データＯＲ０８，ＯＲ１２として読み出され、２シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ１０，Ｄ１４からは、それぞれ、記憶しているデータが、データＯＲ０９，ＯＲ１３として読み出され、２シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７０２】
このようにすることによって、インターリーバ１００は、符号化装置１によって、符号化率が“１／３以上”のＳＣＣＣが行われ、データの容量が“８キロワード以下”である２シンボルの入力データに対して、ランダムインターリーブ及び遅延を施すことができる。
【０７０３】
つぎに、２シンボルの入力データに対して、インラインインターリーブを施す例について説明する。ここでは、符号化装置１が、パンクチャされたＳＣＣＣを行うものであり、入力されるデータの容量が“１２キロワード以下”であるものとする。
【０７０４】
この場合、インターリーバ１００は、２シンボルのデータについてインターリーブを施すとともに、４シンボルのデータについて遅延を施す必要がある。そこで、インターリーバ１００は、例えば図５７（Ａ）に示すように、１６個のＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６のうち、８個のＲＡＭＤ０１，Ｄ０２，Ｄ０３，Ｄ０４，Ｄ０５，Ｄ０６，Ｄ０７，Ｄ０８を遅延に用いるとともに、同図（Ｂ）に示すように、８個のＲＡＭＤ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６をインターリーブに用いる。また、アドレス用のＲＡＭとしては、同図（Ｃ）に示すように、６個のＲＡＭＡの全てを用いることになる。
【０７０５】
より具体的には、インターリーバ１００は、同図（Ａ）及び同図（Ｂ）に示すように、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４を、上述したバンクＡ（Ａ0，Ａ1）として用い、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６を、上述したバンクＢ（Ｂ0，Ｂ1）として用いる。すなわち、インターリーバ１００は、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４に対してデータを書き込んでいる場合には、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６からデータを読み出し、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６に対してデータを書き込んでいる場合には、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４からデータを読み出す。
【０７０６】
ＲＡＭＤ０１，Ｄ０２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ００，ＡＲ０１に基づいて、入力データ選択回路４０６からデータＩＲ００，ＩＲ０１として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０２は、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータＤ０，Ｄ１を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０１には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０２には、４乃至６キロワード分のデータが書き込まれる。また、ＲＡＭＤ０５，Ｄ０６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０４，ＡＲ０５に基づいて、入力データ選択回路４０６からデータＩＲ０４，ＩＲ０５として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０６は、同図（Ａ）中斜線部に示すように、ＲＡＭＤ０２と同様に、ワード方向に半分の記憶領域にのみデータＤ２，Ｄ３を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０５には、データＤ２，Ｄ３のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０６には、４乃至６キロワード分のデータが書き込まれる。
【０７０７】
これと同時に、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８からは、それぞれ、記憶しているデータが、データＯＲ０２，ＯＲ０３，ＯＲ０６，ＯＲ０７として読み出され、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ０４，Ｄ０８は、それぞれ、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７０８】
同様に、ＲＡＭＤ０３，Ｄ０４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０２，ＡＲ０３に基づいて、入力データ選択回路４０６からデータＩＲ０２，ＩＲ０３として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０４は、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータＤ０，Ｄ１を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０３には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０４には、４乃至６キロワード分のデータが書き込まれる。また、ＲＡＭＤ０７，Ｄ０８には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０６，ＡＲ０７に基づいて、入力データ選択回路４０６からデータＩＲ０６，ＩＲ０７として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０８は、同図（Ａ）中斜線部に示すように、ＲＡＭＤ０４と同様に、ワード方向に半分の記憶領域にのみデータＤ２，Ｄ３を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０７には、データＤ２，Ｄ３のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０８には、４乃至６キロワード分のデータが書き込まれる。
【０７０９】
これと同時に、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６からは、それぞれ、記憶しているデータが、データＯＲ００，ＯＲ０１，ＯＲ０４，ＯＲ０５として読み出され、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ０２，Ｄ０６は、それぞれ、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７１０】
また、ＲＡＭＤ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６は、それぞれ、パーシャルライト制御信号ＰＷに基づいて、パーシャルライトのＲＡＭとして機能し、擬似的に８ビット×８１９２ワードの記憶容量を有するＲＡＭとして作用する。
【０７１１】
ＲＡＭＤ１３，Ｄ１４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１２，ＡＲ１３に基づいて、入力データ選択回路４０６からデータＩＲ１２，ＩＲ１３として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１４は、同図（Ｂ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ１３には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１４には、８乃至１２キロワード分のデータが書き込まれる。また、ＲＡＭＤ０９，Ｄ１０には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０８，ＡＲ０９に基づいて、入力データ選択回路４０６からデータＩＲ０８，ＩＲ０９として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１０は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１４と同様に、ワード方向に半分の記憶領域にのみデータＩ１を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０９には、データＩ１のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１０には、８乃至１２キロワード分のデータが書き込まれる。
【０７１２】
これと同時に、ＲＡＭＤ１５，Ｄ１６からは、それぞれ、記憶しているデータが、データＯＲ１４，ＯＲ１５として読み出され、２シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ１６は、同図（Ｂ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。また、ＲＡＭＤ１１，Ｄ１２からは、それぞれ、記憶しているデータが、データＯＲ１０，ＯＲ１１として読み出され、２シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。
このとき、ＲＡＭＤ１２は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１６と同様に、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７１３】
同様に、ＲＡＭＤ１５，Ｄ１６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１４，ＡＲ１５に基づいて、入力データ選択回路４０６からデータＩＲ１４，ＩＲ１５として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１６は、同図（Ｂ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ１５には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１６には、８乃至１２キロワード分のデータが書き込まれる。また、ＲＡＭＤ１１，Ｄ１２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１０，ＡＲ１１に基づいて、入力データ選択回路４０６からデータＩＲ１０，ＩＲ１１として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１２は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１６と同様に、ワード方向に半分の記憶領域にのみデータＩ１を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ１１には、データＩ１のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１２には、８乃至１２キロワード分のデータが書き込まれる。
【０７１４】
これと同時に、ＲＡＭＤ１３，Ｄ１４からは、それぞれ、記憶しているデータが、データＯＲ１２，ＯＲ１３として読み出され、２シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ１４は、同図（Ｂ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。また、ＲＡＭＤ０９，Ｄ１０からは、それぞれ、記憶しているデータが、データＯＲ０８，ＯＲ０９として読み出され、２シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。
このとき、ＲＡＭＤ１０は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１４と同様に、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７１５】
このようにすることによって、インターリーバ１００は、符号化装置１によって、パンクチャされたＳＣＣＣが行われ、データの容量が“１２キロワード以下”である２シンボルの入力データに対して、インラインインターリーブ及び遅延を施すことができる。
【０７１６】
つぎに、２シンボルの入力データに対して、ペアワイズインターリーブを施す例について説明する。ここでは、符号化装置１がＳＣＣＣを行うものであるものとする。
【０７１７】
この場合、インターリーバ１００は、２シンボルのデータについてインターリーブを施すとともに、４シンボルのデータについて遅延を施す必要がある。そこで、インターリーバ１００は、例えば図５８（Ａ）に示すように、１６個のＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６のうち、８個のＲＡＭＤ０１，Ｄ０２，Ｄ０３，Ｄ０４，Ｄ０５，Ｄ０６，Ｄ０７Ｄ０８を遅延に用いるとともに、同図（Ｂ）に示すように、８個のＲＡＭＤ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６をインターリーブに用いる。また、アドレス用のＲＡＭとしては、同図（Ｃ）に示すように、６個のＲＡＭＡのうち、任意の４つのＲＡＭＡを用いればよい。したがって、インターリーバ１００及びアドレス用記憶回路１１０は、同図（Ｄ）に示すように、２つのＲＡＭＡを用いないことになる。
【０７１８】
より具体的には、インターリーバ１００は、同図（Ａ）及び同図（Ｂ）に示すように、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４を、上述したバンクＡ（Ａ0，Ａ1）として用い、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６を、上述したバンクＢ（Ｂ0，Ｂ1）として用いる。すなわち、インターリーバ１００は、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４に対してデータを書き込んでいる場合には、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６からデータを読み出し、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６に対してデータを書き込んでいる場合には、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４からデータを読み出す。このとき、ＲＡＭＤ１３，Ｄ１４と、ＲＡＭＤ０９，Ｄ１０とは、同一のアドレスに基づいて動作し、ＲＡＭＤ１５，Ｄ１６と、ＲＡＭＤ１１，Ｄ１２とは、同一のアドレスに基づいて動作する。
【０７１９】
ＲＡＭＤ０１，Ｄ０２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ００，ＡＲ０１に基づいて、入力データ選択回路４０６からデータＩＲ００，ＩＲ０１として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０１には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０２には、４乃至８キロワード分のデータが書き込まれる。また、ＲＡＭＤ０５，Ｄ０６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０４，ＡＲ０５に基づいて、入力データ選択回路４０６からデータＩＲ０４，ＩＲ０５として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０５には、データＤ２，Ｄ３のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０６には、４乃至８キロワード分のデータが書き込まれる。
【０７２０】
これと同時に、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８からは、それぞれ、記憶しているデータが、データＯＲ０２，ＯＲ０３，ＯＲ０６，ＯＲ０７として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７２１】
同様に、ＲＡＭＤ０３，Ｄ０４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０２，ＡＲ０３に基づいて、入力データ選択回路４０６からデータＩＲ０２，ＩＲ０３として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０３には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０４には、４乃至８キロワード分のデータが書き込まれる。また、ＲＡＭＤ０７，Ｄ０８には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０６，ＡＲ０７に基づいて、入力データ選択回路４０６からデータＩＲ０６，ＩＲ０７として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０７には、データＤ２，Ｄ３のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０８には、４乃至８キロワード分のデータが書き込まれる。
【０７２２】
これと同時に、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６からは、それぞれ、記憶しているデータが、データＯＲ００，ＯＲ０１，ＯＲ０４，ＯＲ０５として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７２３】
また、ＲＡＭＤ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６は、それぞれ、パーシャルライト制御信号ＰＷに基づいて、パーシャルライトのＲＡＭとして機能し、擬似的に８ビット×８１９２ワードの記憶容量を有するＲＡＭとして作用する。
【０７２４】
ＲＡＭＤ１３，Ｄ１４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１２，ＡＲ１３に基づいて、入力データ選択回路４０６からデータＩＲ１２，ＩＲ１３として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１３には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１４には、８乃至１６キロワード分のデータが書き込まれる。また、ＲＡＭＤ０９，Ｄ１０には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０８，ＡＲ０９に基づいて、入力データ選択回路４０６からデータＩＲ０８，ＩＲ０９として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ０９には、データＩ１のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１０には、８乃至１６キロワード分のデータが書き込まれる。
【０７２５】
これと同時に、ＲＡＭＤ１５，Ｄ１６からは、それぞれ、記憶しているデータが、データＯＲ１４，ＯＲ１５として読み出され、２シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ１１，Ｄ１２からは、それぞれ、記憶しているデータが、データＯＲ１０，ＯＲ１１として読み出され、２シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７２６】
同様に、ＲＡＭＤ１５，Ｄ１６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１４，ＡＲ１５に基づいて、入力データ選択回路４０６からデータＩＲ１４，ＩＲ１５として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１５には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１６には、８乃至１６キロワード分のデータが書き込まれる。また、ＲＡＭＤ１１，Ｄ１２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１０，ＡＲ１１に基づいて、入力データ選択回路４０６からデータＩＲ１０，ＩＲ１１として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１１には、データＩ１のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１２には、８乃至１６キロワード分のデータが書き込まれる。
【０７２７】
これと同時に、ＲＡＭＤ１３，Ｄ１４からは、それぞれ、記憶しているデータが、データＯＲ１２，ＯＲ１３として読み出され、２シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ０９，Ｄ１０からは、それぞれ、記憶しているデータが、データＯＲ０８，ＯＲ０９として読み出され、２シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７２８】
このようにすることによって、インターリーバ１００は、符号化装置１によりＳＣＣＣが行われた２シンボルの入力データに対して、ペアワイズインターリーブ及び遅延を施すことができる。
【０７２９】
つぎに、３シンボルの入力データに対して、ランダムインターリーブを施す例について説明する。ここでは、符号化装置１が、符号化率が“１／３以上”のＳＣＣＣを行うものであり、入力されるデータの容量が“４キロワード以下”であるものとする。
【０７３０】
この場合、インターリーバ１００は、３シンボルのデータについてインターリーブを施すとともに、４シンボルのデータについて遅延を施す必要がある。そこで、インターリーバ１００は、例えば図５９（Ａ）に示すように、１６個のＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６のうち、４つのＲＡＭＤ０１，Ｄ０３，Ｄ０５，Ｄ０７を遅延に用いるとともに、同図（Ｂ）に示すように、１２個のＲＡＭＤ０２，Ｄ０４，Ｄ０６，Ｄ０８，Ｄ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６をインターリーブに用いる。また、アドレス用のＲＡＭとしては、同図（Ｃ）に示すように、６個のＲＡＭＡのうち、任意の３つのＲＡＭＡを用いればよい。したがって、インターリーバ１００及びアドレス用記憶回路１１０は、同図（Ｄ）に示すように、３つのＲＡＭＡを用いないことになる。
【０７３１】
より具体的には、インターリーバ１００は、同図（Ａ）及び同図（Ｂ）に示すように、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４を、上述したバンクＡ（Ａ0）として用い、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６を、上述したバンクＢ（Ｂ0）として用いる。すなわち、インターリーバ１００は、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４に対してデータを書き込んでいる場合には、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６からデータを読み出し、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６に対してデータを書き込んでいる場合には、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４からデータを読み出す。
【０７３２】
ＲＡＭＤ０１には、アドレス選択回路４０５から供給されるアドレスデータＡＲ００に基づいて、入力データ選択回路４０６からデータＩＲ００として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０１は、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータＤ０，Ｄ１を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０１には、０乃至２キロワード分のデータＤ０，Ｄ１が書き込まれる。また、ＲＡＭＤ０５には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０４に基づいて、入力データ選択回路４０６からデータＩＲ０４として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０５は、同図（Ａ）中斜線部に示すように、ＲＡＭＤ０１と同様に、ワード方向に半分の記憶領域にのみデータＤ２，Ｄ３を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０５には、０乃至２キロワード分のデータＤ２，Ｄ３が書き込まれる。
【０７３３】
これと同時に、ＲＡＭＤ０３，Ｄ０７からは、それぞれ、記憶しているデータが、データＯＲ０２，ＯＲ０６として読み出され、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ０３，Ｄ０７は、それぞれ、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７３４】
同様に、ＲＡＭＤ０３には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０２に基づいて、入力データ選択回路４０６からデータＩＲ０２として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０３は、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータＤ２，Ｄ３を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０３には、０乃至２キロワード分のデータＤ０，Ｄ１が書き込まれる。また、ＲＡＭＤ０７には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０６に基づいて、入力データ選択回路４０６からデータＩＲ０６として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０７は、同図（Ａ）中斜線部に示すように、ＲＡＭＤ０３と同様に、ワード方向に半分の記憶領域にのみデータＤ２，Ｄ３を記憶し、残りの記憶領域には、データを記憶することはない。すなわち、ＲＡＭＤ０７には、０乃至２キロワード分のデータＤ２，Ｄ３が書き込まれる。
【０７３５】
これと同時に、ＲＡＭＤ０１，Ｄ０５からは、それぞれ、記憶しているデータが、データＯＲ００，ＯＲ０４として読み出され、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ０１，Ｄ０５は、それぞれ、同図（Ａ）中斜線部に示すように、ワード方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７３６】
また、ＲＡＭＤ０２，Ｄ０４，Ｄ０６，Ｄ０８，Ｄ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６は、それぞれ、パーシャルライトのＲＡＭとして機能せず、通常の記憶容量を有するＲＡＭとして作用する。
【０７３７】
ＲＡＭＤ１３には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１２に基づいて、入力データ選択回路４０６からデータＩＲ１２として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１３は、同図（Ｂ）中斜線部に示すように、ビット方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶しない、若しくは、同じデータＩ０を記憶する。また、ＲＡＭＤ０９には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０８に基づいて、入力データ選択回路４０６からデータＩＲ０８として、インターリーブ用のデータＩ１，Ｉ２が供給され、書き込まれる。さらに、ＲＡＭＤ１４には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１３に基づいて、入力データ選択回路４０６からデータＩＲ１３として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１４は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１３と同様に、ビット方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶しない、若しくは、同じデータＩ０を記憶する。また、ＲＡＭＤ１０には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０９に基づいて、入力データ選択回路４０６からデータＩＲ０９として、インターリーブ用のデータＩ１，Ｉ２が供給され、書き込まれる。さらにまた、ＲＡＭＤ０６には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０５に基づいて、入力データ選択回路４０６からデータＩＲ０５として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ０６は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１３と同様に、ビット方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶しない、若しくは、同じデータＩ０を記憶する。また、ＲＡＭＤ０２には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０１に基づいて、入力データ選択回路４０６からデータＩＲ０１として、インターリーブ用のデータＩ１，Ｉ２が供給され、書き込まれる。
【０７３８】
これと同時に、ＲＡＭＤ１１，Ｄ１５からは、それぞれ、記憶しているデータが、データＯＲ１０，ＯＲ１４として読み出され、３シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ１５は、同図（Ｂ）中斜線部に示すように、ビット方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない、若しくは、同じデータが記憶されている。また、ＲＡＭＤ１１からは、２系統のデータが出力されるが、これらのデータは、図示しないセレクタにより一方が選択され、出力データ選択回路４０８に供給される。さらに、ＲＡＭＤ１２，Ｄ１６からは、それぞれ、記憶しているデータが、データＯＲ１１，ＯＲ１５として読み出され、３シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ１６は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１５と同様に、ビット方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない、若しくは、同じデータが記憶されている。また、ＲＡＭＤ１２からは、２系統のデータが出力されるが、これらのデータは、図示しないセレクタにより一方が選択され、出力データ選択回路４０８に供給される。さらにまた、ＲＡＭＤ０４，Ｄ０８からは、それぞれ、記憶しているデータが、データＯＲ０３，ＯＲ０７として読み出され、３シンボルのデータのうち、さらに他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ０８は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１５と同様に、ビット方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない、若しくは、同じデータが記憶されている。また、ＲＡＭＤ０４からは、２系統のデータが出力されるが、これらのデータは、図示しないセレクタにより一方が選択され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７３９】
同様に、ＲＡＭＤ１５には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１４に基づいて、入力データ選択回路４０６からデータＩＲ１４として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１５は、同図（Ｂ）中斜線部に示すように、ビット方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶しない、若しくは、同じデータＩ０を記憶する。また、ＲＡＭＤ１１には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１０に基づいて、入力データ選択回路４０６からデータＩＲ１０として、インターリーブ用のデータＩ１，Ｉ２が供給され、書き込まれる。さらに、ＲＡＭＤ１６には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１５に基づいて、入力データ選択回路４０６からデータＩＲ１５として、インターリーブ用のデータＩ０が供給され、書き込まれる。
このとき、ＲＡＭＤ１６は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１５と同様に、ビット方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶しない、若しくは、同じデータＩ０を記憶する。また、ＲＡＭＤ１２には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１１に基づいて、入力データ選択回路４０６からデータＩＲ１１として、インターリーブ用のデータＩ１，Ｉ２が供給され、書き込まれる。さらにまた、ＲＡＭＤ０８には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０７に基づいて、入力データ選択回路４０６からデータＩＲ０７として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ０８は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１５と同様に、ビット方向に半分の記憶領域にのみデータＩ０を記憶し、残りの記憶領域には、データを記憶しない、若しくは、同じデータＩ０を記憶する。また、ＲＡＭＤ０４には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０３に基づいて、入力データ選択回路４０６からデータＩＲ０３として、インターリーブ用のデータＩ１，Ｉ２が供給され、書き込まれる。
【０７４０】
これと同時に、ＲＡＭＤ１１，Ｄ１５からは、それぞれ、記憶しているデータが、データＯＲ１０，ＯＲ１４として読み出され、３シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ１５は、同図（Ｂ）中斜線部に示すように、ビット方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない、若しくは、同じデータが記憶されている。また、ＲＡＭＤ１１からは、２系統のデータが出力されるが、これらのデータは、図示しないセレクタにより一方が選択され、出力データ選択回路４０８に供給される。さらに、ＲＡＭＤ１２，Ｄ１６からは、それぞれ、記憶しているデータが、データＯＲ１１，ＯＲ１５として読み出され、３シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ１６は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１５と同様に、ビット方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない、若しくは、同じデータが記憶されている。また、ＲＡＭＤ１２からは、２系統のデータが出力されるが、これらのデータは、図示しないセレクタにより一方が選択され、出力データ選択回路４０８に供給される。さらにまた、ＲＡＭＤ０４，Ｄ０８からは、それぞれ、記憶しているデータが、データＯＲ０３，ＯＲ０７として読み出され、３シンボルのデータのうち、さらに他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。このとき、ＲＡＭＤ０８は、同図（Ｂ）中斜線部に示すように、ＲＡＭＤ１５と同様に、ビット方向に半分の記憶領域にのみデータを記憶しており、残りの記憶領域には、データが記憶されていない、若しくは、同じデータが記憶されている。また、ＲＡＭＤ０４からは、２系統のデータが出力されるが、これらのデータは、図示しないセレクタにより一方が選択され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７４１】
このようにすることによって、インターリーバ１００は、符号化装置１によって、符号化率が“１／３以上”のＳＣＣＣが行われ、データの容量が“４キロワード以下”である３シンボルの入力データに対して、ランダムインターリーブ及び遅延を施すことができる。
【０７４２】
つぎに、３シンボルの入力データに対して、インラインインターリーブを施す例について説明する。ここでは、符号化装置１が、符号化率が“２／３”のＳＣＴＣＭを行うものであり、入力されるデータの容量が“１６キロワード以下”であるものとする。
【０７４３】
この場合、インターリーバ１００は、３シンボルのデータについてインターリーブを施すとともに、６シンボルのデータについて遅延を施す必要がある。そこで、インターリーバ１００は、例えば図６０（Ａ）に示すように、１６個のＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６のうち、６個のＲＡＭＤ０１，Ｄ０２，Ｄ０３，Ｄ０４，Ｄ０５，Ｄ０７を遅延に用いるとともに、同図（Ｂ）に示すように、６個のＲＡＭＤ０９，Ｄ１１，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６をインターリーブに用いる。また、アドレス用のＲＡＭとしては、同図（Ｃ）に示すように、６個のＲＡＭＡの全てを用いることになる。ただし、これらの６個のＲＡＭＡは、それぞれ、同図（Ｃ）中斜線部に示すように、ビット方向に１４ビットの記憶領域を有するうち、１３ビット分の記憶領域のみを用いる。したがって、インターリーバ１００及びアドレス用記憶回路１１０は、同図（Ｄ）に示すように、４つのＲＡＭＤ０６，Ｄ０８，Ｄ１０，Ｄ１２を用いないことになる。
【０７４４】
より具体的には、インターリーバ１００は、同図（Ａ）及び同図（Ｂ）に示すように、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０９，Ｄ１３，Ｄ１４を、上述したバンクＡ（Ａ0）として用い、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ１１，Ｄ１５，Ｄ１６を、上述したバンクＢ（Ｂ0）として用いる。すなわち、インターリーバ１００は、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０９，Ｄ１３，Ｄ１４に対してデータを書き込んでいる場合には、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ１１，Ｄ１５，Ｄ１６からデータを読み出し、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ１１，Ｄ１５，Ｄ１６に対してデータを書き込んでいる場合には、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０９，Ｄ１３，Ｄ１４からデータを読み出す。
【０７４５】
ＲＡＭＤ０１には、アドレス選択回路４０５から供給されるアドレスデータＡＲ００に基づいて、入力データ選択回路４０６からデータＩＲ００として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０１には、０乃至４キロワード分のデータＤ０，Ｄ１が書き込まれる。また、ＲＡＭＤ０５には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０４に基づいて、入力データ選択回路４０６からデータＩＲ０４として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０５には、０乃至４キロワード分のデータＤ２，Ｄ３が書き込まれる。さらに、ＲＡＭＤ０２には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０１に基づいて、入力データ選択回路４０６からデータＩＲ０１として、遅延用のデータＤ４，Ｄ５が供給され、書き込まれる。このとき、ＲＡＭＤ０２には、０乃至４キロワード分のデータＤ４，Ｄ５が書き込まれる。
【０７４６】
これと同時に、ＲＡＭＤ０３，Ｄ０４，Ｄ０７からは、それぞれ、記憶しているデータが、データＯＲ０２，ＯＲ０３，ＯＲ０６として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７４７】
同様に、ＲＡＭＤ０３には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０２に基づいて、入力データ選択回路４０６からデータＩＲ０２として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０３には、０乃至４キロワード分のデータＤ０，Ｄ１が書き込まれる。また、ＲＡＭＤ０７には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０６に基づいて、入力データ選択回路４０６からデータＩＲ０６として、遅延用のデータＤ２，Ｄ３が供給され、書き込まれる。このとき、ＲＡＭＤ０７には、０乃至４キロワード分のデータＤ２，Ｄ３が書き込まれる。さらに、ＲＡＭＤ０４には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０３に基づいて、入力データ選択回路４０６からデータＩＲ０３として、遅延用のデータＤ４，Ｄ５が供給され、書き込まれる。このとき、ＲＡＭＤ０４には、０乃至４キロワード分のデータＤ４，Ｄ５が書き込まれる。
【０７４８】
これと同時に、ＲＡＭＤ０１，Ｄ０２，Ｄ０５からは、それぞれ、記憶しているデータが、データＯＲ００，ＯＲ０１，ＯＲ０４として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７４９】
また、ＲＡＭＤ０９，Ｄ１１，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６は、それぞれ、パーシャルライト制御信号ＰＷに基づいて、パーシャルライトのＲＡＭとして機能し、擬似的に８ビット×８１９２ワードの記憶容量を有するＲＡＭとして作用する。
【０７５０】
ＲＡＭＤ１３には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１２に基づいて、入力データ選択回路４０６からデータＩＲ１２として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１３には、０乃至８キロワード分のデータＩ０が書き込まれる。また、ＲＡＭＤ０９には、アドレス選択回路４０５から供給されるアドレスデータＡＲ０８に基づいて、入力データ選択回路４０６からデータＩＲ０８として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ０９には、０乃至８キロワード分のデータＩ１が書き込まれる。さらに、ＲＡＭＤ１４には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１３に基づいて、入力データ選択回路４０６からデータＩＲ１３として、インターリーブ用のデータＩ２が供給され、書き込まれる。このとき、ＲＡＭＤ１４には、０乃至８キロワード分のデータＩ２が書き込まれる。
【０７５１】
これと同時に、ＲＡＭＤ１５からは、記憶しているデータが、データＯＲ１４として読み出され、３シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ１１からは、記憶しているデータが、データＯＲ１０として読み出され、３シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。さらに、ＲＡＭＤ１６からは、記憶しているデータが、データＯＲ１５として読み出され、３シンボルのデータのうち、さらに他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７５２】
同様に、ＲＡＭＤ１５には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１４に基づいて、入力データ選択回路４０６からデータＩＲ１４として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１５には、０乃至８キロワード分のデータＩ０が書き込まれる。また、ＲＡＭＤ１１には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１０に基づいて、入力データ選択回路４０６からデータＩＲ１０として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１１には、０乃至８キロワード分のデータＩ１が書き込まれる。さらに、ＲＡＭＤ１６には、アドレス選択回路４０５から供給されるアドレスデータＡＲ１５に基づいて、入力データ選択回路４０６からデータＩＲ１５として、インターリーブ用のデータＩ２が供給され、書き込まれる。このとき、ＲＡＭＤ１６には、０乃至８キロワード分のデータＩ２が書き込まれる。
【０７５３】
これと同時に、ＲＡＭＤ１３からは、記憶しているデータが、データＯＲ１２として読み出され、３シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ０９からは、記憶しているデータが、データＯＲ０８として読み出され、３シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。さらに、ＲＡＭＤ１４からは、記憶しているデータが、データＯＲ１３として読み出され、３シンボルのデータのうち、さらに他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７５４】
このようにすることによって、インターリーバ１００は、符号化装置１によって、符号化率が“２／３”のＳＣＴＣＭが行われ、データの容量が“１６キロワード以下”である３シンボルの入力データに対して、インラインインターリーブ及び遅延を施すことができる。
【０７５５】
つぎに、３シンボルの入力データに対して、ペアワイズインターリーブを施す例について説明する。ここでは、符号化装置１がＴＴＣＭを行うものであり、入力されるデータの容量が“３２キロワード以下”であるものとする。
【０７５６】
この場合、インターリーバ１００は、３シンボルのデータについてインターリーブを施すとともに、２シンボルのデータについて遅延を施す必要がある。そこで、インターリーバ１００は、例えば図６１（Ａ）に示すように、１６個のＲＡＭＤ０１，Ｄ０２，・・・，Ｄ１６のうち、４つのＲＡＭＤ０１，Ｄ０２，Ｄ０３，Ｄ０４を遅延に用いるとともに、同図（Ｂ）に示すように、１２個のＲＡＭＤ０５，Ｄ０６，Ｄ０７，Ｄ０８，Ｄ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６をインターリーブに用いる。また、アドレス用のＲＡＭとしては、同図（Ｃ）に示すように、６個のＲＡＭＡのうち、任意の４つのＲＡＭＡを用いればよい。したがって、インターリーバ１００及びアドレス用記憶回路１１０は、同図（Ｄ）に示すように、２つのＲＡＭＡを用いないことになる。
【０７５７】
より具体的には、インターリーバ１００は、同図（Ａ）及び同図（Ｂ）に示すように、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４を、上述したバンクＡ（Ａ0，Ａ1）として用い、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６を、上述したバンクＢ（Ｂ0，Ｂ1）として用いる。すなわち、インターリーバ１００は、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４に対してデータを書き込んでいる場合には、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６からデータを読み出し、ＲＡＭＤ０３，Ｄ０４，Ｄ０７，Ｄ０８，Ｄ１１，Ｄ１２，Ｄ１５，Ｄ１６に対してデータを書き込んでいる場合には、ＲＡＭＤ０１，Ｄ０２，Ｄ０５，Ｄ０６，Ｄ０９，Ｄ１０，Ｄ１３，Ｄ１４からデータを読み出す。このとき、ＲＡＭＤ１３，Ｄ１４と、ＲＡＭＤ０９，Ｄ１０と、ＲＡＭＤ０５，Ｄ０６とは、同一のアドレスに基づいて動作し、ＲＡＭＤ１５，Ｄ１６と、ＲＡＭＤ１１，Ｄ１２と、ＲＡＭＤ０７，Ｄ０８とは、同一のアドレスに基づいて動作する。
【０７５８】
ＲＡＭＤ０１，Ｄ０２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ００，ＡＲ０１に基づいて、入力データ選択回路４０６からデータＩＲ００，ＩＲ０１として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０１には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０２には、４乃至８キロワード分のデータが書き込まれる。
【０７５９】
これと同時に、ＲＡＭＤ０３，Ｄ０４からは、それぞれ、記憶しているデータが、データＯＲ０２，ＯＲ０３として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７６０】
同様に、ＲＡＭＤ０３，Ｄ０４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０２，ＡＲ０３に基づいて、入力データ選択回路４０６からデータＩＲ０２，ＩＲ０３として、遅延用のデータＤ０，Ｄ１が供給され、書き込まれる。このとき、ＲＡＭＤ０３には、データＤ０，Ｄ１のうち、０乃至４キロワード分のデータが書き込まれ、ＲＡＭＤ０４には、４乃至８キロワード分のデータが書き込まれる。
【０７６１】
これと同時に、ＲＡＭＤ０１，Ｄ０２からは、それぞれ、記憶しているデータが、データＯＲ００，ＯＲ０１として読み出され、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７６２】
また、ＲＡＭＤ０５，Ｄ０６，Ｄ０７，Ｄ０８，Ｄ０９，Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３，Ｄ１４，Ｄ１５，Ｄ１６は、それぞれ、パーシャルライト制御信号ＰＷに基づいて、パーシャルライトのＲＡＭとして機能し、擬似的に８ビット×８１９２ワードの記憶容量を有するＲＡＭとして作用する。
【０７６３】
ＲＡＭＤ１３，Ｄ１４には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１２，ＡＲ１３に基づいて、入力データ選択回路４０６からデータＩＲ１２，ＩＲ１３として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１３には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１４には、８乃至１６キロワード分のデータが書き込まれる。また、ＲＡＭＤ０９，Ｄ１０には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０８，ＡＲ０９に基づいて、入力データ選択回路４０６からデータＩＲ０８，ＩＲ０９として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ０９には、データＩ１のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１０には、８乃至１６キロワード分のデータが書き込まれる。さらに、ＲＡＭＤ０５，Ｄ０６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０４，ＡＲ０５に基づいて、入力データ選択回路４０６からデータＩＲ０４，ＩＲ０５として、インターリーブ用のデータＩ２が供給され、書き込まれる。このとき、ＲＡＭＤ０５には、データＩ２のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ０６には、８乃至１６キロワード分のデータが書き込まれる。
【０７６４】
これと同時に、ＲＡＭＤ１５，Ｄ１６からは、それぞれ、記憶しているデータが、データＯＲ１４，ＯＲ１５として読み出され、３シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ１１，Ｄ１２からは、それぞれ、記憶しているデータが、データＯＲ１０，ＯＲ１１として読み出され、３シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。さらに、ＲＡＭＤ０７，Ｄ０８からは、それぞれ、記憶しているデータが、データＯＲ０６，ＯＲ０７として読み出され、３シンボルのデータのうち、さらに他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７６５】
同様に、ＲＡＭＤ１５，Ｄ１６には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１４，ＡＲ１５に基づいて、入力データ選択回路４０６からデータＩＲ１４，ＩＲ１５として、インターリーブ用のデータＩ０が供給され、書き込まれる。このとき、ＲＡＭＤ１５には、データＩ０のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１６には、８乃至１６キロワード分のデータが書き込まれる。また、ＲＡＭＤ１１，Ｄ１２には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ１０，ＡＲ１１に基づいて、入力データ選択回路４０６からデータＩＲ１０，ＩＲ１１として、インターリーブ用のデータＩ１が供給され、書き込まれる。このとき、ＲＡＭＤ１１には、データＩ１のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ１２には、８乃至１６キロワード分のデータが書き込まれる。さらに、ＲＡＭＤ０７，Ｄ０８には、それぞれ、アドレス選択回路４０５から供給されるアドレスデータＡＲ０６，ＡＲ０７に基づいて、入力データ選択回路４０６からデータＩＲ０６，ＩＲ０７として、インターリーブ用のデータＩ２が供給され、書き込まれる。このとき、ＲＡＭＤ０７には、データＩ２のうち、０乃至８キロワード分のデータが書き込まれ、ＲＡＭＤ０８には、８乃至１６キロワード分のデータが書き込まれる。
【０７６６】
これと同時に、ＲＡＭＤ１３，Ｄ１４からは、それぞれ、記憶しているデータが、データＯＲ１２，ＯＲ１３として読み出され、３シンボルのデータのうち、１系統のシンボルデータとして、出力データ選択回路４０８に供給される。また、ＲＡＭＤ０９，Ｄ１０からは、それぞれ、記憶しているデータが、データＯＲ０８，ＯＲ０９として読み出され、３シンボルのデータのうち、他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。さらに、ＲＡＭＤ０５，Ｄ０６からは、それぞれ、記憶しているデータが、データＯＲ０４，ＯＲ０５として読み出され、３シンボルのデータのうち、さらに他の１系統のシンボルデータとして、出力データ選択回路４０８に供給される。なお、データの読み出しは、データの書き込み時と同様に、アドレス選択回路４０５から供給されるアドレスデータに基づいて行われる。
【０７６７】
このようにすることによって、インターリーバ１００は、符号化装置１によって、ＴＴＣＭが行われ、データの容量が“３２キロワード以下”である３シンボルの入力データに対して、ペアワイズインターリーブ及び遅延を施すことができる。
【０７６８】
以上のように、インターリーバ１００は、遅延用のＲＡＭとインターリーブ用のＲＡＭとを共用し、施すべきインターリーブの種類を含む符号構成を示すモードに応じて、使用するＲＡＭを切り替え、適切なＲＡＭに対するデータの書き込み及び／又は読み出しを行うことによって、複数種類のインターリーブ処理及び遅延処理を行うことができ、各種符号の復号に利用することができる。
【０７６９】
なお、インターリーバ１００に関する各種特徴については、後述する“６．”においてさらに説明する。
【０７７０】
３．  要素復号器を連接して構成される復号装置
つぎに、上述した要素復号器５０を連接することにより繰り返し復号を行うことができる復号装置３について説明する。
【０７７１】
上述したように、復号装置３は、要素復号器５０を複数連接することにより構成され、符号化装置１によるＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ及びＳＣＴＣＭによる符号に対して、繰り返し復号を行うことができる。
【０７７２】
復号装置３は、図６２に示すように、要素符号の数と少なくとも繰り返し復号の繰り返し回数Ｎとの積、例えば、２×Ｎ個の要素復号器５０11，５０12，・・・，５０N1，５０N2とを備える。この復号装置３は、無記憶通信路２上で発生したノイズの影響により軟入力とされる受信値から繰り返し復号により復号データＤＥＣを求めることによって、符号化装置１における入力データを推定するものである。この復号装置３において、連続する２つの要素復号器５０11，５０12や、要素復号器５０N1，５０N2は、それぞれ、当該復号装置３が先に図３又は図５に示した復号装置３’，３’’を構成する場合には、１回分の繰り返し復号を実現するものである。すなわち、符号化装置１が先に図２に示した符号化装置１’である場合には、要素復号器５０11，５０12，・・・，５０M1，５０M2のうち、要素復号器５０i1で表されるものは、畳み込み符号化器１２に対応して備えられ、且つ、繰り返し回数ｉ回目の復号処理を行うものを示し、要素復号器５０i2で表されるものは、畳み込み符号化器１４に対応して備えられ、且つ、繰り返し回数ｉ回目の復号処理を行うものを示している。また、符号化装置１が先に図４に示した符号化装置１’’である場合には、要素復号器５０11，５０12，・・・，５０M1，５０M2のうち、要素復号器５０i1で表されるものは、内符号の符号化を行う畳み込み符号化器３３に対応して備えられ、且つ、繰り返し回数ｉ回目の復号処理を行うものを示し、要素復号器５０i2で表されるものは、外符号の符号化を行う畳み込み符号化器３１に対応して備えられ、且つ、繰り返し回数ｉ回目の復号処理を行うものを示している。
【０７７３】
具体的には、要素復号器５０11には、受信値Ｒと、事前確率情報としての外部情報又はインターリーブデータＥＸＴとが入力されるとともに、消去情報ＥＲＳ、事前確率情報消去情報ＥＡＰ、終結時刻情報ＴＮＰ、終結ステート情報ＴＮＳ、及び、インターリーブ開始位置信号ＩＬＳが入力される。また、要素復号器５０11には、出力データ選択制御信号ＩＴＭ及びインターリーブモード信号ＤＩＮが入力される。
【０７７４】
要素復号器５０11は、上述した処理を行うことにより得られた遅延受信値ＲＮと軟出力ＩＮＴとを出力するとともに、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮを出力する。このとき、要素復号器５０11は、復号装置３が先に図３に示した復号装置３’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、インターリーブ処理を行うものとして機能させる。また、要素復号器５０11は、復号装置３が先に図５に示した復号装置３’’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、デインターリーブ処理を行うものとして機能させる。さらに、要素復号器５０11は、出力データ選択制御信号ＩＴＭに基づいて、軟出力復号回路９０から出力される対数軟出力Ｉλである軟出力ＳＯＬ又は外部情報ＳＯＥのうちの一方を選択することで、最終的に軟出力ＩＮＴとして出力されるデータを決定することができる。ここでは、軟出力ＩＮＴは、外部情報であるものとする。さらにまた、要素復号器５０11は、必要に応じて、復号値硬判定情報ＤＨＤ及び受信値硬判定情報ＲＨＤを出力することもできる。
【０７７５】
また、要素復号器５０12には、前段の要素復号器５０11から出力された遅延受信値ＲＮ、軟出力ＩＮＴ、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮが、それぞれ、受信値Ｒ、外部情報又はインターリーブデータＥＸＴ、消去情報ＥＲＳ、事前確率情報消去情報ＥＡＰ、終結時刻情報ＴＮＰ、終結ステート情報ＴＮＳ、及び、インターリーブ開始位置信号ＩＬＳとして入力される。また、要素復号器５０12には、出力データ選択制御信号ＩＴＭ及びインターリーブモード信号ＤＩＮが入力される。
【０７７６】
要素復号器５０12は、要素復号器５０11と同様に、上述した処理を行うことにより得られた遅延受信値ＲＮと軟出力ＩＮＴとを出力するとともに、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮを出力する。このとき、要素復号器５０12は、復号装置３が先に図３に示した復号装置３’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、デインターリーブ処理を行うものとして機能させる。また、要素復号器５０12は、復号装置３が先に図５に示した復号装置３’’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、インターリーブ処理を行うものとして機能させる。さらに、要素復号器５０12は、出力データ選択制御信号ＩＴＭに基づいて、軟出力復号回路９０から出力される対数軟出力Ｉλである軟出力ＳＯＬ又は外部情報ＳＯＥのうちの一方を選択することで、最終的に軟出力ＩＮＴとして出力されるデータを決定することができる。ここでは、軟出力ＩＮＴは、外部情報であるものとする。さらにまた、要素復号器５０12は、必要に応じて、復号値硬判定情報ＤＨＤ及び受信値硬判定情報ＲＨＤを出力することもできる。
【０７７７】
このような要素復号器５０12は、遅延受信値ＲＮ、軟出力ＩＮＴ、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮを、それぞれ、図示しない次段の要素復号器５０21に出力する。
【０７７８】
さらに、要素復号器５０N1には、図示しない前段の要素復号器５０N-12から出力された遅延受信値ＲＮ、軟出力ＩＮＴ、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮが、それぞれ、受信値Ｒ、外部情報又はインターリーブデータＥＸＴ、消去情報ＥＲＳ、事前確率情報消去情報ＥＡＰ、終結時刻情報ＴＮＰ、終結ステート情報ＴＮＳ、及び、インターリーブ開始位置信号ＩＬＳとして入力される。また、要素復号器５０N1には、出力データ選択制御信号ＩＴＭ及びインターリーブモード信号ＤＩＮが入力される。
【０７７９】
要素復号器５０N1は、要素復号器５０11と同様に、上述した処理を行うことにより得られた遅延受信値ＲＮと軟出力ＩＮＴとを出力するとともに、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮを出力する。このとき、要素復号器５０N1は、復号装置３が先に図３に示した復号装置３’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、インターリーブ処理を行うものとして機能させる。また、要素復号器５０N1は、復号装置３が先に図５に示した復号装置３’’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、デインターリーブ処理を行うものとして機能させる。さらに、要素復号器５０N1は、出力データ選択制御信号ＩＴＭに基づいて、軟出力復号回路９０から出力される対数軟出力Ｉλである軟出力ＳＯＬ又は外部情報ＳＯＥのうちの一方を選択することで、最終的に軟出力ＩＮＴとして出力されるデータを決定することができる。ここでは、軟出力ＩＮＴは、外部情報であるものとする。さらにまた、要素復号器５０N1は、必要に応じて、復号値硬判定情報ＤＨＤ及び受信値硬判定情報ＲＨＤを出力することもできる。
【０７８０】
そして、最終段の要素復号器５０N2には、前段の要素復号器５０N1から出力された遅延受信値ＲＮ、軟出力ＩＮＴ、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮが、それぞれ、受信値Ｒ、外部情報又はインターリーブデータＥＸＴ、消去情報ＥＲＳ、事前確率情報消去情報ＥＡＰ、終結時刻情報ＴＮＰ、終結ステート情報ＴＮＳ、及び、インターリーブ開始位置信号ＩＬＳとして入力される。また、要素復号器５０N2には、出力データ選択制御信号ＩＴＭ及びインターリーブモード信号ＤＩＮが入力される。
【０７８１】
要素復号器５０N2は、上述した処理を行うことにより得られた軟出力ＩＮＴを出力するとともに、必要に応じて、復号値硬判定情報ＤＨＤ及び受信値硬判定情報ＲＨＤを出力する。このとき、要素復号器５０N2は、復号装置３が先に図３に示した復号装置３’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、デインターリーブ処理を行うものとして機能させる。また、要素復号器５０N2は、復号装置３が先に図５に示した復号装置３’’であった場合には、インターリーブモード信号ＤＩＮに基づいて、インターリーバ１００を、インターリーブ処理を行うものとして機能させる。さらに、要素復号器５０N2は、出力データ選択制御信号ＩＴＭに基づいて、軟出力ＩＮＴと出力すべきデータとして対数軟出力Ｉλを選択し、この対数軟出力Ｉλを、最終結果である復号データＤＥＣとして出力する。なお、要素復号器５０N2は、必要に応じて、遅延受信値ＲＮと軟出力ＩＮＴ、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮを出力することもできる。
【０７８２】
このような復号装置３は、符号化装置１における各要素符号化器に対応する要素復号器５０i1，５０i2を備えることによって、復号複雑度が高い符号を複雑度の小さい要素に分解し、要素復号器５０i1，５０i2の間の相互作用により特性を逐次的に向上させることができる。復号装置３は、受信値を受信すると、２×Ｎ個の要素復号器５０11，５０12，・・・，５０N1，５０N2によって、繰り返し回数が最大でＮの繰り返し復号を行い、復号データＤＥＣを出力する。
【０７８３】
なお、復号装置３は、２×Ｎ個の要素復号器５０11，５０12，・・・，５０N1，５０N2を連接することによって、最大で繰り返し回数がＮの繰り返し復号を行うことができるが、要素復号器５０11，５０12，・・・，５０N1，５０N2に備わる遅延機能を用いることによって、後述するように、繰り返し回数がＮ以下の繰り返し復号を行うこともできる。
【０７８４】
また、ＴＴＣＭ方式及びＳＣＴＣＭ方式による符号の復号を行う復号装置は、上述した復号装置３と同様の構成で実現することができ、受信値として、同相成分及び直交成分のシンボルを直接入力することになる。
【０７８５】
４．  要素復号器の全体に関する特徴
つぎに、要素復号器５０に関する特徴毎の説明を行う。以下の特徴は、要素復号器５０の機能として備えられるものであるが、特徴の概念を明確化するために、適宜簡略化した図面を用いて説明する。
【０７８６】
４−１  符号尤度の切り替え機能
上述した受信値及び事前確率情報選択回路１５４に関する特徴である。受信値及び事前確率情報選択回路１５４は、上述したように、任意の符号の復号を行うために設けられるものである。
【０７８７】
例えば、符号化装置１がＰＣＣＣ又はＴＴＣＭによる符号化を行うものであった場合には、先に図３に示したように、軟出力復号を行うために入力されるべき情報は、受信値と、前段のインターリーバ又はデインターリーバから供給される外部情報となる。また、例えば、符号化装置１がＳＣＣＣ又はＳＣＴＣＭによる符号化を行うものであった場合には、先に図５に示したように、内符号の軟出力復号を行うために入力されるべき情報は、受信値と、前段のインターリーバから供給される外部情報となり、外符号の軟出力復号を行うために入力されるべき情報は、デインターリーバから供給される外部情報と、値が“０”である事前確率情報となる。さらに、符号化装置１がパンクチャを行うものであった場合には、その旨を示す情報を事前確率情報として入力する必要がある。このように、要素復号器５０は、任意の符号の復号を行うためには、各符号に応じて、軟出力復号を行うために必要な情報を選択する必要がある。
【０７８８】
そこで、要素復号器５０は、受信値及び事前確率情報選択回路１５４を備えることによって、入力される受信値と事前確率情報とのうち、軟出力復号を行うために入力されるべき情報を符号に応じて適切に選択する。このようにすることによって、要素復号器５０は、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を復号することが可能な汎用性のある構造となる。
【０７８９】
すなわち、復号装置３は、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を、同一配線のＬＳＩからなる要素復号器５０を複数連接するだけで繰り返し復号することが可能となる。そのため、復号装置３は、例えば実験を行う場合等にも、ユーザに高い利便を提供することができる。
【０７９０】
なお、要素復号器５０は、受信値及び事前確率情報選択回路１５４を、必ずしも軟出力復号回路９０の内部又は前段に備える必要はない。すなわち、要素復号器５０は、前段の要素復号器からの情報の中から、軟出力復号に必要な情報を選択する構成とする必要はない。例えば、要素復号器５０は、セレクタ１２０8，１２０9，１２０10の後段に受信値及び事前確率情報選択回路１５４を設け、遅延受信値ＴＲＮと軟出力ＴＩＮＴとを符号尤度として切り替えることによって、次段の要素復号器において軟出力復号を行うために必要な情報を選択するようにしてもよい。
【０７９１】
図２８を用いて説明した受信値及び事前確率情報選択回路１５４の場合には、復号装置３を構成する隣接する２つの要素復号器５０A，５０Bは、簡略化すると例えば図６３に示す構成として表すことができる。すなわち、要素復号器５０Bは、前段の要素復号器５０Aから出力された遅延受信値ＲＮを受信値Ｒとして入力するとともに、軟出力ＩＮＴを外部情報又はインターリーブデータＥＸＴとして入力し、受信値ＴＲを、遅延するための信号線と復号受信値ＴＳＲとするための信号線とを備えるものとして表される。この場合、要素復号器５０Bに備えられる受信値及び事前確率情報選択回路１５４は、実質的には、復号受信値ＴＳＲと外部情報又はインターリーブデータＴＥＸＴとを選択的に出力するセレクタ５０１と、外部情報又はインターリーブデータＴＥＸＴと値が“０”である事前確率情報とを選択的に出力するセレクタ５０２とを有するものとして表される。
【０７９２】
これに対して、セレクタ１２０8，１２０9，１２０10の後段に受信値及び事前確率情報選択回路１５４を設ける場合には、復号装置３を構成する隣接する２つの要素復号器５０C，５０Dは、簡略化すると例えば図６４に示す構成として表すことができる。すなわち、要素復号器５０Cに備えられる受信値及び事前確率情報選択回路１５４は、実質的には、遅延受信値ＴＲＮと軟出力ＴＩＮＴとを選択的に出力するセレクタ５０３と、軟出力ＴＩＮＴと値が“０”である事前確率情報とを選択的に出力するセレクタ５０４とを有するものとして表される。この場合、要素復号器５０Dは、前段の要素復号器５０Cにおけるセレクタ５０３から出力された遅延受信値ＲＮを受信値Ｒとして入力するとともに、セレクタ５０４から出力された軟出力ＩＮＴを外部情報又はインターリーブデータＥＸＴとして入力し、さらに、遅延受信値ＴＲＮを入力することになる。この場合、受信値及び事前確率情報選択回路１５４は、セレクタ５０３，５０４とともに、インターリーバ１００の内部に備えられてもよい。
【０７９３】
このように、要素復号器５０は、受信値及び事前確率情報選択回路１５４を設ける位置について限定されるものではない。ただし、図６４に示すように、前段の要素復号器によって、次段の要素復号器における軟出力復号に必要な情報を選択する構成は、２つの要素復号器の間で遅延させた受信値を別途入出力する必要があることから、ピン数を多く要することになる。
【０７９４】
４−２  受信値の遅延機能
上述した受信データ及び遅延用記憶回路１５５及びインターリーバ１００に関する特徴である。
【０７９５】
例えば、符号化装置１がＰＣＣＣ又はＴＴＣＭによる符号化を行うものであった場合には、先に図３に示したように、軟出力復号を行うために必要な情報として、受信値が入力される必要がある。また、例えば、符号化装置１がＳＣＣＣ又はＳＣＴＣＭによる符号化を行うものであった場合には、先に図５に示したように、内符号の軟出力復号を行うために必要な情報として、受信値が入力される必要がある。
【０７９６】
そこで、要素復号器５０は、上述したように、受信データ及び遅延用記憶回路１５５を備えることによって、復号の対象とする復号受信値ＴＳＲ以外の受信値を含めた全ての受信値ＴＲを記憶し、少なくとも軟出力復号回路９０が要する処理時間と同時間だけ遅延させるとともに、インターリーバ１００によって、受信値ＴＲ又は遅延受信値ＳＤＲのうちのいずれか一方であるデータＴＤＩを、少なくとも当該インターリーバ１００が要する処理時間と同時間だけ遅延させる、すなわち、インターリーブ長分だけ遅延させる。
【０７９７】
このようにすることによって、復号装置３は、外部にＲＡＭやＦＩＦＯ（First In First Out）等の遅延用の回路を備える必要がないことから、回路規模を削減することができ、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を、同一配線のＬＳＩからなる要素復号器５０を複数連接するだけで繰り返し復号することが可能となる。
【０７９８】
なお、要素復号器５０は、軟出力復号回路９０が要する処理時間と同時間だけ受信値を遅延させるために、受信データ及び遅延用記憶回路１５５を用いる必要はなく、遅延用の回路を別途備えるようにしてもよい。この場合、要素復号器５０は、遅延用の回路を軟出力復号回路９０に内部に備える必要もない。
【０７９９】
すなわち、復号装置３を構成する隣接する２つの要素復号器５０E，５０Fは、簡略化すると例えば図６５に示すように、軟出力復号回路９０と、インターリーバ１００との他に、受信値を遅延させる遅延回路５１０を備えるものとして表される。勿論、この遅延回路５１０は、軟出力復号回路９０が要する処理時間と同時間だけ遅延させる記憶回路と、インターリーバ１００が要する処理時間と同時間だけ遅延させる記憶回路とに分離されていてもよい。このように、要素復号器５０は、全ての受信値を遅延させるための遅延線を備えるものであればよい。
【０８００】
勿論、要素復号器５０は、実際には、インターリーバ１００が要する処理時間と同時間の遅延を実現するために、インターリーブ１００を用いて後述する手法を採用しているが、これについては後述する。
【０８０１】
４−３  復号受信値選択機能
上述した復号受信値選択回路７０に関する特徴である。復号受信値選択回路７０は、上述したように、任意の符号の復号を行うために設けられるものである。
【０８０２】
軟出力復号を行うために必要とされる受信値は、符号により異なる。そこで、要素復号器５０は、復号受信値選択回路７０を備えることによって、全ての受信値ＴＲの中から、復号の対象とする受信値ＴＳＲを符号に応じて適切に選択する。換言すれば、復号装置３を構成する隣接する２つの要素復号器５０G，５０Hは、簡略化すると例えば図６６に示すように、軟出力復号回路９０と、インターリーバ１００と、受信値を遅延させる遅延回路５１０との他に、全ての受信値を遅延させるための遅延線から、所定の信号線を選択的に取り出す復号受信値選択回路７０を備えるものとして表される。
【０８０３】
このように、遅延回路５１０に入力される受信値の中から、所定の受信値を選択的に取り出すことによって、復号装置３は、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を、同一配線のＬＳＩからなる要素復号器５０を複数連接するだけで繰り返し復号することが可能となる。
【０８０４】
４−４  復号用の記憶回路と遅延用の記憶回路の共用
上述した受信データ及び遅延用記憶回路１５５に関する特徴である。
【０８０５】
受信データ及び遅延用記憶回路１５５は、上述したように、復号に用いる受信データである選択受信値及び事前確率情報ＲＡＰと、遅延用のデータである受信値ＴＲとを、ともに記憶する。すなわち、受信データ及び遅延用記憶回路１５５は、選択受信値及び事前確率情報ＲＡＰと受信値ＴＲとを、ともに記憶することができる容量のＲＡＭを有しており、図示しない制御回路による制御の下に、各情報の書き込み及び／又は読み出しを選択的に行う。このとき、受信データ及び遅延用記憶回路１５５は、Ｉα算出回路１５８にて用いる受信データＤＡと、受信値ＴＲとを、同一のワードに書き込み、受信データＤＡが読み出されるタイミングに合わせて、記憶している受信値ＴＲを遅延受信値ＰＤＲとして出力する。
【０８０６】
このように、復号装置３は、記憶する対象の用途が異なる記憶回路の共用を図ることで、回路規模を削減することができ、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を、同一配線のＬＳＩからなる要素復号器５０を複数連接するだけで繰り返し復号することが可能となる。
【０８０７】
４−５  フレーム先頭情報の遅延機能
上述した受信データ及び遅延用記憶回路１５５に関する特徴である。
【０８０８】
エッジ検出回路８０により検出したフレームの先頭を示すエッジ信号ＴＥＩＬＳは、インターリーブの開始位置を示すものである。そのため、インターリーバ１００は、軟出力復号回路９０による軟出力復号の結果得られる情報が入力されるのと同期して、エッジ信号ＴＥＩＬＳに相当する信号が入力される必要がある。そのため、エッジ信号ＴＥＩＬＳは、軟出力復号回路９０が要する処理時間と同時間だけ遅延される必要がある。
【０８０９】
そこで、要素復号器５０は、上述したように、受信データ及び遅延用記憶回路１５５を備えることによって、軟出力復号回路９０に対して、復号する情報のフレーム先頭にエッジ信号ＴＥＩＬＳを同期させて入力し、軟出力復号回路９０が要する処理時間と同時間だけ遅延させる。このとき、受信データ及び遅延用記憶回路１５５は、Ｉα算出回路１５８にて用いる受信データＤＡと、エッジ信号ＴＥＩＬＳとを、同一のワードに書き込み、受信データＤＡが読み出されるタイミングに合わせて、記憶しているエッジ信号ＴＥＩＬＳを遅延エッジ信号ＰＤＩＬとして出力する。
【０８１０】
このようにすることによって、復号装置３は、外部にエッジ信号を遅延させるための遅延用の回路を備える必要がなく、さらに、遅延用の回路と受信データの記憶用の回路とを共用できることから、回路規模の削減と利便の向上を図ることができ、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を、同一配線のＬＳＩからなる要素復号器５０を複数連接するだけで繰り返し復号することが可能となる。
【０８１１】
なお、要素復号器５０は、エッジ信号を遅延させるために、受信データ及び遅延用記憶回路１５５を用いる必要はなく、遅延用の回路を軟出力復号回路９０の内部に別途備えるようにしてもよい。すなわち、要素復号器５０は、エッジ信号を遅延させるための遅延線を備えるものであればよい。
【０８１２】
また、要素復号器５０は、復号する情報のフレーム長が軟出力復号回路９０が要する処理時間よりも大きい場合には、復号遅延を計数する図示しないカウンタに基づいて、エッジ信号を遅延又は生成してインターリーバ１００に出力するようにしてもよい。
【０８１３】
４−６  軟出力復号回路又はインターリーバ単体動作機能
上述したセレクタ１２０4，１２０7に関する特徴であり、付随的に、上述したセレクタ１２０3，１２０5，１２０6にも関する特徴である。
【０８１４】
要素復号器５０は、符号化装置１による符号を繰り返し復号する際の要素符号化器に対応するものであることは上述した通りであるが、このような用途以外にも、軟出力復号回路９０又はインターリーバ１００の機能のみを果たすような動作モードを切り替える機能を有する。すなわち、要素復号器５０は、上述したように、制御回路６０により動作モード情報ＣＢＦを生成し、この動作モード情報ＣＢＦに基づいて、セレクタ１２０3，１２０4，１２０5，１２０6，１２０7による選択動作を行わせることによって、軟出力復号回路９０及びインターリーバ１００が、それぞれ、通常の軟出力復号処理及びインターリーブ処理を行うモードと、軟出力復号回路９０のみが通常の軟出力復号処理を行うモードと、インターリーバ１００のみが通常のインターリーブ処理を行うモードとを実現する。
【０８１５】
具体的には、セレクタ１２０3は、上述したように、動作モード情報ＣＢＦに基づいて、受信値ＴＲと、軟出力復号回路９０から供給される遅延受信値ＳＤＲとのうち、いずれか一方を選択する。すなわち、要素復号器５０は、このセレクタ１２０3によって、インターリーバ１００に入力される受信値として、軟出力復号回路９０による軟出力復号処理又は軟出力復号回路９０が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定することができる。
【０８１６】
また、セレクタ１２０4は、上述したように、動作モード情報ＣＢＦに基づいて、外部情報又はインターリーブデータＴＥＸＴと、セレクタ１２０2から供給されるデータＴＤＬＸとのうち、いずれか一方を選択する。すなわち、要素復号器５０は、このセレクタ１２０4によって、インターリーバ１００に入力される外部情報又は軟出力として、軟出力復号回路９０による軟出力復号処理又は軟出力復号回路９０が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定することができる。
【０８１７】
さらに、セレクタ１２０5は、上述したように、動作モード情報ＣＢＦに基づいて、エッジ検出回路８０から供給されるエッジ信号ＴＥＩＬＳと、軟出力復号回路９０から供給される遅延エッジ信号ＳＤＩＬＳとのうち、いずれか一方を選択する。すなわち、要素復号器５０は、このセレクタ１２０5によって、インターリーバ１００に入力されるエッジ信号として、軟出力復号回路９０による軟出力復号処理又は軟出力復号回路９０が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定することができる。
【０８１８】
さらにまた、セレクタ１２０6は、上述したように、動作モード情報ＣＢＦに基づいて、軟出力復号回路９０から供給される遅延受信値ＳＤＲと、インターリーバ１００から供給されるインターリーブ長遅延受信値ＩＤＯとのうち、いずれか一方を選択する。すなわち、要素復号器５０は、このセレクタ１２０6によって、出力すべき受信値として、インターリーバ１００によるインターリーブ処理又はインターリーバ１００が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定することができる。
【０８１９】
また、セレクタ１２０7は、上述したように、動作モード情報ＣＢＦに基づいて、インターリーバ１００から供給されるインターリーバ出力データＩＩＯと、セレクタ１２０2から供給されるデータＴＤＬＸとのうち、いずれか一方を選択する。すなわち、要素復号器５０は、このセレクタ１２０7によって、出力すべき外部情報又は軟出力として、インターリーバ１００によるインターリーブ処理又はインターリーバ１００が要する処理時間と同時間の遅延を行ったものを用いるか否かを決定することができる。
【０８２０】
このようにすることによって、要素復号器５０は、例えば、軟出力復号処理のみが必要とされるモードの場合には、軟出力復号回路９０のみを動作させることができ、一方、インターリーブ処理のみが必要とされるモードの場合には、インターリーバ１００のみを動作させることができる。
【０８２１】
また、要素復号器５０は、インターリーバ１００のみが通常のインターリーブ処理を行うモードの場合には、符号化装置として用いることもできる。これは、符号化装置における要素符号化器は、通常、遅延素子と組み合わせ回路とからなり、いわゆるＦＰＧＡ等により容易に実現することができるためである。したがって、要素復号器５０は、例えば、先に図２に示した符号化装置１’を実現する場合には、例えば制御回路６０等により畳み込み符号化器１２，１４を実現することができる。また、要素復号器５０は、上述したように、インターリーバ１００が遅延回路としての機能を併有することから、符号化装置１’におけるインターリーバ１３と遅延器１１の機能をインターリーバ１００により実現することができる。同様に、要素復号器５０は、先に図４に示した符号化装置１’’のようなＳＣＣＣによる符号化を行う符号化装置も容易に実現することができる。
【０８２２】
このように、要素復号器５０は、動作モードを切り替えることができ、繰り返し復号以外にも、豊富な利用用途と優れた利便を提供することができる。
【０８２３】
なお、要素復号器５０は、セレクタ１２０3，１２０4，１２０5，１２０6，１２０7のみで動作モードを切り替えるのではなく、他のセレクタを用いるといったように、別の構成で多種の動作モードを実現するようにしてもよい。
【０８２４】
４−７  遅延モード切り替え機能
上述したセレクタ１２０2及びインターリーバ１００に関する特徴である。
【０８２５】
繰り返し復号は、先に図３又は図５に示したように、符号化装置１における要素符号化器の数と同数の要素復号器の組み合わせをもって、１回の復号となる。
すなわち、繰り返し復号は、少なくとも２つ以上の要素復号器を１組とし、１回の復号を行う。そして、繰り返し復号は、繰り返し回数を複数とすることで、最終的な復号結果を得る。
【０８２６】
ここで、各種符号に応じた最適な繰り返し回数を決定するには、通常、繰り返し回数を変更した実験を行う必要がある。この場合、繰り返し回数に応じた数の要素復号器を連接することにより複数の復号装置を構成すれば実験を行うこともできる。また、任意の繰り返し回数の繰り返し復号を行うことが可能な数の要素復号器を連接して１つの復号装置を構成し、この繰り返し回数以下の所望の繰り返し回数に対応する要素復号器からタップを引き出すことによっても、実験を行うことは可能である。
【０８２７】
しかしながら、前者のような実験を行うには、膨大な数の復号装置を構成する必要があり、多大な労力を要することが考えられる。また、後者のような実験を行う場合にも、復号装置の回路規模が増大する他、繰り返し回数に応じて復号遅延が変化することから、繰り返し回数の変化による復号結果の比較を行うには望ましくない。
【０８２８】
そこで、要素復号器５０は、上述したように、制御回路６０により動作モード情報ＣＢＦを生成し、この動作モード情報ＣＢＦに基づいて、セレクタ１２０2による選択動作を行わせるとともに、インターリーバ１００によるアドレス制御を行わせることによって、入力したデータを、少なくとも軟出力復号回路９０が要する処理時間と同時間の遅延、少なくともインターリーバ１００が要する処理時間と同時間の遅延、又は、少なくとも軟出力復号回路９０及びインターリーバ１００が要する処理時間と同時間の遅延をさせる複数の遅延モードを実現する。
【０８２９】
具体的には、セレクタ１２０2は、上述したように、動作モード情報ＣＢＦが、少なくとも軟出力復号回路９０が要する処理時間と同時間の遅延、少なくともインターリーバ１００が要する処理時間と同時間の遅延、又は、少なくとも軟出力復号回路９０及びインターリーバ１００が要する処理時間と同時間の遅延、のいずれかを行うべき遅延モードを示すものであった場合には、遅延外部情報ＳＤＥＸを選択して出力し、動作モード情報ＣＢＦが、少なくとも軟出力復号回路９０及び／又はインターリーバ１００による遅延を行わず、軟出力復号回路９０及び／又はインターリーバ１００による処理を行う通常モードを示すものであった場合には、データＴＬＸ、すなわち、軟出力復号回路９０による復号結果を選択して出力する。さらに換言すれば、要素復号器５０は、このセレクタ１２０2によって、外部情報又は軟出力に対して、少なくとも軟出力復号回路９０及び／又はインターリーバ１００が要する処理時間と同時間の遅延を行うか否かを決定することができる。
【０８３０】
また、インターリーバ１００は、上述したように、遅延モードを示す動作モード情報ＣＢＦを入力すると、アドレス制御を行うことによって、見かけ上、遅延回路として機能することができる。これについては、後述する。
【０８３１】
このようにすることによって、復号装置３としては、考えられる繰り返し回数の繰り返し復号を行うことが可能な数の要素復号器を連接して構成すれば、任意の繰り返し回数の繰り返し復号を行うことが可能となる。例えば、符号化装置１が先に図２又は図４に示した符号化装置１’，１’’であって、２００個の要素復号器を連接して復号装置３を構成した場合、この復号装置３は、繰り返し回数が最高で１００回の繰り返し復号を行うことができる。この復号装置３において、繰り返し回数が２０回の繰り返し復号を行う場合には、先頭から４０個目の要素復号器は、通常の軟出力復号処理及びインターリーブ処理を行い、残りの１６０個の要素復号器は、少なくとも軟出力復号回路９０及びインターリーバ１００が要する処理時間と同時間の遅延を行う遅延モードの動作を行えばよい。
【０８３２】
このように、復号装置３は、複数の遅延モードを有し、これらの遅延モードを切り替えて用いることによって、同一配線のＬＳＩからなる要素復号器５０を複数連接するだけで、全体の復号遅延を変化させることなく、繰り返し回数を変更した繰り返し復号を行うことが可能となり、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を、所望の繰り返し回数で繰り返し復号することが可能となる。
【０８３３】
なお、要素復号器５０は、セレクタ１２０2のみで遅延モードを切り替えるのではなく、例えば“４−６”に示したように、軟出力復号回路９０又はインターリーバ１００を単体動作させるために、動作モード情報ＣＢＦにより選択動作を行うセレクタ１２０4，１２０7、さらには付随的に、セレクタ１２０3，１２０5，１２０6といった複数のセレクタを利用することで、多種の遅延モードを実現するようにしてもよい。
【０８３４】
４−８  次段情報生成機能
上述した制御回路６０及びインターリーバ１００における制御回路４００に関する特徴である。
【０８３５】
複数の要素復号器を連接して復号装置３を構成した場合、各要素復号器には、符号に関する各種情報が与えられる必要がある。この各種情報としては、終結情報としての終結時刻及び終結ステート、消去情報としてのパンクチャパターン、及び、フレームの先頭情報がある。これらの情報を各要素復号器に対して与えるためには、外部の制御回路等により必要な情報を生成することが考えられるが、部品点数の増加や基板面積の増大を招くことになる。
【０８３６】
そこで、要素復号器５０は、フレームの先頭情報及びインターリーブ長といった情報を把握することができるインターリーバ１００を利用することによって、次段の要素復号器に必要な情報を生成して出力する。すなわち、要素復号器５０は、上述したように、制御回路６０によって、静的な情報である終結位置情報ＣＮＦＴと、終結期間情報ＣＮＦＬと、終結ステート情報ＣＮＦＤと、パンクチャ周期情報ＣＮＥＬと、パンクチャパターン情報ＣＮＥＰとを生成する。そして、要素復号器５０は、制御回路６０により生成されるこれらの終結位置情報ＣＮＦＴと、終結期間情報ＣＮＦＬと、終結ステート情報ＣＮＦＤと、パンクチャ周期情報ＣＮＥＬと、パンクチャパターン情報ＣＮＥＰとがインターリーバ１００に対して入力されると、インターリーバ１００における制御回路４００によって、これらの情報に基づいて、終結時刻情報ＩＧＴと、終結ステート情報ＩＧＳと、消去位置情報ＩＧＥと、インターリーバ無出力位置情報ＩＮＯとを生成する。そして、インターリーバ１００は、制御回路４００による制御の下に、制御回路６０から情報が入力されてからインターリーブ長分の時間の経過後に、生成した終結時刻情報ＩＧＴ、終結ステート情報ＩＧＳ、消去位置情報ＩＧＥ、インターリーバ無出力位置情報ＩＮＯを出力する。また、インターリーバ１００は、セレクタ１２０5から供給されるインターリーブ開始位置信号ＴＩＳを、インターリーブ長分、すなわち、インターリーバ１００が要する処理時間と同時間だけ遅延させて遅延インターリーブ開始位置信号ＩＤＳを生成して出力する。
【０８３７】
このようにすることによって、要素復号器５０は、生成した終結時刻情報ＩＧＴ、終結ステート情報ＩＧＳ、消去位置情報ＩＧＥ、インターリーバ無出力位置情報ＩＮＯ、及び、遅延インターリーブ開始位置信号ＩＤＳを、フレームの先頭に同期させて出力することが容易に可能となる。
【０８３８】
このように、復号装置３は、各種情報を生成するための制御回路を外部に備える必要がなく、部品点数の削減を図ることができ、ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ又はＳＣＴＣＭといった任意の符号を、同一配線のＬＳＩからなる要素復号器５０を複数連接するだけで繰り返し復号することができる。
【０８３９】
なお、要素復号器５０は、インターリーバ１００における制御回路４００によって、各種情報を生成してフレームの先頭に同期させて出力するのではなく、インターリーブ開始位置信号ＴＩＬＳに同期させて各種情報を生成するようにしてもよい。すなわち、復号装置３は、次段の要素復号器に必要な情報を前段の要素復号器において生成するのではなく、各要素復号器が終結情報及び消去情報といった各種情報を生成する制御回路を備え、入力されたデータのフレームの先頭に同期させて、これらの情報を生成するようにしてもよい。
【０８４０】
４−９  システム検証機能
上述したセレクタ１２０8，１２０9，１２０10及び信号線１３０に関する特徴である。
【０８４１】
要素復号器５０は、例えば数百本といった膨大な数のピンを備えるものである。そのため、要素復号器５０を複数連接して復号装置３を構成した場合には、例えばはんだ不良等に起因した導通不良の状態が起こりやすい。
【０８４２】
そこで、要素復号器５０は、外部から入力される受信値ＴＲ、外部情報又はインターリーブデータＴＥＸＴ、消去情報ＴＥＲＳ、事前確率情報消去情報ＴＥＡＰ、終結時刻情報ＴＴＮＰ、終結ステート情報ＴＴＮＳ、及び、インターリーブ開始位置信号ＴＩＬＳのそれぞれを伝送するための信号線を束ね外部へと通じる信号線１３０を備え、この信号線１３０によりスルー信号を伝送することによって、導通検査といったシステムの検証を行う。
【０８４３】
このとき、要素復号器５０は、制御回路６０により検証モード情報ＣＴＨＲを生成し、この検証モード情報ＣＴＨＲに基づいて、セレクタ１２０8，１２０9，１２０10による選択動作を行わせることによって、システムの検証を行うための検証モードへの切り替えを行う。
【０８４４】
具体的には、セレクタ１２０8は、上述したように、検証モード情報ＣＴＨＲが検証モードを示すものであった場合には、信号線１３０により伝送されてくるスルー信号を選択し、遅延受信値ＲＮとして、次段の要素復号器において受信値Ｒが入力される端子に出力する。
【０８４５】
また、セレクタ１２０9は、上述したように、検証モード情報ＣＴＨＲが検証モードを示すものであった場合には、信号線１３０により伝送されてくるスルー信号を選択し、軟出力ＩＮＴとして、次段の要素復号器において外部情報又はインターリーブデータＥＸＴが入力される端子に出力する。
【０８４６】
さらに、セレクタ１２０10は、上述したように、検証モード情報ＣＴＨＲが検証モードを示すものであった場合には、信号線１３０により伝送されてくるスルー信号を選択し、次段終結時刻情報ＴＮＰＮ、次段終結ステート情報ＴＮＳＮ、次段消去位置情報ＥＲＳＮ、次段事前確率情報消去情報ＥＡＰＮ、及び、次段インターリーブ開始位置信号ＩＬＳＮとして、次段の要素復号器において終結時刻情報ＴＮＰ、終結ステート情報ＴＮＳ、消去情報ＴＥＲＳ、事前確率情報消去情報ＴＥＡＰ、及び、インターリーブ開始位置信号ＩＬＳが入力される端子にそれぞれ出力する。
【０８４７】
このように、復号装置３は、外部からの入力信号をそのまま外部に出力する機能を有し、検証モードの際にスルー信号を入出力することによって、導通不良箇所を容易に判別することができ、ピン数が多い要素復号器を複数連接した場合であっても、容易にシステムの検証を行うことができ、優れた利便を提供することができる。
【０８４８】
５．  軟出力復号回路に関する特徴
つぎに、軟出力復号回路９０に関する特徴毎の説明を行う。以下の特徴は、軟出力復号回路９０の機能として備えられるものであるが、特徴の概念を明確化するために、適宜簡略化した図面を用いて説明する。
【０８４９】
５−１  符号情報の持たせ方
上述した符号情報生成回路１５１に関する特徴である。要素復号器５０は、例えば先に図１４乃至図１７に示した畳み込み符号化器といった任意の要素符号化器による符号を、符号に依らず同一の構成で軟出力復号することができるものである。この目的を達成するために、要素復号器５０は、以下に示す４つの特徴を有する。
【０８５０】
５−１−１  トレリス上の全枝の入出力パターンの算出
例えば、先に図１４に示した畳み込み符号化器におけるトレリスは、一例を図１９に示したように、各ステートから次時刻におけるステートへと２本のパスが到達する構造であり、全３２本の枝を有する構造を有するものとなる。また、先に図１５に示した畳み込み符号化器におけるトレリスは、一例を図２１に示したように、各ステートから次時刻におけるステートへと４本のパスが到達する構造であり、全３２本の枝を有するものとなる。さらに、先に図１６に示した畳み込み符号化器におけるトレリスは、一例を図２３に示したように、各ステートから次時刻におけるステートへと４本のパスが到達する構造であり、全３２本の枝を有するものとなる。さらにまた、先に図１７に示した畳み込み符号化器におけるトレリスは、一例を図２５に示したように、各ステートから次時刻におけるステートへと４組のパラレルパスが到達する構造であり、全３２本の枝を有するものとなる。また、これらの畳み込み符号化器は、結線の仕方によりメモリ数が可変となるが、３２本以下の枝を有するトレリスとなる。
【０８５１】
そこで、軟出力復号回路９０は、トレリス上の枝の本数が所定の値以下となることに着目し、符号構成を考慮せず、トレリス上の枝を主体に考慮することによって、全ての枝の入出力パターンを算出し、この情報を対数尤度Ｉγ及び対数軟出力Ｉλの算出の際に用いる。具体的には、軟出力復号回路９０は、符号情報生成回路１５１によって、トレリス上の全ての枝の入出力パターンを算出し、この情報を枝入出力情報ＢＩＯとして、Ｉγ分配回路１５７及び軟出力算出回路１６１に供給する。
【０８５２】
なお、枝入出力情報ＢＩＯは、対数尤度Ｉαを算出するために、遷移元のステートから遷移先のステートへと、時間軸に沿って算出される情報である。すなわち、枝入出力情報ＢＩＯは、遷移先のステートから見て入力される枝を基準とした情報である。一方、軟出力復号回路９０においては、対数尤度Ｉβを算出するために、遷移先のステートから遷移元のステートへと、時間軸とは逆順に沿って算出される枝入出力情報を算出する必要があるが、これは、Ｉγ分配回路１５７における枝入出力情報算出回路２２３によって、枝入出力情報ＢＩとして算出される。すなわち、枝入出力情報ＢＩは、遷移元のステートから見て出力していく枝を基準とした情報である。
【０８５３】
このようにすることによって、要素復号器５０は、所定の本数以下の枝を有する任意のトレリス符号の復号を、同一の構成で行うことができる。すなわち、通常、各符号構成に応じた固有のトレリスに基づいた復号を行う必要があるところを、要素復号器５０は、トレリス上の枝に着目することによって、符号構成に依らず、任意の符号の復号を行うことができる。このとき、要素復号器５０は、要素符号化器が非線形符号であった場合にも、復号することができる。
【０８５４】
なお、ここでは、３２本以下の枝を有するトレリス構造となる符号の復号を行う場合について説明したが、要素復号器５０は、この枝の本数に限定されるものでないことはいうまでもない。
【０８５５】
以下、ここで示した手法における枝の番号付けとして、３つの具体例を示す。
【０８５６】
５−１−２  遷移元のステートと遷移先のステートとの間での番号付け
ボーゼンクラフト型の畳み込み符号化器においては、遅延素子に対して時系列にデータが保持されることから、遷移先のステートが限定される。具体的に説明するために、先に図１８に示した畳み込み符号化器を用いると、遷移元のステートが“００００”であった場合には、シフトレジスタ２０１3、シフトレジスタ２０１2及びシフトレジスタ２０１1の内容が、次時刻ではシフトレジスタ２０１4、シフトレジスタ２０１3及びシフトレジスタ２０１2の内容にそのまま移行するため、遷移先のステートは、“００００”、“０００１”に限定される。このように、ボーゼンクラフト型の畳み込み符号化器においては、メモリ数が決定された時点で遷移先のステートが決定される。そのため、ボーゼンクラフト型の畳み込み符号化器においては、符号構成に依らず、任意のステートと任意のステートとを結ぶ枝の有無を容易に求めることができる。
【０８５７】
そこで、軟出力復号回路９０は、符号情報生成回路１５１によって、遷移元のステートと遷移先のステートとを結ぶ枝に対して一意に番号付けを行う。すなわち、軟出力復号回路９０は、ボーゼンクラフト型の畳み込み符号の復号を行う場合には、トレリスの一意性を利用した枝の番号付けを行う。そして、軟出力復号回路９０は、番号付けされた枝毎の入出力パターンを算出し、この情報を時間軸に沿って求められる枝入出力情報ＢＩＯとして、Ｉγ分配回路１５７及び軟出力算出回路１６１に供給する。また、軟出力復号回路９０は、Ｉγ分配回路１５７における枝入出力情報算出回路２２３によって、少なくともメモリ数情報ＭＮ及び枝入出力情報ＢＩＯに基づいて、時間軸とは逆順に沿って求められる枝入出力情報ＢＩを算出し、Ｉβ０用Ｉγ分配回路２２４1及びＩβ１用Ｉγ分配回路２２４2に供給する。
【０８５８】
具体的には、軟出力復号回路９０は、先に図１４に示した符号化率が“１／ｎ”で表されるボーゼンクラフト型の畳み込み符号化器の復号を行う場合には、符号情報生成回路１５１によって、例えば図６７に示すように、メモリ数に応じて各枝に対して一意に番号付けを行い、時間軸に沿った枝入出力情報ＢＩＯを算出する。すなわち、軟出力復号回路９０は、符号情報生成回路１５１によって、メモリ数が“４”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“３”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行い、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ｃ）に示すように番号付けを行い、メモリ数が“１”の畳み込み符号化器の復号を行う場合には、同図（Ｄ）に示すように番号付けを行う。同図においては、例えば、ステート番号が“０”のステートへと入力される２本の各枝に“０”，“１”の番号を付し、ステート番号が“１”のステートへと入力される２本の各枝に“２”，“３”の番号を付している。
【０８５９】
一方、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、例えば図６８に示すように、メモリ数に応じて各枝に対して一意に番号付けを行い、時間軸とは逆順に沿った枝入出力情報ＢＩを算出する。すなわち、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、メモリ数が“４”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“３”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行い、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ｃ）に示すように番号付けを行い、メモリ数が“１”の畳み込み符号化器の復号を行う場合には、同図（Ｄ）に示すように番号付けを行う。同図においては、例えば、ステート番号が“０”のステートから出力していく２本の各枝に“０”，“１”の番号を付し、ステート番号が“１”のステートから出力していく２本の各枝に“２”，“３”の番号を付している。
【０８６０】
また、軟出力復号回路９０は、先に図１５に示した符号化率が“２／３”で表されるボーゼンクラフト型の畳み込み符号化器の復号を行う場合には、符号情報生成回路１５１によって、例えば図６９に示すように、メモリ数に応じて各枝に対して一意に番号付けを行い、時間軸に沿った枝入出力情報ＢＩＯを算出する。
すなわち、軟出力復号回路９０は、符号情報生成回路１５１によって、メモリ数が“３”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行う。同図においては、例えば、ステート番号が“０”のステートへと入力される４本の各枝に“０”，“１”，“２”，“３”の番号を付し、ステート番号が“１”のステートへと入力される４本の各枝に“４”，“５”，“６”，“７”の番号を付している。
【０８６１】
一方、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、例えば図７０に示すように、メモリ数に応じて各枝に対して一意に番号付けを行い、時間軸とは逆順に沿った枝入出力情報ＢＩを算出する。すなわち、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、メモリ数が“３”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行う。同図においては、例えば、ステート番号が“０”のステートから出力していく４本の各枝に“０”，“１”，“２”，“３”の番号を付し、ステート番号が“１”のステートから出力していく４本の各枝に“４”，“５”，“６”，“７”の番号を付している。
【０８６２】
このようにすることによって、軟出力復号回路９０は、符号構成に依らず、枝番号から、遷移元のステートと遷移先のステートとを一意に把握することができる。したがって、例えば、あるステートの時にある入力がされたときの枝に対する番号付けといった、符号に依存した番号付けを行った場合には、遷移元のステートと遷移先のステートとは、一意に定まる必然性はないが、軟出力復号回路９０は、トレリスの一意性を利用して、ステートに依存した枝の番号付けを行うことによって、枝番号と入出力パターンとの関係が一意に定まることから、簡易な制御で復号を行うことができる。
【０８６３】
なお、この手法による枝の番号付けの具体例としては、図６７乃至図７０に示すものが挙げられるが、遷移元のステートと遷移先のステートとを結ぶ枝に対して一意に番号付けがされていれば、具体的な番号は同図に示したものに限定されることはない。
【０８６４】
５−１−３  時間軸に沿った番号付け及び時間軸とは逆順に沿った番号付け
例えばマッシィ型といったボーゼンクラフト型の畳み込み符号化器以外のものにおいては、ボーゼンクラフト型の畳み込み符号化器のように、遅延素子に対して時系列にデータが保持されないことから、遷移先のステートが限定されることはない。具体的に説明するために、先に図２２に示した畳み込み符号化器を用いると、遷移元のステートが“０００”であった場合には、次時刻におけるシフトレジスタ２０５3の内容は、前時刻におけるシフトレジスタ２０５2の内容がそのまま移行したものではなく、また、次時刻におけるシフトレジスタ２０５2の内容は、前時刻におけるシフトレジスタ２０５1の内容がそのまま移行したものではない。そのため、遷移先のステートは、メモリ数毎には限定されず、符号構成に応じて多様となる。
【０８６５】
そこで、軟出力復号回路９０は、符号情報生成回路１５１によって、遷移先のステートから見て入力される枝を基準とした番号付けを行うとともに、番号付けされた枝毎の入出力パターンを算出し、この情報を、時間軸に沿って求められる枝入出力情報ＢＩＯとして、Ｉγ分配回路１５７及び軟出力算出回路１６１に供給する。そして、軟出力復号回路９０は、Ｉα算出回路１５８における制御信号生成回路２４０によって、符号構成に基づいて遷移元のステートを別途算出し、制御信号ＰＳＴとして加算比較選択回路２４２に供給する。また、軟出力復号回路９０は、Ｉγ分配回路１５７における枝入出力情報算出回路２２３によって、少なくとも各時刻における出力に影響を与える生成行列情報ＣＧに基づいて、遷移元のステートから見て出力していく枝を基準とした番号付けを行うとともに、番号付けされた枝毎の入出力パターンを算出し、この情報を、時間軸とは逆順に沿って求められる枝入出力情報ＢＩとして、Ｉβ０用Ｉγ分配回路２２４1及びＩβ１用Ｉγ分配回路２２４2に供給する。そして、軟出力復号回路９０は、Ｉβ算出回路１５９における制御信号生成回路２８０によって、符号構成に基づいて遷移先のステートを別途算出し、制御信号ＮＳＴとしてＩβ０用加算比較選択回路２８１及びＩβ１用加算比較選択回路２８２に供給する。
【０８６６】
具体的には、軟出力復号回路９０は、先に図１６に示した符号化率が“２／３”で表されるマッシィ型の畳み込み符号化器の復号を行う場合には、符号情報生成回路１５１によって、例えば図７１に示すように、メモリ数に応じて各枝に対する番号付けを行い、時間軸に沿った枝入出力情報ＢＩＯを算出する。すなわち、軟出力復号回路９０は、符号情報生成回路１５１によって、メモリ数が“３”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行う。同図においては、例えば、ステート番号が“０”のステートへと入力される４本の各枝に“０”，“１”，“２”，“３”の番号を付し、ステート番号が“１”のステートへと入力される４本の各枝に“４”，“５”，“６”，“７”の番号を付している。なお、ここでは、各ステートに入力される４本の枝に対する番号付けの手法の具体例については詳述しないが、軟出力復号回路９０は、例えば、入力パターンの情報と、必要に応じて遷移元のステートの情報とを用いて、各枝に対する固有の番号付けを行うことができる。
【０８６７】
一方、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、例えば図７２に示すように、メモリ数に応じて各枝に対する番号付けを行い、時間軸とは逆順に沿った枝入出力情報ＢＩを算出する。すなわち、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、メモリ数が“３”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行う。同図においては、例えば、ステート番号が“０”のステートから出力していく４本の各枝に“０”，“１”，“２”，“３”の番号を付し、ステート番号が“１”のステートから出力していく４本の各枝に“４”，“５”，“６”，“７”の番号を付している。なお、ここでは、各ステートに入力される４本の枝に対する番号付けの手法の具体例については詳述しないが、軟出力復号回路９０は、例えば入力パターンの情報のみを用いて、各枝に対する固有の番号付けを行うことができる。
【０８６８】
このように、軟出力復号回路９０は、各ステート毎に、時間軸に沿った番号付けと、時間軸とは逆順に沿った番号付けとを分けて行い、入出力パターンを算出するとともに、符号構成に基づいて遷移元のステート及び遷移先のステートを算出する。このようにすることによって、軟出力復号回路９０は、要素符号のパラメータによりトレリスの形状が変化するマッシィ型の畳み込み符号であっても、復号することが可能となる。
【０８６９】
なお、この手法による枝の番号付けの具体例としては、図７１及び図７２に示すものが挙げられるが、具体的な番号は同図に示したものに限定されることはない。また、ここでは、マッシィ型の畳み込み符号化器の復号を行う場合について説明したが、この手法は、マッシィ型の畳み込み符号以外の非線形符号を含む任意の符号に適用できるものである。勿論、この手法は、ボーゼンクラフト型の畳み込み符号にも適用できるものである。
【０８７０】
５−１−４  トレリス全体の一意性に基づく番号付け
符号における入力ビット数がメモリ数以下の場合には、トレリス上における各ステートから次時刻における全てのステートへとパスが到達するトレリス構造となる場合がある。すなわち、トレリスが、各ステートから次時刻における全てのステートへとパスが到達する構造を有する場合には、符号構成に依らず、一意に遷移元のステート番号と遷移先のステート番号とを把握することができる。
【０８７１】
そこで、軟出力復号回路９０は、符号情報生成回路１５１によって、トレリス全体の構造の一意性に基づいて、当該トレリス全体を考慮した全ての枝に対する番号付けを行う。そして、軟出力復号回路９０は、番号付けされた枝毎の入出力パターンを算出し、この情報を時間軸に沿って求められる枝入出力情報ＢＩＯとして、Ｉγ分配回路１５７及び軟出力算出回路１６１に供給する。また、軟出力復号回路９０は、Ｉγ分配回路１５７における枝入出力情報算出回路２２３によって、少なくともメモリ数情報ＭＮ及び枝入出力情報ＢＩＯに基づいて、時間軸とは逆順に沿って求められる枝入出力情報ＢＩを算出し、Ｉβ０用Ｉγ分配回路２２４1及びＩβ１用Ｉγ分配回路２２４2に供給する。
【０８７２】
具体的には、軟出力復号回路９０は、先に図１７に示した符号化率が“３／３”で表されるマッシィ型の畳み込み符号化器の復号を行う場合には、符号情報生成回路１５１によって、例えば図７３に示すように、メモリ数に応じて各枝に対して一意に番号付けを行い、時間軸に沿った枝入出力情報ＢＩＯを算出する。すなわち、軟出力復号回路９０は、符号情報生成回路１５１によって、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“１”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行う。同図（Ａ）においては、例えば、ステート番号が“０”のステートへと入力される８本の各枝を２本ずつ束ねて得られる４組の各枝に“０，１”，“２，３”，“４，５”，“６，７”の番号を付し、ステート番号が“１”のステートへと入力される８本の各枝を２本ずつ束ねて得られる４組の各枝に“８，９”，“１０，１１”，“１２，１３”，“１４，１５”の番号を付している。なお、ここでは、各ステートに入力される複数組の枝に対する番号付けの手法、及び、１組の枝における各パラレルパスに対する番号付けの手法の具体例については詳述しないが、軟出力復号回路９０は、例えば、生成行列情報ＣＧに基づく場合分けを行い、各場合において、入力パターンの情報と遷移元のステートの情報とを用いることによって、各枝に対する固有の番号付けを行うことができる。
【０８７３】
一方、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、例えば図７４に示すように、メモリ数に応じて各枝に対して一意に番号付けを行い、時間軸とは逆順に沿った枝入出力情報ＢＩを算出する。すなわち、軟出力復号回路９０は、枝入出力情報算出回路２２３によって、メモリ数が“２”の畳み込み符号化器の復号を行う場合には、同図（Ａ）に示すように番号付けを行い、メモリ数が“１”の畳み込み符号化器の復号を行う場合には、同図（Ｂ）に示すように番号付けを行う。同図（Ａ）においては、例えば、ステート番号が“０”のステートから出力していく８本の各枝を２本ずつ束ねて得られる４組の各枝に“０，１”，“２，３”，“４，５”，“６，７”の番号を付し、ステート番号が“１”のステートから出力していく８本の各枝を２本ずつ束ねて得られる４組の各枝に“８，９”，“１０，１１”，“１２，１３”，“１４，１５”の番号を付している。なお、ここでは、各ステートに入力される複数組の枝に対する番号付けの手法、及び、１組の枝における各パラレルパスに対する番号付けの手法の具体例については詳述しないが、軟出力復号回路９０は、例えば、生成行列情報ＣＧに基づく場合分けを行い、各場合において、入力パターンの情報と遷移元のステートの情報とを用いることによって、各枝に対する固有の番号付けを行うことができる。
【０８７４】
このように、軟出力復号回路９０は、トレリスが、各ステートから次時刻における全てのステートへとパスが到達するトレリス構造を有する場合には、当該トレリス全体の構造の一意性に基づいて、全ての枝に対する番号付けを行うことによって、符号構成に依らず、枝番号から、遷移元のステートと遷移先のステートとを一意に把握することができる。したがって、軟出力復号回路９０は、一意に遷移元のステート番号と遷移先のステート番号とを把握でき、簡易な制御で復号を行うことができる。
【０８７５】
なお、この手法による枝の番号付けの具体例としては、図７３及び図７４に示すものが挙げられるが、遷移元のステートと遷移先のステートとを結ぶ枝に対して一意に番号付けがされていれば、具体的な番号は同図に示したものに限定されることはない。
【０８７６】
５−２  終結情報の入力方法
上述した終結情報生成回路１５３に関する特徴である。ＰＣＣＣ、ＳＣＣＣ、ＴＴＣＭ及びＳＣＴＣＭによる符号を繰り返し復号する場合には、終結処理が必須となる。そこで、要素復号器５０は、以下に示す２つの手法により終結情報を生成する。
【０８７７】
５−２−１  入力ビット数分の情報の終結期間分の入力
上述したように、ボーゼンクラフト型の畳み込み符号化器においては、遷移先のステートが限定される。そこで、軟出力復号回路９０は、上述したように、ボーゼンクラフト型の畳み込み符号を終結する場合には、終結情報として、畳み込み符号化器に対する入力ビット数分の情報を終結期間分だけ入力することによって、終結ステートを明示する。
【０８７８】
具体的には、入力ビット数が“１”であり、メモリ数が“２”のボーゼンクラフト型の畳み込み符号化器による符号を“００”で表されるステートへ終結する場合には、軟出力復号回路９０は、終結情報生成回路１５３によって、例えば図７５に示すように、入力ビット数分である１ビットの“０”を終結ステート情報ＴＳＭとして１タイムスロットで生成し、メモリ数分である２タイムスロット分だけ終結ステート情報ＴＳＭを生成することによって、“００”という終結ステートを明示することができる。
【０８７９】
このようにすることによって、要素復号器５０は、符号化率がｋ／ｎで表される任意のボーゼンクラフト型の畳み込み符号の終結処理を行うことができる。要素復号器５０は、終結情報を入力するためのピンを最小限に抑えた構成とすることができ、例えば終結パターンが長くなり連続した終結処理が必要な場合にも、終結情報を適切に生成することができ、終結情報の入力の不整合を回避することができる。
【０８８０】
５−２−２  終結ステートを示す情報の１タイムスロットでの入力
上述したように、例えばマッシィ型の畳み込み符号化器といったボーゼンクラフト型の畳み込み符号化器以外の要素符号化器においては、ボーゼンクラフト型の畳み込み符号化器のように、遷移先のステートが限定されることはない。そのため、ボーゼンクラフト型の畳み込み符号以外の符号を終結する場合には、終結情報として、入力ビット数分の情報を終結期間分だけ入力することはできない。
【０８８１】
そこで、軟出力復号回路９０は、上述したように、終結情報として、終結ステートを示す情報を１タイムスロットで入力することによって、終結ステートを明示する。
【０８８２】
具体的には、入力ビット数が“１”であり、メモリ数が“２”のマッシィ型の畳み込み符号化器による符号を“００”で表されるステートへ終結する場合には、軟出力復号回路９０は、終結情報生成回路１５３によって、例えば図７６に示すように、終結ステートを示す２ビットの“００”を終結ステート情報ＴＳＭとして１タイムスロットで生成することによって、“００”という終結ステートを明示することができる。
【０８８３】
このようにすることによって、要素復号器５０は、符号構成に応じてトレリスの構造が変化するマッシィ型の畳み込み符号を含むいかなるトレリス符号であっても終結処理を行うことができる。勿論、要素復号器５０は、この手法を用いて、ボーゼンクラフト型の畳み込み符号の終結処理を行うこともできる。また、この手法は、例えばいわゆるビタビ復号といった軟出力復号以外の復号にも適用可能なものである。
【０８８４】
５−３  消去位置の処理
上述した受信値及び事前確率情報選択回路１５４に関する特徴である。
【０８８５】
軟出力復号においては、通常、少なくとも対数尤度Ｉγの算出時まで、パンクチャ等により符号出力が存在しない位置を示す情報を別途保持しておく必要があり、この情報を保持する記憶回路を備える等の対処が必要であった。
【０８８６】
そこで、軟出力復号回路９０は、上述したように、受信値及び事前確率情報選択回路１５４によって、内部消去情報生成回路１５２から供給される内部消去位置情報ＩＥＲＳに基づいて、符号出力が存在しない位置を尤度が“０”のシンボルに置き換える。すなわち、軟出力復号回路９０は、符号出力が存在しない位置に相当するビットが“０”であるか“１”であるかの確率が“１／２”であるものとすることによって、復号動作に影響を与えることなく、消去されていることに等価な状況を生成する。
【０８８７】
このようにすることによって、要素復号器５０は、符号出力が存在しない位置を示す情報を保持する記憶回路を別途備える必要がないことから、回路規模の削減を図ることができる。
【０８８８】
５−４  対数尤度Ｉγの算出及び分配
上述したＩγ算出回路１５６及びＩγ分配回路１５７に関する特徴である。上述したように、要素復号器５０は、例えば先に図１４乃至図１７に示した畳み込み符号化器といった任意の要素符号化器による符号を、符号に依らず同一の構成で軟出力復号することができるものである。この目的を達成するために、要素復号器５０は、対数尤度Ｉγの算出及び分配に関し、以下に示す４つの特徴を有する。
【０８８９】
５−４−１  全入出力パターン分の対数尤度Ｉγの算出・分配
軟出力復号回路９０は、任意の符号の復号を実現するために、Ｉγ算出回路１５６によって、あり得る全ての入出力パターン分の対数尤度Ｉγを算出し、Ｉγ分配回路１５７によって、符号構成に応じて決定される入出力パターンに応じて分配する。
【０８９０】
ここで、先に図１４乃至図１７に示した畳み込み符号化器を復号する場合について考える。これらの各畳み込み符号化器におけるトレリスは、３２本以下の枝を有する構造となり、多くとも３２通りの入出力パターンを有するものとなる。
そこで、軟出力復号回路９０は、図７７に概略を示すように、Ｉγ算出回路１５６における情報・符号Ｉγ算出回路２２１によって、３２通りの入出力パターンの全てを算出する。なお、同図において、“Ｉγ（００／０００）”は、要素符号化器における入力データ／出力データが“００／０００”である枝に対応する対数尤度Ｉγを示している。そして、軟出力復号回路９０は、符号構成に応じて決定される入出力パターンに応じて、上述したＩγ分配回路１５７におけるＩα用Ｉγ分配回路２２４3、Ｉβ０用Ｉγ分配回路２２４1又はＩβ１用Ｉγ分配回路２２４2のそれぞれに相当する３２個のセレクタ５２０1，５２０2，・・・，５２０32のそれぞれによって、３２通りの対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）の中から一の対数尤度Ｉγを選択し、選択されて得られた３２通りの対数尤度Ｉγに対して所定の処理を施した後、各枝番号０，１，・・・，３１に相当する対数尤度Ｉγ（０），Ｉγ（１），・・・，Ｉγ（３１）として分配して出力する。
【０８９１】
このようにすることによって、要素復号器５０は、所定の本数以下の枝を有する任意のトレリス符号の復号を、同一の構成で行うことができる。特に、この手法は、入出力パターンが少なく、トレリス上の枝の本数が多い場合には有効なものとなる。
【０８９２】
５−４−２  少なくとも一部の入出力パターン分の対数尤度Ｉγの算出・分配ところで、“５−４−１”に示した手法の場合、Ｉγ分配回路１５７におけるＩα用Ｉγ分配回路２２４3、Ｉβ０用Ｉγ分配回路２２４1又はＩβ１用Ｉγ分配回路２２４2は、３２通りの信号から一の信号を選択する、すなわち、３２対１の選択を行うセレクタを少なくとも３２個有することになり、回路規模が膨大なものとなる可能性がある。
【０８９３】
そこで、軟出力復号回路９０は、Ｉγ算出回路１５６によって、３２通りの入出力パターンの全てを算出するのではなく、少なくとも一部の入出力パターン分の対数尤度Ｉγを算出し、Ｉγ分配回路１５７によって、所望の対数尤度Ｉγを選択した後、選択した各対数尤度Ｉγを加算する。
【０８９４】
具体的に説明するために、ここでも、先に図１４乃至図１７に示した畳み込み符号化器を復号する場合について考える。この場合、図１４に示した畳み込み符号化器は、多くとも１６通りの入出力パターンを有し、図１５に示した畳み込み符号化器は、多くとも３２通りの入出力パターンを有し、図１６に示した畳み込み符号化器は、多くとも８通りの入出力パターンを有し、図１７に示した畳み込み符号化器は、多くとも１６通りの入出力パターンを有する。ここで、最も入出力パターンが多い図１５に示した畳み込み符号化器は、多くとも４通りの入力パターンと、多くとも８通りの出力パターンを有する。そこで、軟出力復号回路９０は、図７８に概略を示すように、Ｉγ算出回路１５６における情報・符号Ｉγ算出回路２２１によって、４通りの入力パターンと、８通りの出力パターンとに応じた対数尤度Ｉγを算出する。そして、軟出力復号回路９０は、符号構成に応じて決定される入出力パターンに応じて、Ｉγ分配回路１５７におけるセレクタ５３０1によって、４通りの入力パターンに対応する４つの対数尤度Ｉγの中から一の対数尤度Ｉγを選択するとともに、Ｉγ分配回路１５７におけるセレクタ５３０2によって、８通りの入力パターンに対応する８個の対数尤度Ｉγの中から一の対数尤度Ｉγを選択し、Ｉγ分配回路１５７における加算器５３１によって、選択されて得られた２つの対数尤度Ｉγを加算し、所定の処理を施した後、枝番号に相当する対数尤度Ｉγとして分配して出力する。Ｉγ分配回路１５７は、このような２つのセレクタ５３０1，５３０2と、加算器５３１とを有する回路を多くとも３２個有することによって、上述したＩα用Ｉγ分配回路２２４3、Ｉβ０用Ｉγ分配回路２２４1又はＩβ１用Ｉγ分配回路２２４2のそれぞれを構成する。
【０８９５】
このようにすることによって、要素復号器５０は、３２対１の選択を行うセレクタといった回路規模が膨大なセレクタを備える必要がなく、４対１の選択及び８対１の選択を行うセレクタといった回路規模が少ないセレクタと加算器とを備えればよく、少ない回路規模で、所定の本数以下の枝を有する任意のトレリス符号の復号を、同一の構成で行うことができる。特に、この手法は、トレリス上の枝の本数に対して入出力パターンが多い場合には有効なものとなる。また、この手法は、例えば、符号化装置１がＴＴＣＭ又はＳＣＴＣＭによる符号化を行うものであった場合や、符号化装置１における入力データ及び出力データをシンボル単位で復号する場合等、入力ビット及び出力ビットをビット単位で分離することができない場合には、極めて有効なものとなる。
【０８９６】
５−４−３  全入出力パターン分の対数尤度Ｉγに対する１時刻毎の正規化
Ｌｏｇ−ＢＣＪＲアルゴリズムにおいては、一般に、対数尤度同士の差分値のみが結果に影響し、対数尤度の値が大きいものほど重要度が高い。
【０８９７】
しかしながら、対数尤度Ｉγは、算出される過程において、時刻の経過とともに値の分布に偏りを生じ、一定時間の経過後には、対数尤度Ｉγを算出する系が表現可能な値の範囲を超過してしまうことがある。
【０８９８】
例えば、対数尤度Ｉγをハードウェアのように正値のみを扱う系により算出する場合には、対数尤度Ｉγの値は、徐々に増大していき、一定時間の経過後には、ハードウェアが表現可能な値の範囲を超過してしまう。また、対数尤度Ｉγを浮動小数点演算を行う系のように負値のみを扱う系により算出する場合を考えると、この場合には、対数尤度Ｉγの値は、徐々に減少していき、一定時間の経過後には、ソフトウェアとして表現可能な値の範囲を超過してしまう。このように、対数尤度Ｉγが表現可能な値の範囲を超過してしまい、当該表現可能な値の範囲を超過した対数尤度Ｉγは、クリップされることになる。
【０８９９】
そこで、軟出力復号回路９０は、対数尤度Ｉγがクリップされ、適切な対数尤度同士の差分を表現することが困難となることを回避するために、対数尤度Ｉγの分布の偏りを是正するための正規化を行う。
【０９００】
具体的には、軟出力復号回路９０は、“５−４−１”に示した手法によりあり得る全ての入出力パターン分の対数尤度Ｉγを算出する場合には、以下のような正規化を行う。すなわち、軟出力復号回路９０は、Ｉγ算出回路１５６におけるＩγ正規化回路２２２によって、情報・符号Ｉγ算出回路２２１により算出された複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のうち、確率γが最大値を有するものに対応する対数尤度Ｉγを、とり得る確率の最大値に対応する対数尤度に合わせるように、各対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）に対して所定の演算を施す。
【０９０１】
具体的には、軟出力復号回路９０は、要素復号器５０が対数尤度を負値として扱う場合、すなわち、上述した定数ｓｇｎが“＋１”の場合には、図７９に概略を示すように、Ｉγ算出回路１５６におけるＩγ正規化回路２２２によって、情報・符号Ｉγ算出回路２２１により算出された複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のうち、最大値を有するものを、要素復号器５０が表現可能な最大値に合わせるように、複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のそれぞれに対して所定の値を加算する。
【０９０２】
例えば、Ｉγ正規化回路２２２は、ある時刻に算出された複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）が、それぞれ、図８０（Ａ）に示す分布を呈しているものとしたとき、同図（Ｂ）に示すように、これらの対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のうち、最大値であるプロット×で示す対数尤度Ｉγ（１１／１１１）を“０”とするように、複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のそれぞれに対して所定の値を加算する。
【０９０３】
また、軟出力復号回路９０は、要素復号器５０が対数尤度を正値として扱う場合、すなわち、上述した定数ｓｇｎが“−１”の場合には、Ｉγ算出回路１５６におけるＩγ正規化回路２２２によって、情報・符号Ｉγ算出回路２２１により算出された複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のうち、最小値を有するものを、要素復号器５０が表現可能な最小値に合わせるように、複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のそれぞれから所定の値を減算する。
【０９０４】
例えば、Ｉγ正規化回路２２２は、ある時刻に算出された複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）が、それぞれ、図８１（Ａ）に示す分布を呈しているものとしたとき、同図（Ｂ）に示すように、これらの対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のうち、最小値であるプロット○で示す対数尤度Ｉγ（００／０００）を“０”とするように、複数の対数尤度Ｉγ（００／０００），Ｉγ（０１／０００），・・・，Ｉγ（１１／１１１）のそれぞれから所定の値を減算する。
【０９０５】
軟出力復号回路９０は、Ｉγ正規化回路２２２によって、このような正規化を行った後、必要なダイナミックレンジに応じてクリッピングを行い、対数尤度ＧＡ，ＧＢ０，ＧＢ１としてＩγ分配回路１５７に供給する。
【０９０６】
要素復号器５０は、Ｉγ正規化回路２２２によって、１時刻毎にこのような正規化を行うことで、Ｉγ算出回路１５６からＩγ分配回路１５７へと供給される対数尤度ＧＡ，ＧＢ０，ＧＢ１のビット数を削減することができる。また、要素復号器５０は、値が大きく重要度の高い対数尤度がクリップされる事態を招くことがなく、適切な対数尤度同士の差分を表現することが可能となり、高精度の復号を行うことができる。
【０９０７】
なお、要素復号器５０は、Ｉγ正規化回路２２２を必ずしもＩγ算出回路１５６の内部に備える必要はない。例えば、要素復号器５０は、Ｉγ分配回路１５７の後段にＩγ正規化回路２２２を設けるようにしてもよい。勿論、この手法は、任意の符号の復号を実現する場合のみならず、固定符号を復号する場合にも有効なものである。
【０９０８】
５−４−４  少なくとも一部の入出力パターン分の対数尤度Ｉγに対する正規化
軟出力復号回路９０は、“５−４−２”に示した手法により少なくとも一部の入出力パターン分の対数尤度Ｉγを算出する場合には、以下のような正規化を行う。すなわち、軟出力復号回路９０は、Ｉγ算出回路１５６におけるＩγ正規化回路２２２によって、情報・符号Ｉγ算出回路２２１により算出された入力パターンに応じた複数の対数尤度Ｉγのうち、確率γが最大値を有するものに対応する対数尤度Ｉγを、とり得る確率の最大値に対応する対数尤度に合わせるように、各対数尤度Ｉγに対して所定の演算を施す。
【０９０９】
具体的には、軟出力復号回路９０は、要素復号器５０が対数尤度を負値として扱う場合、すなわち、上述した定数ｓｇｎが“＋１”の場合には、図８２に概略を示すように、Ｉγ算出回路１５６におけるＩγ正規化回路２２２によって、情報・符号Ｉγ算出回路２２１により算出された入力パターンに応じた複数の対数尤度Ｉγのうち、最大値を有するものを、要素復号器５０が表現可能な最大値に合わせるように、複数の対数尤度Ｉγのそれぞれに対して所定の値を加算するとともに、情報・符号Ｉγ算出回路２２１により算出された出力パターンに応じた複数の対数尤度Ｉγのうち、最大値を有するものを、要素復号器５０が表現可能な最大値に合わせるように、複数の対数尤度Ｉγのそれぞれに対して所定の値を加算し、正規化を行う。
【０９１０】
また、軟出力復号回路９０は、要素復号器５０が対数尤度を正値として扱う場合、すなわち、上述した定数ｓｇｎが“−１”の場合には、Ｉγ算出回路１５６におけるＩγ正規化回路２２２によって、情報・符号Ｉγ算出回路２２１により算出された入力パターンに応じた複数の対数尤度Ｉγのうち、最小値を有するものを、要素復号器５０が表現可能な最小値に合わせるように、複数の対数尤度Ｉγのそれぞれに対して所定の値を加算するとともに、情報・符号Ｉγ算出回路２２１により算出された出力パターンに応じた複数の対数尤度Ｉγのうち、最小値を有するものを、要素復号器５０が表現可能な最小値に合わせるように、複数の対数尤度Ｉγのそれぞれに対して所定の値を加算し、正規化を行う。
【０９１１】
すなわち、軟出力復号回路９０は、入力パターンに応じた対数尤度Ｉγと、出力パターンに応じた対数尤度Ｉγとに対して、それぞれ、正規化を行う。
【０９１２】
軟出力復号回路９０は、Ｉγ正規化回路２２２によって、このような正規化を行った後、必要なダイナミックレンジに応じてクリッピングを行い、対数尤度ＧＡ，ＧＢ０，ＧＢ１としてＩγ分配回路１５７に供給する。
【０９１３】
要素復号器５０は、Ｉγ正規化回路２２２によって、１時刻毎にこのような正規化を行うことで、最大値又は最小値を有する対数尤度Ｉγを探索する規模を小さくすることができ、処理の高速化及び回路規模の削減を図ることができる。そして、要素復号器５０は、Ｉγ算出回路１５６からＩγ分配回路１５７へと供給される対数尤度ＧＡ，ＧＢ０，ＧＢ１のビット数を削減することができ、値が大きく重要度の高い対数尤度がクリップされる事態を招くことがなく、適切な対数尤度同士の差分を表現することが可能となり、高精度の復号を行うことができる。
【０９１４】
ただし、この場合、符号構成によっては、最終的な対数尤度Ｉγの最大値又は最小値が、要素復号器５０が表現可能な最大値又は最小値に一致するとは限らないが、全ての入出力パターンが現れる場合には、“５−４−３”に示した手法による正規化と同等になることから、性能が劣化することはない。
【０９１５】
なお、要素復号器５０は、この場合においても、Ｉγ正規化回路２２２を必ずしもＩγ算出回路１５６の内部に備える必要はない。
【０９１６】
５−５  対数尤度Ｉα，Ｉβの算出
上述したＩα算出回路１５８及びＩβ算出回路１５９に関する特徴である。また、特徴によっては、Ｉγ分配回路１５７に関するものもある。要素復号器５０は、対数尤度Ｉα，Ｉβを算出するにあたって、以下に示す９つの特徴を有する。
【０９１７】
５−５−１  対数尤度Ｉαと対数尤度Ｉγとの和の算出
軟出力復号において、対数軟出力Ｉλを算出する際には、上式（５５）に示したように、対数尤度Ｉαと対数尤度Ｉγとの和を予め求める必要がある。すなわち、軟出力復号においては、通常、対数軟出力Ｉλを算出するために、対数尤度Ｉαと対数尤度Ｉγとの和を算出する回路を別途備える必要がある。そのため、対数軟出力Ｉλを算出する回路の規模が増大する虞がある。
【０９１８】
そこで、軟出力復号回路９０は、対数尤度Ｉαを算出する過程で求められる対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを、対数軟出力Ｉλの算出に流用する。具体的には、軟出力復号回路９０は、上述したように、Ｉα算出回路１５８によって、算出した対数尤度Ｉαをそのまま出力するのではなく、算出した対数尤度Ｉαと対数尤度Ｉγとの和を出力する。すなわち、Ｉα算出回路１５８は、加算比較選択回路２４１，２４２により対数尤度Ｉαを算出する過程で求められる対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを出力する。
【０９１９】
このようにすることによって、要素復号器５０は、対数軟出力Ｉλを算出するために必要となる対数尤度Ｉαと対数尤度Ｉγとの和を算出する回路を備える必要がなくなり、回路規模の削減を図ることができる。
【０９２０】
５−５−２  パラレルパスに対する前処理
例えば先に図１７に示した畳み込み符号化器による符号のように、トレリス上にパラレルパスが存在する符号を復号したい場合がある。ここで、図１７に示した畳み込み符号化器の場合を例とすると、トレリスは、先に図２５に一例を示したように、各ステートから次時刻におけるステートへと２本１組のパラレルパスが４組到達する構造となる。すなわち、この場合のトレリスは、各ステートに８本のパスが到達する構造となる。
【０９２１】
ここで、パラレルパスは、遷移元のステートが同一であり且つ遷移先のステートが同一であることに着目する。すなわち、パラレルパスは、１本のパスとして擬制できることに着目する。この点に着目することによって、軟出力復号回路９０は、トレリス上にパラレルパスが存在する符号を復号する場合には、対数尤度Ｉα，Ｉβを算出する前に、予めパラレルパスに対応する対数尤度Ｉγに対してｌｏｇ−ｓｕｍ演算を行う。具体的には、軟出力復号回路９０は、上述したＩγ分配回路１５７におけるＩβ０用パラレルパス処理回路２２５1、Ｉβ１用パラレルパス処理回路２２５2及びＩα用パラレルパス処理回路２２５3を備え、パラレルパスに対応する対数尤度Ｉγに対してｌｏｇ−ｓｕｍ演算を行い、パラレルパスを束ねる。
【０９２２】
このようにすることによって、要素復号器５０は、Ｉα算出回路１５８及びＩβ算出回路１５９の処理の負担を軽減することができ、性能を劣化することなく処理の高速化を図ることができる。
【０９２３】
なお、要素復号器５０は、Ｉγ分配回路１５７にパラレルパスを束ねる機能を持たせているが、この構成に限定される必要はない。すなわち、要素復号器５０としては、対数尤度Ｉα，Ｉβの算出前に、パラレルパスに対応する対数尤度Ｉγを束ねればよい。また、ここでは、２本のパラレルパスを１組に束ねるものとして説明しているが、例えば４本といった任意の数のパラレルパスを１組に束ねるようにしてもよい。
【０９２４】
５−５−３  加算比較選択回路の共用
要素復号器５０は、任意の符号の復号を可能とするものであるが、入力ビット数をｋとしたとき、各符号を復号するためには、対数尤度Ｉα，Ｉβを算出するために加算比較選択処理及びｌｏｇ−ｓｕｍ補正により補正項を追加する処理を行う加算比較選択回路として、各ステートに２k本のパスが到達するトレリスに対応するものを個別に備える必要がある。このような加算比較選択回路は、一般に、要素符号化器に対する入力ビット数ｋが大きい符号に対応するものほど、回路規模が増大し、処理の負担が大きくなる。
【０９２５】
ここで、先に図１４乃至図１７に示した４種類の畳み込み符号化器による符号を復号する場合を考える。この場合、図１４に示した畳み込み符号化器による符号に対応する加算比較選択処理回路としては、各ステートから次時刻におけるステートへと２1＝２本のパスが到達する構造を有するトレリスに対応するものが必要となる。また、図１５及び図１６に示した畳み込み符号化器による符号に対応する加算比較選択処理回路としては、各ステートから次時刻におけるステートへと２2＝４本のパスが到達する構造を有するトレリスに対応するものが必要となる。さらに、図１７に示した畳み込み符号化器による符号に対応する加算比較選択処理回路としては、各ステートから次時刻におけるステートへと２3＝８本のパスが到達する構造を有するトレリスに対応するものが必要となる。
【０９２６】
ところで、図１７に示した畳み込み符号化器による符号は、トレリス上にパラレルパスが存在するものである。このとき、“５−５−２”に示した手法によりパラレルパスを束ねた場合には、この符号のトレリスは、畳み込み符号化器におけるメモリ数ν＝２を用いて、各ステートから次時刻におけるステートへと２ν＝２2＝４本のパスが到達する構造を有するものと擬制することができる。
【０９２７】
そこで、軟出力復号回路９０は、要素符号化器に対する入力ビット数がｋ＝３である符号に対応する加算比較選択回路を備えず、要素符号化器に対する入力ビット数がｋ＝２＝νである符号に対応する加算比較選択回路と共用する。
【０９２８】
具体的には、軟出力復号回路９０は、Ｉα算出回路１５８における加算比較選択回路として、要素符号化器に対する入力ビット数がｋ＝１，２である符号に対応する加算比較選択回路２４１，２４２のみを備えるとともに、Ｉβ算出回路１５９における加算比較選択回路としても、要素符号化器に対する入力ビット数がｋ＝１，２である符号に対応する加算比較選択回路２８３，２８４のみを備え、要素符号化器に対する入力ビット数がｋ＝３である符号に対する処理を、加算比較選択回路２４２，２８４により行う。すなわち、軟出力復号回路９０は、要素符号化器に対する入力ビット数がｋ＝３であり且つメモリ数がν＝２＜ｋである符号であって、トレリス上にパラレルパスが存在する符号に対応する加算比較選択回路の代わりに、要素符号化器に対する入力ビット数がｋ＝２＝νである符号に対応する加算比較選択回路を共用する。
【０９２９】
このようにすることによって、要素復号器５０は、要素符号化器に対する入力ビット数がｋ＝３である符号に対応する加算比較選択回路を備える必要がなく、回路規模の削減を図ることができる。
【０９３０】
なお、ここでは、要素符号化器に対する入力ビット数がｋ＝３である符号に対応する加算比較選択回路を、要素符号化器に対する入力ビット数がｋ＝２である符号に対応する加算比較選択回路と共用する例について説明したが、要素復号器５０としては、符号構成によっては、例えば、要素符号化器に対する入力ビット数がｋ＝２である符号に対応する加算比較選択回路を、要素符号化器に対する入力ビット数がｋ＝１である符号に対応する加算比較選択回路と共用するといったように、要素符号化器に対する入力ビット数が小さい符号に対応する加算比較選択回路と共用することもできる。例えば、要素符号化器に対する入力ビット数がｋ＝３であり、各ステートから任意のステートに対して４本１組のパラレルパスが２組到達しているような符号において、これらの４本のパラレルパスを１組に束ねた場合には、要素符号化器に対する入力ビット数がｋ＝１である符号に対応する加算比較選択回路と共用することができる。すなわち、要素復号器５０は、要素符号化器に対する入力ビット数がｋ1であり且つメモリ数がν＜ｋ1である符号であって、トレリス上にパラレルパスが存在する符号に対応する加算比較選択回路を、要素符号化器に対する入力ビット数がｋ2＜ｋ1であり且つメモリ数がνである符号に対応する加算比較選択回路と共用することができるものである。
【０９３１】
５−５−４  対数軟出力Ｉλの算出用の対数尤度Ｉγの出力
さて、“５−５−２”に示した手法によりパラレルパスを束ねた場合には、Ｉα算出回路１５８及びＩβ算出回路１５９における加算比較選択回路の処理が簡易なものとなり、処理の高速化の面で有効であることは、上述した通りであるが、最終的に必要な結果である対数軟出力Ｉλを算出するためには、各パラレルパスに対応する個別のメトリックが必要となる。すなわち、軟出力復号においては、対数軟出力Ｉλを算出する際には、パラレルパスを束ねた場合の対数尤度Ｉγを、そのまま用いることはできない。
【０９３２】
そこで、軟出力復号回路９０は、トレリス上にパラレルパスが存在する符号を復号する場合であって、パラレルパスを束ねた場合には、対数軟出力Ｉλを算出するために用いる対数尤度Ｉγを別途出力する。具体的には、軟出力復号回路９０は、Ｉγ分配回路１５７におけるＩα用Ｉγ分配回路２２４3により分配して得られた対数尤度ＰＧＡを、Ｉα用パラレルパス処理回路２２５3に供給するとともに、対数尤度ＤＧＡＢとして別途出力する。
【０９３３】
このようにすることによって、要素復号器５０は、復号結果に影響を与えることなく、パラレルパスを束ねることが可能となり、結果として、Ｉα算出回路１５８及びＩβ算出回路１５９の処理の負担を軽減し、性能を劣化することなく処理の高速化を図ることが可能となる。すなわち、要素復号器５０は、パラレルパスを束ねる際には、必然的に、対数軟出力Ｉλを算出するために用いる対数尤度Ｉγを別途出力することになる。
【０９３４】
５−５−５  パラレルパスに対する対数尤度Ｉαと対数尤度Ｉγとの和の算出“５−５−１”に示したように、対数軟出力Ｉλを算出するために、対数尤度Ｉαを算出する過程で求められる対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを出力することは、回路規模の削減の面から有効であるが、トレリス上にパラレルパスが存在する符号を復号するにあたっては、“５−５−１”に示した手法により求めた対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを、そのまま出力することはできない。
【０９３５】
そこで、軟出力復号回路９０は、トレリス上にパラレルパスが存在する符号を復号する場合であって、パラレルパスを束ねた場合には、対数尤度Ｉαを算出するための加算比較選択回路とは別に、対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγを算出する回路を備え、この算出結果を対数軟出力Ｉλの算出に用いる。具体的には、軟出力復号回路９０は、Ｉα算出回路１５８におけるＩα＋Ｉγ算出回路２４３を備え、このＩα＋Ｉγ算出回路２４３によって、加算比較選択回路２４２により算出される対数尤度Ｉαと、Ｉγ分配回路１５７によりパラレルパスを束ねない状態で得られる対数尤度Ｉγとを加算し、この和を対数軟出力Ｉλの算出に用いる。
【０９３６】
このようにすることによって、要素復号器５０は、復号結果に影響を与えることなく、パラレルパスを束ねることが可能となり、結果として、Ｉα算出回路１５８及びＩβ算出回路１５９の処理の負担を軽減し、性能を劣化することなく処理の高速化を図ることが可能となる。すなわち、要素復号器５０は、パラレルパスを束ねる際には、必然的に、対数軟出力Ｉλを算出するために用いる対数尤度Ｉαと対数尤度Ｉγとの和を別途算出することになる。
【０９３７】
５−５−６  符号構成に応じた対数尤度の選択
先に“５−１−２”に示したように、ボーゼンクラフト型の畳み込み符号化器においては、遅延素子に対して時系列にデータが保持されることから、遷移先のステートが限定され、トレリスに一意性が存在する。
【０９３８】
そこで、軟出力復号回路９０は、ボーゼンクラフト型の畳み込み符号を復号する場合には、トレリスの一意性を利用して、畳み込み符号化器のメモリ数が可変となる場合にも容易に復号できる機能を備える。具体的には、軟出力復号回路９０は、先に示した図３４、図３６、図３９及び図４０には図示していないが、Ｉα算出回路１５８における加算比較選択回路２４１，２４２と、Ｉβ算出回路１５９における加算比較選択回路２８３，２８４との内部に、処理を行う対数尤度Ｉα，Ｉβを選択するセレクタを備える。
【０９３９】
例えば、先に図１４に示した畳み込み符号化器のように、メモリ数が“１”、“２”、“３”、“４”の間で可変となる畳み込み符号化器におけるトレリスの一例を、メモリ数に応じてそれぞれ、図８３（Ａ）、（Ｂ）、（Ｃ）、（Ｄ）に示す。すなわち、同図（Ａ）に示すトレリスは、メモリ数が“１”の場合の一例であり、同図（Ｂ）に示すトレリスは、メモリ数が“２”の場合の一例であり、同図（Ｃ）に示すトレリスは、メモリ数が“３”の場合の一例であり、同図（Ｄ）に示したトレリスは、メモリ数が“４”の場合の一例である。
【０９４０】
これらの４つのトレリスにおいてステート番号が“０”のステートを合わせ、各トレリスを重ねると、図８４に示すようになる。同図において、実線で示す枝は、図８３（Ａ）に示したトレリス上の枝であり、破線で示す枝は、図８３（Ｂ）に示したトレリス上の枝であり、一点鎖線で示す枝は、図８３（Ｃ）に示したトレリス上の枝であり、二点鎖線で示す枝は、図８３（Ｄ）に示したトレリス上の枝である。
【０９４１】
図８４からわかるように、ステート番号が“０”、“１”のステートに到達する枝は、４通りの枝が重なったものと、４通りの枝が互いに異なるステートから到達するものとがある。したがって、畳み込み符号化器のメモリ数を可変にした場合には、メモリ数に応じて、互いに異なるステートから到達する４本の枝のうちの１本を選択すればよい。
【０９４２】
また、ステート番号が“２”、“３”のステートに到達する枝は、３通りの枝が重なったものと、３通りの枝が互いに異なるステートから到達するものとがある。したがって、畳み込み符号化器のメモリ数を可変にした場合には、メモリ数に応じて、互いに異なるステートから到達する３本の枝のうちの１本を選択すればよい。
【０９４３】
さらに、ステート番号が“４”、“５”、“６”、“７”のステートに到達する枝は、２通りの枝が重なったものと、２通りの枝が互いに異なるステートから到達するものとがある。したがって、畳み込み符号化器のメモリ数を可変にした場合には、メモリ数に応じて、互いに異なるステートから到達する２本の枝のうちの１本を選択すればよい。
【０９４４】
また、ステート番号が“８”以降のステートに到達する枝は、図８３（Ｄ）に示した畳み込み符号化器によるもののみであることから、枝の選択動作を行う必要はない。
【０９４５】
これらのことを考慮すると、上述した１６個のｌｏｇ−ｓｕｍ演算回路２４５nを有する加算比較選択回路２４１としては、例えば図８５に概略を示すように、４つのセレクタ５４０1，５４０2，５４０3，５４０4を有し、次時刻における対数尤度ＡＬを算出する際に、前時刻において算出した対数尤度ＡＬを選択すればよいことになる。
【０９４６】
すなわち、加算比較選択回路２４１は、セレクタ５４０1によって、メモリ数情報ＭＮに基づいて、前時刻において算出された対数尤度ＡＬのうち、遷移元のステート番号が“１”であるステートに対応する対数尤度ＡＬ０１、遷移元のステート番号が“２”であるステートに対応する対数尤度ＡＬ０２、遷移元のステート番号が“４”であるステートに対応する対数尤度ＡＬ０４、遷移元のステート番号が“８”であるステートに対応する対数尤度ＡＬ０８のうちの一の対数尤度を選択する。セレクタ５４０1は、例えば、要素符号化器がメモリ数が“１”のものであった場合には、対数尤度ＡＬ０１を選択し、要素符号化器がメモリ数が“２”のものであった場合には、対数尤度ＡＬ０２を選択し、要素符号化器がメモリ数が“３”のものであった場合には、対数尤度ＡＬ０４を選択し、要素符号化器がメモリ数が“４”のものであった場合には、対数尤度ＡＬ０８を選択する。ｌｏｇ−ｓｕｍ演算回路２４５1，２４５2には、対数尤度ＡＬ００が対数尤度Ａ０として供給されるとともに、セレクタ５４０1により選択された対数尤度が対数尤度Ａ１として供給される。
【０９４７】
また、加算比較選択回路２４１は、セレクタ５４０2によって、メモリ数情報ＭＮに基づいて、前時刻において算出された対数尤度ＡＬのうち、遷移元のステート番号が“３”であるステートに対応する対数尤度ＡＬ０３、遷移元のステート番号が“５”であるステートに対応する対数尤度ＡＬ０５、遷移元のステート番号が“９”であるステートに対応する対数尤度ＡＬ０９のうちの一の対数尤度を選択する。セレクタ５４０2は、例えば、要素符号化器がメモリ数が“２”のものであった場合には、対数尤度ＡＬ０３を選択し、要素符号化器がメモリ数が“３”のものであった場合には、対数尤度ＡＬ０５を選択し、要素符号化器がメモリ数が“４”のものであった場合には、対数尤度ＡＬ０９を選択する。ｌｏｇ−ｓｕｍ演算回路２４５3，２４５4には、対数尤度ＡＬ０１が対数尤度Ａ０として供給されるとともに、セレクタ５４０2により選択された対数尤度が対数尤度Ａ１として供給される。
【０９４８】
さらに、加算比較選択回路２４１は、セレクタ５４０3によって、メモリ数情報ＭＮに基づいて、前時刻において算出された対数尤度ＡＬのうち、遷移元のステート番号が“６”であるステートに対応する対数尤度ＡＬ０６、遷移元のステート番号が“１０”であるステートに対応する対数尤度ＡＬ１０のうちの一の対数尤度を選択する。セレクタ５４０3は、例えば、要素符号化器がメモリ数が“３”のものであった場合には、ＡＬ０６を選択し、要素符号化器がメモリ数が“４”のものであった場合には、ＡＬ１０を選択する。ｌｏｇ−ｓｕｍ演算回路２４５5，２４５6には、対数尤度ＡＬ０２が対数尤度Ａ０として供給されるとともに、セレクタ５４０3により選択された対数尤度が対数尤度Ａ１として供給される。
【０９４９】
さらにまた、加算比較選択回路２４１は、セレクタ５４０4によって、メモリ数情報ＭＮに基づいて、前時刻において算出された対数尤度ＡＬのうち、遷移元のステート番号が“７”であるステートに対応する対数尤度ＡＬ０７、遷移元のステート番号が“１１”であるステートに対応する対数尤度ＡＬ１１のうちの一の対数尤度を選択する。セレクタ５４０4は、例えば、要素符号化器がメモリ数が“３”のものであった場合には、ＡＬ０７を選択し、要素符号化器がメモリ数が“４”のものであった場合には、ＡＬ１１を選択する。ｌｏｇ−ｓｕｍ演算回路２４５7，２４５8には、対数尤度ＡＬ０３が対数尤度Ａ０として供給されるとともに、セレクタ５４０4により選択された対数尤度が対数尤度Ａ１として供給される。
【０９５０】
このように、軟出力復号回路９０は、加算比較選択回路内にセレクタを備えることによって、メモリ数が可変となるボーゼンクラフト型の畳み込み符号を復号することができる。すなわち、軟出力復号回路９０は、ボーゼンクラフト型の畳み込み符号のトレリスの一意性を利用することによって、メモリ数に応じた符号のトレリスを効率よく重ねることができることから、メモリ数が可変となる符号の復号を可能とする要素復号器５０を容易に実現することができる。
【０９５１】
なお、ここでは、Ｉα算出回路１５８における加算比較選択回路２４１を例にあげて説明したが、要素復号器５０は、加算比較選択回路２４２や、Ｉβ算出回路１５９における加算比較選択回路２８３，２８４においても、同様の機能を備えるものである。
【０９５２】
また、上述した例では、最大で４対１の選択を行うセレクタを備えるものとして説明したが、トレリスの重ね方には任意性があり、この重ね方によっては、セレクタの規模を小さくすることも可能である。
【０９５３】
５−５−７  対数尤度Ｉα，Ｉβに対する正規化
対数尤度Ｉα，Ｉβは、上述した対数尤度Ｉγと同様に、算出される過程において、時刻の経過とともに値の分布に偏りを生じ、一定時間の経過後には、対数尤度Ｉα，Ｉβを算出する系が表現可能な値の範囲を超過してしまうことがある。
【０９５４】
そこで、軟出力復号回路９０は、対数尤度Ｉα，Ｉβの分布の偏りを是正するための正規化を行う。
【０９５５】
この正規化の第１の方法としては、“５−４−３”に示した対数尤度Ｉγに対する正規化方法と同様に、要素復号器５０が対数尤度を負値として扱う場合、すなわち、上述した定数ｓｇｎが“＋１”の場合には、Ｉα算出回路１５８におけるＩα正規化回路２５０，２７２及びＩβ算出回路１５９におけるＩβ０正規化回路２９１，３０８等によって、１時刻毎に、算出された複数の対数尤度Ｉα，Ｉβのうち、最大値を有するものを、要素復号器５０が表現可能な最大値に合わせるように、複数の対数尤度Ｉα，Ｉβのそれぞれに対して所定の値を加算するものが考えられる。また、正規化の第１の方法としては、要素復号器５０が対数尤度を正値として扱う場合、すなわち、上述した定数ｓｇｎが“−１”の場合には、Ｉα算出回路１５８におけるＩα正規化回路２５０，２７２及びＩβ算出回路１５９におけるＩβ０正規化回路２９１，３０８等によって、１時刻毎に、算出された複数の対数尤度Ｉα，Ｉβのうち、最小値を有するものを、要素復号器５０が表現可能な最小値に合わせるように、複数の対数尤度Ｉα，Ｉβのそれぞれから所定の値を減算するものが考えられる。
【０９５６】
この第１の方法による正規化を行うＩα算出回路１５８におけるｌｏｇ−ｓｕｍ演算回路２４５n，２５６nと、Ｉβ算出回路１５９におけるｌｏｇ−ｓｕｍ演算回路２８６n，２９２nとは、図８６に概略を示すｌｏｇ−ｓｕｍ演算回路５５０のように表すことができる。すなわち、ｌｏｇ−ｓｕｍ演算回路５５０は、対数尤度Ｉγと１時刻前に算出された対数尤度Ｉα，Ｉβとを、加算器５５１により加算し、得られたデータから補正項算出回路５５２により補正項の値を算出する。そして、ｌｏｇ−ｓｕｍ演算回路５５０は、加算器５３３によって、加算器５５１からのデータと補正項算出回路５５２からのデータとを加算し、正規化回路５５４によって、加算器５５３からのデータに基づく判定情報ＪＤに基づいて、上述した正規化を行う。正規化されたデータは、レジスタ５５５により１時刻分だけ遅延され、対数尤度Ｉα，Ｉβとして、加算器５５１に供給されるとともに、外部に出力される。
【０９５７】
ここで、対数尤度Ｉαの正規化を行う場合について説明するために、１時刻前に算出された対数尤度Ｉαと対数尤度Ｉγのダイナミックレンジを、それぞれ、ａ,ｇと表すものとすると、正規化回路５５４は、図８７に示すような正規化を行うことになる。なお、ここでは、要素復号器５０が表現可能な最大値又は最小値を“０”とする。
【０９５８】
このとき、加算器５５１により算出された対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγのダイナミックレンジは、同図に示すように、ａ＋ｇで表される。このときの対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγの最大値又は最小値をＭ１と表す。続いて、補正項算出回路５５２及び加算器５５３による処理を経て得られたｌｏｇ−ｓｕｍ演算後のデータのダイナミックレンジは、ｌｏｇ−ｓｕｍ演算によるダイナミックレンジは増加しないことから、ａ＋ｇで表される。このときのデータの最大値又は最小値をＭ２と表す。
【０９５９】
正規化回路５５４は、ｌｏｇ−ｓｕｍ演算後のデータの最大値又は最小値Ｍ２を“０”とするような正規化を行うとともに、ダイナミックレンジがａ以上の値をクリップする。このとき、正規化回路５５４は、判定情報ＪＤに基づいて、ｌｏｇ−ｓｕｍ演算後のデータに対して加算又は減算すべき値を求め、正規化を行う。また、正規化回路５５４は、対数尤度Ｉβに対しても同様の正規化を行う。
【０９６０】
軟出力復号回路９０は、このような正規化を１時刻毎に行うことによって、値が大きく重要度の高い対数尤度がクリップされる事態を招くことがなく、適切な対数尤度同士の差分を表現することが可能となり、高精度の復号を行うことができる。特に、軟出力復号回路９０は、値が最大又は最小の対数尤度を“０”とする正規化を行う場合には、対数尤度が負値又は正値のみをとることから、正方向又は負方向の表現を必要とせず、必要なダイナミックレンジを最小限に抑えることができ、回路規模の削減を図ることができる。
【０９６１】
また、軟出力復号回路９０は、他の正規化方法を用いることもできる。すなわち、軟出力復号回路９０は、第２の方法として、Ｉα算出回路１５８におけるＩα正規化回路２５０，２７２及びＩβ算出回路１５９におけるＩβ０正規化回路２９１，３０８等によって、算出された複数の対数尤度Ｉα，Ｉβのうち、確率が最大のメトリックに対応する対数尤度Ｉα，Ｉβが所定の値を超過したときに、複数の対数尤度Ｉα，Ｉβのそれぞれに対して、当該所定の値を用いた演算を行う。
【０９６２】
具体的には、軟出力復号回路９０は、要素復号器５０が対数尤度を負値として扱う場合、すなわち、上述した定数ｓｇｎが“＋１”の場合には、Ｉα算出回路１５８におけるＩα正規化回路２５０，２７２及びＩβ算出回路１５９におけるＩβ０正規化回路２９１，３０８等によって、算出された複数の対数尤度Ｉα，Ｉβのうち、最大値を有するものが所定の値を超過したときに、複数の対数尤度Ｉα，Ｉβのそれぞれに対して所定の値を加算し、要素復号器５０が対数尤度を正値として扱う場合、すなわち、上述した定数ｓｇｎが“−１”の場合には、Ｉα算出回路１５８におけるＩα正規化回路２５０，２７２及びＩβ算出回路１５９におけるＩβ０正規化回路２９１，３０８等によって、算出された複数の対数尤度Ｉα，Ｉβのうち、最小値を有するものが所定の値を超過したときに、複数の対数尤度Ｉα，Ｉβのそれぞれから所定の値を減算する。
【０９６３】
特に、軟出力復号回路９０は、所定の値として、ダイナミックレンジの１／２を採用することによって、正規化処理が非常に簡易なものとなる。
【０９６４】
これについて、先に図８６に示したｌｏｇ−ｓｕｍ演算回路５５０を用いて説明する。ここで、対数尤度Ｉγのダイナミックレンジをｇと表し、１時刻前に算出された対数尤度Ｉαのダイナミックレンジがａで表され、且つ、この対数尤度Ｉαのダイナミックレンジをｘ＞ａだけ確保してあるものとし、確率が最大のメトリックに対応する最大値又は最小値を有する対数尤度Ｉαの値をｚ＜ｘ／２と表すものとすると、正規化回路５５４は、図８８に示すような正規化を行うことになる。
【０９６５】
このとき、加算器５５１により算出された対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγのダイナミックレンジは、上述したように、ｘ＋ｇで表される。また、このときの対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγの最大値又は最小値は、ｚ＋ｇとｘとのうちの値が小さい方であるｍｉｎ（ｚ＋ｇ，ｘ）で表される。続いて、補正項算出回路５５２及び加算器５５３による処理を経て得られたｌｏｇ−ｓｕｍ演算後のデータのダイナミックレンジは、ｌｏｇ−ｓｕｍ演算によるダイナミックレンジは増加しないことから、ｘ＋ｇで表される。このときのデータの最大値又は最小値は、最大で補正項の最大値であるｌｏｇ２（２の自然対数値）だけ変化することから、ｍｉｎ（ｚ＋ｇ，ｘ）＋ｌｏｇ２で表される。
【０９６６】
正規化回路５５４は、ｍｉｎ（ｚ＋ｇ，ｘ）＋ｌｏｇ２の値が、対数尤度Ｉαのダイナミックレンジｘの１／２であるｘ／２を超過したと判定した場合には、ｌｏｇ−ｓｕｍ演算後のデータから、ｘ／２だけ減算して正規化を行うとともに、ダイナミックレンジがｘ以上の値をクリップする。このときのデータの最大値又は最小値は、ｍｉｎ（ｚ＋ｇ，ｘ）＋ｌｏｇ２−ｘ／２で表される。正規化回路５５４は、対数尤度Ｉβに対しても同様の正規化を行う。
【０９６７】
ここで、ｌｏｇ−ｓｕｍ演算後のデータから対数尤度Ｉαのダイナミックレンジの１／２の値を減算するということは、ｌｏｇ−ｓｕｍ演算後のデータの最上位ビットを反転することに他ならない。すなわち、正規化回路５５４は、最上位ビットが“１”となったｌｏｇ−ｓｕｍ演算後のデータに対して、最上位ビットを反転して“０”とするような処理を行うことによって、正規化を行うことができる。
【０９６８】
このように、軟出力復号回路９０は、算出された複数の対数尤度Ｉα，Ｉβのうち、確率が最大のメトリックに対応する対数尤度Ｉα，Ｉβが所定の値を超過したと判定したときに、複数の対数尤度Ｉα，Ｉβのそれぞれに対して、当該所定の値を用いた演算を行い、正規化を行うこともできる。この場合、軟出力復号回路９０は、所定の値として、対数尤度Ｉα，Ｉβのダイナミックレンジの１／２の値とすることによって、最上位ビットを反転するだけでよく、簡易な回路構成の下に正規化を行うことができる。
【０９６９】
さらに、軟出力復号回路９０は、さらに他の正規化方法を用いることもできる。すなわち、軟出力復号回路９０は、第３の方法として、Ｉα算出回路１５８におけるＩα正規化回路２５０，２７２及びＩβ算出回路１５９におけるＩβ０正規化回路２９１，３０８等によって、算出された複数の対数尤度Ｉα，Ｉβのうち、確率が最大のメトリックに対応する対数尤度Ｉα，Ｉβが所定の値を超過したときに、次のタイムスロットにおいて、上述した第２の方法と同様に、複数の対数尤度Ｉα，Ｉβのそれぞれに対して、当該所定の値を用いた加算又は減算を行う。
【０９７０】
この第３の方法による正規化を行うＩα算出回路１５８におけるｌｏｇ−ｓｕｍ演算回路２４５n，２５６nと、Ｉβ算出回路１５９におけるｌｏｇ−ｓｕｍ演算回路２８６n，２９２nとは、図８９に概略を示すｌｏｇ−ｓｕｍ演算回路５６０のように表すことができる。すなわち、ｌｏｇ−ｓｕｍ演算回路５６０は、対数尤度Ｉγと１時刻前に算出された対数尤度Ｉα，Ｉβとを、加算器５６１により加算し、得られたデータから補正項算出回路５６２により補正項の値を算出し、加算器５６３によって、加算器５６１からのデータと補正項算出回路５６２からのデータとを加算する。そして、ｌｏｇ−ｓｕｍ演算回路５６０は、正規化回路５６４によって、レジスタ５６５からのデータに基づく判定情報ＪＤに基づいて、上述した正規化を行う。正規化されたデータは、レジスタ５６５により１時刻分だけ遅延され、対数尤度Ｉα，Ｉβとして、加算器５６１に供給されるとともに、外部に出力される。すなわち、ｌｏｇ−ｓｕｍ演算回路５６０は、レジスタ５６５から読み出されたデータが所定の値を超過したと判定されると、次のタイムスロットにおいて、正規化回路５６４による正規化を行う。
【０９７１】
ここで、対数尤度Ｉγのダイナミックレンジをｇと表し、１時刻前に算出された対数尤度Ｉαのダイナミックレンジがａで表され、且つ、この対数尤度Ｉαのダイナミックレンジをｘ＞ａだけ確保してあるものとし、確率が最大のメトリックに対応する最大値又は最小値を有する対数尤度Ｉαの値をｚ＜ｘ／２と表すものとすると、正規化回路５６４は、図９０に示すような正規化を行うことになる。
【０９７２】
このとき、加算器５６１により算出された対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγのダイナミックレンジは、上述したように、ｘ＋ｇで表される。また、このときの対数尤度Ｉαと対数尤度Ｉγとの和Ｉα＋Ｉγの最大値又は最小値も、上述したように、ｍｉｎ（ｚ＋ｇ，ｘ）で表される。続いて、補正項算出回路５６２及び加算器５６３による処理を経て得られたｌｏｇ−ｓｕｍ演算後のデータのダイナミックレンジは、ｌｏｇ−ｓｕｍ演算によるダイナミックレンジは増加しないことから、ｘ＋ｇで表される。このときのデータの最大値又は最小値は、最大で補正項の最大値であるｌｏｇ２だけ変化することから、ｍｉｎ（ｚ＋ｇ，ｘ）＋ｌｏｇ２で表される。
【０９７３】
正規化回路５６４は、ｍｉｎ（ｚ＋ｇ，ｘ）＋ｌｏｇ２の値が、所定の値、例えば対数尤度Ｉαのダイナミックレンジｘの１／２であるｘ／２を超過したと判定した場合には、次のタイムスロットにおけるｌｏｇ−ｓｕｍ演算後のデータから、ｘ／２だけ減算して正規化を行う。このときのデータの最大値又は最小値は、ｍｉｎ（ｚ＋ｇ，ｘ）＋ｌｏｇ２で表される。正規化回路５６４は、対数尤度Ｉβに対しても同様の正規化を行う。
【０９７４】
軟出力復号回路９０は、このような正規化を行うことによって、正規化するか否かの判定をｌｏｇ−ｓｕｍ演算の直後に行う必要がなく、正規化処理の高速化を図ることができる。
【０９７５】
５−５−８  ｌｏｇ−ｓｕｍ補正における補正項の算出
ｌｏｇ−ｓｕｍ補正における補正項を算出する際には、通常、入力した２つのデータの差分値の大小を比較することで当該差分値の絶対値を算出し、この絶対値に対応する補正項の値を算出する。すなわち、ｌｏｇ−ｓｕｍ演算を行うｌｏｇ−ｓｕｍ演算回路５７０は、図９１に概略を示すように、差分器５７１1によって、入力したデータＡＭ０とデータＡＭ１との差分値を算出するとともに、差分器５７１2によって、データＡＭ１とデータＡＭ０との差分値を算出し、これと同時に、比較回路５７２によって、データＡＭ０とデータＡＭ１との大小を比較し、この比較結果に基づいて、セレクタ５７３によって、差分器５７１1，５７１2からの２つのデータのうち、いずれか一方を選択し、この選択されたデータに対応する補正項の値をルックアップテーブル５７４から読み出す。そして、ｌｏｇ−ｓｕｍ演算回路５７０は、加算器５７５によって、補正項の値を示すデータＤＭと、データＡＭ０とデータＡＭ１とのうちのいずれか一方であるデータＳＡＭとを加算する。
【０９７６】
ここで、ｌｏｇ−ｓｕｍ演算回路５７０においては、比較回路５７２によるデータＡＭ０とデータＡＭ１との大小比較が、通常、他の各部の処理に比較して時間を要すことから、結果的に、データＳＡＭを求めるのに比較してデータＤＭを求めるのに時間を要し、大きな遅延を招くことがある。
【０９７７】
そこで、軟出力復号回路９０は、先に図３５に示したように、入力した２つのデータの差分値の絶対値を算出してから補正項の値を求めるのではなく、２つの差分値に対応する複数の補正項の値を算出し、その中から適切なものを選択する。すなわち、軟出力復号回路９０は、入力した２つのデータの差分値の大小比較と、補正項の値の算出とを並列的に行う。
【０９７８】
このようなｌｏｇ−ｓｕｍ演算を行うｌｏｇ−ｓｕｍ演算回路５８０は、図９２に概略を示すように、差分器５８１1によって、入力したデータＡＭ０とデータＡＭ１との差分値を算出するとともに、差分器５８１2によって、データＡＭ１とデータＡＭ０との差分値を算出し、差分器５８１1からのデータに対応する補正項の値をルックアップテーブル５８２1から読み出すとともに、差分器５８１2からのデータに対応する補正項の値をルックアップテーブル５８２2から読み出す。これと同時に、ｌｏｇ−ｓｕｍ演算回路５８０は、上述したＩα算出回路１５８における選択用制御信号生成回路２５３に対応する比較回路５８３によって、データＡＭ０とデータＡＭ１との大小を比較し、この比較結果に基づいて、セレクタ５８４によって、ルックアップテーブル５８２1，５８２2からの２つのデータのうち、いずれか一方を選択し、加算器５８５によって、この選択されたデータＤＭと、データＡＭ０とデータＡＭ１とのうちのいずれか一方であるデータＳＡＭとを加算する。
【０９７９】
このように、軟出力復号回路９０は、２つの差分値に対応する複数の補正項の値を算出し、その中から適切なものを選択することによって、対数尤度Ｉα，Ｉβを高速に求めることが可能となる。
【０９８０】
５−５−９  ｌｏｇ−ｓｕｍ演算における選択用の制御信号の生成
ｌｏｇ−ｓｕｍ補正における補正項を算出する際には、上述したＩα算出回路１５８における選択用制御信号生成回路２５３のように、２つのデータの大小を比較する判定文を作成して選択用の制御信号を生成する必要がある。具体的には、選択用制御信号生成回路２５３により作成される制御信号ＳＥＬの判定文は、次式（５６）に示すように、データＡＭ０，ＡＭ１の大小関係を示すものとなる。
【０９８１】
【数５６】
0004543522.tif 000061
【０９８２】
また、ｌｏｇ−ｓｕｍ補正における補正項は、上述したように、所定の値に漸近する性質を有していることから、変数となる２つのデータの差分値の絶対値は、所定の値にクリップされるべきである。具体的には、選択用制御信号生成回路２５３により作成される制御信号ＳＬの判定文は、次式（５７）に示すように、データＡＭ０，ＡＭ１の差分値の絶対値と、所定の値との大小関係を示すものとなる。
【０９８３】
【数５７】
0004543522.tif 000062
【０９８４】
ここで、データＡＭ０，ＡＭ１が、それぞれ、１２ビットからなるものとすると、選択用制御信号生成回路２５３は、少なくとも１２ビットの比較回路を有することになり、回路規模の増大を招くとともに、処理の遅延を招く。
【０９８５】
そこで、選択用制御信号生成回路２５３は、少なくともデータＡＭ０，ＡＭ１に基づいて、メトリックの上位ビットと下位ビットとを分割して、選択用の判定文を作成することによって、制御信号ＳＥＬ，ＳＬを生成する。すなわち、選択用制御信号生成回路２５３は、データＡＭ０，ＡＭ１のそれぞれを上位ビットと下位ビットとに分割し、データＡＭ０，ＡＭ１の大小を比較する判定文を作成する。
【０９８６】
まず、上式（５６）に示した判定文からなる制御信号ＳＥＬを生成することを考える。
【０９８７】
補正項算出回路２４７は、データＡＭ０，ＡＭ１が例えば１２ビットからなるものとすると、データＡＭ０の下位６ビットのデータの最上位ビットに“１”を付したものと、データＡＭ１の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。これと同時に、補正項算出回路２４７は、データＡＭ０の下位６ビットのデータの最上位ビットに“０”を付したものと、データＡＭ１の下位６ビットのデータの最上位ビットに“１”を付したものとの差分をとる。選択用制御信号生成回路２５３は、データＡＭ０，ＡＭ１の他に、これらの差分値ＤＡ１，ＤＡ０を用いて、次式（５８）に示すような判定文を作成し、制御信号ＳＥＬを生成する。
【０９８８】
【数５８】
0004543522.tif 000063
【０９８９】
まず、補正項算出回路２４７は、選択用制御信号生成回路２５３によって、データＡＭ０，ＡＭ１の上位６ビットＡＭ０［１１：６］，ＡＭ１［１１：６］の大小比較を行うことによって、データＡＭ０，ＡＭ１の大小関係を判別する。すなわち、データＡＭ０，ＡＭ１の上位６ビットＡＭ０［１１：６］，ＡＭ１［１１：６］の大小関係は、そのまま、データＡＭ０，ＡＭ１の大小関係を表すものに他ならない。そのため、選択用制御信号生成回路２５３は、（ＡＭ０［１１：６］＞ＡＭ１［１１：６］）という判定文を作成する。
【０９９０】
また、補正項算出回路２４７は、差分値ＤＡ１を求めることによって、データＡＭ０，ＡＭ１の下位６ビットの大小関係を求めることができる。すなわち、差分値ＤＡ１の最上位ビットが“１”であることは、データＡＭ０の下位６ビットの方がデータＡＭ１の下位６ビットよりも大きいことに他ならない。この条件の下で、ＡＭ１≦ＡＭ０が成立する場合を考えると、データＡＭ０の上位６ビットの方がデータＡＭ１の上位６ビットよりも大きい場合と、データＡＭ０の上位６ビットとデータＡＭ１の上位６ビットとが等しい場合とがある。そのため、選択用制御信号生成回路２５３は、（（ＡＭ０［１１：６］＝＝ＡＭ１［１１：６］）＆ＤＡ１［６］＝＝１）という判定文を作成する。
【０９９１】
したがって、選択用制御信号生成回路２５３は、上式（５８）に示した判定文を作成することによって、上式（５６）に示した判定文を実現することができる。すなわち、選択用制御信号生成回路２５３は、６ビットの比較回路とイコール（＝）判定回路とを有するのみで実現することができ、回路規模の削減を図ることができ、処理の高速化も図ることができる。
【０９９２】
つぎに、上式（５７）に示した判定文からなる制御信号ＳＬを生成することを考える。
【０９９３】
補正項算出回路２４７は、データＡＭ０，ＡＭ１が例えば１２ビットからなるものとすると、上述したように、データＡＭ０の下位６ビットのデータの最上位ビットに“１”を付したものと、データＡＭ１の下位６ビットのデータの最上位ビットに“０”を付したものとの差分をとる。これと同時に、補正項算出回路２４７は、データＡＭ０の下位６ビットのデータの最上位ビットに“０”を付したものと、データＡＭ１の下位６ビットのデータの最上位ビットに“１”を付したものとの差分をとる。選択用制御信号生成回路２５３は、データＡＭ０，ＡＭ１の他に、これらの差分値ＤＡ１，ＤＡ０を用いて、次式（５９）に示すような判定文を作成し、制御信号ＳＬを生成する。
【０９９４】
【数５９】
0004543522.tif 000064
【０９９５】
まず、補正項算出回路２４７は、選択用制御信号生成回路２５３によって、データＡＭ０，ＡＭ１の上位６ビットＡＭ０［１１：６］，ＡＭ１［１１：６］が等しいか否かを判定する。すなわち、データＡＭ０，ＡＭ１の上位６ビットＡＭ０［１１：６］，ＡＭ１［１１：６］が等しい場合には、データＡＭ０，ＡＭ１の差分値の絶対値は、所定の値未満、ここでは６４未満となる。そのため、選択用制御信号生成回路２５３は、（ＡＭ０［１１：６］＝＝ＡＭ１［１１：６］）という判定文を作成する。
【０９９６】
また、データＡＭ０の上位６ビットＡＭ０［１１：６］が、データＡＭ１の上位６ビットＡＭ１［１１：６］よりも“１”だけ大きく、且つ、データＡＭ０の下位６ビットＡＭ０［５：０］が、データＡＭ１の下位６ビットＡＭ１［５：０］よりも小さい場合にも、データＡＭ０，ＡＭ１の差分値の絶対値は、所定の値未満、ここでは６４未満となる。ここで、データＡＭ０の下位６ビットＡＭ０［５：０］が、データＡＭ１の下位６ビットＡＭ１［５：０］よりも小さい場合とは、上述したことを考慮すると、差分値ＤＡ１の最上位ビットＤＡ１［６］が“０”である場合である。そのため、選択用制御信号生成回路２５３は、（（｛１’ｂ０，ＡＭ０［１１：６］｝＝＝｛１’ｂ０，ＡＭ１［１１：６］｝＋７’ｄ１）＆ＤＡ１［６］＝＝０）という判定文を作成する。
【０９９７】
同様に、データＡＭ１の上位６ビットＡＭ１［１１：６］が、データＡＭ０の上位６ビットＡＭ０［１１：６］よりも“１”だけ大きく、且つ、データＡＭ１の下位６ビットＡＭ１［５：０］が、データＡＭ０の下位６ビットＡＭ０［５：０］よりも小さい場合にも、データＡＭ０，ＡＭ１の差分値の絶対値は、所定の値未満、ここでは６４未満となる。そのため、選択用制御信号生成回路２５３は、（（｛１’ｂ０，ＡＭ１［１１：６］｝＝＝｛１’ｂ０，ＡＭ０［１１：６］｝＋７’ｄ１）＆ＤＡ０［６］＝＝０）という判定文を作成する。
【０９９８】
したがって、選択用制御信号生成回路２５３は、上式（５９）に示した判定文を作成することによって、上式（５７）に示した判定文を実現することができる。すなわち、選択用制御信号生成回路２５３は、イコール（＝）判定回路を有するのみで実現することができ、回路規模の削減を図ることができ、処理の高速化も図ることができる。
【０９９９】
このように、軟出力復号回路９０は、ｌｏｇ−ｓｕｍ補正における補正項を算出する際に、２つのデータの大小を比較するとともに、変数となる２つのデータの差分値の絶対値はを所定の値にクリップするための選択用の制御信号を生成する選択用制御信号生成回路の回路規模を削減することができ、処理の高速化を図ることもできる。
【１０００】
なお、ここでは、選択用制御信号生成回路２５３について説明したが、Ｉγ分配回路１５７における選択用制御信号生成回路２３２や軟出力算出回路１６１における選択用制御信号生成回路３３０についても、同様の手法により制御信号を生成することができる。
【１００１】
５−６  対数軟出力Ｉλの算出
上述した軟出力算出回路１６１に関する特徴である。要素復号器５０は、対数軟出力Ｉλを算出するにあたって、以下に示す２つの特徴を有する。
【１００２】
５−６−１  イネーブル信号を用いたｌｏｇ−ｓｕｍ演算の累積加算演算
対数軟出力Ｉλを算出する際には、トレリス上の各枝の入力に応じたｌｏｇ−ｓｕｍ演算の累積加算演算を行い、入力が“０”の枝に応じたｌｏｇ−ｓｕｍ演算の累積加算演算結果と、入力が“１”の枝に応じたｌｏｇ−ｓｕｍ演算の累積加算演算結果との差分をとる必要がある。
【１００３】
そこで、軟出力復号回路９０においては、任意の符号の復号を可能とするために、トレリス上の各枝に対応する対数尤度Ｉαと対数尤度Ｉγと対数尤度Ｉβとの和を算出するとともに、各枝の入力を示すイネーブル信号を生成し、このイネーブル信号に基づいて、勝ち抜き戦に喩えられる動作を行うことによって、対数軟出力Ｉλの算出を実現する。
【１００４】
ここで、上述した軟出力算出回路１６１におけるｌｏｇ−ｓｕｍ演算回路３１２1が、入力が“０”の枝に応じたｌｏｇ−ｓｕｍ演算の累積加算演算を行うものとする。ｌｏｇ−ｓｕｍ演算回路３１２1におけるｌｏｇ−ｓｕｍ演算セル回路３２５1，・・・，３２５31は、それぞれ、入力した３２系統のデータＡＧＢのうち、２系統のデータＡＧＢを入力するとともに、これらの２系統のデータＡＧＢのそれぞれに対応する２系統のイネーブル信号ＥＮを入力する。
【１００５】
例えば、ｌｏｇ−ｓｕｍ演算セル回路３２５1に入力された２系統のイネーブル信号ＥＮ０００，ＥＮ００１の両者が、入力が“０”であることを示すものであった場合には、ｌｏｇ−ｓｕｍ演算セル回路３２５1は、２系統のデータＡＧＢ０００，ＡＧＢ００１を用いたｌｏｇ−ｓｕｍ演算を行い、この結果をデータＡＧＢ１００として出力する。また、ｌｏｇ−ｓｕｍ演算セル回路３２５1に入力された２系統のイネーブル信号ＥＮ０００，ＥＮ００１のうち、イネーブル信号ＥＮ０００のみが、入力が“０”であることを示すものであった場合には、ｌｏｇ−ｓｕｍ演算セル回路３２５1は、２系統のデータＡＧＢ０００，ＡＧＢ００１のうち、データＡＧＢ０００に対して所定のオフセット値Ｎ２を加算し、データＡＧＢ１００として出力する。同様に、ｌｏｇ−ｓｕｍ演算セル回路３２５1に入力された２系統のイネーブル信号ＥＮ０００，ＥＮ００１のうち、イネーブル信号ＥＮ００１のみが、入力が“０”であることを示すものであった場合には、ｌｏｇ−ｓｕｍ演算セル回路３２５1は、データＡＧＢ００１に対して所定のオフセット値Ｎ２を加算し、データＡＧＢ１００として出力する。さらに、ｌｏｇ−ｓｕｍ演算セル回路３２５1に入力された２系統のイネーブル信号ＥＮ０００，ＥＮ００１の両者が、入力が“１”であることを示すものであった場合には、ｌｏｇ−ｓｕｍ演算セル回路３２５1は、２系統のデータＡＧＢ０００，ＡＧＢ００１を用いたｌｏｇ−ｓｕｍ演算結果又はデータＡＧＢ０００，ＡＧＢ００１自身を出力することはなく、所定の値を有するデータをデータＡＧＢ１００として出力する。また、ｌｏｇ−ｓｕｍ演算セル回路３２５2，・・・，３２５31も、ｌｏｇ−ｓｕｍ演算セル回路３２５1と同様の処理を行い、選択的にデータＡＧＢを出力する。
【１００６】
このようにすることによって、ｌｏｇ−ｓｕｍ演算回路３１２1は、入力が“０”の枝に応じたデータＡＧＢのみを用いたｌｏｇ−ｓｕｍ演算の累積加算演算を行うことができる。
【１００７】
同様に、ｌｏｇ−ｓｕｍ演算回路３１２2，・・・，３１２6は、入力が“０”又は“１”の枝に応じたデータＡＧＢのみを用いたｌｏｇ−ｓｕｍ演算の累積加算演算を行う。
【１００８】
このようにすることによって、軟出力復号回路９０は、所定の本数以下の枝を有する任意のトレリス符号に対して、対数軟出力Ｉλを算出することができる。
【１００９】
なお、ここでは、３２本以下の枝を有するトレリス構造となる符号の復号を行う場合について説明したが、軟出力復号回路９０は、この枝の本数に限定されるものでないことはいうまでもない。
【１０１０】
５−６−２  イネーブル信号を用いないｌｏｇ−ｓｕｍ演算の累積加算演算
ところで、“５−６−１”に示した手法の場合、各ｌｏｇ−ｓｕｍ演算回路３１２1，・・・，３１２6は、それぞれ、３２系統のデータＡＧＢのうち、入力が“０”又は“１”である１６系統のデータＡＧＢを選択し、これらの１６系統のデータＡＧＢを用いたｌｏｇ−ｓｕｍ演算の累積加算演算を行うことに他ならない。そのため、各ｌｏｇ−ｓｕｍ演算回路３１２1，・・・，３１２6においては、実際には、３１個のｌｏｇ−ｓｕｍ演算セル回路のうち、約半数のものしか動作しないことになり、効率を低くする虞がある。
【１０１１】
そこで、軟出力復号回路９０は、“５−６−１”に示した手法以外にも、次のような手法により対数軟出力Ｉλを算出することができる。
【１０１２】
すなわち、図９３に概略を示すように、軟出力算出回路１６１’は、予め選択回路５９０によって、３２系統のデータＡＧＢの中から、トレリス上の各枝の入出力パターンに応じて該当する枝を選択しておき、８個のｌｏｇ−ｓｕｍ演算回路５９１1，・・・５９１8のそれぞれによって、選択された１６系統のデータＡＧＢを用いたｌｏｇ−ｓｕｍ演算を行う。また、軟出力算出回路１６１’は、図示しないが、４つのｌｏｇ−ｓｕｍ演算回路のそれぞれによって、８個のｌｏｇ−ｓｕｍ演算回路５９１1，・・・５９１8のそれぞれから出力された８系統のデータＡＧＢを用いたｌｏｇ−ｓｕｍ演算を行い、さらに、２つのｌｏｇ−ｓｕｍ演算回路のそれぞれによって、４つのｌｏｇ−ｓｕｍ演算回路のそれぞれから出力された４系統のデータＡＧＢを用いたｌｏｇ−ｓｕｍ演算を行う。そして、軟出力算出回路１６１’は、ｌｏｇ−ｓｕｍ演算回路５９１15によって、２つのｌｏｇ−ｓｕｍ演算回路のそれぞれから出力された２系統のデータＡＧＢを用いたｌｏｇ−ｓｕｍ演算を行う。
【１０１３】
軟出力算出回路１６１’は、このような処理を、入力が“０”又は“１”の場合のそれぞれについて行う。
【１０１４】
このように、軟出力算出回路１６１’は、予め選択回路５９０によって、３２系統のデータＡＧＢの中から、トレリス上の各枝の入出力パターンに応じて該当する枝を選択しておき、１５個のｌｏｇ−ｓｕｍ演算回路５９１1，・・・５９１15によって、勝ち抜き戦に喩えられる動作を行い、ｌｏｇ−ｓｕｍ演算の累積加算演算を実現することができる。
【１０１５】
このような手法によっても、軟出力復号回路９０は、所定の本数以下の枝を有する任意のトレリス符号に対して、対数軟出力Ｉλを算出することができる。
【１０１６】
なお、ここでも、３２本以下の枝を有するトレリス構造となる符号の復号を行う場合について説明したが、軟出力復号回路９０は、この枝の本数に限定されるものでないことはいうまでもない。
【１０１７】
５−７  外部情報に対する正規化
上述した外部情報算出回路１６３に関する特徴である。
【１０１８】
軟出力復号回路９０は、上述したように、外部情報算出回路１６３によって、シンボル単位の外部情報とビット単位の外部情報とを算出することができる。ここで、シンボル単位の外部情報を算出する際には、例えば２ビット１シンボルとすると、４つの外部情報が算出されることになる。
【１０１９】
そこで、軟出力復号回路９０は、シンボル単位の外部情報の分布の偏りを是正し且つ情報量を削減するための正規化を行い、全てのシンボルに対する外部情報を次段における事前確率情報として出力するのではなく、“シンボルの数−１”の数の外部情報を出力する。
【１０２０】
具体的には、軟出力復号回路９０は、図９４（Ａ）に示すように、例えば４つのシンボル“００”，“０１”，“１０”，“１１”のそれぞれに対応する外部情報ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３を算出したものとすると、同図（Ｂ）に示すように、外部情報算出回路１６３における正規化回路３５７によって、４つの外部情報ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３のうち、最大値を有する外部情報ＥＤ１を、例えば“０”といった所定の値に合わせるように、外部情報ＥＤ０，ＥＤ１，ＥＤ２，ＥＤ３のそれぞれに対して所定の値を加算し、外部情報ＥＡ０，ＥＡ１，ＥＡ２，ＥＡ３を求める。軟出力復号回路９０は、このような正規化を行うことによって、外部情報の分布の偏りを是正することができる。
【１０２１】
続いて、軟出力復号回路９０は、同図（Ｃ）に示すように、正規化回路３５７によって、正規化後の４つの外部情報ＥＡ０，ＥＡ１，ＥＡ２，ＥＡ３に対して、必要なダイナミックレンジに応じてクリッピングを行い、外部情報ＥＮ０，ＥＮ１，ＥＮ２，ＥＮ３を求める。軟出力復号回路９０は、このようなクリッピングを行うことによって、値が大きく重要度の高い外部情報間の値の差を保持することができる。
【１０２２】
そして、軟出力復号回路９０は、同図（Ｄ）に示すように、正規化回路３５７によって、例えば、クリップ後の４つの外部情報ＥＮ０，ＥＮ１，ＥＮ２，ＥＮ３のうち、“００”のシンボルに対する外部情報ＥＮ０の値を、他の全てのシンボル“０１”，“１０”，“１１”のそれぞれに対する外部情報ＥＮ１，ＥＮ２，ＥＮ３の値から差分する。軟出力復号回路９０は、このような正規化を行うことによって、４つの外部情報を出力するのではなく、３つの外部情報の比を外部情報ＥＸ０，ＥＸ１，ＥＸ２として出力することができる。
【１０２３】
このようにすることによって、軟出力復号回路９０は、１シンボル分の外部情報を出力する必要がなく、外部入出力ピン数の削減を図ることができる。また、軟出力復号回路９０は、同図（Ｄ）に示した正規化を行う前に、同図（Ｃ）に示したクリッピングを行うことによって、尤度の高いシンボルに対する外部情報間の値の差を保持することができ、高精度の復号を行うことができる。
【１０２４】
なお、ここでは、４つのシンボルに対する外部情報を算出し、正規化する場合について説明したが、軟出力復号回路９０としては、４つ以外の数のシンボルに対する外部情報の正規化を行うこともできる。
【１０２５】
５−８  受信値の硬判定
上述した硬判定回路１６５に関する特徴である。
【１０２６】
受信値を硬判定する場合には、通常、Ｉ／Ｑ平面上の受信値の正接（tangent）を求めることが行われる。しかしながら、この方法の場合には、例えば、同相成分及び直交成分が、それぞれ、８ビットで表現されているものとすると、８ビットのデータ同士の除算が必要となり、回路規模の増大とともに、処理の遅延を招く。
【１０２７】
これに代替する方法としては、例えば、同相成分及び直交成分が、それぞれ、８ビットで表現されているものとすると、合計１６ビット＝６５５３６通りの場合分けを行い、各場合における硬判定値を表引きすることが考えられる。しかしながら、この方法の場合にも、膨大な処理時間を要することから現実的ではない。
【１０２８】
また、他の方法としては、Ｉ／Ｑ平面上の受信値の角度を硬判定の領域の境界と比較するため、受信値の除算を行い、境界の角度の正接と比較することが考えられる。しかしながら、この方法の場合にも、８ビットのデータ同士の除算が必要となるとともに、領域の境界が一般には無理数で与えられるものであることから、精度の検討がさらに必要となる。
【１０２９】
そこで、軟出力復号回路９０は、受信値の同相成分又は直交成分のいずれかの値に対する境界値を表引きにより求め、他成分の値に応じて硬判定値を求める。
【１０３０】
具体的には、軟出力復号回路９０は、符号化装置１が８ＰＳＫ変調方式による変調を行うものであった場合には、図９５に示すように、Ｉ／Ｑ平面を８つの信号点に応じた８つの領域に区分けするために、Ｉ軸又はＱ軸のいずれかに対する４つの境界線（境界値データ）ＢＤＲ０，ＢＤＲ１，ＢＤＲ２，ＢＤＲ３を設け、これらの境界値データＢＤＲ０，ＢＤＲ１，ＢＤＲ２，ＢＤＲ３を、上述した硬判定回路１６５におけるルックアップテーブル３７２にテーブルとして記憶する。なお、同図においては、同相成分及び直交成分は、それぞれ、５ビットで表現されているものとし、各ドットが各ビットを表しているものとする。また、領域０，１，２，３，４，５，６，７にマッピングされている信号点の値は、それぞれ、上述した信号点配置情報ＣＳＩＧ０，ＣＳＩＧ１，ＣＳＩＧ２，ＣＳＩＧ３，ＣＳＩＧ４，ＣＳＩＧ５，ＣＳＩＧ６，ＣＳＩＧ７で表される。
【１０３１】
軟出力復号回路９０は、上述したように、硬判定回路１６５によって、Ｉ軸又はＱ軸のいずれかに対する４つの境界値データＢＤＲ０，ＢＤＲ１，ＢＤＲ２，ＢＤＲ３と、他方の成分の値とを比較し、受信値の信号点がどの領域に属するかを判定し、硬判定値を求める。
【１０３２】
このようにすることによって、軟出力復号回路９０は、ルックアップテーブル３７２に記憶されるテーブルの容量を小さくすることができ、精度の検討も不要であることから、回路規模を削減するとともに、処理の高速化を図ることができる。
【１０３３】
なお、ここでは、８ＰＳＫ変調方式による信号点をデマッピングする場合について説明したが、この手法は、いかなるＰＳＫ変調方式による信号点のデマッピングにも適用できるものである。
【１０３４】
６．  インターリーバに関する特徴
つぎに、インターリーバ１００に関する特徴毎の説明を行う。以下の特徴は、インターリーバ１００の機能として備えられるものであるが、特徴の概念を明確化するために、適宜簡略化した図面を用いて説明する。
【１０３５】
６−１  複数種類のインターリーブ機能
上述した記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込み及び／又は読み出しの制御に関する特徴である。
【１０３６】
インターリーバ１００は、上述したように、施すべきインターリーブの種類を含む符号構成を示すモードに応じて、複数の記憶回路４０７1，４０７2，・・・，４０７16の中から、データの書き込み及び／又は読み出しを行うべき適切なものを選択し、使用する記憶回路を切り替え、複数種類のインターリーブを実現する。
【１０３７】
具体的には、インターリーバ１００は、制御回路４００によって、書き込みアドレスと読み出しアドレスとを発生すると、アドレス選択回路４０５によって、インターリーバタイプ情報ＣＩＮＴ及びインターリーバ無出力位置情報ＣＮＯに基づいて、アドレスデータＡＡ０，ＢＡ０，ＡＡ１，ＢＡ１，ＡＡ２，ＢＡ２とのうち、記憶回路４０７1，４０７2，・・・，４０７16に分配するアドレスデータを選択する。また、インターリーバ１００は、入力データ選択回路４０６によって、インターリーブモード信号ＣＤＩＮ、インターリーバタイプ情報ＣＩＮＴ及びインターリーバ入出力置換情報ＣＩＰＴに基づいて、インターリーブ用のデータＩ０，Ｉ１，Ｉ２、及び、遅延用のデータＤ０，Ｄ１，Ｄ２，Ｄ３，Ｄ４，Ｄ５のうち、記憶回路４０７1，４０７2，・・・，４０７16に分配するデータを選択する。
【１０３８】
この具体例としては、先に図５５乃至図６１に示したものが考えられる。すなわち、インターリーバ１００は、制御回路４００によって、施すべきインターリーブの種類に拘泥せずにアドレスを発生した後、アドレス選択回路４０５及び入力データ選択回路４０６によって、施すべきインターリーブの種類を含む符号構成を示すモードに応じて、記憶回路４０７1，４０７2，・・・，４０７16に対してアドレス及びデータを分配し、データを記憶回路４０７1，４０７2，・・・，４０７16に記憶させる。
【１０３９】
そして、インターリーバ１００は、記憶回路４０７1，４０７2，・・・，４０７16から読み出したデータを出力データ選択回路４０８に供給し、この出力データ選択回路４０８によって、インターリーブモード信号ＣＤＩＮ、インターリーバタイプ情報ＣＩＮＴ、インターリーバ入出力置換情報ＣＩＰＴ、制御信号ＩＯＢＳ，ＩＯＢＰ０，ＩＯＢＰ１，ＩＯＢＰ２，ＤＯＢＳ，ＤＯＢＰに基づいて、データＯＲ００，ＯＲ０１，・・・，ＯＲ１５のうち、出力すべきデータを選択し、インターリーバ出力データＩＩＯ及びインターリーブ長遅延受信値ＩＤＯとして出力する。
【１０４０】
このように、インターリーバ１００は、施すべきインターリーブの種類を含む符号構成を示すモードに応じて、使用する記憶回路を切り替え、アドレス及びデータを分配することによって、複数種類のインターリーブを実現することができ、汎用性のあるものである。そのため、要素復号器５０は、種々の符号に適応的に対応した復号を行うことが可能となる。
【１０４１】
６−２  インターリーブ用の記憶回路と遅延用の記憶回路の共用
“６−１”に示した機能に関連する特徴であり、記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込み及び／又は読み出しの制御に関する特徴である。
【１０４２】
繰り返し復号においては、受信値に対して、インターリーバが要する処理時間と同時間だけ、すなわち、インターリーブ長分の時間だけ遅延させる必要がある。ここで、複数種類の符号の復号を行う場合には、符号構成に応じて、遅延すべきシンボル数が変化するとともに、インターリーブ処理に要する記憶回路（ＲＡＭ）の数も変化する。
【１０４３】
そこで、インターリーバ１００は、上述したように、インターリーブ用の記憶回路と遅延用の記憶回路とを共用し、符号構成に応じて、複数の記憶回路４０７1，４０７2，・・・，４０７16の中から、使用する記憶回路を切り替え、インターリーブ処理に使用しない記憶回路を遅延処理に使用し、遅延処理に使用しない記憶回路をインターリーブ処理に使用する。
【１０４４】
この具体例としては、先に図５５乃至図６１に示したものが考えられる。すなわち、インターリーバ１００は、アドレス選択回路４０５及び入力データ選択回路４０６によって、符号構成に応じたインターリーブ処理及び遅延処理をともに考慮して、記憶回路４０７1，４０７2，・・・，４０７16に対するアドレスデータ及びデータの分配を行い、出力データ選択回路４０８によって、所望のデータを出力する。
【１０４５】
このようにすることによって、インターリーバ１００は、インターリーブ用の記憶回路と遅延用の記憶回路とを個別に備える必要がなく、最低限数の記憶回路を備えればよく、回路規模の削減を図ることができる。
【１０４６】
６−３  クロック阻止信号による記憶回路の動作制御
上述したように、インターリーバ１００は、少なくともＲＡＭを有する複数の記憶回路４０７1，４０７2，・・・，４０７16を備え、これらの記憶回路４０７1，４０７2，・・・，４０７16を用いて、インターリーブ処理及び遅延処理を行う。この場合、記憶回路４０７1，４０７2，・・・，４０７16は、それぞれ、通常、クロック信号が入力される度に、データの書き込み及び／又は読み出しといった動作を行う。
【１０４７】
このようなインターリーバ１００においては、実際には、不使用の記憶回路が存在する場合がある。具体的には、先に図５６に示した例では、記憶回路４０７6，４０７8におけるＲＡＭＤ０６，Ｄ０８が不使用のＲＡＭとして存在し、先に図６０に示した例では、記憶回路４０７6，４０７8，４０７10，４０７12におけるＲＡＭＤ０６，Ｄ０８，Ｄ１０，Ｄ１２が不使用のＲＡＭとして存在する。
【１０４８】
そこで、インターリーバ１００は、アドレス選択回路４０５によって、入力されたクロック信号を阻止するためのクロック阻止信号ＩＨを発生し、このクロック阻止信号ＩＨを不使用の記憶回路に与えることによって、当該不使用の記憶回路における書き込み及び／又は読み出しを含む一切の動作を停止させる。
【１０４９】
より具体的には、インターリーバ１００においては、複数の記憶回路４０７1，４０７2，・・・，４０７16のうち、使用する記憶回路を、アドレス方向で分割して決定する。そして、インターリーバ１００は、アドレス選択回路４０５によって、書き込みアドレス及び／又は読み出しアドレスに該当しない記憶回路に対するクロック阻止信号ＩＨを発生し、このクロック阻止信号ＩＨを当該記憶回路に与える。
【１０５０】
このように、インターリーバ１００は、使用する記憶回路をアドレス方向で分割し、クロック阻止信号ＩＨをアクティブにする機構を設けることによって、不使用の記憶回路の動作を停止させることができる。したがって、要素復号器５０は、全ての記憶回路４０７1，４０７2，・・・，４０７16を全てのクロック信号に応じて動作せる必要がなく、記憶回路の動作率を下げることができ、結果として、消費電力を下げることができる。
【１０５１】
６−４  デインターリーブ機能
上述したように、インターリーバ１００は、インターリーブ処理とデインターリーブ処理との両者を行うことができる。
【１０５２】
ところで、一般には、インターリーブ処理を行う際には、シーケンシャルなアドレスデータを用いて、記憶回路に対するデータの書き込みを行い、ランダムなアドレスデータを用いて、記憶回路からのデータの読み出しを行う。一方、デインターリーブ処理を行う際には、読み出し用のアドレスデータを生成するために、インターリーブ処理で用いたアドレスデータを逆変換する必要がある。そのため、繰り返し復号を行う場合には、デインターリーブ処理で用いたアドレスデータをインターリーブ処理に用いるための変換用のアドレスデータと、インターリーブ処理で用いたアドレスデータをデインターリーブ処理に用いるための逆変換用のアドレスデータとの、２通りのアドレスデータを個別に保持する必要があり、回路規模を圧迫する虞がある。
【１０５３】
そこで、インターリーバ１００は、デインターリーブ処理を行う際には、インターリーブ処理に用いる読み出し用のアドレスデータを、書き込み用のアドレスデータとして用い、シーケンシャルなアドレスデータを用いて読み出すことによって、インターリーブ処理とデインターリーブ処理との間で同一のアドレスデータを共用する。
【１０５４】
具体的には、インターリーバ１００は、上述したように、インターリーブ処理を行う場合には、制御回路４００によりシーケンシャルなアドレスデータである書き込みアドレスデータＩＷＡを発生し、この書き込みアドレスデータＩＷＡを用いて、記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込みを行うとともに、制御回路４００によりシーケンシャルなアドレスデータＩＡＡを発生し、このアドレスデータＩＡＡに基づいて、ランダムなアドレスデータである読み出しアドレスデータＡＤＡをアドレス用記憶回路１１０から読み出し、この読み出しアドレスデータＡＤＡを用いて、記憶回路４０７1，４０７2，・・・，４０７16からのデータの読み出しを行う。
【１０５５】
一方、インターリーバ１００は、上述したように、デインターリーブ処理を行う場合には、制御回路４００によりシーケンシャルなアドレスデータＩＡＡを発生し、このアドレスデータＩＡＡに基づいて、ランダムなアドレスデータである読み出しアドレスデータＡＤＡをアドレス用記憶回路１１０から読み出し、この読み出しアドレスデータＡＤＡを用いて、記憶回路４０７1，４０７2，・・・，４０７16に対するデータの書き込みを行うとともに、制御回路４００によりシーケンシャルなアドレスデータである書き込みアドレスデータＩＷＡを発生し、この書き込みアドレスデータＩＷＡを用いて、記憶回路４０７1，４０７2，・・・，４０７16からのデータの読み出しを行う。
【１０５６】
このように、インターリーバ１００は、インターリーブ処理とデインターリーブ処理との間で同一のアドレスデータを共用し、このアドレスデータを、インターリーブ処理とデインターリーブ処理とに応じて切り替える。換言すれば、インターリーバ１００は、制御回路４００によって、インターリーブ処理に用いる読み出し用のアドレスデータを、デインターリーブ処理に用いる書き込み用のアドレスデータとして用いるように切り替えるとともに、デインターリーブ処理に用いる読み出し用のアドレスデータを、インターリーブ処理に用いる書き込み用のアドレスデータとして用いるように切り替える。
【１０５７】
このようなアドレスデータの切り替えを行う制御回路４００は、簡略化すると例えば図９６に示す構成として表すことができる。すなわち、制御回路４００は、書き込み用のアドレスデータを発生する書き込みアドレス発生回路６０１と、読み出し用のアドレスデータを発生する読み出しアドレス発生回路６０２と、２つのセレクタ６０３1，６０３2とを有するものとして表される。
【１０５８】
制御回路４００は、書き込みアドレス発生回路６０１によって、書き込み用のシーケンシャルなアドレスデータを発生し、セレクタ６０３1，６０３2に供給するとともに、読み出しアドレス発生回路６０２によって、読み出し用のシーケンシャルなアドレスデータを発生し、セレクタ６０３1，６０３2に供給する。そして、セレクタ６０３1，６０３2は、インターリーブモード信号ＣＤＩＮに基づいて、書き込みアドレス発生回路６０１から供給されるアドレスデータと、読み出しアドレス発生回路６０２から供給されるアドレスデータとのうち、一方を選択する。
【１０５９】
具体的には、セレクタ６０３1は、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がインターリーブ処理を行う旨を指示するものであった場合には、書き込みアドレス発生回路６０１から供給されるアドレスデータを選択し、書き込みアドレスデータＩＷＡとして、インターリーブアドレス変換回路４０３に供給する。また、セレクタ６０３2は、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がインターリーブ処理を行う旨を指示するものであった場合には、読み出しアドレス発生回路６０２から供給されるアドレスデータを選択し、アドレスデータＩＡＡとして、アドレス用記憶回路１１０及びインターリーブアドレス変換回路４０３に供給する。
【１０６０】
一方、セレクタ６０３1は、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がデインターリーブ処理を行う旨を指示するものであった場合には、読み出しアドレス発生回路６０２から供給されるアドレスデータを選択し、書き込みアドレスデータＩＷＡとして、インターリーブアドレス変換回路４０３に供給する。また、セレクタ６０３2は、インターリーブモード信号ＣＤＩＮが、当該インターリーバ１００がデインターリーブ処理を行う旨を指示するものであった場合には、書き込みアドレス発生回路６０１から供給されるアドレスデータを選択し、アドレスデータＩＡＡとして、アドレス用記憶回路１１０及びインターリーブアドレス変換回路４０３に供給する。
【１０６１】
このように、インターリーバ１００は、インターリーブ処理とデインターリーブ処理との間で共用するアドレスデータを、制御回路４００により切り替えることによって、回路の簡略化及び規模削減を図ることができる。
【１０６２】
６−５  書き込みアドレス及び読み出しアドレスの発生
書き込みアドレスと読み出しアドレスとを発生する際には、通常、カウンタによりカウントアップしていくことによって、シーケンシャルなアドレスデータを発生する。ここで、書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを共用した場合には、記憶回路に対する次のフレームの書き込みを開始するまでは、記憶回路からのデータの読み出しを開始することができない。
【１０６３】
すなわち、インターリーバは、書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを共用した場合には、図９７に示すように、Ａで示すインターリーブ開始位置信号が入力されると、バンクＡの記憶回路に対するデータの書き込みが行われる。続いて、インターリーバは、Ｂで示す次のインターリーブ開始位置信号が入力されると、バンクＡの記憶回路に記憶されているデータの読み出しが行われるとともに、バンクＢの記憶回路に対するデータの書き込みが行われる。同様に、インターリーバは、Ｃで示す次のインターリーブ開始位置信号が入力されると、バンクＢの記憶回路に記憶されているデータの読み出しが行われるとともに、バンクＡの記憶回路に対するデータの書き込みが行われる。
【１０６４】
このように、インターリーバは、書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを共用した場合には、記憶回路に対する次のフレームの書き込みの開始と同時に、記憶回路からのデータの読み出しを開始する。
【１０６５】
ここで、一般には、外部から入力されるフレームの入力タイミングは変化し、フレームが一定間隔でインターリーバに入力されるとは限らない。すなわち、インターリーバは、通常、次のフレームが入力されるタイミングを把握することなく、動作する必要がある。
【１０６６】
このような状況の下で繰り返し復号を行うことを考慮した場合には、外部情報にインターリーブを施すとともに、受信値を遅延させる必要があるが、インターリーバにおいては、受信値の入力タイミングがフレーム毎に異なることから、遅延量の差異が生じることがある。すなわち、インターリーバにおいては、同図において、Ａ，Ｂで示す２つのインターリーブ開始位置信号間の時間と、Ｂ，Ｃで示す２つのインターリーブ開始位置信号間の時間とが異なることによって、受信値の遅延量が異なることがある。この場合、インターリーバにおいては、遅延させる受信値の入力タイミングを合わせることが困難であることから、繰り返し復号を実現するために複雑な処理を要することになる。
【１０６７】
そこで、インターリーバ１００は、書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを個別に設けることによって、記憶回路に対するデータの書き込みが終了した後、直ちにデータの読み出しを開始する構成とする。
【１０６８】
具体的には、インターリーバ１００は、図９８に示すように、Ａで示すインターリーブ開始位置信号ＴＩＳが入力されると、制御回路４００によって、書き込みアドレス用のカウンタをカウントアップし、バンクＡの記憶回路に対するデータの書き込みを行うと、直ちに読み出しアドレス用のカウンタをカウントアップし、記憶したデータの読み出しを行う。続いて、インターリーバ１００は、Ｂで示す次のインターリーブ開始位置信号ＴＩＳが入力されると、制御回路４００によって、書き込みアドレス用のカウンタをカウントアップし、バンクＡの記憶回路に対するデータの書き込みを行うと、直ちに読み出しアドレス用のカウンタをカウントアップし、記憶したデータの読み出しを行う。同様に、インターリーバ１００は、Ｃで示す次のインターリーブ開始位置信号ＴＩＳが入力されると、書き込みアドレス用のカウンタをカウントアップし、バンクＡの記憶回路に対するデータの書き込みを行うと、直ちに読み出しアドレス用のカウンタをカウントアップし、記憶したデータの読み出しを行う。
【１０６９】
このように、インターリーバ１００は、書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを個別に設けることによって、記憶回路に対するデータの書き込みが終了すると、直ちにデータの読み出しを開始することができる。すなわち、インターリーバ１００は、Ａ，Ｂで示す２つのインターリーブ開始位置信号ＴＩＳの間の時間と、Ｂ，Ｃで示す２つのインターリーブ開始位置信号ＴＩＳの間の時間とが異なる場合であっても、遅延量を常にインターリーブ長分に固定することができ、遅延させる受信値の入力タイミングを合わせることが容易となる。
【１０７０】
６−６  インターリーブ長分の遅延機能
“６−５”に示したように、書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを個別に設けた場合には、インターリーバ１００は、受信値を遅延させる際に、記憶回路からのデータの読み出し順序を、記憶回路に対するデータの書き込み順序と同一にする。すなわち、インターリーバ１００は、受信値を遅延させる際には、読み出しアドレスを、書き込みアドレスと同一にする。
【１０７１】
このようにすることによって、インターリーバ１００は、インターリーブ長分の遅延を実現することができる。特に、インターリーバ１００は、読み出しアドレス用のカウンタと、書き込みアドレス用のカウンタとを、ともにカウントアップし、シーケンシャルなアドレスデータを発生することによって、容易にインターリーブ長分の遅延を実現することができる。
【１０７２】
インターリーバ１００は、このような容易な手法を採用することで、例えば、繰り返し回数を変更した実験を行う場合には、要素復号器を複数連接するだけで、全体の復号遅延を変化させることなく、繰り返し回数を変更した繰り返し復号を行うことが可能となる。
【１０７３】
６−７  アドレス空間の利用方法
複数シンボルを入力し、複数シンボルを出力するインターリーブを行う際のアドレスの表現手法に関する特徴である。
【１０７４】
通常、記憶回路におけるＲＡＭに対しては、連続的なアドレスを割り当て、この連続的なアドレス空間を用いてデータの書き込みを行う。ここで、複数シンボルを入力し、複数シンボルを出力するインターリーブを行う際に、複数の記憶回路におけるＲＡＭに対して、連続的なアドレスを割り当てることを考える。
【１０７５】
例えば、入力シンボルとして３シンボルのデータを入力し、出力シンボルとして３シンボルのデータを出力するようなインターリーブを行う場合であって、９個の記憶回路のＲＡＭ０，ＲＡＭ１，ＲＡＭ２，ＲＡＭ３，ＲＡＭ４，ＲＡＭ５，ＲＡＭ６，ＲＡＭ７，ＲＡＭ８を用いてインターリーブを行う場合には、図９９に示すように、ＲＡＭ０，ＲＡＭ３，ＲＡＭ６に対しては、０シンボル目のデータＩ０（＝Ｉ０［０］，Ｉ０［１］，Ｉ０［２］，・・・，Ｉ０［３１］）が、各タイムスロット毎にワード方向に順次書き込まれ、ＲＡＭ１，ＲＡＭ４，ＲＡＭ７に対しては、１シンボル目のデータＩ１（＝Ｉ１［０］，Ｉ１［１］，Ｉ１［２］，・・・，Ｉ１［３１］）が、各タイムスロット毎にワード方向に順次書き込まれ、ＲＡＭ２，ＲＡＭ５，ＲＡＭ８に対しては、２シンボル目のデータＩ２（＝Ｉ２［０］，Ｉ２［１］，Ｉ２［２］，・・・，Ｉ２［３１］）が、各タイムスロット毎にワード方向に順次書き込まれる。そして、ＲＡＭ０，ＲＡＭ１，ＲＡＭ２からは、１系統のインターリーバ出力データＩＩＯ０が読み出され、ＲＡＭ３，ＲＡＭ４，ＲＡＭ５からは、他の１系統のインターリーバ出力データＩＩＯ１が読み出され、ＲＡＭ６，ＲＡＭ７，ＲＡＭ８からは、さらに他の１系統のインターリーバ出力データＩＩＯ２が読み出される。
【１０７６】
このとき、図１００に示すように、データを書き込む際には、ＲＡＭ０，ＲＡＭ３，ＲＡＭ６に対して、それぞれ、例えば０乃至３１までの連続的なアドレスが割り当てられるものとすると、ＲＡＭ１，ＲＡＭ４，ＲＡＭ７には、それぞれ、３２乃至６３までの連続的なアドレスが割り当てられ、さらに、ＲＡＭ２，ＲＡＭ５，ＲＡＭ８には、それぞれ、６４乃至９５までの連続的なアドレスが割り当てられる。
【１０７７】
これは、インターリーブ長を可変にする場合等において各ＲＡＭの全ての記憶領域にデータが記憶されない場合であっても、同様である。
【１０７８】
例えば、ＲＡＭ０，ＲＡＭ１，ＲＡＭ２，ＲＡＭ３，ＲＡＭ４，ＲＡＭ５，ＲＡＭ６，ＲＡＭ７，ＲＡＭ８は、それぞれ、同図に示した例では、３２タイムスロット分のインターリーブ長のインターリーブを行うことができるが、インターリーブ長を１０タイムスロット分とした場合には、例えば図１０１に示すように、ＲＡＭ０，ＲＡＭ３，ＲＡＭ６に対しては、それぞれ、３２タイムスロット分の全記憶領域のうち、０シンボル目のデータＩ０（＝Ｉ０［０］，Ｉ０［１］，Ｉ０［２］，・・・，Ｉ０［９］）が、各タイムスロット毎にワード方向に順次書き込まれ、残りの記憶領域にはデータが書き込まれない。また、ＲＡＭ１，ＲＡＭ４，ＲＡＭ７に対しては、それぞれ、３２タイムスロット分の全記憶領域のうち、１シンボル目のデータＩ１（＝Ｉ１［０］，Ｉ１［１］，Ｉ１［２］，・・・，Ｉ１［９］）が、各タイムスロット毎にワード方向に順次書き込まれ、残りの記憶領域にはデータが書き込まれない。さらに、ＲＡＭ２，ＲＡＭ５，ＲＡＭ８に対しては、それぞれ、３２タイムスロット分の全記憶領域のうち、２シンボル目のデータＩ２（＝Ｉ２［０］，Ｉ２［１］，Ｉ２［２］，・・・，Ｉ２［３１］）が、各タイムスロット毎にワード方向に順次書き込まれ、残りの記憶領域にはデータが書き込まれない。
【１０７９】
このとき、図１０２に示すように、データを書き込む際には、ＲＡＭ０，ＲＡＭ３，ＲＡＭ６に対して、それぞれ、例えば０乃至９までの連続的なアドレスが割り当てられ、ＲＡＭ１，ＲＡＭ４，ＲＡＭ７には、それぞれ、１０乃至１９までの連続的なアドレスが割り当てられ、さらに、ＲＡＭ２，ＲＡＭ５，ＲＡＭ８には、それぞれ、２０乃至２９までの連続的なアドレスが割り当てられるといったように、物理的に異なる複数のＲＡＭにわたって連続的なアドレスが割り当てられる。
【１０８０】
しかしながら、このようなアドレス空間を用いて、ＲＡＭに対するデータの書き込みを行った場合には、データを読み出す際に、タイムスロットと入力シンボルとの組み合わせを示すアドレスへの変換を行う必要がある。例えば、同図に示すＲＡＭ０，ＲＡＭ１，ＲＡＭ２の中から、“１２”のアドレス空間に記憶されているデータを読み出す際には、“１２”というアドレスを示す情報から、“１シンボル目の２タイムスロット”という情報への変換が必要となる。
【１０８１】
そのため、各ＲＡＭに対して連続的なアドレスを割り当ててデータの書き込みを行う場合には、データの読み出しの際にアドレスの変換を行うための変換回路を設ける必要がある。特に、シンボル数が２のべき乗でない場合には、アドレスの変換作業は複雑なものとなる。
【１０８２】
そこで、インターリーバ１００は、置換先のアドレスを、入力シンボルの情報と、各シンボル毎のタイムスロットの情報との組み合わせで与える。
【１０８３】
具体的には、インターリーバ１００は、上述したように、例えば、入力シンボルとして３シンボルのデータを入力し、出力シンボルとして３シンボルのデータを出力するようなインターリーブを行う場合であって、９個の記憶回路のＲＡＭ０，ＲＡＭ１，ＲＡＭ２，ＲＡＭ３，ＲＡＭ４，ＲＡＭ５，ＲＡＭ６，ＲＡＭ７，ＲＡＭ８を用いて３２タイムスロット分のインターリーブ長のインターリーブを行う場合には、制御回路４００によって、例えば図１０３に示すように、データを書き込む際に、ＲＡＭ０，ＲＡＭ３，ＲＡＭ６に対して、それぞれ、０−０，０−１，０−２，・・・，０−３１といったように、各タイムスロットを示す情報と０シンボル目であることを示す情報との組み合わせを、アドレスとして与える。また、インターリーバ１００は、ＲＡＭ１，ＲＡＭ４，ＲＡＭ７に対して、それぞれ、１−０，１−１，１−２，・・・，１−３１といったように、各タイムスロットを示す情報と１シンボル目であることを示す情報との組み合わせを、アドレスとして与える。さらに、インターリーバ１００は、ＲＡＭ２，ＲＡＭ５，ＲＡＭ８に対して、それぞれ、２−０，２−１，２−２，・・・，２−３１といったように、各タイムスロットを示す情報と２シンボル目であることを示す情報との組み合わせを、アドレスとして与える。
【１０８４】
実際には、同図に示すアドレスの割り当ては、図１００に示したアドレスの割り当てと等価なものである。例えば同図に示すＲＡＭ０，ＲＡＭ１，ＲＡＭ２の中から、“３４”のアドレス空間に記憶されているデータを読み出す場合を考える。この場合、“３４”というアドレスを示す情報は、７桁で２進数表記すると、“０１０００１０”と表される。ここで、上位２ビット“０１”は、１シンボル目であることを示し、下位５ビット“０００１０”は、２タイムスロット目であることを示すことがわかる。すなわち、図１０３に示したアドレスの割り当ては、図１００に示したアドレスの割り当てと実質的には等価であり、データを読み出す際のアドレスの変換作業は不要となる。
【１０８５】
また、インターリーバ１００は、例えばインターリーブ長を１０タイムスロット分としたインターリーブを行う場合には、例えば図１０４に示すように、データを書き込む際に、ＲＡＭ０，ＲＡＭ３，ＲＡＭ６に対して、それぞれ、０−０，０−１，０−２，・・・，０−９といったように、各タイムスロットを示す情報と０シンボル目であることを示す情報との組み合わせを、アドレスとして与える。また、インターリーバ１００は、ＲＡＭ１，ＲＡＭ４，ＲＡＭ７に対して、それぞれ、１−０，１−１，１−２，・・・，１−９といったように、各タイムスロットを示す情報と１シンボル目であることを示す情報との組み合わせを、アドレスとして与える。さらに、インターリーバ１００は、ＲＡＭ２，ＲＡＭ５，ＲＡＭ８に対して、それぞれ、２−０，２−１，２−２，・・・，２−９といったように、各タイムスロットを示す情報と２シンボル目であることを示す情報との組み合わせを、アドレスとして与える。
【１０８６】
同図に示すアドレスの割り当ては、図１０３に示したアドレスの割り当てと実質的は同一なものであることがわかる。そのため、インターリーバ１００は、インターリーブ長を可変にする場合等において各ＲＡＭの全ての記憶領域にデータが記憶されない場合であっても、データを読み出す際のアドレスの変換作業を不要とすることができる。
【１０８７】
このように、インターリーバ１００は、常に置換先のアドレスを、入力シンボルの情報と、各シンボル毎のタイムスロットの情報との組み合わせで与えることによって、複数シンボルを入力し、複数シンボルを出力するインターリーブを行う場合であって、インターリーブ長を可変にする場合であっても、データを読み出す際に、アドレスの変換作業を行う必要がないことから、特別なアドレスの変換回路を設ける必要がなく、回路規模の削減を図ることができる。
【１０８８】
なお、インターリーバ１００は、図１０３及び図１０４に示したアドレスの割り当てに限らず、タイムスロットと入力シンボルとを識別可能な組み合わせであれば、いかなるものであってもよい。
【１０８９】
６−８  パーシャルライト機能によるデータの書き込み及び読み出し
上述した記憶回路４０７1，４０７2，・・・，４０７16に関する特徴である。
【１０９０】
上述したように、記憶回路４０７は、パーシャルライト制御信号ＰＷに基づいて、パーシャルライト機能を有する。例えば、記憶回路４０７は、通常時には、図１０５（Ａ）に示すように、（ビット数Ｂ）×（ワード数Ｗ）の記憶容量を有するＲＡＭ４２４に対してＢビットのデータが入出力されるが、パーシャルライトのＲＡＭとして作用させる場合には、同図（Ｂ）に示すように、（ビット数Ｂ／２）×（ワード数２Ｗ）の記憶容量を有するＲＡＭ４２４に対してＢ／２ビットのデータが入出力されるようなものとして擬似的に構成することができる。
【１０９１】
これは、通常、ビット数及びワード数のともに制限があるＲＡＭをインターリーバに用いる場合には、インターリーブ長がＲＡＭのワード数に応じて制限されるためである。換言すれば、インターリーバ１００は、記憶回路４０７におけるＲＡＭ４２４を、パーシャルライトのＲＡＭとして作用させることによって、ＲＡＭ４２４における通常のワード数よりも長いインターリーブ長のインターリーブ処理をも実現することができる。
【１０９２】
このとき、インターリーバ１００には、例えば１６ビットといったＲＡＭがパーシャルライト機能時ではない通常時におけるビット数のデータが入力されることから、パーシャルライト機能時には、入力される１６ビットのデータのうち、所望の８ビットのデータ毎に切り替えてＲＡＭ４２４に与える必要がある。
【１０９３】
そこで、インターリーバ１００においては、記憶回路４０７に対して入力されるデータを上位ビットと下位ビットとに分割して２シンボルのデータとし、パーシャルライト機能時には、これらの２シンボルのデータのうち、常に同一のデータを選択するとともに、読み出されたデータのうち、アドレスに該当するものが、常に出力するデータの同じ位置となるように、データを選択する。
【１０９４】
具体的には、記憶回路４０７は、パーシャルライト機能時には、以下のようにしてデータの書き込み及び読み出しを行う。
【１０９５】
すなわち、記憶回路４０７は、セレクタ４２１，４２２のそれぞれによって、アドレスデータＡＲの最上位ビットの反転ビットＩＡＲと、アドレスデータＡＲの最上位ビットとを選択する。これにより、例えば、アドレスデータＡＲの最上位ビットが“０”であった場合には、データＶＩＨは、８ビットデータ“１１１１１１１１”となり、データＶＩＬは、８ビットデータ“００００００００”となる。同様に、アドレスデータＡＲの最上位ビットが“１”であった場合には、データＶＩＨは、８ビットデータ“００００００００”となり、データＶＩＬは、８ビットデータ“１１１１１１１１”となる。
【１０９６】
ここで、データＶＩＨは、ＲＡＭ４２４の記憶領域におけるビット方向の上位アドレスに対するデータの書き込みを行うか否かを示すものであり、データＶＩＬは、ＲＡＭ４２４の記憶領域におけるビット方向の下位アドレスに対するデータの書き込みを行うか否かを示すものである。記憶回路４０７は、これらのデータＶＩＨ，ＶＩＬの各ビットが“０”のアドレスに対してデータを書き込むものとする。
【１０９７】
これと同時に、記憶回路４０７は、セレクタ４２３によって、データＩＲの下位８ビットのデータＩＲ［７：０］を常に選択する。これにより、データＩは、データＩＲ［７：０］が反復されたもの、すなわち、Ｉ＝｛ＩＲ１，ＩＲ０｝＝｛ＩＲ［７：０］，ＩＲ［７：０］｝となる。
【１０９８】
そして、記憶回路４０７は、アドレスデータＡＲの最上位ビットを除いたデータであるアドレスデータＩＡと、データＶＩＨ，ＶＩＬとに基づいて、ＲＡＭ４２４に対して、所定のワードにおける上位アドレス又は下位アドレスのいずれか一方に、データＩＲ［７：０］を書き込む。すなわち、記憶回路４０７は、アドレスデータＡＲの最上位ビットが“０”であった場合には、ＲＡＭ４２４に対して、所定のワードにおける下位アドレスにデータＩＲ［７：０］を書き込み、アドレスデータＡＲの最上位ビットが“１”であった場合には、ＲＡＭ４２４に対して、所定のワードにおける上位アドレスにデータＩＲ［７：０］を書き込む。
【１０９９】
このように、記憶回路４０７は、パーシャルライト機能時には、ＲＡＭ４２４に対して、データＩＲの下位８ビットのデータＩＲ［７：０］のみを書き込む。
【１１００】
そして、記憶回路４０７は、アドレスデータＡＲの最上位ビットを除いたデータであるアドレスデータＩＡと、データＶＩＨ，ＶＩＬとに基づいて、ＲＡＭ４２４から、上位アドレスに記憶されているデータをデータＯＨとして読み出すとともに、下位アドレスに記憶されているデータをデータＯＬとして読み出し、セレクタ４２５，４２６により選択させることによって、データＯＲを出力する。
【１１０１】
このとき、データＯＲは、常に、ＲＡＭ４２４から読み出されたデータＯＨ，ＯＬのうち、アドレスに該当するものが、出力するデータの同じ位置となるように構成される。すなわち、データＯＲは、データＬＰＤが“０”であった場合には、該当するアドレスがＲＡＭ４２４における下位アドレスであることから、当該下位アドレスから読み出されたデータＯＬを下位ビットとし、上位アドレスから読み出されたデータＯＨを上位ビットとし、ＯＲ＝｛ＳＯＨ，ＳＯＬ｝＝｛ＯＨ，ＯＬ｝となる。同様に、データＯＲは、データＬＰＤが“１”であった場合には、該当するアドレスがＲＡＭ４２４における上位アドレスであることから、当該上位アドレスから読み出されたデータＯＨを下位ビットとし、下位アドレスから読み出されたデータＯＬを上位ビットとし、ＯＲ＝｛ＳＯＨ，ＳＯＬ｝＝｛ＯＬ，ＯＨ｝となる。
【１１０２】
このように、記憶回路４０７は、パーシャルライト機能時には、常に、入力されたデータＩＲを上位ビットと下位ビットとに分割して得られた下位ビットのデータＩＲ０をＲＡＭ４２４に書き込むとともに、常に、ＲＡＭ４２４から読み出されたデータのうち、アドレスに該当するものを、出力するデータの下位ビットとする。
【１１０３】
一方、パーシャルライト機能時ではなく、通常時には、記憶回路４０７は、以下のようにしてデータの書き込み及び読み出しを行う。
【１１０４】
すなわち、記憶回路４０７は、セレクタ４２１，４２２のそれぞれによって、値が“０”であるビットを選択する。これにより、例えば、データＶＩＨ，ＶＩＬは、常に８ビットデータ“００００００００”となる。
【１１０５】
これと同時に、記憶回路４０７は、セレクタ４２３によって、データＩＲの上位８ビットのデータＩＲ［１５：８］を常に選択する。これにより、データＩは、Ｉ＝｛ＩＲ１，ＩＲ０｝＝｛ＩＲ［１５：８］，ＩＲ［７：０］｝となり、データＩＲそのものとなる。
【１１０６】
そして、記憶回路４０７は、データＶＩＨ，ＶＩＬが、ともに、“００００００００”であることから、アドレスデータＡＲの最上位ビットを除いたデータであるアドレスデータＩＡと、データＶＩＨ，ＶＩＬとに基づいて、ＲＡＭ４２４に対して、所定のワードにおける上位アドレス及び下位アドレスの両者に、データＩを書き込む。すなわち、記憶回路４０７は、ＲＡＭ４２４に対して、所定のワードにおける上位アドレスにデータＩＲ［１５：８］を書き込み、下位アドレスにデータＩＲ［７：０］を書き込む。
【１１０７】
このように、記憶回路４０７は、通常時には、ＲＡＭ４２４に対して、データＩＲそのものを書き込む。
【１１０８】
そして、記憶回路４０７は、アドレスデータＡＲの最上位ビットを除いたデータであるアドレスデータＩＡと、データＶＩＨ，ＶＩＬとに基づいて、ＲＡＭ４２４から、上位アドレスに記憶されているデータをデータＯＨとして読み出すとともに、下位アドレスに記憶されているデータをデータＯＬとして読み出し、セレクタ４２５，４２６により選択させることによって、データＯＲを出力する。
このとき、データＯＲは、データＬＰＤが“０”であることから、常に、ＲＡＭ４２４における下位アドレスから読み出されたデータＯＬを下位ビットとし、上位アドレスから読み出されたデータＯＨを上位ビットとし、ＯＲ＝｛ＳＯＨ，ＳＯＬ｝＝｛ＯＨ，ＯＬ｝となる。すなわち、データＯＲは、ＲＡＭ４２４における所定のワードから読み出されたデータそのものとなる。
【１１０９】
このように、記憶回路４０７は、通常時には、データＩＲをＲＡＭ４２４に対して書き込み、データＯＲとして出力する。
【１１１０】
このようにすることによって、インターリーバ１００は、入出力される複数ビットのデータのうち、上位ビットのデータ又は下位ビットのデータのみを把握すればよく、どのビットのデータが書き込み及び読み出しに寄与しているのかを意識する必要がない。そのため、インターリーバ１００は、通常時には、（ビット数Ｂ）×（ワード数Ｗ）の記憶容量を有するＲＡＭを、パーシャルライトのＲＡＭとして作用させ、半数ビット×２倍長ワードのＲＡＭとして用いることが容易となる。
【１１１１】
なお、ここでは、パーシャルライト機能時には、ＲＡＭ４２４の記憶容量が、通常時に比べ、半数ビット×２倍長ワードとなるものとして説明したが、この手法は、この記憶容量に限定されるものではない。この手法は、パーシャルライト機能時におけるＲＡＭ４２４の記憶容量が、通常時に比べ、例えば、１／３数ビット×３倍長ワード、１／４数ビット×４倍長ワード、１ビット×ビット数倍長ワードとなる場合といったように、任意の記憶容量に応用可能である。
【１１１２】
すなわち、インターリーバとしては、記憶回路に対して入力されるデータを少なくとも上位ビットと下位ビットとに分割して少なくとも２シンボルのデータとし、パーシャルライト機能時には、これらの少なくとも２シンボルのデータのうち、常に同一のデータを選択するとともに、読み出されたデータのうち、アドレスに該当するものが、常に出力するデータの同じ位置となるように、データを選択するようにすればよい。
【１１１３】
６−９  偶数長遅延及び奇数長遅延への対応
上述した奇数長遅延補償回路４０２及び記憶回路４０７1，４０７2，・・・，４０７16に関する特徴である。
【１１１４】
符号長可変の繰り返し復号を行う場合には、可変長の遅延を行う必要がある。
インターリーバ１００は、２バンクのＲＡＭを用いて、１タイムスロットでデータの書き込み及び読み出しを切り替えることによって、遅延長、すなわち、インターリーブ長の半分のタイムスロット分のワード数のＲＡＭを用いれば、インターリーブ長の遅延を実現することができる。
【１１１５】
この動作を簡略化して説明するために、３タイムスロット分のワード数のＲＡＭを２バンク用いて６タイムスロット分のインターリーブ長の遅延を実現する例について図１０６を用いて示す。ここでは、バンクＡ，ＢのＲＡＭには、それぞれ、便宜上０，１，２のアドレスが割り当てられているものとする。また、バンクＡのＲＡＭには、アドレス０，１，２の各記憶領域に対して、データＡ，Ｃ，Ｅが予め記憶されており、バンクＢのＲＡＭには、アドレス１，２の各記憶領域に対して、データＢ，Ｄが予め記憶されているとともに、アドレス０の記憶領域には、データが記憶されていないものとする。さらに、同図中においては、データの書き込みを“Ｗ”で表し、データの読み出しを“Ｒ”で表すものとする。
【１１１６】
まず、インターリーバ１００は、０タイムスロット目では、バンクＡのＲＡＭにおけるアドレス０の記憶領域から、データＡを読み出すとともに、バンクＢのＲＡＭにおけるアドレス０の記憶領域に対して、データＦを書き込む。
【１１１７】
続いて、インターリーバ１００は、１タイムスロット目では、バンクＡのＲＡＭにおけるアドレス０の記憶領域、すなわち、０タイムスロット目でデータＡが読み出された記憶領域に対して、データＧを書き込むとともに、バンクＢのＲＡＭにおけるアドレス１の記憶領域から、データＢを読み出す。
【１１１８】
続いて、インターリーバ１００は、２タイムスロット目では、バンクＡのＲＡＭにおけるアドレス１の記憶領域から、データＣを読み出すとともに、バンクＢのＲＡＭにおけるアドレス１の記憶領域、すなわち、１タイムスロット目でデータＦが読み出された記憶領域に対して、データＨを書き込む。
【１１１９】
続いて、インターリーバ１００は、３タイムスロット目では、バンクＡのＲＡＭにおけるアドレス１の記憶領域、すなわち、２タイムスロット目でデータＣが読み出された記憶領域に対して、データＩを書き込むとともに、バンクＢのＲＡＭにおけるアドレス２の記憶領域から、データＤを読み出す。
【１１２０】
続いて、インターリーバ１００は、４タイムスロット目では、バンクＡのＲＡＭにおけるアドレス２の記憶領域から、データＥを読み出すとともに、バンクＢのＲＡＭにおけるアドレス２の記憶領域、すなわち、３タイムスロット目でデータＤが読み出された記憶領域に対して、データＪを書き込む。
【１１２１】
続いて、インターリーバ１００は、５タイムスロット目では、バンクＡのＲＡＭにおけるアドレス２の記憶領域、すなわち、４タイムスロット目でデータＥが読み出された記憶領域に対して、データＫを書き込むとともに、バンクＢのＲＡＭにおけるアドレス０の記憶領域から、データＦを読み出す。
【１１２２】
そして、インターリーバ１００は、６タイムスロット目では、バンクＡのＲＡＭにおけるアドレス０の記憶領域から、データＧを読み出すとともに、バンクＢのＲＡＭにおけるアドレス０の記憶領域、すなわち、５タイムスロット目でデータＦが読み出された記憶領域に対して、データＬを書き込む。
【１１２３】
インターリーバ１００は、このように２バンクのＲＡＭを用いて、１タイムスロットでデータの書き込み及び読み出しを切り替える。このような動作によるデータの書き込み及び読み出しのタイミングチャートは、図１０７に示すようになる。すなわち、バンクＢに書き込まれたデータＦは、インターリーブ長分の時間の経過後に読み出され、同様に、バンクＡに書き込まれたデータＧも、インターリーブ長分の時間の経過後に読み出されることになる。
【１１２４】
このように、インターリーバ１００は、一方のバンクにデータを書き込むとき、他方のバンクからデータを読み出す動作を、１タイムスロット毎に切り替えることによって、インターリーブ長の半分のタイムスロット分のワード数のＲＡＭを２バンク用い、インターリーブ長の遅延を実現することができる。
【１１２５】
ところで、この手法による遅延処理の場合、ＲＡＭの記憶容量が少なくて済むことから、回路規模の削減を図ることができるものの、遅延長は偶数長に限られる。
【１１２６】
そこで、インターリーバ１００は、偶数長遅延のときには、上述した動作を行うことによりＲＡＭのみで遅延長分の遅延を行い、奇数長遅延のときには、上述した動作を行い遅延長−１分の遅延を行うとともに、レジスタを用いて１タイムスロット分の遅延を行うように、切り替える機能を備えることによって、偶数長遅延及び奇数長遅延の両方に対応する。
【１１２７】
具体的には、インターリーバ１００は、上述したように、奇数長遅延補償回路４０２によって、制御回路６０から供給されるインターリーブ長情報ＣＩＮＬに基づいて、偶数長遅延を行う場合には、データＴＤＩに対して、ＲＡＭによる遅延のみを行い、奇数長遅延を行う場合には、データＴＤＩに対して、ＲＡＭによる遅延長−１分の遅延と、レジスタによる１タイムスロット分の遅延を行うように、遅延の対象とするデータであるデータＴＤＩを選択する。
【１１２８】
このようにすることによって、インターリーバ１００は、少ない回路規模の下に、偶数長遅延及び奇数長遅延の両方に対応することができる。
【１１２９】
６−１０  入出力順序入れ替え機能
上述した入力データ選択回路４０６及び出力データ選択回路４０８に関する特徴である。
【１１３０】
軟出力復号回路９０は、上述したように、任意の符号の復号を可能とするものであるが、任意の符号の復号を行うために、符号に応じた入出力パターンを予め求めておく必要がある。そのため、軟出力復号回路９０は、実際には、全ての符号の復号を１つの回路で行うのは非常に困難であり、任意に想定された符号を対象とした復号を行うのが現実的である。
【１１３１】
このように、軟出力復号回路９０に限らず、復号対象となる符号に限定がある軟出力復号回路は、一般に、複数シンボルを入力し、複数シンボルを出力する任意の符号の軟出力復号を行う際、当該任意の符号に対して、入力シンボル間の順序及び／又は出力シンボル間の順序のみが異なる符号を復号することができない場合がある。
【１１３２】
例えば、要素復号器５０を連接して復号装置３を構成し、ＳＣＣＣによる符号化を行う符号化装置による符号を復号する場合において、当該符号化装置が、外符号の符号化を行う畳み込み符号化器として、軟出力復号回路９０が復号可能な任意の畳み込み符号化器を備え、インターリーバとして、インラインインターリーブを行うものを備え、さらに、内符号の符号化を行う畳み込み符号化器として、軟出力復号回路９０が復号可能な先に図２４に示した畳み込み符号化器を備えるものとする。この場合、復号装置３は、符号化装置による符号を復号することが可能であることはいうまでもない。
【１１３３】
ところで、符号化装置における内符号の符号化を行う畳み込み符号化器として図１０８に示すものを用い、軟出力復号回路９０が当該畳み込み符号を復号対象としていない場合には、復号装置３は、この符号化装置による符号を復号することが不可能となる。
【１１３４】
ここで、同図に示す畳み込み符号化器は、入力データｉ0，ｉ1，ｉ2を、それぞれ、０，１，２シンボル目とすると、図２４に示した畳み込み符号化器と比べ、１シンボル目の入力データｉ1と、２シンボル目の入力データｉ2とを入れ替えたものであることがわかる。すなわち、図１０８に示す畳み込み符号化器を備える符号化装置は、図１０９に示すように、外符号の符号化を行う畳み込み符号化器から出力される３ビットの符号化データがインターリーバに入力される際に、１シンボル目の符号化データと、２シンボル目の符号化データとを入れ替え、内符号の符号化を行う畳み込み符号化器として、図２４に示した畳み込み符号化器を用いた符号化装置と等価なものであることがわかる。
【１１３５】
このように、復号装置３は、軟出力復号回路９０が復号対象としていない符号を要素符号とする符号化装置に対しては、当該要素符号が、入力シンボル間の順序及び／又は出力シンボル間の順序のみが異なるものであっても、復号することが不可能となる。
【１１３６】
換言すれば、符号化側としては、例えばインラインインターリーブやペアワイズインターリーブといった各シンボル毎に個別的にインターリーブを施す場合には、入出力のシンボルの位置が一意に決定されるが、入出力のシンボルの位置を変化させた符号化を行うことによって、幅広い符号化を行うといった要求があることは否めない。特に、マッシィ型の符号を要素符号として用いている符号化装置の場合、組織成分の出力位置を入れ替えることによって、多様な符号化を行うことができる。そのため、復号装置としては、このような符号の復号にも対応する必要がある。
【１１３７】
そこで、インターリーバ１００は、複数シンボルを入力し、複数シンボルを出力するインターリーブを行う際、入力シンボル間の順序及び／又は出力シンボル間の順序を入れ替える機能を有することによって、同一アドレスに基づいた複数通りのインターリーブを実現する。
【１１３８】
具体的には、インターリーバ１００は、インターリーブ処理を行う場合には、入力データ選択回路４０６によって、インターリーバ入出力置換情報ＣＩＰＴに基づいて、各シンボル間の入力順序を相互に置換し、各シンボルの入力位置と出力位置とを切り替える。
【１１３９】
また、インターリーバ１００は、デインターリーブ処理を行う場合には、出力データ選択回路４０８によって、インターリーバ入出力置換情報ＣＩＰＴに基づいて、各シンボル間の出力順序を相互に置換し、各シンボルの入力位置と出力位置とを切り替える。
【１１４０】
換言すれば、復号装置３がＳＣＣＣによる符号の復号を行うものとすると、当該復号装置３を構成する隣接する２つの要素復号器５０I，５０Jは、簡略化すると例えば図１１０に示す構成として表すことができる。ここでは、入力シンボル間の順序及び／又は出力シンボル間の順序を入れ替える機能を有する回路を、シンボル入れ替え回路と称するものとする。
【１１４１】
すなわち、要素復号器５０Iは、軟出力復号回路９０から出力されたデータがインターリーバ１００に入力されると、インターリーバ１００によって、デインターリーブ処理を行う。このとき、要素復号器５０Iは、インターリーバ１００における記憶回路４０７を経ることによりデインターリーブ処理が施された複数シンボルからなるデータＯＲが出力データ選択回路４０８に相当するシンボル入れ替え回路６１０に入力されると、このシンボル入れ替え回路６１０によって、出力すべきインターリーバ出力データＩＩＯを選択した後、複数シンボルからなるこれらのインターリーバ出力データＩＩＯについて、符号構成に応じて、各シンボル間の入力順序を相互に置換し、すなわち、各シンボルの順序を入れ替え、次段の要素復号器５０Jに供給する。
【１１４２】
一方、要素復号器５０Jは、要素復号器５０Iから供給され、軟出力復号回路９０により軟出力復号処理が施されたデータがインターリーバ１００に入力されると、インターリーバ１００によって、インターリーブ処理を行う。このとき、要素復号器５０Jは、インターリーバ１００における入力データ選択回路４０６に相当するシンボル入れ替え回路６１１によって、軟出力復号回路９０から供給されて各種処理が施された複数シンボルからなるデータＩについて、符号構成に応じて、各シンボルの順序を入れ替え、データＩＲとして記憶回路４０７に供給する。このようにしてインターリーブが施されたデータは、図示しない次段の要素復号器に供給される。
【１１４３】
このようにすることによって、インターリーバ１００は、入力シンボル間の順序及び／又は出力シンボル間の順序を入れ替え、同一アドレスに基づいた複数通りのインターリーブを実現することができる。特に、インターリーバ１００は、通常のインラインインターリーバやペアワイズインターリーバのように、入出力されるシンボル数が同じであり且つ入力位置と出力位置とが１対１に決められているインターリーブを行う場合には、入力シンボルの位置と出力シンボルの位置との接続を切り替えることが可能となる。
【１１４４】
そのため、要素復号器５０は、復号対象となる符号に限定がある汎用の軟出力復号回路を備えた場合であっても、当該軟出力復号回路が復号可能な符号に対して、入力シンボル間の順序及び／又は出力シンボル間の順序のみが異なる符号を復号することができる。また、要素復号器５０は、軟出力復号回路９０が復号対象とする符号の数を限定できることから、回路の簡略化及び規模削減を図ることができる。
【１１４５】
なお、ここでは、各シンボルの順序を入れ替える機能をインターリーバ１００に設けた例について説明したが、必ずしもインターリーバ１００の機能として設ける必要はなく、例えば軟出力復号回路９０の機能として設けるようにしてもよい。
【１１４６】
各シンボルの順序を入れ替える機能を軟出力復号回路９０の機能として設ける場合、復号装置３がＳＣＣＣによる符号の復号を行うものとすると、当該復号装置３を構成する隣接する２つの要素復号器５０K，５０Lは、簡略化すると例えば図１１１に示す構成として表すことができる。
【１１４７】
すなわち、要素復号器５０Kは、軟出力復号回路９０及びインターリーバ１００によって、通常の軟出力復号処理及びデインターリーブ処理を行い、得られたデータを次段の要素復号器５０Lに供給する。
【１１４８】
一方、要素復号器５０Lは、要素復号器５０Kから供給された複数シンボルからなるデータ、すなわち、外部情報又はインターリーブデータＴＥＸＴ等の軟出力復号処理に必要な情報が軟出力復号回路９０に入力されると、これらの情報について、シンボル入れ替え回路６１２によって、符号構成に応じて、各シンボルの順序を入れ替える。さらに、要素復号器５０Lは、軟出力復号回路９０と同様の各種処理を経て、外部情報算出回路１６３により算出された複数シンボルからなる外部情報ＳＯＥについて、シンボル入れ替え回路６１３によって、符号構成に応じて、各シンボルの順序を入れ替え、各種処理を施した後、データＴＩＩとしてインターリーバ１００に供給する。そして、要素復号器５０Lは、入力されたデータＴＩＩに対してインターリーブ処理を施し、図示しない次段の要素復号器に供給する。
【１１４９】
このようにすることによって、軟出力復号回路９０は、入力シンボル間の順序及び／又は出力シンボル間の順序のみが異なる符号の復号が可能となる。そのため、要素復号器５０は、軟出力復号回路９０が復号対象とする符号の数を限定できることから、回路の簡略化及び規模削減を図ることができる。特に、要素復号器５０は、マッシィ型の符号を繰り返し復号する場合には、組織成分の出力位置を入れ替えた符号を復号することができる。
【１１５０】
なお、図１１１に示した要素復号器５０Lにおいて、シンボル入れ替え回路６１３を軟出力復号回路９０が有するものとして説明したが、このシンボル入れ替え回路６１３をインターリーバ１００が有してもよい。すなわち、要素復号器５０は、デインターリーブ処理を行うインターリーバ１００の後段、及び、インターリーブ処理を行うインターリーバ１００の前段に、符号構成に応じたシンボル入れ替え回路を備えるものであればよい。勿論、復号装置３がＰＣＣＣによる符号の復号を行うものである場合であっても、要素復号器５０は、デインターリーブ処理を行うインターリーバ１００の後段、及び、インターリーブ処理を行うインターリーバ１００の前段に、符号構成に応じたシンボル入れ替え回路を備える構成とすればよい。
【１１５１】
７．  まとめ
以上説明したように、符号化装置１と復号装置３とを用いて構成されるデータ送受信システムにおいて、復号装置３を構成する要素復号器５０は、Ｉα算出回路１５８及びＩβ算出回路１５９のそれぞれによって、算出された複数の対数尤度Ｉα，Ｉβのうち、確率α，βが最大のメトリックに対応する対数尤度Ｉα，Ｉβが所定の値を超過したときに、複数の対数尤度Ｉα，Ｉβのそれぞれに対して、所定の値を用いた演算を行い、対数尤度Ｉα，Ｉβの値の分布の偏りを是正するための正規化を行うことによって、適切な対数尤度同士の差分を表現することができ、符号の復号を高精度に行うことができる。
【１１５２】
すなわち、これらの符号化装置１と復号装置３とを用いて構成されるデータ送受信システムは、高精度の復号を実現するものであり、ユーザに高い利便を提供することができるものである。
【１１５３】
なお、本発明は、上述した実施の形態に限定されるものではなく、例えば、上述した実施の形態では、要素復号器５０が、軟出力復号回路９０及びインターリーバ１００等をＬＳＩとして集積させて構成されるものとして説明したが、軟出力復号回路９０のみをＬＳＩ等の単一モジュールとして構成し、この軟出力復号回路９０を複数連接するとともに、インターリーバ１００を含む他の各部を外付けの機器として設けることによって、復号装置３として構成してもよい。同様に、本発明は、インターリーバ１００のみをＬＳＩ等の単一モジュールとして構成し、このインターリーバ１００を複数連接するとともに、軟出力復号回路９０を含む他の各部を外付けの機器として設けることによって、復号装置３として構成してもよい。すなわち、本発明は、少なくとも軟出力復号回路９０又はインターリーバ１００がＬＳＩ等の単一モジュールとして構成されていれば、繰り返し復号に適用できるものである。
【１１５４】
また、上述した実施の形態では、軟出力復号回路９０による補正項の算出の際には、補正項の値をＲＯＭ等から構成されるルックアップテーブルから読み出すものとして説明したが、本発明は、ＲＯＭの代わりに、例えばＲＡＭ等の各種メモリであってもよく、また、例えばいわゆる線形近似回路等を設けることによって、補正項の値を算出する場合にも適用可能である。
【１１５５】
さらに、上述した実施の形態では、インターリーバ１００に対して入出力されるシンボル数を最大で３シンボルであるものとして説明したが、本発明は、３シンボル以上の任意の数のシンボルを入出力する場合にも適用することができる。
【１１５６】
さらにまた、上述した実施の形態では、インターリーバ１００が１６個の記憶回路４０７1，４０７2，・・・，４０７16を有するものとして説明したが、本発明は、符号構成に応じた任意の数の記憶回路を有する場合にも適用できることは勿論である。
【１１５７】
また、上述した実施の形態では、インターリーバ１００が対応可能なインターリーブの種類として、ランダムインターリーブ、インラインインターリーブ及びペアワイズインターリーブについて説明したが、本発明は、これらのインターリーブの種類に限定されるものではなく、他の種類のインターリーブにも適用可能である。
【１１５８】
さらに、上述した実施の形態では、復号装置として、Ｌｏｇ−ＢＣＪＲアルゴリズムに基づくＭＡＰ復号を行うものとして説明したが、本発明は、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムに基づくＭＡＰ復号を行う復号装置であっても適用可能である。
【１１５９】
さらにまた、上述した実施の形態では、符号化装置及び復号装置をデータ送受信システムにおける送信装置及び受信装置に適用して説明したが、本発明は、例えばフロッピーディスク、ＣＤ−ＲＯＭ又はＭＯ（Magneto Optical）といった磁気、光又は光磁気ディスク等の記録媒体に対する記録及び／又は再生を行う記録及び／又は再生装置に適用することもできる。この場合、符号化装置により符号化されたデータは、無記憶通信路に等価とされる記録媒体に記録され、復号装置により復号されて再生される。
【１１６０】
以上のように、本発明は、その趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【１１６１】
【発明の効果】
以上詳細に説明したように、本発明にかかる軟出力復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて復号を行う軟出力復号装置であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを備え、第２の確率算出手段は、算出した複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、第３の確率算出手段は、算出した複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有する。
【１１６２】
したがって、本発明にかかる軟出力復号装置は、第２の確率算出手段における第２の確率正規化手段によって、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うとともに、第３の確率算出手段における第３の確率正規化手段によって、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うことによって、適切な対数尤度同士の差分を表現することができ、高精度に復号を行うことができる。
【１１６３】
また、本発明にかかる軟出力復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて復号を行う軟出力復号方法であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを備え、第２の確率算出工程は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、第３の確率算出工程は、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有する。
【１１６４】
したがって、本発明にかかる軟出力復号方法は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うとともに、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うことによって、適切な対数尤度同士の差分を表現することを可能とし、高精度に復号を行うことを可能とする。
【１１６５】
さらに、本発明にかかる復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーバを介して連接して生成された符号を繰り返し復号するための、要素符号に対応する復号装置であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを少なくとも有し、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号手段と、この軟出力復号手段により生成された外部情報を入力し、インターリーバと同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、インターリーバにより並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替えるインターリーブ手段とを備え、第２の確率算出手段は、算出した複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、第３の確率算出手段は、算出した複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有する。
【１１６６】
したがって、本発明にかかる復号装置は、第２の確率算出手段における第２の確率正規化手段によって、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うとともに、第３の確率算出手段における第３の確率正規化手段によって、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行い、軟出力復号を行うことによって、適切な対数尤度同士の差分を表現することができ、高精度に復号を行うことができる。
【１１６７】
さらにまた、本発明にかかる復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号を第１のインターリーブ工程を介して連接して生成された符号を繰り返し復号するための、要素符号に対応する復号方法であって、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを少なくとも有し、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号工程と、この軟出力復号工程にて生成された外部情報を入力し、第１のインターリーブ工程と同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、第１のインターリーブ工程にて並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替える第２のインターリーブ工程とを備え、第２の確率算出工程は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、第３の確率算出工程は、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有する。
【１１６８】
したがって、本発明にかかる復号方法は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うとともに、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行い、軟出力復号を行うことによって、適切な対数尤度同士の差分を表現することを可能とし、高精度に復号を行うことを可能とする。
【１１６９】
また、本発明にかかる復号装置は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号をインターリーバを介して連接して生成された符号を繰り返し復号する復号装置であって、当該復号装置は、連接された複数の要素復号器からなり、これらの要素復号器は、それぞれ、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号手段と、この軟出力復号手段により生成された外部情報を入力し、インターリーバと同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、インターリーバにより並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替えるインターリーブ手段とを備え、軟出力復号手段は、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出手段と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出手段とを有し、第２の確率算出手段は、算出した複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化手段を有し、第３の確率算出手段は、算出した複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化手段を有する。
【１１７０】
したがって、本発明にかかる復号装置は、繰り返し復号を行う際に、第２の確率算出手段における第２の確率正規化手段によって、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うとともに、第３の確率算出手段における第３の確率正規化手段によって、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行い、軟出力復号を行うことによって、適切な対数尤度同士の差分を表現することができ、高精度に復号を行うことができる。
【１１７１】
さらに、本発明にかかる復号方法は、軟入力とされる受信値に基づいて任意のステートを通過する確率を対数表記した対数尤度を求め、この対数尤度を用いて、複数の要素符号を第１のインターリーブ工程を介して連接して生成された符号を繰り返し復号する復号方法であって、当該復号方法は、複数の要素復号工程が連続して行われるものであり、これらの要素復号工程は、それぞれ、受信値及び事前確率情報を入力して軟出力復号を行い、各時刻における軟出力を対数表記した対数軟出力及び／又は外部情報を生成する軟出力復号工程と、この軟出力復号工程にて生成された外部情報を入力し、第１のインターリーブ工程と同一の置換位置情報に基づいて、外部情報の順序を置換して並べ替える、又は、第１のインターリーブ工程にて並べ替えられた情報の配列を元に戻すように、外部情報の順序を置換して並べ替える第２のインターリーブ工程とを備え、軟出力復号工程は、受信値毎に、符号の出力パターンと受信値により決定される第１の確率を対数表記した第１の対数尤度を算出する第１の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、符号化開始ステートから時系列順に各ステートに至る第２の確率を対数表記した第２の対数尤度を算出する第２の確率算出工程と、第１の対数尤度に基づいて、受信値毎に、打ち切りステートから時系列の逆順に各ステートに至る第３の確率を対数表記した第３の対数尤度を算出する第３の確率算出工程とを有し、第２の確率算出工程は、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第２の対数尤度の値の分布の偏りを是正するための正規化を行う第２の確率正規化工程を有し、第３の確率算出工程は、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を行い、第３の対数尤度の値の分布の偏りを是正するための正規化を行う第３の確率正規化工程を有する。
【１１７２】
したがって、本発明にかかる復号方法は、繰り返し復号を行う際に、算出された複数の第２の対数尤度のうち、第２の確率が最大のメトリックに対応する第２の対数尤度が所定の値を超過したときに、複数の第２の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行うとともに、算出された複数の第３の対数尤度のうち、第３の確率が最大のメトリックに対応する第３の対数尤度が所定の値を超過したときに、複数の第３の対数尤度のそれぞれに対して、所定の値を用いた演算を施して正規化を行い、軟出力復号を行うことによって、適切な対数尤度同士の差分を表現することを可能とし、高精度に復号を行うことを可能とする。
【図面の簡単な説明】
【図１】本発明の実施の形態として示すデータ送受信システムを適用する通信モデルの構成を説明するブロック図である。
【図２】同データ送受信システムにおける符号化装置の一例の構成を説明するブロック図であって、ＰＣＣＣによる符号化を行う符号化装置の構成を説明するブロック図である。
【図３】同データ送受信システムにおける復号装置の一例の構成を説明するブロック図であって、図２に示す符号化装置による符号の復号を行う復号装置の構成を説明するブロック図である。
【図４】同データ送受信システムにおける符号化装置の一例の構成を説明するブロック図であって、ＳＣＣＣによる符号化を行う符号化装置の構成を説明するブロック図である。
【図５】同データ送受信システムにおける復号装置の一例の構成を説明するブロック図であって、図４に示す符号化装置による符号の復号を行う復号装置の構成を説明するブロック図である。
【図６】要素復号器の概略構成を説明するブロック図である。
【図７】同要素復号器の左半分部分の詳細構成を説明するブロック図である。
【図８】同要素復号器の右半分部分の詳細構成を説明するブロック図である。
【図９】同要素復号器が備える復号受信値選択回路の構成を説明するブロック図である。
【図１０】同要素復号器が備えるエッジ検出回路の構成を説明するブロック図である。
【図１１】同要素復号器が備える軟出力復号回路の概略構成を説明するブロック図である。
【図１２】同軟出力復号回路の左半分部分の詳細構成を説明するブロック図である。
【図１３】同軟出力復号回路の右半分部分の詳細構成を説明するブロック図である。
【図１４】ボーゼンクラフト型の畳み込み符号化器の一構成例を説明するブロック図である。
【図１５】ボーゼンクラフト型の畳み込み符号化器の他の一構成例を説明するブロック図である。
【図１６】マッシィ型の畳み込み符号化器の一構成例を説明するブロック図である。
【図１７】マッシィ型の畳み込み符号化器の他の一構成例を説明するブロック図である。
【図１８】図１４に示す畳み込み符号化器の具体的構成例を説明するブロック図である。
【図１９】図１８に示す畳み込み符号化器におけるトレリスを説明する図である。
【図２０】図１５に示す畳み込み符号化器の具体的構成例を説明するブロック図である。
【図２１】図２０に示す畳み込み符号化器におけるトレリスを説明する図である。
【図２２】図１６に示す畳み込み符号化器の具体的構成例を説明するブロック図である。
【図２３】図２２に示す畳み込み符号化器におけるトレリスを説明する図である。
【図２４】図１７に示す畳み込み符号化器の具体的構成例を説明するブロック図である。
【図２５】図２４に示す畳み込み符号化器におけるトレリスを説明する図である。
【図２６】同軟出力復号回路が有する内部消去情報生成回路の構成を説明するブロック図である。
【図２７】同軟出力復号回路が有する終結情報生成回路の構成を説明するブロック図である。
【図２８】同軟出力復号回路が有する受信値及び事前確率情報選択回路の構成を説明するブロック図である。
【図２９】同軟出力復号回路が有するＩγ算出回路の構成を説明するブロック図である。
【図３０】同軟出力復号回路が有するＩγ分配回路の構成を説明するブロック図である。
【図３１】同Ｉγ分配回路が有するＩβ０用パラレルパス処理回路の構成を説明するブロック図である。
【図３２】同Ｉβ０用パラレルパス処理回路が有するパラレルパス用ｌｏｇ−ｓｕｍ演算回路の構成を説明するブロック図である。
【図３３】同軟出力復号回路が有するＩα算出回路の構成を説明するブロック図である。
【図３４】同Ｉα算出回路が有する加算比較選択回路の構成を説明するブロック図であって、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号に対して処理を行う加算比較選択回路の構成を説明するブロック図である。
【図３５】同加算比較選択回路が有する補正項算出回路の構成を説明するブロック図である。
【図３６】同Ｉα算出回路が有する加算比較選択回路の構成を説明するブロック図であって、トレリス上の各ステートから次時刻におけるステートへと４本のパスが到達するような符号に対して処理を行う加算比較選択回路の構成を説明するブロック図である。
【図３７】同Ｉα算出回路が有するＩα＋Ｉγ算出回路の構成を説明するブロック図である。
【図３８】同軟出力復号回路が有するＩβ算出回路の構成を説明するブロック図である。
【図３９】同Ｉβ算出回路が有する加算比較選択回路の構成を説明するブロック図であって、トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号に対して処理を行う加算比較選択回路の構成を説明するブロック図である。
【図４０】同Ｉβ算出回路が有する加算比較選択回路の構成を説明するブロック図であって、トレリス上の各ステートから次時刻におけるステートへと４本のパスが到達するような符号に対して処理を行う加算比較選択回路の構成を説明するブロック図である。
【図４１】同軟出力復号回路が有する軟出力算出回路の構成を説明するブロック図である。
【図４２】同軟出力算出回路が有するｌｏｇ−ｓｕｍ演算回路の構成を説明するブロック図である。
【図４３】同軟出力復号回路が有する受信値又は事前確率情報分離回路の構成を説明するブロック図である。
【図４４】同軟出力復号回路が有する外部情報算出回路の構成を説明するブロック図である。
【図４５】同軟出力復号回路が有する硬判定回路の構成を説明するブロック図である。
【図４６】同要素復号器が備えるインターリーバにおける遅延用のＲＡＭの概念を説明するためのブロック図である。
【図４７】遅延用のＲＡＭの概念を説明するためのブロック図であって、複数個のＲＡＭから構成されていることを説明するためのブロック図である。
【図４８】遅延用のＲＡＭの概念を説明するためのブロック図であって、同インターリーバが有する制御回路により生成したアドレスを適切に変換して各ＲＡＭに与える様子を説明するためのブロック図である。
【図４９】同インターリーバにおけるインターリーブ用のＲＡＭの概念を説明するためのブロック図である。
【図５０】インターリーブ用のＲＡＭの概念を説明するためのブロック図であって、シーケンシャルな書き込みアドレスとランダムな読み出しアドレスとに基づいて、バンクＡ，Ｂのそれぞれに用いるアドレスに変換し、各ＲＡＭに与える様子を説明するためのブロック図である。
【図５１】同インターリーバが行うインターリーブの種類を説明するための図であって、（Ａ）は、１シンボルの入力データに対するランダムインターリーブを示し、（Ｂ）は、２シンボルの入力データに対するランダムインターリーブを示し、（Ｃ）は、２シンボルの入力データに対するインラインインターリーブを示し、（Ｄ）は、２シンボルの入力データに対するペアワイズインターリーブを示し、（Ｅ）は、３シンボルの入力データに対するランダムインターリーブを示し、（Ｆ）は、３シンボルの入力データに対するインラインインターリーブを示し、（Ｇ）は、３シンボルの入力データに対するペアワイズインターリーブを示す図である。
【図５２】同インターリーバの構成を説明するブロック図である。
【図５３】同インターリーバが有する奇数長遅延補償回路の構成を説明するブロック図である。
【図５４】同インターリーバが有する記憶回路の構成を説明するブロック図である。
【図５５】同インターリーバにおけるＲＡＭの利用方法を説明するための図であって、１シンボルの入力データに対して、ランダムインターリーブを施す場合において、（Ａ）は、遅延用のＲＡＭを示し、（Ｂ）は、インターリーブ用のＲＡＭを示し、（Ｃ）は、アドレス用のＲＡＭを示し、（Ｄ）は、使用しないＲＡＭを示す図である。
【図５６】同インターリーバにおけるＲＡＭの利用方法を説明するための図であって、２シンボルの入力データに対して、ランダムインターリーブを施す場合において、（Ａ）は、遅延用のＲＡＭを示し、（Ｂ）は、インターリーブ用のＲＡＭを示し、（Ｃ）は、アドレス用のＲＡＭを示し、（Ｄ）は、使用しないＲＡＭを示す図である。
【図５７】同インターリーバにおけるＲＡＭの利用方法を説明するための図であって、２シンボルの入力データに対して、インラインインターリーブを施す場合において、（Ａ）は、遅延用のＲＡＭを示し、（Ｂ）は、インターリーブ用のＲＡＭを示し、（Ｃ）は、アドレス用のＲＡＭを示す図である。
【図５８】同インターリーバにおけるＲＡＭの利用方法を説明するための図であって、２シンボルの入力データに対して、ペアワイズインターリーブを施す場合において、（Ａ）は、遅延用のＲＡＭを示し、（Ｂ）は、インターリーブ用のＲＡＭを示し、（Ｃ）は、アドレス用のＲＡＭを示し、（Ｄ）は、使用しないＲＡＭを示す図である。
【図５９】同インターリーバにおけるＲＡＭの利用方法を説明するための図であって、３シンボルの入力データに対して、ランダムインターリーブを施す場合において、（Ａ）は、遅延用のＲＡＭを示し、（Ｂ）は、インターリーブ用のＲＡＭを示し、（Ｃ）は、アドレス用のＲＡＭを示し、（Ｄ）は、使用しないＲＡＭを示す図である。
【図６０】同インターリーバにおけるＲＡＭの利用方法を説明するための図であって、３シンボルの入力データに対して、インラインインターリーブを施す場合において、（Ａ）は、遅延用のＲＡＭを示し、（Ｂ）は、インターリーブ用のＲＡＭを示し、（Ｃ）は、アドレス用のＲＡＭを示し、（Ｄ）は、使用しないＲＡＭを示す図である。
【図６１】同インターリーバにおけるＲＡＭの利用方法を説明するための図であって、３シンボルの入力データに対して、ペアワイズインターリーブを施す場合において、（Ａ）は、遅延用のＲＡＭを示し、（Ｂ）は、インターリーブ用のＲＡＭを示し、（Ｃ）は、アドレス用のＲＡＭを示し、（Ｄ）は、使用しないＲＡＭを示す図である。
【図６２】同要素復号器を連接して構成される復号装置の構成を説明するブロック図である。
【図６３】同復号装置を構成する隣接する２つの要素復号器の簡略化した構成を説明するブロック図であって、前段の要素復号器からの情報の中から、軟出力復号に必要な情報を選択する構成について説明するブロック図である。
【図６４】同復号装置を構成する隣接する２つの要素復号器の簡略化した構成を説明するブロック図であって、前段の要素復号器によって、次段の要素復号器における軟出力復号に必要な情報を選択する構成について説明するブロック図である。
【図６５】同復号装置を構成する隣接する２つの要素復号器の簡略化した構成を説明するブロック図であって、受信値を遅延させる遅延回路を備える構成について説明するブロック図である。
【図６６】同復号装置を構成する隣接する２つの要素復号器の簡略化した構成を説明するブロック図であって、復号の対象とする受信値を選択する復号受信値選択回路を備える構成について説明するブロック図である。
【図６７】図１４に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移先のステートから見て入力される枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が４の場合における番号付けを示し、（Ｂ）は、メモリ数が３の場合における番号付けを示し、（Ｃ）は、メモリ数が２の場合における番号付けを示し、（Ｄ）は、メモリ数が１の場合における番号付けを示す図である。
【図６８】図１４に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移元のステートから見て出力していく枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が４の場合における番号付けを示し、（Ｂ）は、メモリ数が３の場合における番号付けを示し、（Ｃ）は、メモリ数が２の場合における番号付けを示し、（Ｄ）は、メモリ数が１の場合における番号付けを示す図である。
【図６９】図１５に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移先のステートから見て入力される枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が３の場合における番号付けを示し、（Ｂ）は、メモリ数が２の場合における番号付けを示す図である。
【図７０】図１５に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移元のステートから見て出力していく枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が３の場合における番号付けを示し、（Ｂ）は、メモリ数が２の場合における番号付けを示す図である。
【図７１】図１６に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移先のステートから見て入力される枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が３の場合における番号付けを示し、（Ｂ）は、メモリ数が２の場合における番号付けを示す図である。
【図７２】図１６に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移元のステートから見て出力していく枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が３の場合における番号付けを示し、（Ｂ）は、メモリ数が２の場合における番号付けを示す図である。
【図７３】図１７に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移先のステートから見て入力される枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が２の場合における番号付けを示し、（Ｂ）は、メモリ数が１の場合における番号付けを示す図である。
【図７４】図１７に示す畳み込み符号化器におけるトレリスを説明する図であり、遷移元のステートから見て出力していく枝を基準とした場合の番号付けを説明する図であって、（Ａ）は、メモリ数が２の場合における番号付けを示し、（Ｂ）は、メモリ数が１の場合における番号付けを示す図である。
【図７５】終結情報の生成動作を説明するためのトレリスを示す図であって、入力ビット数分の終結情報を終結期間分だけ入力する動作を説明するための図である。
【図７６】終結情報の生成動作を説明するためのトレリスを示す図であって、終結情報を１タイムスロットで入力する動作を説明するための図である。
【図７７】同Ｉγ算出回路及び同Ｉγ分配回路の概略構成を説明するブロック図であって、全ての入出力パターン分の対数尤度Ｉγを算出し、符号構成に応じて決定される入出力パターンに応じて分配する構成について説明するブロック図である。
【図７８】同Ｉγ算出回路及び同Ｉγ分配回路の概略構成を説明するブロック図であって、少なくとも一部の入出力パターン分の対数尤度Ｉγを算出し、所望の対数尤度Ｉγを選択して加算する構成について説明するブロック図である。
【図７９】同Ｉγ算出回路及び同Ｉγ分配回路の概略構成を説明するブロック図であって、全ての入出力パターン分の対数尤度Ｉγを算出する場合において、対数尤度Ｉγに対して１時刻毎の正規化を行う構成について説明するブロック図である。
【図８０】同要素復号器が対数尤度を負値として扱う場合における対数尤度Ｉγに対する正規化を説明するための図であって、（Ａ）は、正規化前の対数尤度Ｉγの分布例を示し、（Ｂ）は、正規化後の対数尤度Ｉγの分布例を示す図である。
【図８１】同要素復号器が対数尤度を正値として扱う場合における対数尤度Ｉγに対する正規化を説明するための図であって、（Ａ）は、正規化前の対数尤度Ｉγの分布例を示し、（Ｂ）は、正規化後の対数尤度Ｉγの分布例を示す図である。
【図８２】同Ｉγ算出回路及び同Ｉγ分配回路の概略構成を説明するブロック図であって、少なくとも一部の入出力パターン分の対数尤度Ｉγを算出する場合において、対数尤度Ｉγに対して１時刻毎の正規化を行う構成について説明するブロック図である。
【図８３】畳み込み符号化器におけるトレリスの一例を説明する図であって、（Ａ）は、メモリ数が“１”の場合の一例を示し、（Ｂ）は、メモリ数が“２”の場合の一例を示し、（Ｃ）は、メモリ数が“３”の場合の一例を示し、（Ｄ）は、メモリ数が“４”の場合の一例を示す図である。
【図８４】図８３に示す４つのトレリスを重ねた様子を説明する図である。
【図８５】トレリス上の各ステートから次時刻におけるステートへと２本のパスが到達するような符号に対して処理を行う同Ｉα算出回路における加算比較選択回路の構成を説明するブロック図であって、対数尤度Ｉαを選択するセレクタを備える構成について説明するブロック図である。
【図８６】同Ｉα算出回路及び同Ｉβ算出回路におけるｌｏｇ−ｓｕｍ演算回路の概略構成を説明するブロック図であって、第１の方法による正規化を行うｌｏｇ−ｓｕｍ演算回路の構成を説明するブロック図である。
【図８７】第１の方法による正規化を説明するための図であって、正規化前後におけるダイナミックレンジの例を示す図である。
【図８８】第２の方法による正規化を説明するための図であって、正規化前後におけるダイナミックレンジの例を示す図である。
【図８９】同Ｉα算出回路及び同Ｉβ算出回路におけるｌｏｇ−ｓｕｍ演算回路の概略構成を説明するブロック図であって、第３の方法による正規化を行うｌｏｇ−ｓｕｍ演算回路の構成を説明するブロック図である。
【図９０】第３の方法による正規化を説明するための図であって、正規化前後におけるダイナミックレンジの例を示す図である。
【図９１】ｌｏｇ−ｓｕｍ演算回路の概略構成を説明するブロック図であって、通常のｌｏｇ−ｓｕｍ演算を行うｌｏｇ−ｓｕｍ演算回路の構成を説明するブロック図である。
【図９２】ｌｏｇ−ｓｕｍ演算回路の概略構成を説明するブロック図であって、差分値に対応する複数の補正項の値を算出し、その中から適切なものを選択するｌｏｇ−ｓｕｍ演算を行うｌｏｇ−ｓｕｍ演算回路の構成を説明するブロック図である。
【図９３】イネーブル信号を用いないｌｏｇ−ｓｕｍ演算の累積加算演算を行う軟出力算出回路の概略構成を説明するブロック図である。
【図９４】シンボル単位の外部情報に対する正規化を説明するための図であって、（Ａ）は、正規化前の外部情報の分布例を示し、（Ｂ）は、最大値を有する外部情報を所定の値に合わせる正規化後の外部情報の分布例を示し、（Ｃ）は、クリップ後の外部情報の分布例を示し、（Ｄ）は、１つのシンボルに対する外部情報の値を、他のシンボルに対する外部情報の値から差分する正規化後の外部情報の分布例を示す図である。
【図９５】８ＰＳＫ変調方式による信号点配置を説明する図であって、Ｉ／Ｑ平面上に境界線を設けた様子を示す図である。
【図９６】同インターリーバが有する制御回路の簡略化した構成を説明するブロック図である。
【図９７】書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを共用した場合におけるデータの書き込みと読み出しのタイミングを説明する図である。
【図９８】書き込みアドレス用のカウンタと読み出しアドレス用のカウンタとを個別に設けた場合におけるデータの書き込みと読み出しのタイミングを説明する図である。
【図９９】同インターリーバにおけるＲＡＭに対するデータの書き込みと読み出しの様子を説明するための図である。
【図１００】同インターリーバにおけるＲＡＭに対して連続的なアドレスを割り当てる様子を説明するための図である。
【図１０１】同インターリーバにおけるＲＡＭに対するデータの書き込みと読み出しの様子を説明するための図であって、各ＲＡＭの全ての記憶領域にデータが記憶されない場合におけるデータの書き込みと読み出しの様子を説明するための図である。
【図１０２】同インターリーバにおけるＲＡＭに対して連続的なアドレスを割り当てる様子を説明するための図であって、物理的に異なる複数のＲＡＭにわたって連続的なアドレスが割り当てられる様子を説明するための図である。
【図１０３】同インターリーバにおけるＲＡＭに対してアドレスを割り当てる様子を説明するための図であって、置換先のアドレスをタイムスロットと入力シンボルとの組み合わせで与える様子を説明するための図である。
【図１０４】同インターリーバにおけるＲＡＭに対してアドレスを割り当てる様子を説明するための図であって、各ＲＡＭの全ての記憶領域にデータが記憶されない場合において、置換先のアドレスをタイムスロットと入力シンボルとの組み合わせで与える様子を説明するための図である。
【図１０５】同インターリーバにおけるＲＡＭの記憶容量を説明するための図であって、（Ａ）は、通常時におけるＲＡＭの記憶容量を示し、（Ｂ）は、パーシャルライトのＲＡＭとして作用させる場合におけるＲＡＭの擬似的な記憶容量を示す図である。
【図１０６】同インターリーバにおけるＲＡＭに対するデータの書き込みと読み出しの様子を説明するための図であって、３タイムスロット分のワード数のＲＡＭを２バンク用いて６タイムスロット分のインターリーブ長の遅延を実現する例について説明するための図である。
【図１０７】図１０６に示す動作によるデータの書き込みと読み出しのタイミングを説明するチャート図である。
【図１０８】畳み込み符号化器の一構成例を説明するブロック図である。
【図１０９】符号化装置の一構成例を説明するブロック図であって、インターリーバに対する入力シンボル間の順序を入れ替える様子を説明するためのブロック図である。
【図１１０】同復号装置を構成する隣接する２つの要素復号器の簡略化した構成を説明するブロック図であって、インターリーバがシンボル入れ替え回路を有する構成について説明するブロック図である。
【図１１１】同復号装置を構成する隣接する２つの要素復号器の簡略化した構成を説明するブロック図であって、軟出力復号回路がシンボル入れ替え回路を有する構成について説明するブロック図である。
【図１１２】通信モデルの構成を説明するブロック図である。
【図１１３】従来の符号化装置におけるトレリスを説明する図であって、確率α，β及びγの内容を説明するための図である。
【図１１４】従来の復号装置において、ＢＣＪＲアルゴリズムを適用して軟出力復号を行う際の一連の工程を説明するフローチャートである。
【図１１５】従来の復号装置において、Ｍａｘ−Ｌｏｇ−ＢＣＪＲアルゴリズムを適用して軟出力復号を行う際の一連の工程を説明するフローチャートである。
【符号の説明】
１  符号化装置、  ３  復号装置、  ５０  要素復号器、  ６０，４００  制御回路、  ７０  復号受信値選択回路、  ８０  エッジ検出回路、  ９０  軟出力復号回路、  １００  インターリーバ、  １１０  アドレス用記憶回路、  １２０，４１１，４２１，４２２，４２３，４２５，４２６，５０１，５０２，５０３，５０４，５２０，５３０，５４０，６０３  セレクタ、  １３０  信号線、  １５１  符号情報生成回路、  １５２  内部消去情報生成回路、  １５３  終結情報生成回路、  １５４  受信値及び事前確率情報選択回路、  １５５  受信データ及び遅延用記憶回路、  １５６  Ｉγ算出回路、  １５７  Ｉγ分配回路、  １５８  Ｉα算出回路、  １５９  Ｉβ算出回路、  １６０  Ｉβ記憶回路、  １６１  軟出力算出回路、  １６２  受信値又は事前確率情報分離回路、１６３  外部情報算出回路、  １６４  振幅調整及びクリップ回路、  １６５硬判定回路、  ２２２  Ｉγ正規化回路、  ２２３  枝入出力情報算出回路、２２５1  Ｉβ０用パラレルパス処理回路、  ２２５2  Ｉβ１用パラレルパス処理回路、  ２２５3  Ｉα用パラレルパス処理回路、  ２３２，２５３，３３０  選択用制御信号生成回路、  ２５２，３７２，５８２  ルックアップテーブル、  ２４０，２８０  制御信号生成回路、  ２４１，２４２，２８３，２８４加算比較選択回路、  ２４３  Ｉα＋Ｉγ算出回路、  ２４５，２５６，２８６，２９２，３１２，５５０，５６０，５８０，５９１  ｌｏｇ−ｓｕｍ演算回路、  ２４７，２５８，２８８，２９４  補正項算出回路、  ２５０，２７２  Ｉα正規化回路、  ２８１  Ｉβ０用加算比較選択回路、  ２８２  Ｉβ１用加算比較選択回路、  ２９１，３０８  Ｉβ０正規化回路、  ３１０  Ｉα＋Ｉγ＋Ｉβ算出回路、  ３１１  イネーブル信号生成回路、  ３１３  Ｉλ算出回路、  ３５０  情報ビット外部情報算出回路、  ３５１  情報シンボル外部情報算出回路、  ３５２  符号外部情報算出回路、  ３５７，５５４，５６４  正規化回路、  ３６１  最小シンボル算出回路、  ３７０  Ｉ／Ｑデマップ回路、  ４０１  遅延アドレス発生回路、  ４０２  奇数長遅延補償回路、  ４０３  インターリーブアドレス変換回路、  ４０４  遅延アドレス変換回路、  ４０５  アドレス選択回路、  ４０６  入力データ選択回路、  ４０７  記憶回路、  ４０８  出力データ選択回路、  ４１０，５６５  レジスタ、  ４２１  インバータ、  ４２４  ＲＡＭ、  ５１０  遅延回路、  ５３１  加算器、  ５９０  選択回路、  ６０１  書き込みアドレス発生回路、  ６０２  読み出しアドレス発生回路、  ６１０，６１１，６１２，６１３  シンボル入れ替え回路
【図１】
0004543522.tif 000065
【図２】
0004543522.tif 000066
【図３】
0004543522.tif 000067
【図４】
0004543522.tif 000068
【図５】
0004543522.tif 000069
【図６】
0004543522.tif 000070
【図７】
0004543522.tif 000071
【図８】
0004543522.tif 000072
【図９】
0004543522.tif 000073
【図１０】
0004543522.tif 000074
【図１１】
0004543522.tif 000075
【図１２】
0004543522.tif 000076
【図１３】
0004543522.tif 000077
【図１４】
0004543522.tif 000078
【図１５】
0004543522.tif 000079
【図１６】
0004543522.tif 000080
【図１７】
0004543522.tif 000081
【図１８】
0004543522.tif 000082
【図１９】
0004543522.tif 000083
【図２０】
0004543522.tif 000084
【図２１】
0004543522.tif 000085
【図２２】
0004543522.tif 000086
【図２３】
0004543522.tif 000087
【図２４】
0004543522.tif 000088
【図２５】
0004543522.tif 000089
【図２６】
0004543522.tif 000090
【図２７】
0004543522.tif 000091
【図２８】
0004543522.tif 000092
【図２９】
0004543522.tif 000093
【図３０】
0004543522.tif 000094
【図３１】
0004543522.tif 000095
【図３２】
0004543522.tif 000096
【図３３】
0004543522.tif 000097
【図３４】
0004543522.tif 000098
【図３５】
0004543522.tif 000099
【図３６】
0004543522.tif 000100
【図３７】
0004543522.tif 000101
【図３８】
0004543522.tif 000102
【図３９】
0004543522.tif 000103
【図４０】
0004543522.tif 000104
【図４１】
0004543522.tif 000105
【図４２】
0004543522.tif 000106
【図４３】
0004543522.tif 000107
【図４４】
0004543522.tif 000108
【図４５】
0004543522.tif 000109
【図４６】
0004543522.tif 000110
【図４７】
0004543522.tif 000111
【図４８】
0004543522.tif 000112
【図４９】
0004543522.tif 000113
【図５０】
0004543522.tif 000114
【図５１】
0004543522.tif 000115
【図５２】
0004543522.tif 000116
【図５３】
0004543522.tif 000117
【図５４】
0004543522.tif 000118
【図５５】
0004543522.tif 000119
【図５６】
0004543522.tif 000120
【図５７】
0004543522.tif 000121
【図５８】
0004543522.tif 000122
【図５９】
0004543522.tif 000123
【図６０】
0004543522.tif 000124
【図６１】
0004543522.tif 000125
【図６２】
0004543522.tif 000126
【図６３】
0004543522.tif 000127
【図６４】
0004543522.tif 000128
【図６５】
0004543522.tif 000129
【図６６】
0004543522.tif 000130
【図６７】
0004543522.tif 000131
【図６８】
0004543522.tif 000132
【図６９】
0004543522.tif 000133
【図７０】
0004543522.tif 000134
【図７１】
0004543522.tif 000135
【図７２】
0004543522.tif 000136
【図７３】
0004543522.tif 000137
【図７４】
0004543522.tif 000138
【図７５】
0004543522.tif 000139
【図７６】
0004543522.tif 000140
【図７７】
0004543522.tif 000141
【図７８】
0004543522.tif 000142
【図７９】
0004543522.tif 000143
【図８０】
0004543522.tif 000144
【図８１】
0004543522.tif 000145
【図８２】
0004543522.tif 000146
【図８３】
0004543522.tif 000147
【図８４】
0004543522.tif 000148
【図８５】
0004543522.tif 000149
【図８６】
0004543522.tif 000150
【図８７】
0004543522.tif 000151
【図８８】
0004543522.tif 000152
【図８９】
0004543522.tif 000153
【図９０】
0004543522.tif 000154
【図９１】
0004543522.tif 000155
【図９２】
0004543522.tif 000156
【図９３】
0004543522.tif 000157
【図９４】
0004543522.tif 000158
【図９５】
0004543522.tif 000159
【図９６】
0004543522.tif 000160
【図９７】
0004543522.tif 000161
【図９８】
0004543522.tif 000162
【図９９】
0004543522.tif 000163
【図１００】
0004543522.tif 000164
【図１０１】
0004543522.tif 000165
【図１０２】
0004543522.tif 000166
【図１０３】
0004543522.tif 000167
【図１０４】
0004543522.tif 000168
【図１０５】
0004543522.tif 000169
【図１０６】
0004543522.tif 000170
【図１０７】
0004543522.tif 000171
【図１０８】
0004543522.tif 000172
【図１０９】
0004543522.tif 000173
【図１１０】
0004543522.tif 000174
【図１１１】
0004543522.tif 000175
【図１１２】
0004543522.tif 000176
【図１１３】
0004543522.tif 000177
【図１１４】
0004543522.tif 000178
【図１１５】
0004543522.tif 000179