JP5536297B2 - コ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステム - Google Patents

コ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステム Download PDF

Info

Publication number
JP5536297B2
JP5536297B2 JP2005025678A JP2005025678A JP5536297B2 JP 5536297 B2 JP5536297 B2 JP 5536297B2 JP 2005025678 A JP2005025678 A JP 2005025678A JP 2005025678 A JP2005025678 A JP 2005025678A JP 5536297 B2 JP5536297 B2 JP 5536297B2
Authority
JP
Japan
Prior art keywords
signal
processor
debugging
flip
synchronization
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.)
Active
Application number
JP2005025678A
Other languages
English (en)
Other versions
JP2005227276A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2005227276A publication Critical patent/JP2005227276A/ja
Application granted granted Critical
Publication of JP5536297B2 publication Critical patent/JP5536297B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本発明は半導体集積回路のテスト回路に係り、さらに詳細にはコ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステムに関する。
最近、サブマイクロン(sub−micron)技術の急速な発達によってCDMA(Code Division Multiple Access)、MPEG(Motion Picture Experts Group)、VOIP(Voice Over Internet Protocol)などのように複雑なプロトコルをリアルタイムで処理する技術分野でもシステムオンチップ(SOC;System On Chip)が適用され始めている。
特に、複雑なプロトコルを利用した技術分野に適用されるSOCはデジタルイメージ/オーディオデータに対する演算を実施する。このため、通常、信号処理ユニット(signal processing unit)をチップの内部に別途取り付ける。また、SOCは効率的なシステム資源(system resources)管理のためにリアルタイム処理システム(RTOS;Real Time Operating System)を有する。RTOSは応用プログラム(application program)とともに信号処理ユニットによって実行される。
このように一つのSOCに二つ以上のプロセッサ(processors)(たとえば、CPUとDSP)が存在するとき、プロセッサごとに各々異なるデバッガ(debugger)を別に使用するので、一つのデバッガを使用して二つのプロセッサに対して同時にコ−デバッギング(co−debugging)を実行することができない。ここで、コ−デバッギングとは、一つのデバッガで複数のプロセッサを同時にデバッギングすることを意味する。
そこで、従来、二つ以上のプロセッサが存在するSOCでは互いに異なるデバッガを各々のJTAG(Joint Test Action Group)ピンに連結して使用していた。たとえば、ARM系列のCPUとTEAK系列のDSPとがともに使用されるSOCで、CPUコアをデバッギングするためにはARMデバッガに連結し、DSPコアをデバッギングするためにはTEAKデバッガに連結して使用していた。しかし、CPUコアをデバッギングしている途中にTEAKデバッガにブレーキポイント(breakpoint)を設定して停止させることができなかった。したがって、二つのプロセッサ間にインターフェースおよびインタラプタを互いにやりとりすることができず、コ−デバッギングが不可能であった。
本発明は上述の問題点を解決するために提案されたものであって、本発明の目的は、二つ以上のプロセッサを直列に一つのJTAGに連結し、プロセッサの間にトリガ回路を挿入してコ−デバッギング機能を支援する半導体集積回路を提供することにある。
本発明の他の目的は、コ−デバッギング機能を支援する半導体集積回路を含む半導体集積回路テストシステムを提供することにある。
本発明によるコ−デバッギング機能を支援する半導体集積回路は第1プロセッサ、第2プロセッサ、トリガ回路、およびJTAG回路を含む。第1プロセッサは第1周波数で動作し、デバッギングルーチン時、デバッギング状態を示す第1信号を発生する。第2プロセッサは第1周波数と異なる第2周波数で動作する。トリガ回路は第1プロセッサから第1信号が入力されて第2プロセッサがデバッギング状態になるように、第1および第2周波数に同期した第2信号を発生する。そしてJTAG回路は第1および第2プロセッサがデバッギング状態であるとき、JTAG端子からテストデータが入力されてJTAGに基づいて第1および第2プロセッサを直列にバウンダリスキャンし、その結果としてJTAG端子にテストデータを出力するJTAG回路とを含む。
実施形態において、第1プロセッサはCPUであり、第2プロセッサはDSPであることを特徴とする。
他の実施の形態において、第1プロセッサは第1CPUであり、第2プロセッサは第1プロセッサと異なる第2CPUであることを特徴とする。ここで、第2プロセッサはデバッギングルーチン時、デバッギング状態を示す第3信号を発生し、トリガ回路は前記第2プロセッサから第3信号が入力されて前記第1プロセッサがデバッギング状態になるように前記第1および第2周波数に同期した第4信号を発生することを特徴とする。
ここで、トリガ回路は、第1信号が入力されて第2信号を出力する第1同期回路と、第3信号が入力されて第4信号を出力する第2同期回路と、第1および第2同期回路の動作を制御するステートマシンとを含むことを特徴とする。ステートマシンは第1プロセッサがデバッギング状態にあるとき、第4信号の発生を遮断するように第2同期回路を制御する。
ここで、第1同期回路は、第1信号が入力され、第1クロック信号に同期して出力する第1フリップフロップと、第1フリップフロップの出力が入力される第1インバータと、第1信号および第1インバータの出力が入力され、第1パルス信号を発生する第1論理ゲートと、電源電圧が入力され、第2クロック信号に同期して第2パルス信号を発生し、第1パルス信号によってリセットされる第1フリップフロップシリーズと、第1フリップフロップシリーズの出力が入力される第2インバータと、第2インバータの出力が入力され、第2クロック信号に同期して第3パルス信号を発生する第2フリップフロップシリーズと、第3パルス信号が入力され、第2クロック信号に同期して第4パルス信号を発生する第2フリップフロップと、第4パルス信号が入力される第3インバータと、第3パルス信号および第3インバータの出力が入力され、第1制御信号を発生する第2論理ゲートと、第3パルス信号および第2制御信号が入力され、第2信号を発生する第3論理ゲートとを含み、第2フリップフロップシリーズおよび第2フリップフロップは同一のリセット信号が入力されることを特徴とする。
ここで、第2同期回路は、第3信号が入力され、第1クロック信号に同期して出力する第1フリップフロップと、第1フリップフロップの出力が入力される第1インバータと、第3信号および第1インバータの出力が入力され、第1パルス信号を発生する第1論理ゲートと、電源電圧が入力され、第2クロック信号に同期して第2パルス信号を発生し、第1パルス信号によってリセットされる第1フリップフロップシリーズと、第1フリップフロップシリーズの出力が入力される第2インバータと、第2インバータの出力が入力され、第2クロック信号に同期して第3パルス信号を発生する第2フリップフロップシリーズと、第3パルス信号が入力され、第2クロック信号に同期して第4パルス信号を発生する第2フリップフロップと、第4パルス信号が入力される第3インバータと、第3パルス信号および第3インバータの出力が入力され、第1制御信号を発生する第2論理ゲートと、第3パルス信号および第2制御信号が入力され、第4信号を発生する第3論理ゲートとを含み、第2フリップフロップシリーズおよび第2フリップフロップは同一のリセット信号が入力されることを特徴とする。
また他の実施形態において、JTAG回路は、バウンダリスキャン動作を制御するTAPコントローラと、直列に連結されたバウンダリスキャンセルとを含むことを特徴とする。
本発明による半導体集積回路テストシステムはデバッグホスト、ホストインターフェース、および半導体集積回路を含む。デバッグホストはデバッギングプログラムに従ってデバッギングを実行させる。ホストインターフェースはデバッグホストから入力される信号をJTAGインターフェース信号に換える。そして、半導体集積回路はホストインターフェースからJTAGインターフェース信号を受け入れてコ−デバッギング動作を実行する。ここで、JTAGインターフェース信号は半導体集積回路がコ−デバッギング動作を実行するようにする。
実施形態において、半導体集積回路は第1プロセッサ、第2プロセッサ、トリガ回路、およびJTAG回路を含む。第1プロセッサは第1周波数で動作し、デバッギングルーチン時、デバッギング状態を示す第1信号を発生する。第2プロセッサは第1周波数と異なる第2周波数で動作する。トリガ回路は第1プロセッサから第1信号が入力されて第2プロセッサがデバッギング状態になるように第1および第2周波数に同期した第2信号を発生する。そして、JTAG回路は第1および第2プロセッサがデバッギング状態であるとき、JTAG端子からテストデータが入力されて、JTAGに基づいて第1および第2プロセッサを直列にバウンダリスキャンし、その結果としてJTAG端子にテストデータを出力するJTAG回路を含む。
本発明によるコ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステムによると、一つのJTAGピンを有して二つ以上のプロセッサを直列に連結することによってJTAGピン数を減らすことができる。また、一つの統合したデバッギングを使用して二つ以上のプロセッサを同時にコ−デバッギングすることができる。
以下、本発明が属する技術分野で通常の知識を有する者が本発明の技術的思想を容易に実施することができる程度に詳細に説明するために、本発明の最も望ましい実施形態を添付の図面を参照して説明する。
図1は本発明による半導体集積回路テストシステムを概略的に示すブロック図である。図1を参照すると、半導体集積回路テストシステムはデバッグホスト10、ホストインターフェース20、および半導体集積回路30で構成される。
デバッグホスト10はコンピュータシステム(例えば、パーソナルコンピュータ)からなり、順次的なテスト動作のためにデバッギングプログラム(debugging program)12を具備する。デバッグホスト10は使用者の入力信号によってアドレス、制御信号およびデータ信号をシステム製作者が定義したプロトコルに従ってホストインターフェース20に伝達する。
ホストインターフェース20はデバッグホスト10から信号が入力されてJTAGインターフェース信号に換える。JTAGインターフェース信号はテストモード選択信号(TMS;Test Mode Select)、テストクロック信号(TCK;Test Clock Input)、デバッギングのためのテストデータ入力信号(TDI;Test Data Input)、およびテストデータ出力信号(TDO;Test Data Output)を含む。ホストインターフェース20はTMS、TCK、TDI信号を半導体集積回路30に送り、半導体集積回路30からTDO信号を受け入れる。
半導体集積回路30はデバッギング状態で互いに異なる周波数を使用する二つ以上のプロセッサを含むSOCである。例えば、半導体集積回路30はARM系列のCPUとTEAK系列のDSPとを含む。従来、デバッギングのためにCPUにはARMデバッガを使用し、DSPにはTEAKデバッガを使用した。しかし、本発明によるコ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステムでは一つのデバッガ10を使用して二つのプロセッサCPU、DSPをコ−デバッギングすることができる。
図2は本発明によるコ−デバッギング機能を支援する半導体集積回路の一実施形態を示すブロック図である。コ−デバッギング機能を支援する半導体集積回路30は図1のホストインターフェース20からTDI、TCK、TMS信号を受け入れ、テストの結果としてTDO信号を出す。
図2を参照すると、コ−デバッギング機能を支援する半導体集積回路30はJTAG端子140、第1プロセッサブロック100、トリガ回路200、および第2プロセッサブロック300を含む。第1および第2プロセッサブロック100、300は各々のJTAG回路110、120、310、320とプロセッサコア130、330とを含む。トリガ回路200は同期回路210とステートマシン250とで構成される。
JTAG端子140はTDI、TCK、TMS、TDO以外にTRST(図示せず)を含む合計5個の端子で構成される。TDI端子はテストデータ入力端子であり、TDO端子はテストデータ出力端子である。TDI端子とTDO端子とはバウンダリスキャンのためにデータを入出力する。TCK端子はテストのためにTAPコントローラ110、310にクロック信号を出力し、TMS端子はTAPコントローラ110、310にテストモード選択信号を出力する。
第1プロセッサブロック100はCPU130とJTAG回路110、120とを含む。CPU130はデバッギングルーチン時、第1周波数を有するクロックによって動作され、デバッギング状態を示す信号A1を発生する。CPU130がデバッギング状態にないときには、デバッギング要請信号B2を受け入れてデバッギング状態になる。
JTAG回路はTAP(Test Access Port)コントローラ110とバウンダリスキャンセル120、および図2に示さないデータレジスタ(例えば、バイパスレジスタ、使用者レジスタ、命令語レジスタなど)を含む。一般的にバウンダリスキャン(boundary)テスト回路を具備した半導体集積回路は‘IEEE Std.1149.1−1990’標準案で提案されたJTAG回路の構造を有する。そしてJTAG回路は必要なピン数を最小化するために直列方式でデータを処理する。
TAPコントローラ110はTMS端子およびTCK端子から入力された信号を利用してJTAG回路の全般的な動作を制御する。TAPコントローラ110の制御動作はTCKのローからハイへの遷移(low−high transition)でのTMS値によって決められる。テストデータはTCKのローからハイへの遷移に同期してTDI端子を介して出力され、TCKのハイからローへの遷移に同期してTDO端子を介して出力される。
第1バウンダリスキャンセル120はスキャンレジスタで構成される。スキャンレジスタはTDI端子からテストデータを入力し、データを直列にシフトしてバウンダリスキャンをする。第1バウンダリスキャンセル120から出力されたテストデータは第2プロセッサブロック300をテストするために第2バウンダリスキャンセル320に入力される。
第2プロセッサブロック300はDSP330とJTAG回路310、320とを含む。DSP330はデバッギングルーチン時、第1周波数と異なる第2周波数を有するクロックによって動作され、デバッギング状態を示す信号B1を発生する。DSP330がデバッギング状態にないとき、DSP330はデバッギング要請信号A2を受け入れてデバッギング状態になる。第2プロセッサブロック300にあるJTAG回路310、320の内部構造および動作原理は前1プロセッサブロック100で説明したとおりである。
トリガ回路200は同期回路210と同期回路210の動作を制御するステートマシン250とで構成される。同期回路210は第1プロセッサブロック100がデバッギング状態になれば、デバッギング状態を示す第1信号A1を受け入れて第2プロセッサブロック300もデバッギング状態になるようにする第2信号A2を発生する。このような方法によって、同期回路210は第2プロセッサブロック300がデバッギング状態になれば、デバッギング状態を示す第3信号B1を受け入れて第1プロセッサブロック100もデバッギング状態になるようにする第4信号B2を発生する。一方、同期回路210はステートマシン250に制御信号Fを与え、ステートマシン250から制御信号Sを受ける。
ステートマシン250は制御信号Sを発生して第1または第2プロセッサブロック100、300が重複してデバッギング状態になることを防止する。
図3は図2に示した同期回路の実施形態を示す回路図である。図3に示した同期回路211は第1プロセッサブロック100からデバッギング状態を示す第1信号A1を受け入れて第2プロセッサブロック300にデバッギング要請を示す第2信号A2を出力する。一方、同期回路211はステートマシン250に制御信号Faを与え、前記ステートマシン250から制御信号Saを受ける。
図3を参照すると、同期回路211は6個のフリップフロップDF1〜DFF6、3個のインバータINV1〜INV3、および3個のANDゲートG1〜G3で構成される。第1フリップフロップDFF1は第1クロックCPUCLKに同期して動作し、第2乃至第6フリップフロップDFF2〜DFF6は第2クロックDSPCLKに同期して動作する。第1クロックと第2クロックとは互いに異なる周波数を有する。同期回路211は第1信号A1を第1クロックに同期して受け入れて第2クロックに同期した第2信号A2を出力する。同期回路211によると、入力された第1信号A1が中間で消える現象は発生しない。
同期回路211は第1信号A1に応答してステートマシン250に制御信号Faを発生する。一方、ステートマシン250から制御信号Saを受け入れる。制御信号Saは第3ゲートG3に入力される。同期回路211は第2プロセッサブロック300がデバッギング状態になければ、テートマシン250から‘ハイ’である制御信号Saが入力されて第2信号A2を発生する。しかし、第2プロセッサブロック300が既にデバッギング状態にあれば、同期回路211は‘ロー’である制御信号Saが入力されて第2信号を発生しない。したがって、第2プロセッサブロック300は重複してデバッギング状態にならない。
図4に示した同期回路212は第2プロセッサブロック300からデバッギング状態を示す第3信号B1を受け入れて第1プロセッサブロック100もデバッギング状態になるように動作する。同期回路212の構造および動作原理は図3に示した同期回路211と同一であるので説明を省略する。
図5は図3に示した同期回路の動作を説明するためのタイミング図である。図5を参照すると、第1クロックCPUCLKと第2クロックDSPCLKとは周波数を異にする。第1クロックCPUCLKの周波数は第2クロックDSPCLKの周波数よりも高い。
第1フリップフロップDFF1は第1信号A1を受け入れて第1クロックCPUCLKに同期した信号を発生する。第1フリップフロップDFF1から発生された信号は第1インバータINV1によって反転された後、第1ゲートG1に入力される。第1ゲートG1は第1信号A1および第1インバータINV1で発生された信号が入力されて第1パルスp1を発生する。第1パルスp1は第2および第3フリップフロップDFF2、DFF3のリセット端子に入力される。
第2フリップフロップDFF2は第1パルスp1の反転パルスである第2パルスp2を発生する。第3フリップフロップDFF3は第2パルスp2を受け入れて第2クロックDSPCLKに同期した第3パルスp3を発生する。第2インバータINV2は第3パルスp3を受け入れて反転されたパルスを発生する。第4フリップフロップDFF4は反転されたパルスを受け入れて第2クロックDSPCLKに同期した第4パルスp4を発生する。第5フリップフロップDFF5は第4パルスp4を受け入れて第2クロックDSPCLKに同期した第5パルスp5を発生する。第6フリップフロップDFF6は第5パルスp5を受け入れて第2クロックDSPCLKに同期した第6パルスp6を発生する。
第6パルスp6は第3インバータINV3によって反転された後、第2ゲートG2に入力される。第2ゲートG2は第6パルスp6の反転信号/p6および第5パルスp5が入力されて制御信号Faを発生する。制御信号Faはステートマシン250に入力される。一方、第3ゲートG3は第5パルスp5およびステートマシン250から発生された制御信号Saが入力されて第2信号A2を発生する。第2信号A2は第2プロセッサブロック300に入力される。
ここで、第3ゲートG3は第2プロセッサブロック300の状態に従って第2信号A2の発生の可否を決める役割を果たす。すなわち、第2プロセッサブロック300がデバッギング状態にあれば、ステートマシン250から‘ロー’である制御信号Saが入力されるので第2信号A2は発生されない。一方、第2プロセッサブロック300がデバッギング状態になければ、‘ハイ’である制御信号Saが入力されて第2制御信号A2を発生する。図5は第2信号A2が発生された場合である。
上述のように、二つ以上のプロセッサを含んでいる半導体集積回路を一つのデバッガでテストするためにはいずれか一つのプロセッサがデバッギング状態にあるとき、他のプロセッサをデバッギング状態になるようにするトリガ回路と、すべてのプロセッサがデバッギング状態にあるとき、プロセッサを直列に連結してバウンダリスキャンをすることができるJTAG回路を必要とする。
一方、本発明の詳細な説明では具体的な実施形態に関して説明したが、本発明の範囲を逸脱しない限度内で様々な変形が可能であることはもちろんである。したがって、本発明の範囲は上述の実施形態に限定されるものではなく、特許請求の範囲及びこれと均等なものによって定めなければならない。
本発明による半導体集積回路テストシステムの概略的に示すブロック図である。 本発明によるコ−デバッギング機能を支援する半導体集積回路の一実施形態を示すブロック図である。 図2に示した同期回路を示す回路図である。 図2に示した同期回路を示す回路図である。 図3に示した同期回路の動作を説明するためのタイミング図である。
符号の説明
10 デバッグホスト
12 デバッギングプログラム
20 ホストインターフェース
30 半導体集積回路
100 第1プロセッサブロック
110 第1TAPコントローラ
120 第1バウンダリスキャンセル
130 CPUコア
140 JTAG端子
200 トリガ回路
210 同期回路
250 ステートマシン
300 第2プロセッサブロック
310 第2TAPコントローラ

Claims (18)

  1. 第1周波数で動作し、デバッギングルーチン時、デバッギング状態を示す第1信号を発生する第1プロセッサと、
    前記第1周波数と異なる第2周波数で動作する第2プロセッサと、
    前記第1プロセッサから前記第1周波数に同期して前記第1信号が入力され前記第2プロセッサもデバッギング状態になるように、前記第2周波数に同期した第2信号を発生するトリガ回路と、
    前記第1および第2プロセッサがデバッギング状態であるとき、前記第1および第2プロセッサに共通のJTAG端子からテストデータが入力されてJTAGに基づいて前記第1および第2プロセッサを直列にバウンダリスキャンして、その結果として前記JTAG端子にテストデータを出力するJTAG回路とを含み、
    前記第1および第2プロセッサは、共通のデバッガを使用することを特徴とするコ−デバッギング機能を支援する半導体集積回路。
  2. 前記第1プロセッサはCPUであり、前記第2プロセッサはDSPであることを特徴とする請求項1に記載のコ−デバッギングを支援する半導体集積回路。
  3. 前記第1プロセッサは第1CUPであり、前記第2プロセッサは前記第1プロセッサと異なる第2CPUであることを特徴とする請求項1に記載のコ−デバッギング機能を支援する半導体集積回路。
  4. 前記第2プロセッサはデバッギングルーチン時、デバッギング状態を示す第3信号を発生し、
    前記トリガ回路は前記第2プロセッサから前記第2周波数に同期して前記第3信号が入力され前記第1プロセッサもデバッギング状態になるように前記第1周波数に同期した第4信号を発生することを特徴とする請求項3に記載のコ−デバッギング機能を支援する半導体集積回路。
  5. 前記トリガ回路は、
    前記第1信号が入力されて前記第2信号を出力する第1同期回路と、
    前記第3信号が入力されて前記第4信号を出力する第2同期回路と、
    前記第1および第2同期回路の動作を制御するステートマシンとを含むことを特徴とする請求項4に記載のコ−デバッギング機能を支援する半導体集積回路。
  6. 前記ステートマシンは、前記第1プロセッサがデバッギング状態にあるとき、前記第4信号の発生を遮断するように前記第2同期回路を制御することを特徴とする請求項5に記載のコ−デバッギング機能を支援する半導体集積回路。
  7. 前記第1同期回路は、
    前記第1信号が入力され、第1クロック信号に同期して出力する第1フリップフロップと、
    前記第1フリップフロップの出力が入力される第1インバータと、
    前記第1信号および前記第1インバータの出力が入力され、第1パルス信号を発生する第1論理ゲートと、
    電源電圧が入力され、第2クロック信号に同期して第2パルス信号を発生し、前記第1パルス信号によってリセットされる第1フリップフロップシリーズと、
    前記第1フリップフロップシリーズの出力が入力される第2インバータと、
    前記第2インバータの出力が入力され、前記第2クロック信号に同期して第3パルス信号を発生する第2フリップフロップシリーズと、
    前記第3パルス信号が入力され、前記第2クロック信号に同期して第4パルス信号を発生する第2フリップフロップと、
    前記第4パルス信号が入力される第3インバータと、
    前記第3パルス信号および前記第3インバータの出力が入力され、前記第1プロセッサがデバッギング状態であるか否かを示す第1制御信号を前記ステートマシンに出力する第2論理ゲートと、
    前記第3パルス信号と前記ステートマシンから出力され前記第2プロセッサがデバッギング状態であるか否かを示す第2制御信号とが入力され、前記第2制御信号の論理値に応じて前記第2信号を発生する第3論理ゲートとを含み、
    前記第2フリップフロップシリーズおよび前記第2フリップフロップは同一のリセット信号が入力され、
    前記第2制御信号は、前記第2プロセッサが既にデバッギング状態にあるときに重複してデバッギング状態になることを防止するための信号であることを特徴とする請求項6に記載のコ−デバッギング機能を支援する半導体集積回路。
  8. 前記第2同期回路は、
    前記第3信号が入力され、第1クロック信号に同期されて出力する第1フリップフロップと、
    前記第1フリップフロップの出力が入力される第1インバータと、
    前記第3信号および前記第1インバータの出力が入力され、第1パルス信号を発生する第1論理ゲートと、
    電源電圧が入力され、第2クロック信号に同期して第2パルス信号を発生し、前記第1パルス信号によってリセットされる第1フリップフロップシリーズと、
    前記第1フリップフロップシリーズの出力が入力される第2インバータと、
    前記第2インバータの出力が入力され、前記第2クロック信号に同期して第3パルス信号を発生する第2フリップフロップシリーズと、
    前記第3パルス信号が入力され、前記第2クロック信号に同期して第4パルス信号を発生する第2フリップフロップと、
    前記第4パルス信号が入力される第3インバータと、
    前記第3パルス信号および前記第3インバータの出力が入力され、前記第2プロセッサがデバッギング状態であるか否かを示す第1制御信号を前記ステートマシンに出力する第2論理ゲートと、
    前記第3パルス信号と前記ステートマシンから出力され前記第1プロセッサがデバッギング状態であるか否かを示す第2制御信号とが入力され、前記第2制御信号の論理値に応じて前記第4信号を発生する第3論理ゲートとを含み、
    前記第2フリップフロップシリーズおよび前記第2フリップフロップは同一のリセット信号が入力され、
    前記第2制御信号は、前記第1プロセッサが既にデバッギング状態にあるときに重複してデバッギング状態になることを防止するための信号であることを特徴とする請求項6に記載のコ−デバッギング機能を支援する半導体集積回路。
  9. 前記JTAG回路は、
    バウンダリスキャン動作を制御するTAPコントローラと、
    直列に連結されたバウンダリスキャンセルとを含むことを特徴とする請求項1に記載のコ−デバッギング機能を支援する半導体集積回路。
  10. デバッギングプログラムに従ってデバッギングを実行させるデバッグホストと、
    前記デバッグホストから入力される信号をJTAGインターフェース信号に換えるホストインターフェースと、
    前記ホストインターフェースからJTAGインターフェース信号を受け入れてコ−デバッギング動作を実行する半導体集積回路とを含み、
    前記JTAGインターフェース信号は前記半導体集積回路がコ−デバッギング動作を実行するようにし、
    前記半導体集積回路は、
    第1周波数で動作し、デバッギングルーチン時、デバッギング状態を示す第1信号を発生する第1プロセッサと、
    前記第1周波数と異なる第2周波数で動作する第2プロセッサと、
    前記第1プロセッサから前記第1周波数に同期して前記第1信号が入力され前記第2プロセッサもデバッギング状態になるように前記第2周波数に同期した第2信号を発生するトリガ回路と、
    前記第1および第2プロセッサがデバッギング状態であるとき、前記第1および第2プロセッサに共通のJTAG端子からテストデータが入力されてJTAGに基づいて前記第1および第2プロセッサを直列にバウンダリスキャンし、その結果として前記JTAG端子にテストデータを出力するJTAG回路とを含み、
    前記デバッグホストは、前記第1および第2プロセッサに共通に使用されることを特徴とする半導体集積回路テストシステム。
  11. 前記第1プロセッサはCPUであり、前記第2プロセッサはDSPであることを特徴とする請求項10に記載の半導体集積回路テストシステム。
  12. 前記第1プロセッサは第1CPUであり、前記第2プロセッサは前記第1プロセッサと異なる第2CPUであることを特徴とする請求項10に記載の半導体集積回路テストシステム。
  13. 前記第2プロセッサはデバッギングルーチン時、デバッギング状態を示す第3信号を発生し、
    前記トリガ回路は前記第2プロセッサから前記第2周波数に同期して前記第3信号が入力されて、前記第1プロセッサもデバッギング状態になるように前記第1周波数に同期した第4信号を発生することを特徴とする請求項12に記載の半導体集積回路テストシステム。
  14. 前記トリガ回路は、
    前記第1信号が入力されて、前記第2信号を出力する第1同期回路と、
    前記第3信号が入力されて前記第4信号を出力する第2同期回路と、
    前記第1および第2同期回路の動作を制御するステートマシンとを含むことを特徴とする請求項13に記載の半導体集積回路テストシステム。
  15. 前記ステートマシンは、前記第1プロセッサがデバッギング状態にあるとき、前記第4信号の発生を遮断するように、前記第2同期回路を制御することを特徴とする請求項14に記載の半導体集積回路テストシステム。
  16. 前記第1同期回路は、
    前記第1信号が入力され、第1クロック信号に同期して出力する第1フリップフロップと、
    前記第1フリップフロップの出力が入力される第1インバータと、
    前記第1信号および前記第1インバータの出力が入力され、第1パルス信号を発生する第1論理ゲートと、
    電源電圧が入力され、第2クロック信号に同期されて第2パルス信号を発生し、前記第1パルス信号によってリセットされる第1フリップフロップシリーズと、
    前記第1フリップフロップシリーズの出力が入力される第2インバータと、
    前記第2インバータの出力が入力され、前記第2クロック信号に同期して第3パルス信号を発生する第2フリップフロップシリーズと、
    前記第3パルス信号が入力され、前記第2クロック信号に同期して第4パルス信号を発生する第2フリップフロップと、
    前記第4パルス信号が入力される第3インバータと、
    前記第3パルス信号および前記第3インバータの出力が入力され、前記第1プロセッサがデバッギング状態であるか否かを示す第1制御信号を前記ステートマシンに出力する第2論理ゲートと、
    前記第3パルス信号と前記ステートマシンから出力され前記第2プロセッサがデバッギング状態であるか否かを示す第2制御信号とが入力され、前記第2制御信号の論理値に応じて前記第2信号を発生する第3論理ゲートとを含み、
    前記第2フリップフロップシリーズおよび前記第2フリップフロップは同一のリセット信号が入力され、
    前記第2制御信号は、前記第2プロセッサが既にデバッギング状態にあるときに重複してデバッギング状態になることを防止するための信号であることを特徴とする請求項15に記載の半導体集積回路テストシステム。
  17. 前記第2同期回路は、
    前記第3信号が入力され、第1クロック信号に同期して出力する第1フリップフロップと、
    前記第1フリップフロップの出力が入力される第1インバータと、
    前記第3信号および前記第1インバータの出力が入力され、第1パルス信号を発生する第1論理ゲートと、
    電源電圧が入力され、第2クロック信号に同期して第2パルス信号を発生し、前記第1パルス信号によってリセットされる第1フリップフロップシリーズと、
    前記第1フリップフロップシリーズの出力が入力される第2インバータと、
    前記第2インバータの出力が入力され、前記第2クロック信号に同期して第3パルス信号を発生する第2フリップフロップシリーズと、
    前記第3パルス信号が入力され、前記第2クロック信号に同期して第4パルス信号を発生する第2フリップフロップと、
    前記第4パルス信号が入力される第3インバータと、
    前記第3パルス信号および前記第3インバータの出力が入力され、前記第2プロセッサがデバッギング状態であるか否かを示す第1制御信号を前記ステートマシンに出力する第2論理ゲートと、
    前記第3パルス信号と前記ステートマシンから出力され前記第1プロセッサがデバッギング状態であるか否かを示す第2制御信号とが入力され、前記第2制御信号の論理値に応じて前記第4信号を発生する第3論理ゲートとを含み、
    前記第2フリップフロップシリーズおよび前記第2フリップフロップは同一のリセット信号が入力され、
    前記第2制御信号は、前記第1プロセッサが既にデバッギング状態にあるときに重複してデバッギング状態になることを防止するための信号であることを特徴とする請求項15に記載の半導体集積回路テストシステム。
  18. 前記JTAG回路は、
    バウンダリスキャン動作を制御するTAPコントローラと、
    直列に連結されたバウンダリスキャンセルとを含むことを特徴とする請求項10に記載の半導体集積回路テストシステム。
JP2005025678A 2004-02-10 2005-02-01 コ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステム Active JP5536297B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020040008788A KR100880832B1 (ko) 2004-02-10 2004-02-10 코-디버깅 기능을 지원하는 반도체 집적회로 및 반도체집적회로 테스트 시스템
KR2004-008788 2004-02-10

Publications (2)

Publication Number Publication Date
JP2005227276A JP2005227276A (ja) 2005-08-25
JP5536297B2 true JP5536297B2 (ja) 2014-07-02

Family

ID=34880246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005025678A Active JP5536297B2 (ja) 2004-02-10 2005-02-01 コ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステム

Country Status (3)

Country Link
US (3) US20050193276A1 (ja)
JP (1) JP5536297B2 (ja)
KR (1) KR100880832B1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100880832B1 (ko) * 2004-02-10 2009-01-30 삼성전자주식회사 코-디버깅 기능을 지원하는 반도체 집적회로 및 반도체집적회로 테스트 시스템
JP4616118B2 (ja) 2005-08-04 2011-01-19 株式会社リコー 光走査装置及び画像形成装置
KR101242602B1 (ko) * 2006-02-08 2013-03-19 삼성전자주식회사 테스트 회로를 내장한 시스템 온 칩
US7823017B2 (en) 2006-08-02 2010-10-26 International Business Machines Corporation Structure for task based debugger (transaction-event-job-trigger)
US7594140B2 (en) 2006-08-02 2009-09-22 International Business Machines Corporation Task based debugger (transaction-event-job-trigger)
US7689865B2 (en) * 2006-09-06 2010-03-30 International Business Machines Corporation Middlesoft commander
US7430487B2 (en) * 2006-09-06 2008-09-30 International Business Machines Corporation System and method for implementing a programmable DMA master with data checking utilizing a drone system controller
US8006122B2 (en) * 2007-01-10 2011-08-23 International Business Machines Corporation Methods, systems, and computer products for detection of and policy directed resolution of signaling sympathy sickness in a multisystem cluster
JP5095273B2 (ja) * 2007-06-22 2012-12-12 株式会社東芝 制御装置
US8500393B2 (en) * 2008-09-30 2013-08-06 The Gorman-Rupp Company Chopper pump
US8719649B2 (en) 2009-03-04 2014-05-06 Alcatel Lucent Method and apparatus for deferred scheduling for JTAG systems
US8775884B2 (en) 2009-03-04 2014-07-08 Alcatel Lucent Method and apparatus for position-based scheduling for JTAG systems
US8677198B2 (en) 2009-03-04 2014-03-18 Alcatel Lucent Method and apparatus for system testing using multiple processors
EP2365441B1 (en) * 2010-03-08 2018-01-24 Mobileye Vision Technologies Ltd. System on chip breakpoint methodology
TW201235833A (en) * 2011-02-16 2012-09-01 Ind Tech Res Inst System and method for multi-core synchronous debugging of a multi-core platform
US8635497B2 (en) * 2011-06-28 2014-01-21 Freescale Semiconductor, Inc. Data processing system having a sequence processing unit and method of operation
US8966313B2 (en) 2012-04-30 2015-02-24 Hewlett-Packard Development Company, L.P. Systems and methods for a shared debug pin
US9285418B2 (en) * 2012-04-30 2016-03-15 Qualcomm Incorporated Method and apparatus for characterizing thermal marginality in an integrated circuit
US9304880B2 (en) * 2013-03-15 2016-04-05 Freescale Semiconductor, Inc. System and method for multicore processing
US9405604B2 (en) * 2014-04-15 2016-08-02 Apple Inc. Method and apparatus for connecting debug interface to processing circuits without sideband interface
CN107831428B (zh) * 2017-12-06 2020-08-07 西安智多晶微电子有限公司 芯片量产测试***
US10846250B2 (en) * 2018-11-12 2020-11-24 Arm Limited Apparatus and method for handling address decoding in a system-on-chip

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63109546A (ja) * 1986-10-28 1988-05-14 Nec Corp プログラムデバツグシステム
US6013340A (en) * 1995-06-07 2000-01-11 Nike, Inc. Membranes of polyurethane based materials including polyester polyols
JP3791859B2 (ja) 1996-10-30 2006-06-28 富士通株式会社 ネットワークのスキャンパスを階層的に構成するスキャン装置および方法
DE69908682T2 (de) * 1998-03-20 2004-05-13 Texas Instruments Inc., Dallas Prozessor mit Echtzeit-Ablaufsteuerung zur Fehlerbeseitigung ohne Fehlerbeseitigungsmonitor
US6243836B1 (en) * 1998-08-17 2001-06-05 Lucent Technologies, Inc. Apparatus and method for circular buffering on an on-chip discontinuity trace
US6668339B1 (en) * 1999-07-28 2003-12-23 Mitsubishi Denki Kabushiki Kaisha Microprocessor having a debug interruption function
US6567932B2 (en) * 1999-10-01 2003-05-20 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6618839B1 (en) * 1999-11-30 2003-09-09 Synplicity, Inc. Method and system for providing an electronic system design with enhanced debugging capabilities
US6985848B2 (en) * 2000-03-02 2006-01-10 Texas Instruments Incorporated Obtaining and exporting on-chip data processor trace and timing information
US7222315B2 (en) * 2000-11-28 2007-05-22 Synplicity, Inc. Hardware-based HDL code coverage and design analysis
JP2002215421A (ja) * 2001-01-15 2002-08-02 Nec Microsystems Ltd デバッグ装置およびデバッグ装置のブレーク方法
JP4401039B2 (ja) * 2001-06-13 2010-01-20 株式会社ルネサステクノロジ 半導体集積回路
US20030046625A1 (en) * 2001-08-30 2003-03-06 Menon Sankaran M. Method and apparatus for efficient control of multiple tap controllers
KR100430074B1 (ko) * 2002-01-08 2004-05-03 학교법인 한양학원 시스템칩 테스트 접근을 위한 랩드 코아 연결 모듈
KR100880832B1 (ko) * 2004-02-10 2009-01-30 삼성전자주식회사 코-디버깅 기능을 지원하는 반도체 집적회로 및 반도체집적회로 테스트 시스템

Also Published As

Publication number Publication date
KR20050080686A (ko) 2005-08-17
US8055946B2 (en) 2011-11-08
US7644310B2 (en) 2010-01-05
US20080307260A1 (en) 2008-12-11
US20100088564A1 (en) 2010-04-08
US20050193276A1 (en) 2005-09-01
KR100880832B1 (ko) 2009-01-30
JP2005227276A (ja) 2005-08-25

Similar Documents

Publication Publication Date Title
JP5536297B2 (ja) コ−デバッギング機能を支援する半導体集積回路および半導体集積回路テストシステム
Krstic et al. Embedded software-based self-test for programmable core-based designs
Riley et al. Cell broadband engine debugging for unknown events
US6385742B1 (en) Microprocessor debugging mechanism employing scan interface
Hopkins et al. Debug support strategy for systems-on-chips with multiple processor cores
US7665002B1 (en) Multi-core integrated circuit with shared debug port
US6522985B1 (en) Emulation devices, systems and methods utilizing state machines
US7533315B2 (en) Integrated circuit with scan-based debugging and debugging method thereof
US9274169B2 (en) Asynchronous programmable JTAG-based interface to debug any system-on-chip states, power modes, resets, clocks, and complex digital logic
US8892973B2 (en) Debugging control system using inside core event as trigger condition and method of the same
JP5275333B2 (ja) 状態マシンの状態を追跡する複製状態マシンを備える集積回路
WO2012075260A1 (en) Debug state machine and processor including the same
JP4443545B2 (ja) クロックドメインにおける試験インターフェースの分散制御を備えるエミュレーション装置、システムおよび方法
KR100907254B1 (ko) Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법
Huang et al. A retargetable embedded in-circuit emulation module for microprocessors
Apostolakis et al. Functional processor-based testing of communication peripherals in systems-on-chip
Grosso et al. A software-based self-test methodology for system peripherals
Lee et al. A low-cost SOC debug platform based on on-chip test architectures
JP2004094451A (ja) オンチップjtagインタフェース回路およびシステムlsi
Grosso et al. Functional test generation for DMA controllers
JP2007271346A (ja) 半導体集積回路
Yi et al. A scan cell design for scan-based debugging of an SoC with multiple clock domains
JP2006146757A (ja) デバッグ用レジスタおよびデータ転送方法
Kulkarni et al. Dataset development of GPU block using Scan Dump for Silicon Debug
Ueda et al. Automated system level functional test program generation on ATE from EDA using Functional Test Abstraction

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110329

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110627

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120719

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20120726

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20120928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140424

R150 Certificate of patent or registration of utility model

Ref document number: 5536297

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250