JP2004527036A - Design verification method and device for complex IC without logic simulation - Google Patents

Design verification method and device for complex IC without logic simulation Download PDF

Info

Publication number
JP2004527036A
JP2004527036A JP2002572060A JP2002572060A JP2004527036A JP 2004527036 A JP2004527036 A JP 2004527036A JP 2002572060 A JP2002572060 A JP 2002572060A JP 2002572060 A JP2002572060 A JP 2002572060A JP 2004527036 A JP2004527036 A JP 2004527036A
Authority
JP
Japan
Prior art keywords
design
fpga
event
data
complex
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.)
Pending
Application number
JP2002572060A
Other languages
Japanese (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.)
Advantest Corp
Original Assignee
Advantest 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 Advantest Corp filed Critical Advantest Corp
Publication of JP2004527036A publication Critical patent/JP2004527036A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • G01R31/318357Simulation
    • 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/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/331Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation

Landscapes

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

Abstract

複雑なICの設計をイベントテスタとフィールド・プログラマブル・ゲートアレイ(FPGA)、あるいはイベントテスタとエミュレータボードの組み合わせにより行う検証方法および装置。この設計検証方法は、現在のIC設計検証にとってはボトルネックであるロジックシミュレーションのプロセスを不要にする。この速度の遅いシミュレーションを設計検証プロセスから除去することにより、広範囲な設計検証を設計したICの製造の前に行うことができる。またこのような広範囲な設計検証が可能になったので、大量生産前に必要であった試作品の作成を不要にすることができる。A verification method and apparatus for designing a complex IC by using an event tester and a field programmable gate array (FPGA) or a combination of an event tester and an emulator board. This design verification method eliminates the need for a logic simulation process that is a bottleneck for current IC design verification. By removing this slow simulation from the design verification process, a wide range of design verification can be performed prior to manufacturing the designed IC. In addition, since such a wide range of design verification can be performed, it is not necessary to create a prototype required before mass production.

Description

【技術分野】
【0001】
この発明は、複雑なICの設計を検証するための方法とその装置に関する。特に本発明は、ロジックシミュレーションの手法を用いずに、システムオンチップ(SOC)のような複雑なICの設計を、イベント型テストシステムにより、迅速、正確かつ低コストで検証する方法と装置に関する。
【背景技術】
【0002】
現在のVSLIのような半導体集積回路(IC)の設計は、一般にEDA(エレクトロニック・デザイン・オートメーション:電子設計自動化)と呼ばれるコンピュータを用いたハードウエア設計の環境において、例えばVerilogあるいはVHDLと称されるハードウエア記述言語(HDL)を用いて行われる。ハードウエアの設計はブロックあるいはサブブロック毎に行われ、ビヘイビオラルレベル、ゲートレベル等のシミュレータ(Verilog/VHDLシミュレータ)により、その設計の検証が行われている。このようなシミュレーションは、そのハードウエア設計がシリコンICとして作成される前に、設計者の意図した機能が果たされるかを検証することを目的としている。しかし、現在では、チップ全体についてのシミュレーションを行うためのシミュレータのスピードが遅すぎるので、そのハードウエア設計は部分的にしか検証されていない。
【0003】
完全な機能検証が行われないかぎり、設計エラーを発見し取り除くことはできないので、複雑なICの設計において、その設計の検証は最も重要で且つ難しいタスクである。同時に、チップ全体の設計検証は製品の開発生産サイクルにおいて、必要不可欠なものである。しかしシミュレーションのスピードが遅いことと今日のIC設計におけるサイズが大きいことから、現在の検証ツールや検証方法によっては、チップ全体の設計検証をすることはほとんど不可能になってきている(M.Keating and P.Bricaud,"Reuse methodology manual for system-on-a-chip design",Kluwer Academic Publishers,0-7923-8175-0,1998;R.Rajsuman,"System-on-a-chip:Design and Test",Artech House Publishers Inc.,ISBN 1-58053-107-5,2000)。
【0004】
設計検証はあらゆるシステムの設計プロジェクト、例えば上記のシステムオンチップの設計プロジェクトにおいて、最も重要な業務の1つである(Rajsuman,"System-on-a-chip:Design and Test",2000,上掲)。設計検証とはシステムが意図した動作をすることを確定することであり、そのシステム動作に信頼を与えることである。複雑なICの設計検証とは、機能およびタイミング性能の双方について、そのICハードウエアの動作を検証することである。それは今日の技術においては、広範囲なビヘイビオラル・シミュレーション、ロジック・シミュレーションおよびタイミング・シミュレーション、さらにエミュレーション、またはハードウエア試作品を用いて実現している。
【0005】
IC設計プロセスの初期段階では、設計仕様の開発とRTL(レジスタ・トランスファー・レベル)コーデイングとともに、ビヘイビオラルモデルを作成して、システムシミュレーションのためのテストベンチを形成する。一般的に設計の初期段階では、RTLモデルや機能モデルが特定されるまでに、ブロックの有効なテスト項目やテスト環境を開発することが目的である。効率的な設計検証は、テスト品質、テストベンチの完全性、各種モデルの抽象化レベル、EDAツール、およびシミュレーション環境等に依存する。
設計検証方法は、設計の階層に追随する。最初に末端レベルのブロックの設計が正しいかが個別に検証される。これらのブロックの機能が検証されると、これらのブロック間のインターフェイスが正しいかが、信号の処理タイプおよびデータ内容について検証される。
【0006】
最も重要である次のステップでは、フルチップモデルについてアプリケーション・ソフトウエアあるいはそれと同等のテストベンチを実行してチップ全体としての検証を行う。アプリケーション・ソフトウエアの実行は、そのフルチップのソフトウエアを実時間で起動することによりのみ検証できるので、ハードウエア、ソフトウエアによるコシミュレーションが必要である。コシミュレーションはインストラクション・セット・アーキテクチャ(ISA)モデル、バス・ファンクショナル・モデル(BFM)、あるいはビヘイビオラルC/C++モデルを用いて実施できる。コシミュレーション以外に今日使用されている他の技術は、エミュレーションあるいはハードウエアによる試作品である(C.Flynn,"Developing an emulation environment",Integrated System Design Magazine,pp.46-52,April 2001;A.Dieckman,"HW-SW co-verification with emulation,co-simulation and FPGA based prototyping",Proceedings of Design and Test in Europe,pp.98-101,2001;R.Ulrich et al.,"Debugging of FPGA based prototypes-A case study",Proceedings of Design and Test in Europe,pp.109-113,2001)。
【0007】
エミュレーションシステムは非常に高価格であるが(100万ドルオーダーのコストがかかる)、そのスピードはコシミュレーションのスピードより遥かに速い(大まかに100Kから1Mサイクル/秒程度)。設計記述の異なるレベルにおけるシミュレーションのスピードを、図1において比較して示している。ここでは、上記のように、BFMはバス・ファンクショナル・モデル、ISAはインストラクション・セット・アーキテクチャ、そしてRTLはレジスタ・トランスファー・レベルと称している。また、図1に示すロジックは、ネットリストに用いるようなゲートレベルを意味する。現存するどの検証ツールや検証方法も、ソフトウエア・アプリケーションを、設計検証のために広範囲に駆動させることはできない。よって、かぎられたチップの機能性だけの検証が行われている。
【0008】
エンジニアにより最適な設計検証を行っても、最初のシリコン品はウエハレベルでのテストにおいて、その全機能のうち約80パーセント程度しか正常に動作せず、また意図したシステムに組み込んだテストでは、50パーセント以上がフェイルとなる。この基本的な理由は、システムレベルのテストにおいて充分な実時間でのアプリケーションの実行が欠如しているためである。FPGAによる試作品は、EDAシミュレーションツールを用いるために非常にその実施が面倒な上に実行速度が遅く、設計検証としてはまだ不適当である(A.Dieckman,"HW-SW co-verification with emulation,co-simulation and FPGA based prototyping",Proceedings of Design and Test in Europe,pp.98-101,2001;R.Ulrich et al.,"Debugging of FPGA based prototypes-A case study",Proceedings of Design and Test in Europe,pp.109-113,2001)。
【0009】
従って、今日の技術において、このシステムレベルの検証を行うための唯一の手段は、ASICを使用したシリコン試作品を用いることである。そのような現在のIC製品開発サイクル例を図2に示す。図2に示すように、初期設計が終了するとシリコン試作品を作成する。このシリコン試作品は、完全な機能的検証(インシステムテスト)を行うためのシステムボードを形成するために用いられている。この試作品チップについて、その動作における全てのエラーをデバグし、設計を修正し、最終的にそのICの大量生産を行う。
【0010】
具体的には、図2において、設計者は設計すべき複雑なICの設計における要求事項を検討する(段階21)。設計者はその必要事項に基づいてIC設計の仕様を確定する(段階22)。段階23の設計入力プロセスでは、Verilog/VHDLのようなハードウエア記述言語を用いて目的ICのブロックやサブブロックを記述する。このようにして得られた初期設計を、一般にロジック/タイミング・シミュレーション26による設計検証プロセス25を介して、初期テストベンチ28を実行して評価する(段階24)。ロジックシミュレーションを実施する結果として、入力出力データファイルすなわちVCD(バリューチェンジダンプ)ファイル29が形成される。VCDファイル29に有するデータは、入力出力イベントを時間長すなわち遅延時間との関係で記述したリストになっており、したがってイベント形式のデータとなっている。
【0011】
上記のように作成した設計データに基づいて、シリコン試作品が数値30で示すプロセスにおいて形成される。このプロセス30では、段階31において、シリコン試作品33を作成する。得られたシリコン試作品33について、エラー検出のために単体での検証を行う(シリコン検証32、特性テスト35)。現在の技術において、そのようなシリコン試作品33の単体検証は、ICテスタにより行われる。現在のICテスタは、サイクルベースのテストシステムとなっており、サイクル形式で形成されたテストパターンデータを用いてテストベクタを発生するアーキテクチャとなっている。
【0012】
サイクルベースのテストシステムは、EDA環境下において形成されたVCDファイル29がイベント形式であるために、そのファイルデータを直接的に使用することができない。従って、VCDファイル内のテストベクタは、サイクリゼイション(ベクタのサイクル化)34によってサイクル形式のデータに変換される。更に、ICテスタのテストプログラムをサイクル形式のデータを基に作成する必要がある。これは、イベント形式のテストベクタが完全にはサイクル形式のテストベクタに変換することができないからである。このような現在のICテスタによるシリコン試作品設計検証は、まだ不完全で不正確な結果をもたらすことがある。またサイクルベースのテストシステムに合致するように、EDA環境で作成されたイベント形式のデータをサイクル形式に変換するための時間を要する。
【0013】
設計検証・デバグプロセス40において、インシステムテスト37を実施することにより、シリコン試作品33をさらに検証する。インシステムテスト37では、シリコン試作品33を意図するシステムの一部として回路基板に搭載し、システム全体としての動作を検証する。このインシステム検証によりシステムエラー検出やそのエラーの原因の追求がされ、設計のバグが修正される(段階39)。このようなインシステムテストは、設計されたチップについてシリコン試作品を必要とし、且つその試作品を駆動するためのソフトウエア、ボードさらに周辺ハードウエア等が必要となるため、非常に高価となるとともに長時間を要するという問題がある。
【0014】
図2のシリコン試作品の段階30と設計検証・デバグ段階40の間、設計エンジニアとテストエンジニアとの間で多くの相互協力を行って、設計エラーを検出し、そのエラーの原因を究明して、設計エラーを修正する。そのようにして到達した最終設計41について、あらたに形成したテストベンチ45を用いてシミュレーション43を実行する。そしてその設計データに基づいて製造工程によりシリコン製品49が作成され、そのシリコン製品49に生産テスト47を実施する。
図2に示すように、従来の設計検証プロセスは完全な閉ループにはなっていない。すなわち、初期設計からシリコン試作品形成、デバグ・検証、最終設計までの全段階は一方向にシーケンシャルになっている。このため、これら各段階の実行には非常に長時間を要する上に高価である。またどの段階においてもエラーが発生すれば、完全なやり直しが必要となる。
【発明の開示】
【発明が解決しようとする課題】
【0015】
上記問題を改善するために本発明の出願人は、その所有する米国特許出願番号09/428,746および09/941,396において、イベントテスタに基づく検証方法を提案している。この方法では、シリコン試作品と初期シミュレーションテストベンチを電子設計自動化(EDA)環境での各種ツールとともに、イベント型テストシステム(イベントテスタ)に用いて設計検証を行う。この実現のために、各種EDAツールとシミュレータをイベントテストシステムにリンクし、初期設計シミュレーションベクタとテストベンチを実行し、テストベンチとテストベクタを所望の結果が得られるように、イベントテスタにより変更する。EDAツールがイベントテスタにリンクしているため、この変更した内容により最終的なテストベンチを形成することができる。
この方法の例を図3のブロック図に示す。この方法例は、本出願人にとってのみ従来技術であり、一般に公開された技術でも本発明に対する従来技術でもないことに留意されたい。図2と図3の基本的な相違は、初期設計からシリコン試作品形成、デバグ・検証、バグの修正、最終の製造工程あるいは大量生産までの全てのプロセスが、図3の方法では完全なループを実現していることである。
【0016】
上記米国特許出願および第3図の方法において、完全な機能設計、すなわちチップレベルでの設計検証を充分に行うためには、設計シミュレーション(初期テストベンチ)により形成されたフルチップの機能テストベクタをイベントテスタにより実行する。これらのベクタはイベント形式になっており、一般に対象ICのビヘイビオラルモデルまたはVerilog/VHDLモデルにソフトウエア・アプリケーションを実行して発生される。これらのベクタはICの異なる部分について同時に実施されあるいは異なる時間において実施されるが、全体としてのICの動作(ビヘイビア)は、これらの部分を統合した応答内容により決定される。このステップの後に、シリコンチップ(シリコン試作品・プロトタイプ)が図3に示すように形成される。
【0017】
この試作品チップが利用可能になると、この試作品チップをイベントテストシステムに接続して初期テストベンチによる設計シミュレーションベクタを実行して、そのチップの動作を検証する。より具体的には、図3において、イベントテスタ52はシリコン試作品33の機能を、VCD(バリューチェンジダンプ)ファイル29から生成したイベントデータを基にして形成したテストベクタをシリコン試作品33に与えてテストする。VCDファイル29はイベント形式で構成されているので、VCDファイル29のデータをイベントテスタ52において直接的に用いることができる。
【0018】
EDAツール、例えばシミュレーション・分析・デバグ55および波形エデイタ・ビューア56が、API(プログラムド・アプリケーション・インターフェイス)のようなインターフェイス67を通して、イベントテスタ52に接続されている。イベントテスタ52は、波形を観測し編集するソフトウエアツール、例えばイベント波形エデイタ・ビューア58およびDUT(被試験デバイス)波形エデイタ・ビューア59、を有している。これらのエデイタ・ビューア58および59は、上記EDAツール55および56とAPIインターフェイス67を介してリンクし、相互間において通信し且つ互いのデータベースをアクセス可能になっている。イベントテスタ52は、テストベクタ(イベント)をイベント波形エデイタ・ビューア58を介して変更することができる。
【0019】
テストベクタを実行することにより、イベントテスタ52は、テスト結果ファイル53を形成し、この結果データをテストベンチフィードバック69を介して、EDA環境およびEDAツールにフィードバックする。テストベクタを実行した結果をイベントテスタ52において検討し、IC(意図した設計)の間違った動作が修正されるように、イベントテスタ52において(波形エデイタ・ビューア58、59)イベントを変更・編集する。変更したイベントにより新たなテストベンチ51を作成する。このような新規なテストベンチを得るために、テストベンチ発生ツール65、シミュレーション・アナリシス・ツール55、波形ビューア56等のEDAツールが、イベントテスタ52にリンクしている。これらのプロセスを終了すると、図3において、最終シリコン作成行程61により最終的なICデバイス62を作成し、そのデバイスを生産テスト63においてテストする。
【0020】
図3の方法は、設計検証するための物理的なシリコンチップ(試作品)を必要とし、よって、その検証プロセスは全体としてまだ高価である。この制限を改善するために、上述の米国特許出願番号09/941,396は、初期設計データ記述とそのシミュレーションテストベンチを用いてバグのない新たなテストベンチとデバイスモデルを形成するまた別のプロセスを開示している。この技術も出願人の内部知識であり、本発明の従来技術ではないことに留意されたい。このプロセスでは、デバイスの初期設計を初期テストベンチと共にイベントテスタに搭載する。API(プログラムド・アプリケーション・インターフェイス)を用いて、イベントテスタは、初期の設計段階で使用したシミュレータとリンクしている。従って、イベントテスタは、VerilogあるいはVHDLで記述した設計データやその全てのロジックモデル、ビヘイビオラル、BFM、ISAおよびアプリケーションの各テストベンチを有することができる。
【0021】
初期設計に基づくデバイスモデルとそのテストベンチを用いて、その設計結果をイベントテスタにより検証する。この検証システム全体の環境および検証結果がイベント形式になっているので、デバイスのどのような動作上の間違いもただちに検証できる。このイベントテスタは、イベントを変更編集し時間スケールの変更ができるので、このような動作間違いを修正するようにイベントを変更修正することができる。全ての動作間違いが修正されると、修正したデバイスモデルを保存し、新たなテストベンチとテストベクタを形成する。この保存したデバイスモデルは、シリコン製造工程および多量生産工程において使用される。
しかし、このデバイスモデルを用いた設計検証方法は、上述の図3の方法と同様にシミュレーションを基にしているので、スピードが遅いという問題がある。したがって、この問題を改善するためには、新たな設計検証方法および装置が必要となっている。
【0022】
従って、本発明の目的は、ロジックシミュレーションを用いずに、複雑なICの設計検証を、イベント型テストシステムを用いて高速でかつ低コストで実施する方法および装置を提供することである。
【課題を解決するための手段】
【0023】
本発明の第1の様態では、複雑なICの設計検証方法は、イベントテスタにフィールド・プログラマブル・ゲートアレイ(FPGA)を接続するステップと、EDA環境下において形成された設計データを用いてイベントテスタを介してFPGAをインラインプログラミングしてそのFPGAに意図したICと同等なICを形成するステップと、IC設計データから得られたテストベクタをイベントテスタによりそのFPGAに与え、そのFPGAからの応答出力を評価するステップと、その応答出力のエラーを検出してその設計エラーが修正されるようにFPGAのインラインプログラミングを変更するステップと、イベントテスタにエラーのない設計データが得られるまでそのエラー検出と設計エラー修正のステップを繰り返すステップと、により構成される。
【0024】
好ましくは、本発明の方法は更に、得られた設計データをFPGAをインラインプログラミングするために変換するステップを有している。このFPGAをイベントテスタを介してインラインプログラミングするステップは更に、プログラミングデータをイベントテスタのコントロールバスを介してFPGAに送信するステップを有している。
本発明では、好ましくは、テストベクタをFPGAに形成したICに与えるステップは、EDA環境下で形成されたテストベンチを実行するステップとイベントテスタを介して意図したICにアプリケーション・ソフトウエア実行するステップを有している。
本発明の方法は、EDA環境下で形成されたテストベンチからイベントデータを抽出するステップと、その抽出されたイベントデータをイベントテスタに搭載しそのイベントデータを用いてテストベクタを発生してそれをイベントテスタのテストフィクスチャを介してFPGAに与えるステップとを更に有している。
【0025】
本発明の第2の様態においては、FPGAではなく、エミュレータボードを用いる。本発明による複雑なICの設計検証方法は、イベントテスタにエミュレータボードを接続するステップと、そのエミュレータボードが意図したICの機能をエミュレートするようにそのエミュレータボードに意図したICの設計データを供給するステップと、IC設計データから得られたテストベクタをイベントテスタによりエミュレータボードに与え、そのエミュレータボードからの応答出力を評価するステップと、その応答出力のエラーを検出して設計エラーを修正するようにエミュレータボードに供給している設計データを変更するステップと、イベントテスタにエラーのない設計データが得られるまでそのエラー検出と設計エラー修正のステップを繰り返すステップと、により構成される。
【0026】
本発明の更に別の様態は、複雑なICの設計を検証するための装置である。この設計検証装置は、上述の設計検証方法を実現するために各種手段により構成されており、イベントテスタとFPGAとの組み合わせ、あるいはイベントテスタとエミュレータボードとの組み合わせを用いて高速なテストパターンアプリケーションや応答評価、また設計デバグやエラー修正を行う。
【発明の効果】
【0027】
本発明による設計検証では、スピードの遅いEDAツールを用いる代わりにイベントテスタとFPGAのインラインプログラミングを用いて設計検証を行っている。チップ全体レベルでのシミュレーションは使用していない上にFPGAで実行するアプリケーション・ソフトウエアのスピードはシミュレーションと比較してはるかに高速のため、現在の技術では不可能な広範囲な検証を行うことができる。
設計検証プロセスの流れの中におけるスピードの遅いシミュレーションを除去したので、広範囲な設計検証をその設計したICが製造される前に行うことができる。また広範囲な設計検証が可能になったので大量生産前に必要であった試作品の作成も不要となる。このように本発明の設計検証方法は、非常に効率が高く低コストであるとともに、従来のいかなるシステムによる検証方法とも基本的に異なるプロセスを用いている。
【発明を実施するための最良の形態】
【0028】
本発明の出願人は、その所有する米国特許出願番号09/406,300、09/340,371および09/286,226において、イベント型テストシステムについて開示している。本発明による新たな検証方法とその装置により、従来技術における制限を克服することにより、設計検証パラダイムを変更する。
周知のように、ICテスタ(半導体テストシステム)は、100MHzから1GHzのように高速のテストレートを有しており、例えば現在のどのロジックシミュレータよりも遙かに高速である。上述したように、図2、図3に示す従来技術は、設計検証方法の一部としてとしてロジックシミュレータを用いているので、ICテスタの高速なテストレートを活用することができない。本発明は、設計検証のプロセスからスピードの遅いシミュレーションを除去することにより設計工程自体を加速して設計者の生産性を向上させる。
【0029】
この発明の2つの主要な利点は:
(1)設計検証のプロセスからスピードの遅いシミュレーションのプロセスを除去することにより、広範囲の設計検証を意図するICの製造前に行うことができること、および
(2)広範囲な設計検証が可能になったので、大量生産前に必要であった試作品形成を不要にできること、である。
本発明の設計検証方法は非常に効率性が高くまた低コストであり、上述したいかなる従来の設計検証方法とも基本的に異なるプロセスを用いている。
【0030】
本発明は、スピードの遅いEDAシミュレーションツールの替わりに、イベント型テストシステム(イベントテスタ)とインラインプログラミングされたFPGAを用いて設計検証を行う。イベント型テストシステムの基本コンセプトについては、米国特許出願番号09/406,300および09/340,371に開示している。FPGAは、イベントテスタ内のコントロールバスを介してそのイベントテスタ上でプログラムをする(インラインプログラミング)。よって、意図した複雑なICチップのネッテリスト(一般にゲートレベル記述)を有する1個または2個以上のFPGAをイベントテスタ上に実現することができる。
【0031】
FPGAに実際のIC設計を実現しているので、ソフトウエア・アプリケーションを設計検証の目的で、イベントテスタを介して実行することができる。ソフトウエア・アプリケーションの間に生じたエラーはイベントテスタにより検出され、イベントテスタ上で直接的に診断される。FPGAはインラインプログラムされるので、設計データのネットリストに発生するエラー原因を修正することができる。このように、実際のソフトウエア・アプリケーションを長時間実施して広範囲な設計検証を行える。
この設計検証方法を図4に示す。この例では、イベントテスタ92はコントロールバスを介してFPGA(フィールド・プログラマブル・ゲートアレイ)ボード94を接続する。図2および図3と同様に、EDA環境下において、複雑なICの初期設計データ85が、設計の各段階81−83において形成される。更に、テストベンチ87も作成され、これは典型的にはVerilog/VHDLの形式になっている。イベントデータファイル91は、テストベンチデータ87とアプリケーション・ソフトウエア88に基づいて、イベント抽出プロセス89を介して作成する。
【0032】
周知のように、FPGAは意図した回路を構成するために内部にメモリを有している。従って、そのFPGAのメモリに適切なデータを書き込むことにより(プログラミング)、大規模の集積回路をFPGA上に形成することができる。本発明では、イベントテスタ92は、FPGAをプログラミング(インラインプログラミング)するためにコントロールバスを介してそのFPGAに構成データ(コンフィギュレーションデータ)を与える。一般に、そのような構成データは、インラインプログラミング93に格納したFPGAに固有のルールに基づいて、イベントデータ91を翻訳して形成する。
【0033】
FPGAボード94に意図したICを形成した後に、イベントテスタはテストフィクスチャ(例えばポゴピン等)を介してテストパターン(テストベクタ)をFPGAボード94に与える。テストの実行の間、すべてのエラーはイベントテスタにより検出され、イベントテスタ上で直接に診断される。FPGAがインラインにプログラムされるので、エラーの原因を設計ネットリストにより修正することができる。上述の特許出願で開示するように、イベントテスタはイベント(テストパターン)をタイミング、属性、および繰り返しレートのそれぞれについて変更できるので、その設計ICについて広範囲なテストを行うことができる。また、イベントテスタとFPGAの組み合わせにより高速動作ができるので、アトスピード(現実速度)でのソフトウエア・アプリケーションを長時間にわたり実行でき、したがたて広範囲な設計検証を実施できる。全てのエラーを検出し設計を修正した後、最終設計97が確立されて大量生産段階98において使用される。
【0034】
本発明の実施において、FPGAボード94はテストフィクスチャ上に搭載され、そのテストフィクスチャに接続された各種の信号がFPGAを制御するために用いている。これら信号は各種の機能を提供しており、FPGAのインラインプログラミングもこれら信号を介して実施される。
このような信号の例は:
(1)32ビットのコントロールバスと32ビットのコントロールワード;これらの信号は現在の実施例ではテスタコントローラでオープンコレクタとして実施されている。これら信号は双方向性信号としても使用できる。
(2)64ビットアナログ入力出力信号;32ビットコントロールワードと64ビット信号は共に汎用インターフェイスを有しており、各ビットのそれぞれは個別に制御できる。
(3)電源接続;現在の実施例では、16のDUT(被試験デバイス)用電源、および+5V、+15V、−5V、−15Vの各電源を有し、DUT用の各電源は2Aで8Vである。これら電源は高電圧のアプリケーションにも使用するために、並列接続端子およびフローティング端子を有している。
【0035】
FPGAのインラインプログラミングは並列インターフェイスあるいは直列インターフェイスを用いて行う。直列インターフェイスでは、多数のデバイス(FPGA)をデイジーチェーン配列のように接続することができる。この方法は、2つのコントロール信号のみを用いてシステム内の全てのFPGAをプログラムできる。
別の可能な方法としては、バスを用いて多数のFPGAを並列に構成する方法である。このような並列構成において、各デバイスにはそれぞれ固有のクロックとデータが必要である。両バスを用いれば合計96のコントロールビットが利用可能になり、よって最高48のFPGAを並列にプログラムすることができる(1のFPGAにつき1クロックと1データライン)。
【0036】
第3に可能な方法は、最も一般的な方法であり、並列接続とデイジーチェーン接続の組み合わせである。この例を図5に示す。図5の例において、FPGAボード94は直列および並列に接続されたFPGA94−94を有する。イベントテスタ92は、インラインプログラミング(FPGAに意図したICを作成する)をするために、データとクロックをFPGA94に並列的に供給する。結果として形成されたICはインターフェイス95を有しており、そのインターフェイスを用いて、イベントテスタのピンカードとのコミュニケーションをテストフィクスチャを介して実現する。
【0037】
上述したように、本発明の設計検証方法は、スピードの遅いシミュレーションに替えて、イベントテスタとインラインプログラミングされたFPGAを用いて設計検証を行う。フルチップ(チップ全体)レベルでのシミュレーションを使用しないこと、さらにアプリケーション・ソフトウエアがFPGA上ではるかに高速に実行できる(シミュレーションと比較して)ことから、本発明により今日の技術では不可能な広範囲の設計検証を行うことができる。
【0038】
図6は本発明の第2の実施例を示しており、この実施例では、FPGAのインラインプログラミングに替えて、エミュエータを用いている。この場合、イベントテスタのコントロールバス(上述の32ビットのコントロールワード、64ビットのアナログ信号)は、エミュレータのインターフェイスバスにマップしている(エミュレータのインターフェイスは一般に32ビットあるいは64ビットなので、コントロールバスでは利用可能の96ビット中の32ビットあるいは64ビットが使用される)。アイコス・システム社のようなエミュレータ業者は、エミュレーションシステムをどのシステムにも接続できるように、エミュレーションインターフェイスを公開している。
【0039】
このようにエミュレーションシステムにおけるインターフェイスが公開されているので、図6に示すように、インラインプログラミングされたFPGAに替えてエミュレータを用いることができる。この実施例は、エミュレータボードのみを使用するので(エミュレーションシステム全体ではなく)、コストはFPGAの方法よりも多少高価ではあるが、エミュレーションシステム全体を使用する場合に比べるとはるか低コストとなる。また、設計データを搭載してアプリケーション・ソフトウエアをエミュレーションボード上で実施して、設計エラーをイベントテスタでデバグする場合、その検証のスピードはスピードの遅いコミュニケーションバスに制限される。
【0040】
具体的には、図6において、エミュレータボード104はエミュレータインターフェイスバスを介してイベントテスタ92に接続している。エミュレータボード104は、エミュレータボードインターフェイス101を介してテストベンチやアプリケーション・ソフトウエア等のデータを受信する。エミュレータボード104には更にデータロードステップ102を介して設計データがロードされる。結果として、エミュレータボード104は設計ICをエミュレートする。
エミュレータボードにテストベンチを実行することにより、イベントデータがイベントファイル105に作成される。イベントテスタ92は、このイベントデータを用いてエミュレータボード104の設計データをエミュレータインターフェイスバスを介してテストし、そのエミュレータボード104の応答出力を評価する。全てのエラーを検出し設計データを修正した後に、大量生産のために用いる最終設計107を確立する。
【0041】
図7Aおよび図7Bは、本発明の検証方法と第3図に示す検証方法(従来方法ではない)を並べて比較している。図7Aと図7Bの双方において、IC設計のステップ101により設計データファイル102とテストベンチ103が形成される。そして、図7Aの方法では、その設計データファイル102とテストベンチ103を用いてロジックシミュレーション105を実行する。周知のように、ソフトウエアのプロセスによって構成されるこのロジックシミュレーションは、意図したICの動作スピードと比べて非常に動作が遅い。この図7Aの方法では、設計データに基づいてシリコン試作品111を作成し、それをイベントテスタ110でテストする。
【0042】
ロジックシミュレータ105は、入力出力信号データ、例えばVCD(バリューチェンジダンプ)ファイル107を形成し、そのイベントデータを抽出してイベントデータファイル108を作成する。イベントテスタ110はそのイベントデータを用いてテストベクタを生成し、そのテストベクタをシリコン試作品111に供給する。従って、シリコンデバグ・検証ステップ112において、設計エラーを検出し、バグ修正ステップ106において設計バグを修正して、それを設計ステップにフィードバックする。
【0043】
図7Bに示す本発明では、テストシステム115はイベントテスタ120とFPGA124との組み合わせの構成となっている。設計データ102は、FPGAをプログラムしてその意図したICをFPGAに実現するために用いられる。イベントデータ116はテストベンチ103を用いて生成し、イベントテスタ120はそのイベントデータ116により生成したテストベクタを発生する。FPGA124は、実際のIC速度に最も近い速度で意図したICの動作をするので、アプリケーション・ソフトウエアをアトスピードテストとして本発明のテスト方法で実行することができる。
【0044】
図7Aと図7Bから明らかなように、本発明の新規方法は設計検証のプロセスからロジックシミュレータ105を除去している。ロジックシミュレーションは動作スピードが遅いため、現在の設計検証にとってはボトルネックであり、このシミュレーション行程を除去することにより短時間で広範囲な検証を行うことができる。本発明の方法は、イベントテスタ120の全ての設計エラーを、ASIC試作品を必要とせずにデバグすることができる。本発明の検証工程は、現存する他の方法に比べて費用効率とスピードが極めて高い。
【0045】
上述したように、本発明は、スピードの遅いEDAシミュレーションツールを用いることなく、イベントテスタとインラインプログラムしたFPGAを用いて設計を検証する。フルチップレベルのシミュレーションを使用しない上に、アプリケーション・ソフトウエアがFPGA上で非常に高速に実行される(シミュレーションと比べて)ので、現在の技術では不可能な広範囲な設計検証を行うことができる。
設計検証のプロセスからスピードの遅いシミュレーションを除去したので、設計したICが製造される前に広範囲な設計検証を行うことができる。そして広範囲な設計検証が可能になったため、大量生産の前に必要であった試作品作成を不要にできる。本発明の設計検証は非常に効率的で低コストであり、また現存する上述のいかなるシステムにおける設計検証方法とも基本的に異なるプロセスを用いている。
【0046】
好ましい実施例しか明記していないが、上述した開示に基づき、添付した請求の範囲で、本発明の精神と範囲を離れることなく、本発明の様々な形態や変形が可能である。
【図面の簡単な説明】
【0047】
【図1】図1は、複雑なICの開発における各種の抽象レベルとそのシミュレーション速度との関係を示す図である。
【図2】図2は、従来技術によるシリコン試作品を用いた設計検証のプロセスを示す概略図である。
【図3】図3は、他の設計検証方法の例を示す概略図であり、その方法は出願人の内部知識でありかつ米国特許出願番号09/941,396の主題となっている。
【図4】図4は、イベントテスタとFPGAのインラインプログラムとの組み合わせを用いた本発明の設計検証方法および装置の基本構成例を示すブロック図である。
【図5】図5は、並列でかつデイジーチェーン構成による、本発明のFPGAの構成例を示す概略図である。
【図6】図6は、エミュレータボードとイベントテスタとの組み合わせを用いた本発明の設計検証方法とその装置の基本構成例を示すブロック図である。
【図7】図7A−図7Bは、3図の検証方法と本発明の検証方法とを比較した概略図である。
【Technical field】
[0001]
The present invention relates to a method and apparatus for verifying the design of a complex IC. In particular, the present invention relates to a method and apparatus for quickly, accurately, and cost-effectively verifying the design of a complex IC such as a system-on-chip (SOC) using an event-based test system without using a logic simulation technique.
[Background Art]
[0002]
The current design of a semiconductor integrated circuit (IC) such as VSLI is referred to as Verilog or VHDL in a hardware design environment using a computer generally called EDA (Electronic Design Automation). This is performed using a hardware description language (HDL). Hardware design is performed for each block or sub-block, and the design is verified by a simulator (Verilog / VHDL simulator) at a behavioral level, a gate level, or the like. Such a simulation aims at verifying that the function intended by the designer is performed before the hardware design is created as a silicon IC. However, at present, the hardware design has been only partially verified because the speed of the simulator for simulating the entire chip is too slow.
[0003]
Verification of the design is the most important and difficult task in the design of a complex IC, since a design error cannot be found and eliminated without a full functional verification. At the same time, design verification of the entire chip is indispensable in the product development and production cycle. However, due to the slow simulation speed and the large size of today's IC designs, it is almost impossible to verify the entire chip design using current verification tools and methods (M. Keating and P. Bricaud, "Reuse methodology manual for system-on-a-chip design", Kluwer Academic Publishers, 0-7923-8175-0, 1998; R. Rajsuman, "System-on-a-chip: Design and Test ", Artech House Publishers Inc., ISBN 1-58053-107-5, 2000).
[0004]
Design verification is one of the most important tasks in any system design project, such as the above-mentioned system-on-chip design project (Rajsuman, "System-on-a-chip: Design and Test", 2000, supra). ). Design verification is to confirm that a system performs an intended operation, and to give reliability to the system operation. Verification of the design of a complex IC refers to verifying the operation of the IC hardware for both function and timing performance. It is achieved in today's technology using a wide range of behavioral simulation, logic and timing simulations, as well as emulation or hardware prototypes.
[0005]
In the initial stage of the IC design process, together with development of design specifications and RTL (register transfer level) coding, a behavioral model is created to form a test bench for system simulation. Generally, in the initial stage of design, the purpose is to develop effective test items and test environments for blocks before an RTL model or a functional model is specified. Efficient design verification depends on test quality, test bench integrity, various model abstraction levels, EDA tools, and simulation environment.
The design verification method follows the design hierarchy. First, it is individually verified that the design of the end-level block is correct. Once the function of these blocks has been verified, the correct interface between these blocks is verified for the signal processing type and data content.
[0006]
The most important next step is to run the application software or equivalent test bench on the full chip model to verify the entire chip. The execution of application software can be verified only by activating the full-chip software in real time, so co-simulation with hardware and software is required. Co-simulation can be performed using an instruction set architecture (ISA) model, a bus functional model (BFM), or a behavioral C / C ++ model. Other technologies used today besides co-simulation are emulation or hardware prototypes (C. Flynn, "Developing an emulation environment", Integrated System Design Magazine, pp. 46-52, April 2001; A Dieckman, "HW-SW co-verification with emulation, co-simulation and FPGA based prototyping", Proceedings of Design and Test in Europe, pp. 98-101, 2001; prototypes-A case study ", Proceedings of Design and Test in Europe, pp.109-113, 2001).
[0007]
Emulation systems are very expensive (costs on the order of $ 1 million), but their speed is much faster than that of co-simulation (roughly 100K to 1M cycles / sec). Simulation speeds at different levels of the design description are shown in comparison in FIG. Here, as described above, BFM is referred to as a bus functional model, ISA is referred to as an instruction set architecture, and RTL is referred to as a register transfer level. The logic shown in FIG. 1 means a gate level used for a netlist. None of the existing verification tools or methods can drive software applications extensively for design verification. Therefore, only the functionality of the limited chip is verified.
[0008]
Even if the engineers perform optimal design verification, the first silicon product will operate normally only about 80% of its functions at wafer level test, and 50% at the test incorporated into the intended system. More than a percentage will fail. The fundamental reason for this is the lack of sufficient real-time application execution in system-level testing. The prototype using FPGA is very troublesome to execute because of using an EDA simulation tool, has a low execution speed, and is still unsuitable for design verification (A. Dieckman, "HW-SW co-verification with emulation"). Procedings of Design and Test in Europe, pp. 98-101, 2001; R. Ulrich et al., "Debugging of FPGA based prototypes-A case study", Proceedings of Design and Test in Europe, pp. 109-113, 2001).
[0009]
Thus, in today's technology, the only means to perform this system level verification is to use silicon prototypes using ASICs. An example of such a current IC product development cycle is shown in FIG. As shown in FIG. 2, when the initial design is completed, a silicon prototype is created. This silicon prototype is used to form a system board for complete functional verification (in-system test). For this prototype chip, debug any errors in its operation, modify the design, and finally mass produce the IC.
[0010]
Specifically, in FIG. 2, the designer considers the requirements for designing a complex IC to be designed (step 21). The designer determines the specifications of the IC design based on the necessary items (step 22). In the design input process of step 23, blocks and sub-blocks of the target IC are described using a hardware description language such as Verilog / VHDL. The initial design thus obtained is evaluated by executing an initial test bench 28, generally through a design verification process 25 by a logic / timing simulation 26 (step 24). As a result of performing the logic simulation, an input / output data file, that is, a VCD (value change dump) file 29 is formed. The data included in the VCD file 29 is a list in which the input / output events are described in relation to the time length, that is, the delay time, and is thus event format data.
[0011]
Based on the design data created as described above, a silicon prototype is formed in a process indicated by numeral 30. In this process 30, in step 31, a silicon prototype 33 is created. The obtained silicon prototype 33 is independently verified for error detection (silicon verification 32, characteristic test 35). In the current technology, such a single verification of the silicon prototype 33 is performed by an IC tester. The current IC tester is a cycle-based test system, and has an architecture for generating test vectors using test pattern data formed in a cycle format.
[0012]
The cycle-based test system cannot directly use the VCD file 29 formed under the EDA environment because the file data is in the event format. Therefore, the test vectors in the VCD file are converted into cycle format data by cyclization (vector cycling) 34. Further, it is necessary to create a test program for the IC tester based on the data in the cycle format. This is because a test vector in the event format cannot be completely converted into a test vector in the cycle format. Silicon prototype design verification with such current IC testers may still yield incomplete and inaccurate results. Also, it takes time to convert event-format data created in an EDA environment to cycle-format so as to match a cycle-based test system.
[0013]
In the design verification / debug process 40, the silicon prototype 33 is further verified by performing an in-system test 37. In the in-system test 37, the silicon prototype 33 is mounted on a circuit board as a part of the intended system, and the operation of the entire system is verified. By this in-system verification, a system error is detected and the cause of the error is pursued, and a design bug is corrected (step 39). Such an in-system test requires a silicon prototype for the designed chip, and requires software, a board, and peripheral hardware for driving the prototype. There is a problem that it takes a long time.
[0014]
During the silicon prototype stage 30 and the design verification / debug stage 40 of FIG. 2, a lot of mutual cooperation between the design engineer and the test engineer is performed to detect a design error and investigate the cause of the error. Correct design errors. A simulation 43 is executed on the final design 41 that has been reached in this way, using a newly formed test bench 45. Then, a silicon product 49 is created by a manufacturing process based on the design data, and a production test 47 is performed on the silicon product 49.
As shown in FIG. 2, the conventional design verification process is not completely closed loop. In other words, all stages from initial design to silicon prototype production, debug / verification, and final design are sequential in one direction. Therefore, the execution of each of these steps takes a very long time and is expensive. If an error occurs at any stage, a complete redo is necessary.
DISCLOSURE OF THE INVENTION
[Problems to be solved by the invention]
[0015]
In order to improve the above problem, the applicant of the present invention has proposed a verification method based on an event tester in U.S. Patent Application Nos. 09 / 428,746 and 09 / 941,396 owned by the present applicant. In this method, design verification is performed using a silicon prototype and an initial simulation test bench together with various tools in an electronic design automation (EDA) environment in an event type test system (event tester). To realize this, various EDA tools and simulators are linked to an event test system, an initial design simulation vector and a test bench are executed, and the test bench and the test vector are changed by an event tester so as to obtain a desired result. . Since the EDA tool is linked to the event tester, a final test bench can be formed by the changed contents.
An example of this method is shown in the block diagram of FIG. It should be noted that this example method is prior art only to the applicant and is not a publicly disclosed technique or prior art to the present invention. The basic difference between FIG. 2 and FIG. 3 is that all processes from initial design to silicon prototype formation, debug / verification, bug fixing, final manufacturing process or mass production are completely looped by the method of FIG. That is to realize.
[0016]
In the method of the above-mentioned U.S. Patent Application and FIG. 3, in order to perform a complete functional design, that is, a sufficient design verification at a chip level, a full-chip functional test vector formed by a design simulation (initial test bench) is used as an event. Performed by tester. These vectors are in the form of events, and are generally generated by executing a software application on the behavioral model or Verilog / VHDL model of the target IC. These vectors may be performed simultaneously or at different times for different parts of the IC, but the overall behavior of the IC is determined by the integrated response of these parts. After this step, a silicon chip (silicon prototype / prototype) is formed as shown in FIG.
[0017]
When the prototype chip becomes available, the prototype chip is connected to an event test system and a design simulation vector based on an initial test bench is executed to verify the operation of the chip. More specifically, in FIG. 3, the event tester 52 gives the function of the silicon prototype 33 to the silicon prototype 33 a test vector formed based on the event data generated from the VCD (Value Change Dump) file 29. Test. Since the VCD file 29 is configured in the event format, the data of the VCD file 29 can be directly used in the event tester 52.
[0018]
EDA tools, such as simulation, analysis and debug 55 and waveform editor viewer 56, are connected to the event tester 52 through an interface 67 such as an API (Programmed Application Interface). The event tester 52 has software tools for observing and editing a waveform, for example, an event waveform editor viewer 58 and a DUT (device under test) waveform editor viewer 59. These editor viewers 58 and 59 are linked to the EDA tools 55 and 56 via an API interface 67 so that they can communicate with each other and access each other's databases. The event tester 52 can change a test vector (event) via the event waveform editor / viewer 58.
[0019]
By executing the test vector, the event tester 52 forms a test result file 53, and feeds back the result data to the EDA environment and the EDA tool via the test bench feedback 69. The result of executing the test vector is examined in the event tester 52, and the event is changed and edited in the event tester 52 (waveform editor viewers 58 and 59) so that incorrect operation of the IC (intended design) is corrected. . A new test bench 51 is created based on the changed event. To obtain such a new test bench, EDA tools such as a test bench generation tool 65, a simulation analysis tool 55, and a waveform viewer 56 are linked to the event tester 52. When these processes are completed, in FIG. 3, a final IC device 62 is produced by a final silicon production process 61, and the device is tested in a production test 63.
[0020]
The method of FIG. 3 requires a physical silicon chip (prototype) for design verification, and thus the verification process as a whole is still expensive. To remedy this limitation, the aforementioned U.S. patent application Ser. No. 09 / 941,396 describes an alternative process for forming a new bug-free test bench and device model using an initial design data description and its simulation test bench. Is disclosed. Note that this technique is also the applicant's internal knowledge and not the prior art of the present invention. In this process, the initial device design is mounted on the event tester along with the initial test bench. Using an API (Programmed Application Interface), the event tester is linked to the simulator used in the initial design phase. Therefore, the event tester can have test benches for design data described in Verilog or VHDL and all of their logic models, behavioral, BFM, ISA, and applications.
[0021]
Using a device model based on the initial design and its test bench, the design results are verified by an event tester. Since the environment and the verification result of the entire verification system are in the form of an event, any operational errors of the device can be verified immediately. Since the event tester can change and edit the event and change the time scale, the event tester can change and correct the event so as to correct such an operation error. Once all operational errors have been corrected, the corrected device model is saved and a new test bench and test vectors are created. The stored device model is used in a silicon manufacturing process and a mass production process.
However, since the design verification method using this device model is based on a simulation as in the method of FIG. 3, there is a problem that the speed is low. Therefore, in order to improve this problem, a new design verification method and device are required.
[0022]
Accordingly, an object of the present invention is to provide a method and apparatus for performing design verification of a complex IC at high speed and at low cost by using an event type test system without using logic simulation.
[Means for Solving the Problems]
[0023]
In a first aspect of the present invention, a method for verifying the design of a complex IC includes connecting a field programmable gate array (FPGA) to the event tester, and using the design data formed in the EDA environment. Forming an IC equivalent to the IC intended for the FPGA by in-line programming the FPGA, providing a test vector obtained from the IC design data to the FPGA by an event tester, and outputting a response output from the FPGA. Evaluating, detecting an error in the response output, and changing the in-line programming of the FPGA so that the design error is corrected, and detecting and designing the error until the event tester obtains error-free design data. Steps to repeat error correction steps By constructed.
[0024]
Preferably, the method further comprises the step of converting the obtained design data for in-line programming of the FPGA. The step of in-line programming the FPGA via the event tester further includes transmitting programming data to the FPGA via the event tester's control bus.
In the present invention, preferably, the step of applying the test vector to the IC formed on the FPGA includes the step of executing a test bench formed under an EDA environment and the step of executing application software on the intended IC via an event tester. have.
The method of the present invention comprises the steps of extracting event data from a test bench formed in an EDA environment, mounting the extracted event data on an event tester, generating a test vector using the event data, and Applying to the FPGA via the test fixture of the event tester.
[0025]
In the second embodiment of the present invention, an emulator board is used instead of an FPGA. A method for verifying the design of a complex IC according to the present invention includes the steps of connecting an emulator board to an event tester and supplying design data of the intended IC to the emulator board so as to emulate the function of the intended IC by the emulator board. Providing a test vector obtained from IC design data to an emulator board by an event tester, evaluating a response output from the emulator board, and correcting a design error by detecting an error in the response output. Changing the design data supplied to the emulator board, and repeating the steps of error detection and design error correction until error-free design data is obtained in the event tester.
[0026]
Yet another aspect of the present invention is an apparatus for verifying the design of a complex IC. This design verification device is composed of various means for realizing the above-described design verification method, and uses a combination of an event tester and an FPGA or a combination of an event tester and an emulator board to execute a high-speed test pattern application or Perform response evaluation, design debugging and error correction.
【The invention's effect】
[0027]
In the design verification according to the present invention, design verification is performed by using an event tester and in-line programming of an FPGA instead of using a slow EDA tool. Simulations at the whole chip level are not used, and the speed of the application software running on the FPGA is much faster than the simulations, enabling a wide range of verifications impossible with current technology .
Since the slow simulation in the flow of the design verification process has been eliminated, extensive design verification can be performed before the designed IC is manufactured. In addition, since a wide range of design verification has become possible, it is no longer necessary to create prototypes that were required before mass production. As described above, the design verification method of the present invention is very efficient and low cost, and uses a process basically different from the verification method using any conventional system.
BEST MODE FOR CARRYING OUT THE INVENTION
[0028]
Applicants have disclosed event-based test systems in their proprietary U.S. patent applications Ser. Nos. 09 / 406,300, 09 / 340,371 and 09 / 286,226. The new verification method and apparatus according to the present invention changes the design verification paradigm by overcoming the limitations in the prior art.
As is well known, an IC tester (semiconductor test system) has a test rate as fast as 100 MHz to 1 GHz, and is much faster than, for example, any current logic simulator. As described above, the conventional techniques shown in FIGS. 2 and 3 use a logic simulator as a part of the design verification method, and therefore cannot utilize the high test rate of the IC tester. The present invention speeds up the design process itself by removing slow simulations from the design verification process and improves designer productivity.
[0029]
Two major advantages of the present invention are:
(1) By removing the slow simulation process from the design verification process, a wide range of design verification can be performed before manufacturing an IC intended to be performed; and
(2) Since a wide range of design verification has become possible, it is possible to eliminate the need for forming prototypes which were required before mass production.
The design verification method of the present invention is very efficient and low cost, and uses a process that is fundamentally different from any of the conventional design verification methods described above.
[0030]
The present invention performs design verification using an event-type test system (event tester) and an in-line programmed FPGA instead of the slow EDA simulation tool. The basic concept of an event-based test system is disclosed in U.S. patent application Ser. Nos. 09 / 406,300 and 09 / 340,371. The FPGA programs on the event tester via the control bus in the event tester (in-line programming). Thus, one or more FPGAs having a netlist (generally a gate level description) of the intended complex IC chip can be implemented on the event tester.
[0031]
Since the actual IC design is implemented in the FPGA, the software application can be executed via the event tester for the purpose of design verification. Errors that occur during the software application are detected by the event tester and diagnosed directly on the event tester. Since the FPGA is programmed in-line, it is possible to correct the cause of the error that occurs in the netlist of the design data. In this manner, a wide range of design verification can be performed by executing an actual software application for a long time.
This design verification method is shown in FIG. In this example, the event tester 92 connects an FPGA (field programmable gate array) board 94 via a control bus. Similar to FIGS. 2 and 3, in an EDA environment, initial design data 85 for a complex IC is formed at each stage 81-83 of the design. In addition, a test bench 87 is created, which is typically in the form of Verilog / VHDL. The event data file 91 is created based on the test bench data 87 and the application software 88 through an event extraction process 89.
[0032]
As is well known, an FPGA has a memory therein to configure an intended circuit. Accordingly, a large-scale integrated circuit can be formed on the FPGA by writing appropriate data into the memory of the FPGA (programming). In the present invention, the event tester 92 provides configuration data (configuration data) to the FPGA via a control bus for programming (in-line programming) the FPGA. Generally, such configuration data is formed by translating the event data 91 based on rules specific to the FPGA stored in the in-line programming 93.
[0033]
After forming the intended IC on the FPGA board 94, the event tester supplies a test pattern (test vector) to the FPGA board 94 via a test fixture (for example, pogo pins or the like). During the execution of the test, all errors are detected by the event tester and diagnosed directly on the event tester. Since the FPGA is programmed in-line, the cause of the error can be corrected by the design netlist. As disclosed in the above-mentioned patent application, the event tester can change the event (test pattern) for each of the timing, the attribute, and the repetition rate, so that a wide range of tests can be performed on the design IC. In addition, since high-speed operation can be performed by a combination of the event tester and the FPGA, a software application at an at-speed (actual speed) can be executed for a long time, and thus a wide range of design verification can be performed. After detecting all errors and modifying the design, a final design 97 is established and used in the mass production stage 98.
[0034]
In the embodiment of the present invention, the FPGA board 94 is mounted on a test fixture, and various signals connected to the test fixture are used to control the FPGA. These signals provide various functions, and in-line programming of the FPGA is also performed via these signals.
Examples of such signals are:
(1) 32-bit control bus and 32-bit control word; these signals are implemented as open collectors in the tester controller in the present embodiment. These signals can also be used as bidirectional signals.
(2) 64-bit analog input / output signal; Both the 32-bit control word and the 64-bit signal have a general-purpose interface, and each of the bits can be individually controlled.
(3) Power supply connection: In the present embodiment, there are 16 DUT (device under test) power supplies and + 5V, + 15V, -5V, -15V power supplies, and each power supply for the DUT is 2A and 8V. is there. These power supplies have a parallel connection terminal and a floating terminal for use in high voltage applications.
[0035]
The inline programming of the FPGA is performed using a parallel interface or a serial interface. In a serial interface, multiple devices (FPGAs) can be connected in a daisy-chain arrangement. This method allows all FPGAs in the system to be programmed using only two control signals.
Another possible method is to configure multiple FPGAs in parallel using a bus. In such a parallel configuration, each device requires its own clock and data. With both buses, a total of 96 control bits are available, so that up to 48 FPGAs can be programmed in parallel (one clock and one data line per FPGA).
[0036]
The third possible method is the most common method, which is a combination of parallel connection and daisy chain connection. This example is shown in FIG. In the example of FIG. 5, an FPGA board 94 is connected to an FPGA 94 connected in series and in parallel. 1 −94 6 Having. The event tester 92 supplies data and a clock to the FPGA 94 in parallel for in-line programming (creating an IC intended for the FPGA). The resulting IC has an interface 95, with which the event tester communicates with the pin card via a test fixture.
[0037]
As described above, the design verification method of the present invention performs design verification using an event tester and an in-line programmed FPGA instead of a slow simulation. The invention does not use full-chip (whole-chip) level simulations, and because application software can run much faster on FPGAs (compared to simulations), the present invention allows a wide range of technologies not possible with today's technology. Can be verified.
[0038]
FIG. 6 shows a second embodiment of the present invention. In this embodiment, an emulator is used instead of inline programming of the FPGA. In this case, the control bus of the event tester (the above-described 32-bit control word, 64-bit analog signal) is mapped to the interface bus of the emulator. 32 or 64 bits of the available 96 bits are used). Emulator vendors, such as ICOS Systems, have published emulation interfaces so that emulation systems can be connected to any system.
[0039]
Since the interface of the emulation system is open to the public, an emulator can be used in place of the in-line programmed FPGA as shown in FIG. This embodiment uses only an emulator board (rather than the entire emulation system), so the cost is somewhat more expensive than the FPGA method, but much less expensive than using the entire emulation system. In addition, when application data is loaded on the emulation board and the design error is debugged by an event tester, the verification speed is limited to a slow communication bus.
[0040]
Specifically, in FIG. 6, the emulator board 104 is connected to the event tester 92 via an emulator interface bus. The emulator board 104 receives data such as a test bench and application software via the emulator board interface 101. The emulator board 104 is further loaded with design data via a data loading step 102. As a result, the emulator board 104 emulates the design IC.
By executing the test bench on the emulator board, event data is created in the event file 105. The event tester 92 tests the design data of the emulator board 104 via the emulator interface bus using the event data, and evaluates the response output of the emulator board 104. After detecting all errors and correcting the design data, a final design 107 for mass production is established.
[0041]
7A and 7B compare the verification method of the present invention and the verification method shown in FIG. 3 (not the conventional method) side by side. 7A and 7B, a design data file 102 and a test bench 103 are formed by the step 101 of IC design. 7A, the logic simulation 105 is executed using the design data file 102 and the test bench 103. As is well known, this logic simulation constituted by a software process is very slow in operation compared to the intended operation speed of the IC. In the method of FIG. 7A, a silicon prototype 111 is created based on design data, and is tested by the event tester 110.
[0042]
The logic simulator 105 forms input / output signal data, for example, a VCD (value change dump) file 107, extracts the event data, and creates an event data file 108. The event tester 110 generates a test vector using the event data, and supplies the test vector to the silicon prototype 111. Therefore, a design error is detected in the silicon debug / verification step 112, a design bug is corrected in the bug correction step 106, and the corrected design bug is fed back to the design step.
[0043]
In the present invention shown in FIG. 7B, the test system 115 has a configuration in which the event tester 120 and the FPGA 124 are combined. The design data 102 is used to program the FPGA and implement the intended IC in the FPGA. The event data 116 is generated by using the test bench 103, and the event tester 120 generates a test vector generated by the event data 116. Since the FPGA 124 operates the intended IC at a speed closest to the actual IC speed, the application software can be executed as an at-speed test by the test method of the present invention.
[0044]
7A and 7B, the new method of the present invention eliminates the logic simulator 105 from the design verification process. Since the logic simulation has a low operation speed, it is a bottleneck for the current design verification. By removing this simulation process, a wide range of verification can be performed in a short time. The method of the present invention can debug all design errors of the event tester 120 without the need for an ASIC prototype. The verification process of the present invention is significantly more cost-effective and faster than other existing methods.
[0045]
As described above, the present invention verifies a design using an FPGA inline programmed with an event tester without using a slow EDA simulation tool. In addition to not using full-chip level simulation, the application software runs very fast (compared to simulation) on the FPGA, enabling a wide range of design verification not possible with current technology.
Since the low-speed simulation is removed from the design verification process, a wide range of design verification can be performed before the designed IC is manufactured. In addition, a wide range of design verification has been made possible, eliminating the need to create prototypes that were required before mass production. The design verification of the present invention is very efficient and low cost, and uses a process that is fundamentally different from the design verification methods in any of the existing systems described above.
[0046]
While only preferred embodiments have been set forth, various forms and modifications of the present invention are possible in the appended claims, based on the foregoing disclosure, without departing from the spirit and scope of the invention.
[Brief description of the drawings]
[0047]
FIG. 1 is a diagram illustrating the relationship between various levels of abstraction and the simulation speed in the development of a complex IC.
FIG. 2 is a schematic diagram showing a process of design verification using a conventional silicon prototype.
FIG. 3 is a schematic diagram illustrating an example of another design verification method, which is applicant's internal knowledge and is the subject of US patent application Ser. No. 09 / 941,396.
FIG. 4 is a block diagram showing a basic configuration example of a design verification method and apparatus of the present invention using a combination of an event tester and an inline program of an FPGA.
FIG. 5 is a schematic diagram showing a configuration example of an FPGA of the present invention in a parallel and daisy-chain configuration.
FIG. 6 is a block diagram showing a design verification method of the present invention using a combination of an emulator board and an event tester, and a basic configuration example of a device thereof.
7A and 7B are schematic diagrams comparing the verification method of FIG. 3 with the verification method of the present invention.

