JP2017530464A - システムオンチップ(SoC)及びシステムのための低電力デバッグアーキテクチャ - Google Patents

システムオンチップ(SoC)及びシステムのための低電力デバッグアーキテクチャ Download PDF

Info

Publication number
JP2017530464A
JP2017530464A JP2017513735A JP2017513735A JP2017530464A JP 2017530464 A JP2017530464 A JP 2017530464A JP 2017513735 A JP2017513735 A JP 2017513735A JP 2017513735 A JP2017513735 A JP 2017513735A JP 2017530464 A JP2017530464 A JP 2017530464A
Authority
JP
Japan
Prior art keywords
debug
unit
trace
soc
signal
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.)
Granted
Application number
JP2017513735A
Other languages
English (en)
Other versions
JP6490803B2 (ja
Inventor
メノン,サンカラン
ティーアールピー,バブ
キューニス,ロルフ
Original Assignee
インテル コーポレイション
インテル コーポレイション
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 インテル コーポレイション, インテル コーポレイション filed Critical インテル コーポレイション
Publication of JP2017530464A publication Critical patent/JP2017530464A/ja
Application granted granted Critical
Publication of JP6490803B2 publication Critical patent/JP6490803B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Abstract

実施形態における、プロセッサ/システムオンチップ(SoC)に対するデバッグアーキテクチャであって、1つ以上の機能デバッグ信号を受信するセントラルデバッグユニットであって、セントラルデバッグユニットは、さらに、少なとも1つのファームウェアソース、少なくとも1つのソフトウェアソース、及び少なくとも1つのハードウェアソースからデバッグ情報を受信し、圧縮したデバッグ情報を出力するように構成され、圧縮したデバッグ情報を受信し、圧縮したデバッグ情報にタイムスタンプを付加する、システムトレースモジュールと、タイムスタンプ付き圧縮されたデバッグ情報を受信し、タイムスタンプ付き圧縮されたデバッグ情報を並列化する、パラレルトレースインタフェースと、並列化タイムスタンプ付き圧縮デバッグ情報を複数の出力パスの1つに出力する出力ユニットを含む。他の実施形態が説明され、請求される。

Description

実施形態は、集積回路及びそのような回路を組み込んだシステムに対するデバッグ動作に関連する。
現代のシステムオンチップ(SoC:System on Chip)や他の集積回路(IC)は、長いバッテリ寿命を達成するために低電力命令(directives:ディレクティブ)を有するように設計されている。そのようなICやSoCのデバッグは、以前の世代と比較してかなり高い精度でウェイクアップとスリープするデバイス中に設計された複数の低電力領域のため非常にチャレンジングである。現在利用可能なデバッグソリューションは、ファームウェアと低電力動作のデバッグを行う限られた能力しか提供しない。
実施形態に従ったプロセッサの一部のブロック図である。 本発明の実施形態に従ったプロセッサの別のブロック図である。 本発明の実施形態に従ったトレースコレクションユニットのブロック図である。 本発明の実施形態に従った方法の流れ図である。 本発明の実施携帯に従ったシステムのブロック図である。 実施形態が使用できるシステムの実例のブロック図である。 実施形態が使用できる別のシステムの実例のブロック図である。 実施形態に従ったシステムオンチップのブロック図である。
様々な実施形態において、システムインパッケージ(SiP)、マルチチップパッケージ(MCP)を含むプロセッサや他のシステムオンチップ(SoC)に対する電力を意識した(power-aware)低電力デバッグアーキテクチャが提供され、それは、例えば、ブートアップに制限されず含むファームウェア動作、低電力状態エントリ/イグジット(low power state entry/exit)に制限されず含む低電力動作などをとりわけ含み、例えば、システムへの実装としてそれらのデバイスの幅広い様々な態様をテスト/デバッグできるようなものである。このデバッグアーキテクチャは、低電力タブレットやスマートフォン用IC/SoC,例えば、モノのインターネット(IoT)デバイス、ウェアラブルなど組み込みデバイス、クライアント/サーバアプリケーションで使用される低電力デバイスなどのデバッグに使用することができる。実施形態は、それ故に、初期のブートデバッグの間にハードウェア/ソフトウェア/ファームウェアの可観測性を提供し、低電力状態と低電力状態のエントリ/イグジット遷移は、システムの全体の動作範囲の効率的なデバッグを提供する。異なる実施形態において、デバッグトリガは、ファームウェア、オペレーティングシステム又は他のソフトウェアに含むことができ、様々なプラットフォームの動作状態をテストするためにデバッグ情報が選択的に収集される時点をトリガすることができる。
またさらに、進化したIC/SoCは、よりさらに厳しい電力消費要求を持っているので、実施形態は、デバッグロジックを選択的に有効及び無効にする技術を提供することによって、そのようなロジックの電力消費は、そのようなプロセッサを持つ出荷された数多くの製品において、避けることが可能となる。しかしながら、実施形態は、さらに、こられの製品のうちの1つが、デバッグ/故障解析のために現場から戻ってきたとき、選択的な有効性を提供することができることを理解されたい。
様々な実施形態において、電力を意識した低電力デバッグスキームは、常時オン(AON:Always-ON)領域で動作するロジックの初期ブートデバッグを可能にする。1実施形態において、デバッグ動作に対するメインのコントローラであるセントラルデバッグユニットは、最小限のロジックで構成することができ、AON領域又は独立したデバッグ電力領域に保持され、しばしばプロセッサ内でデバッグすることが最も困難な回路であり得る、電源を入れる段階の初期の動作又は低電力遷移の間のロジックのデバッグを可能とする。
このようにして、デバッグパス及びデバッグロジックがAON又はデバッグ電力領域に保持されるように初期ブートの初め、及び低電力遷移の間に、デバッグ動作を実行することができる。すなわち、所定のデザインにおいて、組み込んだデバッグロジックをプロセッサ又はプラットフォームの電力消費対象(デザイン仕様に従って)に実行させる場合、デバッグロジックは、分離されたデバッグ電力領域に配置することができる。この独立したデバッグ電力領域は、AON電力領域から分離されて保持されることができ、1つ以上の制御可能電力領域は、コアとプロセッサの他の機能ユニットを含むことができる。その結果、デバッグ電力領域は、このデバッグ電力領域におけるリーク電流喪失による電力喪失を含んだ電力を節約するために出荷前は、製造の間に、恒久的に電源オフ(例えば、構成ヒューズのセットの1つ以上のヒューズを溶かすこと又は他の構成値を経由して)として構成することができる。この場合は、リターンマテリアルオーソライゼイション(RMA)デバッグ又は別の理由(例えばフィールドテスト)のために返却された部品に電力を適用する必要があり、ヒューズの上書きは、例えば、テストアクセスポート(TAP)コントローラ経由で提供することができる。
これから図1を参照して、実施形態に従ったSoCなどのプロセッサの一部のブロック図を示す。最初に示されるSoC100の一部は、X(DFx)回路に対するデザインに関連し、それは、テストのためのデザイン、バリデーションのためのデザイン、デバッグのためのデザインなどを含む様々な目的に使用することができる(DFxにおけるXは、テスト(Test)に対するデザインを意味する「T」、デバッグ(Debug)に対するデザインを意味する「D」、バリデーション(Validation:検証)に対するデザインを意味する「V」などと置き換えることができる)。この特定のデザインは、デバッグのためのデザインが目的であり、このロジックがデバッグ目的で主として使用される。一般に、プロセッサの機能ユニット又は他のデバッグホストの1つ以上からの入力を受信し、そのような情報を所望のフォーマットでデバッグホストの内部又は外部に対して提供するために適切に処理するために、そのような回路は使用することができる。そのようなDFx回路は、プロセッサのデザイン、開発及びデバッグの経過の間で使用することができ、さらに、例えば、スマートフォン、タブレット、ファブレット、又は任意の他のポータブル又は他のコンピューティングデバイスなどのポータブルコンピューティングデバイスなどとしてプラットフォームにプロセッサを組み込む間に使用することができる。もちろん、DFx回路は、またポストプラットフォーム製造テストとデバッグ動作に対して使用することもできる。
示された実施形態において、SoC100は、1つ以上のコア130〜130を含む数個の機能回路を含む。実施形態において、そのようなコアは、所定のIntel(R)アーキテクチャ(IA)デザインなどの異種又は同種のコアのセットであり得る。もちろん、別の実施形態において、例えば代わりのARMアーキテクチャに基づいたコアなどの別の製造業者のコアもあり得る。そして、別の実施形態において、Intel(R)ベースコアとARMベースコア又は他のロジックの組合せもあり得る。
一般に、図1に示された回路の残りの部分は、プロセッサのDFx回路に関係する。見られるように、DFxユニット120は、ハードウェア、ファームウェア、及び/又はソフトウェアの種々の収集を含む様々なオンチップソースからの入力を受信するように構成される。種々のソースから受信した様々な入力を収集し、第1の内部相互接続138を経由して選択されたデバッグ信号を送るように構成されたセントラルデバッグユニット(CDU)125を、DFxユニット120は含む。動作の間、ハードウェア(HW)、ソフトウェア(SW)及びファームウェア(FW)のデバッグトレースを含むデバッグ信号は、CDU125へ送信される。本明細書で使用されるように、「トレース(trace)」は所望のオンチップ位置から取得された信号また他の情報のストリーミングセットを指し、リアルタイムで見られる又は記憶され後にアプリケーション開発者、アプリケーションプログラム、又はシステム動作を観察するための外部の装置などの所定のユーザによって見るために読み出される、動作に関する情報を一般に提供する。プロセッサの様々な機能ユニットから受信された内部デバッグ信号は、例えば、興味があるデバッグブロックとCDU125内の最終的なセレクタとの間のアンコア(uncore)ロジックなどの独立したブロックにおけるブロックレベルのセレクタ、中間ブロックにおける中レベルのセレクタを使って順に並べられる(collated)点に留意されたい。低電力デバッグに関連する信号は、ブロック内のAON領域に置かれ、AON信号が送信され低電力デバッグが有効にされる。代替案としては、上述の通り、これらの信号は、デバッグ領域にも置かれる(製造テスト/デバッグの後でヒューズが切断され又は代替手段によって製造で無効にすることのいずれも可能である)。
1実施形態において、セントラルデバッグユニット125の少なくとも一部は、デバッグロジックによる電力消費を最少化するために、この領域によって電力供給される必要なロジックのみと共にAON電力領域において維持することができる。1実施形態において、CDU125は、集中型パケタイザ、トリガロジック、及び圧縮ロジックを含む。もちろん、他の実施形態において、追加のロジックがCDU125にある場合もある。1実施形態において、CDU125からのこれらのデバッグ信号出力は、最小限処理されたデバッグ信号のセットであり得、示されるように、セレクションロジック160とトレースマージユニット140を含む複数の宛先に提供することができる。
さらに示されるように、トレースマージユニット140は、入来機能デバッグ信号も受信し、それらは、1実施例において、リアルタイム命令トレース(RTIT)信号(及び/又はリアルタイムデータトレース信号)の形式又はIntel(R)プロセッサトレース(PT)トレース又は他のトレース技術などのデバッグ信号のプロプライエトリな形式をとる。この目的を達成するために、トレースマージユニット140は、調停ロジック145を含み、調停ロジック145は、内部デバッグ信号と機能デバッグ信号又は他のコアデバッグ信号の間で調停を行い、それにより、入来信号をこれらの種々のパスの間で調整し、トレースマージユニット140の残りの部分に選択した信号を提供する。
一般に、トレースマージユニット140は、タイムスタンプ情報を付加することによってCDU出力をさらに処理するように構成される。同様に、トレースマージユニット140は、1つ以上のプロトコルと互換性があるやり方でこのタイムスタンプ付きデバッグトレース情報をストリームする。例えば、1実施形態において、トレースマージユニット140は、モバイルインダストリプロセッサインタフェース(MIPI)アライアンスシステムトレースプロトコル(STP)と互換性があり得る。別の実施形態において、トレースマージユニット140は、ARMトレースファネル(ARM trace funnel)と互換性があり得、ARMトレースファネルは、トレースラッパープロトコル、ARMエンベッデッドトレースマクロセル(ETM)又は他のプロトコルを実行する。もちろん、RTIT又はIntel(R)PTなどの他のプロトコルも使うことができる。トレースマージユニット140経由で内部デバッグ信号を提供することによって、そのような内部デバッグ信号は、タイムスタンプを付加され、例えば、MIPI STPプロトコルなどの所定のプロトコルで送信される。同様に、これらの処理され、タイムスタンプが付けられた信号は、プロセッサから出力することができ、ロジックアナライザ、トレースポートアナライザ(TPA)、又は送信されたタイムスタンプ付きデバッグストリームを解読する他のツールなどの所定のデバッグツールによって受信され、使用することができる。そのようなツールにおいて、これらの信号は、デバッグを行うために解読され、視覚化することができる。またさらに、タイムスタンプトレースは、信号間の時間相関関係を可能とし、それ故に、デバッグを容易にする。
これらの処理されたデバッグ信号は、相互接続148を経由してパラレルトレースインタフェース(PTI)ロジック150に提供され、そこでさらに信号を処理することができる。1実施形態において、PTIロジック150は、受信したデバッグ情報を並列化するように構成される。並列化の幅は、出力のために選択されるピン又は他の出力パスの数に依存して制御される点(例えば、1、2、4、8、又は16など)に留意されたい。処理された信号は、相互接続155を経由してセレクションロジック160に提供される。一般に、セレクションロジック160は、相互接続155を経由して受信した処理された信号又は相互接続138を経由して受信されたもっと最小限の処理されたデバッグ信号のいずれかを選択し、相互接続165を経由して選択された信号を出力ユニット170へ出力するように構成される。一般に、出力ユニット170は、オンダイ相互接続を経由して出力パスを出力接続の1つ以上のセットに提供し、1実施形態において、それらは、SoCの専用出力ピン、入力/出力(I/O)ピン、及び/又はシステムメモリに接続されたピン又は他の相互接続に対応することができ、システムメモリは、オンチップスタティックランダムアクセスメモリであり得る。1実施形態において、これらの出力接続は、出力ピンの第1のセット180〜180と出力ピンの第2のセット190〜190を含むことができる。1実施形態において、第1の出力ピン180は、汎用IO(GPIO)ピンであり、第2の出力ピン190は、PTIピンなどの別のタイプのピン接続であり得る。1実施形態において、ある出力パスは、例えば、PTIピンを経由して閉じた筐体(closed chassis)システムのマイクロセキュアデジタル(SD)ピンに接続され、それによりフォームファクタデバッグ(FFD)又は閉じた筐体デバッグが、開いた筐体に追加して可能となる。
いくつかの実施形態において、並列化の代わりに、トレースマージユニット140からの処理されたデバッグ信号は、高速シリアルストリームを経由して宛先に送信することができる。この場合、トレースデータは、セレクションユニット110において、PTIロジック150の出力から又はトレースマージユニット140からのいずれかが、CDU125によるTrace Data Sel信号出力に応答して、選択することができる。1実施形態において、セレクションロジック110に対するデフォルトの選択は、ディスプレイコントローラ105の出力を選択し、デバッグに基づいて、選択は、デバッグトレースデータを選択するように変更される。この選択された出力は、ディスプレイロジック112へ提供され、それは、並列トレースデータから直列ストリームに変換され、プロトコル情報が付加され、高速シリアルI/Oインタフェース114へ運ばれる。図1のこの特定の高レベル図が示されたが、本発明の範囲は、この点において制限されないことを理解されたい。
これから図2を参照して、プロセッサ100のさらなる詳細が示される。さらに具体的に、図2は、SoCの全体の高レベル図を提供し、SoCは、追加のSoC回路の文脈で、図1で上述したデバッグ回路を含む。図2は、コア106を示し、それは、1実施形態においてSoCのメインの中央処理装置(CPU)であり得、そして、1実施形態において、1つ以上の命令セットアーキテクチャの命令を実行するように構成された進化したアウトオブオーダー実行コア(advanced out-of-order execution core)であり得る。同様に、コア106は、ノースユニット108に接続され、ノースユニット108は、1実施形態において、メモリコントローラ及び/又は他のインタフェース回路などの様々なインタフェース及び他の制御回路を含むことができる。見られるように、ノースユニット108は、DFxユニット120に接続される。
加えて、ウェストユニット111も、DFxユニット120に接続される。様々な実施形態において、ウェストユニット111は、1つ以上のプロセッサ、グラフィックスプロセッサ、一定の機能ユニットなどの1つ以上の処理ユニットを含む。さらにまた、サウスユニット115は、追加の又は異なる機能ユニット、インタフェースユニットなどを含むことができ、同様にDFxユニット120にも接続される。トレース収集及び通信に関する追加の詳細は、サウスユニット115に見られる点に留意すべきである。もっと具体的には、様々なトレースがサウスユニット115内のトレースコレクションユニット118に提供される。
示した実施形態において、メッセージトレースは、ソフトウェアトレース、ファームウェアトレース及びハードウェアトレースを含み、メッセージトレース、1実施形態において、AONトレースを含むことができるので、SoCが位置する所定のプラットフォームが低電力モードであっても、これらのトレースは、電源オンの回路に関連する。例えば、スマートフォン、タブレット、モノのインターネット(IoT)などのモバイルプラットフォームの文脈において、プラットフォームは電源オンであるが使われていないとき(例えば、そのディスプレイはオフで、ユーザの相互作用が起こらないとき)、SoCのある回路は、常時オンのままであり、セルラシステムなどのワイヤレス通信システムの基地局などとの接続性は維持される。
1実施形態において、トレースコレクションユニット118は、例えば、チップ外(off-chip)から(及びロジックアナライザなどのプラットフォーム外のソース)、例えば、次にジョイントテストアクショングループ(JTAG)ユニット119に接続されるSoCのJTAGインタフェースを経由して、制御信号を受信するジョイントテストアクショングループ(JTAG)ユニット119を経由して受信された信号によって制御される。別の実施形態において、制御信号は、任意の他のメモリマップ入力/出力(MMIO)アクセスメカニズム(例えば、デバッグバトラ、シリアルワイヤデバッグ、ICなど)から受信することができる。その結果、トレースコレクションユニット118に集められた様々なトレース信号は、DFxユニット120、より具体的には、本明細書で説明される処理のために図1のCDU125に対応することができるデバッグロジックに提供される。図2に示されたデバッグ回路の残りの部分は、図1に関して上述したものに一般に対応することができる点に留意すべきである。図2においてこの高レベルで実施形態が示されているが、本発明の範囲は、この点で制限されないことを理解されたい。
これから図3を参照して、本発明の実施形態に従ったトレースコレクションユニットのさらなる詳細が示される。トレースコレクションユニット200は、図2のトレースコレクションユニット118に一般に対応することができる点に留意すべきである。複数のそのようなトレースコレクションユニットは、例えば、様々なクラスタ又はプロセッサのユニットに位置することができることを理解されたい。見られるように、トレースコレクションユニット200は、複数のソースからの入来トレース情報を受信するように構成され、複数のソースは、ソフトウェアメッセージ210、ファームウェアメッセージ220、内部信号マルチプレクサ(又はスイッチ切り替え電力領域(switched power domain))ソース230と常時オン(又は非スイッチ切り替え電力領域(unswitched power domain))ソース240を含む。マルチプレクサなどのセレクションユニット245は、ソース230とソース240との間で選択することができる点に留意されたい。
これらのソースからの様々なトレース情報は、仲介記憶領域として対応するトレースバッファ215、225、235に提供することができる。最後に、例えば別のマルチプレクサなどのセレクションロジック250は、構成入力を経由して受信した構成信号(configuration signals)に応答して制御することができ、セントラルデバッグユニット又は他の宛先に接続された内部相互接続などの出力パス260を経由して出力のために対応するトレースを選択する。図3にはこの限定的な回路が示されているが、本発明の範囲は、この点について制限されないことを理解されたい。
1実施形態においてハードウェアトレースは、クラスタレベル内で、内部信号が可観測性のためにマルチプレクサツリーに接続される内部デバッグ信号マルチプレクサアーキテクチャ経由、マルチプレクサ入力経由、又はファブリックトレースフック(FTH)経由のいずれかで収集することができる。そのようなハードウェアトレースは、プロトコルレベルで又は低電力又は遷移デバッグに関するものであり得る点に留意されたい。これらのHWトレースは、AON領域又はその他から供給され、いずれの場合にしても、信号はAON領域内の内部デバッグマルチプレクサに送信され、それにより記憶と再生の必要性を避けることができる(セーブとリストアとしても知られる)。代わりの記憶と再生は、機械の状態が、電源がオフにされる(電力削減の目的で)前に保存され、そして、機械の電源が再度入れた後に、状態はリストアされる。
1実施形態において、ソフトウェアトレースは、クラスタ内で柔軟に処理され、例えばマルチプレクサ選択を使って動的にソフトウェアマスタを選択することができる。いくつかのケースにおいて、デバッグに必要な場合は、複数のソフトウェアマスタが、インタリーブすることができる。上述の通り、実施形態は、ファームウェア(FW)トレースを処理することも提供し、そのような実施形態では、AONロジックがデバッグに対して利用可能なときは、そのようなトレースはリアルタイムでストリームすることができる。
1実施形態を用いて、低電力エントリ/イグジット又は異なる電力状態間での遷移に関連するデバッグ情報を取得し、出力することができる。そのように、実施形態は、すべての種類のトレース及びHW、SW、FW及び内部信号などのイベントの可観測性を提供することにより、SoC又は他のICの出力ポートで観測可能にする。
別の言いかたをすれば、実施形態は、常にハードウェア(トランザクションレベル及び信号レベル)、ソフトウェアとファームウェアのトレースの可観測性を提供し、それは制限なく、初期デバッグ、低電力エントリ/イグジット遷移(low power entry/exit transitions)、及び通常のランタイムデバッグに対して、信号レベルの可観測性と遷移レベルの可観測性をさらに提供する。またさらに、実施形態は、機能ユニットデバッグ信号に加えて、内部デバッグストリームを処理するためのSTMブロックの再利用による内部デバッグHW、SWとFWのトレースのタイムスタンプ付加を提供する。
そのように、実施形態は、デバッグデータへのトリガ動作、フィルタリング、パケット化、圧縮の機能と共にすべての種類のデバッグソース(例えば、ハードウェア、ソフトウェア及びファームウェア)の完全な、共通の、効率的でスケーラブルなデバッグ能力を可能とし、効率的なデバッグに対する出力バンド幅を提供する。また、実施形態に従ったデバッグアーキテクチャは、分離されたデバッグ電力プレーン上にデバッグロジックの一部の又は全部を置くことにより、生産部品における電力を節約することができ、このプレーンへの電力は、例えば、ヒューズ又は他の手段を経由して、電源オフすることができ、コンポーネントレベルで節電するためにデバッグロジックを電源オフし、次に、プラットフォームの電力も節約し、オーバーライド機能によりリターンパーツのデバッグのためにその電源を入れることができる。
加えて、実施形態が低電力デバッグ(S0ixなどのACPIシステムの低電力状態の
間)の実行に使用されるので、出力パスは、AONの1つ又はデバッグ電力領域にロジックを置くことによって、Display Port、PCIe、USB又はタイプCコネクタなどの高速シリアルトレースポートなどの他の位置に接続することができる。いくつかのケースでは、トレース情報は、閉じた筐体デバッグに対して、組み込みDFxインタフェース又はUSBプロトコルによるダイレクトコネクトインタフェース(DCI)を経由して通信することもできる。実施形態は、それ故に、特に、低電力モバイルSoC並びにクライアント/サーバIC及びSoCを含む多くの異なる種類のICのデバッグに対して使用することができる。
これから図4を参照すると、本発明の実施形態に従った方法の流れ図が示されている。より具体的には、図4の方法300は、ファームウェア実行の間、SoCのデバッグロジックを使って実行されるデバッグ動作に関連する。図4に示された特定の実施形態は、プリブートファームウェア動作に関するものであるが、本発明の範囲は、このような環境に制限されず、ファームウェアベースのデバッグは、SoCを含むプラットフォームの通常のシステム動作の間に同様に実行することができることを理解されたい。
見られるように、方法300は、SoCのAON部分を電源オンにすることから始まる(ブロック310)。動作におけるこの時点で、プラットフォームとSoCは完全には機能していないので、SoCの限られた部分のみ、すなわち、AON電力領域のみが電源オンされる。それ故に、デバッグ回路の部分がAON電力領域に位置する実施形態において、これらの部分もまた電源オンされる。代わりにデバッグ回路が、その自身のデバッグ電力領域に組み込まれる別の実施形態において、このデバッグ電力領域も電源オンにすることができる。
デバッグ回路がファームウェアとハードウェアのトレース情報を収集するように構成することができるブロック320へ次のパスを制御する。そのような構成は、例えば、JTAGインタフェースなどのSoCのテストインタフェースを経由して、実行され、マルチレベルマルチプレクサアーキテクチャの異なるレベルなどで様々なセレクタにそのようなハードウェア及びファームウェアのトレースを提供するように構成させる。
次に、制御パスはブロック330へ行き、そこでは、SoCの動作がプリブート環境で開始され、プリブート環境では、基本入力/出力(BIOS)の異なるモジュールなどが、例えばユニファイドエクステンシブルファームウェアインタフェース(UEFI)などに従って、プラットフォームファームウェアの少なくとも一部が実行される。そのような動作の間、ファームウェアとハードウェアのトレース情報は、デバッグ回路で処理される(ブロック340)。そのような処理に応答して、処理される情報は、選択された出力パスを経由してSoCからストリームすることができる(ブロック350)。例えば、プロトタイプ形式のプラットフォームの開発の間などのいくつかの状況では、開いた筐体(open chassis)配置が存在することができ、トレース情報は、GPIOピン(又はそれらのピンの一部)を経由してストリーミング出力され、又は後の抽出及びデバッグのためにメモリに送られ又はデバッグ目的のための代替ピンを経由して送ることができる。代わりに、プラットフォームデザインがさらに前進し、完全に機能的なプラットフォームが存在するとき、閉じた筐体デバッグ動作が発生するかも知れず、そして、トレース情報は、1つ以上のマイクロSDピンのセット又はHDMI(登録商標)、USB又は最終製品で利用可能な代替のピンなどの他のピンの組を経由して、他の出力パスを経由してストリーミング出力される。
まだ図4を参照して、プラットフォームデバッグの間、エラーが検出されたか否かは、ストリームされたトレース情報に基づいて決定することができる(ひし形360)。いいえの場合は、プラットフォームは、ブート環境に遷移することができる(ブロック365)。ブート環境(所定のOSによって)への移行に応じて、デバッグ回路の追加の構成が発生し、ファームウェアトレース情報の取得の代わりに、ソフトウェアトレース情報を取得することができる(あるハードウェアトレース情報に加えて)点に留意されたい。
そうではなく1つ以上のエラーがプリブート環境で検出された場合、エラー検出イベントにタイムスタンプを付加することができるブロック370へパスが制御される。1実施形態において、そのようなタイムスタンプは、受信したストリーミングトレース情報のタイムスタンプ情報を使ってある程度達成することができ、それは、タイムスタンプを含むフォーマットとして受信することができる。最後にブロック380において、タイムスタンプエラー検出イベントは、例えば、プラットフォームが接続されるトレース解析ツールのユーザなどにレポートすることができる。図4の実施形態にはこの高レベルで示されているが、本発明の範囲は、この点で制限されないことを理解されたい。
これから図5を参照して、本発明の実施形態に従ったシステムのブロック図が示されている。図5の実施形態において、システム900は、複数の領域を含むSoCであり得、それらのぞれぞれは、独立した動作電圧と動作周波数で動作するように制御することができる。特定の説明に役立つ実例として、システム900は、インテルコーポレーションから入手可能なi3、i5、i7又は他のそのようなプロセッサなどのIntel(R)アーキテクチャコア(TM)ベースSoCであり得る。しかしながら、サニーヴェール、CAのアドバンストマイクロデバイスInc.(AMD)、ARMホールディングスLtd.からARMベースデザイン又はそれらのライセンシー又はサニーヴェール、CAのMIPSテクノロジーInc.MIPSベースデザイン、またはそれらのライセンシー又はアドプタ―からの入手可能な低電力SoC又はプロセッサは、代わりに、アップルA7プロセッサ、クアルコムスナップドラゴンプロセッサ、又はテキサスインスツルメンツのOMAPプロセッサなどの他の実施形態に存在しても良い。そのようなSoCは、スマートフォン、タブレットコンピュータ、ファブレットコンピュータ、ウルトラブック(TM)コンピュータ、IoTデバイス、ウェアラブル、又は他のポータブルコンピューティングデバイスなどの低電力システムにおいて使用することができる。
図5の示された高レベル図において、SoC900は、複数のコアユニット910〜910を含む。各コアユニットは、1つ以上のプロセッサコア、1つ以上のキャッシュメモリ及び他の回路を含むことができる。各コアユニット910は、1つ以上の命令セット又は他の命令セット又はそれらの組合せをサポートする(例えば、x86命令セット(新しいバージョンが追加されたいくつかの拡張と共に)、MIPS命令セット、ARM命令セット(例えばNEONなどのオプションの追加の拡張と共に))。コアユニットのいくつかは、異種のリソース(例えば、異なるデザインの)であり得る点に留意されたい。加えて、そのような各コアは、キャッシュメモリ(図示ぜず)に接続することができ、そのような実施形態では、共用レベル(L2)キャッシュメモリであり得る。不揮発性記憶装置930は、様々なプログラムや他のデータを記憶するために使用することができる。例えば、この記憶装置は、BIOS、他のシステムソフトウェアなどのマイクロコード、ブート情報の少なくとも部分を記憶するために使用することができる。
各コアユニット910は、また、SoCの追加の回路に相互接続を可能とするバスインタフェースユニットなどのインタフェースも含むこともできる。1実施形態において、各コアユニット910は、次にメモリコントローラ935に接続されるプライマリキャッシュコヒーレントオン・ダイ相互接続として動作することができるコヒーレントファブリックに接続される。次に、メモリコントローラ935は、DRAM(図5における説明の簡単のため示されていない)などのメモリとの通信を制御する。
コアユニットに加えて、追加の処理エンジンがプロセッサ内に存在し、それは、1つ以上のグラフィックス処理ユニット(GPU)を含むことができる少なくとも1つのグラフィックスユニット920を含み、グラフィックス処理の実行と同様に、グラフィックスプロセッサ(いわゆるGPGPU動作)上で汎用の動作を場合により実行する。加えて、少なくとも1つのイメージ信号プロセッサ925が存在し得る。信号プロセッサ925は、SoCの内部又はオフチップのいずれかの1つ以上のキャプチャデバイスから受信した入来イメージデータを処理するように構成することができる。
他のアクセラレータも存在し得る。図5の説明において、ビデオコーダー950は、高解像度ビデオコンテンツに対するハードウェアアクセラレーションサポートを提供するなどのビデオ情報に対するエンコーディング及びでコーディングを含むコーディング動作を実行することができる。ディスプレイコントローラ955は、さらに、システムの内部及び外部のディスプレイに対するサポートを提供することを含むディスプレイ動作を加速することを提供することができる。加えて、デバッグユニット945は、存在することができ、デバッグユニット945は、本明細書で説明された低電力デバッグアーキテクチャを含むことができる。各ユニットは、電力マネージャ940を経由してそれ自身の電力消費を制御することができ、電力マネージャ940は、様々な電力管理技術を実行する制御ロジックを含むことができる。
いくつかの実施形態において、SoC900は、さらに、様々な周辺機器装置が接続され得るコヒーレントファブリックに接続される非コヒーレントファブリックを含むことができる。1つ以上のインタフェース960a〜960dは、1つ以上のオフチップデバイスとの通信を可能にする。そのような通信は、特に他の種類の通信プロトコルの中で、PCIe(TM)、GPIO、USB、IC、UART、MIPI、SDIO、DDR、SPI、HDMIなどの様々な通信プロトコルに従うことができる。図5の実施形態におけるこの高レベルとして示されているが、本発明の範囲は、この点で制限されないことを理解されたい。
これから図6を参照すると、実施形態で使用することができるシステムの実例のブロック図が示されている。見えるように、システム1200は、スマートフォン又は他のワイヤレス通信機であり得る。ベースバンドプロセッサ1205は、システムから送信され又はシステムによって受信される通信信号に関して様々な信号処理を実行するように構成される。次に、ベースバンドプロセッサ1205は、アプリケーションプロセッサ1210に接続され、アプリケーションプロセッサ1210は、多くの良く知られたソーシャルメディア及びマルチメディアアプリケーションなどのユーザアプリケーションに加えて、OS及び他のシステムソフトウェアを実行するシステムのメインのSoCであり得る。アプリケーションプロセッサ1210は、さらに、デバイスに対する様々な他のコンピューティング動作を実行するように構成され、本明細書で説明される低電力デバッグアーキテクチャを含むことができる。
次に、アプリケーションプロセッサ1210は、例えば、タッチスクリーンディスプレイなどのユーザインタフェース/ディスプレイ1220に接続することができる。加えて、アプリケーションプロセッサ1210は、不揮発性メモリ、すなわち、フラッシュメモリ1230及びシステムメモリ、すなわち、ダイナミックランダムアクセスメモリ(DRAM)1235を含むメモリシステムに接続することができる。さらに見られるように、アプリケーションプロセッサ1210は、さらに、ビデオ及び/又は静止画を記録できる1つ以上のイメージキャプチャデバイスなどのキャプチャデバイス1240に接続される。
まだ図6を参照して、加入者アイデンティティモジュール及び場合によりセキュア記憶装置及び暗号化プロセッサを備えるユニバーサルインテグレーテッドサーキットカード(UICC)1240も、アプリケーションプロセッサ1210に接続される。システム1200は、さらに、アプリケーションプロセッサ1210に接続することができるセキュリティプロセッサ1250を含むことができる。複数のセンサ1225は、アプリケーションプロセッサ1210に接続することができ、加速度計及び他の環境情報などの様々な検知された情報の入力を可能にする。オーディオ出力デバイス1295は、ボイスコミュニケーション、再生又はストリーミングオーディオデータなどの形式で、サウンドを出力するインタフェースを提供することができる。
さらに説明するように、近距離無線通信(NFC)非接触インタフェース1260は、NFCアンテナ1265を経由してNFC近距離場における通信を提供する。分離したアンテナが図6に示されているが、いくつかの実施形態において、1つのアンテナ又は異なるセットのアンテナを提供し、様々なワイヤレス機能を可能とすることを理解されたい。
電力管理統合回路(PMIC:power management integrated circuit)1215は、アプリケーションプロセッサ1210に接続され、プラットフォームレベル電力管理を実行する。この目的を達成するために、PMIC1215は、アプリケーションプロセッサ1210に電力管理リクエストを発行し、上述のある低電力状態に入ることができる。その上、プラットフォームの制限に基づいて、PMIC1215は、またシステム1200の他のコンポーネントの電力レベルを制御することができる。
送信し、受信する通信を可能にするために、様々な回路がベースバンドプロセッサ1205とアンテナ1290との間に接続できる。具体的には、無線周波数(RF)トランシーバ1270及びワイヤレスローカルエリアネットワーク(WLAN)トランシーバ1275があり得る。一般に、RFトランシーバ1270は、例えば、符号分割多重アクセス(CDMA)、グローバルシステムフォーモバイルコミュニケーション(GSM(登録商標))、ロングタームエボリューション(LTE)又は他のプロトコルなどに合致して、3G又は4Gワイヤレス通信プロトコルなどの所定のワイヤレス通信プロトコルに従って、ワイヤレスデータ及びコールを受信及び送信するために使用することができる。加えて、GPSセンサ1280が存在し得る。例えばAM/FM及び他の信号などのラジオ信号の受信又は送信などの他のワイヤレス通信も提供することができる。加えて、WLANトランシーバ1275を経由して、ブルートゥース(登録商標)標準規格又はIEEE802.11a/b/g/nなどのIEEE802.11標準規格に従うなどのローカルワイヤレス通信も実現することができる。
これから図7を参照して、実施形態が使用され得る別のシステムの実例のブロック図が示される。図7の説明において、システム1300は、タブレットコンピュータ、2:1タブレット、ファブレット又は他のコンバーチブル又はスタンドアローンのタブレットのようなモバイル低電力システムであり得る。図示されるように、SoC1310があり、デバイスのアプリケーションプロセッサとして動作するように構成することができる。SoC1310は、本明細書で説明するように低電力デバッグアーキテクチャを含むことができる。
様々なデバイスは、SoC1310に接続することができる。示した図において、メモリサブシステムは、SoC1310に接続されたフラッシュメモリ1340及びDRAM1345を含む。加えて、タッチパネル1320は、SoC1310に接続され、タッチパネル1320のディスプレイ上に仮想キーボードの提供を含めて、ディスプレイ機能及びタッチ経由のユーザ入力を提供する。有線ネットワーク接続性を提供するために、SoC1310は、イーサネット(登録商標)インタフェース1330に接続される。周辺機器ハブ1325は、SoC1310に接続され、様々なポート又は他のコネクタのいずれかによってシステム1300に接続することができるなどの、様々な周辺機器デバイスとのインタフェースを可能にする。
SoC1310内の内部電力管理回路及び機能に加えて、PMIC1380は、SoC1310に接続され、例えば、システムがバッテリ1390又はACアダプタ1395経由でAC電力による電力を供給されているかに基づいて、プラットフォームベース電力管理を提供する。この電力ソースベース電力管理に加えて、PMIC1380は、環境及び使用条件に基づいて、プラットフォーム電力管理動作をさらに実行することができる。またさらに、PMIC1380は、SoC1310に制御及び状態情報を送信し、SoC1310内の様々な電力管理動作を起こさせることができる。
まだ図7を参照して、ワイヤレス機能を提供するために、WLANユニット1350は、SoC1310に接続され、次にアンテナ1355に接続される。様々な実装において、WLANユニット1350は、IEEE802.11プロトコル、ブルートゥース(登録商標)(TM)プロトコル又は任意の他のワイヤレスプロトコルを含む1つ以上のワイヤレスプロトコルに従って通信を提供することができる。
さらに図示されるように、複数のセンサ1360は、SoC1310に接続することができる。これらのセンサは、ユーザジェスチャセンサを含む、様々な加速度計、環境及び他のセンサを含むことができる。最後に、オーディオコーデック1365は、SoC1310に接続され、オーディオ出力デバイス1370にインタフェースを提供する。もちろん、図7にこの特定の実装と共に示されたが、多くの変形や代替案も可能であることを理解されたい。
次に図8に移って、1実施形態に従ったSoCデザインの実施形態が描かれる。特定の説明のための実例として、SoC2000は、ユーザ機器(UE)を含んでいる。1つの実施形態において、UEは、ウェアラブル、ハンドヘルドフォン、スマートフォン、タブレット、ウルトラシンノートブック、ノートブック、IoTデバイス、又は任意の他の同様のデバイスなどのエンドユーザによって使用される任意のデバイスを指す。しばしば、UEは、基地局又はノードに接続し、それらは潜在的に事実上、GSMネットワークにおけるモバイルステーション(MS)に対応する。
ここでSoC2000は、2コアー2006及び2007を含む。上述と同様にコア2006と2007は、Intel(R)アーキテクチャコア(TM)ベースプロセッサ、アドバンストマイクロデバイス、Inc.(AMD)プロセッサ、MIPSベースプロセッサ、ARMベースプロセッサデザイン、又はそれらのカスタム、及びそれらのライセンシー又はアドプタなどの命令セットアーキテクチャに適合することができる。コア2006及び2007は、キャッシュ制御2008に接続され、それは、バスインタフェースユニット2009及びL2キャッシュ2010と関連し、システム2000の他の部分と通信する。相互接続2010は、オンチップ相互接続を含む。
相互接続2010は、本明細書において説明する低電力アーキテクチャを有することができる、デバッグユニット2030などの他のコンポーネントに通信チャネルを提供する。見られるようにデバッグユニット2030は、複数のオフチップ接続とインタフェースすることができる。相互接続2010は、また、SOC2000を初期化してブートするコア2006及び2007による実行のためにブートコードを保持するブートROM2035、外部メモリ(例えばDRAM2060)とインタフェースするSDRAMコントローラ2040、不揮発性メモリ(例えば、フラッシュ2065)とインタフェースするフラッシュコントローラ2045、周辺機器とインタフェースする周辺機器コントローラ2050(例えば、シリアルペリフェラルインタフェースなど)、MIPI又はHDMI/DPインタフェースのうちの1つを経由して表示し、入力を受信する(例えば、タッチ使用可能入力)ビデオコーデック2020及びビデオインタフェース2025、グラフィックス関連の計算を実行するGPU2015などに接続される。
加えて、システムは、ブルートゥースモジュール2070、3Gモデム2075、GPS2080、及びWiFi2085などの通信のための周辺機器を説明する。また電力コントローラ2055もシステムに含まれる。
以下の実例は、さらなる実施形態に関連する。
1実例において、装置は、少なくとも1つのハードウェアソース、少なくとも1つのファームウェアソース、及び少なくとも1つのソフトウェアソースを含む複数のソースからデバッグ信号を受信するセントラルデバッグユニットと、前記セントラルデバッグユニットから前記デバッグ信号を受信するトレースマージユニットであって、前記トレースマージユニットは、前記複数のソースの1つ以上からの前記デバッグ信号と複数のハードウェアユニットからの機能デバッグ信号との間で選択する調停回路を有し、前記トレースマージユニットは、前記選択されたデバッグ信号又は機能デバッグ信号にタイムスタンプを付加し、前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を受信し、前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を並列化するパラレルトレースインタフェースと、前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を受信し、前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を直列化する、シリアルトレースインタフェースと、前記セントラルデバッグユニットから前記デバッグ信号、及び前記パラレルトレースインタフェースから前記並列化タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を受信し、出力パスに出力するために、前記デバッグ信号、前記並列化タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号のうちの1つを選択し、前記出力パスは、複数の出力パスから選択される、セレクションユニットと、を含む。
1実例において、前記装置は、システムオンチップ(SoC)を備え、前記複数の出力パスは、汎用入力/出力ピンのセットと、マイクロセキュアデジタルピンのセットと、メモリ相互接続のセットと、少なくとも1つのユニバーサルシリアルバスピンと、のうちの1つ以上を含む。
1実例において、前記装置は、さらに、分散セレクションユニットを備え、前記分散セレクションユニットは、前記装置を含むシステムオンチップ(SoC)の第1の機能ユニットに位置する第1のセレクションユニットと、前記SoCのアンコアロジックに位置する第2のセレクションユニットであって、前記第2のセレクションユニットは、前記第1のセレクションユニットを含む複数の第1のセレクションユニットから出力を受信し、前記第2のセレクションユニットを含む複数の第2のセレクションユニットから出力を受信し、選択したデバッグ信号を前記セントラルデバッグユニットに出力する、第3のセレクションユニットと、を含む。
1実例において、前記装置は、さらに前記SoCのテストインタフェースを経由してトレース制御信号を受信し、前記トレース制御信号に応答して、前記トレースコレクションユニットから前記セントラルデバッグユニットへの出力のために、ハードウェアトレース情報、ソフトウェアトレース情報及びファームウェアトレース情報のうちの1つを選択するように構成された、トレースコレクションユニットを含む。
1実例において、前記ファームウェアは、前記SoCに対するブートコードを含む。
1実例において、前記装置は、前記セントラルデバッグユニットの第1の部分を含む第1の電力領域及び前記セントラルデバッグユニットの第2の部分を含む第2の電力領域とを含み、前記SoCが低電力モードで動作する間、前記第1の電力領域は電源オンを維持し、前記第2の電力領域は電源オフである。
1実例において、前記セントラルデバッグユニットの前記第1の部分は、前記低電力モードに関連するデバッグ信号を受信し、処理する。
1実例において、前記装置は、さらに前記SoCを含むポータブルデバイスのユーザ動作の間、前記セントラルデバッグユニットの少なくとも前記第1の部分を無効にするように構成されるヒューズロジックを含み、前記ヒューズロジックは、前記ポータブルデバイスの前記SoCに組み込む前に構成される。前記ヒューズロジックは、前記ポータブルデバイスのデバッグ動作の間、前記セントラルデバッグユニットの前記第1の部分を有効にするために上書きされるように構成される。
1実例において、前記並列化タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号は、MIPIアライアンスシステムトレースプロトコルと互換性がある。
1実例において、SoCは、ユーザ機器タッチ使用可能デバイスに組み込まれる。
別の実例において、システムは、ディスプレイ及びメモリを備え、上述の実例の1つ以上の装置を含む。
1実例において、少なくとも1つのコンピュータ読取甲斐能媒体は、命令を含み、命令は実行されたときにシステムに、ファームウェアトレース情報及びハードウェアトレース情報を収集するプロセッサのデバッグ回路を構成することであって、前記デバッグ回路は、前記プロセッサを含むプラットフォームがオンのとき、電源オンである第1の電力領域に位置する第1の部分と、前記プラットフォームが低電力状態にあるとき電源オフである第2の電力領域に位置する第2の部分を含み、前記プラットフォームのプリブート環境において、前記ファームウェアトレース情報及び前記ハードウェアトレース情報を前記デバッグ回路で処理することと、前記処理されたファームウェアトレース情報及び前記処理されたハードウェアトレース情報を前記プロセッサの選択された出力パスを経由して、前記プロセッサから前記プラットフォームに接続された解析ツールにストリーミングすることと、をさせる。
1実例において、前記少なくとも1つのコンピュータ読取可能媒体が、さらに命令を含み、実行されたときに、前記システムに前記処理されたファームウェアトレース情報及び前記処理されたハードウェアトレース情報のうちの少なくとも1つの情報に基づいてエラーの検出に応答して、エラー検出イベントにタイムスタンプを付加することを可能にする。
1実例において、前記少なくとも1つのコンピュータ読取可能媒体がさらに、命令を含み、実行されたときに、前記プリブート環境において前記デバッグ回路の前記第1の部分を有効にすることと、前記プリブート環境において前記デバッグ回路の前記第2の部分を無効にすることとを含む。
1実例において、前記ファームウェアトレース情報を処理することが、前記ファームウェアトレース情報のフィルタリング、パケット化、及び圧縮のうちの1つ以上を含む。
1実例において、SoCは、命令を実行する少なくとも1つのコアであって、前記少なくとも1つのコアは、前記少なくとも1つのコアの動作に関する第1の機能デバッグ信号を提供する第1のデバッグロジックを含み、非コア動作を実行する少なくとも1つのコアに接続されたアンコアロジックであって、前記アンコアロジックは、前記アンコアロジックの動作に関する第2の機能デバッグ信号を提供する第2のデバッグロジックを含み、前記少なくとも1つのコア及び前記アンコアロジックに接続され、前記第1及び第2の機能デバッグ信号を受信するセントラルデバッグユニットであって、前記セントラルデバッグユニットは、少なくとも1つのファームウェアソース及び少なくとも1つのソフトウェアソースからデバッグ情報を受信し、圧縮されたデバッグ情報を出力し、前記圧縮されたデバッグ情報を受信し、前記圧縮されたデバッグ情報にタイムスタンプを付加する、トレースマージユニットと、前記タイムスタンプ付き圧縮されたデバッグ情報を複数の出力パスの1つに出力する出力ユニットであって、前記1つの出力パスは、テストインタフェースを介して前記SoCに提供される構成に従って選択される、を備える。
1実例において、前記複数の出力パスが、汎用入力/出力ピンのセットと、マイクロセキュアデジタルピンのセットと、メモリ相互接続のセットと、少なくとも1つのシリアルピンとのうちの1つ以上を含む。
1実例において、前記SoCが、前記SoCを含むプラットフォームがオンのとき電源オンのままである第1の電力領域及び前記プラットフォームが低電力状態にあるとき電源オフである第2の電力領域を含み、前記セントラルデバッグユニットは、前記第1の電力領域を含まれる第1の部分及び前記第2の電力領域に含まれる第2の部分を含む。
1実例において、前記SoCは、前記SoCを含むプラットフォームのユーザ動作の間、前記セントラルデバッグユニット、前記トレースマージユニット、及び前記出力ユニットを無効にするように構成されるヒューズロジックを備え、前記ヒューズロジックは、前記プラットフォームのデバッグ動作の間、前記セントラルデバッグユニット、前記トレースマージユニット、及び前記出力ユニットの少なくとも一部を有効にするために上書きされるように構成される。
1実例において、前記セントラルデバッグユニットは、トリガロジック、フィルタロジック、パケット化ロジック、及び圧縮ロジックのうちの少なくとも1つを含む。
1実例において、パラレルトレースインタフェースは、前記タイムスタンプ付き圧縮デバッグ情報を受信し、前記タイムスタンプ付き圧縮デバッグ情報を並列化するように構成される。
1実例において、前記並列化タイムスタンプ付き圧縮デバッグ情報を直列化し、前記直列化タイムスタンプ付き圧縮デバッグ情報を直列出力パスを経由して出力する、手段をさらに備える。
上述の実例の様々な組み合わせも可能である点を理解されたい。
実施形態は、多くの異なるタイプのシステムにおいて使用することができる。例えば、1つの実施形態において、通信デバイスは、本明細書で説明した様々な方法及び技術を実行するように配置することができる。もちろん、本発明の範囲は、通信デバイスに制限されることはなく、代わりに他の実施形態は、命令を処理する他のタイプの装置、又はコンピューティングデバイス上で実行されたことに応答して、本明細書で説明した方法又は技術の1つ以上をデバイスに実行させる命令を含む1つ以上の機械読取可能媒体を対象とすることができる。
実施形態は、コードとして実装することができ、命令を実行するためにシステムをプログラムするために使用することができる命令をその中に記憶した非一時的記憶媒体に保存することができる。記憶媒体は、フロッピーディスク、光ディスク、半導体ドライブ(SSD)、コンパクトディスクリードオンリメモリ(CD−ROM)、コンパクトディスク書込み可能(CD−RW)、及び磁気光ディスクを含むディスク、リードオンリメモリ(ROM)、ダイナミックランダムアクセスメモリ(DRAM)などのランダムアクセスメモリ(RAM)、スタティックランダムアクセスメモリ(SRAM)、消去可能プログラマブルリードオンリメモリ(EPROM)、フラッシュメモリ、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、磁気又は光学式カードなどの半導体デバイスの任意のタイプ、又は電子的命令を記憶するのに適した任意の他のタイプの媒体を含みこれらに制限されない。
本発明は、限られた数の実施形態に関して説明されたが、当業者であれば、それらからの多数の変更や修正を認識することができる。添付の請求の範囲は、この本発明の真の趣旨と範囲内に含まれるすべてのそのような変更や変形をカバーする意図である。

Claims (25)

  1. 少なくとも1つのハードウェアソース、少なくとも1つのファームウェアソース、及び少なくとも1つのソフトウェアソースを含む複数のソースからデバッグ信号を受信するセントラルデバッグユニットと、
    前記セントラルデバッグユニットから前記デバッグ信号を受信するトレースマージユニットであって、前記トレースマージユニットは、前記複数のソースの1つ以上からの前記デバッグ信号と複数のハードウェアユニットからの機能デバッグ信号との間で選択する調停回路を有し、前記トレースマージユニットは、前記選択されたデバッグ信号又は機能デバッグ信号にタイムスタンプを付加し、
    前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を受信し、前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を並列化するパラレルトレースインタフェースと、
    前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を受信し、前記タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を直列化する、シリアルトレースインタフェースと、
    前記セントラルデバッグユニットから前記デバッグ信号、及び前記パラレルトレースインタフェースから前記並列化タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号を受信し、出力パスに出力するために、前記デバッグ信号、前記並列化タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号のうちの1つを選択し、前記出力パスは、複数の出力パスから選択される、セレクションユニットと、
    を含む、装置。
  2. 前記装置は、システムオンチップ(SoC)を備え、前記複数の出力パスは、
    汎用入力/出力ピンのセットと、
    マイクロセキュアデジタルピンのセットと、
    メモリ相互接続のセットと、
    少なくとも1つのユニバーサルシリアルバスピンと、
    のうちの1つ以上を含む、請求項1に記載の装置。
  3. 前記セレクションユニットは、前記SoCが閉じた筐体を持つポータブルデバイス内に構成されたとき、マイクロセキュアデジタルピンの前記セットに対応する前記出力パス上に前記選択されたデバッグ信号を出力するように構成される、請求項2に記載の装置。
  4. 前記装置は、さらに、分散セレクションユニットを備え、前記分散セレクションユニットは、
    前記装置を含むシステムオンチップ(SoC)の第1の機能ユニットに位置する第1のセレクションユニットと、
    前記SoCのアンコアロジックに位置する第2のセレクションユニットであって、前記第2のセレクションユニットは、前記第1のセレクションユニットを含む複数の第1のセレクションユニットから出力を受信し、
    前記第2のセレクションユニットを含む複数の第2のセレクションユニットから出力を受信し、選択したデバッグ信号を前記セントラルデバッグユニットに出力する、第3のセレクションユニットと、
    を含む、請求項1に記載の装置。
  5. 前記SoCのテストインタフェースを経由してトレース制御信号を受信し、前記トレース制御信号に応答して、トレースコレクションユニットから前記セントラルデバッグユニットへの出力のために、ハードウェアトレース情報、ソフトウェアトレース情報及びファームウェアトレース情報のうちの1つを選択するように構成された、トレースコレクションユニットをさらに含む、請求項2に記載の装置。
  6. 前記ファームウェアは、前記SoCに対するブートコードを含む、請求項2に記載の装置。
  7. 前記セントラルデバッグユニットの第1の部分を含む第1の電力領域及び前記セントラルデバッグユニットの第2の部分を含む第2の電力領域とを含み、前記SoCが低電力モードで動作する間、前記第1の電力領域は、電源オンを維持し、前記第2の電力領域は電源オフである、請求項2に記載の装置。
  8. 前記セントラルデバッグユニットの前記第1の部分は、前記低電力モードに関連するデバッグ信号を受信し、処理する、請求項7に記載の装置。
  9. 前記SoCを含むポータブルデバイスのユーザ動作の間、前記セントラルデバッグユニットの少なくとも前記第1の部分を無効にするように構成されるヒューズロジックを含み、前記ヒューズロジックは、前記ポータブルデバイスの前記SoCに組み込む前に構成される、請求項7に記載の装置。
  10. 前記ヒューズロジックは、前記ポータブルデバイスのデバッグ動作の間、前記セントラルデバッグユニットの前記第1の部分を有効にするために上書きされるように構成される、請求項9に記載の装置。
  11. 前記並列化タイムスタンプ付き選択されたデバッグ信号又は機能デバッグ信号は、モバイルインダストリプロセッサインタフェース(MIPI)アライアンスシステムトレースプロトコルと互換性がある、請求項1に記載の装置。
  12. ファームウェアトレース情報及びハードウェアトレース情報を収集するプロセッサのデバッグ回路を構成することであって、前記デバッグ回路は、前記プロセッサを含むプラットフォームがオンのとき、電源オンである第1の電力領域に位置する第1の部分と、前記プラットフォームが低電力状態にあるとき電源オフである第2の電力領域に位置する第2の部分を含み、
    前記プラットフォームのプリブート環境において、前記ファームウェアトレース情報及び前記ハードウェアトレース情報を前記デバッグ回路で処理することと、
    前記処理されたファームウェアトレース情報及び前記処理されたハードウェアトレース情報を前記プロセッサの選択された出力パスを経由して、前記プロセッサから前記プラットフォームに接続された解析ツールにストリーミングすることと、
    を含む、方法。
  13. さらに、前記処理されたファームウェアトレース情報及び前記処理されたハードウェアトレース情報のうちの少なくとも1つの情報に基づいてエラーの検出に応答して、エラー検出イベントにタイムスタンプを付加することを含む、請求項12に記載の方法。
  14. 前記プリブート環境において前記デバッグ回路の前記第1の部分を有効にすることと、前記プリブート環境において前記デバッグ回路の前記第2の部分を無効にすることとを、含む請求項12に記載の方法。
  15. 前記ファームウェアトレース情報を処理することが、前記ファームウェアトレース情報のフィルタリング、パケット化、及び圧縮のうちの1つ以上を含む、請求項12に記載の方法。
  16. 請求項12乃至15のいずれか1項に記載の方法を実行する手段を備えた装置。
  17. 実行されたときに、請求項12乃至15のいずれか1項に記載の方法を実行する機械読取可能命令を含む機械読取可能記憶媒体。
  18. 命令を実行する少なくとも1つのコアであって、前記少なくとも1つのコアは、前記少なくとも1つのコアの動作に関する第1の機能デバッグ信号を提供する第1のデバッグロジックを含み、
    非コア動作を実行する少なくとも1つのコアに接続されたアンコアロジックであって、前記アンコアロジックは、前記アンコアロジックの動作に関する第2の機能デバッグ信号を提供する第2のデバッグロジックを含み、
    前記少なくとも1つのコア及び前記アンコアロジックに接続され、前記第1及び第2の機能デバッグ信号を受信するセントラルデバッグユニットであって、前記セントラルデバッグユニットは、少なくとも1つのファームウェアソース及び少なくとも1つのソフトウェアソースからデバッグ情報を受信し、圧縮されたデバッグ情報を出力し、
    前記圧縮されたデバッグ情報を受信し、前記圧縮されたデバッグ情報にタイムスタンプを付加する、トレースマージユニットと、
    前記タイムスタンプ付き圧縮されたデバッグ情報を複数の出力パスの1つに出力する出力ユニットであって、前記1つの出力パスは、テストインタフェースを介して前記SoCに提供される構成に従って選択される、を備えたシステムオンチップ(SoC)。
  19. 前記複数の出力パスが、
    汎用入力/出力ピンのセットと、
    マイクロセキュアデジタルピンのセットと、
    メモリ相互接続のセットと、
    少なくとも1つのシリアルピンと、
    のうちの1つ以上を含む、請求項18に記載のSoC。
  20. 前記SoCが、前記SoCを含むプラットフォームがオンのとき電源オンのままである第1の電力領域及び前記プラットフォームが低電力状態にあるとき電源オフである第2の電力領域を含み、前記セントラルデバッグユニットは、前記第1の電力領域を含まれる第1の部分及び前記第2の電力領域に含まれる第2の部分を含む、請求項18に記載のSoC。
  21. 前記SoCを含むプラットフォームのユーザ動作の間、前記セントラルデバッグユニット、前記トレースマージユニット、及び前記出力ユニットを無効にするように構成されるヒューズロジックを備え、前記ヒューズロジックは、前記プラットフォームのデバッグ動作の間、前記セントラルデバッグユニット、前記トレースマージユニット、及び前記出力ユニットの少なくとも一部を有効にするために上書きされるように構成される、請求項18に記載のSoC。
  22. 前記セントラルデバッグユニットは、
    デバッグ動作をトリガするトリガ手段と、
    前記第1の機能デバッグ信号をフィルタリングするフィルタ手段と、
    前記フィルタされた第1の機能デバッグ信号をパケット化するパケット化手段と、
    前記パケット化フィルタ済み第1の機能デバッグ信号を圧縮する圧縮手段と、
    のうちの少なくとも1つを含む、請求項18に記載のSoC。
  23. 前記タイムスタンプ付き圧縮デバッグ情報を受信し、前記タイムスタンプ付き圧縮デバッグ情報を並列化するパラレルトレースインタフェースをさらに備える、請求項18に記載のSoC。
  24. 前記並列化タイムスタンプ付き圧縮デバッグ情報を直列化し、前記直列化タイムスタンプ付き圧縮デバッグ情報を直列出力パスを経由して出力する、手段をさらに備える、請求項23に記載のSoC。
  25. 前記手段は、前記直列出力パスを経由して前記トレースマージユニットから前記タイムスタンプ付き圧縮デバッグ情報を出力する、請求項24に記載のSoC。
JP2017513735A 2014-09-12 2015-08-13 システムオンチップ(SoC)及びシステムのための低電力デバッグアーキテクチャ Active JP6490803B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/484,427 US9753836B2 (en) 2014-09-12 2014-09-12 Low power debug architecture for system-on-chips (SoCs) and systems
US14/484,427 2014-09-12
PCT/US2015/044958 WO2016039924A1 (en) 2014-09-12 2015-08-13 LOW POWER DEBUG ARCHITECTURE FOR SYSTEM-ON-CHIPS (SOCs) AND SYSTEMS

Publications (2)

Publication Number Publication Date
JP2017530464A true JP2017530464A (ja) 2017-10-12
JP6490803B2 JP6490803B2 (ja) 2019-03-27

Family

ID=55454856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017513735A Active JP6490803B2 (ja) 2014-09-12 2015-08-13 システムオンチップ(SoC)及びシステムのための低電力デバッグアーキテクチャ

Country Status (7)

Country Link
US (1) US9753836B2 (ja)
EP (1) EP3191965A4 (ja)
JP (1) JP6490803B2 (ja)
KR (1) KR102191815B1 (ja)
CN (2) CN111522745A (ja)
BR (1) BR112017002547A2 (ja)
WO (1) WO2016039924A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200082422A (ko) * 2018-12-28 2020-07-08 성균관대학교산학협력단 보안성을 고려한 경량 크래시 리포트 기반 디버깅 방법
JP7506576B2 (ja) 2020-10-14 2024-06-26 シャープ株式会社 半導体装置

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10091079B2 (en) * 2015-05-06 2018-10-02 Marvell World Trade Ltd. Apparatus and method for remotely testing memory-mapped devices of a system-on-chip via an ethernet interface
US9697013B2 (en) * 2015-06-10 2017-07-04 Dell Products, L.P. Systems and methods for providing technical support and exporting diagnostic data
GB2541216B (en) * 2015-08-12 2021-03-17 Ultrasoc Technologies Ltd Reconfiguring debug circuitry
US10054636B2 (en) * 2015-10-23 2018-08-21 Intel IP Corporation Device, system and method to support communication of test, debug or trace information with an external input/output interface
US9832006B1 (en) 2016-05-24 2017-11-28 Intel Corporation Method, apparatus and system for deskewing parallel interface links
US10372661B1 (en) * 2017-02-28 2019-08-06 American Megatrends International, Llc Firmware debug trace capture using serial peripheral interface
US10824530B2 (en) * 2017-06-21 2020-11-03 Intel Corporation System, apparatus and method for non-intrusive platform telemetry reporting using an all-in-one connector
CN107273256A (zh) * 2017-06-22 2017-10-20 湖南国科微电子股份有限公司 一种Soc芯片的调试方法及系统
CN107704346B (zh) * 2017-08-08 2021-07-27 湖南国科微电子股份有限公司 Soc芯片调试方法及调试系统
US10606677B2 (en) * 2017-08-28 2020-03-31 American Megatrends International, Llc Method of retrieving debugging data in UEFI and computer system thereof
US10860332B2 (en) 2017-09-25 2020-12-08 Qualcomm Incorporated Multicore framework for use in pre-boot environment of a system-on-chip
US10962593B2 (en) 2018-04-03 2021-03-30 Samsung Electronics Co., Ltd. System on chip and operating method thereof
US10627881B2 (en) * 2018-04-12 2020-04-21 Qualcomm Incorporated Back power protection (BPP) in a system on a chip (SOC) with critical signaling scheme
JP7242878B2 (ja) 2019-02-19 2023-03-20 シーメンス インダストリー ソフトウェア インコーポレイテッド 無線機器検査装置
US10901871B2 (en) 2019-03-05 2021-01-26 Intel Corporation System, apparatus and method for dynamic multi-source tracing in a system
CN110149490A (zh) * 2019-06-14 2019-08-20 北京滴普科技有限公司 一种视频信号图像处理方法及系统
US20200285559A1 (en) * 2020-05-20 2020-09-10 Intel Corporation System, apparatus and method for dynamic tracing in a system having one or more virtualization environments
CN111949431B (zh) * 2020-08-27 2022-07-05 英业达科技有限公司 片上系统产品的致命错误提供方法与致命错误识别方法
CN112052132B (zh) * 2020-09-11 2022-09-06 厦门紫光展锐科技有限公司 通过sdio接口调试外挂芯片的方法、装置、设备和介质
US11544210B1 (en) 2021-07-15 2023-01-03 Beijing Tenafe Electronic Technology Co., Ltd. Collection of runtime information for debug and analysis
US11620176B2 (en) * 2021-07-15 2023-04-04 Beijing Tenafe Electronic Technology Co., Ltd. Visualization system for debug or performance analysis of SOC systems
US11630502B2 (en) * 2021-07-30 2023-04-18 Advanced Micro Devices, Inc. Hierarchical state save and restore for device with varying power states
US11829312B2 (en) * 2021-12-31 2023-11-28 Snap Inc. Debug access of eyewear having multiple socs
CN115221070B (zh) * 2022-08-02 2023-06-20 无锡众星微系统技术有限公司 基于NVMe盘的片上系统诊断方法
CN116502576B (zh) * 2023-06-26 2023-10-20 北京象帝先计算技术有限公司 指令流跟踪验证方法及调试系统
CN117149694B (zh) * 2023-10-24 2024-02-23 南京芯驰半导体科技有限公司 基于多核异构的接口控制方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594782B1 (en) * 1998-12-28 2003-07-15 Fujitsu Limited Information processing apparatus
US20100281309A1 (en) * 2009-04-30 2010-11-04 Gilbert Laurenti Power Management Events Profiling
US20110239196A1 (en) * 2010-03-29 2011-09-29 Laurent Ichard Micro-Task Pipeline Visualization
US20140052930A1 (en) * 2012-08-20 2014-02-20 Manu Gulati Efficient trace capture buffer management

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7260745B1 (en) 1999-10-01 2007-08-21 Stmicroelectronics Ltd. Detection of information on an interconnect
US6560712B1 (en) 1999-11-16 2003-05-06 Motorola, Inc. Bus arbitration in low power system
US7113902B2 (en) * 2000-03-02 2006-09-26 Texas Instruments Incorporated Data processing condition detector with table lookup
US7003698B2 (en) 2002-06-29 2006-02-21 Intel Corporation Method and apparatus for transport of debug events between computer system components
JP2005301640A (ja) * 2004-04-12 2005-10-27 Hitachi Ltd スイッチ装置、記憶制御システム及びトレースデータ取得方法
US7610482B1 (en) * 2006-06-28 2009-10-27 Qlogic, Corporation Method and system for managing boot trace information in host bus adapters
US8990633B2 (en) 2009-04-21 2015-03-24 Freescale Semiconductor, Inc. Tracing support for interconnect fabric
EP2362297B1 (en) 2010-02-25 2014-05-14 Telefonaktiebolaget L M Ericsson (publ) Technique for selecting a frequency of operation in a processor system
US8826079B2 (en) * 2011-12-16 2014-09-02 Arm Limited Data processing apparatus and method for identifying debug events
US8924796B2 (en) * 2012-03-22 2014-12-30 Intel Mobile Communications GmbH System and method for processing trace information
GB2500441B (en) * 2012-07-09 2014-03-05 Ultrasoc Technologies Ltd Data prioritisation in a debug architecture
GB2500074B (en) * 2012-07-09 2014-08-20 Ultrasoc Technologies Ltd Debug architecture
US10146657B2 (en) * 2014-03-26 2018-12-04 Intel Corporation Initialization trace of a computing device
US9459985B2 (en) * 2014-03-28 2016-10-04 Intel Corporation Bios tracing using a hardware probe

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594782B1 (en) * 1998-12-28 2003-07-15 Fujitsu Limited Information processing apparatus
US20100281309A1 (en) * 2009-04-30 2010-11-04 Gilbert Laurenti Power Management Events Profiling
US20110239196A1 (en) * 2010-03-29 2011-09-29 Laurent Ichard Micro-Task Pipeline Visualization
US20140052930A1 (en) * 2012-08-20 2014-02-20 Manu Gulati Efficient trace capture buffer management

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200082422A (ko) * 2018-12-28 2020-07-08 성균관대학교산학협력단 보안성을 고려한 경량 크래시 리포트 기반 디버깅 방법
KR102165747B1 (ko) 2018-12-28 2020-10-14 성균관대학교산학협력단 보안성을 고려한 경량 크래시 리포트 기반 디버깅 방법
JP7506576B2 (ja) 2020-10-14 2024-06-26 シャープ株式会社 半導体装置

Also Published As

Publication number Publication date
EP3191965A4 (en) 2019-01-09
EP3191965A1 (en) 2017-07-19
US20160077905A1 (en) 2016-03-17
WO2016039924A1 (en) 2016-03-17
CN106575249A (zh) 2017-04-19
BR112017002547A2 (pt) 2017-12-05
KR102191815B1 (ko) 2020-12-16
CN106575249B (zh) 2020-05-26
CN111522745A (zh) 2020-08-11
US9753836B2 (en) 2017-09-05
KR20170028995A (ko) 2017-03-14
JP6490803B2 (ja) 2019-03-27

Similar Documents

Publication Publication Date Title
JP6490803B2 (ja) システムオンチップ(SoC)及びシステムのための低電力デバッグアーキテクチャ
EP3272072B1 (en) Method, apparatus and system for dynamic bandwidth management in systems
EP3234789B1 (en) Apparatus and system for integrating devices in a root complex
US10824530B2 (en) System, apparatus and method for non-intrusive platform telemetry reporting using an all-in-one connector
US9639447B2 (en) Trace data export to remote memory using remotely generated reads
US9684578B2 (en) Embedded universal serial bus (USB) debug (EUD) for multi-interfaced debugging in electronic systems
US11204857B2 (en) Integrated circuit and application processor
US9684583B2 (en) Trace data export to remote memory using memory mapped write transactions
US20170286254A1 (en) Method and apparatus for using target or unit under test (uut) as debugger
US20110239196A1 (en) Micro-Task Pipeline Visualization
US9372768B2 (en) Debug interface
US9935637B2 (en) Systems and methods for FPGA development and operation
US11257560B2 (en) Test architecture for die to die interconnect for three dimensional integrated circuits
WO2016195903A1 (en) Handling a partition reset in a multi-root system
EP3304328A1 (en) Providing multiple roots in a semiconductor device
KR101835494B1 (ko) 프로세서의 버퍼의 자율 제어

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180803

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: 20190129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190227

R150 Certificate of patent or registration of utility model

Ref document number: 6490803

Country of ref document: JP

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250