(57)【特許請求の範囲】
【請求項１】
直列バウンダリースキャン検査データ入力／出力ポートを有し、前記直列バウンダリースキャン検査データ入力／出力ポートを使用して、メモリ装置と該メモリ装置とは別の装置であるその他の装置とのインタフェースとして機能する回路において、
正常モードの時に前記メモリ装置と該メモリ装置とは別の装置とのインタフェースをするコアロジックと、
検査モード選択信号を受信して、その信号に応じてレジスタ制御信号を発生するため、検査及びデバッギングモードの時に検査クロック信号に同期して動作する検査アクセスポート制御器と、
直列バウンダリースキャンデータ入力ポートを経て検査／デバッグ命令を受信して、その命令に応じてメモリアクセス制御信号を発生する命令レジスタと、
前記メモリアクセス制御信号を受信してその信号に応じてデバッグ制御信号を発生するデバッグ制御器と、
前記レジスタ制御信号と前記デバッグ制御信号とに応じて前記コアロジックと前記メモリ装置との間にアドレススキャン経路を提供するため、前記コアロジックと前記メモリ装置との間に配置されたアドレスバウンダリースキャンレジスタと、
前記レジスタ制御信号と前記デバッグ制御信号とに応じて前記コアロジックと前記メモリ装置との間にデータスキャン経路を提供するため、前記コアロジックと前記メモリ装置との間に配置されたデータバウンダリースキャンレジスタと
を含み、
前記アドレスバウンダリースキャンレジスタ及びデータバウンダリースキャンレジスタ各々は、セルからセルまでデイジーチェイン（ｄａｉｓｙ−ｃｈａｉｎ）接続された所定数のセルを有し、
前記メモリ装置は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）装置であり、
前記デバッギングモードの時に前記デバッグ制御器がメモリアクセス制御信号に応じてＤＲＡＭ制御信号を発生するものであり、
前記検査アクセスポート制御器が第１と第２クロック信号を発生し、前記命令レジスタが前記第１クロック信号に同期されて動作し、前記アドレスバウンダリースキャンレジスタ及びデータバウンダリースキャンレジスタが第２クロック信号に同期されて動作するものであり、
前記デバッグ制御器が前記ＤＲＡＭ装置を動作するために使われたＤＲＡＭクロック信号に同期されて動作するものであり、
前記デバッグ制御器が前記ＤＲＡＭ装置のＣＡＳレーテンシに依存する第３クロック信号を発生するものであり、
前記データバウンダリースキャンレジスタは、前記第２クロック信号に同期させて前記コアロジックからのデータを捕獲するとともに、前記第３クロック信号に同期させて前記ＤＲＡＭ装置から読み出されたデータを捕獲することを特徴とする回路。
【請求項２】
前記メモリアクセス制御信号に応じてＤＲＡＭ制御信号或いは前記コアロジックから提供されたその他のＤＲＡＭ制御信号を選択するマルチプレクサをさらに含むことを特徴とする請求項１に記載の回路。
【請求項３】
ＪＴＡＧ（Ｊｏｉｎｔ Ｔｅｓｔ Ａｃｃｅｓｓ Ｇｒｏｕｐ）回路によって、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）装置をその他の装置とインタフェースする方法において、
前記ＪＴＡＧ回路は、
検査モード選択信号を受信して、その信号に応じてレジスタ制御信号を発生するため、検査及びデバッギングモードの時に検査クロック信号に同期して動作する検査アクセスポート制御器と、
直列バウンダリースキャンデータ入力ポートを経てデバッグ命令を受信して、その命令に応じてメモリアクセス制御信号を発生する命令レジスタと、
前記メモリアクセス制御信号を受信してその信号に応じてデバッグ制御信号を発生するデバッグ制御器と、
前記レジスタ制御信号と前記デバッグ制御信号とに応じてコアロジックと前記メモリ装置との間にアドレススキャン経路を提供するため、前記コアロジックと前記メモリ装置との間に配置されたアドレスバウンダリースキャンレジスタと、
前記レジスタ制御信号と前記デバッグ制御信号とに応じて前記コアロジックと前記メモリ装置との間にデータスキャン経路を提供するため、前記コアロジックと前記メモリ装置との間に配置されたデータバウンダリースキャンレジスタと
を含み、
前記デバッグ制御器が、前記ＤＲＡＭ装置のリフレッシュモードの間に、前記デバッグ命令が前記ＪＴＡＧ回路に受信されたか否かをチェックする段階と、
前記デバッグ命令が受信された場合、前記デバッグ制御器が、前記ＤＲＡＭ装置の前記リフレッシュモードを終了させる段階と、
前記デバッグ制御器が、アドレスを前記ＪＴＡＧ回路からＤＲＡＭ装置にローディングさせるために、前記アドレスバウンダリースキャンレジスタを制御する段階と、
前記デバッグ制御器が、ＤＲＡＭ装置について読出動作モード或いは書込動作モードであるか否かをチェックする段階と、
前記デバッグ制御器が、前記動作モードに従い、前記ＤＲＡＭ装置にアクセスする段階と、
前記デバッグ制御器が、前記ＤＲＡＭ装置をプリチャージさせる段階と、
前記デバッグ制御器が、前記ＤＲＡＭ装置をリフレッシュモードに進入させる段階と、
前記デバッグ制御器が、デバッグエンド信号を出力する段階とを含み、
前記ＤＲＡＭ装置にアクセスする段階が、
前記デバッグ制御器が、読出動作モードの間にＤＲＡＭ装置のＣＡＳレーテンシに依存するクロック信号を発生する段階と、
前記デバッグ制御器が、ＤＲＡＭ装置からのデータを前記クロック信号に同期させて前記データバウンダリースキャンレジスタにローディングする段階とを含むことを特徴とするインタフェーシング方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般的に集積回路におけるデバッギング技術（ｄｅｂｕｇｇｉｎｇｔｅｃｈｉｑｕｅｓ）に関するものであり、より具体的には集積回路に信号を印加してその集積回路から信号を捕獲（ｃａｐｔｕｒｅ）する直列バウンダリースキャン検査ポート（ｓｅｉｒａｌ  ｂｏｕｎｄａｒｙ−ｓｃａｎ  ｔｅｓｔ  ｐｏｒｔ）を使用するメモリインタフェース装置に関するものである。
【０００２】
【従来の技術】
最近の進歩した集積回路検査技術は、ボードに取り付けられた集積回路チップをその場で（ｉｎ  ｓｉｔｕ）検査するＪＴＡＧ（Ｊｏｉｎｔ  Ｔｅｓｔ  Ａｃｔｉｏｎ  Ｇｒｏｕｐ）の使用にする技術である。この標準はＩＥＥＥ標準１１４９．１−１９９０定義された電気及び電子工学委員会（ｔｈｅ  Ｉｎｓｔｉｔｕｉｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）によって、規定されている。このＩＥＥＥ標準１１４９．１は本明細書で参照された”Ｔｈｅ  Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｐｏｒｔ  ａｎｄＢｏｕｎｄａｒｙ−Ｓｃａｎ  Ａｒｃｈｉｔｅｃｔｕｒｅ”（ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｓｏｃｉｅｔｙ  Ｐｒｅｓｓ。１９９０）に詳しく説明されている。
【０００３】
図１は（ＩＥＥＥ標準１１４９．１に基づいたＪＴＡＧ回路を有するメモリインタフェース装置を概略的に示す。符号２及び４はＪＴＡＧ回路を有するメモリインタフェースチップ及びＤＲＡＭチップを各々示している。ＪＴＡＧ回路は３つの部分、即ち、ＴＡＰ（Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｐｏｒｔ：検査アクセスポート）制御器１０と、命令レジスタ（ＩＲ：Ｉｎｓｕｔｒｕｃｔｉｏｎ  Ｒｅｇｉｓｔｅｒ）部２０と、バウンダリースキャンレジスタ（ｂｏｕｎｄａｒｙ−ｓｃａｎ  ｒｅｇｉｓｔｅｒ）或いはデータレジスタ（ＤＲ：ｄａｔａ  ｒｅｇｉｓｔｅｒ）部３０とに分かれる。
【０００４】
命令レジスタ部２０は命令レジスタ２１と、命令デコーダ２２と、マルチプレクサ２３とで構成される。バウンダリースキャンレジスタ部３０はバイパスレジスタ３２と、インタフェース装置チップ２の応用コアロジック３１を囲むバウンダリースキャンレジスタ３３と、マルチプレクサ３４とで構成される。図１に示したように、ＪＴＡＧ回路は３つの入力、即ち、検査クロックＴＣＫと、検査モード選択ＴＭＳと検査データインＴＤＩとを含む。付加的に、ＪＴＡＧ回路は１つの出力、即ち、ＴＤＯを含む。
【０００５】
ＪＴＡＧバウンダリースキャン検査には通常の応用ロジックを付加的に必要とし、各々集積回路は以下で詳しく説明するバウンダリースキャンセルとして公知された回路で製造される。
【０００６】
図２は図１のバウンダリースキャンレジスタのセルを示す。バウンダリースキャンセルは２つのマルチプレクサ５１と５４と、２つのフリップフロップ５２と５３、即ち、捕獲及び更新フリッププロップで構成される。バウンダリースキャンセルは、２つのデータ入力、即ち、正常データ入力ＮＤＩ及び直列データ入力ＳＤＩと、２つのデータ出力、即ち、正常データ出力ＮＤＯ及び直列データ出力ＳＤＯとを有する。バウンダリースキャンセルは応用ＩＣ検査データ入力ＴＤＩと検査データ出力ＴＤＯとの間にスキャン経路を形成するため相互接続される。各バウンダリースキャンセルは応用ロジックと集積回路の機能的入力及び出力ピンの中１つとの間に接続され、各機能的入力及び出力ピンはバウンダリセルの正常データ入力及び正常データ出力の別の１つに接続される。
【０００７】
正常のＩＣ動作の時は、入力及び出力信号は正常データ入力ＮＤＩから各バウンダリースキャンセルを経て正常データ出力ＮＤＯに自由に通過する。しかし、バウンダリー検査モードに入ると、ＩＣバウンダリは検査刺激が各バウンダリースキャンセル出力ＮＤＯに移ることができ、そこから印加されるように制御され、検査応答は捕獲することができ、検索するため外に移る。
【０００８】
図３は図１のＴＡＰ制御器１０の状態図を示す。ＴＣＫ入力によって駆動されるＴＡＰ制御器は図３の状態図に示したようにＴＭＰ入力に応じる。主状態図は６つの静的状態（ｓｔｅａｄｙ  ｓｔａｔｅ）即ち、Ｔｅｓｔ＿Ｌｏｇｉｃ＿Ｒｅｓｅｔと、Ｒｕｎ＿Ｔｅｓｔ／Ｉｄｌｅと、Ｓｈｉｆｔ＿ＤＲと、Ｐａｕｓｅ＿ＤＲと、Ｓｈｉｆｔ＿ＩＲと、Ｐａｕｓｅ＿ＩＲとで構成される。このプロトコル（ｐｒｏｔｏｃｏｌ）の特色はＴＭＳがハイでセットされた時、１つの静的状態即ち、Ｔｅｓｔ＿Ｌｏｇｉｃ＿Ｒｅｓｅｔ状態が条件として存在することであることである。これは検査ロジックのリセットがＴＭＳ入力ハイをセットすることによって５つ以下のＴＣＫ内で達成されることを意味する。
【０００９】
パワーアップ或いはホストＩＣの正常動作の間、ＴＡＰがＴＭＳハイを駆動及び５つ以上のＴＣＫを印加することによって、Ｔｅｓｔ＿Ｌｏｇｉｃ＿Ｒｅｓｅｔ状態になるようにする。この状態において、ＴＡＰはホストＩＣの正常動作を妨げない条件ですべての検査ロジックを配置するリセット信号を発する。検査アクセスが要求されるとき、プロトコルがＴＭＳ及びＴＣＫ入力を経て印加され、ＴＡＰがＴｅｓｔ＿Ｌｏｇｉｃ＿Ｒｅｓｅｔ状態から排出され適当な状態を通じて移動する。Ｒｕｎ＿Ｔｅｓｔ／Ｉｄｌｅ状態から命令レジスタスキャン或いはデータレジスタスキャンが図３に示した適切な状態を通じてＴＡＰを遷移させることができる。
【００１０】
データレジスタ及び命令レジスタスキャンカラムの状態は互いにミラーイメージ（ｍｉｒｒｏｒ  ｉｍａｇｅ）であり、プロトコル順次を対称的に付加する。あるブロックが進入されたとき発する第１作用は捕獲動作である。データレジスタにおいて、Ｃｐｔｕｒｅ＿ＤＲ状態はデータを選択された直列データ経路に捕獲（或いは並列ロード）するため使用される。ＢＳＲが選択された  データレジスタであると、正常データ入力（ＮＤＩ）がこの状態の間、捕獲される。命令レジスタにおいて、Ｃａｐｔｕｒｅ＿ＩＲ状態は状態情報を命令レジスタに捕獲するために使用される。
【００１１】
捕獲状態から、ＴＡＰはシフト或いは排出（Ｅｘｉｔ）１に遷移する。通常的に、シフト状態は検査データ或いは状態情報が検索するためシフトアウトされることができ、新たなデータをシフトインするため捕獲状態以後に行われる。シフト状態以後に、ＴＡＰは排出１及び更新状態を経てＲｕｎ＿Ｔｅｓｔ／Ｉｄｌｅ状態に複帰或いは排出１を経て休止状態に入る。休止状態に入る理由は検査メモリバッファを再充槙する動作のような要求された動作を遂行させる間に一時的に休止させるためである。休止状態から、シフティングは排出２を経てシフト状態に再び入ることによって再開するか或いは排出２を経てＲｕｎ＿Ｔｅｓｔ／Ｉｄｌｅ状態又は排出２を経て更新状態に入ることによって、終了する。
【００１２】
データレジスタスキャン或いは命令レジスタスキャンカラムに入るとき、選択されたスキャン経路にシフトされたデータはＴＡＰが更新＿ＤＲ或いは更新＿ＩＲ状態に入るまで出力しない更新状態において、選択されたスキャン経路にシフトされた新たなデータは更新される。
【００１３】
最近のバウンダリースキャン検査技術の例は、Ｊａｒｗａｌａ等が発明した”Ｍｅｔｈｏｄ  Ａｎｄ  Ａｐｐａｒａｔｕｓ  Ｆｏｒ  Ｃｉｒｃｕｉｔ  Ｂｏａｒｄ”という名称のＵ．Ｓ．Ｐａｔ．Ｎｏ．５，０２９，１６６と、Ｊａｒｗａｌａ等によって発明された”Ｍｅｔｈｏｄ  Ａｎｄ  Ａｐｐａｒａｔｕｓ  Ｆｏｒ  Ｄａｔａ  Ｔｒａｎｓｆｅｒ  Ｔｏ  Ａｎｄ  Ｆｒｏｍ  Ｄｅｖｉｃｅ  Ｔｈｒｏｕｇｈ  Ａ  Ｂｏｕｎｄａｒｙ−ｓｃａｎ  Ｔｅｓｔ  Ｐｏｒｔ”という名称のＵ．Ｓ．Ｐａｔ．Ｎｏ．５，１５５，７３２と、Ｇｒｅｅｎｂｅｒｇｅｒ等によって発明された  ”Ｈｉｇｈ−Ｓｐｅｅｄ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  Ｔｅｓｔｉｎｇ  Ｗｉｔｈ  ＪＴＡＧ”という名称のＵ．Ｓ．Ｐａｔ．Ｎｏ．５，３５５，３６９と、Ｓｅｇａｒｓによって発明された  ”Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  Ｔｅｓｔ  Ｍｅｃｈａｎｉｓｍ  Ａｎｄ  Ｍｅｔｈｏｄ”という名称の  Ｕ．Ｓ．Ｐａｔ．Ｎｏ．５，６３６，２２７とに開示されており、これらは本発明で参考文献として使用した。
【００１４】
ところで、プログラムはデバッギング動作の間にエラー或いは誤作動をチェックしなければならないプログラムトレーシング（ｔｒａｃｉｎｇ）はマイクロプロセッサーによって実行された命令ストリームを示しているプログラミングデバッギングの技術において広く使われている。遂行された命令ストリームを試験することによって、プログラマーは、応用ハードウェア及びソフトウェアが適切に実行されるか否かを決定する。ハードウェア及びソフトウェアの誤動作が検出された時、プログラマーはその誤動作の発生原因を明らかにするためのすべてのアドレスを連続的に記録する。
【００１５】
この記録は内部バースを直接的にモニタリングすること或いは後続出力及びチェックするためのそのアドレスを一時的にロギング（ｌｏｇｇｉｎｇ）することによって行なわれる。時に、その過程は段階ー段階毎に行われるため、多くの時間が必要であり、大量の付加的なマイクロプロセッサーピンを通じる過度な外部接近性を要求する。その２つの方法は共にコストがかかる。加えて、膨大なデータの側面からも実時間（ｒｅａｌ  ｔｉｍｅ）でモニタリングすることが非常に難しい。従って、ＪＴＡＧ構成がデバッギングに適用された場合には非常に便利である。しかしながら、検査クロックＴＣＫによってクロックされたＪＴＡＧ回路によってメモリ装置をアクセスする時のタイミングの制限が多く存在する。
【００１６】
【発明が解決しようとする課題】
本発明の目的はデバッギングモードにおいて直列バウンダリースキャン検査アクセスポートを使用することによって、メモリ装置と他の装置とをインタフェースする集積回路及び方法を提供してデバッギングの便利さを多く増加させることである。
【００１７】
本発明の他の目的は最少ハードウェアを有するＪＴＡＧメモリインタフェース回路及びデバッギングするときダイナミックランダムアクセスメモリ装置を効果的にアクセスする方法を提供することである。
【００１８】
本発明のその目的、長所と特徴はメモリアクセス制御信号、（例えば、ＤＲＡＭ＿ｄｅｂｕｇ、Ｒ＿ｗｂａｒ、Ｃｏｌ＿ａｄｄｒ＿ｌｏａｄ、Ｂｓｒ＿ｍｏｄｅ）に応じて、デバッグ制御信号（例えば、Ｗ＿ｍｏｄｅ及びＣｏｌ＿ｕｐｄｒ）を発生するデバッグ制御器と、個別アドレス及びデータバウンダリースキャンレジスタとを含む集積回路メモリインタフェース装置によって提供される。各々のアドレス及びデータバウンダリースキャンレジスタはセルからセルまでデイジーチェイン（ｄａｉｓｙ−ｃｈａｉｎ）接続された所定数のセルを有する。アドレス及びデータレジスタは正常動作の間にメモリ装置とその装置に関連して正常動作を遂行するコアロジックとの間に配置される。
【００１９】
付加的に、インタフェース装置は検査及びデバッギングモードの間に検査クロック信号ＴＣＫに同期されて動作する検査アクセスポート（ＴＡＰ）及び命令レジスタを含む。ＴＡＰ制御器は検査モード選択信号（ＴＭＳ）を受信して検査クロック選択信号に応じてレジスタ制御信号（例えば、Ｕｐｄａｔｅｉｒ、Ｓｆｈｉｆｔｉｒ、及びＳｈｉｆｔｄｒ）を発生する。命令レジスタは直列バウンダリースキャン検査入力ポートを経て検査／デバッグ命令を受信して、その検査／デバッグ命令に応じてメモリアクセス制御信号（例えば、ＤＲＡＭ＿ｄｅｂｕｇ、Ｒ＿ｗｂａｒ、Ｃｏｌ＿ａｄｄｒ＿ｌｏａｄ、Ｂｓｒ＿ｍｏｄｅ）を発生する。アドレスバウンダリースキャンレジスタはレジスタ制御信号及びデバッグ制御信号両方に応じてメモリ装置とコアロジックとの間にアドレススキャン経路を提供する。データバウンダリースキャンレジスタはレジスタ制御信号及びデバッグ制御信号両方に応じてメモリ装置とコアロジックとの間にデータスキャン経路を提供する。
【００２０】
【課題を解決するための手段】
上述した目的を達成するための本発明の特徴によると、デバッグ制御器はデバッギングモードの間にメモリアクセス制御信号に応じてＤＲＡＭ制御信号を発生する。加えて、インタフェース回路はメモリアクセス制御信号のうち所定の１つの信号に応答してＤＲＡＭ制御信号或いはコアロジックから提供された他のＤＲＡＭ制御信号を選択するマルチプレクサを加えて含む。ＴＡＰ制御器は２つのクロック信号（Ｃｌｏｃｋｉｒ及びＣｌｏｃｋｄｒ）を発生する。命令レジスタは１つの信号、即ち、Ｃｌｏｃｋｉｒによってクロックされ、アドレス及びデータバウンダリースキャンレジスタは他の信号、即ち、Ｃｌｏｃｋｄｒによってクロックされる。
【００２１】
特に、デバッグ制御器はＤＲＡＭ装置を動作するため使用されたＤＲＡＭクロック信号（例えば、ＤＲＡＭ＿ｃｌｋ）に同期されて動作して、ＤＲＡＭ装置のＣＡＳレーテンシ（ｌａｔｅｎｃｙ）に依存する他のクロック信号（例えば、Ｄｉｎ＿ｃａｐ＿ｃｌｋ）を発生する。データバウンダリースキャンレジスタはクロック信号Ｃｌｏｃｋｄｒに同期されてコアロジックからデータ及び第３クロック信号（Ｄｉｎ＿ｃａｐ＿ｃｌｋ）に同期されてＤＲＡＭ装置からのデータを捕獲する。
【００２２】
本発明のその他の特徴とすると、ＤＲＡＭ装置をＪＴＡＧ（Ｊｏｉｎｔ  Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｇｒｏｕｐ）回路によってＤＲＡＭ装置と他の装置をインタフェースする方法が提供される。この方法はＤＲＡＭ装置のリフレッシュモードの間にＪＴＡＧ回路からデバッグ命令が付与されたのか否かをチェックする。デバッグ命令が付与された場合、ＤＲＡＭ装置はリフレッシュモードを終了させて、ＪＴＡＧ回路からのアドレスはＤＲＡＭ装置にローディングする。その後、ＤＲＡＭ装置が読出動作或いは書込動作であるか否かをチェックする。ＤＲＡＭ装置が前記動作モードに従いＤＲＡＭ装置はアドレスさせて、ＤＲＡＭ装置をプリチャージさせる。その後、ＤＲＡＭ装置はリフレッシュモードに進入させて、デバッグエンド信号をＪＴＡＧ回路に提供する。読出動作モードの間にクロック信号（例えば、Ｄｉｎ＿ｃａｐ＿ｃｌｋ）がＤＲＡＭ装置のＣＡＳレーテンシに依存して発生し、ＤＲＡＭ装置からのデータはクロック信号に同期してＪＴＡＧ回路にローディングする。
【００２３】
【発明の実施の形態】
以下では、添付された図面を参照しながら、本発明の実施形態に対して詳細に説明する。
【００２４】
図４には（ＩＥＥＥ標準１１４９．１に基づいた）ＪＴＡＧポートを有する、本発明の実施形態によるデバッギングを支援するメモリインタフェース装置を示し、図５は図４のデバッグ制御器と、バウンダリースキャンアドレスと、データバウンダリースキャンレジスタを示すブロック図である。
【００２５】
図４及び５を参考すると、参照番号４０と８０はＪＴＡＧ回路を備えるメモリインタフェースチップとＤＲＡＭチップを各々示している。ＪＴＡＧ回路は４つの部分、即ち、ＴＡＰ制御器１００と、命令レジスタ（ＩＲ）部２００と、バウンダリースキャンレジスタ（ＢＳＲ）或いはデータレジスタ（ＤＲ）部３００と、デバッグ制御器４００とに分ける。
【００２６】
命令レジスタ（ＩＲ）部２００は命令レジスタ２１０と、命令デコーダ２２０と、マルチプレクサ２３０とで構成される。バウンダリースキャンレジスタ部３００はバイパスレジスタ３２０と、インタフェース装置チップ４０の応用コアロジック３１０を囲むバウンダリースキャンレジスタ３３０と、マルチプレクサ３４０とで構成される。バウンダリースキャンレジスタ３３０は３つの個別レジスタ、即ち、データレジスタ３３２と、アドレスレジスタ３３４と、制御レジスタ３３６とで構成される。
【００２７】
図４に示したように、ＪＴＡＧ回路は３つの入力、即ち、検査クロックＴＣＫと、検査モード選択ＴＭＳと、検査データインＴＤＩとを含む。付加的に、ＪＴＡＧ回路は１つの出力、即ち、ＴＤＯを含む。ＪＴＡＧ回路は選択入力と、図面には図示しなかったが、検査リセットＴＲＳＴＮとを付加的に含むこともできる。
【００２８】
ＴＤＩとＴＤＯはチップからチップまでデイジーチェイン接続される、ここで、ＴＣＫとＴＭＳは放送（ｂｒｏａｄｃａｓｔ）する。ＴＣＫ入力はチップにおけるシステムクロックに無関係であるから、検査動作は異なるチップとの間で同期することができる。ＴＤＩとＴＤＯは各々直列データ入力と出力であり、ＴＲＳＴＮは公知された状態にチップ或は回路を初期化されるために使われる。ＪＴＡＧ検査は動作性を検証するため適切に構成された集積回路を検査するため使われる。
【００２９】
ＴＡＰ制御器１００は検査及びデバッギングの間に検査クロック信号ＴＣＫに同期し、２つのクロック信号Ｃｌｏｃｋｉｒ及びＣｌｏｃｋｄｒを発生する。付加的に、ＴＡＰ制御器１００は検査モード選択信号ＴＭＳを受信して、検査クロック信号及び検査モード選択信号ＴＭＳに応じてレジスタ制御信号Ｕｐｄａｔｅｉｒ、Ｓｈｉｆｔｉｒ，Ｕｐｄａｔｅｄｒ、Ｓｈｉｆｔｄｒを発生する。
【００３０】
命令レジスタ２１０はＴＡＰ制御器１００から提供されたクロック信号Ｃｌｏｃｋｉｒにクロックされる。命令レジスタ２１０は直列バウンダリースキャン検査データ入力ポートＴＤＩを経て検査／デバッグ命令を受信して検査／デバッグ命令に応じてメモリアクセス制御信号ＤＲＡＭ＿ｄｅｂｕｇ、Ｒ＿ｗｂａｒ、Ｃｏｌ＿ａｄｄｒ＿ｌｏａｄ、Ｂｓｒ＿ｍｏｄｅを発生する。
【００３１】
データ、アドレス及び制御バウンダリースキャンレジスタ３３２と、アドレスレジスタ３３４と、制御レジスタ３３６はクロック信号Ｃｌｏｃｋｄｒにクロックされる。各々のバウンダリースキャンレジスタ３３２、アドレスレジスタ３３４、制御レジスタ３３６はセルからセルまでデイジーチェイン接続された所定数のセルを有する。レジスタ３３２、アドレスレジスタ３３４、制御レジスタ３３６はメモリ装置８０とコアロジック３１０との間に配置される。コアロジック３１０は正常モードの間にボード上の装置に関連して正常インタフェース動作を遂行する。データバウンダリースキャンレジスタ３３２はクロック信号Ｃｌｏｃｋｄｒに同期してコアロジック３１０からデータを捕獲する。
【００３２】
レジスタを通じてデータを直列にシフトするとき、時間を節約するため、時に、あるチップをスキップ（ｓｋｉｐ）する長所がある。バイパスレジスタ３２０はＴＤＩとＴＤＯとの間にシングル−ビットスキャン経路を提供する。したがって、バイパスレジスタ３２０は検査時に含まれていなかった装置を通じてスキャン経路を略する。バイパスレジスタ３２０は命令レジスタがＩＥＥＥ標準１１４９．１ＢＹＰＡＳＳ命令要件を満たすためすべてのパターンでロードされる。ＢＹＰＡＳＳ命令は命令レジスタ２１０にロードされ、ＴＡＰがＳｈｉｆｔ＿ＤＲ状態に配置されるとき、バイパスレジスタ３２０はＴＤＩとＴＤＯとの間に配置される。ＢＹＰＡＳＳ命令の長所は、多重装置がボード上に相互接続された時に、バウンダリースキャン経路が短いことである。
【００３３】
図５に示したように、デバッグ制御器４００はデバッグ制御ロジック４１０とマルチプレクサ４２０で構成される。デバッグ制御ロジック４１０はＤＲＡＭ装置を動作させるため使われるＤＲＡＭクロック信号ＤＲＡＭ＿ｃｌｋに同期して動作する。デバッグ制御ロジック４１０はデバッグモードの間にメモリアクセス制御信号ＤＲＡＭ＿ｄｅｂｕｇ、Ｒ＿ｗｂａｒ、Ｃｏｌ＿ａｄｄｒ＿ｌｏａｄに応じて、ＤＲＡＭ制御信号ＤＲＡＭ＿ｃｏｎｔｒｏｌｓ（例えば、出力イネーブル信号、チップ選択信号）及びデバッグ制御信号Ｗ＿ｍｏｄｅ及びこｌ＿ａｄｄｒ＿ｌｏａｄを発生する。
【００３４】
マルチプレクサ４２０は信号Ｃｏｌ＿ａｄｄｒ＿ｌｏａｄに応じてＤＲＡＭ制御信号ＤＲＡＭ＿ｃｏｎｔｒｏｌｓ或はコアロジック３１０から提供されたその他のＤＲＡＭ制御信号Ｆ＿ｃｏｒｅ＿ｃｏｎｔｒｏｌｓを選択する。データバウンダリースキャンレジスタ３３２はレジスタ制御信号Ｕｐｄａｔｅｉｒ，Ｓｈｉｆｔｉｒ，Ｕｐｄａｔｅｄｒと、Ｓｈｉｆｔｄｒ及びデバッグ制御信号Ｗ＿ｍｏｄｅとＣｏｌ＿ａｄｄｒ＿ｕｐｄｒ両方に応じてメモリ装置８０とコアロジック３１０との間にデータスキャン経路を提供する。
【００３５】
アドレスバウンダリースキャンレジスタ３３４はレジスタ制御信号Ｕｐｄａｔｅｉｒ，Ｓｈｉｆｔｉｒ，Ｕｐｄａｔｅｄｒと、Ｓｈｉｆｔｄｒ及びデバッグ制御信号Ｗ＿ｍｏｄｅとＣｏｌ＿ａｄｄｒ＿ｕｐｄｒ両方に応じてメモリ装置８０とコアロジック３１０との間にアドレススキャン経路を提供する。付加的に、デバッグ制御ロジック４１０はＤＲＡＭ装置８０のＣＡＳレーテンシに依存してクロック信号Ｄｉｎ＿ｃａｐ＿ｃｌｋを発生する。データバウンダリースキャンレジスタ３３２はクロック信号Ｄｉｎ＿ｃａｐ＿ｃｌｋに同期されてＤＲＡＭ装置８０からデータを捕獲する。制御バウンダリースキャンレジスタ３３６は検査モードの間にＤＲＡＭ装置８０とコアロジック３１０との間に制御信号経路を提供するため使われる。
【００３６】
図６は図５のデータバウンダリースキャンレジスタ３３２の詳細回路構成を示す。データバウンダリースキャンレジスタ３３２の１端は両方向性データバースピンＭＰＩＮ＿ｄａｔａ〔０〕−〔１５〕に結合され、その他の端はデータバースピンＦ＿ｃｏｒｅ＿ ｄａｔａ〔０〕−〔１５〕及び／或はコアロジック３１０のＴ＿ｃｏｒｅ＿ ｄａｔａ及び更新に結合される。データバウンダリースキャンレジスタ３３２は入力セルＤＣＡ１−１６及び出力セルＤＣＢ１−１６を有する。
【００３７】
各セルは２つの入力と出力マルチプレックサＡＩｉ（或はＢＩｉ）及びＡＯｉ（或はＢＯｉ）と、２つの捕獲及び更新フリップフロップＡＣｉ（或はＢＣｉ）及びＡＵｉ（或はＢＵｉ）（ここで、ｉ＝１，２，．．．，或は１６）で構成される。各捕獲フリップフロップはその直列出力信号として次のバウンダリースキャンセル内に入力マルチプレクサに提供する。マルチプレクサＢＯ１−１６は３状バッファＢＦ１−１６を経てＤＲＡＭデータバースピンＭＰＩＮ＿ｄａｔａ〔０〕−〔１５〕に結合される。
【００３８】
各入力セルＤＣＡｉの捕獲フリップフロップＡＣｉはＴＡＰ制御器１００から提供されたクロック信号Ｃｌｏｃｋｄｒ或はデバッグ制御ロジック４１０から提供されたクロック信号Ｄｉｎ＿ｃａｐ＿ｃｌｋ（或はＣａｐ＿ｃｌｋ）にクロックされ、更新フリップフロップＡＵｉは命令レジスタ２１０からの制御信号Ｕｐｄａｔｅｄｒにクロックされる。各出力セルＤＣＢｉの捕獲フリップフロップＢＣｉはＴＡＰ制御器１００から提供されたクロック信号Ｃｌｏｃｋｄｒにクロックされ、更新フリップフロップＢＵｉは命令レジスタ２１０からの制御信号Ｕｐｄａｔｅｄｒにクロックされる。
【００３９】
命令レジスタ２１０によって発生されたＤＲＡＭデバッグイネーブル信号ＤＲＡＭ＿ｄｅｂｕｇ及びバウンダリースキャンレジスタイネーブル信号Ｂｓｒ＿ｍｏｄｅはＯＲロジックゲート６０の入力に供給される。ＴＡＰ制御器１００からの信号Ｃｌｏｃｋｄｒ及びデバッグ制御ロジック４１０からのクロック信号Ｄｉｎ＿ｃａｐ＿ｃｌｋ（或はＣａｐ＿ｃｌｋ）はマルチプレクサ６２に提供される。マルチプレクサ６２はＤＲＡＭデバッグイネーブル信号ＤＲＡＭ＿ｄｅｂｕｇによって制御される。
【００４０】
書込制御信号Ｆ＿ｃｏｒｅ＿ｗｒｉｔｅ及びデバッグ制御ロジック４１０からのデバッグ書込モード信号Ｄｅｂｕｇ＿ｗｒｉｔｅ（或はＷ＿ｍｏｄｅ）はマルチプレクサ６４に提供される。このマルチプレクサ６４はＤＲＡＭデバッグイネーブル信号ＤＲＡＭ＿ｄｅｂｕｇによって提供される。マルチプレクサＡＩ１−ＡＩ１６及びＢＩ１ーＢＩ１６はＴＡＰ制御器１００から提供されたシフト選択信号Ｓｈｉｆｔｄｒによって制御される。マルチプレクサＡＯ１−ＡＯ１６及びＢＯ１−ＢＯ１６はＯＲロジックゲート６０の出力によって制御される。３状バッファＢＦ１−ＢＦ１６はマルチプレクサ６４の出力によって制御される。
【００４１】
信号ＤＲＡＭ＿ｄｅｂｕｇが活性化され、信号Ｄｅｂｕｇ＿ｗｒｉｔｅが非活性化されるとき、ＤＲＡＭ装置８０から出力されたデータ信号はＤＲＡＭ装置８０のＣＡＳレーテンシに基づいてデバッグ制御器４００によって発生されたクロック信号Ｄｉｎ＿ｃａｐ＿ｃｌｋに同期されて、対応する捕獲フリップフロップにロードされる。したがって、ＤＲＡＭデータは検査クロック信号ＴＣＫに同期されて、外部（例えば、ホストデバッグコンピュータ）にＴＤＯを経て出力され、ＤＲＡＭデータがＪＴＡＧ検査回路の外部にスキャンさせる。信号Ｕｐｄａｔｅｄｒが活性される場合、更新フリップフロップはクロック信号Ｃｌｏｃｋｄｒに同期されて捕獲フリップフロップの出力を更新する。
【００４２】
図７は図５のアドレスバウンダリースキャンレジスタ３３４の詳細な回路構成を示す。アドレスバウンダリースキャンレジスタ３３４の１端はＤＲＡＭ装置８０のアドレスバースピンＭＰＩＮ＿Ａｄｄｒ〔０〕−〔９〕に結合され、その他の１端はコアロジック３１０のデータパスピンＦ＿ｃｏｒｅ＿ａｄｄｒ〔０〕−〔９〕に結合される。アドレスバウンダリースキャンレジスタ３３４は２つの入力及び出力マルチプレクサＭＩｉ及びＭＯｉで構成された１０つセルＡＣＬ１−１０と、２つの捕獲及び更新フリップフロップＦＣｉ及びＦＵｉ（ここで、ｉ＝１，２，．．．，或は１０）を含む。各捕獲フリップフロップの出力はその直列出力信号として次のバウンダリースキャンセル上の入力マルチプレクサに提供する。全てのマルチプレクサＭＩ１−１０はＴＡＰ制御器１００からの信号Ｓｈｉｆｔｄｒによって制御される。
【００４３】
アドレスバウンダリースキャンレジスタ３３４はインバータ７０と、ＡＮＤロジックゲート７２と、マルチプレクサ７４と、ＯＲロジックゲート７６とを有する。インバータ７０は命令レジスタ２１０から提供された信号Ｃｏｌ＿ａｄｄｒ＿ｌｏａｄ（或はＵｐｄｒ＿ｄｉｓａｂｌｅ）を供給される。ＡＮＤロジックゲート７２はインバータ７０の出力及びＴＡＰ制御器１００からの信号Ｕｐｄａｔｅｄｒを供給する。ＡＮＤロジックゲート７２の出力及びデバッグ制御ロジック４１０によって発生された信号信号Ｃｏｌ＿ａｄｄｒ＿ｕｐｄｒはマルチプレクサ７４に与える。ＯＲロジックゲート７６は命令レジスタ２１０から信号Ｂｓｒ＿ｍｏｄｅ及びＤＲＡＭ＿ｄｅｂｕｇに提供される。マルチプレクサ７４及び出力マルチプレクサＭＯ１−１０はＯＲロジックゲート７６の出力によって制御される。
【００４４】
各バウンダリースキャンセルＡＣＬｉの捕獲フリップフロップＦＣｉはＴＡＰ制御器１００から提供されたクロック信号Ｃｌｏｃｋｄｒにクロックされ、更新フリップフロップＦＵｉはマルチプレクサ７４の出力にクロックされる。
【００４５】
典型的なＤＲＡＭ装置においては、アドレシングマルチプレクシング方法は同一アドレスラインがローアドレスストロブ信号及びカラムアドレスストロブ信号によって制御されるところにおいてチップサイズを減少させるため使われる。したがって、同一アドレスラインはシングル読出／書込動作に対するローアドレス及びカラムアドレス両方に入力するため使用される。このようなマルチプレスされたアドレシングを有するＤＲＡＭ装置はローアドレス及びカラムアドレス順序に提供される。
【００４６】
信号Ｕｐｄｒ＿ｄｉｓａｂｌｅが非活性化（論理値＝０）されるときローアドレスは信号Ｕｐｄａｔｅｄｒに同期して更新レジスタにロードされる。信号Ｕｐｄｒ＿ｄｉｓａｂｌｅが活性化（論理値＝１）される場合、クロック信号Ｃｌｏｃｋｄｒに同期して捕獲フリップフロップＦＣｉにロードされ、ローアドレスは更新フリップフロップＦＵｉに維持される。ＤＲＡＭアクセスが開始された後、信号Ｃｏｌ＿ａｄｄｒ＿ｕｐｄｒは活性されるため、カラムアドレスは更新プリッププロップＦＵｉに移動する。
【００４７】
ＤＲＡＭ装置は本発明によるメモリインタフェース方法を通じてアドレスされることができる。
１．ローアドレスをロード：
−  バウンダリースキャンレジスタイネブールコードを命令レジスタにロードする。
−  ローアドレスをアドレスバウナダリースキャンレジスタにロードする。
２．カラムアドレス及びデータをロード：
−  カラムアドレスロードコードを命令レジスタにロードする。
−  カラムアドレスをアドレスバウンダリースキャンレジスタをロードする。
３．ＤＲＡＭアクセスを開始：
−  ＤＲＡＭ読出／書込モード及びＤＲＡＭデバッグイネブールコードを命令レジスタにロードする。
４．ＤＲＡＭアクセスの終了をモニタ：
−  ＤＲＡＭ＿ｄｅｂｕｇ＿ｄｏｎｅが活性化されるかをチェックする。
５．データを読出：
−  デバッグ終了信号ＤＲＡＭ＿ｄｅｂｕｇ＿ｄｏｎｅ活性化される時バウンダリースキャンレジスタイネブールコードを命令レジスタにロードする。
−  ＪＴＡＧ回路から検査データ出力ポートＴＤＯを経て検査データを読出す。
【００４８】
【発明の効果】
上述したように、デバッグ制御器４００は命令レジスタ２１０の命令セットに依存するＤＲＡＭクロック信号ＤＲＡＭ＿ｃｌｋに同期してＤＲＡＭ制御信号を発生する。ＤＲＡＭデバッグはＤＲＡＭ装置８０のリフレッシュ動作から開始される。まず、デバッグ制御器４００はデバッグ命令がＤＲＡＭ装置８０のリフレッシュモードの間にＪＴＡＧ回路から付与されたのかをチェックする。付与された場合、制御器４００はＤＲＡＭ装置をリフレッシュモードから排出させる。制御器４００はＪＴＡＧ回路ロー及びカラムアドレスをロードするためアドレスバウンダリースキャンレジスタ３３４を制御する。制御器４００はＤＲＡＭ装置の読出動作或いは書込動作がアドレスされたのかをチェックする。動作モードに依存すると、制御器４００はアドレスされるＤＲＡＭ装置８０を制御する。このとき、信号Ｒ＿ｗｂａｒが活性（ロジック高）される場合、制御器４００はＤＲＡＭ装置８０のＣＡＳレーテンシに依存するデータバウンダリースキャンレジスタ３３２にデータをロードするためクロック信号Ｄｉｎ＿ｃａｐ＿ｃｌｋを発生する。その後、制御器４００はプリチャージさせ、再びリフレッシュモードに進入させるためＤＲＡＭ装置８０を制御する。ＤＲＡＭ装置８０がリフレッシュモードに維持されるとき、制御器４００はデバッグ終了信号ＤＲＡＭ＿ｄｅｂｕｇ＿ｄｏｎｅをＪＴＡＧ回路に提供する。プログラマー或いはソフトウェアエンジニアはデバッグ終了信号ＤＲＡＭ＿ｄｅｂｕｇ＿ｄｏｎｅが活性化されるとき、ＪＴＡＧ回路から検査出力ポートＴＤＯを経て検査データを読出すことができる。
【図面の簡単な説明】
【図１】  ＩＥＥＥ標準１１４９．１に基づいて典型的ＪＴＡＧ設計を示す概略図である。
【図２】  図１のバウンダリースキャンレジスタのセルの回路図である。
【図３】  図１のＴＡＰ制御器状態図である。
【図４】  本発明の実施形態によるＪＴＡＧデバッグ支援メモリインタフェース装置の実施の形態である。
【図５】  図４のデバッグ制御器及びデータ及びアドレスバウンダリースキャンレジスタを示すブロック図である。
【図６】  図５のデータバウンダリースキャンレジスタの詳細回路図である。
【図７】  図５のデータバウンダリースキャンレジスタの詳細回路図である。
【符号の説明】
４０：メモリインタフェースチップ
８０：ＤＲＡＭチップ
１００：ＴＡＰポート制御器
２００：命令レジスタ部
２１０：命令レジスタ
２２０：命令デコーダ
２３０：マルチプレクサ
３００：バウンダリースキャンレジスタ或いはデータレジスタ部
３１０：応用コアロジック
３２０：バイパスレジスタ
３３０：バウンダリースキャンレジスタ
３３２：デ−タレジスタ
３３４：アドレスレジスタ
３３６：制御レジスタ
４００：デバッグ制御器
【図１】
0004515545.tif 000002
【図２】
0004515545.tif 000003
【図３】
0004515545.tif 000004
【図４】
0004515545.tif 000005
【図５】
0004515545.tif 000006
【図６】
0004515545.tif 000007
【図７】
0004515545.tif 000008