JP5336228B2 - 複数のクロックドメインにおいて決定性を促進するテクニック - Google Patents

複数のクロックドメインにおいて決定性を促進するテクニック Download PDF

Info

Publication number
JP5336228B2
JP5336228B2 JP2009045539A JP2009045539A JP5336228B2 JP 5336228 B2 JP5336228 B2 JP 5336228B2 JP 2009045539 A JP2009045539 A JP 2009045539A JP 2009045539 A JP2009045539 A JP 2009045539A JP 5336228 B2 JP5336228 B2 JP 5336228B2
Authority
JP
Japan
Prior art keywords
counter
clock
value
threshold
execution unit
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.)
Expired - Fee Related
Application number
JP2009045539A
Other languages
English (en)
Other versions
JP2010020752A (ja
Inventor
エル. ヘンドリクソン、エリク
モンダル、サンジョイ
サッチャー、ラリー
ハジズ、ウィリアム
ハッキング、ランス
メノン、サンカラン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of JP2010020752A publication Critical patent/JP2010020752A/ja
Application granted granted Critical
Publication of JP5336228B2 publication Critical patent/JP5336228B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/06Clock generators producing several clock signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Description

本発明の実施形態は、一般的に情報処理に関する。特に、コンピュータシステムおよびマイクロプロセッサにおけるクロッキング分野に関する。
今日のマイクロプロセッサに、より多くの機能が統合されるに従い、プロセッサ内の機能ユニットが、異なるクロック周波数またはフェーズなどで動作する必要がある場合がある。同一プロセッサ内のクロックドメイン数が増加するに伴い、テストなどを目的とした、決定性の促進は、より複雑になる。いつくかのテストテクニックは、周期的システム管理割り込み(PSMI)を用い、プロセッサで実行されるプログラムを段階的に経て、処理の結果をプログラムの様々な段階で返してよい。
PSMIとは、循環バッファ内の外部バスアクティビティをロジックアナライザがトレースするデバック方法であり、その間、連続した2つの1がロジックアナライザバッファに常に存在するような頻度で、システム管理割り込み(SMI)が周期的に生成される。PSMIハンドラは、後にプロセッサのエミュレータまたはソフトウェアモデルでプロセッサの内部ステートの殆どを再構築できるように、プロセッサの内部ステートをメモリに保存する。また、トレース情報は、バグの再生に使用される。
一般的に、PSMIは、処理リソースに依存する。処理リソースとは、実行リソースなどであり、プロセッサが決定性のある結果を返すように、プロセッサ内の他のイベントと同期する。クロックドメイン数が、例えば、同じプロセッサ内により多くの機能が統合されることを理由に増加すると、PSMIテクニックの使用はより難しくなる。
本発明の実施形態は、添付図面の図に例示的に示されており、発明を限定するものではない。また、同一の参照番号は類似の要素を示す。
本発明の少なくとも1つの実施形態が使用され得る、マイクロプロセッサのブロック図である。
本発明の少なくとも1つの実施形態が使用され得る、共有バスを有するコンピュータシステムのブロック図である。
本発明の少なくとも1つの実施形態が使用され得る、ポイントツーポイントインターコネクトのコンピュータシステムのブロック図である。
本発明の少なくとも1つの実施形態が実装され得る、ロジックのブロック図である。
本発明の少なくとも1つの実施形態の実行に使用され得る動作の系統線図である。
図1は、本発明の少なくとも1つの実施形態が使用され得る、マイクロプロセッサのブロック図である。具体的に、図1は、1つ以上のプロセッサコア105および110を有する、マイクロプロセッサ100を示し、プロセッサコアは、少なくとも1つの非CPU機能ユニット107および113をそれぞれ有する。また図1は、非CPU機能ユニット107および113が実行しない別の動作を実行し得る、少なくとも1つの別の非CPU機能ユニット115を示す。ある実施形態では、非CPU機能ユニット107、113、および、115は、グラフィックス処理、メモリ、および、音声、ビデオ、ディスクなどの周辺制御、デジタル信号処理などの機能を含んでよい。また、ある実施形態では、マイクロプロセッサ100は、I/O制御など、図1に示されないその他のロジックを含んでよい。少なくとも1つの実施形態によると、複数のクロックドメインを有するプロセッサにおける、決定性の促進テクニックを実現するため、マルチプロセッサシステムの各マイクロプロセッサ、あるいはマルチコアプロセッサの各プロセッサコアは、ロジック119を含む、あるいはロジック119に関連してよい。ある実施形態では、ロジックは、1つ以上の実行リソースをプロセッサ内の1つ以上のクロックまたはイベントと同期させるべく、ハードウェア回路を含んでよい。また、別の実施形態では、ロジック119は、複数のクロックドメインを有するプロセッサ内の実行リソースの決定性を促進するべく、ソフトウエアを含んでよい。別の実施形態では、ここに記載する、決定性促進のためのテクニックを実行するべく、ハードウェアとソフトウエアの組み合わせを用いてよい。
ある実施形態では、アプリケーション、オペレーティングシステム、BIOS、ファームウェアなどのソフトウェアプログラムの改善、デバッグ、または最適化を支援するべく、ロジックを集積回路内あるいはその外側で使用することにより、プロセッサ内に多様な機能を持つことによって、複数のクロックドメインを有するプロセッサ内の実行リソースを決定性のあるステートに置くことができる。例えば、ある実施形態では、ロジック119は、ユニバーサルクロックパルス発生器(UCPG)を含んでよく、複数の異なる周波数あるいは位相を有する複数の異なるクロックの共通のクロックエッジ、またはイベントに基づいて、共通クロックパルスを生成してよい。ある実施形態では、カウンタのステートの変更にUCPGの出力を用いる。UCPG信号は、実行リソースにデバッグまたは最適化の対象のプログラムに関連した命令の処理を特定の閾カウント値またはその値以上で開始させ、実行リソースが、プロセッサ内の様々なクロックに対して決定性のあるステートであることを促進する。
例えば、ある実施形態では、カウンタが初期値へと初期化され、同期される実行ユニットが停止する。UCPGからの信号エッジが、カウンタをデクリメント(または、ある実施形態ではインクリメント)すると、カウンタが特定の閾値、例えば「0」などに到達し、実行ユニットにインタラプトが発生する。その後、UCPG信号の生成に寄与する、プロセッサ内の様々なクロックに対して決定性のある時点で、実行ユニットが命令の実行を開始する。プロセッサ内の様々なクロックドメインに対して決定性のあるステートにおける実行では、PSMIなどのテクニックを用い、処理コードのデバッグまたは最適化を、より信頼性のある方法で行ってよい。ある実施形態では、複数のプロセッサコア、あるいはグラフィックス、メモリ制御、または様々な周辺制御(例えば、システムオンチップ(SoC)プロセッサなど)の、複数の異なる機能を有するプロセッサで、ここに記載するテクニックを使用してよい。ここに開示したテクニックは、複数の機能が別個の集積回路に分散された、コンピュータシステムで使用されてよい。
例えば、図2は、本発明の少なくとも1つの実施形態が使用され得る、フロントサイドバス(FSB)コンピュータシステムを示す。プロセッサ201、205、210、または215は、プロセッサコア223、227、233、237、243、247、253、257の1つの内の、あるいはそれに関連した、ローカルレベル1(L1)キャッシュメモリ220、225、230、235、240、245、250、255のいずれかからの情報にアクセス可能である。さらに、プロセッサ201、205、210、および215のいずれもが、共有レベル2(L2)キャッシュ203、207、213、217、の1つ、あるいはチップセット265を介したシステムメモリ260からの情報にアクセス可能である。図2の1つ以上のプロセッサは、ロジック219を含むあるいはロジック219に関連し、複数のクロックドメインにおける処理の決定性を促進してよい。
図2に示すFSBコンピュータシステムに加え、ポイントツーポイント(P2P)インターコネクトシステムおよびリングインターコネクトシステムを含む、その他のシステム構成を、本発明の様々な実施形態と共に使用してよい。例えば、図3のポイントツーポイントシステムは、複数のプロセッサを有してよく、その内2つのプロセッサ370および380のみが例として示されている。プロセッサ370および380は、メモリ32および34に接続するローカルメモリコントローラハブ(MCH)372および382をそれぞれ含んでよい。プロセッサ370および380は、ポイントツーポイントインターフェース回路378および388を使用し、ポイントツーポイントインターフェース350を介してデータを交換してよい。プロセッサ370および380は、ポイントツーポイントインターフェース回路376、394、386、および398を使用し、個別のポイントツーポイントインターフェース352および354を介して、チップセット390とデータをそれぞれ交換してよい。また、チップセット390も、高性能グラフィックスインターフェース339を介して、高性能グラフィックスインターフェース回路338とデータを交換してよい。本発明の実施形態は、あらゆる数のプロセッサコアを有する、あらゆるプロセッサ内にあってよく、あるいは、図3の各ポイントツーポイントバスエージェント内にあってよい。ある実施形態では、あらゆるプロセッサコアが、ローカルキャッシュメモリ(図示なし)を含む、あるいはローカルキャッシュメモリに関連してよい。さらに、共有キャッシュ(図示なし)は、両方のプロセッサとは異なるいずれかのプロセッサに含まれ、ポイントツーポイントインターコネクトを介してプロセッサに接続されてよい。これにより、プロセッサが低電力モードの場合、共有キャッシュに、プロセッサのいずれかまたは両方のローカルキャッシュの情報を格納してよい。システム内のプロセッサまたは他の集積回路内の実行決定性を促進するべく、図3の1つ以上のプロセッサまたはコアは、ロジックを含む、あるいはロジックと関連してよい。ここに記載したように、ロジックは、1つ以上のカウンタのようなストレージを含む、あるいはストレージと関連してよい。またロジックは、PSMIなどのテクニックを用いてプログラムデバッグまたは最適化を促進するべく、決定性を有するステートに実行リソースを置く、UCPGを含んでよい。
図4は、本発明の少なくとも1つの実施形態を実行する、ロジックのブロック図である。ある実施形態では、ロジック419は、複数の異なる(あるいは同じ)周波数および/または位相を有する、複数のクロックパルス403を受信し、異なるクロックパルスの共通ステートに対応した周波数および位相を有する、共通クロックパルスを生成する、UCPG401を含む。例えば、ある実施形態では、カウンタは、非0値が0になるまでカウントダウンを行う。UCPGは、複数の異なるテクニックを実装し、それぞれに位相または周波数が異なってよい複数のクロック信号に対して、決定性のある信号を生成してよい。また、ある実施形態では、ロジック419は、UCPGからの出力信号407に対応する周波数で、初期値から閾値までカウントを行う、カウンタ405を含んでよい。例えば、ある実施形態では、カウンタが非0値に設定され、例えば「0」の閾値までカウントダウンされる。一方で、別の実施形態では、カウンタが例えば「0」の値に初期化され、閾値までカウントアップされる。ある実施形態では、カウンタ405は、複数のカウンタであってよく、それぞれに関連し合って、あるいは独立して、1つ以上の実行リソースを、少なくとも2つの異なるクロックドメインに対して決定性を有するステートに置いてよい。
カウンタが閾値に到達した場合、少なくとも1つの実行ユニット410の停止状態をインタラプトして、少なくとも1つの実行ユニットをUCPGクロックパルスに対して決定性を有するステートとする。これにより、UCPGクロックパルスが示すクロックに対し、実行ユニットが決定性を有するステートとなるようにする。ロジック419あるいはPSMIなどのデバッグまたは最適化テクニックの使用は、複数のクロックドメインを有するプロセッサで実行されるプログラムの開発およびデバッグに有用である。
図5は、実施形態が使用されるプロセッサまたはシステムの構成に関わらず、本発明の少なくとも1つの実施形態の実行に使用され得る、動作の系統線図である。動作501では、カウンタが初期ステートに初期化される。ある実施例では、初期ステートは0以上の値を示す。動作505では、対応する実行ユニットまたは複数の実行ユニットが停止する。動作510では、ユニバーサルクロックパルス発生器(UCPG)が、UCPGクロックパルスのエッジに同期してカウンタをデクリメントさせる。ある実施形態では、UCPGクロックパルスは、カウンタ値をインクリメントさせる。動作515では、カウンタが閾値に到達すると、対応する実行ユニットまたは複数の実行ユニットがアクティベートされ、動作520のUCPGクロックパルスが示すクロックに対して決定性を有する方法で命令を実行する。実行ユニットが、UCPGクロックパルスと同期したプロセッサ内の様々なクロックに対して決定性を有するステートにある、PSMIなどのデバッグまたは最適化のテクニックは、複数のクロックドメインを有するプロセッサで実行される、ソフトウェアプログラムの開発およびデバッグに使用されてよい。
少なくとも1つの実施形態の1つ以上の側面は、プロセッサ内の様々なロジックを表す、機械で読み取り可能な媒体に記録された代表的なデータで実施されてよい。データは機械で読み取られると、ここに記載されたテクニックを実行させるべく機械にロジックを組み立てさせる。このようなデータは、「IPコア」と呼ばれ、有体の機械で読み取り可能な媒体(「テープ」)に記録してよく、実際にロジックやプロセッサを製造する製造機器にロードすべく、様々な消費者または製造施設に供給してよい。
ここでは、マイクロアキテクチャのメモリ領域におけるアクセスを管理する方法と装置について記載した。上記の記載は、例示を目的としており、発明を制限するものではないと理解されるべきである。上記の記載を読み、理解した当業者には、数多くの他の実施形態が明白になるであろう。このため、発明の範囲は、添付の請求項とともに、それらが当然有する等価物の全範囲を参照して決定されるべきである。

Claims (20)

  1. 複数の異なる周波数および位相を有する複数の異なるクロック信号に共通したクロックエッジに基づいて共通クロックパルスを生成する、ユニバーサルクロックパルス発生器(UCPG)と、
    前記UCPGの前記共通クロックパルスに比例した周波数で、初期値から閾値までをカウントするカウンタと、
    前記カウンタが前記閾値に到達した結果、停止ステートからアクティベートされる、少なくとも1つの実行ユニットと、
    を備える装置。
  2. 前記少なくとも1つの実行ユニットは、前記カウンタを初期ステートへリセットする、請求項1に記載の装置。
  3. 前記初期値は非0値であり、前記閾値は0値である、請求項1または2に記載の装置。
  4. 前記UCPGの前記共通クロックパルスの周波数は、前記カウンタのカウントの変化の前記周波数に等しい、請求項1から3のいずれか1項に記載の装置。
  5. 命令デコーダと、命令スケジューラと、命令リタイアメントユニットと、を更に備える、請求項1から4のいずれか1項に記載の装置。
  6. ソフトウェアプログラムを含むメモリと、
    少なくとも1つの実行ユニットと、複数の機能に対応した複数のクロックドメインと、を有し、前記ソフトウェアプログラムを実行するプロセッサと、
    前記少なくとも1つの実行ユニットにおいて、前記複数のクロックドメインに対する決定性を促進するロジックと、を備え、
    前記ロジックは、
    前記複数のクロックドメインの複数の異なるクロック信号に共通したクロックエッジに基づいてユニバーサルクロックパルスを生成する、ユニバーサルクロックパルス発生器(UCPG)と、
    前記ユニバーサルクロックパルスに対応したレートで、初期ステートから閾値までをカウントするカウンタと、を含み、
    前記ユニバーサルクロックパルスは、前記複数のクロックドメインからの複数のクロックに同期する、システム。
  7. 前記ソフトウェアプログラムのデバッグを支援する、周期的システム管理割り込み(PSMI)ロジックを更に備え、
    前記PSMIロジックは、前記決定性を促進するロジックに従って、前記複数のクロックドメインと同期する、請求項6に記載のシステム。
  8. 前記プロセッサは、CPU、グラフィックスエンジン、メモリ制御ユニット、および少なくとも1つの周辺制御ユニットを含む、請求項7に記載のシステム。
  9. 複数のプロセッサを更に備える、請求項8に記載のシステム。
  10. 前記複数のプロセッサのうち、少なくとも2つは、複数のクロックドメインを有する、請求項9に記載のシステム。
  11. カウンタを初期値に初期化する段階と、
    前記カウンタに結合した実行ユニットを停止する段階と
    複数の異なるクロック信号に共通したクロックエッジに基づいて共通クロックパルスを生成するユニバーサルクロックパルス発生器(UCPG)信号の周波数に比例したレートで前記カウンタの値を変化させる段階と、
    前記カウンタが閾値に到達した後、前記実行ユニットをアクティベートする段階と、
    を備える方法。
  12. 前記実行ユニットは、前記カウンタを初期値にさせる、請求項11に記載の方法。
  13. 前記UCPG信号は、複数のクロックドメインからの複数のクロック信号を表す、請求項11または12に記載の方法。
  14. 前記実行ユニットは、前記カウンタの値が前記閾値に到達した後、インタラプト信号を生成することによりアクティベートされる、請求項11から13のいずれか1項に記載の方法。
  15. 前記カウンタの初期値が非0値であり、前記閾値が0値である、請求項11から14のいずれか1項に記載の方法。
  16. コンピュータに、
    実行ユニット内で複数の命令を実行する段階と、
    複数のクロックドメインからの複数のクロックに共通したクロックエッジに基づいて生成されたユニバーサルクロックパルスに比例したレートで閾値までカウントして、前記閾値に到達した場合に、実行を停止ステートからアクティベートさせるカウンタを含む決定性ロジックが、前記複数のクロックドメインからの前記複数のクロックに関連して前記実行を既知のステートにした結果生じた決定性を有する時点で、複数の命令で周期的システム管理割り込み(PSMI)信号を生成する段階と、
    を実行させるプログラム。
  17. 前記カウンタの初期値が0以上の値であり、前記閾値が0である、請求項16に記載のプログラム。
  18. 前記カウンタの初期値が0であり、前記閾値が0以上の値である、請求項16に記載のプログラム。
  19. 前記実行ユニットがシステムオンチップ(SoC)プロセッサに関連した、請求項16から18のいずれか1項に記載のプログラム。
  20. 前記SoCプロセッサは、少なくとも1つのCPU、グラフィックスエンジン、メモリコントローラ、および少なくとも1つの周辺コントローラを含む、請求項19に記載のプログラム。
JP2009045539A 2008-03-05 2009-02-27 複数のクロックドメインにおいて決定性を促進するテクニック Expired - Fee Related JP5336228B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/042,985 2008-03-05
US12/042,985 US8312309B2 (en) 2008-03-05 2008-03-05 Technique for promoting determinism among multiple clock domains

Publications (2)

Publication Number Publication Date
JP2010020752A JP2010020752A (ja) 2010-01-28
JP5336228B2 true JP5336228B2 (ja) 2013-11-06

Family

ID=40953295

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009045539A Expired - Fee Related JP5336228B2 (ja) 2008-03-05 2009-02-27 複数のクロックドメインにおいて決定性を促進するテクニック

Country Status (7)

Country Link
US (1) US8312309B2 (ja)
JP (1) JP5336228B2 (ja)
KR (1) KR101196494B1 (ja)
CN (1) CN101526831B (ja)
DE (1) DE102009010627A1 (ja)
RU (1) RU2432601C2 (ja)
TW (1) TWI395089B (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8103816B2 (en) * 2008-10-28 2012-01-24 Intel Corporation Technique for communicating interrupts in a computer system
GB2507049A (en) 2012-10-16 2014-04-23 Ibm Synchronizing Trace Data
US9043521B2 (en) 2012-11-13 2015-05-26 Intel Corporation Technique for communicating interrupts in a computer system
US11200184B1 (en) 2020-12-22 2021-12-14 Industrial Technology Research Institute Interrupt control device and interrupt control method between clock domains
US11764834B2 (en) 2022-02-15 2023-09-19 Raytheon Company Device for and method of synchronizing multiple beamforming devices

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3999169A (en) * 1975-01-06 1976-12-21 The United States Of America As Represented By The Secretary Of The Navy Real time control for digital computer utilizing real time clock resident in the central processor
US4099255A (en) * 1976-12-10 1978-07-04 Honeywell Information Systems Inc. Interrupt apparatus for enabling interrupt service in response to time out conditions
US5167024A (en) * 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
DE69131454T2 (de) * 1990-03-28 2000-03-23 Nec Corp Datenprozessor zur Impulssignalerzeugung als Antwort auf externes Taktsignal
JPH0776931B2 (ja) * 1990-11-27 1995-08-16 工業技術院長 情報処理システム
US5295257A (en) * 1991-05-24 1994-03-15 Alliedsignal Inc. Distributed multiple clock system and a method for the synchronization of a distributed multiple system
US5586332A (en) * 1993-03-24 1996-12-17 Intel Corporation Power management for low power processors through the use of auto clock-throttling
EP0715258B1 (en) * 1994-07-22 1998-10-07 Advanced Micro Devices, Inc. Improved computer system
JPH0898284A (ja) * 1994-07-25 1996-04-12 Nippondenso Co Ltd データ受信装置,送信装置および通信装置
JPH1165898A (ja) * 1997-08-21 1999-03-09 Hitachi Ltd 電子計算機の保守方式
EP0939491B1 (en) * 1998-02-27 2007-04-18 Lucent Technologies Inc. Clock pulse generator
US6128745A (en) * 1998-05-28 2000-10-03 Phoenix Technologies Ltd. Power management inactivity monitoring using software threads
US6118306A (en) * 1998-12-03 2000-09-12 Intel Corporation Changing clock frequency
JP2001013179A (ja) * 1999-06-29 2001-01-19 Mitsubishi Electric Corp リングオシレータクロック周波数測定方法、リングオシレータクロック周波数測定回路、およびマイクロコンピュータ
US6724850B1 (en) * 2000-08-31 2004-04-20 Hewlett-Packard Development Company, L.P. Deterministic hardware behavior between multiple asynchronous clock domains through the novel use of a PLL
US6948098B2 (en) * 2001-03-30 2005-09-20 Cirrus Logic, Inc. Circuits and methods for debugging an embedded processor and systems using the same
DE10229129C1 (de) * 2002-06-28 2003-12-11 Advanced Micro Devices Inc Debug-Schnittstelle für einen Ereigniszeitgeber
US20040040013A1 (en) * 2002-08-26 2004-02-26 Mohit Kalra Time-based breakpoints in debuggers
US6987404B2 (en) * 2003-10-10 2006-01-17 Via Technologies, Inc. Synchronizer apparatus for synchronizing data from one clock domain to another clock domain
US7269768B2 (en) * 2004-03-18 2007-09-11 Intel Corporation Method and system to provide debugging of a computer system from firmware
CN1780488B (zh) * 2004-11-23 2010-05-05 中兴通讯股份有限公司 一种程控交换机系统时钟校准装置
JP4847734B2 (ja) * 2005-10-31 2011-12-28 ルネサスエレクトロニクス株式会社 半導体集積回路装置、それのデバッグシステム及びデバッグ方法。
JP5239862B2 (ja) * 2006-08-14 2013-07-17 日本電気株式会社 デバッガ及びデバッグ方法

Also Published As

Publication number Publication date
US8312309B2 (en) 2012-11-13
US20090228736A1 (en) 2009-09-10
CN101526831A (zh) 2009-09-09
DE102009010627A1 (de) 2009-09-17
RU2432601C2 (ru) 2011-10-27
CN101526831B (zh) 2013-05-08
TWI395089B (zh) 2013-05-01
TW200944997A (en) 2009-11-01
KR20090095500A (ko) 2009-09-09
JP2010020752A (ja) 2010-01-28
KR101196494B1 (ko) 2012-11-01
RU2009107795A (ru) 2010-09-10

Similar Documents

Publication Publication Date Title
US9690603B2 (en) Central processing unit, information processing apparatus, and intra-virtual-core register value acquisition method
Dunlap et al. Execution replay of multiprocessor virtual machines
US7689867B2 (en) Multiprocessor breakpoint
JP4584315B2 (ja) 仮想マシン環境におけるタイマ・オフセット機構
US20110078350A1 (en) Method for generating multiple serial bus chip selects using single chip select signal and modulation of clock signal frequency
US10331531B2 (en) Self-testing in a processor core
JP2010044770A (ja) モニタメモリ待機を用いたキューされたロック
CN107111546B (zh) 用于在多核心微控制器中产生跨核心断点的系统及方法
US9454424B2 (en) Methods and apparatus for detecting software inteference
Xu et al. Automated OS-level device runtime power management
US8370684B2 (en) Microprocessor with system-robust self-reset capability
JP5336228B2 (ja) 複数のクロックドメインにおいて決定性を促進するテクニック
US11016768B2 (en) Hardware support for OS-centric performance monitoring with data collection
US20110185153A1 (en) Simultaneous execution resumption of multiple processor cores after core state information dump to facilitate debugging via multi-core processor simulator using the state information
Schmidt et al. Checkpoint/restart and beyond: Resilient high performance computing with FPGAs
JP6104671B2 (ja) マルチプロセッサシステム、装置、及び方法
Stan et al. The design of a run-time monitoring structure for a MPSoC
Drótos et al. Interrupt driven parallel processing
Mitchell Multi-core and multi-threaded socs present new debugging challenges
Weinstock et al. Accelerating MPSoC Simulation Using Parallel SystemC and Processor Sleep Models
Zhou Identifying and Understanding Performance Problems in Software Systems
Aljuhni Towards Effective Multi-Task Adaptive-Ticks Timer in Linux Kernel for Full Tickless Function
Carnà HOP-Hardware-based Online Profiling of multi-threaded applications via AMD Instruction-Based Sampling
TWI470421B (zh) 微處理器及其除錯方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111011

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120110

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120113

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120210

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120215

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120309

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120314

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120911

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121210

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130604

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130703

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130801

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees