(57)【要約】【課題】内部信号トレースのためのトレースメモリの有効活用および内部信号トレース時間の短縮と共に、リアルタイムで多数の内部信号を連続的に追いかけることにより不具合の解析に要する時間を短縮可能にする。【解決手段】使用されるクロックの周波数単位にまとめた複数の内部ノードから得られる複数の内部信号群と各群に対応する各クロクック信号が取り出せるようにした論理集積回路内に配置され、外部から与えられる内部信号セレクト信号に応答して複数の内部信号群の中から一群の内部信号とその一群の内部信号に対応するクロック信号を選択し、選択された一群の内部信号を対応するクロック信号に同期させて当該クロック信号と共に出力する。【選択図】        図２
2004280426.tif 000002
【特許請求の範囲】
【請求項１】
使用されるクロックの周波数単位にまとめた複数の内部ノードから得られる複数の内部信号群と各群に対応する各クロクック信号が取り出せるようにした論理集積回路内に配置され、
外部から与えられる内部信号セレクト信号に応答して前記複数の内部信号群の中から一群の内部信号とその一群の内部信号に対応するクロック信号を選択し、
選択された一群の内部信号を前記対応するクロック信号に同期させて当該対応するクロック信号と共に外部に出力するようにした論理集積回路の内部信号トレース装置。
【請求項２】
使用されるクロックの周波数単位にまとめた複数の内部ノードから得られる複数の内部信号群と基準クロクック信号が取り出せるようにした論理集積回路内に配置され、
外部から与えられる内部信号セレクト信号に応答して前記複数の内部信号群の中から一群の内部信号を選択し、
前記基準クロックを逓倍して前記一群の内部信号に対応するクロック信号を生成し、
選択された前記一群の内部信号を生成された前記クロック信号に同期させて当該クロック信号と共に出力するようにした論理集積回路の内部信号トレース装置。
【請求項３】
基準クロック信号を逓倍してクロック信号を生成し、生成されたクロック信号を、一群の内部信号に対応するクロック信号の一部として選択するようにしたことを特徴とする請求項１記載の論理集積回路の内部信号トレース装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、電気回路設計時において、回路基板上に搭載された論理集積回路の内部信号のトレースを行うための論理集積回路の内部信号トレース装置に関するものである。
【０００２】
【従来の技術】
開発が行われた大規模集積回路（以下、ＬＳＩとする。）が設計当初の期待通りに動作しないときは、ＬＳＩの動作を解析してデバッグを行う必要があるが、使用されるＬＳＩ自体がブラックボックスである場合、その作業は困難を極める。このことに対応するため、従来いろいろな方法によって解析やデバッグが行われてきた。
【０００３】
従来の技術として、図５乃至図７により説明するような、プログラマブル論理デバイスにデバッグのための論理アナライザを埋め込む方法がある（例えば、特許文献１参照。）。図５は従来の論理アナライザを埋め込んだプログラマブル論理開発システムの構成を示すブロック図である。このプログラマブル論理開発システムは、ケーブル１５２などを介して接続されたコンピュータ・システム１５３と電子システム１５４である。コンポーネントであるプログラマブル論理デバイス（以下、ＰＬＤとする。）１５５を含み、電子システム１５４を形成する他のコンポーネントおよびエレメントと１つ以上の電子接続１５６を共有している。また、ＰＬＤ１５５は、ユーザ論理設計部１５７および埋め込み論理アナライザ１５８を内蔵し、論理接続１５９は、ユーザ論理設計部１５７からの信号を埋め込み論理アナライザ１５８に送信するようにしている。そして、ＰＬＤ１５５のピンを用いて埋め込み論理アナライザ１５８からのインタフェース信号１６０を電子システム１５４内の対応する接続１６１に接続し、これらのインタフェース信号をケーブル１５２によりコンピュータ・システム１５３に接続している。
【０００４】
コンピュータ・システム１５３は、電子システム１５４の機能動作に対して割り込みや影響を与えることはなく、コマンドおよびその他の情報を埋め込み論理アナライザ１５８に送信し、この埋め込み論理アナライザ１５８からの情報を受信する。したがって、ＰＬＤ１５５は、ユーザ論理設計部１５７および埋め込み論理アナライザ１５８の双方の機能を実行するように構成されている。
【０００５】
図６は、従来の論理アナライザが埋め込まれたプログラマブル論理デバイス１５５の構成を示すブロック図である。図において、制御論理１７２および信号１７３と関連付けてＪＴＡＧポート１７１を用いてインタフェース信号１６０（図５参照）に対応する。制御論理１７２は、埋め込み論理アナライザ１５８に制御信号を供給すると共に、埋め込み論理アナライザ１５８からデータおよびステータスを検索するのを支援する。なお、ＪＴＡＧとは、ＩＣチップの検査方式の一つであるバウンダリスキャンテストの標準方式で、Ｊｏｉｎｔ  Ｅｕｒｏｐｅａｎ  Ｔｅｓｔ  Ａｃｔｉｏｎ  Ｇｒｏｕｐによって提案されＩＥＥＥで標準化された規格ある。ＪＴＡＧに対応したＩＣには、本来の機能を果たす回路のほかに、ＪＴＡＧに対応した回路とＴＡＰ（Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｐｏｒｔ）とよばれる端子からなるインタフェースを持ち、テストデータの入出力や制御に用いられる。
【０００６】
図７は、従来の埋め込み論理アナライザ１５８の具体的構成を示すブロック図である。論理アナライザ１５８は、制御状態機械１８１、トリガ・レジスタ１８２、トリガ比較器１８４、レジスタ１８５および１８６、カウンタ１８７〜１８９、比較器１９０、１９１、およびトレースメモリ１９２を含んでいる。論理アナライザ１５８がＰＬＤ１５５内にプログラムされると、ＰＬＤ１５５内で信号から様々な入力信号を受信する。ユーザは、トリガ信号１８３をトリガ・レジスタ１８２に格納されたトリガ条件と比較し、満足するトリガ比較器１８４によりブレイクポイント信号を発生させる。そして、制御状態機械１８１からの信号Ｒｕｎは、ゲート１９３において信号ＰＤＦと組み合わされて、カウンタ１８９をイネーブルするものである。
【０００７】
また、集積回路内部の信号にアクセスする方法として、試験対象のＰＬＤをエミュレートするようにプログラム可能なシャドーＰＬＤを備えるようにしたものがある（例えば、特許文献２参照。）。ここでは、シャドーＰＬＤは、少なくとも試験対象のＰＬＤの入出力端子に対応づけられるだけの数の入出力端子を備える。また、試験対象のＰＬＤとシャドーＰＬＤの両方の入出力端子を、試験対象のＰＬＤが共に動作することを想定した外部回路に接続するための端子も備えている。また、両ＰＬＤの各端子を外部測定器に接続するためのプローブ・コネクタを有する。このように、シャドーＰＬＤの端子へのアクセスを可能にすることによって分析を大幅に単純化し、内部ノードに関連する故障の発見率を大幅に向上させるというものである。
【０００８】
さらに、従来の技術として、フィールドプログラマブルアレイ（ＦＰＧＡ）チップ上に、ＳＲＡＭ等からなる制御メモリおよび論理ブロック部、プログラマブルスイッチ部、入出力ブロック部、および各部を制御するメモリ制御部を設け、また、制御メモリおよび論理ブロック部内のメモリセルからＦＰＧＡチップ外部へ回路情報を読み出すための機構と、実現したディジタル回路を実行するための読み出し機構とを設け、両機構を独立に作動させるようにしたものがある（例えば、特許文献３参照）。このことにより、デバイスの動作を停止せずに回路情報の検証を行うことができるようになる。
【０００９】
【特許文献１】
特開平１１−２９６４０３号公報（図６、図７、図９）
【特許文献２】
特開平１０−９１４７２号公報
【特許文献３】
特開平８−６８０９号公報
【００１０】
【発明が解決しようとする課題】
従来の論理集積回路のモニタシステムは、以上のように構成されているので、次のような問題があった。
内部信号のクロック信号は１種類のみであり、内部信号群毎にクロックの選択ができない。そのため、クロックの異なる内部信号をトレースする場合には、一番速い（周波数が高い）クロック信号に合わせる必要がある。したがって、クロックが遅い（周波数が低い）内部信号をトレースする場合には長大なサンプル数をトレースしなければならず、トレースメモリの不足やトレースメモリからの読み出し、コンピュータ・システムへの表示時間に問題があった。この問題を回避するためには、トレースしたい内部信号毎にクロックを再選択し、論理集積回路の再コンパイルおよびデバイスへのデータ書込みを必要とする。その結果、内部信号のトレースによるタイムリーなデバッグが不可能になる。
【００１１】
また、特許文献１では、ＪＴＡＧポートを用いて内部信号を外部端子に出力させるようにしているが、このＪＴＡＧのインタフェースは電気的規格上、高々数百ｋＨｚのシリアルポートに過ぎず、速くても１ＭＨｚが限界である。この程度のシリアル通信では、数十ＭＨｚのクロックで動作するＦＰＧＡの多数の内部信号をリアルタイムで解析するインタフェースには適さないという問題があった。
【００１２】
この発明は上記のような課題を解決するためになされたもので、内部信号トレースのためのトレースメモリの有効活用および内部信号トレース時間の短縮と共に、リアルタイムで多数の内部信号を連続的に追いかけることにより、不具合の解析に要する時間を短縮可能にする論理集積回路の内部信号トレース装置を得ることを目的とする。
【００１３】
【課題を解決するための手段】
この発明に係る論理集積回路の内部信号トレース装置は、使用されるクロックの周波数単位にまとめた複数の内部ノードから得られる複数の内部信号群と各群に対応する各クロクック信号が取り出せるようにした論理集積回路内に配置され、外部から与えられる内部信号セレクト信号に応答して複数の内部信号群の中から一群の内部信号とその一群の内部信号に対応するクロック信号を選択し、選択された一群の内部信号を対応するクロック信号に同期させて当該対応するクロック信号と共に外部に出力するようにしたものである。
【００１４】
【発明の実施の形態】
以下、この発明の実施の形態について説明する。
実施の形態１．
図１はこの発明の実施の形態１乃至実施の形態３に係る論理集積回路の内部信号トレース装置を適用した論理集積回路のモニタシステムの構成を示すブロック図である。ここでは、内部信号をモニタする論理集積回路として、特定用途向けの集積回路であるＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、とりわけ、プログラム可能な集積回路であるＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）を用いた例を示すが、この発明は、必ずしもこれに限定されるものではない。
回路基板３上には、モニタの対象とするターゲットＦＰＧＡ（論理集積回路）９、その他のデバイス１１が搭載されている。ターゲットＦＰＧＡ９には、設計の前段階において不具合解析を想定して予め内部信号を取り出すためのモニタ用のピンを回路基板上３に用意しておく。実際に不具合が起きる前でもいいが、通常は予期せぬ不具合の発生後において、ターゲットＦＰＧＡ９の回路に後述する図２〜図４に示す構成を典型例とするトレース回路１０の挿入を行う。
【００１５】
論理集積回路のモニタシステムの概略動作は次のようになる。
パーソナルコンピュータ１からの指令に基づき、伝送線路４、信号蓄積・制御装置２上のマイクロコンピュータ６、制御ＦＰＧＡ８および伝送線路５を通り到達する制御信号により、回路基板３上に搭載されているターゲットＦＰＧＡ９内のトレース回路１０を動作させ、ターゲットＦＰＧＡ９の内部信号をトレースする。トレースされた内部信号は、伝送線路５を通り、信号蓄積・制御装置２上の制御ＦＰＧＡ８によりトレースメモリ７に一旦書き込まれる。そして、パーソナルコンピュータ１からの指令に基づき、トレースされた内部信号はトレースメモリ７から読み出され、制御用ＦＰＧＡ８、マイクロコンピュータ６、伝送線路４を通り、パーソナルコンピュータ１に送られて表示される。
【００１６】
次に，図１に示した論理集積回路のモニタシステム上で使用するトレース回路の詳細について説明する。図２はこの発明の実施の形態１による論理集積回路の内部信号トレース装置の構成を示すブロック図である。
ターゲットＦＰＧＡ９の内部回路１２上のモニタすべき候補の内部ノードから、基準クロックの周波数単位にまとめた内部信号郡ｎ１本組が数組並んだ内部信号群１７が取り出されるように構成されている。これら内部信号群１７はトレース回路１０内のマルチプレクサ２３に与えられる。また、ターゲットＦＰＧＡ内部回路１２は、その内部ノードからの内部信号群ｎ１本に対応するクロック１本が数組並んだ基準クロック信号１８が取り出されるように構成されており、これらクロック信号１８はマルチプレクサ２４に与えられている。図１の信号蓄積・制御装置２からｍ１本の内部信号セレクト信号１３がトレース回路１０に入力されると、その値によってマルチプレクサ２３で選択されたｎ１本の内部信号群が、マルチプレクサ２４で選択された対応するクロック信号によりレジスタ（Ｄ−ＦｌｉｐＦｌｏｐなど）２２で同期を取って出力される。また、この時のクロック信号は、ターゲットＦＰＧＡ９側の動作の基準となるターゲットＦＰＧＡ基準クロック１５として出力される。したがって、外部の信号蓄積・制御装置２が受信した場合、そのターゲットＦＰＧＡ基準クロック１５によって確実にデータを転送することが可能となる。ターゲットＦＰＧＡ９に対してモニタ出力可信号１６が与えられ、ターゲットＦＰＧＡ９のトライステートアウトプットバッファ２０，２０’への出力イネーブルを制御し、必要時以外にはターゲットＦＰＧＡ外部モニタ信号とターゲットＦＰＧＡ基準クロックの出力を停止するようになっている。なお、外部から入力される内部信号セレクト信号１３には、基準クロック信号が用いられ、レジスタ（Ｄ−ＦｌｉｐＦｌｏｐなど）２１で同期を取って使用している。
【００１７】
以上のように、実施の形態１によれば、使用されるクロックの周波数単位にまとめた複数の内部ノードから得られる複数の内部信号群と各群に対応する各クロクック信号が取り出せるようにしたターゲットＦＰＧＡ（論理集積回路）内に配置され、外部から与えられる内部信号セレクト信号に応答して複数の内部信号群の中から一群の内部信号とその一群の内部信号に対応するクロック信号を選択し、選択された一群の内部信号を対応するクロック信号に同期させて当該対応するクロック信号と共に外部に出力するようにしたので、異なる複数のクロックで動作する論理集積回路がある場合でも、トレースメモリの使用量の抑制およびトレースデータ表示時間を短縮し、内部信号のサンプリングを効率的に行える効果が得られる。
【００１８】
実施の形態２．
図３はこの発明の実施の形態２による論理集積回路の内部信号トレース装置の回路構成を示すブロック図で、図において、上記図２に相当する部分には同一符合を付し、その説明は原則として省略する。
ここでは、図２のマルチプレクサ２４の代わりに、逓倍回路（ＰＬＬ）２５がトレース回路１０内またはその手前のターゲットＦＰＧＡ内部回路１２内に設けられている。この実施の形態２では、この発明の内部信号トレース装置は、トレース回路１０外に置いた場合の逓倍回路２５をも含めた構成となる。
【００１９】
ターゲットＦＰＧＡ９の内部回路１２上のモニタすべき候補ノードから、ｎ１本組が数組並んだ内部信号群１７がマルチプレクサ２３に与えられているが、その内部ノードに対応するクロック信号は基準クロック信号１８を逓倍回路２５により逓倍して得るようにしている。また、既にターゲットＦＰＧＡ内部回路１２内に基準クロックよりも周波数の高いクロック信号が存在する場合については、そのクロック信号を、逓倍回路２５を通さずに直接使用すればよい。
【００２０】
このような回路配置において、基準クロック信号１８を逓倍回路２５にて逓倍化したクロック信号あるいは既にターゲットＦＰＧＡ内部回路１２内に存在する基準クロックよりも周波数の高いクロック信号が、モニタ対象の内部信号の基準クロックに対して整数ｒ倍の速度で動作したとする。すると、内部信号セレクト信号１３は、基準クロック信号が一つ進む間固定ではなく、一つ進む間にｒ回切り替えられることになる。したがって、ｒチャンネル数のｎ１本の内部信号を時分割的にトレースすることが可能となる。元々ｎ１本で結ばれる内部信号の同時トレースが、ターゲットＦＰＧＡ９の外部モニタピン数を増やすことなく、一気にｎ１×ｒ本に拡大される。論理集積回路を搭載するデバイスのピン数で制限される本数を越えて同時に内部信号をモニタ可能とする。
【００２１】
以上のように、この実施の形態２によれば、使用されるクロックの周波数単位にまとめた複数の内部ノードから得られる複数の内部信号群と基準クロクック信号が取り出せるようにしたターゲットＦＰＧＡ（論理集積回路）と同じ回路基板上に搭載され、外部から与えられる内部信号セレクト信号に応答して複数の内部信号群の中から一群の内部信号を選択し、基準クロック信号を逓倍して一群の内部信号に対応するクロック信号を生成し、選択された一群の内部信号を生成されたクロック信号に同期させて当該クロック信号と共に出力するようにしたので、論理集積回路の内部信号の分解能を上げて詳細にトレースすることができる効果が得られる。
【００２２】
実施の形態３．
図４はこの発明の実施の形態３による論理集積回路の内部信号トレース装置の回路構成を示すブロック図で、図において、上記図２に相当する部分には同一符合を付し、その説明は原則として省略する。ここでは、逓倍回路２５がトレース回路１０の手前のターゲットＦＰＧＡ内部回路１２内に設けられている。この実施の形態２では、この発明の内部信号トレース装置は、トレース回路１０以外にターゲットＦＰＧＡ内部回路１２内に設けられた逓倍回路２５を含めた構成を持つ。
【００２３】
内部ノードｎ１本に対応するクロック１本が数組並んだクロック信号１８がマルチプレクサ２４に与えられているが、その中のｒ本のクロック信号は、ＰＬＬ回路２５で基準クロック信号を逓倍して生成されている。このことにより、ｎ１×ｒ本の内部信号が同時トレース可能となる。また、他の内部信号は、それぞれの対応するクロック信号が直接マルチプレクサ２４に与えられ、ｎ１本単位で同じ分解能でサンプリングが可能となる。これにより、少ないトレースメモリ容量、限られたデバイスのピン数で内部信号のトレースを高速に行うことができる。
【００２４】
以上のように、この実施の形態３によれば、基準クロック信号を逓倍してクロック信号を生成し、生成されたクロック信号を、一群の内部信号に対応するクロック信号の一部として選択するようにしたので、実施の形態１と２を組み合わせたｎ１×ｒ本の内部信号の同時トレースおよび複数クロックで動作する論理集積回路の内部信号のサンプリングを効率的に行うことができる効果が得られる。
【００２５】
【発明の効果】
以上のように、この発明によれば、使用されるクロックの周波数単位にまとめた複数の内部ノードから得られる複数の内部信号群と各群に対応する各クロクック信号が取り出せるようにした論理集積回路内に配置され、外部から与えられる内部信号セレクト信号に応答して複数の内部信号群の中から一群の内部信号とその一群の内部信号に対応するクロック信号を選択し、選択された一群の内部信号を対応するクロック信号に同期させて当該対応するクロック信号と共に外部に出力するように構成したので、全ての内部信号に対して同じ分解能でサンプリングが可能となり、少ないトレースメモリ容量でかつ高速に内部信号のトレースを行うことができる効果がある。
【図面の簡単な説明】
【図１】この発明の実施の形態１乃至実施の形態３に係る論理集積回路のモニタシステムの構成を示すブロック図である。
【図２】この発明の実施の形態１による論理集積回路の内部信号トレース装置の回路構成を示すブロック図である。
【図３】この発明の実施の形態２による論理集積回路の内部信号トレース装置の回路構成を示すブロック図である。
【図４】この発明の実施の形態３による論理集積回路の内部信号トレース装置の回路構成を示すブロック図である。
【図５】従来のプログラマブル論理開発システムの構成を示すブロック図である。
【図６】従来の論理アナライザが埋め込まれたプログラマブル論理デバイスの構成を示すブロック図である。
【図７】従来の埋め込み論理アナライザの構成を示すブロック図である。
【符号の説明】
１  パーソナルコンピュータ、２  信号蓄積・制御装置、３  回路基板、４，５  伝送線路、６  マイクロコンピュータ、７  トレースメモリ、８  制御ＦＰＧＡ、９  ターゲットＦＰＧＡ（論理集積回路）、１０  トレース回路、１２  内部回路、１３  内部信号セレクト信号、１５  ターゲットＦＰＧＡ基準クロック、１６  モニタ出力可信号、１７  内部信号群、１８  基準クロック信号、２０，２０’  トライステートアウトプットバッファ、２１，２２  レジスタ（Ｄ−ＦｌｉｐＦｌｏｐ）、２３，２４  マルチプレクサ、２５  逓倍回路（ＰＬＬ）。
【図１】
2004280426.tif 000003
【図２】
2004280426.tif 000004
【図３】
2004280426.tif 000005
【図４】
2004280426.tif 000006
【図５】
2004280426.tif 000007
【図６】
2004280426.tif 000008
【図７】
2004280426.tif 000009