(57)【要約】【課題】バスモニタリングのための集積回路及びその方法を提供する。【解決手段】本発明の集積回路装置はバスと、バスと連結された少なくとも二つの装置と、バスを通じた少なくとも二つの装置の間のトランザクションを観察し、トランザクション情報をＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）エンベデットメモリに貯蔵するモニタリング回路とを含み、ＳｏＣ設計の時、ＦＰＧＡ設計段階でＦＰＧＡエンベデットメモリにバスモニタリング情報を貯蔵することができる。【選択図】図１
2007048280.tif 000002
【特許請求の範囲】
【請求項１】
バスと、
前記バスと連結された少なくとも二つの装置と、
前記バスを通じた前記少なくとも二つの装置の間のトランザクションを観察し、トランザクション情報をＦＰＧＡエンベデットメモリに貯蔵するモニタリング回路とを含むことを特徴とする集積回路装置。
【請求項２】
前記モニタリング回路は、
前記トランザクション情報を前記メモリに書き込み又は前記メモリから読み出すための制御を実行するコントローラを含むことを特徴とする請求項１に記載の集積回路装置。
【請求項３】
前記モニタリング回路は前記ＦＰＧＡエンベデットメモリに貯蔵された前記トランザクション情報を外部に出力するためのインターフェース回路を含むことを特徴とする請求項１に記載の集積回路装置。
【請求項４】
前記インターフェース回路はＪＴＡＧインターフェース回路であることを特徴とする請求項３に記載の集積回路装置。
【請求項５】
前記少なくとも二つのマスタ装置が前記バスを占有することを仲裁するアービタをさらに含むことを特徴とする請求項１に記載の集積回路装置。
【請求項６】
前記モニタリング回路は、
前記バスを通じて前記少なくとも二つの装置の間の送受信信号が入力され、前記送受信信号に応じてアドレス信号、制御信号、及びトランザクション情報を発生する分析器と、
前記アドレス信号及び前記制御信号に応答して前記トランザクション情報を前記ＦＰＧＡエンベデットメモリに貯蔵する貯蔵回路とを含むことを特徴とする請求項１に記載の集積回路装置。
【請求項７】
前記トランザクション情報は前記トランザクションの処理時間を含むことを特徴とする請求項６に記載の集積回路装置。
【請求項８】
前記トランザクション情報は前記トランザクションに使われるサイクルの数に関する情報を含むことを特徴とする請求項６に記載の集積回路装置。
【請求項９】
前記モニタリング回路内の前記分析器は、
前記トランザクションに対応するアドレス信号を発生することを特徴とする請求項６に記載の集積回路装置。
【請求項１０】
前記モニタリング回路内の前記貯蔵回路は、
前記アドレス信号及び前記制御信号に応答して前記ＦＰＧＡエンベデットメモリに貯蔵された累積トランザクション処理時間を読み出すことを特徴とする請求項６に記載の集積回路装置。
【請求項１１】
前記モニタリング回路内の前記分析器は、
前記累積トランザクション処理時間と前記トランザクション処理時間とを加える加算器をさらに含み、
前記貯蔵回路は、
前記アドレス信号及び前記制御信号に応答して前記加算器から出力される時間を前記ＦＰＧＡエンベデットメモリに貯蔵し、および／または前記ＦＰＧＡエンベデットメモリから読み出された情報を前記加算器に送ることを特徴とする請求項１０に記載の集積回路装置。
【請求項１２】
前記モニタリング回路は、
前記バスを通じた前記少なくとも二つの装置の間の送受信信号が入力され、前記送受信信号に応じて前記トランザクション情報及び制御信号を発生する分析器と、
前記制御信号に応答して前記トランザクション情報を前記ＦＰＧＡエンベデットメモリに貯蔵し、および／または前記トランザクション情報を前記ＦＰＧＡエンベデットメモリから読み出す貯蔵回路とを含むことを特徴とする請求項１に記載の集積回路装置。
【請求項１３】
前記貯蔵回路は、
アドレスを順次に発生し、前記ＦＰＧＡエンベデットメモリの前記アドレスに前記トランザクション情報を貯蔵することを特徴とする請求項１２に記載の集積回路装置。
【請求項１４】
前記トランザクション情報は前記バスを通じた前記少なくとも二つの装置の間の前記送受信信号による動作モード情報及びトランザクション処理時間情報を含むことを特徴とする請求項１２に記載の集積回路装置。
【請求項１５】
バスを通じて伝達される信号が入力される段階と、
前記信号に対応するトランザクション情報を生成する段階と、
前記トランザクション情報をＦＰＧＡエンベデットメモリに貯蔵する段階とを含むことを特徴とするバスモニタリング方法。
【請求項１６】
前記トランザクション情報は前記トランザクションの処理時間を含むことを特徴とする請求項１５に記載のバスモニタリング方法。
【請求項１７】
前記トランザクション情報はトランザクション処理のためのサイクルを含むことを特徴とする請求項１５に記載のバスモニタリング方法。
【請求項１８】
前記トランザクション情報はトランザクションモードに関する情報を含むことを特徴とする請求項１５に記載のバスモニタリング方法。
【請求項１９】
前記バスを占有するトランザクションを仲裁する段階をさらに含むことを特徴とする請求項１５に記載のバスモニタリング方法。
【請求項２０】
バスを通じて伝達される信号に応答してアドレスを生成する段階と、
前記バスを通じて伝達される信号に応答してトランザクション情報を獲得する段階と、
ＦＰＧＡエンベデットメモリの前記アドレスに貯蔵されたトランザクション情報を読み出す段階と、
前記累積サイクル情報と前記サイクル情報とを加える段階と、
ＦＰＧＡエンベデットメモリの前記アドレスに前記加えられたサイクル情報を貯蔵する段階とを含むことを特徴とするバスモニタリング方法。
【請求項２１】
前記トランザクション情報は前記トランザクションの実行に必要な時間を含むことを特徴とする請求項２０に記載のバスモニタリング方法。
【請求項２２】
前記トランザクション情報は前記トランザクションの実行に必要なサイクルの数を含むことを特徴とする請求項２０に記載のバスモニタリング方法。
【請求項２３】
前記バスを占有することを仲裁する段階をさらに含むことを特徴とする請求項２０に記載のバスモニタリング方法。
【請求項２４】
バスを通じて伝達される信号に応答してトランザクションモード情報を生成する段階と、
前記バスを通じて伝達される信号に応答して一つのトランザクション時間情報を獲得する段階と、
ＦＰＧＡエンベデットメモリのアドレスを発生する段階と、
前記ＦＰＧＡエンベデットメモリの前記アドレスに前記トランザクションモード情報及び前記トランザクション時間情報を貯蔵する段階とを含むことを特徴とするバスモニタリング方法。
【請求項２５】
前記トランザクション時間情報は前記トランザクションの実行に必要なサイクルの数を含むことを特徴とする請求項２４に記載のバスモニタリング方法。
【請求項２６】
前記ＦＰＧＡエンベデットメモリアドレスから累積したトランザクション時間情報を読み出す段階と、
前記トランザクション時間情報を前記累積したトランザクション時間情報に加える段階と、
前記累積したトランザクション時間情報を前記ＦＰＧＡエンベデットメモリの前記アドレスに貯蔵する段階とをさらに含むことを特徴とする請求項２４に記載のバスモニタリング方法。
【請求項２７】
前記トランザクション時間は前記トランザクションの実行に必要なサイクルの数を含むことを特徴とする請求項２６に記載のバスモニタリング方法。
【請求項２８】
前記ＦＰＧＡエンベデットメモリアドレスから累積したトランザクションモード情報を読み出す段階と、
前記トランザクションモード情報と前記累積したトランザクションモード情報とを結合する段階と、
前記結合したトランザクションモード情報を前記ＦＰＧＡエンベデットメモリの前記アドレスに貯蔵する段階とをさらに含むことを特徴とする請求項２４に記載のバスモニタリング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は集積回路装置に係り、より具体的にはマスタ装置によって占有されたバスの状態をモニタリングする集積回路装置に関する。
【背景技術】
【０００２】
半導体チップが徐々に微細化、複雑化していくことによって、ＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  ａ  Ｃｈｉｐ）が台頭することになった。一般的にＳｏＣはプロセッサ、メモリ、外部インターフェース、アナログ及び混成モードブロック、内蔵ソフトウェア及びＯＳなどの集積回路装置を構成するすべてのハードウェアとソフトウェアの機能を含む。集積回路装置を実現するための機能ブロックを一つのチップに集積させなければならないので、従来のチップよりその規模が大きくなって、チップの開発期間がさらに必要となる。一方、半導体チップはチップを開発して誰が先に市場に出市するのかに従って、その成否が左右されるので、これは設計を早くしなければならないということと直結する。
【０００３】
ＳｏＣ設計は設計しようとするハードウェアとソフトウェアを同時に考慮しながら進行しなければならないので、その設計において考慮しなければならない事項が従来の設計に比べて多い。ＳｏＣ設計の概括的な順序はＢｅｈａｖｉｏｒａｌレベル設計、ＲＴＬ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ）設計、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）設計、及びＳｏＣマスク製作の順序である。
【０００４】
一方、ＳｏＣに構成される多様な機能回路ブロックすなわち、プロセッサ、メモリ、外部インターフェース、アナログ及び混成モードブロックはバスを通じて回路ブロックの間にデータ及び制御信号を送受信する。アービタ（Ａｒｂｉｔｏｒ）はシステムバスと連結された機能回路ブロックがシステムバスを占有することを制御することで、機能回路ブロックのバス使用による衝突を防止する。
【０００５】
機能回路ブロックがシステムバスを占有する時間、そして各機能回路ブロックのシステムバス占有率などはＳｏＣ回路設計の時考慮しなければならない事項である。バスモニタリングは一般的にＲＴＬ設計段階でバスをモニタリングする方法が使われる。しかし、ＲＴＬ設計段階で実際応用プログラム（ｒｅａｌ  ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍ）を全部実行するには多くの時間がかかる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、設計段階でバスモニタリングを効率的に実行することができる集積回路装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するために本発明の特徴によれば、集積回路装置は、バスと、前記バスと連結された少なくとも二つの装置と、前記バスを通じた前記少なくとも二つの装置の間のトランザクションを観察し、トランザクション情報をＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）エンベデットメモリに貯蔵するモニタリング回路とを含む。
【０００８】
この実施形態において、モニタリング回路は、トランザクション情報をメモリに書き込み又はメモリから読み出すための制御を実行するコントローラを含む。
【０００９】
この実施形態において、モニタリング回路はＦＰＧＡエンベデットメモリに貯蔵されたトランザクション情報を外部に出力するためのインターフェース回路を含み、インターフェース回路はＪＴＡＧ（Ｊｏｉｎｔ  Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｇｒｏｕｐ）インターフェース回路である。
【００１０】
この実施形態において、集積回路装置は少なくとも二つのマスタ装置がバスを占有することを仲裁するアービタをさらに含む。
【００１１】
この実施形態において、モニタリング回路に、バスを通じて少なくとも二つの装置の間の送受信信号が入力され、送受信信号に応じてアドレス信号、制御信号及びトランザクション情報を発生する分析器、及びアドレス信号及び制御信号に応答してトランザクション情報をＦＰＧＡエンベデットメモリに貯蔵する貯蔵回路を含む。
【００１２】
トランザクション情報はトランザクションの処理時間である。
【００１３】
モニタリング回路内の分析器は、トランザクションに対応するアドレス信号を発生する。
【００１４】
モニタリング回路内の貯蔵回路は、アドレス信号及び制御信号に応答してＦＰＧＡエンベデットメモリに貯蔵された累積トランザクション処理時間を読み出す。
【００１５】
この実施形態において、モニタリング回路内の分析器は、累積トランザクション処理時間とトランザクション処理時間を加える加算器をさらに含み、貯蔵回路は、アドレス信号及び制御信号に応答して加算器から出力される時間をＦＰＧＡエンベデットメモリに貯蔵する貯蔵回路を含む。
【００１６】
モニタリング回路に、バスを通じた少なくとも二つの装置の間の送受信信号が入力され、送受信信号に応じてトランザクション情報及び制御信号を発生する分析器、及び制御信号に応答してトランザクション情報をＦＰＧＡエンベデットメモリに貯蔵する貯蔵回路を含む。
【００１７】
この実施形態において、貯蔵回路は、アドレスを順次に発生し、ＦＰＧＡエンベデットメモリのアドレスにトランザクション情報を貯蔵する。
【００１８】
この実施形態において、トランザクション情報はバスを通じた少なくとも二つの装置の間の送受信信号による動作モード情報及びトランザクション処理時間情報を含む。
【００１９】
本発明の他の特徴による集積回路装置のバスモニタリング方法は、バスを通じて伝達される信号が入力される段階と、信号に対応するトランザクション情報を生成する段階と、トランザクション情報をＦＰＧＡエンベデットメモリに貯蔵する段階とを含む。
【００２０】
この実施形態において、トランザクション情報はトランザクションの処理時間を含む。
【００２１】
本発明の他の特徴によるバスモニタリング方法は、バスを通じて伝達される信号に応答してアドレスを生成する段階と、バスを通じて伝達される信号に応答して一つのトランザクションに所要されるサイクル情報を獲得する段階と、ＦＰＧＡエンベデットメモリのアドレスに貯蔵された累積サイクル情報を読み出す段階と、累積サイクル情報とサイクル情報とを加える段階と、ＦＰＧＡエンベデットメモリのアドレスに加えられたサイクル情報を貯蔵する段階とを含む。
【００２２】
本発明の他の特徴によるバスモニタリング方法は、バスを通じて伝達される信号に応答してトランザクションモード情報を生成する段階と、バスを通じて伝達される信号に応答して一つのトランザクションに所要されるサイクル情報を獲得する段階と、アドレスを発生する段階と、ＦＰＧＡエンベデットメモリのアドレスにトランザクションモード情報及びサイクル情報を貯蔵する段階とを含む。
【発明の効果】
【００２３】
本発明によれば、バスモニタリングを通じて獲得されたトランザクション情報をＦＰＧＡエンベデットメモリに貯蔵することで、実際応用プログラム実行の時、リアルタイムでバスモニタリングができる。その結果、ソフトウェアプログラミング時間を縮めることができるので、ＳｏＣ開発期間を短縮することができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の望ましい実施形態を添付の図面を参照して詳細に説明する。
【００２５】
ＦＰＧＡは半導体設計者が意図したとおり自由に回路を設計することができる論理回路型半導体であり、ＳｏＣの製作以前段階でＦＰＧＡボードでＳｏＣ内のそれぞれの機能ブロックを検証する。ＦＰＧＡは使用中設計事項が変更されれば、新しい論理回路をＦＰＧＡ素子に再入力することができる柔軟性とともに、設計から製品化までの‘商品化段階’が短いという長所がある。
【００２６】
本発明はＳｏＣ設計の時ＦＰＧＡ設計段階でＦＰＧＡエンベデットメモリ（ｅｍｂｅｄｄｅｄ  ｍｅｍｏｒｙ）にバスモニタリング情報を貯蔵することができる集積回路装置を提供する。
【００２７】
図１は本発明の望ましい実施形態による集積回路装置の内部構成を示す図である。図１を参照すれば、集積回路装置１００は、システムバス１０１とシステムバス１０１に連結されたマスタ装置１１０、１４０、及びメモリ１３０を含む。この実施形態でシステムバス１０１はＡＭＢＡ（Ａｄｖａｎｃｅｄ  Ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ  Ｂｕｓ  Ａｒｃｈｉｔｅｃｔｕｒｅ）、ＡＨＢ（Ａｄｖａｎｃｅｄ  Ｈｉｇｈ-ｐｅｒｆｏｒｍａｎｃｅ  Ｂｕｓ）であり、マスタ装置１１０、１４０はＡＨＢと連結される機能回路ブロックとしてマイクロプロセッサ、デジタル信号処理器、メモリ及び外部インターフェースなどとすることができる。例えば、マスタ装置１１０、１４０はバス１０１を通じてメモリ１３０に又はメモリからデータを書き込み又は読み出す。
【００２８】
アービタ１２０はバス１０１と連結され、マスタ装置１１０、１４０からのバス接近要請ＨＢＵＳＲＥＱ１、ＨＢＵＳＲＥＱ２に応答して承認信号ＨＧＲＡＮＴ１、ＨＧＲＡＮＴ２を対応するマスタ装置１１０、１４０に送る。
【００２９】
本発明のモニタリング回路１５０はバス１０１と連結され、ＦＰＧＡエンベデットメモリ１５１を含む。モニタリング回路１５０はマスタ装置１１０、１４０の間にまたはマスタ装置１１０、１４０のそれぞれとメモリ１３０との間のデータ及び制御信号伝送が実行されるトランザクション（ｔｒａｎｓａｃｔｉｏｎ）の所要時間をモニタリングし、モニタリング内容をＦＰＧＡエンベデットメモリ１５１に貯蔵する。トランザクションの所要時間はトランザクションによってバス１０１が占有された時間を意味し、それから集積回路装置１００内のマスタ１１０、１４０のそれぞれのバス占有率などが分かる。
【００３０】
モニタリング回路１５０内のＦＰＧＡエンベデットメモリ１５１はモニタリング回路１５０専用メモリまたはＦＰＧＡ設計段階で使われるメモリである。ＦＰＧＡ設計段階で使われるメモリをバスモニタリング情報を貯蔵するために使う場合、メモリの一部アイドル空間がモニタリング情報を貯蔵するために使われる。モニタリング回路１５０内のＦＰＧＡエンベデットメモリ１５１に貯蔵されたモニタリング内容は周期的にＪＴＡＧバスを通じて外部に伝送される。
【００３１】
ＦＰＧＡはサイクル精密度（ｃｙｃｌｅ  ａｃｃｕｒａｃｙ）がＳｏＣ集積回路と同一であるので、実際応用プログラムを実行するのにかかる時間がＲＴＬシミュレーションより速い。本発明はＳｏＣ設計の時、ＦＰＧＡ段階でＦＰＧＡエンベデットメモリにバスモニタリング情報を貯蔵し、ＪＴＡＧバスを通じて外部に送る。ユーザは実際応用プログラム実行の時、リアルタイムでバスモニタリングができるのでソフトウェアプログラミング時間を短縮することができ、その結果、ＳｏＣ開発期間を短縮することができる。本発明の集積回路装置１００はＦＰＧＡに実現され、最終的にＳｏＣチップに実現することができる。ＳｏＣ集積段階でモニタリング回路１５０は選択的に含むことができる。
【００３２】
図２は図１に示したモニタリング回路１５０の具体的な構成の一実施形態を示す図である。図２に示したモニタリング回路１５０はバス１０１を通じてマスタ装置の間にまたはマスタ装置とアービタとの間に伝送される信号が入力され、マスタ装置がバスを占有した状態を分析するためにトランザクションタイプ（ｔｒａｎｓａｃｔｉｏｎ  ｔｙｐｅ）ごとに所要したサイクルをＦＰＧＡエンベデットメモリ１５１に貯蔵するための構成を含む。バスモニタリング情報をＦＰＧＡエンベデットメモリ１５１に貯蔵するためのモニタリング回路１５０の構成は図２に示した構成要素に限定されず、多様に変更することができる。
【００３３】
図２を参照すれば、モニタリング回路１５０は分析器２１０、ＦＰＧＡエンベデットメモリ１５１を含む貯蔵回路２２０、及びＪＴＡＧインターフェース２３０を含む。
【００３４】
分析器２１０はＦＳＭ（Ｆｉｎｉｔｅ  Ｓｔａｔｅ  Ｍａｃｈｉｎｅ）２１１、アドレス発生器２１２、制御信号発生器２１３、カウンタ２１４、及び加算器２１５を含む。バス１０１から分析器２１０に入力される信号ＨＣＬＫ、ＨＲＥＡＤＹ、ＨＴＲＡＮＳ、ＨＧＲＡＮＴ、ＨＳＩＺＥ、ＨＢＵＲＳＴ、ＨＷＲＩＴＥの意味は次の通りである。
ＨＣＬＫ:システムクロック信号
ＨＲＥＡＤＹ:伝送完了
ＨＴＲＡＮＳ:伝送タイプ
ＨＧＲＡＮＴ:伝送承認
ＨＳＩＺＥ:伝送大きさ
ＨＢＵＲＳＴ:バーストタイプ
例えば、ＩＮＣＲ４:ｉｎｃｒｅｍｅｎｔａｌ  ４  ｂｕｒｓｔ、ＩＮＣＲ:ｉｎｃｒｅｍｅｎｔａｌ  ｂｕｒｓｔ
ＨＷＲＩＴＥ:伝送方向（ｗｒｉｔｅ／ｒｅａｄ）
【００３５】
ＦＳＭ２１１はバス１０１から準備信号ＨＲＥＡＤＹとトランザクション信号ＨＴＲＡＮＳとが入力されて、バス状態信号ＳＴＡＴＥを出力する。バス状態信号ＳＴＡＴＥは現在バスを通じて伝達される信号の状態が例えば、アドレス、データまたはアイドル状態のうちのいずれかを示す。
【００３６】
カウンタ２１４はＦＳＭ２１１からの状態信号ＳＴＡＴＥに応答して一つのバストランザクションに必要とされるサイクル数をカウントする。例えば、状態信号ＳＴＡＴＥが新しいアドレスを示す時、カウンタ２１４のカウント値ＣＮＴは１に初期化される。バス１１０を通じて伝送される信号がアドレスまたはデータである時、カウンタ２１４のカウント値ＣＮＴは１ずつ増加する。カウント値ＣＮＴはメモリ１５１に貯蔵するために加算器２１５を通じて書き込みコントローラ２２２に提供される。
【００３７】
アドレス発生器２１２は、バス１１０から承認信号ＨＧＲＡＮＴ、サイズＨＳＩＺＥ、バースト信号ＨＢＵＲＳＴ及び書き込み信号ＨＷＲＩＴＥが入力されてＦＳＭ２１１から出力される状態信号ＳＴＡＴＥに応答してＦＰＧＡエンベデットメモリ１５１の第１読み出しアドレスＲＡＤＤＲ１及び第１書き込みアドレスＷＡＤＤＲ１を出力する。
【００３８】
制御信号発生器２１３は、ＦＳＭ２１１からの状態信号ＳＴＡＴＥに応答して第１読み出しイネーブル信号ＲＥＮ１及び第１書き込みイネーブル信号ＷＥＮ１を発生する。
【００３９】
加算器２１５は読み出しコントローラ２２１からの第１読み出しデータＲＤＡＴＡ１とカウンタ２１４からのカウント値ＣＮＴとを加えて第１書き込みデータＷＤＡＴＡ１として書き込みコントローラ２２２に提供する。
【００４０】
貯蔵回路２２０は、ＦＰＧＡエンベデットメモリ１５１、読み出しコントローラ２２１、及び書き込みコントローラ２２２を含む。読み出しコントローラ２２１は分析器２１０内の制御信号発生器２１３からの第１読み出しイネーブル信号ＲＥＮ１に応答してメモリ１５１の第１読み出しアドレスＲＡＤＤＲ１から読み出されたデータＲＤＡＴＡを第１読み出しデータＲＤＡＴＡ１として出力する。また読み出しコントローラ２２１はＪＴＡＧインターフェース２３０からの第２読み出しイネーブル信号ＲＥＮ２に応答してメモリ１５１の第２読み出しアドレスＲＡＤＤＲ２から読み出されたデータＲＤＡＴＡを第２読み出しデータＲＤＡＴＡ２として出力する。
【００４１】
書き込みコントローラ２２２は、分析器２１０内の制御信号発生器２１３からの第１書き込みイネーブル信号ＷＥＮ１に応答して加算器２１５からの第１書き込みデータＷＤＡＴＡ１をメモリ１５１の第１書き込みアドレスＷＡＤＤＲ１に貯蔵する。また、書き込みコントローラ２２２は、ＪＴＡＧインターフェース２３０からの第２書き込みイネーブル信号ＷＥＮ２に応答してメモリ１５１の第２書き込みアドレスＷＡＤＤＲ２にＪＴＡＧインターフェース２３０からの書き込みデータＷＤＡＴＡ２を貯蔵する。
【００４２】
ＪＴＡＧインターフェース２３０は、外部から入力された読み出しイネーブル信号ＲＥＮ２、読み出しアドレスＲＡＤＤＲ２を読み出しコントローラ２２１に提供し、外部から入力された書き込みイネーブル信号ＷＥＮ２、書き込みアドレスＷＡＤＤＲ２及び書き込みデータＷＤＡＴＡ２を書き込みコントローラ２２２に提供する。
【００４３】
続いて、図３に示したタイミング図を参照して図２に示したモニタリング回路１５０の動作を説明する。図３は図２に示したモニタリング回路１５０で使われる信号の一実施形態によるタイミング図であり、例えば図１に示したマスタ装置＃１１１０の要請に応じてアービタ１２０がマスタ装置＃１  １１０にバス使用権限を与えた場合、モニタリング回路１５０の動作は次の通りである。
【００４４】
図１に示したマスタ装置＃１  １１０はメモリ１３０にデータを書き込む（ｗｒｉｔｅ）ためバス１０１を通じて書き込み命令、書き込みアドレス及び書き込みデータをメモリ１３０に送る。ＦＳＭ２１１に信号ＨＲＥＡＤＹ、ＨＴＲＡＮＳが入力されて状態信号ＳＴＡＴＥを出力する。制御信号発生器２１３は状態信号ＳＴＡＴＥに応じて第１読み出しイネーブル信号ＲＥＮ１を活性化し、アドレス発生器２１２は状態信号ＳＴＡＴＥ及び信号ＨＧＲＡＮＴ、ＨＳＩＺＥ、ＨＢＵＲＳＴ、ＨＷＲＩＴＥに応じて第１読み出しアドレスＲＡＤＤＲ１及び第１書き込みアドレスＷＡＤＤＲ１を発生する。この実施形態で、第１読み出しアドレスＲＡＤＤＲ１及び第１書き込みアドレスＷＡＤＤＲ１は同一である。また、この実施形態で、第１読み出しアドレスＲＡＤＤＲ１及び第１書き込みアドレスＷＡＤＤＲ１のフォーマットは{ｍａｓｔｅｒｎｕｍ、ＨＳＩＺＥ、ＨＢＵＲＳＴ、ＨＷＲＴＩＥ}である。
【００４５】
このように、信号ＨＧＲＡＮＴ、ＨＳＩＺＥ、ＨＢＵＲＳＴ、ＨＷＲＩＴＥに応じてアドレスＲＡＤＤＲ１、ＷＡＤＤＲ１を発生すれば、トランザクションごとにメモリ１５１内の貯蔵空間を異にすることができるので、特定アドレスを入力することによって所望のトランザクションに対する情報を得ることができる。
【００４６】
読み出しコントローラ２２１は第１読み出しイネーブル信号ＲＥＮ１及びアドレス信号ＲＡＤＤＲ１に応答してＦＰＧＡエンベデットメモリ１５１に貯蔵されたデータを読み出す。読み出しコントローラ２２１によって読み出された第１読み出しデータＲＤＡＴＡ１は加算器２１５によってカウンタ値ＣＮＴと加えられた後、書き込みコントローラ２２２に提供される。
【００４７】
書き込みコントローラ２２２は、制御信号発生器２１３からの第１書き込みイネーブル信号ＷＥＮ１が活性化されれば加算器２１５から提供された第１書き込みデータＷＤＡＴＡ１をメモリ１５１の書き込みアドレスＷＡＤＤＲ１に対応する位置に貯蔵する。例えば、読み出しコントローラ２２１によってメモリ１５１から読み出されたデータＲＤＡＴＡ１が‘Ａ’であり、カウント値２１５が５である時、第１書き込みイネーブル信号ＷＥＮ１が活性化されれば書き込みデータＷＤＡＴＡ１は‘Ａ＋５’である。これは、現在トランザクションに要したサイクルが５サイクルであり、現在と同一のトランザクションに対する累積サイクルが‘Ａ＋５’サイクルであることを意味する。
【００４８】
このように、本発明のモニタリング回路１５０はバスを通じて二つの装置の間にトランザクションが発生する時、トランザクションに要した時間すなわち、クロックサイクルをＦＰＧＡエンベデットメモリ１５１に貯蔵する。以後、同一のトランザクションが発生すれば、ＦＰＧＡエンベデットメモリ１５１に貯蔵されたクロックサイクルを読み出し、現在要したクロックサイクルと加えて再びＦＰＧＡエンベデットメモリ１５１に貯蔵する。この実施形態ではトランザクションに要したサイクルのみをＦＰＧＡエンベデットメモリ１５１に貯蔵するとして説明したが、伝送データの数及びパターンなどトランザクションと関連ある情報をＦＰＧＡエンベデットメモリ１５１にさらに貯蔵することができる。
【００４９】
ＦＰＧＡエンベデットメモリ１５１に貯蔵されたトランザクション情報はＪＴＡＧインターフェース２３０を通じて外部に伝達される。すなわち、読み出しコントローラ２２１は、外部からＪＴＡＧインターフェース２３０を通じて入力された第２読み出しアドレスＲＡＤＤＲ２と第２読み出しイネーブル信号ＲＥＮ２に応答して読み出しデータＲＤＡＴＡ２をＪＴＡＧインターフェース２３０を通じて外部に出力する。
【００５０】
また、必要に応じて、外部からＪＴＡＧインターフェース２３０を通じてＦＰＧＡエンベデットメモリ１５１にデータを書き込むことができる。この時にはＪＴＡＧインターフェース２３０を通じて書き込みコントローラ２２２に第２書き込みデータＷＤＡＴＡ２、第２書き込みイネーブル信号ＷＥＮ２、及び第２書き込みアドレスＷＡＤＤＲ２を入力しなければならない。外部からＪＴＡＧインターフェース２３０を通じてＦＰＧＡエンベデットメモリ１５１にデータを書き込む場合は例えば、ＦＰＧＡエンベデットメモリ１５１をクリアする場合、または初期値を貯蔵する場合などがある。
【００５１】
図４は本発明の他の実施形態によるモニタリング回路を示す図であり、図５は図４に示したモニタリング回路で使われる信号のタイミング図である。
【００５２】
図４を参照すれば、モニタリング回路４００は、分析器４１０、貯蔵回路４２０、及びＪＴＡＧインターフェース４３０を含む。分析器４１０はＦＳＭ４１１、モード情報生成器４１２、制御信号発生器４１３、カウンタ４１４、及び結合器４１５を含む。ＦＳＭ４１１はバス１１０から準備信号ＨＲＥＡＤＹとトランザクション信号ＨＴＲＡＮＳとが入力されてバス状態信号ＳＴＡＴＥを出力する。バス状態信号ＳＴＡＴＥは現在バスを通じて伝達される信号の状態が例えば、アドレス、データまたはアイドル状態のうちのいずれかを示す。
【００５３】
カウンタ４１４はＦＳＭ４１１からの状態信号ＳＴＡＴＥに応答して一つのバストランザクションに必要とされるサイクル数をカウントする。例えば、状態信号ＳＴＡＴＥが新しいアドレスを示す時、カウンタ４１４のカウント値ＣＮＴは１に初期化される。バス１０１を通じて伝送される信号がアドレスまたはデータである時、カウンタ４１４のカウント値ＣＮＴは１ずつ増加する。カウント値ＣＮＴは結合器４１５に提供される。
【００５４】
モード情報発生器２１２には、バス１０１から承認信号ＨＧＲＡＮＴ、サイズＨＳＩＺＥ、バースト信号ＨＢＵＲＳＴ及び書き込み信号ＨＷＲＩＴＥが入力され、ＦＳＭ４１１から出力される状態信号ＳＴＡＴＥに応答してエンコーディング（ｅｎｃｏｄｉｎｇ）されたモード情報信号ＭＯＤＥを発生する。図５に示した例で、モード情報信号ＭＯＤＥは{ＨＧＲＡＮＴ、ＨＳＩＺＥ、ＨＢＵＲＳＴ、ＨＷＲＩＴＥ}である。制御信号発生器４１３はＦＳＭ４１１からの状態信号ＳＴＡＴＥに応答して第１書き込みイネーブル信号ＷＥＮ１を発生する。
【００５５】
結合器４１５は、モード情報生成器４１２からのモード情報信号ＭＯＤＥとカウンタ２１４からのカウント値ＣＮＴを結合して第１書き込みデータＷＤＡＴＡ１として出力する。この実施形態では、結合器４１５はモード情報信号ＭＯＤＥとカウント値ＣＮＴとのビットを連結（ｃｏｎｃａｔｅｎａｔｉｏｎ）するものとして説明できるが、モード情報信号ＭＯＤＥとカウント値ＣＮＴとを結合する多様な方法を適用することができる。第１書き込みデータＷＤＡＴＡ１はトランザクション情報であり、書き込みコントローラ４２３に提供する。図５に示した例で第１書き込みデータＷＤＡＴＡ１、すなわち、トランザクション情報は{ＨＧＲＡＮＴ、ＨＳＩＺＥ、ＨＢＵＲＳＴ、ＨＷＲＩＴＥ、ＣＮＴ}である。
【００５６】
貯蔵回路２２０は読み出しコントローラ４２１、ＦＰＧＡエンベデットメモリ４２２、及び書き込みコントローラ４２３を含む。書き込みコントローラ４２３は、分析器４１０内の制御信号発生器４１３からの第１書き込みイネーブル信号ＷＥＮ１に応答して結合器４１５からの第１書き込みデータＷＤＡＴＡ１をメモリ４２２の第１書き込みアドレスＷＡＤＤＲ１に貯蔵する。また、書き込みコントローラ４２３は、ＪＴＡＧインターフェース４３０からの第２書き込みイネーブル信号ＷＥＮ２に応答して書き込みアドレスＷＡＤＤＲを発生し、書き込みイネーブル信号ＷＥＮを活性化し、結合器４１５からの第１書き込みデータＷＤＡＴＡ１を書き込みデータＷＤＡＴＡとして出力する。書き込みアドレスＷＡＤＤＲは書き込みイネーブル信号ＷＥＮが活性化されるごとに順次、増加する。
【００５７】
読み出しコントローラ４２１は、ＪＴＡＧインターフェース４３０からの読み出しイネーブル信号ＲＥＮ２に応答してメモリ４２２に貯蔵されたトランザクション情報を読み出し、読み出されたデータＲＤＡＴＡ２をＪＴＡＧインターフェース４３０を通じて外部に出力する。読み出しアドレスＲＡＤＤＲは、読み出しイネーブル信号ＲＥＮが活性化される度に順次、増加する。ここで、読み出しアドレスＲＡＤＤＲはメモリ４２２のトランザクション情報が貯蔵された位置範囲以内である。
【００５８】
上述したような図４に示したモニタリング回路４００は、トランザクション情報を貯蔵するためにＦＰＧＡエンベデットメモリ４２２をＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ）メモリとして使用する。
【００５９】
例示的な望ましい実施形態を利用して本発明を説明したが、本発明の範囲は開示された実施形態に限定されない。したがって、請求範囲はそのような変形例及びその類似の構成の全部を含み、できる限り幅広く解釈されなければならない。
【図面の簡単な説明】
【００６０】
【図１】本発明の望ましい実施形態に係る集積回路装置の内部構成を示す図である。
【図２】図１に示したモニタリング回路の具体的な構成の一実施形態を示す図である。
【図３】図２に示したモニタリング回路で使われる信号の一実施形態に係るタイミング図である。
【図４】本発明の他の実施形態に係るモニタリング回路を示す図である。
【図５】図４に示したモニタリング回路で使われる信号のタイミング図である。
【符号の説明】
【００６１】
１００  集積回路装置
１０１  バス
１１０、１４０  装置
１２０  アービタ
１３０  メモリ
１５０，４００  モニタリング回路
１５１，４２２  ＦＰＧＡエンベデットメモリ
２１１，４１１  ＦＳＭ
２１２，４１２  アドレス発生器
２１３，４１３  制御信号発生器
２１４，４１４  カウンタ
２１５  加算器
４１５  結合器
２２１，４２２  読み出しコントローラ
２２２，４２３  書き込みコントローラ
２３０，３２０  ＪＴＡＧインターフェース
【図１】
2007048280.tif 000003
【図２】
2007048280.tif 000004
【図３】
2007048280.tif 000005
【図４】
2007048280.tif 000006
【図５】
2007048280.tif 000007