【誤訳訂正書】
【提出日】平成22年8月24日(2010.8.24)
【誤訳訂正１】
【訂正対象書類名】明細書
【訂正対象項目名】０００３
【訂正方法】変更
【訂正の内容】
【０００３】
一般に、ＡＲＭプロセッサは、非常に強力な命令セットによって比較的高い性能を発揮し、さらに大きな柔軟性を示す。一般的なＡＲＭプロセッサは比較的簡単なので、小型でコスト効果のある装置で高い命令スループットおよび効率的な時間割込み応答が容易になる。パイプライン方式が利用されて、処理システムおよびメモリシステムの多数の構成要素が同時に動作することができるようになる。例えば、１つの命令が実行されている間に、次の命令がデコードされており、第３の命令がメモリからフェッチされる。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】００１３
【訂正方法】変更
【訂正の内容】
【００１３】
ＡＲＭコアで命令が処理されるときに、命令はまた、３段を含むＡＲＭパイプラインで取り込まれる。ＡＲＭパイプラインは、フェッチ段、デコード段および実行段を含む。本発明のＡＲＭコプロセッサ電力低減システムは、特定の命令がＡＲＭコアのどの段にあるか追跡する（命令がフェッチ段、デコード段、または実行段にあるかどうかを追跡する）。動作状態に変化がある時はいつでも（例えば、ＡＲＭ状態からＴＨＵＭＢ状態に、またはその逆に）、その変化を表示する命令がＡＲＭパイプラインを流れる。命令はフェッチされ、デコードされ、それから実行段で、ＡＲＭコアは、その命令がＡＲＭコアに１６ビットＴＨＵＭＢ命令セットに切り換わるように指示しているかまたは３２ビットＡＲＭ命令セットに切り換わるように指示しているかを決定する。状態変化の命令が実行される時に、ＴＢＩＴ（ＴＨＵＭＢ  Ｂｉｔ）信号は変化する。例えば、ＴＢＩＴは、命令がＴＨＵＭＢ状態の命令である時には、論理０から論理１に変化し、または、命令がＡＲＭ状態の命令である時に、論理１から論理０に変化する。
【誤訳訂正３】
【訂正対象書類名】明細書
【訂正対象項目名】００１４
【訂正方法】変更
【訂正の内容】
【００１４】
状態変化の命令が実行されても、場合によって、パイプラインに保留状態の実行されるべき動作がもう２つある。すなわち、フェッチ段の１つの動作とデコード段の１つの動作である。動作状態がＡＲＭ状態からＴＨＵＭＢ状態に変化する場合、ＡＲＭコプロセッサ電力低減システムおよび方法は、デコード段と実行段に残っている２つの動作が完全に実行されるまで、ＡＲＭコプロセッサのクロックの電源を遮断しない。このようにして、デコード段と実行段に残っている２つの動作がＡＲＭ状態の動作を含む場合、コプロセッサは、走っている使用可能なクロックを有し、３２ビットのＡＲＭ状態の動作を処理し続ける。
【誤訳訂正４】
【訂正対象書類名】明細書
【訂正対象項目名】００１５
【訂正方法】変更
【訂正の内容】
【００１５】
図１は、本発明のＡＲＭコプロセッサ電力低減システムおよび方法の一実施形態と関連したコプロセッサクロック停止波形テーブル１００の一例である。コプロセッサクロック停止波形テーブル１００は、第１のＡＲＭ命令１１０、第２のＡＲＭ命令１１１、第３のＡＲＭ命令１１２、およびそれらの対応する第１のＡＲＭデータ転送１２０、第２のＡＲＭデータ転送１２１、および第３のＡＲＭデータ転送１２３がフェッチされる時に、ＣＰＳＴＯＰＣレジスタの値がＨＩＧＨであり、コプロセッサのクロックが走っていることを図示している。第１のＴＨＵＭＢ命令１１３がフェッチされる時に、信号ＡＣ＿ＴＢＩＴは論理０（ＬＯＷ）から論理１（ＨＩＧＨ）に遷移する。しかし、信号ＣＰ＿ＳＴＯＰＣは論理０（コプロセッサのクロックに走り続けるように命令する）を論理１（コプロセッサのクロックに走るのを停止するように命令する）に切り換えない。信号ＣＰ＿ＳＴＯＰＣは、第２のＴＨＵＭＢ命令１１４および第３のＴＨＵＭＢ命令１１６およびそれらに関連した第２のＴＨＵＭＢデータ転送１２４およぶ第３のＴＨＵＭＢデータ転送１２６が完了するまで、遷移しない。信号ＣＰ＿ＳＴＯＰＣは、コプロセッサ不在命令１１５と、第２のＴＨＵＭＢデータ転送１２４と第３のＴＨＵＭＢデータ転送１２６の間のコプロセッサ不在命令に関連したコプロセッサ不在データトランザクション１２５とで示される延長された処理持続時間までも感知する。ＡＣ＿ＴＢＩＴ信号は、第４のＴＨＵＭＢ命令１１７、第５のＴＨＵＭＢ命令１１８および第４のＴＨＵＭＢデータ転送１２７の間ずっと論理１（ＨＩＧＨ）のままである。
【誤訳訂正５】
【訂正対象書類名】明細書
【訂正対象項目名】００１７
【訂正方法】変更
【訂正の内容】
【００１７】
図２は、本発明のＡＲＭコプロセッサ電力低減システムおよび方法の一実施形態と関連したコプロセッサクロック始動波形テーブル２００の一例である。コプロセッサクロック始動波形テーブル２００は、第１のＴＨＵＭＢ命令２１０、第２のＴＨＵＭＢ命令２１１および第３のＴＨＵＭＢ命令２１２、およびそれらの対応する第１のＴＨＵＭＢデータ転送２２０、第２のＴＨＵＭＢデータ転送２２１および第３のＴＨＵＭＢデータ転送２２３がフェッチされる時に、ＣＰＳＴＯＰＣレジスタの値がＬＯＷでコプロセッサクロックが走っていないことを図示する。第１のＡＲＭ命令２１３がフェッチされる時に、信号ＡＣ＿ＴＢＩＴは論理１から論理０に遷移する。信号ＣＰ＿ＳＴＯＰＣは論理１から論理０に遷移し、コプロセッサクロックに走り始めるように命令する。ＣＰＳＴＯＰＣレジスタの値は、論理０から論理１に遷移し、クロックが走り始めたことを表示する。ＣＰＳＴＯＰＣレジスタの値は、第２のＡＲＭ命令２１４、第３のＡＲＭ命令２１５、第１のＡＲＭデータ転送２２３、第２のＡＲＭデータ転送２２４、および第３のＡＲＭデータ転送２２５の間ずっと論理１のままである。
【誤訳訂正６】
【訂正対象書類名】明細書
【訂正対象項目名】００１８
【訂正方法】変更
【訂正の内容】
【００１８】
ＡＲＭコアはいくつかの信号を利用して、ＡＲＭコプロセッサパイプラインの後続の段を介した進度および前送りを表示する。否定メモリ要求信号（ＭＲＥＱ＿ＮまたはｎＭＲＥＱ）は、次のサイクルでメモリアクセスが要求されているかどうかを表示する。ＮＭＲＥＱがＬＯＷである場合、ＡＲＭコアプロセッサは次のサイクルでメモリアクセスを要求する。否定演算コードフェッチ信号（ＯＰＣ＿ＮまたはｎＯＰＣ）は、ＡＲＭコアプロセッサがメモリから命令をフェッチしているかどうかを表示する。ＯＰＣ＿ＮがＬＯＷである場合、ＡＲＭコアプロセッサはメモリから命令をフェッチしており、ＯＰＣ＿ＮがＨＩＧＨである場合、データが転送されている（データがある場合）。ＡＲＭコアに整数の数のメモリクロック入力（ＭＣＬＫ）サイクルを待たせるかまたは機能停止にさせるために、否定待ち（ＷＡＩＴ＿ＮまたはｎＷＡＩＴ）信号が利用される。ＭＣＬＫはＡＲＭコアメモリアクセスと内部動作のタイミングを合せるクロックである。ＷＡＩＴ＿ＮがＬＯＷである時に、ＡＲＭコアは待つか機能停止する。
【誤訳訂正７】
【訂正対象書類名】明細書
【訂正対象項目名】００１９
【訂正方法】変更
【訂正の内容】
【００１９】
図３は、本発明の一実施形態であるＡＲＭコプロセッサ電力低減システム３００の図である。ＡＲＭコプロセッサ電力低減システム３００は、ＴＨＵＭＢビットレジスタＴＢＩＴ＿ＲＦ３１０、待ちレジスタＷＡＩＴ＿Ｎ＿ＰＦ３２１、第１の論理ＯＲ構成要素３２５、否定演算コードフェッチレジスタＯＰＣ＿Ｎ＿ＰＦ３２７、第３の論理ＡＮＤ構成要素３２８、第２の論理ＡＮＤ構成要素３２９、データ保持レジスタＤＡＴＡ＿ＨＯＬＤ＿ＮＦ３３１、マルチプレクサＭＵＸ３３２、デコードレジスタＤＥＣＯＤＥ＿ＮＦ３３３、実行レジスタＥＸＥＣＵＴＥ＿ＮＦ３３４、第１の論理ＡＮＤ構成要素３４０および停止クロックレジスタＳＴＯＰＣＬＫ＿ＮＦ３４５を備える。識別にＰＦを含むレジスタは、信号が正に向かうエッジでトリガされるフリップフロップを含む。識別にＮＦを含むレジスタは信号の負に向かうエッジでトリガされるフリップフロップを含む。ＴＢＩＴ＿ＰＦ３１０は、第１の論理ＡＮＤ構成要素３４０に結合されている。第３の論理ＡＮＤ構成要素３２８は、ＷＡＩＴ＿Ｎ＿ＰＦ３２１、第１の論理ＯＲ構成要素３２５、ＯＰＣ＿Ｎ＿ＰＦ３２７、およびＤＡＴＡ＿ＨＯＬＤ＿ＮＦ３３１に結合されている。第２の論理ＡＮＤ構成要素３２９は、ＷＡＩＴ＿Ｎ＿ＰＦ３２１、第１の論理ＯＲ構成要素３２５、ＯＰＣ＿Ｎ＿ＰＦ３２７、ＤＥＣＯＤＥ＿ＮＦ３３３、およびＥＸＥＣＵＴＥ＿ＮＦ３３４に結合されている。ＭＵＸ３３２は、ＤＡＴＡ＿ＨＯＬＤ＿ＮＦ３３１と、およびＥＸＥＣＵＴＥ＿ＮＦ３３４に結合されているＤＥＣＯＤＥ＿ＮＦ３３３とに結合されている。ＥＸＥＣＵＴＥ＿ＮＦ３３４は、ＳＴＯＰＣＬＫ＿ＮＦ３４５に結合されている第１の論理ＡＮＤ構成要素３４０に結合されている。
【誤訳訂正８】
【訂正対象書類名】明細書
【訂正対象項目名】００２１
【訂正方法】変更
【訂正の内容】
【００２１】
第２のＡＮＤ構成要素３２９は、ＡＲＭパイプラインにより命令およびデータの前送りを制御する。論理ＯＲ構成要素３２５は、論理ＯＲ構成要素３２５の入力（例えば、否定メモリ要求信号（ＭＲＥＱ＿Ｎ）および否定演算コードフェッチ信号（ＯＰＣ＿Ｎ））が論理１である場合、論理１の値を伝送し、また、論理ＯＲ構成要素３２５の前記入力が論理０である場合、論理０を伝送する。待ちレジスタＷＡＩＴ＿Ｎ＿ＰＦ３２１は否定待ち信号（例えば、ＷＡＩＴ＿Ｎ）の値を取り込む。
【誤訳訂正９】
【訂正対象書類名】明細書
【訂正対象項目名】００２２
【訂正方法】変更
【訂正の内容】
【００２２】
第３の論理ＡＮＤ構成要素３２８は、格納されたデータをＡＲＭパイプラインで転送するように指示する信号を伝送する。データ保持レジスタＤＡＴＡ＿ＨＯＬＤ＿ＮＦ３３１はＡＲＭパイプラインで処理されるのを待つデータを格納する。否定演算コードフェッチレジスタＯＰＣ＿Ｎ＿ＰＦ３２７は、ＡＲＭコアプロセッサがメモリから命令をフェッチするかどうかを表示する否定演算フェッチ信号の状態を格納する。デコードレジスタＤＥＣＯＤＥ＿ＮＦ３３３は、ＡＲＭパイプラインのデコード段と関連した情報を格納する。マルチプレクサＭＵＸ３３２は、データ保持レジスタまたは信号中のデータからの信号のような前記デコードレジスタに伝送する信号を選択する。
【誤訳訂正１０】
【訂正対象書類名】明細書
【訂正対象項目名】００２４
【訂正方法】変更
【訂正の内容】
【００２４】
図４は、ＡＲＭコプロセッサ電力低減真理値表４００の図である。ＡＲＭコプロセッサ電力低減真理値表４００は、ＡＲＭコプロセッサ電力低減システム３００の真理値表である。本発明の一実施形態では、クロックの立上りエッジでＷＡＩＴ＿Ｎ＿ＰＦの出力が論理１であり、かつＯＰＣ＿Ｎ信号は論理０であり、かつＭＲＥＱ＿Ｎ信号は論理０である場合、ＡＲＭコアは命令をフェッチしている。
命令それ自体は、クロックの次の立ち下がりエッジでＡＲＭコアデータバス上に置かれる。ＷＡＩＴ＿Ｎ＿ＰＦに格納された値が論理０である場合、命令はＡＲＭコアのデータバスにとどまったままであり、ＤＡＴＡ＿ＨＯＬＤ＿ＮＦ３３１、マルチプレクサＭＵＸ３３２、デコードレジスタＤＥＣＯＤＥ＿ＮＦ３３３、または実行レジスタＥＸＥＣＵＴＥ＿ＮＦ３３４の間で、命令は移されない。レジスタＯＰＣ＿Ｎ＿ＰＦ３２７に格納された値が論理１であり、かつ信号ＯＰＣ＿Ｎか信号ＭＲＥＱ＿Ｎが論理１である場合は、ＤＡＴＡ＿ＨＯＬＤ＿ＮＦ３３１、マルチプレクサＭＵＸ３３２、デコードレジスタＤＥＣＯＤＥ＿ＮＦ３３３、または実行レジスタＥＸＥＣＵＴＥ＿ＮＦ３３４の間で、命令は移されない。
クロックの立ち下がりエッジで、ＷＡＩＴ＿Ｎ＿ＰＦ３２１の値が論理１であり、かつＯＰＣ＿Ｎ信号が論理１であるかＭＲＥＱ＿Ｎ信号が論理１であるかいずれかの場合、ＡＲＭコアは現在命令をデコード段および実行段を通して移さない。しかし、データが存在すれば、ＡＲＭコアはデータ処理を続ける。ＯＰＣ＿Ｎ＿ＰＦの情報が論理０である場合、ＡＲＭデータバス上の命令はＤＡＴＡ＿ＨＯＬＤ＿ＮＦ３３１に入れられ、「オンホールド」状態になる。
【誤訳訂正１１】
【訂正対象書類名】明細書
【訂正対象項目名】００２８
【訂正方法】変更
【訂正の内容】
【００２８】
ステップ５１０で、ＡＲＭコプロセッサ電力低減方法５００は、ＡＲＭコアがＴＨＵＭＢ状態の命令をフェッチしているかどうかを決定する。一実施形態では、ＡＲＭコプロセッサ電力低減方法５００は、ＡＲＭプロセッサが命令をフェッチしているかどうかを検査する。命令がフェッチされている場合、ＡＲＭコプロセッサ電力低減方法５００は、フェッチされている命令と関連したＴＢＩＴ信号の論理状態を取り込む。例えば、ＡＲＭコプロセッサ電力低減方法５００は、否定メモリ要求信号（ＭＲＥＱ＿ＮまたはｎＭＲＥＱ）、否定演算コードフェッチ信号（ＯＰＣ＿ＮまたはｎＯＰＣ）および否定待ち信号（ＷＡＩＴ＿ＮまたはｎＷＡＩＴ）を走査して、ＡＲＭコアが命令をフェッチしているかどうかを決定する。１つの例では、論理０（ＬＯＷ）のＴＢＩＴ信号はＡＲＭ状態の命令を表示し、論理１（ＨＩＧＨ）のＴＢＩＴ信号はＴＨＵＭＢ状態の命令を表示する。ＡＲＭコプロセッサ電力低減方法５００が、ＡＲＭコアがＴＨＵＭＢ状態の命令をフェッチしているかどうかを決定した後で、ＡＲＭコプロセッサ電力低減方法５００はステップ５２０に進む。
【誤訳訂正１２】
【訂正対象書類名】明細書
【訂正対象項目名】００２９
【訂正方法】変更
【訂正の内容】
【００２９】
ＡＲＭコプロセッサ電力低減方法５００は、ステップ５２０ＡＲＭで、通常のＡＲＭコア手順およびコプロセッシング手順を継続する。１つの例では、ＡＲＭコプロセッサ電力低減方法５００は、命令をフェッチ段からのデコード段に移し、さらにその命令を実行段に進めて、通常のＡＲＭコア手順およびコプロセッシング手順を継続する。
【誤訳訂正１３】
【訂正対象書類名】明細書
【訂正対象項目名】００３０
【訂正方法】変更
【訂正の内容】
【００３０】
ステップ５３０で、ＡＲＭコプロセッサ電力低減方法５００は、ＡＲＭパイプラインで処理されている次の命令の状態を追跡する。一実施形態では、ＡＲＭコプロセッサ電力低減方法５００は、ＴＢＩＴレジスタ（例えば、ＴＢＩＴ＿ＰＦ２１０）のＴＢＩＴ信号の論理値を格納する。１つの例では、命令がパイプラインのフェッチ段からデコード段に移される時に、ＴＢＩＴ値は格納される。
【誤訳訂正１４】
【訂正対象書類名】明細書
【訂正対象項目名】００３３
【訂正方法】変更
【訂正の内容】
【００３３】
ステップ５６０で、ＡＲＭコプロセッサ電力低減方法５００は、コプロセッサのクロックをオンにするのが適切かどうかを調べる。ＡＲＭコプロセッサ電力低減方法５００の一実施形態では、ＡＲＭコプロセッサ電力低減方法５００が、ＡＲＭパイプラインの命令がＡＲＭ状態の命令かＡＲＭ状態の命令と関連したデータかであることを確認した場合は、コプロセッサのクロックをオンにするのが適切である。例えば、ＡＲＭ状態の命令またはＡＲＭ状態の命令と関連したデータがＡＲＭパイプラインレジスタを占めている場合は、コプロセッサのクロックをオンにするのが適切である。一実施形態では、ＡＲＭコプロセッサ電力低減方法５００は、コプロセッサのクロックがオフになった後で、命令フェッチと関連したＴＢＩＴ信号を監視し続ける。例えば、ＡＲＭコプロセッサ電力低減方法５００は、論理０のＴＢＩＴ値を解釈して、関連した命令フェッチがＡＲＭ状態の命令フェッチであると表示する。次のフェッチがＡＲＭ状態の命令である場合は、コプロセッサのクロックをオンにするのが適切である。コプロセッサのクロックをオンにするのが適切でない場合、ＡＲＭコプロセッサ電力低減方法５００は、ステップ５５０に輪を描いて戻る。コプロセッサのクロックをオンにするのが適切である場合、ＡＲＭコプロセッサ電力低減方法５００は、ステップ５７０に進む。