JP2004511042A - プログラム可能なプロセッサのリセット - Google Patents
プログラム可能なプロセッサのリセット Download PDFInfo
- Publication number
- JP2004511042A JP2004511042A JP2002533063A JP2002533063A JP2004511042A JP 2004511042 A JP2004511042 A JP 2004511042A JP 2002533063 A JP2002533063 A JP 2002533063A JP 2002533063 A JP2002533063 A JP 2002533063A JP 2004511042 A JP2004511042 A JP 2004511042A
- Authority
- JP
- Japan
- Prior art keywords
- reset
- event
- request
- pipeline
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000004044 response Effects 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 40
- 230000008569 process Effects 0.000 claims description 8
- 230000003068 static effect Effects 0.000 claims description 2
- 230000001902 propagating effect Effects 0.000 claims 5
- 230000003213 activating effect Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 7
- 230000000875 corresponding effect Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Advance Control (AREA)
Abstract
Description
【従来の技術】
本発明は、プログラム可能なプロセッサのリセットに関する。
【0002】
コンピュータまたはデジタル信号処理システム用のマイクロプロセッサのようなプログラム可能なプロセッサは、典型的には、既知の状態へプロセッサを初期化するために1つ以上のメカニズムをサポートする。例えば、従来のプロセッサは、リセット・ボタンに応答する「ハード・リセット」をサポートするためにインターフェイス・ピンをしばしば含んでいる。さらに、従来のプロセッサは、リセット・プロセスがプロセッサ上で走るソフトウェアによって開始される「ソフト・リセット」をサポートする。
【0003】
【詳細な説明】
図1は、実行パイプライン4および制御ユニット6を具備するプログラム可能なプロセッサ2を図示するブロック図である。制御ユニット6は、すべてのクロック・サイクルでパイプライン4によって命令とデータの流れをコントロールする。例えば、命令の処理中に、制御ユニット6は、命令を解読し、かつその対応する動作、例えば、メモリにその結果を書くことを正確に行なうように、パイプラインの様々なコンポーネントに命令する。
【0004】
命令はパイプライン4の最初のステージにロードされ、次の段階を通って処理される。各段階は、他の段階と同時に処理する。データは、システム・クロックに従ってパイプライン4中の段階間を通過する。命令の結果は、パイプライン4の終端に間断なく出現する。
【0005】
リセット・ユニット8は、3つのタイプのリセット要求に応じてプロセッサ2をリセットする。すなわち、(1)ハード・リセット(hard_reset)、ユーザによる日常のパワー投入またはリセット・ボタンを押すことによって引き起こされる、(2)ソフト・リセット(soft_reset)、プロセッサ2上で実行するソフトウェア・アプリケーションによって典型的に起動される、(3)エミュレータ・リセット(em_reset)、イン・サーキット・ハードウェア・エミュレータ(ICE:in−circuit hardware emulator)によって典型的に出力される。リセット・ユニット8は、リセット条件を検出し、イベント・ハンドラ14にリセット要求を通知する。イベント・ハンドラ14は、プロセッサ2内に生じるシステム・イベントをすべて受け取りかつ処理するための論理を含んでおり、以下に詳細に説明されるように、リセット要求を最優先度のイベントとして扱う。
【0006】
図2は、発明に従う実施例であるパイプライン4を図示する。パイプライン4は、例えば、5つの段階を有する。すなわち、命令フェッチ(IF)、命令デコード(DEC)、アドレス計算(AC)、実行(EX)、および書き戻し(WB)である。第1ステージ(IF)中に、メモリ、または命令キャッシュから命令がフェッチ・ユニット21によって取り込まれ、第2ステージ(DEC)中にデコードされる。次のクロック・サイクルでは、その結果は第3ステージ(AC)へ渡され、そこで、データ・アドレス生成器23は、その動作を行なうのに必要なすべてのメモリ・アドレスを計算する。
【0007】
実行ステージ(EX)において、実行ユニット25は、例えば2つ数の加算あるいは乗算のような指定の動作を実行する。実行ユニット25は、例えば1つ以上の算術論理演算ユニット(ALU)、浮動小数点ユニット(FPU)およびバレル・シフタ(barrel shifter)を含む動作を行なうために特定のハードウェアを含んでもよい。様々なデータ、例えば、データ・アドレス生成器23によって生成されたアドレス、メモリから取り出されたデータまたはデータ・レジスタ24から取り出されたデータが実行ユニット25に適用されてもよい。最終ステージ(WB)で、その結果は、データ・メモリ、またはデータ・レジスタ24に書き戻される。
【0008】
パイプライン4のステージは、対応するステージによって保持された命令が有効な命令かどうか、および処理されるべきであるかどうか示す「有効ビット」を格納するためのフリップフロップのような格納回路27を含む。最初に、命令が首尾よく取り出されかつ解読されると、フェッチ・ユニット21は、その命令に対応する有効ビットを設定する。命令が処理されると、有効ビットは、パイプライン4の格納回路27を通して伝播する。
【0009】
有効にかつ速くプロセッサ2をリセットし、かつリセット中の過度の電力消費を削減するために、リセット・イベントがリセット・ハンドラによって受理されると、リセット・ユニット8は有効ビットをクリアする。より明確に言うと、リセット・ユニット8は、IFステージの格納回路27をクリアするパイプライン4へリセット(SE_RESET)を出し、それによってIFステージ内に保持された命令を無効にする。続くクロック・サイクル中に、残りのステージの格納回路27は、SE_RESETが非有効化されるまでクリアされ、パイプライン4の内容を事実上無効にする。
【0010】
図3は、例えば、ハード・リセット、ソフト・リセットまたはエミュレータからのリセットを含むリセット条件に応答するリセット・プロセスを図示するタイミング・ダイヤグラムである。明らかに、リセット・ユニット8は、RESET_REQ信号がアクティブのまま維持される時間の長さに応答し、特に、リセット信号が除去された後SE_RESETを保持するように適合して、パイプライン4が完全に初期化されることを保証する。より明確に述べると、リセット要求が非有効化(deassert)された後少なくともNクロック・サイクルの間、リセット・ユニット8はSE_RESETを有効化(assert)し、ここではパイプライン4はNステージの深さである。
【0011】
以下詳細に議論されるように、リセット・ユニット8およびイベント・ハンドラ15は同期リセットをサポートするが、そこでは他の保留イベントの優先度に依存して、リセット要求はプロセッサ2をリセットする高優先度のイベントとして扱われる。図4は、リセット・ユニット8およびイベント・ハンドラ14用の実施例を図示する概要図である。以下詳細に説明されるように、リセット・ユニット8は、いずれのリセット入力における単一のサイクル・パルスが完全にパイプライン4をリセットし初期化するのに十分であることを保証するためにイベント・ハンドラ14と相互に作用する。リセット・ユニット8は3つのタイプのリセット条件を受け取るために3つの入力をしており、すなわちHARD_RESET、SOFT_RESETおよびEM_RESETである。加えて、リセット・ユニット8は、エミュレーション・リセット要求がクリアにされたとき有効化されるEM_RESET_CLRをそれぞれ受け取る。
【0012】
イベント・ハンドラ14は、2つのレジスタを含み、すなわちILATレジスタ41およびIPENDは42である。ILATレジスタ41は、サービスされていない要求されたイベントを格納するための多くのビットを含む。「イベント」とは、プロセッサ2が応答しなければならないあらゆるアクションまたは事象であり、例えばエミュレーション・モード、割込みおよび例外への入力を含む。イベントがイベント・ハンドラ14によって得られると、ILATレジスタ41はクリアされる。IPENDレジスタ42は、各イベントに対応するビットを含むステータス・レジスタである。一旦プロセッサ2がイベントを受理し、例えば、対応するサービス・ルーチンを起動すれば、イベント・ハンドラ14はIPENDレジスタ42内に適切なビットを設定し、ILATレジスタ14中の対応するビットをクリアする。イベント・サービス・ルーチンが戻ると、イベント・ハンドラ14はIPENDレジスタ42のステータス・ビットをクリアする。
【0013】
ある実施例では、イベント・ハンドラ14は、リセット・イベントを第2の最優先度イベントとして扱うとともに、エミュレーション・モードのみがより高い優先度を有すると扱う。リセット・イベントが受け取られ、プロセッサ2がエミュレーション・モードにあるとき、プロセッサ2がエミュレーション・モードから退出するまで、リセット・イベントは行われない。
【0014】
HARD_RESETが少なくとも1つのクロック・サイクルの期間有効化されると、信号43はIPENDレジスタ42のリセット・イベント・ビットをクリアし、それによって、全ての保留リセット・イベントをクリアする。次に、別のクロック・サイクルの後、信号49はILAT41内のリセット・イベント・ビットを設定し、保留リセット・イベントを記録する。プロセッサ2がエミュレーション・モードになく、RESET_MASKED_REQ46を有効化すると、リセット・ユニット8がリセットパルスを生成するかもしれないことを示すために、イベント・ハンドラ14はリセット・イベントを受理する。より明確に言うと、(1)ILATレジスタ41がリセット・イベントを受理したことを示し、(2)プロセッサ2がエミュレーション・モード(EM_MODE)になく、かつ(3)現在のエミュレーション要求(EM_REQ)がない場合、ANDゲート45は、RESET_MASKED_REQ46を高にする。リセット・ユニット8は、Nクロック・サイクルに亘って、RESET_MASKED_REQ56を一連の格納回路47にラッチし、RESET_MASKED_REQ 56が非有効化された後、SE_RESETはNクロック・サイクルの間、活性化される。
【0015】
リセット条件がもはや検出されなくなると、リセット・ユニット8はSE_RESETをクリアするようにイベント・ハンドラ14に指示する。ハード・リセットの場合には、立ち下がりエッジがHARD_RESET上で検知されると、ANDゲート48はHARD_RST_FEDGE44を高に駆動する。あるいは、エミュレーション・リセット要求がそれぞれクリアにされると、EM_RESET_CLRは有効化される。これら2つの信号のどちらかの有効化により、ANDゲート44は0を出力し、それによって、ILATレジスタ51内のリセット・イベント・ビットをクリアする。これは次にはRESET_MASKED_REQ46をクリアし、Nクロック・サイクルの後、SE_RESETをクリアする。この様に、リセットされた条件が削除された後、リセット・ユニット8は、Nクロック・サイクルの間、SE_RESETを活性に保持する。
【0016】
SE_RESETが非有効化され、かつRST_EXIT信号が、割込み命令(RTI)からの復帰の実行によって、典型的にはイベント取り扱いサービス・ルーチンの結論に基づき、有効化されると、IPENDレジスタ42がクリアされる。
【0017】
図5は、プロセッサ2をリセットするプロセス40の例を図示するフローチャートである。まず、リセット論理6は、ユーザが物理的にリセット・ボタンを押す時に生成されるハード・リセット要求のようなリセット要求を受け取る。次に、ハード・リセット要求に対して、リセット・ユニット8は、そのハード・リセット要求を受け取った後1クロック・サイクルの間、リセット・イベント・ビットをクリアするためにIPENDレジスタ42をリセットする。さらに、リセット・ユニット8は、適切なビットをイベント・ハンドラ14のILATレジスタ41中に設定し、イベント要求(51)を記録する。
【0018】
リセット要求を受け取り、ILATレジスタ41を更新した後に、イベント・ハンドラ14は、プロセッサ2がエミュレーション・モードにあるか、エミュレーション要求が保留かどうかをチェックする(52)。もはやエミュレーション・モード中ではなく、またエミュレーション要求が保留ではない場合、イベント・ハンドラ14は、IPENDレジスタ42の適切なビットを設定することによりかつILATレジスタ41の適切なビットをクリアすることにより、リセット・イベントを受理されたものとしてマークする(53)。
【0019】
次に、イベント・ハンドラ14は、SE_RESET(54)を有効化し、リセット要求がいつ削除されるかを検出するために、リセット要求をモニタする。例えば、ソフトウェア・リセット要求は、典型的には単一のクロック・サイクルの間続くが、しかし、ハード・リセット要求は、ユーザがどれくらいの時間リセット・ボタンを押すかに依存して、多くのクロック・サイクルの期間続くことがある。
【0020】
リセット要求が削除された(55)後、リセット・ユニット8は、追加のNサイクルの間SE_RESETを保持し、パイプライン4を通してクリアされた有効ビットを伝播し、それによって、パイプライン4のステージを無効なものとしてマークする(56)。上述したように、クリアされた有効ビットは、命令フェッチ・ユニット21が命令を取り込むことを防ぎ、リセット中のプロセッサ2の電力消費をより少なくさせる。Nサイクルの後、リセット・ユニット8は、SE_RESETを非有効化し(57)、パイプライン4はユニット21を取り込むためにリセット・アドレスを出すことにより、初期化状態から開始する(58)。リセット・アドレスは、典型的にはリセット・サービス・ルーチンが開始するアドレスで、ベクトル・テーブルまたは外部入力ピンから読まれてもよい。リセット・サービス・ルーチンが実行を終了すると、イベント・ハンドラはIPENDレジスタ42の適切なビットをクリアし、リセット・プロセスの完了を示す(59)。
【0021】
本発明の様々な実施例が記述された。例えば、パイプライン・プロセッサが記述されたが、それは出力リセット信号を実行パイプラインの少なくとも1つのステージに供給するリセット・ユニットを含む。リセット・ユニットは、ハード・リセット、ソフト・リセットおよびエミュレーション・リセットのようなリセット要求を、割り当てられた優先度を有するリセット・イベントとして扱う。
【0022】
プロセッサは、汎用目的の計算機システム、デジタル処理システム、ラップトップ・コンピュータ、携帯情報端末(PDA)および携帯電話を含む様々なシステムで実行することができる。そのようなシステムでは、プロセッサは、オペレーティング・システムまたは他のソフトウェア・アプリケーションを格納するフラッシュ(FLASH)メモリ装置またはスタティック・ランダム・アクセス・メモリ(SRAM)のようなメモリに結合される。これらおよび他の実施例は、次の請求項の範囲内にある。
【図面の簡単な説明】
【図1】
本発明によるパイプライン接続されたプログラム可能なプロセッサの例を図示するブロック図である。
【図2】
本発明による実行パイプラインの例を図示する概略図である。
【図3】
リセット・プロセスをさらに図示するタイミング・ダイヤグラムである。
【図4】
本発明によってプロセッサをリセットするための回路例を図示する概要図である。
【図5】
パイプライン・プロセッサをリセットするプロセス例を図示するフローチャートである。
Claims (45)
- パイプライン・プロセッサをリセットする要求を受け取る段階と、
前記リセット要求に応答してパイプライン・プロセッサのステージ内の有効ビットをクリアする段階と、
前記クリアされた有効ビットを前記パイプライン・プロセッサの後続のステージへ伝播する段階と、
から構成されることを特徴とする方法。 - 前記リセット要求を最優先度のリセット・イベントとして扱う段階をさらに含むことを特徴とする請求項1記載の方法。
- 前記リセット・イベントは、少なくとも他の1つのイベントより低い優先度を有している段階をさらに含むことを特徴とする請求項2記載の方法。
- 他の保留イベントの優先順位に基づいたリセット・イベントを受理する段階をさらに含むことを特徴とする請求項2記載の方法。
- 前記リセット・イベントが受理されるときに同期して、システム・リセット信号を生成する段階をさらに含むことを特徴とする請求項4記載の方法。
- 前記システム・リセット信号を生成する段階は、ハード・リセット要求の期間が少なくとも1クロック期間であるときに同期して、前記システム・リセット信号を生成する段階をさらに含むことを特徴とする請求項5記載の方法。
- 前記リセット要求をイベントとして扱う段階は、イベント受領レジスタ(ILAT)内にビットを設定する段階を含むことを特徴とする請求項2記載の方法。
- 前記リセット要求をイベントとして扱う段階は、前記ILATレジスタ内のビットを設定するに先立って、イベント・ステータス・レジスタ(IPEND)内のビットをクリアする段階をさらに含むことを特徴とする請求項7記載の方法。
- リセット要求を受け取る段階は、ハード・リセット要求、ソフト・リセット要求およびエミュレーション・リセット要求のうちの1つを受け取る段階を含むことを特徴とする請求項1記載の方法。
- 前記パイプライン・プロセッサは、N段のステージを有し、少なくともクロック信号のNサイクルの間、クリアされた有効ビットを後続のステージへ伝播する段階を含むことを特徴とする請求項1記載の方法。
- より優先度の高いイベントがサービスされた後に、前記リセット・イベントを受理する段階をさらに含むことを特徴とする請求項3記載の方法。
- パイプライン・プロセッサをリセットする要求を受け取る段階と、
前記リセット要求を割り当てられたリセット・イベントとして扱う段階と、
から構成されることを特徴とする方法。 - 前記リセット・イベントは、少なくとも他の1つのイベントより低い優先度を有している段階をさらに含むことを特徴とする請求項12記載の方法。
- リセット要求を受け取る段階は、ハード・リセット要求、ソフト・リセット要求およびエミュレーション・リセット要求のうちの1つを受け取る段階を含むことを特徴とする請求項12記載の方法。
- 他の保留イベントの優先順位に基づいたリセット・イベントを受理する段階をさらに含むことを特徴とする請求項12記載の方法。
- 前記リセット・イベントが受理されるときに同期して、システム・リセット信号を生成する段階をさらに含むことを特徴とする請求項12記載の方法。
- 前記リセット要求を扱う段階は、ハード・リセット要求の期間が少なくとも1クロック期間であるときに同期して、前記システム・リセット信号を生成する段階をさらに含むことを特徴とする請求項12記載の方法。
- 前記リセット要求をイベントとして扱う段階は、イベント受領レジスタ(ILAT)内にビットを設定する段階を含むことを特徴とする請求項12記載の方法。
- より優先度の高いイベントがサービスされた後に、前記リセット・イベントを受理する段階をさらに含むことを特徴とする請求項12記載の方法。
- 前記リセット要求が受理されたとき、前記パイプライン・プロセッサのステージ内の有効ビットをクリアする段階と、
前記クリアされた有効ビットを前記パイプライン・プロセッサの後続のステージへ伝播する段階と、
から構成されることを特徴とする請求項12記載の方法。 - 前記パイプライン・プロセッサは、N段のステージを有し、少なくともクロック信号のNサイクルの間、クリアされた有効ビットを後続のステージへ伝播する段階を含むことを特徴とする請求項12記載の方法。
- 複数のステージを有し、前記ステージが有効ビットを格納する格納回路を含む、実行パイプラインと、
前記実行パイプラインに結合された出力リセット信号を有し、前記格納回路の少なくとも1つの前記有効ビットをクリアするリセット・ユニットと、
前記クリアされた前記有効ビットを前記実行パイプラインの格納回路を通して伝播するために適合した制御ユニットと、
から構成されることを特徴とする装置。 - 前記リセット・ユニットは、ハード・リセット要求、ソフト・リセット要求およびエミュレーション・リセット要求のうちの1つに応答してリセット信号を有効化することを特徴とする請求項22記載の装置。
- 前記実行パイプラインはN段のステージを含み、前記リセット・ユニットはクロックの少なくともNサイクルの間、リセット信号を有効化することを特徴とする請求項22記載の装置。
- 前記実行パイプラインはN段のステージを有し、前記リセット・ユニットは、
前記リセット信号を伝播するために適応されたN−1段の直列に結合された格納回路と、
前記リセット信号を前記N−1段の直列に結合された格納回路から受信するORゲートと、
前記ORゲートの出力を受け取り、かつ前記実行パイプラインに前記リセット信号を供給するために適合した格納回路と、
から構成されることを特徴とする請求項22記載の装置。 - プログラム可能なプロセッサであって、
リセット要求を割り当てられた優先度を有するイベントとして処理するために適合したイベント・ステータス・レジスタ(IPEND)を具備するイベント・ハンドラであって、前記リセット要求はハード・リセット要求およびソフト・リセット要求の内の1つである、イベント・ハンドラと、
前記イベント・ハンドラがリセット・イベントを受理するときに、システム・リセット信号を出力するために適合したリセット・ユニットと、
から構成されることを特徴とするプログラム可能なプロセッサ。 - 前記イベント・ハンドラは、
前記リセット・イベントが保留かどうか示すビットを有するイベント受領レジスタ(ILAT)と、
前記リセット・イベントが受理されたかどうか示すビットを有するイベント・ステータス・レジスタ(IPEND)と、
から構成されることを特徴とする請求項26記載のプログラム可能なプロセッサ。 - 複数のステージを有する実行パイプラインであって、各ステージは対応する有効ビットを格納する格納回路を有するとともに、さらに前記実行パイプラインはシステム・リセット信号を受信するために適合され、前記格納回路の少なくとも1つの前記有効ビットをクリアする、実行パイプラインと、
前記クリアされた有効ビットを前記実行パイプラインの前記格納回路を通して伝播するために適合した制御ユニットと、
から構成されることを特徴とする請求項27記載のプログラム可能なプロセッサ。 - 前記実行パイプラインはN段のステージを有し、前記リセット・ユニットは、
前記リセット信号を伝播するために適応されたN−1段の直列に結合された格納回路と、
前記リセット信号を前記N−1段の直列に結合された格納回路から受信するORゲートと、
前記ORゲートの出力を受け取り、かつ前記実行パイプラインに前記リセット信号を供給するために適合した格納回路と、
から構成されることを特徴とする請求項28記載の装置。 - Nステージのパイプラインを有するプロセッサをリセットする要求を受け取る段階と、
前記リセット要求に応答してリセットされた信号を生成する段階と、
前記リセット要求がクリアにされた後に、クロックのNサイクルの間、前記リセット信号を同期して有効化する段階と、
から構成されることを特徴とする方法。 - リセット要求を受け取る段階は、ハード・リセット要求、ソフト・リセット要求およびエミュレーション・リセット要求のうちの1つを受け取る段階を含むことを特徴とする請求項30記載の方法。
- 前記リセット信号に応答して前記パイプラインの前記ステージ内の有効ビットをクリアする段階をさらに含むことを特徴とする請求項30記載の方法。
- 前記パイプライン・プロセッサを通してクリアされた有効ビットを前記クリアされた有効ビットに応答して伝播する段階をさらに含むことを特徴とする請求項30記載の方法。
- プロセッサをリセットする要求を受け取る段階と、
イベント保留レジスタ内のビットを更新し、リセット・イベントが現在保留中であることを示す段階と、
イベント・ハンドラが前記リセット・イベントを受理するときに、イベント・ステータス・レジスタ内のビットを更新する段階と、
前記受理されたリセット・イベントに応答してリセット信号を有効化する段階と、
前記リセット信号が無効化されるときに、リセット・サービス・ルーチンを起動する段階と、
から構成されることを特徴とする方法。 - 前記リセット要求がクリアされた後クロックのNサイクルの間前記リセット信号を有効化する段階をさらに含み、前記プロセッサはNステージのパイプラインを含むことを特徴とする請求項34記載の方法。
- 前記リセット要求がクリアされるときに、前記イベント保留レジスタ内の前記ビットをクリアする段階と、
前記リセット・サービス・ルーチンが終了するときに、前記イベント・ステータス・レジスタ内の前記ビットをクリアする段階と、
から構成されることを特徴とする請求項34記載の方法。 - 前記イベント・ステータス・レジスタは、前記リセット要求が少なくともクロックの1サイクルの間存在するとき、更新されることを特徴とする請求項34記載の方法。
- 前記リセット信号に応答して、前記パイプラインの前記ステージ内の有効ビットをクリアする段階をさらに含むことを特徴とする請求項34記載の方法。
- メモリ装置と、
前記メモリ装置に結合されたプロセッサであって、前記プロセッサはリセット要求を割り当てられた優先度を有するイベントとして処理するために適応されたイベント・ハンドラを含むとともに、前記リセット要求はハード・リセット要求およびソフト・リセット要求の内の1つである、プロセッサと、
から構成されることを特徴とするシステム。 - 前記プロセッサは、前記イベント・ハンドラが前記リセット・イベントを受理するとき、システム・リセット信号を出力するために適応したリセット・ユニットを含むことを特徴とする請求項39記載のシステム。
- 前記イベント・ハンドラは、
前記リセット・イベントが保留かどうか示すビットを有するイベント受領レジスタ(ILAT)と、
前記リセット・イベントが受け入れられたかどうかを示すビットを有するイベント・ステータス・レジスタ(IPEND)と、
から構成されることを特徴とする請求項39記載のシステム。 - 複数のステージを有する実行パイプラインであって、各ステージは対応する有効ビットを格納する格納回路を有するとともに、さらに前記実行パイプラインはシステム・リセット信号を受信するために適合され、前記格納回路の少なくとも1つの前記有効ビットをクリアする、実行パイプラインと、
前記クリアされた有効ビットを前記実行パイプラインの前記格納回路を通して伝播するために適合した制御ユニットと、
から構成されることを特徴とする請求項39記載のシステム。 - 前記実行パイプラインはN段のステージを有し、前記リセット・ユニットは、
前記リセット信号を伝播するために適応されたN−1段の直列に結合された格納回路と、
前記リセット信号を前記N−1段の直列に結合された格納回路から受信するORゲートと、
前記ORゲートの出力を受け取り、かつ前記実行パイプラインに前記リセット信号を供給するために適合した格納回路と、
から構成されることを特徴とする請求項42記載のシステム。 - 前記メモリ装置は、スタティック・ランダム・アクセス・メモリから構成されることを特徴とする請求項39記載のシステム。
- 前記メモリ装置は、フラッシュ・メモリから構成されることを特徴とする請求項39記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/684,113 US6665795B1 (en) | 2000-10-06 | 2000-10-06 | Resetting a programmable processor |
PCT/US2001/042533 WO2002029557A2 (en) | 2000-10-06 | 2001-10-05 | Resetting a programmable processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004511042A true JP2004511042A (ja) | 2004-04-08 |
Family
ID=24746728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002533063A Pending JP2004511042A (ja) | 2000-10-06 | 2001-10-05 | プログラム可能なプロセッサのリセット |
Country Status (6)
Country | Link |
---|---|
US (1) | US6665795B1 (ja) |
JP (1) | JP2004511042A (ja) |
KR (1) | KR100571332B1 (ja) |
CN (1) | CN1299199C (ja) |
TW (1) | TW542963B (ja) |
WO (1) | WO2002029557A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006252440A (ja) * | 2005-03-14 | 2006-09-21 | Fujitsu Ltd | 再構成可能演算処理装置 |
JP2009532783A (ja) * | 2006-03-30 | 2009-09-10 | シリコン イメージ,インコーポレイテッド | 共用不揮発性メモリ・アーキテクチャ |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6789187B2 (en) * | 2000-12-15 | 2004-09-07 | Intel Corporation | Processor reset and instruction fetches |
US20030065916A1 (en) * | 2001-07-30 | 2003-04-03 | Erickson Michael John | Method and apparatus for diagnosing the cause of a processor reset |
EP1615106A1 (en) * | 2004-07-05 | 2006-01-11 | STMicroelectronics Limited | Reset in a system-on-chip circuit |
KR20060131443A (ko) * | 2005-06-16 | 2006-12-20 | 엘지전자 주식회사 | 케이블 방송 수신기, 그의 리셋 방법, 그리고 데이터 구조 |
JP2007048019A (ja) * | 2005-08-10 | 2007-02-22 | Sony Computer Entertainment Inc | エミュレーション方法、エミュレータ、コンピュータ組込型デバイスおよびエミュレータ用プログラム |
US8176302B2 (en) * | 2005-10-25 | 2012-05-08 | Nxp B.V. | Data processing arrangement comprising a reset facility |
TWI386846B (zh) * | 2006-03-30 | 2013-02-21 | Silicon Image Inc | 利用共享式非揮發性記憶體初始化多個處理元件之方法、系統及快閃記憶體元件 |
KR101386509B1 (ko) * | 2007-05-09 | 2014-04-17 | 삼성전자주식회사 | 화상 형성 장치 그 제어 방법 |
US8055888B2 (en) * | 2008-02-28 | 2011-11-08 | Arm Limited | Initialisation of a pipelined processor |
TWI407298B (zh) * | 2010-03-30 | 2013-09-01 | Hon Hai Prec Ind Co Ltd | 網路接入設備的復位電路 |
CN102385433B (zh) * | 2010-08-31 | 2014-08-06 | 无锡中星微电子有限公司 | 一种系统级复位的方法及装置 |
GB2538052B (en) * | 2015-04-27 | 2019-07-03 | Gurulogic Microsystems Oy | Encoder, decoder, encryption system, encryption key wallet and method |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4794517A (en) | 1985-04-15 | 1988-12-27 | International Business Machines Corporation | Three phased pipelined signal processor |
DE69229338T2 (de) | 1992-06-30 | 1999-12-16 | Discovision Associates, Irvine | Datenpipelinesystem |
US5898869A (en) | 1996-09-20 | 1999-04-27 | The Foxboro Company | Method and system for PCMCIA card boot from dual-ported memory |
US5938728A (en) * | 1997-10-30 | 1999-08-17 | Advanced Micro Devices, Inc. | Apparatus and method for selectively controlling clocking and resetting of a network interface |
EP0992916A1 (en) | 1998-10-06 | 2000-04-12 | Texas Instruments Inc. | Digital signal processor |
-
2000
- 2000-10-06 US US09/684,113 patent/US6665795B1/en not_active Expired - Lifetime
-
2001
- 2001-10-05 CN CNB018170102A patent/CN1299199C/zh not_active Expired - Fee Related
- 2001-10-05 TW TW090124676A patent/TW542963B/zh not_active IP Right Cessation
- 2001-10-05 JP JP2002533063A patent/JP2004511042A/ja active Pending
- 2001-10-05 KR KR1020037003893A patent/KR100571332B1/ko active IP Right Grant
- 2001-10-05 WO PCT/US2001/042533 patent/WO2002029557A2/en active IP Right Grant
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006252440A (ja) * | 2005-03-14 | 2006-09-21 | Fujitsu Ltd | 再構成可能演算処理装置 |
US7743236B2 (en) | 2005-03-14 | 2010-06-22 | Fujitsu Limited | Reconfigurable processor |
JP4527571B2 (ja) * | 2005-03-14 | 2010-08-18 | 富士通株式会社 | 再構成可能演算処理装置 |
JP2009532783A (ja) * | 2006-03-30 | 2009-09-10 | シリコン イメージ,インコーポレイテッド | 共用不揮発性メモリ・アーキテクチャ |
Also Published As
Publication number | Publication date |
---|---|
CN1299199C (zh) | 2007-02-07 |
WO2002029557A2 (en) | 2002-04-11 |
US6665795B1 (en) | 2003-12-16 |
TW542963B (en) | 2003-07-21 |
WO2002029557A3 (en) | 2002-08-15 |
WO2002029557A9 (en) | 2003-02-13 |
CN1498365A (zh) | 2004-05-19 |
KR100571332B1 (ko) | 2006-04-17 |
KR20030034188A (ko) | 2003-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3781419B2 (ja) | パイプライン方式のプロセッサにおける例外処理 | |
JP3688270B2 (ja) | プロセッサの停止 | |
US6910141B2 (en) | Pipelined data processor with signal-initiated power management control | |
GB2234613A (en) | Method and apparatus for switching contexts in a microprocessor | |
US6665795B1 (en) | Resetting a programmable processor | |
JP2002544618A (ja) | 電力消費を低減するシステムおよび方法 | |
JP2008542949A (ja) | パイプライン型マイクロプロセッサの節電システムおよび節電方法 | |
US20020103991A1 (en) | Multi-cycle instructions | |
US6721878B1 (en) | Low-latency interrupt handling during memory access delay periods in microprocessors | |
JP3088129B2 (ja) | マイクロプロセッサ | |
JP2004005747A (ja) | マイクロプロセッサ及びマイクロプロセッサを動作する方法 | |
US6954873B2 (en) | Implementation of wait-states | |
JP2680899B2 (ja) | 情報処理装置及びその制御方法 | |
US6789187B2 (en) | Processor reset and instruction fetches | |
JP3158107B2 (ja) | 浮動小数点状態および制御レジスタ(fpscr)命令を直接実行するための方法および装置 | |
JP3562215B2 (ja) | マイクロコンピュータ及び電子機器 | |
JP2885548B2 (ja) | パイプライン制御方式 | |
JP5491113B2 (ja) | ベクトル処理装置、ベクトル処理方法、およびプログラム | |
JPH07182165A (ja) | コミット条件付き命令の処理方法およびその装置 | |
US7124285B2 (en) | Peak power reduction when updating future file | |
JP2636074B2 (ja) | マイクロプロセッサ | |
Boddu et al. | A Survey on Effective Implementation of Control Scheme in Processors | |
JP3435252B2 (ja) | 情報処理装置 | |
Praveen et al. | A survey on control implementation scheme | |
JP2000099330A (ja) | コンピュ―タ・プロセッサ・システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070413 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070511 |