Claims (15)

電子設計自動化(EDA)環境において設計プロセスが行われた複雑なIC設計の検証方法において、
フィールド・プログラマブル・ゲートアレイ(FPGA)をイベントテスタに接続するステップと、
EDA環境下で作成したIC設計データに基づきFPGAをイベントテスタを介してインラインプログラミングし、そのFPGA上に意図したICと同等のICを形成するステップと、
イベントテスタによりそのIC設計データから得たテストベクタをFPGAに与え、そのFPGAの応答出力を評価するステップと、
上記応答出力におけるエラーを検出しFPGAのインラインプログラミングを変更することにより設計エラーを修正するステップと、
イベントテスタにエラーのない設計データが得られるまで上記エラー検出と設計エラー修正のステップを繰り返すステップと、
により構成される複雑なIC設計の検証方法。
In a method of verifying a complex IC design that has undergone a design process in an electronic design automation (EDA) environment,
Connecting a field programmable gate array (FPGA) to an event tester;
In-line programming of an FPGA via an event tester based on the IC design data created under the EDA environment to form an IC equivalent to the intended IC on the FPGA;
Providing a test vector obtained from the IC design data to the FPGA by an event tester, and evaluating a response output of the FPGA;
Correcting the design error by detecting an error in the response output and changing the in-line programming of the FPGA;
Repeating the above error detection and design error correction steps until error-free design data is obtained in the event tester;
Verification method of complex IC design composed of
設計データを受信し、その設計データを上記FPGAのインラインプログラミングのために変更するステップを更に有する、請求項1に記載の複雑なIC設計の検証方法。The method of claim 1, further comprising receiving design data and modifying the design data for in-line programming of the FPGA. 上記イベントテスタを介して上記FPGAをインラインプログラミングするステップは、更にプログラミングデータをイベントテスタのコントロールバスを介して上記FPGAに送信するステップを有する、請求項1に記載の複雑なIC設計の検証方法。The method of claim 1, wherein the step of in-line programming the FPGA via the event tester further comprises transmitting programming data to the FPGA via a control bus of the event tester. 上記テストベクタを与えるステップは、更に上記FPGA上に形成した意図したICのためのアプリケーション・ソフトウエアとEDA環境下で形成したテストベンチを実行するステップを有する、請求項1に記載の複雑なIC設計の検証方法。2. The complex IC of claim 1, wherein the step of providing a test vector further comprises the step of executing application software for the intended IC formed on the FPGA and a test bench formed in an EDA environment. How to verify the design. EDA環境下で形成したテストベンチからイベントデータを抽出するステップを更に有する、請求項1に記載の複雑なIC設計の検証方法。The method of claim 1, further comprising extracting event data from a test bench formed in an EDA environment. 上記抽出したイベントデータをイベントテスタに格納し、その抽出したイベントデータを用いてテストベクタを発生し、それをイベントテスタのテストフィクスチャを介して上記FPGAに与えるステップを更に有する、請求項5に記載の複雑なIC設計の検証方法。6. The method according to claim 5, further comprising: storing the extracted event data in an event tester, generating a test vector using the extracted event data, and providing the test vector to the FPGA via a test fixture of the event tester. Verification method for the described complex IC design. 電子設計自動化(EDA)環境において設計プロセスが行われた複雑なIC設計の検証方法において、
エミュレータボードをイベントテスタに接続するステップと、
意図したICの設計データをエミュレータボードに供給してその意図したICの機能をエミュレートさせるステップと、
イベントテスタにより上記IC設計データから得たテストベクタをエミュレータボードに与えてそのエミュレータボードの応答出力を評価するステップと、
上記応答出力におけるエラーを検出し、エミュレータボードに供給しているIC設計データを変更することにより設計エラーを修正するステップと、
イベントテスタにエラーのない設計データが得られるまで上記エラー検出と設計修正のステップを繰り返すステップと、
により構成される複雑なIC設計の検証方法。
In a method of verifying a complex IC design that has undergone a design process in an electronic design automation (EDA) environment,
Connecting the emulator board to the event tester;
Supplying design data of the intended IC to an emulator board to emulate the function of the intended IC;
Providing a test vector obtained from the IC design data to an emulator board by an event tester and evaluating a response output of the emulator board;
Correcting the design error by detecting an error in the response output and changing the IC design data supplied to the emulator board;
Repeating the above error detection and design correction steps until error-free design data is obtained in the event tester;
Verification method of complex IC design composed of
上記設計データを受信しその設計データをエミュレータボードのために変更するステップを更に有する、請求項7に記載の複雑なIC設計の検証方法。The method of claim 7, further comprising the step of receiving the design data and modifying the design data for an emulator board. 上記テストベクタを与えるステップは、更にエミュレータボードに形成した意図したICのためのアプリケーション・ソフトウエアとEDA環境下で形成したテストベンチを実行するステップを有する、請求項7に記載の複雑なIC設計の検証方法。9. The complex IC design of claim 7, wherein the step of providing a test vector further comprises the step of executing application software for an intended IC formed on an emulator board and a test bench formed in an EDA environment. Verification method. EDA環境下で形成したテストベンチからイベントデータを作成するステップを更に有する、請求項7に記載の複雑なIC設計の検証方法。The method for verifying a complex IC design according to claim 7, further comprising a step of creating event data from a test bench formed in an EDA environment. 上記抽出したイベントデータをイベントテスタに格納し、その抽出したイベントデータを用いてテストベクタを発生し、それをイベントテスタのテストフィクスチャを介して上記エミュレータボードに与えるステップを更に有する、請求項10に記載の複雑なIC設計の検証方法。11. The method according to claim 10, further comprising: storing the extracted event data in an event tester, generating a test vector using the extracted event data, and providing the test vector to the emulator board via a test fixture of the event tester. 3. A method for verifying a complex IC design described in 1. 電子設計自動化(EDA)環境において設計プロセスが行われた複雑なIC設計の検証装置において、
フィールド・プログラマブル・ゲートアレイ(FPGA)をイベントテスタに接続する手段と、
EDA環境下で作成した設計データに基づきそのFPGAをイベントテスタを介してインラインプログラミングし、そのFPGA上に意図したICと同等のICを形成する手段と、
イベントテスタによりICの設計データから得たテストベクタをFPGAに与え、そのFPGAの応答出力を評価する手段と、
その応答出力におけるエラーを検出し、FPGAのインラインプログラミングを変更することにより設計エラーを修正する手段と、
イベントテスタにエラーのない設計データが得られるまで上記のエラー検出と設計修正を繰り返す手段と、
により構成される複雑なIC設計の検証装置。
In a verification device for a complex IC design whose design process was performed in an electronic design automation (EDA) environment,
Means for connecting a field programmable gate array (FPGA) to an event tester;
Means for in-line programming the FPGA via an event tester based on the design data created in the EDA environment to form an IC equivalent to the intended IC on the FPGA;
Means for giving a test vector obtained from the design data of the IC by the event tester to the FPGA, and evaluating a response output of the FPGA;
Means for detecting an error in the response output and correcting the design error by changing the in-line programming of the FPGA;
Means for repeating the above error detection and design correction until error-free design data is obtained in the event tester;
Verification device for complex IC design.
上記テストベクタを与える手段は、更に上記FPGA上に形成した意図したICのためのアプリケーション・ソフトウエアとEDA環境下で形成したテストベンチを実行する手段を有する、請求項12に記載の複雑なIC設計の検証装置。13. The complex IC of claim 12, wherein the means for providing a test vector further comprises means for executing application software for an intended IC formed on the FPGA and a test bench formed in an EDA environment. Verification device for design. 電子設計自動化(EDA)環境において設計プロセスが行われた複雑なIC設計の検証装置において、
エミュレータボードをイベントテスタに接続する手段と、
意図したICの設計データをエミュレータボードに供給してその意図したICの機能をエミュレートさせる手段と、
イベントテスタにより上記IC設計データから得たテストベクタをエミュレータボードに与えてそのエミュレータボードの応答出力を評価する手段と、
その応答出力におけるエラーを検出し、上記エミュレータボードに供給している設計データを変更することにより設計エラーを修正する手段と、
イベントテスタにエラーのない設計データが得られるまで上記エラー検出と設計修正を繰り返す手段と、
により構成される複雑なIC設計の検証装置。
In a verification device for a complex IC design whose design process was performed in an electronic design automation (EDA) environment,
Means for connecting the emulator board to the event tester;
Means for supplying design data of an intended IC to an emulator board to emulate the function of the intended IC;
Means for giving a test vector obtained from the IC design data to an emulator board by an event tester and evaluating a response output of the emulator board;
Means for detecting an error in the response output and correcting the design error by changing the design data supplied to the emulator board;
Means for repeating the above-mentioned error detection and design correction until error-free design data is obtained in the event tester;
Verification device for complex IC design.
上記テストベクタを与える手段は、更に上記エミュレータボード上に形成した意図したICのためのアプリケーション・ソフトウエアとEDA環境下で形成したテストベンチを実行する手段を有する、請求項14に記載の複雑なIC設計の検証装置。15. The complex of claim 14, wherein the means for providing a test vector further comprises means for executing application software for an intended IC formed on the emulator board and a test bench formed in an EDA environment. Verification device for IC design.
JP2002572060A 2001-03-14 2002-03-13 Design verification method and device for complex IC without logic simulation Pending JP2004527036A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US27588301P 2001-03-14 2001-03-14
PCT/JP2002/002365 WO2002073474A1 (en) 2001-03-14 2002-03-13 Method and apparatus for design validation of complex ic without using logic simulation

Publications (1)

Publication Number Publication Date
JP2004527036A true JP2004527036A (en) 2004-09-02

Family

ID=23054222

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002572060A Pending JP2004527036A (en) 2001-03-14 2002-03-13 Design verification method and device for complex IC without logic simulation

Country Status (7)

Country Link
US (1) US20020173942A1 (en)
JP (1) JP2004527036A (en)
KR (1) KR20040007463A (en)
CN (1) CN1496527A (en)
DE (1) DE10296464T5 (en)
TW (1) TW563043B (en)
WO (1) WO2002073474A1 (en)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100350582C (en) * 2002-12-09 2007-11-21 刘建光 Method and system for observing all signals inside programmable digital IC chip
US8224636B2 (en) * 2002-12-17 2012-07-17 Cadence Design Systems, Inc. Method and system for implementing parallel execution in a computing system and in a circuit simulator
CN100450041C (en) * 2004-02-21 2009-01-07 华为技术有限公司 Method and device for information transmission
CN100389425C (en) * 2004-12-28 2008-05-21 北京六合万通微电子技术有限公司 Method and equipment for implementing verification of digital-analog mixed type IC
US7562001B2 (en) * 2005-07-29 2009-07-14 International Business Machines Corporation Creating a behavioral model of a hardware device for use in a simulation environment
US7509605B2 (en) 2005-12-12 2009-03-24 International Business Machines Corporation Extending incremental verification of circuit design to encompass verification restraints
US7496820B1 (en) * 2006-03-07 2009-02-24 Xilinx, Inc. Method and apparatus for generating test vectors for an integrated circuit under test
KR100750184B1 (en) * 2006-08-11 2007-08-17 삼성전자주식회사 Indirect simulation method and apparatus of semiconductor integrated circuit
KR100877193B1 (en) 2006-12-12 2009-01-13 (주)프레이맥스 Method for Optimized Design Using Linear Interpolation
US8032848B2 (en) * 2009-01-29 2011-10-04 Synopsys, Inc. Performing abstraction-refinement using a lower-bound-distance to verify the functionality of a circuit design
CN102650678B (en) * 2012-05-04 2014-07-23 惠州市蓝微电子有限公司 Multi-channel calibration and checking method for power management ICs (integrated circuits)
CN104346272B (en) * 2013-07-24 2018-04-10 无锡华润微电子有限公司 Chip automatic simulation verifies system
US9689923B2 (en) 2013-08-03 2017-06-27 Kla-Tencor Corp. Adaptive electrical testing of wafers
DE102015108244A1 (en) * 2014-06-06 2015-12-10 Synopsys, Inc. METHOD AND SYSTEM FOR GENERATING A CIRCUIT DESIGN, METHOD FOR CALIBRATING AN INSPECTION DEVICE, AND METHOD FOR PROCESS CONTROL AND EARNING MANAGEMENT
CN104133185B (en) * 2014-07-03 2017-09-22 惠州市蓝微电子有限公司 More piece managing electric quantity IC multichannel calibration calibration equipment and method
CN105447212A (en) * 2014-08-25 2016-03-30 联发科技(新加坡)私人有限公司 Method for generating verification platform file of integrated circuit and compiling system
CN104267290A (en) * 2014-10-09 2015-01-07 惠州市蓝微电子有限公司 Calibration and verification method for electric power management IC
CN104536807B (en) * 2014-12-30 2018-05-18 武汉理工大学 DC/DC real-time simulators and method based on FPGA
CN105259444A (en) * 2015-11-02 2016-01-20 湖北航天技术研究院计量测试技术研究所 FPGA device test model establishing method
US11354474B2 (en) * 2020-08-31 2022-06-07 Beijing Baidu Netcom Science And Technology Co., Ltd. Method, apparatus and computer storage medium for authenticating chip

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU4347189A (en) * 1988-10-05 1990-05-01 Mentor Graphics Corporation Method of using electronically reconfigurable gate array logic and apparatus formed thereby
US5452231A (en) * 1988-10-05 1995-09-19 Quickturn Design Systems, Inc. Hierarchically connected reconfigurable logic assembly
US5841967A (en) * 1996-10-17 1998-11-24 Quickturn Design Systems, Inc. Method and apparatus for design verification using emulation and simulation

