(57)【要約】【課題】それぞれのアプリケーション分野に最適に適合できるシグナルプロセッサを提供すること。【解決手段】デコーダ（５）は、第１デコーダ部分（７）と、第２デコーダ部分（８）と、機能ユニット（９）と、マルチプレクサ（１０）とを有し、  前記第１デコーダ部分（７）は固定配線されており、かつプログラム不能であり、論理演算を使用して、圧縮プログラムインストラクションをデコードし、  前記第２デコーダ部分（８）はプログラム可能であり、  前記機能ユニット（９）は、第１デコーダ部分（７）または第２デコーダ部分（８）のどちらがデコードを行なうかを決定し、  前記マルチプレクサ（１０）は、第１デコーダ部分（７）または第２デコーダ部分（８）を選択的にシグナルプロセッサの出力端に、前記機能ユニット（９）によって発生されたビット信号のカテゴリーに応じて接続する。【選択図】図１
2006344239.tif 000002
【特許請求の範囲】
【請求項１】
圧縮されたプログラムインストラクションワード（１１，１２）を記憶するためのプログラムメモリ（３）と、圧縮されたプログラムインストラクションワードをデコードするためのデコーダ（５）とを有するシグナルプロセッサであって、前記プログラムインストラクションワードはデコードされた形態で、シグナルプロセッサの機能制御に使用される形式のものにおいて、
前記デコーダ（５）は、第１デコーダ部分（７）と、第２デコーダ部分（８）と、機能ユニット（９）と、マルチプレクサ（１０）とを有し、
前記第１デコーダ部分（７）は固定配線されており、かつプログラム不能であり、論理演算を使用して、圧縮プログラムインストラクションをデコードし、
前記第２デコーダ部分（８）はプログラム可能であり、
前記機能ユニット（９）は、第１デコーダ部分（７）または第２デコーダ部分（８）のどちらがデコードを行なうかを決定し、
前記マルチプレクサ（１０）は、第１デコーダ部分（７）または第２デコーダ部分（８）を選択的にシグナルプロセッサの出力端に、前記機能ユニット（９）によって発生されたビット信号のカテゴリーに応じて接続する、ことを特徴とするシグナルプロセッサ。
【請求項２】
シグナルプロセッサのメモリ（８）のメモリセルのアドレシングが、デコーダ（５）のプログラム可能復号機能の実行のために行われ、
前記メモリセルにはデコードされたプログラムインストラクションワードがファイルされる、請求項１記載のシグナルプロセッサ。
【請求項３】
メモリ（８）はＲＡＭとして構成されている、請求項２記載のシグナルプロセッサ。
【請求項４】
メモリ（８）はＲＯＭとして構成されている、請求項２記載のシグナルプロセッサ。
【請求項５】
プログラムメモリ（３）から送出された圧縮プログラムインストラクションワードは、第１の数のビット（１１）と第２の数のビット（１２）を含んでおり、
前記圧縮プログラムインストラクションワードのデコードのために、デコーダ（５）のプログラム可能復号機能が設けられており、
前記第１の数のビットはプログラムインストラクションカテゴリーを検出するためのものであり、
前記第２の数のビットはメモリ（８）のメモリセルのアドレスを検出するためのものである、請求項２から４までのいずれか１項記載のシグナルプロセッサ。
【請求項６】
デジタル信号処理を行うために、請求項１から５までのいずれか１項記載のシグナルプロセッサを有する移動無線機器。
【請求項７】
デジタル信号処理を行うために、請求項１から５までのいずれか１項記載のシグナルプロセッサを有する移動無線基地局。
【請求項８】
デジタル信号処理を行うために、請求項１から５までのいずれか１項記載のシグナルプロセッサを有するデジタル放送のための放送機器。
【請求項９】
デジタル信号処理を行うために、請求項１から５までのいずれか１項記載のシグナルプロセッサを有するＩＳＤＮ端末機。
【請求項１０】
デジタル信号処理を行うために、請求項１から５までのいずれか１項記載のシグナルプロセッサを有するＤＥＣＴ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮されたプログラムインストラクションワードを記憶するためのプログラムメモリと、圧縮されたプログラムインストラクションワードをデコードするためのデコーダとを有するシグナルプロセッサであって、前記プログラムインストラクションワードはデコードされた形態で、シグナルプロセッサの機能制御に使用される形式のものに関する。
【背景技術】
【０００２】
デジタルシグナルプロセッサ（ＤＳＰ）は高い計算速度を備えた専用マイクロプロセッサである。このプロセッサのインストラクションセットとアーキテクチュアはデジタル信号処理の分野の特別の要求に向けられており、特に複雑なアルゴリズムをリアルタイムで変換するのに使用される。例えば、シグナルプロセッサはＧＳＭ規格に沿った移動無線分野で使用される。ここでは、移動無線局（移動局）またはベース無線局で複雑な音声処理アルゴリズムの変換のために使用される。さらに例えば、オーディオ、ビデオ、医用および自動車技術分野が適用分野である。
【０００３】
通常のシグナルプロセッサはプログラムメモリを有し、このメモリにプログラムインストラクションが圧縮形式（例えば符号化形態）で記憶されており、呼び出されると異なる信号処理演算が並行的に実行される。これは例えば、２つの異なるデータバスを介した２つのデータ伝送の同時実行、２つのアドレス計算、１つのアーキテクチュア／ロジック演算と１つの乗算である。通常のシグナルプロセッサの例として、Philips PCF5083(KISS), AT&T DSP16xxおよびTexas Instruments TMS320がある。プログラムインストラクションは１６ビットワードとしてこれらシグナルプロセッサのプログラムメモリに記憶される。デコーダにより復号（解凍）を行う場合には、圧縮された１６ビットプログラムインストラクションが比較的に大きなワードサイズを有するプログラムインストラクションに変換（展開）される。このワードサイズは使用されるシグナルプロセッサの複雑性に依存する。展開されたプログラムインストラクションワードに対する典型的なワードサイズは３２から１２８ビットの間である。プログラム実行中のプログラムインストラクションの呼び出しにより並列信号処理が実現され、ここではデコードされたプログラムインストラクションワードの個別ビットがシグナルプロセッサのそれぞれの制御ラインに供給される。非圧縮形態のプログラムインストラクションと比較して、圧縮されたプログラムインストラクションワードによってプログラムインストラクションを記憶することにより、必要な記憶容量を低減することができる。なぜなら、種々の理論的に可能なインストラクションワードの数は相応に制限されているからである。
【０００４】
このようなシグナルプロセッサでのプログラムインストラクションワードのデコードは固定配線デコーダにより行われる。固定配線デコーダはデコードを論理演算によって実行する。プログラムインストラクションワードの圧縮に基づき、そして異なるプログラムインストラクションサードの理論最大値との比較で、異なる圧縮プログラムインストラクションワードの相応の低減数だけをプログラムメモリに符号化することができる。固定配線デコーダの使用と組み合わせれば、このことにより制限されたプログラムインストラクションセット（制限された並列信号処理）につながる。上記の例では、１２１６の異なるプログラムインストラクションワードまたはプログラムインストラクションがそれぞれ１６ビットの圧縮されたプログラムインストラクションワードにより可能である。理論的には、２３２〜２１２８の異なるプログラムインストラクションワードが考えられる。さらに異なる信号処理演算（これはプログラムインストラクションが所定の信号処理アーキテクチュアに基づいて可能となる）の別の組み合わせとリンクしたプログラムインストラクションはシグナルプロセッサのプログラミングには使用することができない。専用のコンピュートバウンドアプリケーションの場合、すなわち例えば移動無線分野（ＧＳＭ）においてハーフレートＣＯＤＥＣまたはエンハンスドフルレートＣＯＤＥＣの変換の場合、上記の信号処理の所定基準インストラクションセットは、それぞれの複雑な信号処理アルゴリズムをリアルタイムで変換するには変換効率が不十分である。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の課題は、公知のシグナルプロセッサと比較して、それぞれのアプリケーション分野に最適に適合できるシグナルプロセッサを提供することである。
【課題を解決するための手段】
【０００６】
この課題は本発明により、デコーダは、第１デコーダ部分と、第２デコーダ部分と、機能ユニットと、マルチプレクサとを有し、
前記第１デコーダ部分は固定配線されており、かつプログラム不能であり、論理演算を使用して、圧縮プログラムインストラクションをデコードし、
前記第２デコーダ部分はプログラム可能であり、
前記機能ユニットは、第１デコーダ部分または第２デコーダ部分のどちらがデコードを行なうかを決定し、
前記マルチプレクサは、第１デコーダ部分または第２デコーダ部分を選択的にシグナルプロセッサの出力端に、前記機能ユニットによって発生されたビット信号のカテゴリーに応じて接続することによって達成される。
【発明を実施するための最良の形態】
【０００７】
このようにして、プログラムインストラクションセットの変形が可能であり、可能なプログラムインストラクションの数は変わらない。圧縮により１つのプログラムインストラクションに対して必要なワードサイズが低減されるという所要のプログラム記憶容量減少の利点はそのまま維持される。付加的に、所定のプログラムインストラクションがデコーダのプログラム可能復号機能の変化によって変化または置換されても、プログラムインストラクションセットをシグナルプロセッサに適合し、これを例えばＣＰＵ占有率の高い特別なアプリケーションに最適に使用することができる。さらにプログラム可能復号機能によってシグナルプロセッサの演算中であっても修正することができ、シグナルプロセッサが使用されている装置において、以前にロードされたデコードテーブルを置換する新たなデコードテーブルをロードし、異なる演算状況に適合することができる。シグナルプロセッサのスループットはプログラムインストラクションセットの前記適合によって増大する。このことは有利にはまた、電力消費の低減につながる。これは移動無線局に使用した場合、非常に有利である。
【０００８】
デコーダのプログラム可能復号機能を実行するために、有利にはシグナルプロセッサのメモリにアドレスメモリセルを設ける。ここにはデコードされたプログラムインストラクションワードが記憶されている。このようにして、デコードテーブルを変換することができる。別のデコードされたインストラクションワードはデコーダの固定配線部分により得られる。使用されるプログラム可能デコーダはシンプルで、効率がよく、可変である。プログラムインストラクションをデコードされた形態（解凍された形態）で記憶するために使用されるメモリは有利には、ＲＡＭまたはＲＯＭとして構成される。フレキシビリティの高さから、ＲＡＭとして構成されたメモリが有利にはシグナルプロセッサで、開発フェーズまたは少数生産の場合に使用される。付加的に、ＲＡＭとしてのメモリ構成は、シグナルプロセッサのインストラクションセットをシグナルプロセッサの動作中に変更することができるので有利である。ＲＯＭとしての構成は大量生産のシグナルプロセッサで使用するのに有利である。なぜなら、ＲＡＭメモリの使用と比較してコストを低減できるからである。
【０００９】
本発明の実施例では、プログラムメモリから送出された圧縮プログラムインストラクションワード（これのデコードのためにデコーダのプログラム可能復号機能が設けられている）が、プログラムインストラクションカテゴリーを検出するための第１の数のビットと、メモリのメモリセルアドレスを検出するための第２の数のビットを含む。第１の数のビットにより種々異なるプログラムインストラクション／プログラムインストラクションカテゴリーを識別することができる。これらのビットにより、復号（解凍）がデコーダの固定部分によって行われたか、またはプログラム可能部分によって行われたかを検出することができる。第２の数のビットは付加的にそれぞれのプログラムインストラクションを変換するのに必要であり、実行すべき信号処理ステップを発生するため制御線路に印加すべき相応のビットの形成の点でプログラムインストラクションの詳細を定義する。プログラム可能デコーダ部分では、これらビットが前記のメモリのメモリセルにファイルされ、第２の数のビットによりアドレシングに相応して読み出され、シグナルプロセッサの所属の制御線路に供給される。
【００１０】
本発明はまた、本発明のシグナルプロセッサを有する移動無線機と移動無線基地局にも関連する。このシグナルプロセッサはこの適用ではデジタル信号処理に使用される。すなわち例えば、音声処理アルゴリズムの変換、チャネルコーディング／デコーディング、および／またはイコライザ関数の変換に使用される。さらに、デジタル信号処理のためのシグナルプロセッサを他の機器でも使用すると有利である。他の機器とは例えば、デジタル放送に対する放送機器、ＩＳＤＮ端末機およびＤＥＣＴ装置（Digatal European Cordless Telephon）である。
【実施例】
【００１１】
本発明の実施例を以下、図面に基づき詳細に説明する。
【００１２】
図１に示したシグナルプロセッサ構造はプログラムカウンタを有する。この図には、わかりやすくするため所属のシグナルプロセッサの本発明に重要でない部分は示されていない。プログラムカウンタは１６ビット幅の制御信号によってプログラムメモリ３を制御する。プログラムを変換するために必要なプログラムインストラクションはコード化された（すなわち圧縮された）プログラムインストラクションワードによってプログラムメモリ３に記憶されている。この実施例では、圧縮されたプログラムインストラクションワードはそれぞれ１６ビットであり、後で説明するようにここでは１００ビット幅のプログラムインストラクションワードにデコードされる（すなわち解凍される）。デコードされたプログラムインストラクションワードの残りの幅は３２から１２８ビットの領域にある。
【００１３】
プログラムインストラクションの呼び出しの際に、まずプログラムメモリ３に相応にファイルされた圧縮プログラムインストラクションが読み出され、レジスタ４に中間記憶される。このようなプログラムインストラクションワードは引き続きデコーダ５に供給される。デコーダは１６ビットの圧縮プログラムインストラクションワードを復号された１００ビットのプログラムインストラクションワードに変換する。デコーダ５により形成された１００ビットプログラムインストラクションワードは、レジスタ６での中間記憶の後、シグナルプロセッサの制御線路に供給される。これはシグナルプロセッサの所属の信号処理機能を制御するためである。この実施例では、シグナルプロセッサは１００の並列信号線路を有し、これらの線路に並列に、レジスタ６に中間記憶されたプログラムインストラクションワードの１００ビットが印加される。
【００１４】
デコーダ５は第１のデコーダ部分７、第２のデコーダ部分８、プログラムインストラクションカテゴリーを検出するための機能ユニット９およびマルチプレクサ１０を有する。レジスタ４に中間記憶された圧縮１６ビットプログラムインストラクションワードは並列に、第１および第２のデコーダ部分および機能ユニット９に供給される。
【００１５】
このようなプログラムインストラクションワードは図２に示した形態を有する。これは第１のフィールド１１と第２のフィールド１２からなる。第１のフィールド１１に所属するビットはそれぞれのプログラムインストラクションカテゴリーを表す。すなわち、プログラムインストラクションのフォーマットを表す。第２のフィールド１２は、相応のプログラムインストラクションの詳細を正確に設定するためのビットを含む。後でさらに説明するように、第２のフィールド１２はアドレスを含むことができる。第１のフィールド１１はプログラムインストラクションワードの比較的高位のビットをＭＳＢとして有する。第２のフィールド１２は残りの低位ビットをＬＳＢとして含む。使用されるビットの総数を２つのフィールド１１と１２に分配することは可変であり、個々のプログラムインストラクションカテゴリーに依存する。
【００１６】
レジスタ４から送出された圧縮プログラムインストラクションワードはデコーダ部分７またはデコーダ部分８によりデコードされる（解凍される）。デコーダ部分７は固定配線デコーダ構成部を有し、この構成部は適切な論理演算によって圧縮１６ビットプログラムインストラクションから１００ビットプログラムインストラクションワードを形成する。しかしレジスタ４から送出された圧縮１６ビットプログラムインストラクションワードのデコードはデコーダ部分８によっても行うことができる。このデコーダ部分は１００ビットのプログラム可能メモリであり、そのメモリセルには圧縮１６ビットプログラムインストラクションワードから形成される解凍された１００ビットプログラムインストラクションワードがファイルされる。このデコーダ部分は本実施例では、ＲＯＭとして構成されている。しかし開発目的のためにはＲＡＭとして構成した方がフレキシビリティが大きいので有利である。プログラム可能デコーダ部分８による復号はメモリセルのアドレシングにより行われる。このアドレシングは、圧縮１６ビットプログラムインストラクションワードの第２のフィールド１２と、アドレシングされたメモリセルのメモリ内容の相応の読み出しにより行われる。デコーダ部分７または８のどちらが復号に利用されるかは、それぞれの圧縮１６ビットプログラムインストラクションワード（図２参照）の第１のフィールド１１によって定められる。どのプログラムインストラクションカテゴリーがどのデコーダ部分に所属するかは先験的に設定される。従って、シグナルプロセッサの動作中にデコーダ部分７またはデコーダ部分８に相応に割り当てることができる。
【００１７】
プログラム可能デコーダ部分８はデコーダ部分７とは反対に、アプリケーション専用プログラムインストラクションワード（ＡＳＩ、Application Specific Instructionsとも称する）のデコードに用いる。適用事例に応じて、メモリ８を新たなデコードデータで上書きすることができる。これは復号機能を変更するためである。これとは反対に、固定配線デコーダ部分７により実行可能な復号機能の変更は行うことができない。従ってデコーダ部分７によりプログラムインストラクションに所属する復号機能が実現される。このプログラムインストラクションは多数の異なる適用事例に対して設けられており、従ってアプリケーション専用のものではない。
【００１８】
この実施例では、圧縮された１６ビットを含むプログラムインストラクションワードによって最大で２１６の異なるプログラムインストラクションが実現される。Ｎのプログラムインストラクションがデコーダ部分８により変換されると仮定すれば、デコーダ部分７は２１６−Ｎ標準プログラムインストラクションの変換に使用される。Ｎに対する典型的な領域は６４≦Ｎ≦５１２により与えられる。しかしＮは考慮の対象となるシグナルプロセッサの使用領域に大きく依存する。
【００１９】
プログラム可能デコーダ部分８により、所定の適用に向けられたプログラムインストラクションを実現することができるから、このようにして可能な効率的な並列信号処理に基づき、シグナルプロセッサの比較的に高い処理速度ないしデータスループットを達成することができる。このことは同時に電流消費の減少とも結び付いている。使用される標準演算（算術演算、シグナルプロセッサのデータバスを介したデータ伝送、分岐演算等）は任意の仕方でパラレルプログラムインストラクションにまとめられ、各プログラムインストラクションによって、これによりまとめられた標準演算が並列処理される。とりわけ移動無線領域でのデジタル信号処理（音声処理、チャネルコーディング／デコーディング、イコライザ関数）の場合は、このようなシグナルプロセッサを使用するのが、変換すべきアルゴリズムが非常に複雑で特殊であるため有利であり、このアルゴリズムに本発明のシグナルプロセッサは上に述べたように固有のプログラムインストラクションセットによって適合することができる。このようなシグナルプロセッサを移動無線基地局または移動無線機で使用することは、例えばＤＥ−Ａ４３４４１５７に記載されている。
【００２０】
機能ユニット９は同じように、これに供給される圧縮１６ビットプログラムインストラクションワードの第１のフィールド１１に基づいて、どちらのデコーダ部分７または８が復号を実行するか検出する。機能ユニット９はこの評価に基づいて、１ビット制御信号をマルチプレクサ１０の制御のために発生する。機能ユニット９から送出された制御信号が２つの可能な制御状態のうちのどちらであるかに応じて、マルチプレクサ１０はデコーダ部分７の１００の出力側またはデコーダ部分８の１００の出力側をレジスタ６の１００の入力側に接続する。これは、それぞれ解凍されたプログラムインストラクションワードをレジスタ６に、後で信号処理のための制御信号として使用するため、中間記憶するためである。
【００２１】
前記のシグナルプロセッサ構造によってシグナルプロセッサの比較的に高いフレキシビリティが保証される。理論的には可能な２１００プログラムインストラクションの量が２１６プログラムインストラクションに変換される。この変換されたプログラムインストラクション（Ｎ）の部分はそれぞれのユーザーによって定義可能であり、ユーザーは従ってシグナルプロセッサを非常に特殊な適用分野に適合することができる。フレキシビリティが特に高いことは次のようにして保証される。すなわち、シグナルプロセッサを使用する機器の動作中でも、デコーダ５により検出されたプログラムインストラクションの変形が可能であるようにして保証される。そのためにメモリとして構成されたデコーダ部分８は簡単に新たな復号データによって上書きされる。
【００２２】
本発明のシグナルプロセッサはデジタル信号処理のために他の機器でも使用することができる。例えばデジタル放送に対する放送機器、ＩＳＤＮ端末機およびＤＥＣＴ装置（図示せず）である。
【図面の簡単な説明】
【００２３】
【図１】本発明のシグナルプロセッサ構造の概略図である。
【図２】圧縮されたプログラムインストラクションワードの構造を示す概略図である。
【符号の説明】
【００２４】
３  プログラムメモリ
４、６  レジスタ
５  デコーダ
７  第１のデコーダ部分
８  第２のデコーダ部分
９  機能ユニット
【図１】
2006344239.tif 000003
【図２】
2006344239.tif 000004