(57)【特許請求の範囲】
【請求項１】
デジタル信号プロセッサと、パラレルの演算装置内で作動するプログラムフロー及びデータフローをコントロールするためのそれぞれ遮断及び互いに分離されたモジュールを有するプロセッサとにおいてプログラムフロー及び／又はデータフローを機能的に制御するための方法において、
ＰＣＵ（６）によって、ＶＬＩＷユニット（２）内で発生された、部分指示ワードから成るＶＬＩＷから変換されたＳＩＭＤ命令の結果として、第１及び第２のスライス（１８）；（１９）にそれぞれ付属するデータパスＤＰ（１４）内での、レジスタファイルユニット（ＲＦＵ）（１１）からのデータのプロセッサ（１）のパラレルの処理が、ＳＳＭレジスタバンク（１３）から出力される「シングルスライスホールト」情報によって個々に制御され、その際、各スライスに対して割り当てられるＳＳＭレジスタバンク（１３）のビットが第１及び第２のそれぞれのゲーテッドクロックセル（３）；（４）を介してレジスタクロックサプライをスイッチングすることによって、出力された「シングルスライスホールト」情報の制御作用が得られ、これにより、それぞれのスライスに付属するＤＰ（１４）内で実行されるデータ処理の状態に応じて、対応する入力レジスタ及び／又はアキュムレータ及び／又はパイプライン制御レジスタがその機能を途中で停止され、この機能が、出力された「シングルスライスホールト」情報を停止することによって初めて別のＳＩＭＤ命令の実行のために再開されること、出力された「シングルスライスホールト」情報に依存せずに、プロセッサ（１）のレジスタファイルユニット（ＲＦＵ）（１１）及びメモリアクセスレジスタが機能を維持し、この場合、ＰＣＵ（６）のＳＳＭレジスタバンク（１３）が、常にＰＣＵによって書き込み可能であることを特徴とする方法。
【請求項２】
ＶＬＩＷユニット（２）のためのクロックサプライが、プロセッサ（１）のプログラムフローからのソフトウエアに依存した情報出力によって制御され、これにより、ＶＬＩＷユニット（２）内に現在存在する部分指示ワードが、機能ユニットでの次のクロックでの再使用のために、引き続きＶＬＩＷユニット内に提供されることを特徴とする請求項１に記載の方法。
【請求項３】
ＰＣＵ（６）がＶＬＩＷ−ＷＡＩＴコマンドを先行信号ライン（１６）を介して予告され、次のクロックでこのコマンドがＰＣＵ（６）に付与されることによって、ＶＬＩＷユニット（２）内での別のＶＬＩＷの発生が中断され、その際、次に、ＰＣＵ（６）が、「ＶＬＩＷ−ＷＡＩＴ」信号ライン（１７）及び第３のゲーテッドクロックセル（２０）によってＶＬＩＷユニット（２）のためのクロックサプライをスイッチングすることを特徴とする請求項２に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル信号プロセッサと、パラレルの演算装置内で作動するプログラムフロー及びデータフローをコントロールするためのそれぞれ遮断及び互いに分離されたモジュールを有するプロセッサとにおいてプログラムフロー及び／又はデータフローを機能的に制御するための方法に関する。
【背景技術】
【０００２】
デジタル信号プロセッサ（ＤＳＰ）の場合、増々、そのアーキテクチャがスライス構造を備えるプロセッサが重要になる。この場合、データパスは、スライスに集約され、その際、第１のスライスでのデータ処理は、第２のスライスにおいてパラレルで進行するデータ処理に依存せずに実施される。
【０００３】
これらデジタル信号プロセッサのパラレルの演算装置において、命令様式ＳＩＭＤで作業が行なわれる場合、従来技術では、しばしばこの場合に適用されるアルゴリズムが全てのスライスでのパラレルのデータ処理に適していないという問題が生じる。
【０００４】
従って、例えば、個々のスライスでデータ処理が行なわれる場合は、それぞれそこで適用されるアルゴリズムが異なっていること依存して、発生する結果は、大抵は、異なった時点もしくはそれぞれのスライスでの異なった数のプロセッサクロックサイクルの後でしか提供することができない。
【０００５】
他のＳＩＭＤスライスと一致する命令処理のシステムは、全く実施することができないか、高い費用をもってしか実施することができない。
【０００６】
この著しく高い費用は、一方で、ソフトウエアによれば、結果のパラレルの提供を実現するためにスライスのために異なった待機時間を構成する処理すべき付加的なプログラムとして発生する。
【０００７】
他方で、この高い費用は、ハードウエアでは、プロセッサの効率を低下させる激しいプロセッサ及びメモリの負荷として生じる。この低下は、例えばメモリの拡張によって回避することができるが、これは、ハードウエア費用の拡大を意味する。
【０００８】
従来技術では、特にデータパスを付属させたスライスにおいてデータ処理を行なう場合に命令様式ＳＩＭＤに対するアルゴリズムの必要な適合を行なうために、スライス及びプロセッサの付属の別のＶＬＩＷアーキテクチャは、相当の範囲で無操作命令（Ｎｏ−Ｏｐｅｒａｔｉｏｎ−Ｂｅｆｅｈｌｅｎ：ＮＯＰ）を供給されなければならないということが欠点であると分かった。
【０００９】
このように、ＳＩＭＤ命令様式の適用の出力増大効果が無効にされるばかりでなく、更に、アルゴリズムを適合させるために、付加的なハードウエア及びソフトウエアの費用が必要となる。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
従って、本発明の課題は、個々のデータパスにおいて命令様式ＳＩＭＤが適用される場合に効率的なデータ処理の個々の適合を実現すること、特に、プロセッサのＶＬＩＷアーキテクチャに供給しなければならないＮＯＰ命令の発生を最小化することにある。
【課題を解決するための手段】
【００１１】
課題の本発明による解決は、ＰＣＵによって、ＶＬＩＷユニット内で発生された、部分指示ワードから成るＶＬＩＷから変換されたＳＩＭＤ命令の結果として、第１及び第２のスライスのそれぞれのデータパス（ＤＰ）内での、レジスタファイルユニット（ＲＦＵ）からのデータのプロセッサのパラレルの処理が、ＳＳＭレジスタバンクからそれぞれのスライスに出力される「シングルスライスホールト」情報によって個々に制御されることによって得られる。
【００１２】
この場合、出力された「シングルスライスホールト」情報の制御作用は、第１及び第２のスライスに対して割り当てられるＳＳＭレジスタバンクのビットがそれぞれ付属する第１及び第２のゲーテッドクロックセルを介してレジスタクロックサプライをスイッチングすることによって、得られる。
【００１３】
これにより、付属の入力レジスタ及び／又はアキュムレータ及び／又はパイプライン制御レジスタは、データパスのスライス内で実行されるデータ処理の状態に応じて、途中で停止される。
【００１４】
出力された「シングルスライスホールト」情報を停止することによって初めて、この機能は、別のＳＩＭＤ命令の実行の際に再開される。
【００１５】
出力された「シングルスライスホールト」情報に依存せずに、プロセッサのレジスタファイルユニット（ＲＦＵ）及びメモリアクセスレジスタが機能を維持する。この場合、ＰＣＵのＳＳＭレジスタバンクは、常にＰＣＵによって書き込み可能である。
【００１６】
この解決策は、プロセッサのデータパスのスライス内で、命令様式ＳＩＭＤに応じてパラレルで個々の計算が開始されることを目標とする。
【００１７】
しかしながら、異なった計算経過によって、スライス内での中間及び／又は最終結果の提供は、異なった時点で、付属するデータパスのパイプライン制御レジスタ、アキュムレータもしくは結果レジスタ内で行なわれる。
【００１８】
従って、中間及び／又は最終結果値を提供した後、もはや結果が得られない、個々のスライスに付属するデータパス内でのデータ処理が中断される。
【００１９】
データ処理は、別のＳＩＭＤ命令の処理が開始された場合、パラレルでスライスの全てのデータパス内で継続される。
【００２０】
課題の本発明による解決策の補完的な構成は、ＶＬＩＷユニットのためのクロックサプライが、プロセッサのプログラムフローからのソフトウエアに依存した情報出力によって制御され、これにより、ＶＬＩＷユニット内に現在存在する部分指示ワードが、機能ユニットでの次のクロックでの再使用のために、引き続きＶＬＩＷユニット内に提供されることにある。
【００２１】
この本発明による解決策は、有利なことに、プロセッサのデータパスもしくは付属するＶＬＩＷアーキテクチャに無操作命令（Ｎｏ−Ｏｐｅｒａｔｉｏｎ−Ｂｅｆｅｈｌｅｎ：ＮＯＰ）又は高い再現性を有する同様の命令を供給しなければならないことにより、データ処理を行なう場合にＳＩＭＤ命令様式への必要なアルゴリズムの適合が必要となった場合に有効である。この場合、同じＶＬＩＷの発生が回避されることによって、メモリスペース量が縮小され、プロセッサの計算負荷が低く維持され、従って、計算力は、効果的に重要な計算のために使用可能である。
【００２２】
本発明による解決策の補完的な構成の有利な変形例は、ＰＣＵがＶＬＩＷ−ＷＡＩＴコマンドを先行信号ラインを介して予告され、次のクロックでこのコマンドがＰＣＵに付与されることによって、ＶＬＩＷユニット内での別のＶＬＩＷの発生が中断され、その際、次に、ＰＣＵが、「ＶＬＩＷ−ＷＡＩＴ」信号ライン及び第３のゲーテッドクロックセルによってＶＬＩＷユニットのためのクロックサプライをスイッチングすることにある。
【００２３】
この解決策は、プログラムコード内にソフトウエアブレークポイントを設定し、スタートさせることができることによって、ソフトウエアの点検の際のデバッグルーチンを実現することができる。
【発明を実施するための最良の形態】
【００２４】
本発明を、以下でシングルスライスホールト情報の出力に関する実施例を基にして詳細に説明する。図面には、本発明の解決策に関係した、付属の機能ユニットを有する部分が構成されているプロセッサのブロック配線図が図示されている。
【００２５】
「シングルスライスホールト」情報の出力が作用する場合については、ＳＩＭＤ命令がＳＩＭＤ制御バス１２を介してＶＬＩＷユニット２から出力されるということが前提条件である。この個々のＳＩＭＤ命令は、第１及び第２のスライス１８；１９のそれぞれのデータパス１４内でのマルチデータ処理を作動させる。
【００２６】
結果は、付属のアキュムレータ８に異なった時点で提供される。この場合、それぞれ第１及び第２のスライス１８；１９に割り当てられるＳＳＭレジスタバンク１３のビットが設定される。
【００２７】
このビットの信号アロケーションは、第１及び第２のスライス１８；１９にそれぞれ付属するデータパス１４に、第１及び／又は第２のゲーテッドクロックセル３；４を介して供給され、第１及び第２のスライス１８；１９内でのデータ処理を個々に制御する。この制御は、このスライス内に結果が存在する場合に、付属の入力レジスタにおけるクロックサプライとこれによるデータ処理が中断されることによって行なわれる。
【００２８】
例えばスライスの一方で得られた最後の結果を提供した後でＳＩＭＤ制御バス１２に別のＳＩＭＤ命令が出力された場合、ＳＳＭレジスタバンク１３のそれぞれのビットがリセットされ、全てのデータパスが、その入力レジスタにおいてＲＦＵ１１から提供されるデータを読み込むことによって、次のデータ処理を開始する。
【００２９】
従って、データパス１４の個々のスライス内でのデータ処理は、有利なことにＳＩＭＤ命令のパラレルの処理の要求に適合される。
【図面の簡単な説明】
【００３０】
【図１】付属する機能ユニットを有する部分が構成されているプロセッサのブロック配線図を示す。
【符号の説明】
【００２７】
１      プロセッサ
２      ＶＬＩＷユニット（Very-Long-Instruction-Word）
３      第１のゲーテッドクロックセル
４      第２のゲーテッドクロックセル
５      ＡＧＵ（Address-Generating-Unit）
６      ＰＣＵ（Process-Controlling-Unit）
７      クロックサプライライン
８      アキュムレータ
９      別の処理ユニット（ゲーテッドクロックセルを有する）
１０    別の処理ユニットのレジスタ
１１    ＲＦＵ（レジスタファイルユニット）
１２    ＳＩＭＤ制御バス
１３    ＳＳＭレジスタバンク（Single-Slice-Mode）
１４    データパス
１５    ＳＩＭＤデータパス制御ライン
１６    先行信号ライン
１７    ＶＬＩＷ−ＷＡＩＴ信号ライン
１８    第１のスライス
１９    第２のスライス
２０    第３のゲーテッドクロックセル
0004208149.tif 000002