Also Published As

Publication number Publication date
KR20040007463A (en) 2004-01-24
CN1496527A (en) 2004-05-12
TW563043B (en) 2003-11-21
US20020173942A1 (en) 2002-11-21
WO2002073474A1 (en) 2002-09-19
DE10296464T5 (en) 2004-04-15

Similar Documents

Publication Publication Date Title
JP4058252B2 (en) IC design verification method
KR100491461B1 (en) METHOD AND APPARATUS FOR SoC DESIGN VALIDATION
KR100936855B1 (en) Manufacturing method and apparatus to avoid prototype-hold in asic/soc manufacturing
JP2004527036A (en) Design verification method and device for complex IC without logic simulation
US6061283A (en) Semiconductor integrated circuit evaluation system
US7478346B2 (en) Debugging system for gate level IC designs
US7490307B2 (en) Automatic generating of timing constraints for the validation/signoff of test structures
JP3872954B2 (en) System and method for identifying finite state machines and inspecting circuit designs
KR100483876B1 (en) Semiconductor integrated circuit design and evaluation system
US6327556B1 (en) AT-speed computer model testing methods
US20120047413A1 (en) Methods for implementing variable speed scan testing
US7055118B1 (en) Scan chain verification using symbolic simulation
CN113255267B (en) Reprogramming detection of timing violations in simulations using Field Programmable Gate Array (FPGA)
US6304837B1 (en) Automated test vector generation and verification
US7437701B1 (en) Simulation of a programming language specification of a circuit design
Jindal et al. Verification of transaction-level SystemC models using RTL testbenches
WO2007016699A2 (en) Method and system for debug and test using replicated logic
US20020163351A1 (en) Method for producing test patterns for testing an integrated circuit
KR100767957B1 (en) Design Verification Method Using Mixed Emulation, Simulation, and Formal Verification
Abdelatty et al. Fault: Open-source EDA’s missing DFT toolchain
JP4213306B2 (en) Program debugging device for semiconductor testing
KR20060066634A (en) Dynamic-verification-based verification apparatus achieving high verification performance and verification efficiency, and the verification methodology using the same
Das et al. Implementation of a testing environment for digital IP cores
Rajsuman Extending EDA environment from design to test
CN117272883A (en) Distributed simulation synchronization of circuit designs

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060530

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060731

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060829