JP2005346517A - 検証装置および検証方法 - Google Patents

検証装置および検証方法 Download PDF

Info

Publication number
JP2005346517A
JP2005346517A JP2004166615A JP2004166615A JP2005346517A JP 2005346517 A JP2005346517 A JP 2005346517A JP 2004166615 A JP2004166615 A JP 2004166615A JP 2004166615 A JP2004166615 A JP 2004166615A JP 2005346517 A JP2005346517 A JP 2005346517A
Authority
JP
Japan
Prior art keywords
verification
test program
logic
program
rtg
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
JP2004166615A
Other languages
English (en)
Inventor
Hitoshi Sasabuchi
仁志 笹渕
Tatsuya Tochio
達哉 栃尾
Tsuguo Shimizu
嗣雄 清水
Kazunobu Morimoto
和伸 森本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2004166615A priority Critical patent/JP2005346517A/ja
Publication of JP2005346517A publication Critical patent/JP2005346517A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Microcomputers (AREA)

Abstract

【課題】 LSI開発において、多機能、複雑かつ大規模な論理の検証を加速し、不良の早期摘出と検証効率の飛躍的改善を実現することができる技術を提供する。
【解決手段】 検証対象の論理回路を含むプログラム可能なFPGA11a,11bと、前記論理回路のテストプログラム17を乱数に基づいて自動生成するRTG16と、テストプログラム17が格納されるメモリ12a,12bと、モニタプログラムを含むモニタ13と、FPGA11a,11bおよびメモリ12a,12bとモニタ13との間でデータの送受信を行うI/Oインターフェース14a,14bとを備え、テストプログラム17を自動実行して前記論理回路の論理検証を行う。
【選択図】 図1

Description

