【手続補正書】
【提出日】平成20年2月15日(2008.2.15)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  構成可能なプロセッサを設計するシステムにおいて、
予め定められた部分と、プロセッサの予め定められた命令セットに加えて１以上のユーザ定義命令をサポートするユーザ定義部分とを含んでいる構成可能な仕様に基づいてプロセッサのハードウェア構成の記述を生成し、予め定められた部分はコアレジスタファイルの構成を特定し、ユーザ定義部分はコアレジスタファイルに加えてプロセッサ中にユーザ定義レジスタファイルを含むか否かを特定するハードウェア生成手段と、
構成仕様に基づいてハードウェア構成に特別なソフトウェア開発ツールを生成するソフトウェア生成手段とを具備し、
ハードウェア生成手段は、構成仕様のユーザ定義部分に基づいてプロセッサのハードウェア構成の記述のコアレジスタファイルの記述とは別に及びそれに加えてユーザ定義レジスタファイルの記述を生成するためのレジスタ生成手段を含み、
ソフトウェア生成手段は、ソフトウェア開発ツールのユーザ定義プロセッサレジスタファイルに関連するソフトウェアを含むものであるシステム。
【請求項２】  ユーザ定義プロセッサレジスタファイルに関連するソフトウェアは命令のフィールドにしたがってレジスタファイルの素子をアクセスする命令を含んでいる請求項１記載のシステム。
【請求項３】  ハードウェア生成手段は、レジスタ転送レベルのハードウェア記述言語に少なくとも一部分のハードウェア構成記述を生成する請求項２記載のシステム。
【請求項４】  構成仕様はユーザ定義レジスタファイル中の素子幅を特定するステートメントを使用してユーザ定義レジスタファイルを規定する請求項１記載のシステム。
【請求項５】  構成仕様はユーザ定義レジスタファイルの素子数を特定するステートメントを使用してユーザ定義レジスタファイルを規定する請求項１記載のシステム。
【請求項６】  ハードウェア生成手段は、構成仕様と独立してユーザ定義レジスタファイルの少なくとも１つの読取りポートと書込みポートの数を決定する請求項１記載のシステム。
【請求項７】  ハードウェア生成手段は、プロセッサのハードウェア構成記述の一部分として、データのステージング価格を最小にするために命令オペランドへユーザ定義レジスタファイルの書込みポートを割当てるための論理記述を生成する請求項１記載のシステム。
【請求項８】  ハードウェア生成手段はユーザ定義レジスタファイルにアクセスするパイプライン論理を生成する請求項１記載のシステム。
【請求項９】  ユーザ定義レジスタファイルの読取りポートは、それらをソースオペランドとして使用する任意の命令の最も早期の段で読取られる請求項８記載のシステム。
【請求項１０】  ユーザ定義レジスタファイルの書込みポートはそれを目的地オペランドとして使用する任意の命令の最終段、またはその後であるならば命令コミット段で読み取られる請求項８記載のシステム。
【請求項１１】  ハードウェア生成手段は、プロセッサのハードウェア構成の部分として、ユーザ定義レジスタファイルをアクセスする命令内で、ユーザ定義レジスタファイルからソースオペランドを選択するために使用される各フィールドのユーザ定義レジスタファイルの読取りポートを与える論理を発生する請求項１記載のシステム。
【請求項１２】  ハードウェア生成手段は、プロセッサのハードウェア構成の一部分としてユーザ定義レジスタファイルにアクセスするためのバイパス論理を生成する請求項１記載のシステム。
【請求項１３】  ハードウェア生成手段は、命令オペランドに基づいた構成仕様と、構成仕様の状態使用記述により説明されたプロセッサの所定のパイプラインのインターロック論理を生成する請求項１２記載のシステム。
【請求項１４】  ハードウェア生成手段は、プロセッサのハードウェア構成の一部分として、レジスタファイルをアクセスするインターロック論理を生成する請求項１記載のシステム。
【請求項１５】  ハードウェア生成手段は、構成仕様のスケジューリング情報に基づいてインターロック論理を生成する請求項１４記載のシステム。
【請求項１６】  ハードウェア生成手段は、命令オペランドに基づいた構成仕様と、構成仕様の状態使用記述により説明されたプロセッサの所定のパイプラインのインターロック論理を生成する請求項１４記載のシステム。
【請求項１７】  ハードウェア生成手段は、ユーザ定義レジスタファイルのアクセスをサポートするために構成仕様の予め定められた部分により記述されるプロセッサ論理装置の少なくとも１部分を使用するようにプロセッサハードウェア構成記述を生成する請求項１記載のシステム。
【請求項１８】  プロセッサ論理装置の少なくとも一部分はアドレス計算論理装置を含んでいる請求項１７記載のシステム。
【請求項１９】  アドレス計算論理装置はアドレス加算器論理装置を含んでいる請求項１８記載のシステム。
【請求項２０】  プロセッサ論理装置の少なくとも一部分は構成特定の予め定められた部分とユーザ定義部分に対応するプロセッサ部分との間で共有されるデータ整列論理装置を含んでいる請求項１８記載のシステム。
【請求項２１】  プロセッサ論理の少なくとも一部分はデータメモリである請求項１８記載のシステム。
【請求項２２】  構成仕様のユーザ定義部分は条件的にユーザ定義レジスタファイルに書込みをする命令の記述を含んでいる請求項１記載のシステム。
【請求項２３】  ソフトウェア生成手段は、ユーザ定義レジスタファイルに関するソフトウェアの部分として、構成仕様に基づいて設計確認とプロセッサの製造の診断試験を行う請求項１記載のシステム。
【請求項２４】  構成仕様は、プロセッサの命令に対する基準および構成セマンチックスの両者を含んでおり、
基準セマンチックスは構成セマンチックの設計の正確さを確認するために使用されることができる請求項１記載のシステム。
【請求項２５】  プロセッサ命令セット記述言語は命令試験のケースを含んでおり、
ソフトウェア生成手段は試験のケースの診断を行う請求項１記載のシステム。
【請求項２６】  ソフトウェア生成手段は、アプリケーションを実行しながらオペランドをプロセッサ命令セット記述言語の命令にサンプリングすることによって試験ベクトルを自動的に生成する請求項１記載のシステム。
【請求項２７】  ソフトウェア生成手段はユーザ定義状態とレジスタファイルに関するソフトウェアの一部分としてオペレーティングシステムの少なくとも一部を生成する請求項１記載のシステム。
【請求項２８】  発生されたオペレーティングシステム部分はプロセッサ状態の保存および回復シーケンスを含んでいる請求項２７記載のシステム。
【請求項２９】  保存および回復シーケンスはコンポーネント状態の相互依存性に関して生成され、相互依存性に対して確認される請求項２８記載のシステム。
【請求項３０】  オペレーティングシステムは文脈交換後に新しいタスクによるダイナミック基準にしたがってプロセッサ状態全体より少なくしか記憶できない請求項２７記載のシステム。
【請求項３１】  構成仕様のユーザ定義部分は構成仕様の予め定められた部分でみられないソフトウェアデータタイプを規定し、
コンパイラはソフトウェアデータタイプをサポートする請求項２７記載のシステム。
【請求項３２】  ソフトウェア生成手段はユーザ定義レジスタファイルに関するソフトウェアの一部分としてコンパイラ、リンカ、シミュレータ、デバッガの少なくとも１つを生成する請求項１記載のシステム。
【請求項３３】  ソフトウェア生成手段はユーザ定義レジスタファイルに関するソフトウェアの一部分としてコンパイラを生成し、
コンパイラはユーザ定義レジスタファイル中のレジスタへプログラム変数を割当てることができる請求項１記載のシステム。
【請求項３４】  コンパイラはさらに、メモリからユーザ定義レジスタファイルのレジスタへ値をロードし、ユーザ定義レジスタファイルのレジスタ中の値をメモリに記憶することができる請求項３３記載のシステム。
【請求項３５】  コンパイラはさらに、ユーザ定義レジスタファイルの１つのレジスタからユーザ定義レジスタファイルの別のレジスタへ値を移動できる請求項３３記載のシステム。
【請求項３６】  コンパイラはユーザ定義レジスタファイルをアクセスするソフトウェア生成手段により生成されるソフトウェアの命令のストールサイクルを決定するために構成仕様でスケジューリング情報を使用する請求項３３記載のシステム。
【請求項３７】  ソフトウェア生成手段はバイパス通路のカバー範囲をチェックするためにモニタを自動的に生成する請求項１記載のシステム。
【請求項３８】  構成可能なプロセッサを設計するシステムにおいて、
予め定められた部分と、プロセッサの予め定められた命令セットに加えて１以上のユーザ定義命令をサポートするユーザ定義部分を含んでいる構成仕様に基づいて、プロセッサのハードウェア構成の記述を生成するハードウェア生成手段と、
構成仕様に基づいて、ハードウェア構成に特定のソフトウェア開発ツールを生成するソフトウェア生成手段とを具備し、
構成仕様はソフトウェア開発ツールで使用される命令のスケジューリング情報を特定するステートメントを含んでおり、
ハードウェア生成手段は、構成仕様のステートメントに基づいて、パイプライン論理と、パイプラインストーリング論理と、命令再スケジューリング論理との少なくとも１つの記述を生成するか否かおよびその生成方法を決定するシステム。
【請求項３９】  スケジューリング情報は命令のオペランドが所定の段でプロセッサのパイプラインに入るステートメントを含んでいる請求項３８記載のシステム。
【請求項４０】  スケジューリング情報は命令の演算が所定の段でプロセッサのパイプラインを出るステートメントを含んでいる請求項３８記載のシステム。
【請求項４１】  ソフトウェア生成手段により生成されたソフトウェアは構成仕様のユーザ定義部分に記述されている命令を使用するコンパイラを含んでおり、
コンパイラは構成仕様のユーザ定義部分に説明されている命令をスケジュールするために命令スケジュール中にスケジューリング情報を使用する請求項３８記載のシステム。
【請求項４２】  構成仕様は複数のプロセッササイクルが処理されることを必要とする命令の記述を含んでいる請求項３８記載のシステム。
【請求項４３】  構成仕様は、プロセッサのターゲットパイプラインと独立している命令のセマンチックの記述を含んでおり、
ハードウェア生成手段は命令セマンチックから分離したパイプライン記述に基づいてパイプラインのプロセッサハードウェア構成の一部分としてパイプラインを生成する請求項４２記載のシステム。
【請求項４４】  構成可能なプロセッサを設計するシステムにおいて、
予め定められた部分と、プロセッサの予め定められた命令セットに加えて１以上のユーザ定義命令をサポートするユーザ定義部分とを含んでいる構成仕様に基づいて、プロセッサのハードウェア構成の記述を生成するハードウェア生成手段と、
構成仕様に基づいて、ハードウェア構成に特有のソフトウェア開発ツールを生成するソフトウェア生成手段と、
構成仕様に基づいて構成仕様により記述された拡張されたプロセッサ命令セットの文書を生成する文書生成手段とを具備しているシステム。
【請求項４５】  文書生成手段はプロセッサ命令セットの文書を生成するために構成仕様中に規定されている命令の基準セマンチックスを使用する請求項４４記載のシステム。
【請求項４６】  構成仕様のユーザ定義部分は、ここで規定されている命令の基準セマンチックと、ユーザ定義命令の概要とユーザ定義命令のテキスト記述の少なくとも一方のユーザ定義仕様を含んでおり、
文書生成手段は、プロセッサ命令セットの文書を生成するために概要とテキスト記述の少なくとも一方を使用する請求項４４記載のシステム。
【請求項４７】  構成可能なプロセッサを設計するシステムにおいて、
予め定められた部分と、プロセッサの予め定められた命令セットに加えて１以上のユーザ定義命令をサポートするユーザ定義部分とを含んでいる構成仕様に基づいて、プロセッサのハードウェア構成の記述を生成するハードウェア生成手段と、
構成仕様に基づいて、ハードウェア構成に特有のソフトウェア開発ツールを生成するソフトウェア生成手段とを具備し、
構成仕様のユーザ定義部分はプロセッサ命令が例外を挙げたときプロセッサ例外のユーザ定義仕様を含んでおり、
ハードウェア生成手段はプロセッサハードウェア構成の一部分としてそのユーザ定義例外をサポートするハードウェアを生成するユーザ定義例外サポート生成手段を含んでいるシステム。