(57)【特許請求の範囲】
【請求項１】
互いに独立のデータ速度を有し同一の選ばれた周波数帯域幅を共用する複数のデータチャネルを同時並行的に受信し処理して多チャネルデータ通信信号の送受信を行う送受信局（17）であって、前記選ばれた周波数帯域幅に互いに独立のデータ速度の複数のデータチャネルを有する多チャネルデータ通信信号を受信する復調手段（49a，49b）と、受信した信号の選ばれたデータチャネルを分離して各チャネルにつきデータ速度を特定する逆拡散手段（35a，35b）と、前記多チャネルデータ通信信号の割り当てられたデータ速度の分離ずみチャネルを各々が復号する複数の復号手段（67a−67d）とを含む送受信局（17）において、
前記複数の復号手段（67a−67d）が共通の復号器メモリ（69，73）を共用することと、
制御手段（71，81，83）が前記分離されたチャネルの各々を前記復号手段（67a−67d）の一つに導くとともに、前記逆拡散手段による前記データ速度の特定に応答してその復号手段にデータ速度を割り当てること
とを特徴とする送受信局。
【請求項２】
前記共通の復号器メモリが、前記復号の期間中に復号される分離ずみのチャネル全部の処理に関連して用いる状態距離メモリ（69）および逆追跡メモリ（73）を含む請求項１記載の送受信局。
【請求項３】
前記状態距離メモリ（69）がピンポン式に、すなわちピン側またはポン側に対する同時並行読出しまたは書込みを可能にするピンポン式に配置されている請求項２記載の送受信局。
【請求項４】
前記複数の復号手段（67a−67d）の共用資源として共用したユークリッド距離計算エンジン（65）を含むことをさらに特徴とし、
前記ユークリッド距離計算エンジン（65）が、復号中のチャネルの受信シンボルと四つのQPSKコンステレーション点の各々との間の距離を計算するとともに、前記受信シンボルの各々について前記四つのQPSKコンステレーション点のうちの最近点を特定する
請求項１記載の送受信局。
【請求項５】
前記ユークリッド距離計算エンジン（65）が前記復号手段（67a−67d）に導かれるチャネルのシンボル全部について動作する請求項４記載の送受信局。
【請求項６】
前記互いに独立のデータ速度が最大データ速度を含み、その最大データ速度以下の互いに独立なデータ速度が前記データ速度の一つの係数であって、前記係数と前期最大データ速度との比の複製データを含む請求項１記載の送受信局。
【請求項７】
前記複数の復号手段（67a−67d）への共用の資源としての復号装置インタフェース（63）を含むことをさらに特徴とし、その復号装置インタフェース（63）が前期最大データ速度以下の互いに独立のデータ速度に対する前記複製データを飽和論理の利用によりコヒーレントに加算する請求項６記載の送受信局。
【請求項８】
前記復号手段（67a−67d）の各々が加算−比較−選択回路（図７）を含み、前記加算−比較−選択回路の各々が、各々の前記分離されたチャネルを、復号中のチャネルデータのシンボルの逆追跡処理用に最良の距離に達するようにヴィタービアルゴリズムで飽和論理を用いて処理し、前記最良の距離の各々を事後正規化する請求項１記載の送受信局。
【請求項９】
スペクトラム拡散変調受信装置で用いるように独立のデータ速度で複数のデータチャネルを同時並行的に復号する高速度多チャネルヴィタービ復号装置であって、
最大データ速度とその最大データ速度よりも低い最大以下のデータ速度とを含む互いに独立のデータ速度で少なくとも四つの逆拡散データチャネルを受信する復号装置インタフェース（63）と、
復号中のチャネルデータの受信シンボルと四つのQPSKコンステレーション点の各々との間の距離を計算するとともに、前記受信シンボルの各々につき前記四つのQPSKコンステレーション点のうちの最近点を特定するユークリッド距離計算エンジン（65）と、
割り当てられたデータ速度で少なくとも四つの個別のデータチャネルを処理する少なくとも四つのACS加算−比較−選択回路（67a−67d）と、
復号期間中に復号中の前記データチャネルすべてを処理するために用いる状態距離メモリ（69）および逆追跡メモリ（73）と、
前記ACS回路の前記処理を調整するACSプロセッサ（71）と、
前記データチャネル全部について復号化シンボルに到達する逆追跡プロセッサ（75）と、
前記多チャネルヴィタービ復号装置を付加プロセッサと結合する受信装置システムインタフェース（77）と
を含むことを特徴とするヴィタービ符号装置。
【請求項１０】
前記状態距離メモリ（69）がピンポン式に、すなわちピン側またはポン側に対する同時並行読出しまたは書込みを可能にするピンポン式に配置されている請求項９記載のヴィタービ復号装置。
【請求項１１】
前記復号装置インタフェース（63）が少なくとも４チャネルのための共用資源である請求項９記載のヴィタービ復号装置。
【請求項１２】
前記ACS回路（67a−67d）が前記個別のチャネルの各々を、復号中のチャネルデータシンボルの逆追跡処理用に最良の距離に達するようにヴィタービアルゴリズムで飽和論理を用いて処理し、前記最良の距離の各々を事後正規化する請求項９記載のヴィタービ復号装置。
【発明の詳細な説明】
この出願は1997年３月12日提出の米国特許仮出願第60/040,477号の一時継続出願である。
発明の背景
発明の技術分野
この発明は概括的にはディジタル通信に関する。より詳細にいうと、この発明は可変速度データを送信して受信装置で受信し、その可変速度データを高効率多チャンネル多速度データ復号装置で復号するシステムに関する。
従来技術の説明
現在もっとも進んだ通信技術は１地点・多地点間通信にスペクトラム拡散変調または符号分割多重接続（CDMA）を利用している。CDMAは信号伝送の検出および妨害が難しいので1950年代以来軍用に用いられてきた。この属性は、伝送信号の情報帯域幅よりもずっと広い被変調伝送信号帯域幅を用いる無線通信技術であることに起因する。
単純化したCDMA通信の概要を図１に示す。所定の帯域幅の単一の通信チャネルを拡散符号と混合する。相対的に狭い帯域の被変調信号を特有の拡散符号との乗算によりずっと広い伝送信号帯域を占めるようにシーケンスで拡散する。拡散符号は伝送データの一部となる雑音様の高速度擬似ランダムシーケンスまたは符号から成る。伝送される被変調信号は低レベル雑音様の外観を備えるので、同一スペクトラムの他のユーザとの間で干渉を生ずる可能性は少ない。
受信装置では、同一伝送帯域占有の複数のデータ信号からデータを分解するように受信広帯域信号とローカルに発生した同一の擬似ランダムシーケンスとの間で相関をとることによって受信信号を逆拡散する。これによって信号はもとの帯域幅に戻り、一方、占有スペクトル内にある狭帯域無線周波数を拡散し受信機に雑音として認識されるようにする。互いに異なる多数の擬似ランダム符号シーケンスを用いることによって、同一の伝送スペクトラム内に多数のユーザを収容できる。
CDMA通信技術を軍事用で成功に導いたのと同じ特徴が、CDMA通信システム、とくに広帯域符号分割多重接続、すなわちB-CDMAを輻輳した無線周波数スペクトラムの効率的利用に必要なものとした。システム容量に実質的に限界がないことがCDMAシステムの多数の属性の一つである。CDMA通信システムの各ユーザは同一の伝送帯域幅を通じて信号送受信を行うのでチャネル分離およびガードバンドの要件は厳格でない。不連続的なチャネルの数で容量が制限されるFDMAシステムやTDMAシステムと違って、CDMAシステムの容量は干渉によって制限される。したがって、所定の伝送帯域幅を通じて同時並行的に交信可能なユーザの数は大幅に増加する。
音声情報のほかに非音声情報だけ、またはこれら二つの組合せも受信装置向けに送信できる。ISDNなどのある種の通信標準はディジタル化音声よりもずっと高いデータ速度を要する。通信システムを最適化するために、信号対雑音比（SNR）向上対応の多様なデータレートで全受信装置向けに信号を伝送する。
スペクトラム拡散性能の一つの尺度はチャネルビットレートと情報ビットレートとの比Rc/Riで定まるシステム処理利得Ｇpである。
入力SN比および出力SN比は、次式、すなわち、
0003988956.tif 000002
で与えられる。データ速度が高いほどより多くの干渉が生じ信号対雑音比が低下する。干渉の軽減はシステム容量の増大につながる。
多くのCDMA通信システムはSNRをできるだけ高い値に保つために可変速度データを送信する。そのためには、送信データ速度を信号チャネルの一部であるシステムレベル制御メッセージ内で特定するか、特定受信装置が送信データ速度を検出できるようにする。
同一の伝送周波数帯域を多数のユーザが同時並行的に利用するので、ユーザ間符号アイソレーションが不十分な場合は、一つのユーザから次のユーザに干渉が生ずる。また、送信装置または受信装置における畳込み誤り訂正復号動作の前にデータ速度がわかっていなければならない。
大多数の従来技術の受信装置は、受信および逆拡散後にディジタルデータを正しく再構成するために、独立の単一速度畳込み復号装置を利用する。各フレームについてデータ速度情報を送信するので、受信装置は符号化の際のデータ速度を受信データフレームから算定する必要がなく、それだけ受信装置の複雑さが軽減され総合的システム速度が上昇する。しかし、送信データ速度の各々に専用の畳込み復号装置を用いれば全体の処理速度が低下しシステムコストが上昇する。
したがって、可変データ速度を処理できる効率的な畳込み復号装置が求められている。
発明の概要
この発明は、ある一つの送信のデータ速度を送信装置が符号化し、その符号化したデータ速度をメモリ共用の複数の畳込み復号装置の調節に用いる通信システムに関する。このシステムは、共通処理資源を用いて複数速度畳込み誤り訂正復号動作を行う四つ以下の不連続チャネルを提供し、それによって所要シリコン表面積を節約し低電力動作を可能にする。このシステムは高速度ISDN通信用に８kbps乃至64kbpsの音声通信をサポートできる。この発明は多様な通信システムに利用可能であるが、好ましい通信システムは電話通信、PCS通信、無線ローカルループ通信、およびCDMA通信である。この発明は基地局および加入者装置の両方の受信装置に利用できる。
したがって、この発明の目的は多チャネル用で効率の良い複数データ速度畳込み復号装置を提供することである。
この発明のもう一つの目的は複雑さを緩和し性能を高めた多チャネル畳込み復号装置構成を提供することである。
このシステムおよび方法の上記以外の目的および利点は好ましい実施例の詳細な説明を参照すれば当業者には明らかになるであろう。
【図面の簡単な説明】
図１は代表的な従来技術のCDMA通信システムのブロック図である。
図２はCDMA通信システムの詳細なブロック図である。
図３Ａはこの発明の好ましい実施例の詳細なブロック図の第１の部分である。
図３Ｂはこの発明の好ましい実施例の詳細なブロック図の第２の部分である。
図４はこの発明の好ましい実施例の全体的なブロック図である。
図５はホストディジタルシグナルプロセッサと好ましい実施例との間のインタフェースのブロック図である。
図６はQPSKコンステレーションを示す図である。
図７は一つの加算−比較−選択チャネルの詳細なブロック図である。
図８Ａは加算−比較−選択シーケンサのフロー図の第１の部分である。
図８Ｂは加算−比較−選択シーケンサのフロー図の第２の部分である。
図９は加算−比較−選択シーケンサの詳細なブロック図である。
図１０は逆追跡プロセスのフロー図である。
図１１はビット誤り率プロセスのフロー図である。
図１２は信号対雑音比（SNR）の変化に対するビット誤り率（BER）の変化を示す。
好ましい実施例の詳細な説明
同じ構成素子を同じ参照数字で示した図面を参照してこの発明を次に説明する。
この発明によって構成した多チャネル多速度ヴィタービ復号装置をCDMAセルラー電話システム17の中で具体化している。この種の復号装置は多チャネル無線送受信局において通信信号の受信の際に用いられる。図２に示したシステム17は送信装置19および受信装置21を含み、これら装置19および21は基地局および移動端末ユーザのいずれにも設置され得る。
送信装置19は音声および非音声データ25を例えばフレーム速度８kbps、16kbps、32kbpsまたは64kbpsの種々のデータ速度のフレームに符号化するシグナルプロセッサ23を含む。シグナルプロセッサ23は、音声データの場合は音声の変動度の大きさにしたがい、データの場合は設定ずみのデータ速度に応答して、速度を選択する。
多重接続環境における送信信号の発生には二つのステップが係わっている。第１のステップでは、二位相変調とみなせる入力データ25を前向き誤り訂正化装置（FEC）27により符号化する。Ｒ＝1/2畳込み符号を用いるので、単一の二位相被変調データ信号は二つの二位相被変調信号になる。一つの信号が同相チャネルＩと表示してある。他方の信号は直交位相チャネルＱと表示してある。二位相被変調Ｉ信号およびＱ信号は直交位相偏移変調（QPSK）信号と通常呼ぶ。好ましい実施例では、制約長Ｋ＝７、畳込み符号速度Ｒ＝1/2の場合のタップ発生器多項式2、9、31は
Ｇ1＝1718      および      Ｇ2＝1338
である。
第２のステップでは、二つの二位相被変調データまたはシンボル33a，33bを同相（Ｉ）QPSK擬似ランダムシーケンス35aおよび直交位相（Ｑ）QPSK擬似ランダムシーケンス35bで拡散する。拡散ずみＩ信号37aおよびＱ信号37bをキャリア周波数43と混合し、拡散符号の異なる他の拡散ずみ信号（チャネル）と合成し、送信する（47）。送信47にはデータ速度の互いに異なる複数の個々のチャネルが含まれる。
受信装置21は、送信されてきた広帯域信号47を周波数混合して中間キャリア周波数51a，51bに変換する復調装置49a，49bを備える。次にQPSK信号をフィルタ処理して（53）、被送信符号と合致するローカル発生QPSK擬似ランダム符号35a，35bと混合する（55a，55b）。送信装置19において同一の符号で拡散した原波形だけが実効的に逆拡散される。それ以外は受信装置21には雑音とみなされる。データ57a，57bをシグナルプロセッサ59に送り、そのプロセッサ59で畳込み符号化データをFEC復号化にかける。
この発明は図３Ａおよび図３Ｂに示すとおり高効率多チャネル多速度ヴィタービ復号装置61を用いて復号動作を行う。復号装置61は、ディジタルシグナルプロセッサ（DSP）−ヴィタービ復号装置インタフェース63、通常のユークリッド距離計算エンジン65、複数の加算−比較−選択（ACS）チャネル67a，67b，67c，67d、状態距離メモリアレー69、ACSシーケンサ71、逆追跡メモリアレー73、逆追跡プロセッサ75および復号装置−システムインタフェース77を含む。このシステムは図３Ａおよび図３Ｂに示すとおり個別半導体素子で構成でき、また高効率の用途特定集積回路（ASIC）79の形に具体化することもできる。
この実施例において、復号装置61の中の四つのチャネル（０，１，２，３）はいずれも複数のデータ速度８kbps、16kbps、32kbps、64kbpsを処理できる。代替的実施例では上記以外のデータ速度も使うことができる。冗長成分を伴って受信したシンボルに時間ダイバーシティ合成をかけることによって、より低いデータ速度を達成できる。この動作は時間ダイバーシティ処理ずみの受信信号のSN比を実効的に高める。予想される最高データ速度よりも低いデータ速度に対応するフレーム内シンボルについては、シンボルデータを反復してそのフレームにつきシンボル速度を一定値に維持する。
データ速度64kbpsの場合は15.625マイクロ秒ごとにQPSKシンボル一つを送る。データ速度32kbpsに対しては対応のQPSKシンボルをチャネル経由で２回送る。シンボル送出速度は64kbpsを維持するが、冗長度２倍により情報伝達速度は実効的に32kbpsに低下する。データ速度16kbpsに対しては、対応QPSKシンボルをチャネル経由で４回送る。データ速度８kbpsのデータチャネルについては、同様にして８回送る。
図３Ａおよび図３Ｂを参照すると、多チャネル復号装置61はシリコン表面積を最小化するために共通の資源を共用する。図に示すとおり、状態距離メモリ69および逆追跡メモリ73はスタティックランダムアクセスメモリ（SRAM）で、チャネル全部に共通に用いる。効率をさらに高めるのはユークリッド距離計算エンジン65であって、このエンジン65は受信QPSK信号とQPSK空間上の四つの点との間のユークリッド距離の2乗を4チャネル全部について計算する。
図示のシステム構成でヴィタービアルゴリズムを実動化し、畳込み符号化ずみのデータを復号する。制約長Ｋ＝７、符号速度Ｒ＝1/2についてタップ発生器多項式はＧ1＝1718（29）およびＧ2＝1338（31）。代替的実施例においては、制約長および速度符号に応じて上記以外のタップ発生器多項式も使うことができる。例えば、制約長Ｋ＝９、符号速度Ｒ＝1/2については、タップ発生器多項式はＧ1＝7538および5618である。タップ発生器の利用は通信技術の分野の当業者には周知であり、FEC符号化装置27に用いられている。
全体的なシステム構成を図4に示す。ホストマイクロプロセッサ81がASIC79上のタイミングおよび制御モジュール（TCM）83をマイクロコントローラデータ線85、アドレス線87および書込みストローブ線89経由でプログラムする。マイクロコントローラ81は、送信されてきたフレームから所定のチャネルの時間ダイバーシティ係数を算定する。ダイバーシティ合成はチャネル０，１，２，３それぞれについてダイバーシティ合成信号91a，91b，91c，91dを選択的にアサートしたりアサート解除したりすることによって制御する。データ出力93はホストDSPから出力されて、ヴィタービ復号装置インタフェース63への４チャネル全部についてＩ信号およびＱ信号を伝達する。ホストDSP95からのイネーブル信号線97およびアドレス線99もヴィタービ復号装置インタフェース63に接続する。ホストマイクロコントローラ81は各ダイバーシティ合成信号91a，91b，91c，91dを制御する。ホストDSP95は復号装置インタフェース63への個々のチャネルのデータ出力93を制御する。
TCM83はシステム全体のタイミング制御のために、外部で抽出した周波数基準信号103を受ける。TCM83はこの基準信号103を用いて高周波ダンプ信号105およびヴィタービクロック信号107を抽出する。TCM83は復号装置全体リセット信号109も発生する。
特定のチャネルのデータ速度は各ダイバーシティ合成信号91a，91b，91c，91dをイネーブルすることによって低下させる。データ速度32kbpsについては二つの隣接シンボルを合成し、データ速度16kbpsについては四つのシンボルを合成し、データ速度８kbpsについては八つのシンボルを合成する。
この好ましい実施例は多速度データの処理に時間ダイバーシティを用いる。データ速度64kbpsでは伝送されてきた個々のビットの各々を用いる。しかし、最低のデータ速度８kbpsでは、各ビットを８倍にする。最低データ速度での処理の場合は、冗長シンボルを単に加える。発明の背景の項で述べたとおり、各チャネル経由で一つのシンボルを送る度ごとに、利得および雑音の数字を受信する。したがって、同じ信号をそのチャネル経由で２回送ると、SN比は実効的に２倍になる。冗長シンボルがコヒーレントに加算されるのに対して混入ランダム雑音ではコヒーレント加算が行われないからである。最高のデータ速度64kbpsから最低の８kbpsまで信号利得が実効的に８倍になる。
データビットレートを下げて時間ダイバーシティを用いることによって、信号送信電力をそれに相応して下げることができる。諸シンボルの形成中に利得を回復できるからである。ダイバーシティ合成の利用によって、低SN比への悪影響を生ずることなくより低いデータ速度を達成できる。
データスループット最大値64kbpsに対してはダイバーシティ合成機能をディスエーブルする必要がある。これは、当該チャネルについてダイバーシティ合成信号91a，91b，91c，91dを高く保つことによって実現する。この多チャネル復号装置61を低いデータ速度で動作させる場合は、ダイバーシティ合成信号91a，91b，91c，91dが、合成すべき隣接シンボル、復号装置をイネーブルすべきタイミング、インタフェース63を新たなシンボル組のためにクリアすべきタイミングなどを制御する。
図５に示すとおり、復号装置インタフェース63はホストDSP95のデータバス93経由で８ビット相補ＩサンプルおよびＱサンプルを受ける。ホストDSP95からのデータはデータバス93経由でアドレスデコーダ111に入力される。データ93は並列入力バスであるが、データは４チャネル全部の間で逐次的に到着する。このデータを各チャネルにつき同相および直交位相成分に分離して、チャネル０，１，２，３それぞれにつき、線121I，121Q，123I，123Q，125I，125Q，127I，127Q，127経由で各飽和積分ダンプ回路113I，113Q，115I，115Q，117I，117Q，119I，119Qに出力する。インタフェース63は飽和論理回路を有する８ビット累算器を含む。正の最大飽和値は０×７ｆ16であり、負の最大飽和値は０×8016である。
ヴィタービ復号装置インタフェース63の内部では時間ダイバーシティ合成を２進符号相補演算の利用により行う。データ速度が低いときは冗長ＩサンプルおよびＱサンプル全部を加算する。同様に、飽和加算器を用いて、溢出発生時の符号変化の消去に用いる。ダイバーシティ合成機能を別個のDSP ICに行わせる代わりに、カスタムの特徴機能をASICに含めてある。ダイバーシティ合成を行ったあと、その結果をチャネル０，１，２，３各々につき線129I，129Q，131I，131Q，133I，133Q，135I，135Qに出力する。飽和積分ダンプ回路はチャネル０，１，２，３各々につきユークリッド距離計算エンジン65のイネーブル線137a，137b，137c，137dを制御する。
図３Ａおよび図３Ｂに戻ると、多チャネル復号装置61の内部プロセッサ全部をヴィタービクロック107に同期させる。ホストDSP95はそれ自身の非同期クロックからクロック供給を受ける。DSPクロックおよびダンプ信号105はヴィタービクロック107に再同期させる。復号装置61はヴィタービクロック107がダンプ信号105よりも少しでも高速であることを要件とする。
図４に示すとおり、全チャネルは復号装置インタフェース63からユークリッド距離計算エンジン65まで個々のＩイネーブル線およびＱイネーブル線経由で接続される。図３Ａを参照すると、ユークリッド距離計算エンジン６５は受信Ｉシンボル、Ｑシンボルの各々と四つの可能性あるQPSKコンステレーション上の点との間の四つのユークリッド距離２乗値を計算する。通常のエンジンで各チャネルのイネーブル時だけ各チャネルについて上記距離を計算する。
図６に示すとおり、ユークリッド距離計算エンジン65は各チャネルごとの受信シンボルＰ全部を、それらシンボルをQPSKコンステレーションｘ00，ｘ01，ｘ10，ｘ11にマップすることによって比較する。受信シンボル各々の点Ｐを調べる必要がある。マルチパスなどにより、伝送中（47）に雑音や歪により信号波形が歪んでいるからである。距離計算エンジン65は受信シンボルＰからの四つの距離ｄ00，ｄ01，ｄ10，ｄ11を計算し、最短の距離ｄ00を選択する。
この実施例におけるイネーブル機構は特定チャネルについて送信されてきたデータのデータ速度に基づく。上記計算は新たなＩ／Ｑシンボルが供給されエンジン65が正しくイネーブルされたときだけエンジン65で計算が行われるので、処理効率は全体として向上する。低速データ処理時には如何なる計算も無駄にしないので、効率は上がる。
図３Ａおよび図３Ｂに戻ると、ユークリッド距離の算出ののち、各チャネルにつき個別の12ビット出力139a，139b，139c，139dおよび各対応のイネーブル信号141a，141b，141c，141dを四つの個別ACS回路67a，67b，67c，67dに直列に送って、それらACS回路でユークリッド距離を復号器に基づく格子にマップする。FEC畳込み符号化したデータの復号に格子機構を用いることは当業者に周知である。
この発明は各シンボルを正規化し、飽和論理を用いて最短の格子距離を計算する。新たに受信したシンボルの各々に前回受信までのマトリクスを加算する。各チャネルにつき、個々のデータ点の各々が格子を形成しその格子を更新する。状態距離データを状態距離メモリ69から読み出す。ACS回路67a，67b，67c，67dはヴィタービアルゴリズムを実動化する。最尤度復号装置は状態図の無限複製である格子を利用する。畳込み符号のどの符号ワードも格子図の経路沿いのシンボルに対応する。格子の状態ごとおよびレベルごとにACS動作が係わる。ヴィタービアルゴリズムに基づく復号装置を実動化するには互いに異なる二つのデータ組のための蓄積装置が必要である。第１の蓄積装置は格子の互いに相続くレベルの各々について更新される経路状態または距離メモリ69である。第２のデータ組は経路メモリ73と呼ぶ格子の各ノードまたは状態における選択値である。
従来技術では、各復号装置またはACS回路がこれら二つのデータ組に個々の蓄積装置が必要である。この発明では、距離メモリ69および経路メモリ73の両方のアレーを各チャンネルについて一つの共通メモリに新規な形で統合してシリコン表面積を削減する。また、共通アドレスおよびデータ転送をさらに組み合わせて効率を高めている。状態距離データを線143a，143b，143c，143d経由で状態距離メモリ69に書き込み、線145a，145b，145c，145d経由で読み出す。
各状態に至る格子経路には二つの経路があり得る。ACS回路67a，67b，67c，67dにおける枝刈り動作は最良距離が所定状態に終結する点で行われる。最良の距離は累計格子距離最小値の選択によって算定する。選択した経路、それよりも長い経路および短い経路を０および１でそれぞれ表示する。この情報を線149a，149b，149c，149d経由で逆追跡メモリ73に書き込む。
多数の受信シンボルについて格子を形成する。好ましい実施例は離散的時間に35シンボルを必要とし、クロックごとのシンボル受信に応じて更新される。シンボル35個が累算されたあと、最小誤りの格子経路を算定から見出す。この復号方法でどのQPSKシンボルが送られたかを判定する。
チャネル０のためのACS回路67aを図７に示す。QPSKコンステレーション上の点一つを各々が示す新たなシンボルを入力線139aに供給する。格子内の各ノードには入力出力に二つの経路があるから、格子の現在の状態および符号化の内容に基づき入力値の分割および選択を行う。各コンステレーション値を別々の４入力マルチプレクサ189u，189lに入力する。マルチプレクサ189u，189lの出力191u，191lは格子および符号化装置の現在の状態に基づく。この判定153aは後述のACSシーケンサ71から伝達される。状態距離145aをメモリ69から読出し、上側経路および下側経路に同様に分割して鏡像８ビットフリップフロップ193u，193lに入力する。フリップフロップ197u，197lは飽和減算器197u，197lに最良距離201とともに供給され、新たなシンボル値191u，191lと飽和減算器199u，199lで合成される。各格子ノードの上側経路および下側経路の両方を８ビット絶対値比較器203で比較する。各ACSチャネルで特定シンボルの各々について６４の格子状態を処理する。各経路を調べて、どの距離または経路が最短であるかを判定する。上側経路205uおよび下側経路205lの両方を２入力マルチプレクサ207に入力して、最短距離または状態距離を選択しメモリ209に蓄積する。この値を正規化のために次のシンボル入力で用いる。この発明は各動作について入力すべてを事後正規化する。
従来技術における正規化はブロック単位または多数情報シンボル処理ののちに通常行う。これに対して、各距離の選択ののちの事後正規化によって性能が著しく改善される。事後正規化は、正規化処理そのものが溢出になり得るので飽和論理を必要とする。飽和論理を用いない場合は数が最後には溢出を生じて２進数が所望の値から大幅に変動する。数が現実的であるか否かはシステムには判定できない。飽和論理の利用により、その数は最終的に収束する。
格子上の各ノードはそのノードで終わる二つの経路とそのノードから始まる二つの経路とを有するので、処理は常に枝刈りを要する。格子は短距離に基づき判定で選ぶ二つの経路の距離を表す。よい方の経路、すなわち最良の距離を状態距離69に蓄積し、判定ビットまたは経路ビットを逆追跡メモリ149a，149b，149c，149dに蓄積する。
シンボルの始点で各ACSチャネル67a，67b，67c，67dは復号装置始動信号141a，141b，141c，141dを受けてチャネルを初期化する。上述のとおり、メモリに蓄積ずみの枝刈り動作による被選択点を第２の被選択点よりも小さい第１の被選択点と比較して、特定の値を最良の距離として選択する。この動作は格子からの残りの63個の出力についても同じである。
ヴィタービ復号装置へのシンボルの入力の際にそれまでのシンボル入力の履歴に依存するために、多数のシンボルからのエネルギーが累積され非常に大きくなる。エネルギーの増大はシンボル35個のエネルギーの積分に基づき、その結果帯域幅は実効的に狭まる。
ACS67a，67b，67c，67dの動作の順序制御は線151a，151b，151c，151d経由でACSシーケンサ71が行う。復号動作中のチャネルの各々につき単一のシーケンサ71を個々のACS回路67a，67b，67c，67dの制御に用いる。低いデータ速度またはチャネル空きのために特定のチャネルがイネーブル（141a，141b，141c，141d）されていない場合は、その特定のチャネルについての状態距離メモリ69および経路メモリ73への書込み動作を線153a，153b，153c，153d経由で禁止する。
ACSシーケンサ71はこの発明の実施例の動作全部を制御する。ACSシーケンサ71の機能は状態マシンと同様である。しかし、従来技術に通常用いられるプログラム可能なデバイスの利用および実用可能な符号のダウンロードの代わりに、ACSシーケンサ71は厳格にハードウェアで実行し、予想外の効率をもたらす。
ACS71の動作はカウンタ制御のカウンタの動作と同様であり、一つの共通メモリ69と並列接続の互いに独立の四つのACS回路67a，67b，67c，67dを制御する。また、ACSシーケンサ71はビットスライスアレープロセッサとしても作用する。ACSシーケンサ71のフロー図を図８Ａおよびず８Ｂに示す。初期化のあと（ステップ401）、ACSシーケンサ71は基準カウントを零に設定する（ステップ403）。このシーケンサは実質的にカウンタであるから、カウントアップ動作には戻り経路（ステップ415）が必要である。格子の読出し動作64回および書込み動作64回に合致させた刻み目０乃至127によって処理完結か否かを判定する（ステップ405）。このシーケンサはヴィタービ速度にクロックされ、アドレス動作駆動（ステップ411，419，425，429）、アドレス順序づけ、および読出し動作（ステップ413，421）および書込み動作（ステップ427，431）順序づけを行う。ACSシーケンサ71はACSチャネル67a，67b，67c，67dの各々を一つの共通メモリ69と並列に処理する。
状態距離メモリアレー69は64ビット幅でピンポン２セグメントに分けて配置してある。64ビットワードの初めの32ビットはピンセグメントであり、次の32ビットはポンセグメントである。その32ビットセグメントの中の各８ビットのセグメントが互いに異なるチャネル（０，１，２，３）を表す。ACSシーケンサ71がポンセグメントから読出し中の時はピンセグメントに順次書込み中である。シーケンサはピンセグメントから読み出してポンセグメントに書込み、次のシンボルではポンセグメントから読み出してピンセグメントに書き込む。共通メモリアクセスのこの方法は当業者に周知である。
ACSシーケンサ71は、チャネル０についてピンセグメントから読出し、チャネル１についてポンセグメントから読出し、チャネル２については読出し書込みともに行わず、チャネル３についてピンセグメントから読み出すという具合に、互いに異なるデータ速度でデータ処理中の四つのチャネルを処理する。この動作は専用始動信号141a，141b，141c，141dを有する各チャネルで行われる。
ACSシーケンサ71は状態距離メモリアレー69および各ACS回路67a，67b，67c，67dへのアクセスを上記基準カウントを調べる（ステップ405）とともにその基準カウントの最下位２ビットを調べる（ステップ407）ことによって行う。このシーケンスの初めの二つの状態は常に読出し動作（ステップ413，421）である。このシーケンスの最後の二つの状態は書込み動作（ステップ427，431）である。書込み動作で結果を状態距離メモリ69に蓄積する。
図９に示すとおり、ACSシーケンサ71の実働化は最小限のハードウェアで行われる。カウンタ211は基準カウントをフリップフロップ213a，213b，213c，213d，215a，215b，215c，215dに供給し、四つの可変速度データチャネルにシフト動作および書込み読出し動作をもたらす。４入力マルチプレクサ217は全チャネルについての状態距離アドレスにアクセスする。
状態距離メモリアレー69はチャネルあたり64状態距離に十分な記憶容量を有する。線145a，145b，145c，145d経由のメモリ69からの読出しおよび線143a，143b，143c，143d経由のメモリ69への書込みを容易にするために、ピンポン線155およびアドレスバス157経由のACSシーケンサ71による調整の対象の個々のACS動作の期間中、上記ピンポン構成が読出し書込み両動作を容易化する。状態距離メモリSRAMアレー69の総容量は4,096ビットである。
逆追跡メモリアレー73を、各復号ずみシンボルにつき各状態に至った経路の記録に用いる。格子図は理論的には状態図の無限複製であるから、伝送されてきたシンボルの各々についての全情報を記録するには無限量のメモリが必要になろう。しかし、逆追跡履歴は連続35シンボル分だけ記録し、ACS回路67a，67b，67c，67dから線149a，149b，149c，149d経由で供給されるデータで上書きする。逆追跡メモリ73は32×280アレーの形に配列した8,960ビットSRAMを要する。逆追跡は35シンボル分であるので、復号ずみシンボルの出力前に情報35シンボルの蓄積がすでに生じている。ある出力を生ずる入力シンボルは時間的に35シンボル前の入力シンボルである。
逆追跡メモリ73は円形バッファの形に形成してある。逆追跡メモリ73に新たなシンボルが書き込まれる度ごとに、すでに蓄積ずみのシンボルはシフトし最先のシンボル値を切り捨てる。メモリ容量は拘束長の5倍、すなわち拘束長Ｋ＝７に対する所要メモリ長35シンボル分である。
逆追跡動作を図１０に示す。逆追跡プロセッサ75は、カウンタを初期化し（ステップ501）、上述の値（拘束長の５倍）の割当てを設定する（ステップ503）点でACSプロセッサ71と同様の再帰動作を行う。次に、ローカルに算出した最良距離を最良距離値として割り当てる（ステップ505）。逆追跡カウントが０に等しいか否かの判定（ステップ507）を行う必要がある。逆追跡カウントが０に等しい場合は処理は完了し（ステップ531）、もっとも確率の高い経路が把握され復号装置はビットを出力する（ステップ529）。逆追跡カウントが０でない場合は、最良距離値到達まで上記動作を再び行う。
互いに異なる四つのデータ速度を処理できるので、逆追跡メモリ73はそれに対応して占有される。すなわち、チャネル０が64kbpsで動作中である場合はチャネル０における35シンボルのあと逆追跡メモリはその特定のチャネルについて一杯になるが、チャネル２が半分のデータ速度で32kbpsで動作中である場合はそのチャネル２は逆追跡メモリ73の半分を占めるだけである。
逆拡散メモリ73は、一つのチャネルがもう一つのチャネルに対して大幅に遅れることがあり得るので逐次的に割り当てる。送信装置で符号化されたデータは各チャネルについて特有のデータであるので逆追跡処理75も各チャネルについて特有の処理である。すなわち、四つのチャネルの各々についての逆追跡動作は各チャネルに特有の動作である。また、四つのチャネルのデータ速度も互いに異なっている可能性がある。
上記逆追跡処理はシリアル動作であり、プロセッサ75は、アドレスが共通でないので、初めにチャネル０、次にチャネル１、さらにチャネル２、最後にチャネル３というように逐次的に動作する。逆追跡情報の蓄積はアドレスに基づいており、各チャネルについての各処理を時間的に区切る必要がある。四つのチャネル全部を最大速度で送信する場合は、メモリには区切りが必要となる。送信装置で符号化されたデータは四つのチャネルの各々の間で互いに異なる逆追跡経路を形成しているからである。それらデータを互いに異なるデータ速度で処理すると、処理がさらに複雑になる。
図１０のフロー図を参照すると、逆追跡カウントが０に等しくない場合（ステップ507）処理はもっとも確からしい経路を逆追跡しなければならない。プロセッサは、フィールド、バイトアドレスおよびビットアドレスを含む９ビットアドレスを読み出す。この動作はアドレスを4ビット右にシフトし（ステップ509）、次に１ビット右にシフトするとともに（ステップ511）最下位３ビットをマスクする（ステップ513）ことによって行う。ローカルな最良距離は7ビットの数である。最上位４ビットがバイトアドレスとなり、次の３ビットがビット数となり、下位４ビットは無視される。経路ビットが１であるか０であるか調べる（ステップ515）。経路ビットが０である場合は、ローカル最良距離値を１ビットだけ右にシフトさせて（ステップ517）実効的に２で除算する。経路ビットが０に等しくない場合はローカル最良距離に64を加算して結果が値32と値63との間の値になるようにする。プロセッサ75は経路全部を追跡記録し（ステップ521，523，525，527）、符号化ビットが見出されるまで繰り返す。
プロセッサは、64状態の全部で最小エネルギーで終結し最小誤りを表す経路を見出す。逆追跡メモリは、これら64状態すべてに関連する35通りの経路を、その経路が上からか下からかを１ビットで表示して記憶する。すなわち、一つの状態への経路は二つだけであるからである。このようにして、０または１で経路を表す。ローカルな最良距離に対する関連のビット経路をバイトアドレスおよびビットアドレスとともに蓄積する。情報はすべてバイト形式で蓄積されるので、１バイト８ビットで８バイトの64の状態に対して分割を行う。第１のバイト内には８ビットあるので、この８ビットは状態０から状態７までを表示する。どのローカル最良距離がこれら状態を指しているかもこれで示される。次のバイトは状態８乃至状態15に対応し、状態63まで以下同様である。
この処理は７ビット数のうちの最下位ビットを常に切り捨てる。最上位３ビットは上述の通り特定のバイトアドレスを指す。最上位３ビットの次の３ビットはバイトアドレス中の特定のビットを指す。その特定のビットが経路ビットである。経路ビットはローカル最良距離の変更に用いる。
逆追跡処理は最大スループットのデータ速度の512倍の速さで動作する。アドレスバスの制御はACSシーケンサ71と逆追跡プロセッサ75との間で調整する。この復号装置動作のACS段階ではACSシーケンサが線151a，151b，151c，151d経由で状態距離メモリおよび逆追跡メモリの両方のアドレスバス159を制御する。ACS動作の完結のあと逆追跡メモリアドレスバスの制御は逆追跡プロセッサ75に引き継がれる。
逆追跡メモリ73は「チェイニングバック」または逆追跡と呼ばれる処理、すなわち格子の最後のノードから始めて判定経路を最後の判定から最初の判定へと逆向きに追跡する処理である。この処理で、出力161a，161b，161c，161dとして送出すべき復号出力シンボルを定める。四つのチャネルについてのこの逆追跡処理は通常のSRAMブロック69、75内部で並列に行うことはできない。互いに別々のデータチャネルに対する逆追跡処理のアドレス特性は互いに独立であると予想されるからである。個別のチャネルの各々について逆追跡処理を順序づけする必要がある。特定のチャネルが特定のシンボル間隔にわたってイネーブルされなかった場合は、そのチャネルに対する逆追跡動作は省略する。この処理はあるチャネルに対する逆追跡動作を行うのに最低35クロックサイクルを要する。
この発明は、ビット誤り率を算出する性能診断機能も有する。ユークリッド距離エンジン65は逆追跡プロセッサ75に判定出力163を供給する。この判定出力を35シンボル先入れ先出し（FIFO）デバイスにバッファ蓄積し、逆追跡プロセッサ75からの再畳込み符号化シンボル出力161a，161b，161c，161dと比較する。256シンボルののち、逆追跡プロセッサ75内の累算器の内容を図７に示したビット誤り率出力回路77に送る（165）。新たな８ビットの累算ビット誤り率の値がホストマイクロプロセッサに読取り可能な状態になると、その特定チャネルについてのBER準備完了信号（167）がイネーブル状態になる。
ビット誤り率診断処理を図１１のフロー図を参照して説明する。この処理はビット誤り率計算のために送信装置部分および受信装置部分を要する。データを送信装置に導入して（ステップ601）、前向き誤り訂正符号化、QPSK変調および直角位相信号拡散にかける。この信号を送信しないで受信装置部分に直接に入力し、逆拡散にかける。逆拡散処理の出力はヴィタービ復号装置をバイパスし（ステップ603）、35シンボル分の遅延を受けて（ステップ607，609，611）ヴィタービ復号装置による情報復号（ステップ605）を可能にする。判定を受けたデータ（未復号）をヴィタービ復号器出力と比較する。これによってSN比およびプロセッサ性能の表示が得られる。
この発明の装置の性能を図１２に示す。図１２はSN比の変化に対するビット誤り率の変化を非畳込み符号化データと畳込み符号化データとの比較で示す。この発明の二つの実施例が示してある。第１の実施例は一定拘束長Ｋ＝７を用いている。代替の実施例は拘束長Ｋ＝９を用いている。この図から理解されるとおり、SN比が５に増加するに伴って非畳込み符号化データはビット誤り率0.05％を示す。一方、同一のSN比の点で比較してみると、畳込み符号化データはビット誤り率が100万ビットあたり１ビットという具合に劇的に改善された性能を示す。この特性図はまた拘束長９を用いた代替実施例が拘束長７の実施例よりも改善されていることを示している。
各々がＩ／Ｑ信号２対を有する四つの入力チャネルを備えるヴィタービ復号装置の代わりに、一つの距離計算エンジンを４チャネルのスループットおよび距離
16通りの出力に用いることもできる。これら16通りの距離をACSブロックに供給する。次に、ユークリッド距離計算ブロックの出力を個々のACSブロックにチャネルごとに割り当てるのである。
代替実施例では、個々のチャネルに四つの個別のACSブロックを備えていないので、クロック速度を直線的に上昇させるに伴い大幅な回路素子節減が可能である。格子動作を組み入れたACSの特徴は、データ入力を多重化するとともにクロック速度を高めることによって、ACS回路二つまたは一つまでも削減できる。
この発明の特定の実施例を図示し上に説明してきたが、この発明の真意と範囲を逸脱することなく多数の変形および改変が当業者には可能である。上述の記載は説明のためのものであって如何なる形であれ特定の形式に限定するものではない。
【図１】
0003988956.tif 000003
【図２】
0003988956.tif 000004
【図３Ａ】
0003988956.tif 000005
【図３Ｂ】
0003988956.tif 000006
【図４】
0003988956.tif 000007
【図５】
0003988956.tif 000008
【図６】
0003988956.tif 000009
【図７】
0003988956.tif 000010
【図８Ａ】
0003988956.tif 000011
【図８Ｂ】
0003988956.tif 000012
【図９】
0003988956.tif 000013
【図１０】
0003988956.tif 000014
【図１１】
0003988956.tif 000015
【図１２】
0003988956.tif 000016
0003988956.tif 000017
0003988956.tif 000018