本発明は、検証装置および検証方法に関し、特に半導体集積回路装置における論理回路の検証に適用して有効な技術に関するものである。
近年、半導体応用製品分野では、半導体プロセスの高密度、高集積化に伴い、搭載アプリケーションの大規模化によるSOC(System On a Chip)化が急速に進んでいる。SOC開発製品の中核をなすマイクロプロセッサは、広範囲なアプリケーションに適用されており、年々、大規模化、高性能化および高品質化が要求されている。このように、高性能化および高品質化に向けた検証には、多大な検証期間が必要となるため、高速、かつ高品質な検証技術の導入が必須となってきている。
例えば、本発明者が検討した技術として、半導体集積回路装置(以下、「LSI」という。)における論理回路の検証においては、RTG(Random Test Generator)によるランダム検証、機能検証ツールによる検証などが考えられる。
RTGは、検証対象のアーキテクチャを念頭において、命令や使用するレジスタ、メモリのアドレスなどをランダムに自動発生させ、その命令列を検証対象上で実行した結果とRTG側で期待した結果とを比較することで、論理機能を検証するテストツールである。RTGは、実チップの検証環境に適用し、量産化前の最終的な品質確認に利用してきた。
また、機能検証ツールは、ユーザが定義した仕様の範囲内で、関連する信号群の値をランダムに発生し、定義仕様から導かれた期待値と比較することで、論理機能を検証するツールである。機能検証ツールは、一般的にシミュレーション環境のみに適用可能である。
さらに、LSI開発における検証方法としては、例えば、ソフトシミュレーションの検証結果のデータを、所定フォーマットに変換してROMに展開し、そのROMの出力をハードシミュレーション用のブレッドボードのLSI回路のテストデータとし、そのハードシミュレーションの検証結果をRAMに格納し、そのRAMの出力をソフトシミュレーションのテストデータとして、LSI回路の検証作業が閉ループで自動的に行われるようにしたものがある(例えば、特許文献1参照)。
特開平9−36237号公報
ところで、前記のような論理回路の検証技術について、本発明者が検討した結果、以下のようなことが明らかとなった。
例えば、前記RTGは、実チップでの検証環境に適用していたため、その実行結果が、RTGが生成する期待値と不一致であった場合、シミュレーションなどで論理の不良かどうかを特定するまでに相当の時間を要する。そして、論理の不良であると特定された場合、手戻りが大きく、時間的、金額的なコストが増大する。
また、前記機能検証ツールは、一部エミュレータと連携可能なものもあるが、一般的にシミュレーション環境でしか適用できない。このため、テストデータ自動生成による工数低減は実現できるものの、テストデータ実行時間の削減は実現できない。また、リソースネックにより、対象論理規模が制限される場合がある。
そこで、本発明の目的は、LSI開発において、多機能、複雑かつ大規模な論理の検証を加速し、不良の早期摘出と検証効率の飛躍的改善を実現することができる技術を提供することにある。
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
すなわち、本発明による検証装置は、検証対象の論理回路を含むプログラム可能な論理素子(FPGAなどのPLD)と、前記論理回路のテストプログラムを自動生成するテストプログラム生成プログラムと、前記テストプログラムが格納されるメモリと、モニタプログラムを含むモニタと、前記論理素子および前記メモリと前記モニタとの間でデータの送受信を行うI/Oインターフェースとを備え、前記テストプログラムを自動実行して前記論理回路の論理検証を行うものである。その際、前記テストプログラム生成プログラムは、乱数に基づいて前記論理回路のテストプログラムを自動生成するプログラム(RTGなど)であることが好ましい。
また、本発明による検証方法は、前記検証装置を利用して前記論理回路のテストプログラムを自動生成し、前記テストプログラムを、シミュレータ上および実チップ上で実行し、前記論理回路の論理検証および/または不良解析を行うものである。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。
(1)実チップ作成前に実機と等価な環境を実現するアーリープロトタイプ環境でランダム検証が可能となるため、システム全体の論理検証が早期に加速され、不良摘出時の対策コストが低減する。
(2)シミュレーション、アーリープロトタイプ、実チップのすべての環境に対して、シームレスな論理検証環境を提供することが可能となる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
(実施の形態1)
図1は本発明の実施の形態1による検証装置のシステム構成を示す図、図2は本実施の形態1の検証装置において、RTGの構造を示す図、図3は検証装置内のメモリのメモリマップを示す図、図4はシミュレーション、アーリープロトタイプおよび実チップにおける検証環境を示す図、図5は検証方法の手順を示す図、図6は各環境でのメモリマップの統一化を示す説明図、図7はTLBの影響確認のためのTLBダンプ機能を示す説明図、図8は制御レジスタの初期値のランダム設定方法を示す説明図、図9は問題発生時の1次切り分け手段を示す説明図、図10はFPGA上の論理からの特定信号の引き出しおよびテストプログラム実行時の波形取得を示す説明図、図11は機能カバレージ取得を示す説明図、図12はアーリープロトタイプ上でのアサーションベース検証を示す説明図である。
まず、図1により、本実施の形態1による検証装置の構成の一例を説明する。本実施の形態の検証装置は、例えば、FPGA(Field Programmable Gate Array)11a,11b、メモリ12a,12b、モニタ13、I/Oインターフェース14a,14bなどから構成されている。
FPGA11a,11b、メモリ12a,12b、I/Oインターフェース14a,14bは、一つのボード15上に搭載されており、それぞれ、ボード15内で接続されている。また、I/Oインターフェース14aは、ボード15外部でモニタ13と有線または無線により接続されている。
FPGA11a,11bは、ユーザ側でプログラム可能な論理素子(デバイス)であり、検証対象の論理回路(被検証論理)が搭載される。
メモリ12a,12bには、テストプログラム、RTG(Random Test Generator)などのソフトウェアやデータなどが格納される。なお、RTGは、検証対象である論理回路のテストプログラムを自動生成するテストプログラム生成プログラムである。
モニタ13は、パソコン(PC),ワークステーション(WS)などであり、モニタプログラムが搭載されている。モニタプログラムは、ボード15やFPGA11a,11bの初期設定、RTGのロードと実行などを行うプログラムである。
I/Oインターフェース14a,14bは、FPGA11a,11bおよびメモリ12a,12bとモニタ13との間で、プログラムやデータを送受信するものである。
図1では、FPGA11a,11b、メモリ12a,12bおよびI/Oインターフェース14a,14bを、ボード15上にそれぞれ2つずつ搭載した場合を示したが、これに限定されるものではなく、1つであってもよく、3つ以上であってもよい。
本実施の形態1による検証装置は、実チップ作成前に実機と等価な環境を実現するアーリープロトタイプを使用してランダム検証を実施し、不良の早期摘出と検証効率の飛躍的改善を実現するものである。なお、アーリープロトタイプは、LSI開発過程において、実チップを作成する前に、実チップと等価的な回路をFPGAなどの論理素子(デバイス)に構築して、初期段階からデバック可能としたものである。
本実施の形態1による検証装置では、アーリープロトタイプ実現装置のソフトウェア格納メモリ12a,12b上にRTG16プログラムを搭載し、乱数を元にしたテストプログラム17の生成と起動を自動的かつ連続的に実行し、検証を加速する。例えば、FPGA11a,11b内の検査対象論理回路がマイクロプロセッサコアを含む場合は、そのマイクロプロセッサコアが、RTG16およびテストプログラム17の実行を行う。
次に、図2により、RTG16の構造を説明する。RTG16は、初期設定S21、テスト命令生成S22、期待値生成(命令シミュレート)S23、テストプログラム生成S24およびメッセージ出力S25などのステップを順に実施するプログラムである。RTG16は、システム仕様(アーキテクチャ)をC言語などで記述したゴールデンモデルを有しており、ゴールデンモデルに基づいて期待値を生成する。
RTG16により生成された、FPGA11a,11b内の被検証論理26のテストプログラム17は、初期化S27、テスト実行S28、割込み処理S29、期待値比較S30などのステップを有する。テストプログラム17の実行結果はRTG16に戻され、ステップS25において、モニタ13に対してメッセージが出力される。また、テストプログラム17の実行結果は、メモリ12a,12bなどに格納される。
次に、図3により、メモリ12a,12b内に格納されるデータ構成の一例を説明する。メモリ12a,12bには、例えば、図3に示すような構成でRTG(本体)16およびテストプログラム17が格納される。メモリ12a,12bからRTG本体を読み出してRTGを実行することにより、FPGA11a,11b内の被検証論理26上でプログラムの生成および実行を行う。RTG16により生成されたテストプログラムは、メモリ12a,12bに格納される。テストプログラムは、初期設定、テスト命令列、期待値比、ループ処理などのデータを含む。
次に、図4〜図12により、論理検証および不良解析の具体的な方法を説明する。
まず、図4により、シミュレーション、アーリープロトタイプおよび実チップにおける検証環境を説明する。
RTG16が生成するテストプログラム17は、ファイル出力が可能である。ファイル出力したテストプログラム17は、シミュレーション、アーリープロトタイプ、実チップの各プラットフォーム上で実行可能である。すなわち、シミュレーション環境41においては、PCまたはWS46によりファイル出力されたテストプログラム17は、シミュレータ42で実行可能である。また、アーリープロトタイプ環境43においては、ファイル出力されたテストプログラム17を、モニタ13経由でメモリ12a,12bにロードして実行することができる。また、実チップ環境44においても、ファイル出力されたテストプログラム17を、モニタ13経由でメモリ12a,12bにロードして実行することができる。なお、実チップ環境44におけるボード15aには、FPGA11a,11bの代わりに実チップ45が搭載されている。
したがって、RTGによりテストプログラムが共通化されるので、シミュレーション・アーリープロトタイプ・実チップ間において、検証環境のポータビリティ(可搬性)が実現される。
次に、図5により、検証段階に応じたRTG動作(単発実行/連続実行)を説明する。LSI開発の各段階における検証は、図5に示すような手順で実施される。本実施の形態1におけるRTGは、シミュレーション、アーリープロトタイプ、実チップの各段階で適用可能である。
まず、ステップS51で、シミュレーションでの単独実行を行う。シミュレーションでは、論理検証が完了したRTL(Register Transfer Level)に対し、RTG16により1回につき1つのテストプログラム17を生成し、シミュレータ42により動作を検証(単発実行)する。テストプログラム17は、RTG16をPCまたはWS46上で実行して生成する。RTG16で生成したテストプログラム17をシミュレータ42に与えて実行する。シミュレーションによる検証が完了したRTLは、論理合成してアーリープロトタイプの環境(FPGA)に論理を搭載して、ステップS53へ進む。検証が完了していない場合は、ステップS51へ戻り、再度、シミュレーションでの単独実行を行う(ステップS52)。
アーリープロトタイプでは、はじめはシミュレーション時と同様、RTG16により1回につき1つのテストプログラム17を生成し、単発実行により動作を検証する(ステップS53)。テストプログラム17は、RTG16をPCまたはWS46上で実行して生成する。生成したテストプログラム17を、モニタ13などを通じてメモリ12a,12bにロードして実行する。論理が安定したらステップS55へ進み、論理が不安定の場合は、ステップS53に戻り、再度、アーリープロトタイプでの単独実行を行う(ステップS54)。
論理の安定を確認した時点で、アーリープロトタイプでの連続実行を行う(ステップS55)。この際、1回につき複数のテストプログラム17を連続的に生成して検証(連続実行)を行う。この場合、モニタ13などを通じてRTG16自体をメモリ12a,12b上にロードし、テストプログラム17の生成と実行を、FPGA11a,11b上に構築した検証対象論理上で連続実行する。アーリープロトタイプでの検証が完了したらステップS57へ進み、未完了の場合はステップS55に戻り、再度、アーリープロトタイプでの連続実行を行う(ステップS56)。
ステップS57では、実チップ45での連続実行を行う。この際、アーリープロトタイプでの連続実行の場合と同様にして、1回につき複数のテストプログラム17を連続的に生成して検証を行う。実チップでの検証が完了したら検証が完了する。未完了の場合はステップS57に戻り、再度、実チップ45での連続実行を行う(ステップS58)。
以上は、論理機能検証の流れであるが、論理不良解析の流れは、この逆のフローとなり、前の環境に戻って再現および解析が可能である。
次に、図6により、すべての環境間でのメモリマップの統一による再現の容易化を説明する。図6に示すように、RTGの生成する命令列のメモリアドレスやレジスタアドレスなどのメモリマップ61は統一されている。シミュレーション環境41、アーリープロトタイプ環境43、実チップ環境44において、同一のメモリマップ61を使用することにより、実チップ45で不良となったものをアーリープロトタイプやシミュレーションで解析することが可能となる。
次に、図7により、TLB(Translation Lookaside Buffer:メモリ高速アクセスのためのキャッシュ)の影響確認のためのTLBダンプ機能について説明する。本実施の形態1おけるRTGは、TLB71の内容をファイル出力する機能(ダンプ機能)を有する。図7において、72は、その出力ファイルの一例である。TLB欄のITLBやUTLBはTLBの種類、way欄の3や0は経路の番号、PTEH欄はキャッシュの上位アドレス、PTEL欄はキャッシュの下位アドレス、PRは制御情報、fromおよびtoはアドレス範囲である。この出力ファイル72は、デバッグ時の補助情報として利用することができる。
次に、図8により、制御レジスタの初期値のランダム設定方法について説明する。図8に示すように、本実施の形態1によるRTGは、FPGAまたは実チップ内に搭載されたマイクロプロセッサコア内の制御レジスタの初期値をランダムに設定することができる。制御レジスタ81は、初期値をランダムに設定した一例である。また、固定値のビット(群)を除き、ランダム設定することもできる。制御レジスタ82は、初期値をランダムに設定した一例である。この場合、”0”の部分が固定値となっている。また、無効な値(排他ビット同時オン)を除外することもできる。制御レジスタ83は、無効な値を除外した一例である。また、ユーザ指定値84とランダム生成値85から制御レジスタ86の初期値を決定することもできる。制御レジスタ86は、ランダム生成マスク87と常時オン指定89とランダム生成値85から、((ランダム値)AND(マスク値))OR(常時オン指定)の関係式により、初期値を決定した場合の一例である。
次に、図9により、問題発生時の1次切り分け手段について説明する。問題発生時の1次切り分けの手段として、アーリープロトタイプまたは実チップでの実行結果、ゴールデンモデルを用いた実行結果、RTGが生成する期待値の3者間での多数決制を採用する。そして、3者の内いずれか2者が一致していれば、残りの1者を誤りと判定する。例えば、図9のアーリープロトタイプの場合、実チップでの実行結果とゴールデンモデルを用いた実行結果が一致したときは、RTGのバグと判定する。また、ゴールデンモデルを用いた実行結果とRTGが生成する期待値が一致するときは、論理の不良と判定する。
次に、図10により、FPGA11a,11b上の論理からの特定信号の引き出しおよびテストプログラム実行時の波形取得について説明する。あらかじめ、FPGA11a,11b上に搭載した論理回路から、観測すべき信号を、FPGA11a,11bの端子に引き出しておく。アーリープロトタイプ環境43において、RTG16によりテストプログラム17を生成して、FPGA11a,11b上でテストプログラム17を実行することにより、FPGA11a,11b上の論理におけるテストプログラム実行時の波形取得101が可能となる。
次に、図11により、機能カバレージ取得について説明する。アーリープロトタイプ環境43において、RTG16によりテストプログラム17を生成して、FPGA11a,11b上でテストプログラム17を実行することにより、機能カバレージレポート111の取得が可能となる。機能カバレージレポート111において、”GR Forwarding”はレジスタフォーワード、 ”Parallel Execution”は並列命令の同時実行である。
次に、図12により、アーリープロトタイプ上でのアサーションベース検証について説明する。アサーション121内に信号同士の規約(プロバティ)を記述しておき、その規約に反した場合、警告(アサート)を発する。規約の内容としては、例えば「ある信号がオンの時は、他のある信号がオフにならなければならない。」とか「リセット信号がハイになった時、5サイクル以内に特定の信号がハイにならなくてはならない。」というようなものである。アーリープロトタイプ環境43において、RTG16によりテストプログラム17を生成して、FPGA11a,11b上でテストプログラム17を実行することにより、アサーションベースでの検証が可能となる。そして、問題箇所の特定が容易になり、デバッグが加速される。
したがって、本実施の形態1の検証装置および検証方法によれば、実チップ作成前に実機と等価な環境を実現するアーリープロトタイプ環境でランダム検証可能なため、システム全体の論理検証を早期に加速可能であり、不良摘出時の対策コスト低減が可能である。
また、単発実行においては,テストプログラムの生成はPCまたはWS上で実行するため、この部分はシミュレータで実行する場合でも同じである。しかし、生成したテストプログラムはFPGA上に構築した検証対象論理回路上で実行するため、シミュレータに比べてテストプログラム実行部分が加速される。連続実行の場合は、テストプログラムの生成と実行を、ともにFPGA上に構築した検証対象論理回路上で実行し、この動作を連続して行うため、シミュレータでの実行に比べて飛躍的に速度が向上する。
本実施の形態1による検証装置上で、テストプログラムの自動生成と実行を単発実行した場合、同じテストプログラムをシミュレーションで実行した場合に比べ、実行速度は約30倍となる。また、テストプログラムの自動生成と実行を連続実行した場合、同じテストプログラムをシミュレーションで実行した場合に比べ、実行速度は約1000倍となる。
また、本実施の形態1による検証装置に実装しているRTGは、シミュレーション、アーリープロトタイプ、実チップのすべての環境で適用可能なため、シミュレーション、アーリープロトタイプ、実チップのすべての環境に対して、シームレスな論理検証環境を提供可能である。
さらに、製品全体からみた場合、電気特性などのアナログ的、プロセス的要素を除く、論理機能の品質の徹底的確認が、実チップ作成前に実現できるため、マスク作成のカット数を削減可能である。
(実施の形態2)
図13は本発明の実施の形態2による検証装置のシステム構成を示す図である。本実施の形態2による検証装置は、前記実施の形態1による検証装置のボード15上に、マイクロプロセッサ131を追加搭載したものである。
まず、図13により、本実施の形態2による検証装置の構成の一例を説明する。本実施の形態2の検証装置は、前記実施の形態1に対してマイクロプロセッサ131が追加され、マイクロプロセッサ131、FPGA11a,11b、メモリ12a,12b、モニタ13、I/Oインターフェース14a,14bなどから構成されている。
マイクロプロセッサ131は、汎用のマイクロプロセッサである。
本実施の形態2による検証装置では、マイクロプロセッサ131上で、RTGによりテストプログラム生成を実行する。RTGは、生成したテストプログラムを、マイクロプロセッサ131を通じて、FPGA11a,11b上の検証対象回路で実行させる。他の機能および動作は、前記実施の形態1と同じである。
したがって、本実施の形態2による検証装置によれば、前記実施の形態1と同様の効果が得られるとともに、テストプログラム生成を追加のマイクロプロセッサ131上で実行することにより、周辺モジュールなど、RTGを直接実行することができない検証対象論理に適用可能になる。
また、FPGA11a,11b上に構築した検証対象がマイクロプロセッサコアである場合でも、RTGによるテストプログラム生成と,検証対象に対するテストプログラム実行依頼を追加のマイクロプロセッサ131上で実行することにより、検証対象論理内のキャッシュなど、動作に直接影響するアーキテクチャの状態を、RTG側でケアする必要がなくなる。
以上述べてきた本実施の形態1および2は、マイクロプロセッサコア及びマイクロプロセッサコアを搭載した大規模LSI全般に対して、最も効果がある。なぜなら、実チップになる前のアーリープロトタイプ環境で適用でき、マイクロプロセッサコアおよびマイクロプロセッサコアを搭載した大規模LSI開発時のデバッグ効率と論理品質を向上、後工程のシステム検証期間を前倒し可能であるからである。
また、大規模LSIに搭載するIP部品についても適用可能である。なぜなら、実施の形態2で説明したように、制御用マイクロプロセッサを検証装置に追加し、RTGによるテストプログラムの生成を、FPGA上に構築した検証対象論理ではなく、制御用マイクロプロセッサ上で実行することにより、IP部品単体での論理検証加速が可能であり、また、大規模LSIに搭載後の実チップ環境においては、LSI内部のマイクロプロセッサを用いてテストプログラムの生成と実行を行うことにより、単体環境と同一方式での検証実施が可能となるからである。
以上、本発明者によってなされた発明をその実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
以上に述べたように、本願において開示される発明は、マイクロプロセッサコア及びマイクロプロセッサコアを搭載した大規模LSI全般、大規模LSIに搭載するIP部品などの半導体集積回路装置について適用可能である。
本発明の実施の形態1による検証装置のシステム構成を示す図である。 本発明の実施の形態1による検証装置において、RTGの構造を示す図である。 本発明の実施の形態1による検証装置において、検証装置内のメモリのメモリマップを示す図である。 本発明の実施の形態1による検証装置において、シミュレーション、アーリープロトタイプおよび実チップにおける検証環境を示す図である。 本発明の実施の形態1による検証方法の手順を示す図である。 本発明の実施の形態1による検証装置において、各環境でのメモリマップの統一化を示す説明図である。 本発明の実施の形態1による検証装置において、TLBの影響確認のためのTLBダンプ機能を示す説明図である。 本発明の実施の形態1による検証装置において、制御レジスタの初期値のランダム設定方法を示す説明図である。 本発明の実施の形態1による検証装置において、問題発生時の1次切り分け手段を示す説明図である。 本発明の実施の形態1による検証装置において、FPGA上の論理からの特定信号の引き出しおよびテストプログラム実行時の波形取得を示す説明図である。 本発明の実施の形態1による検証装置において、機能カバレージ取得を示す説明図である。 本発明の実施の形態1による検証装置において、アーリープロトタイプ上でのアサーションベース検証を示す説明図である。 本発明の実施の形態2による検証装置のシステム構成を示す図である。
符号の説明
11a,11b FPGA(論理素子)
12a,12b メモリ
13 モニタ
14a,14b I/Oインターフェース
15,15a,15b ボード
16 RTG(テストプログラム生成プログラム)
17 テストプログラム
26 被検証論理
41 シミュレーション環境
42 シミュレータ
43 アーリープロトタイプ環境
44 実チップ環境
45 実チップ
61 メモリマップ
72 出力ファイル
81,82,83 制御レジスタ
84 ユーザ指定値
85 ランダム生成値
86 制御レジスタ
87 ランダム生成マスク
89 常時オン指定
101 波形取得
111 機能カバレージレポート
121 アサーション
131 マイクロプロセッサ

Claims (10)

  1. 検証対象の論理回路を含むプログラム可能な論理素子と、
    前記論理回路のテストプログラムを自動生成するテストプログラム生成プログラムと、
    前記テストプログラムが格納されるメモリと、
    モニタプログラムを含むモニタと、
    前記論理素子および前記メモリと前記モニタとの間でデータの送受信を行うI/Oインターフェースとを有し、
    前記テストプログラムを自動実行して前記論理回路の論理検証を行うことを特徴とする検証装置。
  2. 請求項1記載の検証装置において、
    前記テストプログラム生成プログラムは、乱数に基づいて前記論理回路のテストプログラムを自動生成するプログラムであることを特徴とする検証装置。
  3. 請求項1または2記載の検証装置において、
    前記論理素子、前記メモリおよび前記I/Oインターフェースは、一つのボード上に搭載されていることを特徴とする検証装置。
  4. 請求項1または2記載の検証装置において、
    前記論理回路は、マイクロプロセッサコアを含み、前記マイクロプロセッサコアが前記テストプログラムを実行することを特徴とする検証装置。
  5. 請求項4記載の検証装置において、
    前記テストプログラム生成プログラムは、前記メモリに格納され、前記マイクロプロセッサコアにより実行されることを特徴とする検証装置。
  6. 請求項1または2記載の検証装置において、
    マイクロプロセッサをさらに有し、
    前記テストプログラム生成プログラムは、前記メモリに格納され、前記マイクロプロセッサにより実行されることを特徴とする検証装置。
  7. 請求項6記載の検証装置において、
    前記テストプログラム生成プログラムは、前記モニタを通じて前記メモリに格納され、前記モニタからの指示により、前記マイクロプロセッサによって実行されることを特徴とする検証装置。
  8. 請求項1または2記載の検証装置において、
    前記テストプログラムの自動生成および自動実行は、連続的に実施されることを特徴とする検証装置。
  9. 請求項1または2記載の検証装置において、
    前記論理素子はFPGAであることを特徴とする検証装置。
  10. 請求項1〜9のいずれか1項に記載の検証装置を利用して前記論理回路のテストプログラムを自動生成する工程と、
    前記テストプログラムを、シミュレータ上および実チップ上で実行し、前記論理回路の論理検証および/または不良解析を行う工程とを有することを特徴とする検証方法。
JP2004166615A 2004-06-04 2004-06-04 検証装置および検証方法 Pending JP2005346517A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004166615A JP2005346517A (ja) 2004-06-04 2004-06-04 検証装置および検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004166615A JP2005346517A (ja) 2004-06-04 2004-06-04 検証装置および検証方法

Publications (1)

Publication Number Publication Date
JP2005346517A true JP2005346517A (ja) 2005-12-15

Family

ID=35498819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004166615A Pending JP2005346517A (ja) 2004-06-04 2004-06-04 検証装置および検証方法

Country Status (1)

Country Link
JP (1) JP2005346517A (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094591A (ja) * 2005-09-27 2007-04-12 Toshiba Corp シミュレーション装置及びシミュレーション方法
JP2008158696A (ja) * 2006-12-21 2008-07-10 Mitsubishi Electric Corp 一致検証方法及び装置
CN100476837C (zh) * 2006-04-28 2009-04-08 中国科学院计算技术研究所 一种支持随机指令测试的微处理器fpga验证装置
KR100958113B1 (ko) * 2007-10-24 2010-05-18 주식회사 아이티엔티 반도체 테스트용 fpga 구성장치 및 이를 이용한 dut 테스트방법
CN102142050A (zh) * 2011-03-01 2011-08-03 浪潮(北京)电子信息产业有限公司 一种高端容错计算机单结点原型验证系统及验证方法
US8990624B2 (en) 2010-07-13 2015-03-24 Nec Corporation Emulator verification system, emulator verification method
CN104615537A (zh) * 2015-02-02 2015-05-13 福州瑞芯微电子有限公司 一种图像处理类ip的可约束随机验证方法和装置
WO2018218954A1 (zh) * 2017-05-27 2018-12-06 深圳市中兴微电子技术有限公司 一种验证平台和验证方法、计算机存储介质
CN110961364A (zh) * 2019-12-18 2020-04-07 浪潮(北京)电子信息产业有限公司 一种基于fpga平台的芯片全功能自测系统及其方法
US20210406443A1 (en) * 2020-06-30 2021-12-30 Montage Lz Technologies (Chengdu) Co., Ltd. Verification platform for system on chip and verification method thereof
JP2022190627A (ja) * 2021-06-14 2022-12-26 東芝情報システム株式会社 メモリ性能測定シミュレーション装置及びメモリ性能測定シミュレーション用プログラム
CN116699375A (zh) * 2023-07-28 2023-09-05 中科亿海微电子科技(苏州)有限公司 一种fpga芯片高温测试方法及装置

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094591A (ja) * 2005-09-27 2007-04-12 Toshiba Corp シミュレーション装置及びシミュレーション方法
JP4599266B2 (ja) * 2005-09-27 2010-12-15 株式会社東芝 シミュレーション装置及びシミュレーション方法
CN100476837C (zh) * 2006-04-28 2009-04-08 中国科学院计算技术研究所 一种支持随机指令测试的微处理器fpga验证装置
JP2008158696A (ja) * 2006-12-21 2008-07-10 Mitsubishi Electric Corp 一致検証方法及び装置
KR100958113B1 (ko) * 2007-10-24 2010-05-18 주식회사 아이티엔티 반도체 테스트용 fpga 구성장치 및 이를 이용한 dut 테스트방법
US8990624B2 (en) 2010-07-13 2015-03-24 Nec Corporation Emulator verification system, emulator verification method
CN102142050A (zh) * 2011-03-01 2011-08-03 浪潮(北京)电子信息产业有限公司 一种高端容错计算机单结点原型验证系统及验证方法
CN104615537A (zh) * 2015-02-02 2015-05-13 福州瑞芯微电子有限公司 一种图像处理类ip的可约束随机验证方法和装置
WO2018218954A1 (zh) * 2017-05-27 2018-12-06 深圳市中兴微电子技术有限公司 一种验证平台和验证方法、计算机存储介质
CN108959673A (zh) * 2017-05-27 2018-12-07 深圳市中兴微电子技术有限公司 一种验证平台和验证方法
CN110961364A (zh) * 2019-12-18 2020-04-07 浪潮(北京)电子信息产业有限公司 一种基于fpga平台的芯片全功能自测系统及其方法
CN110961364B (zh) * 2019-12-18 2022-06-17 浪潮(北京)电子信息产业有限公司 一种基于fpga平台的芯片全功能自测系统及其方法
US20210406443A1 (en) * 2020-06-30 2021-12-30 Montage Lz Technologies (Chengdu) Co., Ltd. Verification platform for system on chip and verification method thereof
US11520968B2 (en) * 2020-06-30 2022-12-06 Montage Lz Technologies (Chengdu) Co., Ltd. Verification platform for system on chip and verification method thereof
JP2022190627A (ja) * 2021-06-14 2022-12-26 東芝情報システム株式会社 メモリ性能測定シミュレーション装置及びメモリ性能測定シミュレーション用プログラム
JP7295446B2 (ja) 2021-06-14 2023-06-21 東芝情報システム株式会社 メモリ性能測定シミュレーション装置及びメモリ性能測定シミュレーション用プログラム
CN116699375A (zh) * 2023-07-28 2023-09-05 中科亿海微电子科技(苏州)有限公司 一种fpga芯片高温测试方法及装置
CN116699375B (zh) * 2023-07-28 2024-01-19 中科亿海微电子科技(苏州)有限公司 一种fpga芯片高温测试方法及装置

Similar Documents

Publication Publication Date Title
US7962869B2 (en) Method and system for debug and test using replicated logic
US8392859B2 (en) Method and system for debugging using replicated logic and trigger logic
Hopkins et al. Debug support strategy for systems-on-chips with multiple processor cores
US9064068B1 (en) Debuggable opaque IP
JP3872954B2 (ja) 有限状態機械を識別して回路設計を検査するシステムおよび方法
EP1913410B1 (en) Method and system for debug and test using replicated logic
US20070277144A1 (en) Conversion of circuit description to an abstract model of the circuit
US7584456B1 (en) Method and apparatus for debugging embedded systems having read only memory
JP2002215712A (ja) Ic設計の検証方法
US9053232B2 (en) Method and apparatus for supporting a unified debug environment
JP2000132416A (ja) 半導体集積回路設計検証装置
US11520968B2 (en) Verification platform for system on chip and verification method thereof
JP2005346517A (ja) 検証装置および検証方法
CN113255258B (zh) 逻辑综合方法、装置、电子设备及存储介质
US11662383B2 (en) High-speed functional protocol based test and debug
US7058557B2 (en) Method for functional verification of hardware design
WO2006025412A1 (ja) 論理検証方法、論理モジュールデータ、デバイスデータおよび論理検証装置
JP4493937B2 (ja) 半導体集積回路および半導体集積回路の機能検証方法
JPH1048300A (ja) 個別テストプログラム作成方式
JP2004178267A (ja) メモリ回路生成方法および装置、メモリ回路、回路モデル検証方法および装置、回路モデル生成方法および装置
EP1031995B1 (en) Built-in self-test circuit for memory
JP2005251216A (ja) エミュレーション回路生成装置およびエミュレーション回路生成方法
JP2008310613A (ja) 設計環境透過型機能テストシステム
JPH1125140A (ja) ライブラリ検証装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090924

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100202