JP2010500807A - 電子装置及び通信制御方法 - Google Patents
電子装置及び通信制御方法 Download PDFInfo
- Publication number
- JP2010500807A JP2010500807A JP2009523416A JP2009523416A JP2010500807A JP 2010500807 A JP2010500807 A JP 2010500807A JP 2009523416 A JP2009523416 A JP 2009523416A JP 2009523416 A JP2009523416 A JP 2009523416A JP 2010500807 A JP2010500807 A JP 2010500807A
- Authority
- JP
- Japan
- Prior art keywords
- interconnect
- monitor
- controller
- electronic device
- event
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Communication Control (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
複数の処理ユニットと、前記処理ユニットの間の通信を可能にするよう前記処理ユニットを接続するインターコネクトと、前記処理ユニットの間の通信においてイベントを検出する少なくとも1つのイベントモニタとを有する電子装置が提供される。電子装置はさらに、少なくとも1つのイベントモニタにより検出された1以上のイベントに従って前記インターコネクトを制御する第1コントローラユニットを有する。
Description
本発明は、電子装置及び電子装置における通信制御方法に関する。
近年、電子回路又は集積回路(IC)は、その機能、プログラマブルコンポーネントの個数及びそれらの通信に関して複雑さを増してきている。このため、ソフトウェア及びハードウェアの(共同)設計の複雑さもまた増大し、効率的な検証、デバッグ及び最適化が要求される。
ASIC、ASSP、FPGA、PLD、CPLD及び構造化されたASIC装置を含む最新のICの設計及び製造では、ユーザインタラクション又はイベント(シーケンス)に応答したデジタルプログラマブルコンポーネントの制御が可能とされ、(ソフトウェア及びハードウェア)設計検証及びシリコンデバッグにおいて非常に利用される。www.arm.com/products/solutions/CoreSight.htmlでは、1以上のプログラマブルコンポーネントを処理可能な制御システムが示されている。ソフトウェアからハードウェアの定義及び実現からのプログラマブルコンポーネントの一貫したレベルの制御を実行することによって、ソフトウェア及びハードウェアのデバッグ及び最適化についてのシリコン(パフォーマンス)解析の関係を可能にする高いシステム透過性が実現される。同様の制御システムが、設計ボトルネック/バグが特定及び解決されると典型的には取り除かれるが、I/Oインタフェースなどの専用の(部分的又は非プログラマブル/コンフィギュラブル)アクセラレータなどのハードワイヤコンポーネントの設計により頻繁に実現される。実際のシリコンのプロトタイプ/プロダクトにおけるハードワイヤコンポーネントの制御システムの実現は、何れの切断点をどこに設けるべきかICの製造前に確定される必要があるため、より困難である。さらに、これらのシステムはしばしば、実行時のデータに依存する動作を示すため、キーオンチップイベントが発生する時点を予め正確に決定することを不可能でないが極めて困難にする。
本発明の課題は、電子装置内の通信に対して向上した制御を備える電子装置を提供することである。
本発明は、請求項1記載の電子装置と、請求項16記載の電子装置における通信制御方法とを提供する。従属項は、効果的な実施例を規定する。
このため、複数の処理ユニットと、前記処理ユニットの間の通信を可能にするよう前記処理ユニットを接続するインターコネクトと、前記処理ユニットの間の通信においてイベントを検出する少なくとも1つのイベントモニタとを有する電子装置が提供される。電子装置はさらに、少なくとも1つのイベントモニタにより検出された1以上のイベントに従って前記インターコネクトを制御する第1コントローラユニットを有する。
本発明の一特徴によると、前記コントローラユニットは、前記処理ユニットの間の通信を制御するインターコネクトコントローラ及び/又は前記インターコネクトを制御するためのモニタコントローラを有する。
本発明のさらなる特徴によると、前記モニタコントローラは、前記イベントモニタにおいて、前記処理ユニットにおいて及び/又は前記インターコネクトコントローラにおいて設定を更新するよう構成される。
本発明のさらなる特徴によると、イベントモニタは、前記処理ユニット、前記インターコネクト及びI/Oインタフェース又はモニタインタフェースの少なくとも1つに関連付けされる。
本発明のさらなる特徴によると、前記イベントモニタ、前記モニタコントローラ、前記インターコネクトコントローラ及び/又は前記インターコネクトは、トランザクションに対して動作する。
本発明のさらなる特徴によると、前記イベントは、所定の及び/又はプログラマブルイベントの所定の又はプログラマブルシーケンスを含む。
本発明の一特徴によると、前記制御ユニットは、所定の又はプログラマブル処理及び/又はアクションの所定の又はプログラマブルシーケンスを実行するよう前記インターコネクトを制御するよう構成される。
本発明の一特徴によると、所定の又はプログラマブル処理は、制御指向及び/又はデータ指向処理を構成するかもしれない。前記制御指向処理は、停止、シングルステップ、マルチステップ、継続及びリセット処理を含む。前記データ指向処理は、前記処理ユニットの状態及び/又はインターコネクト状態のダウンロード及びアップロードを含む。
本発明の一特徴によると、前記制御指向処理の単位は、クロックサイクルレベル、ハンドシェイク、リクエスト/レスポンス、トランザクション又はトランザクショングループ単位とすることができる。
本発明はまた、複数の処理ユニットと、前記処理ユニットの間の通信を可能にするよう前記処理ユニットを接続するインターコネクトとを有する電子装置及び/又はシステム・オン・チップにおける通信制御方法に関する。前記処理ユニットの間の通信においてイベントが検出される。前記少なくとも1つのイベントモニタにより検出されるイベントの1つに従って前記インターコネクトが制御される。
本発明はまた、複数の処理ユニットと、前記処理ユニットの間の通信を可能にするよう前記処理ユニットを接続するインターコネクトと、前記処理ユニットの間の通信においてイベントを検出する少なくとも1つのイベントモニタとを有するシステム・オン・チップに関する。当該システム・オン・チップはさらに、少なくとも1つのイベントモニタにより検出された1以上のイベントに従って前記インターコネクトを制御する第1コントローラユニットを有する。
本発明は、ハードウェアとソフトウェアの共同設計の収束を利用するというアイデアに関する。ハードウェア設計の最上位の抽象化レベルでは、電子装置の各コンポーネントは、トランザクションと呼ばれるハイレベルデータ表現、すなわち、トランザクションレベルを介し互いに通信している。ソフトウェア設計の最下位の抽象化レベルでは、すなわち、ソフトウェアがシステムのプログラマブルコンポーネントにマップされているレベルでは、アプリケーションソフトウェアを解析、検証及び調整するため、再びトランザクションレベルモデルが利用される。これは、ソフトウェアとハードウェアのエンジニアがシステムの実際の動作の同一の見解を共有することができるように、ソフトウェア設計者とハードウェア設計者の双方に共通の基準をトランザクションレベルにし、これにより、残りのハードウェア及びソフトウェアエラー又は非効率性のローカリゼーションを向上させる。さらにこれは、製品化に要する時間と、設計者たちに適切にフィードバックされるとき、ツールとフローの大きな低減と、製造プロセスの向上をもたらす。
トランザクションの具体例として、リード(ロード)、ロードリンクト、ライト(ストア)、限定ライト、タグ付け又は許可されたライト、フラッシュ、テスト・アンド・セット、セマフォ処理などがあげられる。トランザクションの具体例は、VPB、APB、AHB、AXI、VCI、OCP、DTL、STBus、MIPI、PCIExpress、PCIなどのオンチップ及びボードレベル通信プロトコルに見つけることができる。これらのトランザクションは、リクエスト及び任意的なレスポンス段階を含む。ここでのトランザクションの定義は、メッセージパッシングプロトコルを含む。これらのプロトコルは、通常はリクエスト段階しか利用しない。一例となるトランザクションは、送信(プット、ライト)と受信(ゲット、リード)である。ここでのトランザクションの定義はさらに、中断、(電力管理、デバッグ、テスト)コマンドと、いわゆるサイドバンド信号などを含む。
本発明の効果及び実施例は、図面を参照してより詳細に説明される。
図1は、本発明によるシステム・オン・チップの実施例のアーキテクチャのブロック図を示す。システム・オン・チップは、インターコネクトとして供するIP通信ユニットIPCUにより互いに通信する複数のIP(Intellectual Property)ブロックIPを有する。通信ユニットIPCUは、単一の同質的なインターコネクト(ルータやバス及びブリッジなど)として実現されるか、又は複数の非同質的なインターコネクト(物理的には、スイッチ、バス、ルータ、ブリッジ、高速又は低速など、論理的には、データ、制御中断、デバッグ及び電力管理インターコネクトなど)を有するかもしれない。IP通信コントローラIPCCは、IPブロックIPの間のトラフィックをIP通信ユニットIPCUを介し制御する。IP通信コントローラIPCCは、中央コントローラ又は分散コントローラとして実現可能である。本発明によるシステム・オン・チップは、単一のダイ又はチップ上に実装されるか、又はFPGA及びエミュレータを含む複数のダイ又はチップに拡張されるかもしれない。さらに、通信ユニット(インターコネクト)は、プロトタイプ化又は他の目的のため、ダイ間、チップ間、ボード間及びボード・ツー・(パーソナル)コンピュータインターコネクトを含むかもしれない。プロトタイプ化の場合、IPブロックのいくつかはシミュレート又はエミュレートされ、又はFPGA、エミュレータ又は(パーソナル)コンピュータ上に実装されるかもしれない。
IPブロックIPは、処理ユニットとして実現され、プロセッサ、コプロセッサ、DMAコントローラ、メモリ、メモリコントローラなどを構成するかもしれない。
システム・オン・チップはさらに、複数のイベントモニタEMと、少なくとも1つのモニタコントローラMCとを有する。イベントモニタEMは、システム・オン・チップのIPブロック間の通信(データトラフィック、制御トラフィックなど)においてイベントを検出するのに供する。モニタコントローラMCは、イベントモニタEMによるイベントの検出に従って、IP通信ユニットIPCUを制御するよう構成される。イベントは、例えば、より高いレベルのトランザクション(リード/ライトインタラプト)又は同期イベント、システムコンフィギュレーションイベントなどにおけるクロックサイクル又はクロックサイクルセット毎の(低)ビットレベ、ワードなど各種抽象化レベルで規定されるかもしれない。イベントモニタEMは、所定の及び/又はプログラマブルなイベントが発生したか、及び/又はそれらが所定の及び/又はプログラマブルな順序で発生したか、それらがIPブロックIPからIP通信ユニットIPCUに又はIP通信ユニットIPCU(インターコネクト)内を通過しているか検出するのに供する。さらに、イベントモニタEMは、ネットワーク・オン・チップバッファ充填若しくはアンダーフロー若しくはオーバフロー、パケットの欠落、特定の値を有するローカル若しくはエンド・ツー・エンドフロー制御、特定の値を有するパケット、リクエスト若しくはレスポンスメッセージのヘッダ若しくはペイロードなど、通信ユニットIPCU(インターコネクトとして)に関するイベントを検出するかもしれない。特定の値に加えて、イベントモニタは、値の範囲、特定の値(又はそれらの範囲)の出現頻度をモニタし、複数の観察若しくはイベントを1つの複合的又は合成されたイベントに合成すると共に、上記可能性のすべての組み合わせであるかもしれない。好ましくは、イベントモニタEMは、インターコネクト及びそれのインタフェースとしてIP通信ユニットIPCU内の戦略的位置に配置される。このため、イベントモニタEMは、バスシステムのバスワイヤ、ルータ若しくはネットワークインタフェース又はネットワーク内のリンクに接続可能である。インタフェースは、IPブロックを備えたインタフェース、I/OブロックDIO、IP通信コントローラIPCC、内部若しくは外部メモリ及び/若しくはそれらのコントローラ/インタフェース並びに/又は外部インタフェースを含むかもしれない。
さらに、モニタ通信ユニットMCU及びイベントモニタEMのための専用の通信又はモニタインターコネクトを構成するモニタ通信ユニットMCU又はモニタインターコネクトが設けられる。あるいは、IP通信ユニットIPCUは、この目的のため利用可能である。
IP通信ユニットIPCUは、モニタコントローラMCが、例えば、デバッグモード、IP通信トラフィックの中断、オン・チップ若しくはオフ・チップメモリ上のIPブロック及び/又はIP通信の各状態を開始するため、IP通信ユニットIPCUと通信する。モニタコントローラMCは、IP通信ユニットIPCUによりIP通信ユニットIPCUと共に、イベントモニタEM及びIPブロックIPに、検出対象となるイベントと対応するレスポンスに関する詳細をアップロードする。これは、例えば、メモリマップされたコンポーネントとしてイベントモニタEMを定義することによって、又はそれらをモニタリング/デバッグ管理プロトコル(電力管理プロトコルなど)によりアドレッシングすることによって実行可能である。さらに又はあるいは、専用のモニタ通信ユニットMCUが利用されるかもしれない。
モニタコントローラMCは、イベントモニタEMを介し、IP通信ユニットを介し又はJTAGやTANなどの専用のテストバスを介しプログラム可能である。モニタコントローラは、イベントコントローラMCをメモリマップされたコンポーネントとして規定することによって、又はそれらをモニタリング/デバッグ管理プロトコル(電力管理プロトコルなど)によりアドレッシングすることによって、アドレッシング及びプログラム可能である。
IPブロックIPに接続されるイベントモニタEMIPはまた、それらがモニタコントローラMCを介し制御可能となるように、モニタ通信ユニットMCUに接続されてもよい。IPブロックのためのこれらイベントモニタEMIPは、IPブロックの外部に構成されてもよく、又はIPブロックの内部に実現されてもよい。さらに、これらのユニットは、何れか既存のモニタ手段を利用してもよい。このため、IP通信ユニットの観察と制御は、IPブロックIPに拡張可能であり、電子システムの設計、検証及びデバッグに関する機会を拡大する。
図2a及び2bは、ネットワーク及び複数のバスとしての通信ユニットの各コンポーネントのブロック図を示す。図2aでは、通信ユニットIPCUは、ネットワークベースインターコネクトとして実現される。ネットワークは、複数のネットワークインタフェースNI(IPブロックが接続される)、複数のルータR及び複数のチャネルを有する。図2bでは、通信ユニットはバスベースインターコネクトとして実現される。さらに、バスは複数のバスアダプタBA、複数のバスB、ブリッジBRと共に、さらなるバスアダプタBA(IPブロックが接続される)を有する。
図3は、本発明の実施例によるトランザクションベース及びサイクルベーストラフィックの基本図を示す。トランザクションベースのビューはTBによりマークされ、サイクルベースのビューはCBによりマークされる。IP通信ユニットがネットワークベースインターコネクトとして実現される場合、データトラフィックは、典型的にはパケットに分割される。IP通信ユニットがバスベースインターコネクトとして実現される場合、データトラフィックはクロックサイクル毎にビット又はワードに分割される。しかしながら、両方のケースでは、データトラフィックは時間コヒーレントなトランザクションに再構成される必要がある。トランザクションコヒーレントなビューは、関連するすべての観察点が明確な状態にあるシステムの状態により定義される(リクエストが送信されたが、レスポンスが受信されない、リクエストが送信されたが、レスポンスが保留となっているなど)。これが成り立つ時点は存在しないかもしれず、図3によると、時間/トランザクションコヒーレントビューは、異なる時点におけるローカルビューをグローバルなコヒーレントビューに組み合わせる。複数のトランザクションが同時にアクティブとなり、分割又はパイプライン化される可能性があるため、ネットワークのパケット又はバスのビット/ワードの時間コヒーレントビューへの再構成は複雑なものとなりうる。さらに、トランザクションは、互いに相互関連しているかもしれない。従って、ビット/ワード又はパケットのトランザクションへの再構成が求められる場合、ローカルでオンチップな再構成が、オフチップ再構成より望ましいかもしれない。
図4a〜4dは、本発明の実施例による通信制御を介したシステム状態の進行を示す。特に、図3の図の異なるシナリオが示される。図4aでは、データトラフィックのトランザクションレベルの停止が示される。図4bは、インタフェースINにおける単一ステップの停止を示す。図4cは、インタフェースI2における3ステップの停止を示す。図4dは、インタフェースI1における2ステップの停止を示す。他の好ましい停止方法は、すべてのインタフェースにおいてNステップである。このため、イベント又はイベントシーケンスが発生した場合、IP通信ユニットを介した通信を停止することができる。
さらなる実施例によると、システムデバッグ処理が実現される場合、IP通信ユニットIPCUを介したデータ通信は、所定のイベントがイベントモニタEMにより検出されると中断され、それはトランザクション切断点などに対応するかもしれない。従って、IPブロックIP、IP通信ユニットIPCU及び/又はイベントモニタEMの各トランザクション状態が、さらなる解析のためバックグランドメモリにダンプ又は格納されるかもしれない。特に、バックグランドメモリにオンチップ又はオフチップにダンプ又は格納されるべきトランザクション状態は、例えば、モニタコントローラなどにより選択可能である。ここで、実際のアクティブなプロセス又はトランザクションに関するコヒーレントビューが生成され、メモリに格納可能である。さらに、トランザクションダンプは、モニタ通信ユニットMCU及び/又はIP通信ユニットIPCUを介し実行可能である。モニタ通信ユニットMCUは低〜中の帯域幅を有し、IP通信ユニットIPCUは高帯域幅を有するかもしれない。
好ましくは、イベントモニタEM、IPブロックIP及び/又はIP通信ユニットノードは、新たなトランザクション切断点がイベントモニタにロード又は更新され、トランザクションがIPブロックにアップロードできるように構成可能である。さらに、所定のイベントがイベントモニタEMにより検出された場合、IP通信データトラフィックは、図4a〜4dに示されるように、ステップ単位又は選択的に制御可能である。
さらなる実施例によると、システムパフォーマンスのモニタリング及び/又はローカル若しくはグローバル最適化のため、上述したイベントモニタEMは、発生したトランザクションシーケンスをモニタし、これらモニタされたトランザクションシーケンスが予想通りに発生したか、又は所定のトランザクションシーケンスが検出されたか判断する。これらが予想通りに発生しない場合、トランザクションシーケンスはシステムデバッグ中に訂正可能であり、又はシステムのパフォーマンス解析中に最適化可能である。イベントモニタEMによって、特定のトランザクションの発生がまた計数できる。さらに、イベントモニタEMは、通信ユニットの実際のスループットをモニタするかもしれない。従って、イベントモニタEMによって、シリコンによる実際の電子装置又は電子回路が設計要求を満たしているか判断することができる。満たしていない場合、システムパフォーマンスは、例えば、通信の優先順位付けを調整することによって最適化可能である。これは、ネットワーク・オン・チップにおける保証されたスループットの通信とベストエフォートな通信を相互に交換することによって実行可能である。あるいは、ネットワーク・オン・チップ内からネットワーク・オン・チップへのベストエフォートトラフィックの許可は、規制可能である。IP通信ユニットIPCUは、各種優先順位においてトランザクションを書き出すのに利用される。各種優先順位は、ネットワーク又はバス全体を要求する上位の優先順位から、システム動作を中断することなくメモリにダンプされる非介入的なトランザクションなどのための低優先順位まで含むかもしれない。
好ましくは、イベントモニタEMは、トランザクションレベルなどの特定の抽象化レベルに基づきイベントを認識する。さらに、検出されたイベントは、バス、ルータ、ネットワークインタフェースなどの通信コンポーネントの所定の又はプログラマブルなイベントと比較されるかもしれない。さらに、検出されたイベントは、計算コンポーネントの所定の又はプログラマブルなイベントと比較されるべきである。さらに、検出対象となる所定の又はプログラマブルなイベントは、ローカルに格納可能である。検出されると、タイムスタンプが検出されたイベントと関連付け可能である。さらに、イベントの出現回数が、それに係るタイムスタンプと共に検出される。
上記課題を達成するため、モニタコントローラMCは、好ましくは、データトラフィックを停止し(図4a〜4dに示されるように)、データトラフィックを再スタートするため、IP通信コントローラIPCCの動作を制御し、これによりIP通信ユニットIPCUの動作を制御するため、IP通信コントローラIPCCに接続されるかもしれない。データトラフィックのステップ単位の再スタートは、システムの一部又はすべてに関係するかもしれない。これは、例えば、IPブロックIP、IP通信ユニットIPCU及び/又はイベントモニタEMにおいてトランザクションをリフレッシュ及び/又は変更した後に実行可能である。さらに、モニタコントローラMCは、優先順位及び/又は非侵入性の各レベルにおけるIPブロック、IP通信ユニットIPCU及びイベントモニタEMからのトランザクションの読み出しを制御する。
上述されるように、イベントモニタEMとモニタコントローラMCとの間の通信は、専用のモニタ通信ユニットMCU又はIP通信ユニットIPCUを介し実行される。専用のモニタ通信ユニットMCUは、DTL、AHB又はJTAEなどのネットワーク又はバスとして実現可能である。
図5は、第2実施例によるシステム・オン・チップのブロック図を示す。ここで、インターコネクトは、IPブロックIP(IP1〜4)を接続するためのネットワーク・オン・チップNとして実現される。ネットワークインタフェースNIが、IPブロックIPの少なくとも1つに関連付けされる。ネットワーク・オン・チップNはさらに、ネットワークコントローラNCにより制御される複数のルータRを有してもよい。好ましくは、イベントモニタEMは、イベント又はトランザクションを検出するため、IPブロックIPとの間のデータトラフィックを観察するようネットワークインタフェースNIに接続される。ネットワークインタフェースNIに隣接するイベントモニタEMの位置は、ネットワークインタフェースNIが確立されたネットワークパスのアクノリッジメントのリクエストを行うとき効果的である。さらに、IPデータがパケット化され、ネットワークパッケージがネットワークインタフェースNIにおいて分解される。イベントモニタEMがIPブロックに直接接続される図1の実現形態と対照的に、第2実施例によるイベントモニタEMの個数を少なく維持することが可能である。さらに、イベントモニタEMは、イベントの検出のためネットワーク・オン・チップ上の通信トラフィックをモニタするため、ネットワーク・オン・チップにおいてルータRに接続されてもよい。さらに、イベントモニタEMはまた、モニタコントローラMCに接続されてもよい。モニタコントローラMCは、必要に応じてネットワーク・オン・チップ上のデータトラフィックを停止するため、IP通信コントローラIPCCに対応するネットワークコントローラNCを制御するよう構成される。本実施例では、モニタ通信ユニットとIP通信ユニットは、ネットワーク・オン・チップとして実装される。図5によると、インターコネクトNは、イベントモニタEMとモニタコントローラMCとを有する。しかしながら、本発明によるインターコネクトNの既知のインターコネクトNに関する実際の貢献は、イベントモニタEMとモニタコントローラMCが図5の破線ボックスの外側に配置される構成により表されるであろう。
図示された例では、すべてのトランザクションは1つのパケットに収容されるかもしれない。すべてのパケットは、1つのパス又は接続を介し送信可能である。あるいは又はさらに、トランザクションは複数のパケットに分割又は伸張されるかもしれない。さらに、パケットはまた、異なるパスを介し移動するかもしれない。図示された例によると、プロセッサIP1は、データがプロセッサIP3によりリフレッシュされたとき、メモリIP2からデータを読み取る必要がある。プロセッサIP3によるリフレッシュは、ネットワークインタフェースNI2に接続されるイベントモニタEM2によりモニタ可能である。イベントモニタEM2は、プロセッサIP3がメモリIP2のデータをリフレッシュする時点を決定するよう構成されてもよい。従って、イベントモニタEM2が、プロセッサIP3がメモリIP2のデータをリフレッシュしたことを検出した場合、当該情報は、プロセッサIP3による1つのライトアクションの後にプロセッサIP1の2回のリードアクションが続く場合、すべてのネットワーク通信を停止するモニタコントローラMCに転送される。ネットワーク通信が停止された場合、選択されたネットワークインタフェース及びルータの各状態は、プロセッサIP3がすでに新たなデータを送信したか、又はデータがネットワーク内に格納されているかモニタするのに必要とされ、さらなる解析のためダンプすることが可能である。
ネットワークインタフェースとルータとの決定された状態の解析は、I/Oユニットとして供するIPブロックIP4へのネットワークパスをセットアップすることによって解析されるかもしれない。I/OユニットIP4へのネットワークパスは、オフチップ解析のため決定された状態を転送するのに供する。状態のビットレベルの転送の代わりにトランザクションレベルでの状態ダンプが、オフチップ解析に転送されるデータ量を減少されることに留意すべきである。
プロセッサIP3内でデータ生成問題が発生した場合、適切な値がメモリIP2にアップロード可能であり、システムの動作は連続的又はステップ単位モードにより継続されるかもしれない。システムが停止した場合、ユーザは、プロセッサIP3が新たなデータをすでに送信したか、又はデータ(パケット)がネットワークの何れかにストールされたかモニタするため、選択されたネットワークインタフェースNI及びルータ(にあるパケット)の各状態を解析することが可能である。ハードウェア設計と共にソフトウェアでは、これらの状態は設計データベースから解析可能であるが、実際のシリコンの解析のため、ユーザは、解析のため状態をオフチップにダンプするため、(IOブロック)IP4などへのネットワークパスをセットアップする必要がある。現在のビットレベルの代わりに、トランザクションレベルによるシリコン状態ダンプは、シフトアウトされるデータ量を減少させ、ソフトウェア及びハードウェア設計データベースとの比較を容易にする。
本発明が図面及び上記説明により詳細に図示及び説明されたが、このような図示及び説明は、例示的なものであり限定的なものとみなされるべきでなく、本発明は開示された実施例に限定されるものでない。
開示された実施例の他の変形が、図面、開示及び添付された請求項を参照することによって、請求された発明を実践する当業者により理解及び実行可能である。
請求項において、“有する”という用語は他の要素又はステップを排除するものでなく、“ある”という不定冠詞は複数を排除するものでない。単一の又は他のユニットが、請求項に記載されたいくつかのアイテムの機能を実現するかもしれない。ある手段が互いに異なる従属項に記載されるという事実は、これらの手段の組み合わせが効果的に利用可能でないこと示すものでない。
コンピュータプログラムが、他のハードウェアと一緒に又は一部として供給される光記憶媒体又はソリッドステート媒体などの適切な媒体に格納/配布されるかもしれないが、インターネット、他の有線若しくは無線通信システムなどを介し他の形式により配布されてもよい。
請求項の参照符号は、その範囲を限定するものとして解釈されるべきでない。
Claims (16)
- 複数の処理ユニットと、
前記処理ユニットの間の通信を可能にするよう前記処理ユニットを接続するインターコネクトと、
前記処理ユニットの間の通信においてイベントを検出する少なくとも1つのイベントモニタと、
少なくとも1つのイベントモニタにより検出された1以上のイベントに従って前記インターコネクトを制御する第1コントローラユニットと、
を有する電子装置。 - 前記コントローラユニットは、前記インターコネクトを介し前記処理ユニットの間の通信を制御するインターコネクトコントローラとモニタコントローラとを有する、請求項1記載の電子装置。
- 前記モニタコントローラは、前記イベントモニタにおいて、前記処理ユニットにおいて及び/又は前記インターコネクトコントローラ若しくは前記インターコネクトにおいて直接的に設定を更新するよう構成される、請求項2記載の電子装置。
- イベントモニタは、前記処理ユニット、前記インターコネクト及びI/Oインタフェース又はモニタインタフェースの少なくとも1つに関連付けされる、請求項1記載の電子装置。
- 前記イベントモニタ、前記モニタコントローラ、前記インターコネクトコントローラ及び/又は前記インターコネクトは、トランザクションに対して動作する、請求項3又は4記載の電子装置。
- 前記イベントは、所定の及び/又はプログラマブルイベントの所定の又はプログラマブルシーケンスを含む、請求項1記載の電子装置。
- 前記制御ユニットは、所定の又はプログラマブル処理及び/又はアクションの所定の又はプログラマブルシーケンスを実行するよう前記インターコネクトを制御するよう構成される、請求項1記載の電子装置。
- 所定の又はプログラマブル処理は、制御指向及び/又はデータ指向処理とすることができ、
前記制御指向処理は、停止、シングルステップ、マルチステップ、継続及びリセット処理を含み、
前記データ指向処理は、前記処理ユニットの状態及び/又はインターコネクト状態の入出力を含む、請求項7記載の電子装置。 - 前記制御指向処理の単位は、クロックサイクルレベル、ハンドシェイク、リクエスト/レスポンス、トランザクション又はトランザクショングループ単位とすることができる、請求項6乃至8何れか一項記載の電子装置。
- 前記モニタコントローラは、前記処理ユニット、前記インターコネクト、前記イベントモニタ及び/又は前記第1コントローラユニットの状態を入出力するよう構成される、請求項6記載の電子装置。
- 前記インターコネクトは、ネットワークベースインターコネクト又はバスベースインターコネクトを構成する、請求項1記載の電子装置。
- 前記イベントモニタ及び前記コントローラユニットを接続するモニタ通信ユニットをさらに有する、請求項1乃至11何れか一項記載の電子装置。
- 前記第1コントローラユニットは、インターコネクトコントローラ及び/又はモニタコントローラを有する、請求項1乃至12何れか一項記載の電子装置。
- 前記複数の処理ユニットの少なくとも1つは、オンチップメモリ、オフチップメモリ又はメモリコントローラを有する、請求項1乃至13何れか一項記載の電子装置。
- 複数の処理ユニットと、
前記処理ユニットの間の通信を可能にするよう前記処理ユニットを接続するインターコネクトと、
前記処理ユニットの間の通信においてイベントを検出する少なくとも1つのイベントモニタと、
少なくとも1つのイベントモニタにより検出された1以上のイベントに従って前記インターコネクトを制御する第1コントローラユニットと、
を有するシステム・オン・チップ。 - 複数の処理ユニットと、前記処理ユニットの間の通信を可能にするよう前記処理ユニットを接続するインターコネクトとを有する電子装置及び/又はシステム・オン・チップにおける通信制御方法であって、
前記処理ユニットの間の通信においてイベントを検出するステップと、
前記少なくとも1つのイベントモニタにより検出されるイベントの1つに従って前記インターコネクトを制御するステップと、
を有する方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP06118577 | 2006-08-08 | ||
PCT/IB2007/053105 WO2008018017A2 (en) | 2006-08-08 | 2007-08-07 | Electronic device and method of controlling a communication |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010500807A true JP2010500807A (ja) | 2010-01-07 |
Family
ID=38779877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009523416A Withdrawn JP2010500807A (ja) | 2006-08-08 | 2007-08-07 | 電子装置及び通信制御方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20100169896A1 (ja) |
EP (1) | EP2054807A2 (ja) |
JP (1) | JP2010500807A (ja) |
CN (1) | CN101501651A (ja) |
WO (1) | WO2008018017A2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010088106A (ja) * | 2008-07-15 | 2010-04-15 | Intel Corp | プロトコルスタックのタイミングの管理 |
JP2013527546A (ja) * | 2010-06-01 | 2013-06-27 | インテル コーポレイション | プロセッサ及び入出力ハブの統合 |
US8782456B2 (en) | 2010-06-01 | 2014-07-15 | Intel Corporation | Dynamic and idle power reduction sequence using recombinant clock and power gating |
US9146610B2 (en) | 2010-09-25 | 2015-09-29 | Intel Corporation | Throttling integrated link |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8341303B2 (en) | 2008-06-30 | 2012-12-25 | Intel Corporation | Asymmetrical universal serial bus communications |
US8661455B2 (en) * | 2009-04-21 | 2014-02-25 | International Business Machines Corporation | Performance event triggering through direct interthread communication on a network on chip |
CN102640462B (zh) * | 2009-11-11 | 2015-12-09 | 新思科技有限公司 | 用于缓冲服务请求的集成电路布置 |
US9471538B2 (en) | 2012-09-25 | 2016-10-18 | Qualcomm Technologies, Inc. | Network on a chip socket protocol |
JP6144348B2 (ja) * | 2012-09-25 | 2017-06-07 | クゥアルコム・テクノロジーズ・インコーポレイテッド | チップソケットプロトコル上のネットワーク |
TWI505247B (zh) * | 2013-09-10 | 2015-10-21 | Himax Tech Ltd | 顯示器串列介面的校準系統及方法 |
CN104268078B (zh) * | 2014-09-23 | 2017-03-15 | 北京控制工程研究所 | 一种基于参数化ip测试用例集合的芯片自动化验证方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5426741A (en) * | 1991-02-20 | 1995-06-20 | Digital Equipment Corporation | Bus event monitor |
US6618775B1 (en) * | 1997-08-15 | 2003-09-09 | Micron Technology, Inc. | DSP bus monitoring apparatus and method |
GB9809182D0 (en) * | 1998-04-29 | 1998-07-01 | Sgs Thomson Microelectronics | Microcomputer with bit packets for interrupts,control and memory access |
WO2000033536A1 (en) * | 1998-12-03 | 2000-06-08 | British Telecommunications Public Limited Company | Network management system |
US6345295B1 (en) | 1999-01-22 | 2002-02-05 | International Business Machines Corporation | Conducting traces in a computer system attachment network |
JP2001356972A (ja) * | 2000-06-15 | 2001-12-26 | Fast Net Kk | ネットワーク監視システム及びネットワーク監視方法 |
US20040199722A1 (en) * | 2003-04-03 | 2004-10-07 | International Business Machines Corp. | Method and apparatus for performing bus tracing in a data processing system having a distributed memory |
US7165132B1 (en) * | 2004-10-01 | 2007-01-16 | Advanced Micro Devices, Inc. | Processing node including a plurality of processor cores and an interconnect configurable in a test-mode to cause first and second transaction source indicators to be interchanged |
CN101053225A (zh) * | 2004-11-09 | 2007-10-10 | 皇家飞利浦电子股份有限公司 | 通信资源分配的电子设备和方法 |
US8325618B2 (en) * | 2006-07-05 | 2012-12-04 | Synopsys, Inc. | Electronic device, system on chip and method for monitoring a data flow |
-
2007
- 2007-08-07 CN CNA2007800294431A patent/CN101501651A/zh active Pending
- 2007-08-07 WO PCT/IB2007/053105 patent/WO2008018017A2/en active Application Filing
- 2007-08-07 US US12/376,304 patent/US20100169896A1/en not_active Abandoned
- 2007-08-07 JP JP2009523416A patent/JP2010500807A/ja not_active Withdrawn
- 2007-08-07 EP EP07805331A patent/EP2054807A2/en not_active Ceased
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010088106A (ja) * | 2008-07-15 | 2010-04-15 | Intel Corp | プロトコルスタックのタイミングの管理 |
JP2013527546A (ja) * | 2010-06-01 | 2013-06-27 | インテル コーポレイション | プロセッサ及び入出力ハブの統合 |
US8782456B2 (en) | 2010-06-01 | 2014-07-15 | Intel Corporation | Dynamic and idle power reduction sequence using recombinant clock and power gating |
US8850250B2 (en) | 2010-06-01 | 2014-09-30 | Intel Corporation | Integration of processor and input/output hub |
US9146610B2 (en) | 2010-09-25 | 2015-09-29 | Intel Corporation | Throttling integrated link |
US10241952B2 (en) | 2010-09-25 | 2019-03-26 | Intel Corporation | Throttling integrated link |
Also Published As
Publication number | Publication date |
---|---|
WO2008018017A2 (en) | 2008-02-14 |
EP2054807A2 (en) | 2009-05-06 |
CN101501651A (zh) | 2009-08-05 |
WO2008018017A3 (en) | 2008-04-03 |
US20100169896A1 (en) | 2010-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010500807A (ja) | 電子装置及び通信制御方法 | |
Pande et al. | Design, synthesis, and test of networks on chips | |
Henkel et al. | On-chip networks: A scalable, communication-centric embedded system design paradigm | |
JP5492332B2 (ja) | マルチコアアーキテクチャーにおけるデバッグ | |
US8990633B2 (en) | Tracing support for interconnect fabric | |
US11176297B2 (en) | Detection and isolation of faults to prevent propagation of faults in a resilient system | |
US20200218215A1 (en) | Circuit for coupling a field bus and a local bus | |
US9222976B1 (en) | Methods and circuits for debugging multiple IC packages | |
Vermeulen et al. | A network-on-chip monitoring infrastructure for communication-centric debug of embedded multi-processor socs | |
US11144235B1 (en) | System and method for evaluating memory system performance | |
CN105579952B (zh) | 利用伪停顿的高速通道上的emi抑制 | |
JP2007048280A (ja) | バスモニタリングのための集積回路装置及びその方法 | |
US10088523B2 (en) | Debug adapter | |
US20230334003A1 (en) | Transaction Generator for On-chip Interconnect Fabric | |
Vermeulen et al. | Debugging distributed-shared-memory communication at multiple granularities in networks on chip | |
Rodriguez et al. | Leveraging partial dynamic reconfiguration on zynq soc fpgas | |
Neishaburi et al. | A distributed AXI-based platform for post-silicon validation | |
CN112379658A (zh) | 一种片上can控制器调试系统 | |
Fibich et al. | Open‐Source Ethernet MAC IP Cores for FPGAs: Overview and Evaluation | |
Medardoni et al. | Capturing the interaction of the communication, memory and I/O subsystems in memory-centric industrial MPSoC platforms | |
US20100079149A1 (en) | Circuit testing apparatus and system | |
JP2009276985A (ja) | 半導体集積回路装置 | |
US11567881B1 (en) | Event-based debug, trace, and profile in device with data processing engine array | |
Schwingenschuh | Optimised data handling strategy for high throughput | |
MacOtela Lopez et al. | Implementation of a traffic interceptor for Anybus CompactCom |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100804 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20110826 |