【手続補正書】
【提出日】平成19年5月16日(2007.5.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
パイプラインアーキテクチャを有するディジタルプロセッサにおいて、命令を整列するための命令整列ユニットであって、
パイプライン段階ｎにおける現命令バッファおよび次命令バッファ、
パイプライン段階ｎ＋１における整列命令バッファ、
メモリまたは前記次命令バッファから、前記現命令バッファに命令をロードするとともに、前記メモリから前記次命令バッファに命令をロードするための命令フェッチ論理、および
前記命令に包含される命令長情報に応答して前記現命令バッファおよび前記次命令バッファから前記整列命令バッファへの命令の転送を制御するための整列制御論理を含み、
前記整列制御論理は、命令長情報を提供する命令をプリデコードするためのプリデコーダ、前記プリデコード命令長情報を保持するための命令長レジスタであって、１つの命令長レジスタが現命令バッファにおける各レジスタに対応する、前記命令長レジスタと、前記命令長情報に応答して現命令バッファおよび、必要な場合には、次命令バッファから整列命令バッファへの命令の転送を制御するための現命令ポインタを生成する、ポインタ生成論理とを含み、
前記ポインタ生成論理は、現命令ポインタに応答して命令長レジスタから次命令ポインタを選択するための次ポインタ選択論理、および前記次命令ポインタから現命令ポインタを選択する現ポインタ選択論理を含み、
前記現ポインタ選択論理は、次命令ポインタの低位ビットがゼロのときに設定される状態ビットを含む状態ラッチ、および前記状態ビットが設定されている場合に現命令ポインタとして前記次命令ポインタの上位ビットを選択する選択論理を含む、前記命令整列ユニット。
【請求項２】
現命令バッファ、次命令バッファおよび整列命令バッファは、それぞれ、複数の命令語を保持するためのレジスタを含むとともに、命令のそれぞれが、１つまたは２つ以上の命令語を含む、請求項１に記載の命令整列ユニット。
【請求項３】
前記プリデコーダは、メモリからの命令をプリデコードする第１のプリデコーダ、および次命令レジスタ内の命令をプリデコードする第２のプリデコーダを含み、前記整列制御論理は、前記第１のプリデコーダの出力、前記第２のプリデコーダの出力、または命令長レジスタの出力を選択して、前記選択された命令長情報を命令長レジスタに供給する、マルチプレクサをさらに含む、請求項１に記載の命令整列ユニット。
【請求項４】
各命令長レジスタが、対応する命令語に対する有効ビットを含む、請求項３に記載の命令整列ユニット。
【請求項５】
プリデコーダおよび命令長レジスタが、パイプライン段階ｎに配置され、ポインタ生成論理が、パイプライン段階ｎ＋１に配置された、請求項１に記載の命令整列ユニット。
【請求項６】
ポインタ生成論理が、分岐命令に応答して新ポインタを現命令ポインタとして選択する、新ポインタ選択論理をさらに含む、請求項１に記載の命令整列ユニット。
【請求項７】
ポインタ生成論理が、１組の値の各値が次命令ポインタおよび現命令ポインタの選択を制御するための１ビットによって表わされる、論理回路を使用する、請求項１に記載の命令整列ユニット。
【請求項８】
ポインタ生成論理が、１組の値の各値が現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御する１ビットによって表わされる、論理回路をさらに使用する、請求項１に記載の命令整列ユニット。
【請求項９】
現命令バッファおよび次命令バッファが一杯のときに、命令キューが、メモリからフェッチされた命令を保持する、請求項１に記載の命令整列ユニット。
【請求項１０】
パイプラインアーキテクチャを有するディジタルプロセッサにおいて、命令を整列する方法であって、
メモリまたは次命令バッファから現命令バッファに命令をロードすること、
前記現命令バッファが一杯である場合に、前記メモリから前記次命令バッファに命令をロードすること、および
前記命令に含まれている命令長情報に応答して、前記現命令バッファおよび前記次命令バッファから整列バッファへの命令の転送を制御することを含み、  命令の転送を制御することは、命令をプリデコードして命令長情報を提供すること、および前記命令長情報に応答して、現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御するための、現命令ポインタを生成することを含み、
現命令ポインタを生成することは、該現命令ポインタに応答して命令長情報から次命令ポインタを選択すること、および前記次命令ポインタから前記現命令ポインタを選択することを含み、
現命令ポインタを選択することは、次命令ポインタの低位ビットがゼロである場合に、前記次命令ポインタの高位ビットを前記現命令ポインタとして選択することを含む、前記方法。
【請求項１１】
現命令バッファ、次命令バッファおよび整列命令バッファは、それぞれ、複数の命令語を保持するためのレジスタを含み、命令のそれぞれは、１つまたは２つ以上の命令語を含み、かつ前記現命令バッファおよび前記次命令バッファから整列命令バッファへの命令の転送を制御することが、前記現命令バッファおよび前記次命令バッファのレジスタから前記整列命令バッファのレジスタへの命令語の転送を制御することを含む、請求項１０に記載の方法。
【請求項１２】
現命令ポインタを生成することが、分岐命令に応答して新ポインタを前記現命令ポインタとして選択することをさらに含む、請求項１０に記載の方法。
【請求項１３】
現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御することが、１組の値の各値が１ビットで表わされる、論理回路を使用することを含む、請求項１０に記載の方法。
【請求項１４】
現命令バッファおよび次命令バッファが一杯のときに、メモリからフェッチされる命令を命令キュー内に保持することをさらに含む、請求項１０に記載の方法。
【請求項１５】
パイプラインアーキテクチャを有するディジタルプロセッサにおける命令を整列するための、現命令バッファ、次命令バッファおよび整列命令バッファを含む前記命令整列ユニットにおける、整列制御論理であって、
第１のパイプライン段階において、命令長情報を提供する命令をプリデコードするプリデコーダ、および前記プリデコード命令を保持するための命令長レジスタ、ならびに
第２のパイプライン段階において、前記命令長情報に応答して、現命令バッファおよび、必要な場合には、次命令バッファから整列命令バッファへの命令の転送を制御するための現命令ポインタを生成するための、ポインタ生成論理を含み、
ポインタ生成論理は、現命令ポインタに応答して、命令長レジスタから次命令ポインタを選択するための次ポインタ選択論理、および前記次命令ポインタから前記現命令ポインタを選択するための現ポインタ選択論理を含み、
現ポインタ選択論理が、次命令ポインタがゼロである場合に設定される状態ビットを含む状態ラッチ、および前記状態ビットが設定されている場合に、次命令ポインタの上位ビットを現命令ポインタとして選択する次ポインタ選択論理を含む、前記整列制御論理。
【請求項１６】
命令長レジスタのそれぞれが、対応する命令語に対する有効ビットを含む、請求項１５に記載の整列制御論理。
【請求項１７】
ポインタ生成論理が、分岐命令に応答して新ポインタを現命令ポインタとして選択する新ポインタ選択論理をさらに含む、請求項１５に記載の整列制御論理。
【請求項１８】
ポインタ生成論理が、１組の値における各値が次命令ポインタおよび現命令ポインタの選択を制御するための１ビットによって表わされる、論理回路を使用する、請求項１５に記載の整列制御論理。
【請求項１９】
パイプラインアーキテクチャを有するディジタルプロセッサにおいて命令を整列する命令整列システムであって、
段階ｎにおける命令キュー、現命令バッファおよび次命令バッファ、
段階ｎ＋１における整列命令バッファ、
命令キャッシュまたは前記次命令バッファから前記現命令バッファに命令をロードするとともに、前記命令キャッシュまたは前記命令キューから前記次命令バッファに命令をロードするための命令フェッチ論理、および
前記命令に含まれた命令長情報に応答して、前記現命令バッファおよび前記次命令バッファから前記整列命令バッファへの命令の転送を制御するための整列制御論理を含み、
整列制御論理は、命令長情報を提供する命令をプリデコードするためのプリデコーダ、前記プリデコード命令長情報を保持するための命令長レジスタであって、１つの命令長レジスタが現命令バッファにおける各レジスタに対応する、前記命令長レジスタ、および前記命令長情報に応答して、現命令バッファから、および、必要な場合には、次命令バッファから整列命令バッファへの命令の転送を制御するための現命令ポインタを生成する、ポインタ生成論理とを含み、  ポインタ生成論理は、現命令ポインタに応答して命令長レジスタから次命令ポインタを選択するための次ポインタ選択論理、および前記次命令ポインタから現命令ポインタを選択する現ポインタ選択論理を含み、
現ポインタ選択論理は、次命令ポインタの低位ビットがゼロのときに設定される状態ビットを含む状態ラッチ、および前記状態ビットが設定されている場合に現命令ポインタとして前記次命令ポインタの上位ビットを選択する選択論理を含む、前記命令整列システム。
【請求項２０】
現命令バッファ、次命令バッファおよび整列命令バッファは、それぞれ、複数の命令語を保持するためのレジスタを含み、命令のそれぞれは、１つまたは２つ以上の命令語を含む、請求項１９に記載の命令整列システム。
【請求項２１】
プリデコーダは、命令キューからの命令をプリデコードする第１のプリデコーダ、および次命令レジスタ内の命令をプリデコードする第２のプリデコーダを含み、整列制御論理は、前記第１のプリデコーダの出力、前記第２のプリデコーダの出力、または命令長レジスタの出力を選択して、前記選択された命令長情報を命令長レジスタに供給する、マルチプレクサをさらに含む、請求項１９に記載の命令整列システム。
【請求項２２】
ポインタ生成論理が、分岐命令に応答して新ポインタを現命令ポインタとして選択する、新ポインタ選択論理をさらに含む、請求項１９に記載の命令整列システム。
【請求項２３】
ポインタ生成論理が、１組の値の各値が次命令ポインタおよび現命令ポインタの選択を制御するための１ビットによって表わされる、論理回路を使用する、請求項１９に記載の命令整列システム。
【請求項２４】
ポインタ生成論理が、１組の値の各値が現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御する１ビットによって表わされる、論理回路をさらに使用する、請求項１９に記載の命令整列システム。