JP3672162B2 - 半導体集積回路装置 - Google Patents

半導体集積回路装置 Download PDF

Info

Publication number
JP3672162B2
JP3672162B2 JP18170198A JP18170198A JP3672162B2 JP 3672162 B2 JP3672162 B2 JP 3672162B2 JP 18170198 A JP18170198 A JP 18170198A JP 18170198 A JP18170198 A JP 18170198A JP 3672162 B2 JP3672162 B2 JP 3672162B2
Authority
JP
Japan
Prior art keywords
clock signal
signal
data
register
control circuit
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.)
Expired - Fee Related
Application number
JP18170198A
Other languages
English (en)
Other versions
JP2000020339A (ja
Inventor
みどり 長山
敬 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP18170198A priority Critical patent/JP3672162B2/ja
Publication of JP2000020339A publication Critical patent/JP2000020339A/ja
Application granted granted Critical
Publication of JP3672162B2 publication Critical patent/JP3672162B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Microcomputers (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は半導体集積回路装置に関し、例えば、データレートの異なる二つのバスに結合されたエミュレーションユニットを内蔵するマイクロコントローラ等ならびにその動作の高速化に利用して特に有効な技術に関する。
【0002】
【従来の技術】
IEEE(Institute of Electrical and Electronics Engneers)のJTAG(Joint Test Action Group)仕様のバスを介して外部のエミュレータに結合されるエミュレーションユニットを内蔵するマイクロコントローラ等の半導体集積回路装置がある。エミュレーションユニットは、その他方でマイクロコントローラの周辺バスPBに結合され、周辺バスPBに結合される所定の内部回路とJTAGバスに結合されるエミュレータとの間のデータ授受を仲介する。
【0003】
【発明が解決しようとする課題】
本願発明者等は、この発明に先立って、エミュレーションユニットを備えるマイクロコントローラに関し、次の問題点に気付いた。すなわち、マイクロコントローラのエミュレーションユニットは、例えば図8に例示されるように、データレジスタSDDRH及びSDDRLに代表されるいくつかのレジスタと、周辺バスPBを介して入力されるデータPBIDあるいはJTAGバスからシフトレジスタSRを介して入力されるデータSRIH又はSRILをセレクタ制御信号SLCに従ってそれぞれ選択的にデータレジスタSDDRH又はSDDRLに伝達するデータセレクタDSLH及びDSLLとを含む。
【0004】
このマイクロコントローラにおいて、周辺バスPBは、図9に例示されるように、比較的高い周波数とされるクロック信号PCLKの周期をその実質的なバスサイクルとして、データを例えば16ビット単位でパラレルに伝達する。また、図示されない周辺バスコントローラは、コマンドのデコード結果として処理要求信号PREQをハイレベルのような有効レベルとし、周辺バスPBを介して入力されたデータPBIDをデータレジスタSDDRH及びSDDRLに取り込むよう要求する。処理要求信号PREQは、クロック信号PCLKに従ってレジスタ制御回路REGCのラッチLPRQに取り込まれた後、そのセレクタ制御回路SELCに伝達され、これを受けて上記セレクタ制御信号SLCが例えばロウレベルとされる。この結果、周辺バスPBを介して入力されるデータPBIDは、データセレクタDSLH及びDSLLを介してデータレジスタSDDRH及びSDDRLに伝達され、クロック信号PCLKに従って取り込まれた後、内部出力データSROH及びSROLとしてシフトレジスタSRに伝達される。
【0005】
一方、マイクロコントローラの図示されないJTAGバスは、比較的低い周波数のクロック信号TCLKの周期をその実質的なバスサイクルとして、外部のエミュレータとの間でデータをシリアルに伝達する。マイクロコントローラの図示されないシフトレジスタSRは、シリアル入力されるデータを32ビット単位で直並列変換し、入力データSRIH及びSRHRとしてデータセレクタDSLH及びDSLLに伝達する。また、図示されないTAPコントローラは、シフトレジスタSRに32ビットのデータが蓄積された時点で処理要求信号TREQをハイレベルのような有効レベルとすることで、入力データSRIH及びSRILをデータレジスタSDDRH及びSDDRHに取り込むよう要求する。
【0006】
処理要求信号TREQは、まずクロック信号TCLKの次の立ち上がりを受けてレジスタ制御回路REGCのラッチLTRQ1に取り込まれた後、クロック信号PCLKに従ってラッチLTRQ2に取り込まれ、同期化される。そして、レジスタ制御回路REGCのセレクタ制御回路SELCに伝達され、これを受けて上記セレクタ制御信号SLCが例えばハイレベルとされる。この結果、シフトレジスタSRを介して入力されるデータSRIH及びSRILは、データセレクタDSLH及びDSLLを介してデータレジスタSDDRH及びSDDRLに伝達され、クロック信号PCLKに従って取り込まれた後、マルチプレクサMXを経て内部出力データPBODとして周辺バスPBに伝達される。
【0007】
つまり上記マイクロコントローラでは、図示されないTAPコントローラによりクロック信号TCLKに従って生成される処理要求信号TREQが、まず比較的離れて配置されるTAPコントローラ及びレジスタ制御回路REGC間の遅延時間を補正すべくもとのクロック信号TCLKに従ってラッチLTRQ1に取り込まれた後、エミュレーションユニットEMUの基本クロックたるクロック信号PCLKに従ってラッチLTRQ2に取り込まれ、同期化される。このため、処理要求信号TREQが有効レベルとされてからこの処理要求信号TREQが受理され入力データSRIH及びSRILがデータセレクタDSLH及びDSLLの出力端子outに伝達されるまでの時間t2は、例えばクロック信号PCLKの3サイクルに相当する比較的長い時間となり、これによってエミュレーションユニットの処理速度が低下し、エミュレーション所用時間が長くなる。
【0008】
この発明の目的は、それぞれ異なる周波数のクロック信号に従って同期動作する複数のブロックからの処理要求信号を効率良く受理しうるレジスタ制御回路等のインタフェース制御回路を実現することにある。この発明の他の目的は、マイクロコントローラ等に内蔵されレジスタ制御回路等のインタフェース制御回路を含むエミュレーションユニット等の処理速度を高め、エミュレーションユニットを用いたエミュレーションの所要時間を短縮することにある。
【0009】
この発明の前記ならびにその他の目的と新規な特徴は、この明細書の記述及び添付図面から明らかになるであろう。
【0010】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば、次の通りである。すなわち、その一方で比較的高い周波数とされる第1のクロック信号の周期を実質的なバスサイクルとする周辺バスに結合され、その他方で比較的低い周波数とされる第2のクロック信号の周期を実質的なバスサイクルとするJTAGバスに結合されるエミュレーションユニットを内蔵するマイクロコントローラ等において、JTAGバス側の例えばTAPコントローラから出力される処理要求信号を、第2のクロック信号に同期化することなく、直接第1のクロック信号に従ってラッチに取り込み、同期化して受理する。
【0011】
上記手段によれば、TAPコントローラ等により処理要求信号が有効レベルとされてから、この処理要求信号が受理されシフトレジスタによって直並列変換された入力データがデータセレクタの出力端子に出力されるまでの時間を例えば第1のクロック信号の1サイクル分以下に短縮することができる。この結果、それぞれ異なる周波数のクロック信号に従って同期動作する複数のブロックの処理要求信号を効率良く受理しうるレジスタ制御回路等のインタフェース制御回路を実現することができるとともに、マイクロコントローラ等に内蔵されるエミュレーションユニット等の処理速度を高め、エミュレーションユニットを用いたエミュレーションの所要時間を短縮することができる。
【0012】
【発明の実施の形態】
図1には、この発明が適用されたレジスタ制御回路(インタフェース制御回路)を含むエミュレーションユニットEMUを含むマイクロコントローラ(半導体集積回路装置)の一実施例のブロック図が示され、図2には、図1のマイクロコントローラに含まれるエミュレーションユニットEMUの一実施例のブロック図が示されている。両図をもとに、まずこの実施例のレジスタ制御回路を含むエミュレーションユニットEMUならびにこれを含むマイクロコントローラの構成及び動作の概要を説明する。なお、図1の各ブロックを構成する回路素子は、特に制限されないが、公知のCMOS(相補型MOS)集積回路の製造技術により、単結晶シリコンのような1個の半導体基板面上に形成される。
【0013】
図1において、この実施例のマイクロコントローラは、ストアドプログラム方式の中央処理ユニットCPUをその基本構成要素とする。中央処理ユニットCPUは、内部バスCBを介してメモリ管理ユニットを含むキャッシュメモリCACHに結合される。この内部バスCBには、さらに、所定の浮動小数点演算を専門に実行する浮動小数点演算ユニットFPUが結合される。
【0014】
キャッシュメモリCACHは、さらに内部バスMBを介してバスステートコントローラBSCに結合される。また、バスステートコントローラBSCは、さらに内部バスDBを介してダイレクトメモリアクセスコントローラDMACに結合されるとともに、内部バスEBを介して外部バスインタフェースEBIFに結合され、周辺バスPBを介してクロックパルス発生回路CPG,割り込みコントローラINTC,シリアルコミュニケーションインターフェイスSCI,リアルタイムクロックRTC,タイマーユニットTMUならびにエミュレーションユニットEMUに結合される。外部バスインタフェースEBIFには、外部バスXBを介して所定の外部装置が結合され、エミュレーションユニットEMUには、JTAGバス(JTAG)を介してエミュレータEMが結合される。
【0015】
ここで、エミュレーションユニットEMUは、図2に示されるように、TAPコントローラTAPC及びレジスタ部REGを含むエミュレーション論理回路EMLと、ASEメモリ(ASERAM)を備える。エミュレーション論理回路EMLは、さらにインストラクションデコーダIDEC,ブレークコントローラBRKCならびにテストコントローラTSTCを含み、周辺バスコントローラPBCと、ASEメモリに対する書き込み制御回路WC及び読み書き制御回路RWCとを含む。また、レジスタ部REGは、インストラクションレジスタSDIR,ステータスレジスタSDSRならびにデータレジスタSDDRH及びSDDRLと、ASEメモリに対する書き込みアドレスレジスタSDAR及びSDAREとを含み、さらにシフトレジスタSR,バイパスレジスタSDBPR,マルチプレクサMXならびにレジスタ制御回路REGCを含む。
【0016】
エミュレーションユニットEMUは、図2の左側において、所定ビットの周辺バスPBを介して所定の内部回路つまり前記バスステートコントローラBSC等に結合され、図2の右側において所定ビットのJTAGバスを介して図示されないエミュレータEMに結合される。JTAGバスは、周知のように、リセット制御信号線TRST,モード制御信号線TMS,クロック信号線TCLKならびにシリアル入力データ線TDI及びシリアル出力データ線TDOを含み、さらにブレーク制御信号線ASEBRK/BRKACKを含む。
【0017】
このうち、ブレーク制御信号線ASEBRK/BRKACKは、ブレークコントローラBRKCに結合され、リセット制御信号線TRST,モード制御信号線TMSならびにクロック信号線TCLKは、TAPコントローラTAPCに結合される。また、シリアル入力データ線TDIは、シフトレジスタSRのシリアル入力端子に結合され、シリアル出力データ線TDOは、マルチプレクサMXの出力端子に結合される。マルチプレクサMXの一方の入力端子には、シフトレジスタSRのシリアル出力端子が結合される。また、シフトレジスタSRのシリアル入力端子とマルチプレクサMXの他方の入力端子との間には、データバイパス用のバイパスレジスタSDBPRが設けられる。
【0018】
この実施例において、エミュレーションユニットEMUを構成するエミュレーション論理回路EMLの点線で囲んだ左側のブロック、つまりブレークコントローラBRKC,テストコントローラTSTC,インストラクションデコーダIDEC,インストラクションレジスタSDIR,ステータスレジスタSDSR,データレジスタSDDRH及びSDDRL,書き込みアドレスレジスタSDAR及びSDARE,周辺バスコントローラPBC,書き込み制御回路WCならびに読み書き制御回路RWCは、周辺バスPBを介して供給されるクロック信号PCLK(第1のクロック信号)に従って同期動作する。また、その点線で囲んだ右側のブロックつまりTAPコントローラTAPC,シフトレジスタSR,バイパスレジスタSDBPRならびにマルチプレクサMXは、JTAGバスを介して供給されるクロック信号TCKつまりTCLK(第2のクロック信号)に従って同期動作し、レジスタ制御回路REGCは、両側のブロック間のインタフェース制御回路として作用する。各クロック信号の周波数等ならびにレジスタ制御回路REGCの具体的構成等については、後で詳細に説明する。
【0019】
エミュレーションユニットEMUのエミュレーション論理回路EMLの周辺バスコントローラPBCは、周辺バスPBに対するバス制御を受け持つとともに、図示されないクロックパルス発生回路CPGから供給されるシステムクロック信号をもとにクロック信号PCLKを生成し、各部に供給する。また、ステータスレジスタSDSRは、周辺バスPBを介して供給される所定ビットのインストラクションつまり命令を取り込み、保持する。これらの命令は、インストラクションデコーダIDECによりデコードされ、エミュレーションユニットEMUの動作制御に供されるとともに、必要に応じてシフトレジスタSRに伝達され、シリアル出力データ線TDOを介してエミュレータEMに伝達される。ステータスレジスタSDSRは、所定ビットからなるステータス情報の伝達・保持に供され、データレジスタSDDRH及びSDDRLは、合計32ビットからなるデータの伝達・保持に供される。また、書き込みアドレスレジスタSDAR及びSDAREは、ASEメモリのアクセスアドレスを保持し、書き込み制御回路WC及び読み書き制御回路RWCは、ASEメモリのアクセスを制御する。
【0020】
一方、TAPコントローラTAPCは、モード制御信号TMS及びリセット制御信号TRSTをもとに外部のエミュレータEMとの間のインタフェース制御を受け持つとともに、クロック信号TCKをもとにクロック信号TCLKを生成して、各部に供給する。また、シフトレジスタSRは、外部のエミュレータEMからシリアル入力データ線TDIを介してシリアルに入力されるデータをクロック信号TCLKに従って順次取り込み、例えば32ビット単位で直並列変換し、データレジスタSDDRH及びSDDRL等にパラレルに伝達するとともに、これらのレジスタからパラレル伝達されるデータを並直列変換して、シリアル出力データ線TDOからクロック信号TCLKつまりクロック信号TCKに従ってシリアルに出力する。さらに、バイパスレジスタSDBPRは、シリアル入力データ線TDIからクロック信号TCKつまりクロック信号TCLKに従ってシリアル入力されるデータをマルチプレクサMXを介してそのままシリアル出力データ線TDOに出力し、JTAG仕様のバイパスモードをサポートする。
【0021】
ブレークコントローラBRKCは、インストラクションデコーダIDECによる命令のデコード結果を受けて、例えばブレーク制御信号ASEBRK/BRKACKによるエミュレータEMからのブレークを受け付け、ブレーク要求信号BREQとして中央処理ユニットCPUに伝達する。また、テストコントローラTSTCは、やはりインストラクションデコーダIDECによる命令デコード結果を受けて、所定のテストモードを実行し、ASEメモリは、ASEモードをサポートとし、いわゆるエミュレーションメモリとして作用する。
【0022】
図3には、図2のエミュレーションユニットEMUに含まれるレジスタ制御回路REGC及びその周辺部の一実施例のブロック図が示され、図4には、その一実施例の信号波形図が示されている。両図をもとに、この実施例のインタフェース制御回路たるレジスタ制御回路REGC及びその周辺部の具体的構成及び動作ならびにその特徴について説明する。なお、図3には、この発明に関連するレジスタの代表例として、データレジスタSDDRH及びSDDRLが例示される。また、周辺バスPBから周辺バスコントローラPBCを介してパラレル入力されるデータは、実際には周辺バスコントローラPBCの周辺バスレジスタPBRG(第1のレジスタ)を介して授受され、またシフトレジスタSRからパラレル出力されるデータも、シフトレジスタSRのレジスタSRRGを介して授受されるが、これらのレジスタはともにその名称のみが図3に示されている。
【0023】
図3において、周辺バスコントローラPBCのレジスタPBRGを介して16ビット単位でパラレル入力されるデータPBID(第1の入力データ)は、データセレクタDSLH及びDSLLの一方の入力端子に供給され、シフトレジスタSRのレジスタSRRGにより直並列変換されパラレル入力されるそれぞれ16ビットのデータSRIH及びSRIL(第2の入力データ)は、それぞれデータセレクタDSLH及びDSLLの他方の入力端子に供給される。データセレクタDSLH及びDSLLには、レジスタ制御回路REGCからセレクタ制御信号SLCが共通に供給され、その出力信号DSLHout及びDSLLoutは、それぞれデータレジスタSDDRH及びSDDRL(第2のレジスタ)の入力端子に供給される。データレジスタSDDRH及びSDDRLのクロック入力端子CKには、クロック信号PCLKが供給される。また、その16ビットの出力信号SDDRHout及びSDDRLoutは、マルチプレクサMXを経た後、出力データPBODとして周辺バスPBに伝達されるとともに、出力データSROH及びSROLとしてシフトレジスタSRに伝達される。
【0024】
なお、データレジスタSDDRH及びSDDRLのクロック入力端子CKに供給されるクロック信号PCLKは、実際には、データ取り込みが必要なときクロック信号PCLKに同期して単発的に形成される。
【0025】
データセレクタDSLH及びDSLLは、セレクタ制御信号SLCがロウレベルとされるとき、周辺バスPBから周辺バスコントローラPBCを介してパラレル入力される入力データPBIDを選択し、データレジスタSDDRH又はSDDRLに伝達する。また、セレクタ制御信号SLCがハイレベルとされるときには、JTAGバスからシリアル入力されシフトレジスタSRにより直並列変換されてパラレル入力される入力データSRIH及びSRILを選択し、データレジスタSDDRH及びSDDRLに伝達する。データレジスタSDDRH及びSDDRLは、例えばクロック信号PCLKの立ち上がりを受けてこれらの入力データを取り込み、保持するとともに、周辺バスコントローラPBCつまり周辺バスPBあるいはシフトレジスタSRつまりJTAGバスに伝達する。
【0026】
ここで、レジスタ制御回路REGCは、特に制限されないが、そのデータ入力端子Dに周辺バスコントローラPBCからの処理要求信号PREQ(第1の処理要求信号)を受けるラッチLPRQ(第1のラッチ)と、そのデータ入力端子DにシフトレジスタSRつまりTAPコントローラTAPCからの処理要求信号TREQ(第2の処理要求信号)を受けるラッチLTRQ(第2のラッチ)とを含む。これらのラッチLPRQ及びLTRQのクロック入力端子CKには、周辺バスコントローラPBCからクロック信号PCLKが共通に供給され、その出力信号QつまりLPRQout及びLTRQoutは、セレクタ制御回路SELCに供給される。セレクタ制御回路SELCは、ラッチLPRQ及びLTRQの出力信号QつまりLPRQout及びLTRQoutを予め決められた優先順位に従って受理し、その出力信号つまりセレクタ制御信号SLCを選択的にハイレベル又はロウレベルとする。セレクタ制御信号SLCは、前記のように、データセレクタDSLH及びDSLLに供給され、その選択制御信号となる。
【0027】
この実施例において、クロック信号PCLKは、図4に示されるように、比較的高い周波数とされ、その周期は周辺バスPBの実質的なバスサイクルとなる。また、クロック信号TCLKは、例えばクロック信号PCLKの二分の一程度の比較的低い周波数とされ、その周期はJTAGバスの実質的なバスサイクルとなる。一方、処理要求信号PREQは、例えば周辺バスPBを介してエミュレーションユニットEMUに対するデータが入力されるとき、クロック信号PCLKに同期した所定のタイミングで選択的に有効レベルつまりハイレベルとされ、処理要求信号TREQは、例えばJTAGバスつまりエミュレータEMからシリアル入力データ線TDIを介してシリアルに入力されるデータがシフトレジスタSRに32ビット蓄積されたとき、クロック信号TCLKに同期した所定のタイミングで選択的に有効レベルつまりハイレベルとされる。
【0028】
なお、処理要求信号PREQは、実際には周辺バスPBを介して入力されるデータPBIDが上位16ビット又は下位16ビットのいずれに対応するものであるかに応じて個別にかつそれぞれ選択的に形成され、データレジスタSDDRH及びSDDRLのクロック入力端子CKに供給されるクロック信号PCLKも、前述のように、それぞれ必要に応じて単発的に形成される。
【0029】
周辺バスPBにエミュレーションユニットEMUに対するデータが入力され、処理要求信号PREQがハイレベルとされるとき、エミュレーションユニットEMUのレジスタ制御回路REGCでは、クロック信号PCLKの最初の立ち上がりを受けてラッチLPRQの出力信号QつまりLPRQoutがハイレベルとなる。このため、セレクタ制御回路SELCの出力信号つまりセレクタ制御信号SLCがロウレベルとなり、データセレクタDSLH及びDSLLは周辺バスコントローラPBCからの入力データPBIDつまりデータDAを選択し、データレジスタSDDRH及びSDDRLに伝達する。これらのデータDAはそのままデータレジスタSDDRH又はSDDRLに取り込まれ、保持される。
【0030】
一方、JTAGバスつまりシリアル入力データ線TDIを介してシリアルに入力されるデータがシフトレジスタSRに32ビット蓄積され、処理要求信号TREQがハイレベルとされるとき、エミュレーションユニットEMUのレジスタ制御回路REGCでは、クロック信号PCLKの最初の立ち上がりを受けてラッチLTRQの出力信号QつまりLTRQoutがハイレベルとなる。このため、セレクタ制御回路SELCの出力信号つまりセレクタ制御信号SLCがハイレベルとなり、データセレクタDSLH及びDSLLは、シフトレジスタSRからの入力データSRIH及びSRILつまりデータDBを選択して、データレジスタSDDRH及びSDDRLに伝達する。これらのデータDBはそのままデータレジスタSDDRH又はSDDRLに取り込まれ、保持される。
【0031】
このように、本実施例のマイクロコントローラのエミュレーションユニットEMUでは、クロック信号TCLKに従って同期動作するTAPコントローラTAPCからの処理要求信号TREQが、一旦クロック信号TCLKに同期化されることなく、直接ラッチLTRQによってクロック信号PCLKに同期化される。このため、TAPコントローラTAPCにより処理要求信号TREQが有効レベルとされてからデータセレクタDSLH及びDSLLの出力端子にシフトレジスタSRからの入力データSRIH及びSRILが出力されるまでの時間t1は、クロック信号PCLKの1周期分にも満たない短い時間となる。この結果、それぞれ異なる周波数のクロック信号PCLK又はTCLKに従って同期動作する複数のブロックつまり周辺バスコントローラPBC及びTAPコントローラTAPCの処理要求信号PREQ及びTREQを効率良く受理しうるエミュレーションユニットEMUを実現することができるとともに、エミュレーションユニットEMUの処理速度を高め、エミュレーションユニットを用いたエミュレーションの所要時間を短縮することができるものである。
【0032】
図5には、この発明が適用されたレジスタ制御回路REGC及びその周辺部の第2の実施例のブロック図が示されている。なお、この実施例は、前記図3及び図4の実施例を基本的に踏襲するものであるため、これらの実施例と異なる部分についてのみ説明を追加する。
【0033】
図5において、この実施例のレジスタ制御回路REGCは、そのデータ入力端子Dに周辺バスコントローラPBCからの処理要求信号PREQを受けるラッチLPRQと、そのデータ入力端子Dにアンド(AND)ゲートAGの出力信号を受けるラッチLTRQとを含む。アンドゲートAGの一方の入力端子には、シフトレジスタSRつまりTAPコントローラTAPCから処理要求信号TREQが供給され、その他方の入力端子にはクロック信号TCLKが供給される。ラッチLPRQ及びLTRQのクロック入力端子CKには、周辺バスコントローラPBCからクロック信号PCLKが共通に供給され、その出力信号QつまりLPRQout及びLTRQoutはセレクタ制御回路SELCに供給される。
【0034】
これにより、ラッチLTRQは、アンドゲートAGの出力信号がハイレベルとされるとき、言い換えるならば処理要求信号TREQがハイレベルとされかつクロック信号TCLKがハイレベルとされるとき、クロック信号PCLKの立ち上がりを受けて選択的にセット状態とされ、その出力信号LTRQoutをハイレベルとする。つまり、この実施例のレジスタ制御回路REGCでは、TAPコントローラTAPCの処理要求信号TREQがアンドゲートAGによってクロック信号TCLKのハイレベルに同期化された後、クロック信号PCLKに同期化される訳であって、これによって特に処理要求信号TREQの同期化が必要な場合においてエミュレーションユニットEMUの処理を安定化することができる。なお、処理要求信号TREQがクロック信号TCLKのハイレベルに同期化されることでエミュレーションユニットEMUの処理速度は低下するが、クロック信号TCLKのデューティを50%とした場合、クロック信号PCLKの立ち上がりでクロック信号TCLKがロウレベルである確率は50%となるため、エミュレーションユニットEMUの処理速度はやや遅くはなるものの、図8及び図9のエミュレーションユニットEMUに比べてかなり高速化される。
【0035】
図6には、この発明が適用されたレジスタ制御回路REGC及びその周辺部の第3の実施例の状態遷移図が示され、図7には、その一実施例の信号波形図が示されている。なお、この実施例は、前記図3及び図4の実施例を基本的に踏襲するものであるため、これと異なる部分についてのみ説明を追加する。また、この実施例では、レジスタ制御回路REGC及び周辺部のブロック構成が示されていないが、基本的には図3及び図4と同じであるため、類推されたい。
【0036】
図6において、この実施例のエミュレーションユニットEMUは、クロック信号CLK1,CLK2ならびにCLK3に従ってそれぞれ同期動作し、かつ必要に応じてレジスタ制御回路REGCに対する処理要求信号REQ1,REQ2あるいはREQ3をそれぞれ選択的に有効レベルとする三つのブロックつまり第1ないし第3のブロックを備え、レジスタ制御回路REGCは、これらのブロックに対応して設けられる三つの状態S1ないしS3を有する。また、前記図3及び図4から類推できるように、データレジスタSDDRH及びSDDRL等の前段には、第1ないし第3の入力端子をそれぞれ有するデータセレクタDSLH及びDSLLが設けられ、これらのデータセレクタの第1ないし第3の入力端子には上記第1ないし第3のブロックからの入力データがそれぞれ供給される。レジスタ制御回路REGCの状態S1は、データセレクタDSLH及びDSLLによって第1のブロックからの入力データが選択される場合に対応し、状態S2は、第2のブロックからの入力データが選択される場合に対応し、状態S3は、第3のブロックからの入力データが選択される場合に対応する。
【0037】
この実施例において、クロック信号CLK2は、図7に例示されるように、クロック信号CLK3に比較して高い周波数とされ、クロック信号CLK1は、このクロック信号CLK2に比較してさらに高い周波数とされる。また、処理要求信号REQ1は、クロック信号CLK1の立ち上がりよりやや早めに有効レベルつまりハイレベルとされ、処理要求信号REQ2及びREQ3は、それぞれ対応するクロック信号CLK2又はCLK3にほぼ同期して、しかも対応するクロック信号CLK2又はCLK3の例えば少なくとも1.5サイクル分に相当する期間だけ有効レベルつまりハイレベルとされる。
【0038】
レジスタ制御回路REGCは、第1ないし第3のブロックに対応して設けられる図示されない3個のラッチを含み、これらのラッチのクロック入力端子CKには、クロック信号CLK1ないしCLK3のうち最も周波数の高いクロック信号CLK1が共通に供給される。また、これらのラッチの出力信号は、図示されないセレクタ制御回路SELCに供給され、これを受けてデータセレクタDSLH及びDSLLに対するセレクタ制御信号SLC1ないしSLC3が択一的に有効レベルつまりハイレベルとされる。セレクタ制御信号SLC1がハイレベルとされるとき、データセレクタDSLH及びDSLLは第1のブロックからの入力データID1つまりデータD1を選択し、その出力信号SLoutとしてデータレジスタSDDRH及びSDDRLに伝達する。また、セレクタ制御信号SLC2がハイレベルとされるときは、第2のブロックからの入力データID2つまりデータD2を選択し、セレクタ制御信号SLC3がハイレベルとされるときには、第3のブロックからの入力データID3つまりデータD3を選択する。
【0039】
レジスタ制御回路REGCは、リセット信号RESETが有効レベルとされるとき、初期状態つまり状態S1とされる。また、この状態S1にあるとき、第2のブロックの処理要求信号REQ2が有効レベルとされると状態S2に遷移し、第3のブロックの処理要求信号REQ3が有効レベルとされると状態S3に遷移する。そして、その他の条件elseつまり処理要求信号REQ1が有効レベルとされ、あるいはいずれの処理要求信号も有効レベルとされない場合はその状態が遷移されず、状態S1をそのまま保持する。
【0040】
一方、レジスタ制御回路REGCが状態S2にあるとき、レジスタ制御回路REGCは、第1のブロックの処理要求信号REQ1の有効レベルを受けて状態S1に遷移し、第3のブロックの処理要求信号REQ3の有効レベルを受けて状態S3に遷移する。そして、その他の条件elseつまり処理要求信号REQ2が有効レベルとされ、あるいはいずれの処理要求信号も有効レベルとされない場合はその状態が遷移されず、状態S2をそのまま保持する。
【0041】
同様に、レジスタ制御回路REGCが状態S3にあるとき、レジスタ制御回路REGCは、第1のブロックの処理要求信号REQ1の有効レベルを受けて状態S1に遷移し、第2のブロックの処理要求信号REQ2の有効レベルを受けて状態S2に遷移する。そして、その他の条件elseつまり処理要求信号REQ3が有効レベルとされ、あるいはいずれの処理要求信号も有効レベルとされない場合はその状態が遷移されず、状態S3をそのまま保持する。
【0042】
前述のように、この実施例のレジスタ制御回路REGCには、そのデータ入力端子Dに対応する処理要求信号REQ1ないしREQ3をそれぞれ受ける3個のラッチが設けられ、これらのラッチのクロック入力端子CKには、最も周波数の高いクロック信号CLK1が共通に供給される。このため、処理要求信号REQ1ないしREQ3は、それが有効レベルつまりハイレベルとされた以後の最初のクロック信号CLK1の立ち上がりを受けて対応するラッチにそれぞれ取り込まれ、所定の優先順位に従って択一的に受理される。この結果、この実施例の場合も、前記図3及び図4の実施例と同様に、それぞれ異なる周波数のクロック信号CLK1ないしCLK3に従って同期動作する三つのブロックの処理要求信号REQ1ないしREQ3を効率良く受理しうるエミュレーションユニットEMUを実現することができるとともに、エミュレーションユニットEMUの処理速度を高め、エミュレーションユニットを用いたエミュレーションの所要時間を短縮することができるものである。
【0043】
以上の実施例から得られる作用効果は、下記の通りである。すなわち、
(1)その一方で比較的高い周波数とされる第1のクロック信号の周期を実質的なバスサイクルとする周辺バスに結合され、その他方で比較的低い周波数とされる第2のクロック信号の周期を実質的なバスサイクルとするJTAGバスに結合されるエミュレーションユニットを内蔵するマイクロコントローラ等において、JTAGバス側の例えばTAPコントローラから出力される処理要求信号を、第2のクロック信号に同期化することなく、直接第1のクロック信号に従ってラッチに取り込み、同期化して受理することで、TAPコントローラ等により処理要求信号が有効レベルとされてから、この処理要求信号が受理されシフトレジスタにより直並列変換された入力データがデータセレクタの出力端子に出力され、データレジスタに伝達されるまでの時間を、例えば第1のクロック信号の1サイクル分程度に短縮することができるという効果が得られる。
【0044】
(2)上記(1)項により、それぞれ異なる周波数のクロック信号に従って同期動作する複数のブロックの処理要求信号を効率良く受理しうるエミュレーションユニットを実現することができるという効果が得られる。
(3)上記(1)項及び(2)項により、マイクロコントローラ等に内蔵されるエミュレーションユニット等の処理速度を高め、エミュレーションユニットを用いたエミュレーションの所要時間を短縮できるという効果が得られる。
(4)上記(1)項ないし(3)項において、TAPコントローラ等から出力される処理要求信号を、例えばアンドゲート等によって第2のクロック信号のハイレベルに同期化した後、第1のクロック信号に同期化することで、エミュレーションユニット等の平均的な処理速度の低下を抑制しつつ、エミュレーションユニット等の処理を安定化することができるという効果が得られる。
【0045】
以上、本発明者によりなされた発明を実施例に基づき具体的に説明したが、この発明は、上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。例えば、図1において、マイクロコントローラのブロック構成は種々の実施形態をとりうるし、そのバス構成やエミュレーションユニットEMUの接続位置についても同様である。図2において、エミュレーションユニットEMUのブロック構成は、この実施例による制約を受けない。図3及び図5において、レジスタ制御回路REGCのブロック構成は種々の実施形態をとりうるし、エミュレーションユニットEMUは、同様なレジスタ制御回路を複数含むことができる。図4及び図7において、各クロック信号及び内部信号の具体的時間関係は、本発明の主旨に影響を与えない。
【0046】
以上の説明では、主として本発明者によってなされた発明をその背景となった利用分野であるマイクロコントローラ及びそのエミュレーションユニットならびにそのレジスタ制御回路に適用した場合について説明したが、それに限定されるものではなく、例えば、同様なレジスタ制御回路を含む各種の論理集積回路装置やシングルチップマイクロコンピュータ等にも適用できる。この発明は、少なくともそれぞれ異なる周波数のクロック信号に従って同期動作する複数のブロックとその処理要求信号を選択的に受理するインタフェース制御回路とを含む半導体集積回路装置ならびにこれを含む装置又はシステムに広く適用できる。
【0047】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。すなわち、その一方で比較的高い周波数とされる第1のクロック信号の周期を実質的なバスサイクルとする周辺バスに結合され、その他方で比較的低い周波数とされる第2のクロック信号の周期を実質的なバスサイクルとするJTAGバスに結合されるエミュレーションユニットを内蔵するマイクロコントローラ等において、JTAGバス側の例えばTAPコントローラから出力される処理要求信号を、第2のクロック信号に同期化することなく直接第1のクロック信号に従ってラッチに取り込み、同期化して受理する。これにより、TAPコントローラ等により処理要求信号が有効レベルとされてから、この処理要求信号が受理されシフトレジスタにより直並列変換された入力データがデータセレクタの出力端子に出力されるまでの時間を例えば第1のクロック信号の1サイクル分程度に短縮できる。この結果、それぞれ異なる周波数のクロック信号に従って同期動作する複数のブロックの処理要求信号を効率良く受理しうるエミュレーションユニットを実現できるとともに、マイクロコントローラ等に内蔵されるエミュレーションユニット等の処理速度を高め、エミュレーションユニットを用いたエミュレーションの所要時間を短縮することができる。
【図面の簡単な説明】
【図1】この発明が適用されたレジスタ制御回路を含むエミュレーションユニットを含むマイクロコントローラの一実施例を示すブロック図である。
【図2】図1のマイクロコントローラに含まれるエミュレーションユニットの一実施例を示すブロック図である。
【図3】図2のエミュレーションユニットに含まれるレジスタ制御回路及びその周辺部の第1の実施例を示すブロック図である。
【図4】図3のレジスタ制御回路及びその周辺部の一実施例を示す信号波形図である。
【図5】この発明が適用されたレジスタ制御回路及びその周辺部の第2の実施例を示すブロック図である。
【図6】この発明が適用されたレジスタ制御回路の第3の実施例を示す状態遷移図である。
【図7】図6のレジスタ制御回路及びその周辺部の一実施例を示す信号波形図である。
【図8】この発明に先立って本願発明者等が開発したマイクロコントローラのエミュレーションユニットに含まれるレジスタ制御回路及びその周辺部の一例を示すブロック図である。
【図9】図8のレジスタ制御回路及びその周辺部の一例を示す信号波形図である。
【符号の説明】
CPU……中央処理ユニット、FPU……浮動小数点演算ユニット、CACH……キャッシュメモリ、BSC……バスコントローラ、DMAC……ダイレクトメモリアクセスコントローラ、CPG……クロックパルス発生回路、INTC……割り込みコントローラ、SCI……シリアルコミュニケーションインターフェイス、RTC……リアルタイムクロック、TMU……タイマーユニット、EMU……エミュレーションユニット、EBIF……外部バスインタフェース、CB,MB,DB……内部バス、PB……周辺バス、XB……外部バス、JTAG……JTAGバス、EM……エミュレータ。
EML……エミュレーション論理回路、ASERAM……ASEメモリ、REG……レジスタ部、TAPC……TAPコントローラ、IDEC……インストラクションデコーダ、BRKC……ブレークコントローラ、TSTC……テストコントローラ、SDIR……インストラクションレジスタ、SDSR……ステータスレジスタ、SDDRH,SDDRL……データレジスタ、SDAR,SDARE……ASEメモリ用書き込みアドレスレジスタ、PBC……周辺バスコントローラ、WC……書き込み制御回路、RWC……読み書き制御回路、SR……シフトレジスタ、SDBPR……バイパスレジスタ、MX……マルチプレクサ、REGC……レジスタ制御回路。
TCK,TCLK,PCLK……クロック信号、ASEBRK/BRKACK……ブレーク制御信号、TRST……リセット制御信号、TMS……モード制御信号、TDI……シリアル入力データ、TDO……シリアル出力データ、BREQ……ブレーク要求信号。
SELC……セレクタ制御回路、SLC……セレクタ制御信号、LPRQ,LTRQ……ラッチ、DSLH,DSLL……データセレクタ、PREQ,TREQ……処理要求信号。
AG……アンド(AND)ゲート。
S1〜S3……状態、RESET……リセット信号、REQ1〜REQ3……処理要求信号。
CLK1〜CLK3……クロック信号、ID1〜ID3……入力データ、SLC1〜SLC3……セレクタ制御信号、SLout……セレクタ出力信号。
LTRQ1〜LTRQ2……ラッチ。

Claims (3)

  1. それぞれ異なる周波数のクロック信号に従って同期動作し、必要に応じて所定の処理を要求するための処理要求信号をそれぞれ選択的に有効レベルとする複数のブロックと、
    上記複数のブロックから出力される上記処理要求信号の有効レベルを、上記クロック信号のうち最も周波数の高いクロック信号により同期化し、受理するインタフェース制御回路と
    比較的高い周波数とされる第1のクロック信号の周期をその実質的なバスサイクルとする周辺バスと、
    比較的低い周波数とされる第2のクロック信号の周期をその実質的なバスサイクルとするJTAGバスと、
    その一方で上記周辺バスを介して所定の内部回路に結合され、その他方で上記JTAGバスを介して外部のエミュレータに結合され、かつ、上記周辺バスを介してパラレル入力される第1の入力データを上記第1のクロック信号に従って取り込み、保持する第1のレジスタと、上記JTAGバスを介してシリアル入力される第2の入力データを上記第2のクロック信号に従って順次取り込み、保持するシフトレジスタと、所定のセレクタ制御信号に従って上記第1又は第2の入力データを選択的に伝達するデータセレクタと、上記データセレクタを介して伝達される上記第1又は第2の入力データを上記第1のクロック信号に従って取り込み、保持する第2のレジスタとを含むエミュレーションユニットとを具備するマイクロコントローラを含み、
    上記インタフェース制御回路は、上記エミュレーションユニットに含まれ、上記周辺バス側の回路により有効レベルとされる第1の上記処理要求信号あるいは上記JTAGバス側の回路により有効レベルとされる第2の上記処理要求信号を選択的に受理し、上記セレクタ制御信号を選択的にハイレベル又はロウレベルとするレジスタ制御回路であることを特徴とする半導体集積回路装置。
  2. 請求項において、
    上記レジスタ制御回路は、
    上記第1のクロック信号に従って上記第1の処理要求信号を取り込み、保持する第1のラッチと、
    上記第1のクロック信号に従って上記第2の処理要求信号を取り込み、保持する第2のラッチと、
    上記第1又は第2のラッチの出力信号を受けて上記セレクタ制御信号を選択的にハイレベル又はロウレベルとするセレクタ制御回路とを含むものであることを特徴とする半導体集積回路装置。
  3. 請求項において、
    上記第2のラッチは、上記第2のクロック信号がハイレベルとされるとき、上記第1のクロック信号に従って上記第2の処理要求信号を取り込み、保持するものであることを特徴とする半導体集積回路装置。
JP18170198A 1998-06-29 1998-06-29 半導体集積回路装置 Expired - Fee Related JP3672162B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18170198A JP3672162B2 (ja) 1998-06-29 1998-06-29 半導体集積回路装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18170198A JP3672162B2 (ja) 1998-06-29 1998-06-29 半導体集積回路装置

Publications (2)

Publication Number Publication Date
JP2000020339A JP2000020339A (ja) 2000-01-21
JP3672162B2 true JP3672162B2 (ja) 2005-07-13

Family

ID=16105356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18170198A Expired - Fee Related JP3672162B2 (ja) 1998-06-29 1998-06-29 半導体集積回路装置

Country Status (1)

Country Link
JP (1) JP3672162B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7506228B2 (en) 2006-02-14 2009-03-17 Atmel Corporation Measuring the internal clock speed of an integrated circuit

Also Published As

Publication number Publication date
JP2000020339A (ja) 2000-01-21

Similar Documents

Publication Publication Date Title
US5428622A (en) Testing architecture with independent scan paths
US7962816B2 (en) I/O switches and serializer for each parallel scan register
US4710927A (en) Diagnostic circuit
US7852974B2 (en) Plural circuit selection using role reversing control inputs
US5870411A (en) Method and system for testing self-timed circuitry
JPS6134173B2 (ja)
EP0313230A3 (en) Vlsi chip with test circuitry
JPS59105571A (ja) デイジタル電子回路
JPS6134174B2 (ja)
US7475309B2 (en) Parallel test mode for multi-core processors
JP3672162B2 (ja) 半導体集積回路装置
US6571106B1 (en) Method and apparatus for glitchless signal generation
JPS6123243A (ja) 論理集積回路
JP2002373086A (ja) 半導体集積回路
US5912900A (en) Method and system for testing self-timed circuitry
US6133758A (en) Selectable self-timed replacement for self-resetting circuitry
JP3054252B2 (ja) 記憶回路
JPH073461B2 (ja) デジタル論理ブロックのテスト回路
JPS63276135A (ja) 半導体集積回路
JPH0389178A (ja) 半導体集積回路
JP2000357952A (ja) 半導体集積回路装置
JPH0566965A (ja) ブレーク信号生成手段、評価用論理lsiおよびそのレジスタおよびマスクビツト
JP2000046909A (ja) 半導体集積回路装置及びその試験方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041116

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050111

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050414

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080428

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090428

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090428

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100428

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100428

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110428

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110428

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110428

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120428

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120428

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130428

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees