JP3709626B2 - 回路検証装置 - Google Patents
回路検証装置 Download PDFInfo
- Publication number
- JP3709626B2 JP3709626B2 JP28530696A JP28530696A JP3709626B2 JP 3709626 B2 JP3709626 B2 JP 3709626B2 JP 28530696 A JP28530696 A JP 28530696A JP 28530696 A JP28530696 A JP 28530696A JP 3709626 B2 JP3709626 B2 JP 3709626B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- description
- model
- verification
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は、ASIC(Application Specific Integrated Circuit)などのLSI(Large Scale Integrated Circuit)の回路設計で用いられる回路検証装置に関するものである。
【0002】
【従来の技術】
近年、ASICなどのLSI回路の設計は、いわゆる上流設計手法と呼ばれる設計手法が一般的になっている。この上流設計手法は、まず、ハードウェア記述言語(Hardware Description Language、以下HDLと記す)と呼ばれるプログラミング言語を用いて、回路を機能的な動作で表現する動作レベル、または、動作表現に時間的概念を取り入れて表現するRTL(Register Transfer Level)でLSI回路を論理設計する。つぎに、HDLの動作レベルやRTLで論理設計した回路記述をロジックシミュレータなどのような回路検証装置で、LSIを構成する個々のモデルの機能検証やLSI全体の回路構成などのアルゴリズム検証を行なう。その後、検証を終えたLSI回路の回路記述を、論理合成ツールを用いて実際のハードウェアのゲートで表現するゲートレベルの回路記述に変換してハードウェア化する。
【0003】
このような上流設計手法では、ASICなどのLSI回路の論理設計を動作レベルやRTLといったいわゆる上流レベルで検証できるため、高速、且つ、大規模のLSIを短期間で開発することが可能である。
【0004】
ここで、上述したLSI回路の上流設計手法で用いられる従来の回路検証装置について説明する。図16は、従来の回路検証装置の機能ブロック構成図である。従来の回路検証装置101は、データ入力部102と、テストベクトル記憶部103と、回路記述記憶部104と、検証部105と、出力部106とから構成されている。
【0005】
データ入力部102は、HDLの動作レベルやRTLで論理設計したLSI回路を構成する全回路モデルの回路記述並びにLSI回路を検証するためのテストベクトルが入力される。具体的には、論理設計した回路記述ならびにテストベクトルが格納されたファイルからデータを読み出すこととなる。データ入力部102に入力された、つまり、ファイルから読み出された回路記述は、回路記述記憶部104に記憶され、また、テストベクトルは、テストベクトル記憶部103に記憶される。
【0006】
検証部105は、回路記述記憶部104に記憶されているLSI回路を構成する全回路モデルの回路記述と、テストベクトル記憶部103に記憶されているテストベクトルとに基づいて、LSI回路の各々のモデルの検証を行なう。検証結果は出力部106内の画像表示装置に表示されるとともに、出力部106からファイルとして出力することができる。
【0007】
このように従来の回路検証装置101は、検証対象となるLSI回路を構成するモデルの数に関係なく、全回路モデルの回路記述をすべて読み込み、個々のモデルの検証を行なう構成となっている。
【0008】
【発明が解決しようとする課題】
ところが、上流設計手法を用いてASICを設計する場合の回路設計期間は、ロジックシミュレータなどの検証装置での検証時間に大きく左右されることになる。特に、最近急激にASICのシステム・オン・チップ化が進んでおり、個々のモデルは大規模化し、かつ、LSIを構成するモデル数も増加する傾向にある。従来の回路検証装置で示した方法では、検証に要する時間が検証する回路規模に比例する構成となっている。そのため、検証に非常に多くの時間を要することになってしまい、LSI回路の設計者には大きな負担となってしまう。
【0009】
本発明はこのような課題を解決するためなされたもので、検証に要する時間を必要最小限にすることのできる回路検証装置を提供することを目的とする。
【0010】
【課題を解決するための手段】
上記問題を解決するために本発明に係る回路検証装置は、LSI回路を構成する全回路モデルの中で検証対象となる回路モデルのモデル名、並びに、検証対象となる回路モデルを検証するためのテストベクトルが入力されるデータ入力手段と、前記LSI回路を構成する全回路モデルの、入出力ポート属性と回路機能とを記述した回路記述を記憶する回路記述記憶手段と、前記LSI回路を構成する全回路モデルの入出力ポート属性の記述を記憶するポート属性記述記憶手段と、前記回路記述記憶手段に記憶されているLSI回路を構成する全回路モデルの回路記述から、前記データ入力手段に入力されるモデル名に対応する回路記述を選択する回路記述選択手段と、前記ポート属性記憶手段に記憶されているLSI回路を構成する全回路モデルの入出力ポート属性の記述から、前記データ入力手段に入力されなかったモデル名に対応する入出力ポート属性の記述を選択するポート属性記述選択手段と、前記回路記述選択手段に選択された回路記述及び前記ポート属性記述選択手段に選択された入出力ポート属性の記述、並びに、前記データ入力手段に入力されるテストベクトルを用いて、LSI回路を構成する複数の回路モデルの中で検証対象となる回路モデルを検証する検証手段と、前記検証手段の検証結果を出力する出力手段とを備えることを特徴とする。
【0011】
データ入力手段には、論理設計したLSI回路の回路記述の中で検証対象となる回路モデルのモデル名と、このモデル名の回路モデルを検証するための入力数値であるテストベクトルとが入力される。このデータ入力手段に入力されたモデル名は回路記述選択手段及びポート属性記述選択手段に供給され、テストベクトルは検証手段に供給される。回路記述記憶手段は、前記LSI回路を構成する全回路モデルの回路記述である入出力ポート属性と回路機能とが予め記憶されており、回路記述選択手段により選択されたモデル名の回路記述を検証手段に供給する。ポート属性記述記憶手段は、前記LSI回路を構成する全回路モデルの回路記述の中の入出力ポート属性の記述が予め記憶されており、ポート属性記述選択手段により選択される検証対象として入力されなかった回路モデルの、入出力ポート属性の記述を検証手段に供給する。検証手段は、論理設計したLSI回路の動作内容を確認する手段である。この検証手段は、回路機能を含む検証対象となる回路モデルと、回路機能を含まない入出力ポート属性の記述のみの検証対象でない回路モデルとを検証用LSI回路として論理構成し、供給されたテストベクトルをこの論理構成をした検証用LSI回路に入力し、この検証用LSI回路の出力ポートに出力される検証結果を出力手段を介して出力する。本発明に係る回路検証装置は、検証の対象となる回路モデルを細分化して、検証に最低限必要となるモデルだけを選択して回路検証を行い、検証にかかる時間を必要最小限にする。
【0012】
また、本発明に係る回路検証装置は、LSI回路を構成する全回路モデルの中で検証対象となる回路モデルのモデル名、並びに、検証対象となる回路モデルを検証するためのテストベクトルが入力されるデータ入力手段と、前記LSI回路を構成する全回路モデルの、入出力ポート属性と回路機能とを記述した回路記述を記憶する回路記述記憶手段と、前記回路記述記憶手段に記憶されているLSI回路を構成する全回路モデルの回路記述から、前記データ入力手段に入力されるモデル名に対応する回路記述を選択する回路記述選択手段と、前記回路記述選択手段で選択された回路記述に基づき、前記データ入力手段に入力されなかったモデル名に対応する回路モデルの入出力ポート属性の記述を生成するポート属性記述生成手段と、前記回路記述選択手段に選択された回路記述及び前記ポート属性記述生成手段に生成された入出力ポート属性の記述、並びに、前記データ入力手段に入力されるテストベクトルを用いて、LSI回路を構成する複数の回路モデルの中で検証対象となる回路モデルを検証する検証手段と、前記検証手段の検証結果を出力する出力手段とを備えることを特徴とする。
【0013】
データ入力手段には、論理設計したLSI回路の回路記述の中で検証対象となる回路モデルのモデル名と、このモデル名の回路モデルを検証するための入力数値であるテストベクトルとが入力される。このデータ入力手段に入力されたモデル名は回路記述選択手段に供給され、テストベクトルは検証手段に供給される。回路記述記憶手段は、前記LSI回路を構成する全回路モデルの回路記述である入出力ポート属性と回路機能とが予め記憶されており、回路記述選択手段により選択されたモデル名の回路記述を検証手段及びポート属性記述生成手段に供給する。ポート属性記述生成手段は、上記選択されたモデル名の回路記述のそれぞれの入出力ポートの関係から、前記データ入力手段に入力されなかったモデル名に対応する回路モデルの入出力ポート属性の記述を生成し、この入出力ポート属性の記述を検証手段に供給する。検証手段は、論理設計したLSI回路の動作内容を確認する手段である。この検証手段は、回路機能を含む検証対象となる回路モデルと、回路機能を含まない入出力ポート属性の記述のみの検証対象でない回路モデルとを検証用LSI回路として論理構成し、供給されたテストベクトルをこの論理構成をした検証用LSI回路に入力し、この検証用LSI回路の出力ポートに出力される検証結果を出力手段を介して出力する。本発明に係る回路検証装置は、検証の対象となる回路モデルを細分化して、検証に最低限必要となるモデルだけを選択して回路検証を行い、検証にかかる時間を必要最小限にする。
【0016】
【発明の実施の形態】
以下、本発明の実施の形態を添付図面に基づいて説明する。
【0017】
本発明に係る回路検証装置は、図1に示す機能ブロック構成図により実現される。本発明に係る回路検証装置1は、いわゆる上流設計手法と呼ばれる設計手法により論理設計したLSI回路の回路記述を検証するための装置である。回路検証装置1が検証するLSI回路は、HDLと呼ばれるプログラミング言語を用いて回路をおもに機能的な動作で表現する動作レベル、または、動作表現に時間的概念を取り入れて表現するRTLで論理設計したものである。ただし、このLSI回路は、ゲートレベルで設計されていても構わない。また、このLSI回路は複数の回路モデルから構成されており、これらの回路モデルもおもに上述したHDLによる動作レベルまたはRTLで記述されている。ただし、これらもゲートレベルで設計されていても構わない。本発明に係る回路検証装置1が行う検証は、LSI回路を構成する所定の回路モデルを特定して検証することができるものである。
【0018】
本発明に係る回路検証装置1は、データ入力部2と、モデル名記憶部3と、テストベクトル記憶部4と、回路記述選択部5及びポート属性記述選択部6を備えたモデル選択部7と、回路記述記憶部8と、ポート属性記述記憶部9と、検証用回路記述記憶部10と、検証部11と、出力部12とを備える。
【0019】
データ入力部2は、LSI回路を構成する回路モデルのうち検証の対象となる回路モデルのモデル名、ならびに、この検証対象となる回路モデルを検証するためのテストベクトルが入力される。具体的には、データ入力部2は、モデル名並びにテストベクトルが格納されたファイルから、ファイルデータを読み込んで入力することから、ファイル読み込み装置を用いた手段となる。ここで、テストベクトルは、LSI回路を検証するための具体的な入力数値であり、このテストベクトルにより、LSI回路に入力したときに出力値が予想される値であるか否かを確認することにより検証を行う。なお、データ入力部2は、キーボード等の文字入力手段からモデル名並びにテストベクトルを入力するようにしてもよく、この場合は、キーボード等の文字入力手段と入力された回路モデル名、ならびに、テストベクトルを表示するための表示装置とを備えた手段となる。
【0020】
データ入力部2は、入力されたモデル名をモデル名記憶部3へ供給する。また、データ入力部2は、入力されたテストベクトルをテストベクトル記憶部4へ供給する。
【0021】
モデル名記憶部3は、データ入力部2から供給されたモデル名を記憶するとともに、記憶したモデル名をモデル選択部7の回路記述選択部5ならびにポート属性記述選択部6へ供給する。
【0022】
テストベクトル記憶部4は、データ入力部2から供給されたテストベクトルを記憶するとともに、記憶したテストベクトルを検証部11へ供給する。
【0023】
回路記述記憶部8には、LSI回路の検証に先立ち論理設計したLSI回路の回路記述を、予め記憶させてある。各回路モデルの回路記述は、HDLによるおもに動作レベル、または、RTLで記述されたものである。ただし、このLSI回路は、ゲートレベルで設計されていても構わない。例えば、LSI回路がAモデルとBモデルとCモデルとDモデルの4つのモデルで構成される場合、AモデルとBモデルとCモデルとDモデルが全てHDLの動作レベルで記述されていてもよいし、AモデルとBモデルとCモデルとDモデルが全てHDLのRTLで記述されていても良い。さらに、AモデルとBモデルはHDLの動作レベルで記述されており、CモデルとDモデルはHDLのRTLで記述されているというようにモデルごとに記述レベルが異なっていてもかまわない。また、Aモデル,Bモデル,Cモデル,Dモデルのうちいくつががゲートレベルで記述されていても構わない。
【0024】
回路モデルの回路記述の一例として、8ビット幅の2入力乗算器というモデルをVerilog−HDLの動作レベルで記述すると、図2(a)に示す記述の内容となる。
【0025】
この8ビット幅の2入力乗算器のモデル(MPY)は、図2(b)に示すモデルの宣言を示す記述部分と、図2(c)に示す入出力ポート属性を示す記述部分と、図2(d)に示すモデルの回路機能を動作レベルで記述した記述部分とからなる。図2(b)に示すモデルの宣言は、“MPY”がモデル名を示し、“OUT”,“A”,“B”がこのモデル(MPY)に信号が入出力されるポートを示す。図2(c)に示す入出力ポート属性は、ポート“OUT”から16ビット幅の信号が出力され、ポート“A”及び“B”に8ビット幅の信号が入力されることを示している。図2(d)に示すモデルの回路機能は、ポート“A”と“B”とに入力される信号を乗算した結果がポート“OUT”から出力されることを示している。
【0026】
回路記述記憶部8は、上述した例に挙げるような回路記述であるLSI回路を構成する全回路モデルの回路記述が記憶されている。
【0027】
回路記述選択部5は、回路記述記憶部8に記憶されている全回路モデルの回路記述の中から、モデル名記憶部3に供給されるモデル名の回路記述を取り出して、これら取り出した回路記述を検証用回路記述記憶部10に記憶させる。
【0028】
ポート属性記述記憶部9には、LSI回路を構成する全回路モデルの回路記述のうち回路機能を示す記述を除いた入出力ポート属性の記述のみが記憶されている。このポート属性記述記憶部9に記憶されている回路記述も、上述した回路記述記憶部8に記憶されている回路記述と同様に、HDLで記述された回路記述である。例えば、上述した例の8ビット幅の2入力乗算器というモデルであれば、図3に示すように動作レベルの記述からモデルの回路機能である“OUT=A*B”を除く記述の内容となる。
【0029】
ポート属性記述選択部6は、ポート属性記述記憶部9に記憶されている全回路モデルの入出力ポート属性の記述の中から、モデル名記憶部3から供給されるモデル名の回路モデルを除いたそれ以外の全てのモデルの入出力ポート属性の記述を取り出して、この取り出したモデルの記述を検証用回路記述記憶部10に記憶させる。
【0030】
これにより、検証用回路記述記憶部10には、モデル名記憶部3に記憶されたモデル名(検証対象となる回路モデル名)のすべての回路記述、および、モデル名記憶部3に記憶されたモデル名を除いたそれ以外の全てのモデルの入出力ポート属性の記述が、それぞれ記憶されることになる。検証用回路記述記憶部10は、記憶した各記述を検証部11へ供給する。
【0031】
検証部11は、テストベクトル記憶部4から供給されたテストベクトル、および、検証用回路記述記憶部10から供給された各記述に基づいて回路の検証を行なう。この検証部11による回路の検証には、例えば市販のロジックシミュレータなどを用いる。この検証手段は、回路機能を含む検証対象となる回路モデルと、回路機能を含まない入出力ポート属性の記述のみの検証対象でない回路モデルとを検証用LSI回路として論理構成し、供給されたテストベクトルである数値データをこの論理構成をした検証用LSI回路に入力する。そして、この入力されたテストベクトルがどのように演算されるかを、シュミレートし、この検証用LSI回路の出力ポートに出力されるシュミレートの結果を検証結果として出力する。従って、通常、この検証部11で用いられる例えば市販のロジックシミュレータなどは、検証するモデルの回路機能の記述量が多ければ多いほど、検証に多くの時間を要することになる。本発明の検証部11では、検証に必要なモデルの回路機能の記述が検証用回路記述記憶部10から供給され、検証に必要でないモデルの回路について入出力ポートの属性のみの記述が検証用回路記述記憶部10から供給されるので、検証に要する時間を必要最小限にとどめることが可能になる。
【0032】
検証部11で検証された検証結果は、出力部12へ供給される。検証結果をファイルとして出力する場合は、出力部12はファイル出力装置を備える。また、検証結果をCRT等の画像表示装置の画面上に表示する場合は、出力部12はCRT等の画像表示装置と表示制御装置とを備える。
【0033】
ここで、回路検証装置1の検証対象として具体的な回路を例にとって、実際のデータに基づいた検証の流れを説明する。
【0034】
検証の対象となる回路モデルLSIは、図4に示すように、乗算器モデルMULと、除算器モデルDIVと、加算器モデルADDと、減算器モデルSUBとの4つのモデルで構成されている。それぞれのモデルは、図5に示すように、Verilog−HDLというHDLの動作レベルで記述されている。
【0035】
乗算器モデルMULは、図5(a)に示すように、モデルの宣言部分でモデル名が“MUL”であることを示し、このモデルのポートが“OUT”,“A”,“B”であることを示している。入出力ポート属性でポート“OUT”は16ビット幅の信号が出力されることを示しており、ポート“A”及び“B”は8ビット幅の信号が入力されることを示している。また、モデルの回路機能でポート“A”とポート“B”とに入力される信号を乗算した結果が、ポート“OUT”から出力される信号であることを示している。
【0036】
加算器モデルADDは、図5(b)に示すように、モデルの宣言部分でモデル名が“ADD”であることを示し、このモデルのポートが“OUT”,“A”,“B”であることを示している。入出力ポート属性でポート“OUT”は16ビット幅の信号が出力されることを示しており、ポート“A”及び“B”は16ビット幅の信号が入力されることを示している。また、モデルの回路機能でポート“A”とポート“B”とに入力される信号を加算した結果が、ポート“OUT”から出力される信号であることを示している。
【0037】
除算器モデルDIVは、図5(c)に示すように、モデルの宣言部分でモデル名が“DIV”であることを示し、このモデルのポートが“OUT”,“A”,“B”であることを示している。入出力ポート属性でポート“OUT”は16ビット幅の信号が出力されることを示しており、ポート“A”及び“B”は8ビット幅の信号が入力されることを示している。また、モデルの回路機能でポート“A”とポート“B”とに入力される信号を除算した結果が、ポート“OUT”から出力される信号であることを示している。
【0038】
また、減算器モデルSUBは、図5(d)に示すように、モデルの宣言部分でモデル名が“SUB”であることを示し、このモデルのポートが“OUT”,“A”,“B”であることを示している。入出力ポート属性でポート“OUT”は16ビット幅の信号が出力されることを示しており、ポート“A”及び“B”は16ビット幅の信号が入力されることを示している。また、モデルの回路機能でポート“A”とポート“B”とに入力される信号を減算した結果が、ポート“OUT”から出力される信号であることを示している。
【0039】
回路検証装置1の検証対象となる回路モデルLSIは、図5(e)に示すように、モデルの宣言部分でモデル名が“LSI”であることを示し、このモデルのポートが“OUT”,“A”,“B”,“C”,“D”,“E”であることを示している。入出力ポート属性でポート“OUT”が16ビット幅の出力信号であることをしめしており、ポート“A”,“B”,“C”,“D”及び“E”が8ビット幅の信号が入力されることを示している。また、回路モデルLSIの回路機能は、ポート“A”及び“B”に入力される信号が乗算器モデルMULの“A”及び“B”にそれぞれ入力され、ポート“C”及び“D”に入力される信号が除算器モデルDIVの“A”及び“B”にそれぞれ入力される。乗算器モデルMULと除算器モデルDIVの信号が出力されるそれぞれのポート“OUT”は、接続ワイヤ“mul_out”及び“div_out”を介して、加算器モデルADDの入力ポート“A”及び“B”に入力される。加算器モデルADDの出力ポート“OUT”は、接続ワイヤ“add_out”を介して、減算器モデルSUBの入力ポート“A”に入力される。また、回路モデルLSIの入力ポート“E”が減算器モデルSUBの“B”入力さる。減算器モデルSUBの出力ポート“OUT”が回路モデルLSIの出力ポート“OUT”となる。
【0040】
回路検証装置1のデータ入力部2は、図6に示すように、“LSI”と、“MUL”と、“ADD”とがモデル名として入力され、また、A=10;B=20;div_out=30;と、A=15;B=17;div_out=0;と、A=1;B=5;div_out=30;というテストベクトルが入力される。従って、この回路検証装置1により、回路モデルLSIの乗算器モデルMULと加算器モデルADDの検証が行われる。
【0041】
モデル名記憶部3は、データ入力部2から供給された回路モデル名である“LSI”と“MUL”と“ADD”とを記憶する。モデル名記憶部3に記憶された各モデル名はモデル選択部7の回路記述選択部5及びポート属性記述選択部6へ供給される。
【0042】
テストベクトル記憶部4は、データ入力部2から供給されたテストベクトル、ここでは、図7に示すような、LSIとMULとADDを検証するために充分なテストベクトルであるA=10;B=20;div_out=30;と、A=15;B=17;div_out=0;と、A=1;B=5;div_out=30;とを記憶する。テストベクトル記憶部4に記憶されたこのテストベクトルは検証部11へ供給される。
【0043】
回路記述記憶部8には、上述した検証対象である回路モデルLSIの回路記述と、乗算器モデルMULの回路記述と、除算器モデルDIVの回路記述と、加算器モデルADDの回路記述と、減算器モデルSUBの回路記述の5つの記述を予め記憶させておく。
【0044】
ポート属性記述記憶部9には、図8に示すように、上述した検証対象となる回路モデルLSIの回路記述のうち回路機能を示す記述を除いた入出力ポート属性の記述のみが予め記憶されている。
【0045】
回路記述選択部5は、モデル名記憶部3から供給されたモデル名である“LSI”,“MUL”,“ADD”を回路記述記憶部8へ供給して、図9に示すように、これらのモデル名の回路記述を回路記述記憶部8から受け取る。
【0046】
ポート属性記述選択部6は、モデル名記憶部3から供給されたモデル名である“LSI”,“MUL”,“ADD”以外のモデル名“DIV”,“SUB”をポート属性記述記憶部9へ供給して、図10に示すように、これらの入出力ポート属性の記述をポート属性記述記憶部9から受け取る。
【0047】
モデル選択部7の回路記述選択部5及びポート属性記述選択部6は、回路記述記憶部8から受け取った回路記述、および、ポート属性記述記憶部9から受け取った入出力ポート属性の記述を検証用回路記述記憶部10に記憶させる。
【0048】
検証用回路記述記憶部10には、LSI回路の全回路モデルのうちモデル名記憶部3に記憶されたモデル名である“LSI”,“MUL”,“ADD”のすべての回路記述、および、LSI回路の全回路モデルのうちモデル名記憶部3に記憶されたモデル名以外のモデル名である“DIV”,“SUB”の入出力ポート属性の記述がそれぞれ記憶される。すなわち、ここでは図11に示す記述がモデル選択部21の回路記述選択部5及びポート属性記述選択部6から供給されて、検証用回路生成記憶部22に記憶されることになる。
【0049】
検証用回路記述記憶部10に記憶された各回路記述は検証部11へ供給される。検証部11は、テストベクトル記憶部4から供給されたテストベクトル、ならびに、検証用回路記述記憶部10から供給された各回路記述に基づいて回路の検証を行なう。回路の検証には、市販のロジックシミュレータなどを用いることができる。検証した結果は、例えば図12に示す、add_out=230,add_out=255,add_out=35といったような内容になる。
【0050】
検証部11で検証された検証結果は、出力部12へ供給される。出力部12は、検証部11から供給された検証結果を受け取り、検証結果をファイルまたはCRTなどに出力する。ここでは、図12に示した検証結果が、ファイルまたはCRTなどに出力される。
【0051】
したがって、本発明に係る回路検証装置1は、検証に必要最小限となるモデルの機能モデルのみを検証モデルとして取り込んで検証を行なう構成としたので、検証に要する時間が検証対象となる回路の規模に比例する検証部の負担を軽減することができ、そのため回路設計に伴う検証に要する時間を必要最小限にとどめることができる。よって、より高性能な回路の設計に要する期間を短縮することができる。
【0052】
つぎに、上述した回路検証装置1の構成を変形した第2の実施の形態である回路検証装置について添付図面に基づいて説明する。なお、上述した回路検証装置1と同一の構成については、詳細な説明を省略し図面中に同一符号を付ける。
【0053】
本発明に係る第2の実施の形態である回路検証装置20は、図13に示すようにデータ入力部2と、モデル名記憶部3と、テストベクトル記憶部4と、回路記述選択部5及びポート属性記述生成部22を備えたモデル選択部21と、回路記述記憶部8と、検証用回路記述記憶部10と、検証部11と、出力部12とを備える。この第2の実施の形態である回路検証装置20は、ポート属性記述生成部22を備えたことにより、回路検証装置1において備えていたポート属性記述記憶部9を備えずに構成することができ、構成が少なくて済むものである。
【0054】
回路記述記憶部8には、論理設計したLSI回路を構成する全回路モデルの回路記述が予め記憶されている。
【0055】
回路記述選択部5は、回路記述記憶部8に記憶されている全回路モデルの回路記述の中から、モデル名記憶部3に供給されるモデル名の回路記述を取り出して、これら取り出した回路記述を検証用回路記述記憶部10へ記憶させ、また、ポート属性記述生成部22に供給する。
【0056】
ポート属性記述生成部22は、回路記述選択部5から供給された回路記述に基づきこれら回路モデルの各ポートの接続状態を調べることにより、回路選択部5により選択されなかった回路モデル、つまり、検証対象でない回路モデルの入出力ポート属性を生成する。
【0057】
ここで、例えばLSI回路が、図14に示すような“MODEL−A”,“MODEL−B”,“MODEL−C”,“MODEL−D”の4つの回路モデルからなる場合において、“MODEL−B”の入出力ポート属性について調べる。
【0058】
このLSI回路のモデル名は、“LSI”であり、ポート“IN”に入力信号が入力され、ポート“OUT”から出力信号が出力される。また、“out1”,“out2”,“out3”は、それぞれ各回路モデルを接続するための接続ワイヤの名称である。本例のLSI回路を、入力信号ポート“IN”から出力信号ポート“OUT”に辿り“MODEL−B”の入出力ポート属性を調べる。
【0059】
まず、LSI回路の入力信号ポート“IN”は、“MODEL−A”のポート“A”に接続されている。この回路モデル“MODEL−A”のポート“B”は、接続ワイヤ“out1”に接続されている。接続ワイヤ“out1”は、回路モデル“MODEL−B”のポート“A”に接続されている。この回路モデル“MODEL−B”のポート“B”が接続ワイヤ“out2”に接続されている。接続ワイヤ“out2”は、回路モデル“MODEL−C”のポート“A”に接続されている。この回路モデル“MODEL−C”のポート“B”が接続ワイヤ“out3”に接続されている。この接続ワイヤ“out3”は、回路モデル“MODEL−D”のポート“A”に接続されている。最後に、この回路モデル“MODEL−D”のポート“B”がこのLSI回路の出力信号ポート“OUT”に接続されている。
【0060】
このことから、各モデルのポート“A”がすべて入力属性をもったものであり、“各モデルのポート“B”が出力属性をもったものであることが分かる。従って、ポート属性記述生成部22は、回路モデル“MODEL−B”の入出力ポート属性として、図15に示すような、ポート“B”から信号が出力され、ポート“A”に信号が入力されるという記述を生成することとなる。
【0061】
ポート属性記述生成部22は、この入出力ポート属性を検証用回路記述記憶部10へ記憶させる。これにより、検証用回路記述記憶部10には、モデル名記憶部3に記憶されたモデル名(検証対象となる回路モデル名)のすべての回路記述、および、モデル名記憶部3に記憶されたモデル名を除いたそれ以外の全てのモデルの入出力ポート属性の記述が、それぞれ記憶されることになる。検証用回路記述記憶部10は、記憶した各記述を検証部11へ供給する。
【0062】
そして、検証部11で、LSI回路の検証が行われ、この検証結果が出力部12から出力される。
【0063】
ここで、回路検証装置20の検証対象として具体的な回路を例にとって、実際のデータに基づいた検証の流れを説明する。検証の対象となる回路モデルは、図4に示す回路モデルであり、上述した回路検証装置1の検証対象として示した例と同一の回路モデルである。従って、これまでに説明した部分と重複する部分に付いては詳細な説明を省略する。
【0064】
回路検証装置20の検証対象となる回路モデルLSIは、乗算器モデルMULと、除算器モデルDIVと、加算器モデルADDと、減算器モデルSUBとの4つのモデルで構成されている。それぞれのモデルは、図5に示すように、Verilog−HDLというHDLの動作レベルで記述されている。
【0065】
回路検証装置20のデータ入力部2は、図6に示すように、“LSI”と、“MUL”と、“ADD”とがモデル名として入力され、また、A=10;B=20;div_out=30;と、A=15;B=17;div_out=0;と、A=1;B=5;div_out=30;というテストベクトルが入力される。従って、この回路検証装置20により、回路モデルLSIの乗算器モデルMULと加算器モデルADDの検証が行われる。
【0066】
回路記述記憶部8には、上述した検証対象である回路モデルLSIの回路記述と、乗算器モデルMULの回路記述と、除算器モデルDIVの回路記述と、加算器モデルADDの回路記述と、減算器モデルSUBとの回路記述の5つの記述が予め記憶されてる。
【0067】
回路記述選択部5は、モデル名記憶部3から供給されたモデル名である“LSI”,“MUL”,“ADD”を回路記述記憶部8へ供給して、図9に示すように、これらのモデル名の回路記述を回路記述記憶部8から受け取る。回路記述選択部5は、この回路記述をポート属性記述生成部22と、検証用回路記述記憶部10とに供給する。
【0068】
ポート属性記述生成部22は、回路記述選択部5から供給された回路記述の各ポートの接続状態を調べて、除算器モデルDIVと減算器モデルSUBの入出力ポート属性の記述を以下のように生成する。
【0069】
まず除算器モデルDIVのポート接続状態は、回路モデルLSIの記述より、ポート“A”には回路モデルLSIの入力ポート“C”が接続されており、ポート“B”には回路モデルLSIの入力ポート“D”が接続されていることがわかる。また、除算器モデルDIVのポート“OUT”には、加算器モデルADDの入力ポート“B”が接続ワイヤ“div_out”を介して接続していることがわかる。従って、これら信号の流れから、除算器モデルDIVのポート“A”とポート“B”には回路モデルLSIの入力ポート“C”,“D”からの信号が入力され、ポート“OUT”から加算器モデルADDに信号が出力されることがわかる。
また、減算器モデルSUBのポート接続状態は、回路モデルLSIの記述より、ポート“A”には、加算器モデルADDの出力ポート“OUT”が接続ワイヤ“add_out”を介して接続されており、ポート“B”には回路モデルLSIの入力ポート“E”が接続されていることがわかる。また、減算器モデルSUBのポート“OUT”には回路LSIモデルの出力ポート“OUT”が接続していることがわかる。従って、これら信号の流れから、減算器モデルSUBのポート“A”とポート“B”には、回路モデルLSIの入力ポート“E”及び加算器モデルADDからの出力信号が入力され、“OUT”から回路モデルLSIの出力ポートに信号が出力されることがわかる。
【0070】
ポート属性記述生成部22は、上述した入出力ポート属性の記述を検証用回路記述記憶部10へ供給する。
【0071】
検証用回路記述記憶部10には、図11に示す記述がモデル選択部7の回路記述選択部5及びポート属性記述選択部6から供給されて、検証用回路記述記憶部10に記憶されることになる。
【0072】
検証用回路記述記憶部10に記憶された各回路記述は検証部11へ供給される。検証部11は、テストベクトル記憶部4から供給されたテストベクトル、ならびに、検証用回路記述記憶部10から供給された各回路記述に基づいて回路の検証を行なう。検証した結果は、例えば図12に示す、add_out=230,add_out=255,add_out=35といったような内容になる。
【0073】
検証部11で検証された検証結果は、出力部12へ供給される。出力部12は、検証部11から供給された検証結果を受け取り、検証結果をファイルまたはCRTなどに出力する。ここでは、図12に示した検証結果が、ファイルまたはCRTなどに出力される。
【0074】
したがって、本発明に係る回路検証装置1は、検証に必要最小限となるモデルの機能モデルのみを検証モデルとして取り込んで検証を行なう構成としたので、検証に要する時間が検証対象となる回路の規模に比例する検証部の負担を軽減することができ、そのため回路設計に伴う検証に要する時間を必要最小限にとどめることができる。よって、より高性能な回路の設計に要する期間を短縮することができる。また、入出力ポート属性を生成するポート属性記述生成部22を設けたことにより、装置の構成を少なくすることができる。
【0075】
【発明の効果】
以上説明したように本発明に係る回路検証装置は、検証に必要最小限となる回路モデルの機能のみを検証モデルとして取り込んで検証を行なう構成としたことにより、検証に要する時間を必要最小限にとどめることが可能になる。よって、より高性能な回路の設計に要する期間を短縮することが可能になる。
【0076】
ロジックシミュレータを検証に使用する場合、検証するモデルの回路機能の記述量と検証に要する時間が比例する。本発明に係る回路検証装置は、検証に必要なモデルの回路機能の記述を検証部へ供給し、検証に必要でないモデルの回路については入出力ポートの属性のみの記述を検証部へ供給するようにしたので、検証に要する記述量が低減され、検証に要する時間を必要最小限にすることができる。
【図面の簡単な説明】
【図1】本発明に係る回路検証装置の機能ブロック構成図である。
【図2】HDLの動作レベルで記述された乗算器モデルの記述例を示す説明図である。
【図3】HDLの動作レベルで記述された入出力ポート属性の記述例を示す説明図である。
【図4】検証対象となるLSI回路の一例を示す回路図である。
【図5】検証対象となるLSI回路の回路記述例を示す説明図である。
【図6】回路モデル名およびテストベクトルの記述例を示す説明図である。
【図7】テストベクトル記憶部に記憶されるテストベクトルの記述例を示す説明図である。
【図8】ポート属性記述記憶部に記憶されているポート属性の記述例を示す説明図である。
【図9】回路記述記憶部から取り出され検証用回路記述記憶部へ供給される回路モデルの回路記述例を示す説明図である。
【図10】ポート属性記述記憶部から取り出され検証用回路記述記憶部へ供給される入出力ポート属性の記述例を示す説明図である。
【図11】検証用回路記述記憶部に格納される回路モデルの回路記述例ならびに入出力ポート属性の記述例を示す説明図である。
【図12】検証結果の一例を示す説明図である。
【図13】本発明に係る回路検証装置の機能ブロック構成図である。
【図14】ポート属性記述生成部により入出力ポート属性を生成する記述例を示す説明図である。
【図15】入出力ポート属性の記述の生成結果の一例を示す説明図である。
【図16】従来の回路検証装置の機能ブロック構成図である。
【符号の説明】
1 回路検証装置、2 データ入力部、3 モデル名記憶部、4 テストベクトル記憶部、5 回路記述選択部、6 ポート属性記述選択部、7,21 モデル選択部、8 回路記述記憶部、9 ポート属性記述記憶部、10 検証用回路記述記憶部、11 検証部、12 出力部、22 ポート属性記述生成部
Claims (2)
- LSI回路を構成する全回路モデルの中で検証対象となる回路モデルのモデル名、並びに、検証対象となる回路モデルを検証するためのテストベクトルが入力されるデータ入力手段と、
前記LSI回路を構成する全回路モデルの、入出力ポート属性と回路機能とを記述した回路記述を記憶する回路記述記憶手段と、
前記LSI回路を構成する全回路モデルの入出力ポート属性の記述を記憶するポート属性記述記憶手段と、
前記回路記述記憶手段に記憶されているLSI回路を構成する全回路モデルの回路記述から、前記データ入力手段に入力されるモデル名に対応する回路記述を選択する回路記述選択手段と、
前記ポート属性記憶手段に記憶されているLSI回路を構成する全回路モデルの入出力ポート属性の記述から、前記データ入力手段に入力されなかったモデル名に対応する入出力ポート属性の記述を選択するポート属性記述選択手段と、
前記回路記述選択手段に選択された回路記述及び前記ポート属性記述選択手段に選択された入出力ポート属性の記述、並びに、前記データ入力手段に入力されるテストベクトルを用いて、LSI回路を構成する複数の回路モデルの中で検証対象となる回路モデルを検証する検証手段と、
前記検証手段の検証結果を出力する出力手段と
を備える回路検証装置。 - LSI回路を構成する全回路モデルの中で検証対象となる回路モデルのモデル名、並びに、検証対象となる回路モデルを検証するためのテストベクトルが入力されるデータ入力手段と、
前記LSI回路を構成する全回路モデルの、入出力ポート属性と回路機能とを記述した回路記述を記憶する回路記述記憶手段と、
前記回路記述記憶手段に記憶されているLSI回路を構成する全回路モデルの回路記述から、前記データ入力手段に入力されるモデル名に対応する回路記述を選択する回路記述選択手段と、
前記回路記述選択手段で選択された回路記述に基づき、前記データ入力手段に入力されなかったモデル名に対応する回路モデルの入出力ポート属性の記述を生成するポート属性記述生成手段と、
前記回路記述選択手段に選択された回路記述及び前記ポート属性記述生成手段に生成された入出力ポート属性の記述、並びに、前記データ入力手段に入力されるテストベクトルを用いて、LSI回路を構成する複数の回路モデルの中で検証対象となる回路モデルを検証する検証手段と、
前記検証手段の検証結果を出力する出力手段と
を備える回路検証装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28530696A JP3709626B2 (ja) | 1996-10-28 | 1996-10-28 | 回路検証装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28530696A JP3709626B2 (ja) | 1996-10-28 | 1996-10-28 | 回路検証装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10134089A JPH10134089A (ja) | 1998-05-22 |
JP3709626B2 true JP3709626B2 (ja) | 2005-10-26 |
Family
ID=17689827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28530696A Expired - Fee Related JP3709626B2 (ja) | 1996-10-28 | 1996-10-28 | 回路検証装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3709626B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007156728A (ja) * | 2005-12-02 | 2007-06-21 | Hitachi Information & Communication Engineering Ltd | 論理検証方法及び論理検証システム |
-
1996
- 1996-10-28 JP JP28530696A patent/JP3709626B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10134089A (ja) | 1998-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5880971A (en) | Methodology for deriving executable low-level structural descriptions and valid physical implementations of circuits and systems from semantic specifications and descriptions thereof | |
US6026226A (en) | Local compilation in context within a design hierarchy | |
Elliott | Understanding behavioral synthesis: a practical guide to high-level design | |
US5598344A (en) | Method and system for creating, validating, and scaling structural description of electronic device | |
US6470482B1 (en) | Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation | |
US9171114B2 (en) | Managing the configuration and functionality of a semiconductor design | |
US5870308A (en) | Method and system for creating and validating low-level description of electronic design | |
US5623418A (en) | System and method for creating and validating structural description of electronic system | |
US5801958A (en) | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information | |
US5933356A (en) | Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models | |
US5422833A (en) | Method and system for propagating data type for circuit design from a high level block diagram | |
Ott et al. | A designer's guide to VHDL synthesis | |
JP2002368104A (ja) | 論理集積回路及び論理集積回路設計方法及び論理集積回路のハードウェア動作記述を生成するハードウェア記述生成方法 | |
US6836874B2 (en) | Systems and methods for time-budgeting a complex hierarchical integrated circuit | |
US7318014B1 (en) | Bit accurate hardware simulation in system level simulators | |
US6546536B1 (en) | System and method for disabling schematics | |
US20100070257A1 (en) | Methods, Systems, and Computer Program Products for Evaluating Electrical Circuits From Information Stored in Simulation Dump Files | |
JP3709626B2 (ja) | 回路検証装置 | |
US5892687A (en) | Don't-- care logic | |
WO2001035283A2 (en) | System for performing parallel circuit simulation in a high level description language | |
US6877140B1 (en) | Method and system for generating a schematic representing bus structures | |
US20010011214A1 (en) | CPU core development support system, method for development support and recording medium storing a development support program thereof | |
Jenihhin et al. | Temporally extended high-level decision diagrams for PSL assertions simulation | |
JPH10240576A (ja) | 検証装置および方法 | |
Jenihhin et al. | PSL Assertion Checking Using Temporally Extended High-Level Decision Diagrams |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050125 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050328 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050419 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050527 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050622 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050719 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050801 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080819 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090819 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |