JP4142176B2 - インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 - Google Patents
インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 Download PDFInfo
- Publication number
- JP4142176B2 JP4142176B2 JP29782798A JP29782798A JP4142176B2 JP 4142176 B2 JP4142176 B2 JP 4142176B2 JP 29782798 A JP29782798 A JP 29782798A JP 29782798 A JP29782798 A JP 29782798A JP 4142176 B2 JP4142176 B2 JP 4142176B2
- Authority
- JP
- Japan
- Prior art keywords
- symbol
- signal
- combination
- storage medium
- interface
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、複数の回路モジュールを接続して構成する集積回路システム、あるいはディジタルシステムにおいて、回路モジュールのインタフェース部分の仕様を正しく定義し、それを利用して回路モジュール間の接続を容易化する技術に関する。
【0002】
【従来の技術】
LSIの集積度の向上により、チップ上にシステムのほとんどを搭載するシステムLSIが実現される。このような大規模なシステムLSIを設計する場合、既設計の回路モジュールを組み合わせて設計することにより、設計のためのコストと工数を削減することになる。このような設計手法において最も重要な課題の一つは、どのようにして既設計の回路モジュールを再利用可能にするかという事である。この課題に対して、多くの方法が提案されその一部は実現されている。例えば、既設計の論理回路を論理合成可能なハードウェア記述言語で記述する事により、LSI製造プロセスに依存しない回路モジュールを実現できる。また、回路モジュールを接続する標準のインタフェース規格を作る試みがバーチャル・ソケット・インタフェース・アライアンス(VSIA)という標準化団体によりなされている。
【0003】
一方、既設計の論理回路間の接続を容易にする、すなわち、論理回路間の接続回路を自動合成する試みが例えば、Roberto Passeroneら、第35回デザインオートメーション・カンファレンス、「Automatic Synthesis of Interfaces between Incompatible Protocols」、pp.8−13.や、Andrew Seawrightら、第29回デザインオートメーション・カンファレンス、「Synthesis from Production−Based Specifications」pp.194−199.に述べられている。
【0004】
これらの提案では論理回路のインタフェースの動作を特別な言語で記述し、その記述から接続回路を自動的に合成する。インタフェース自体を記述する試みは例えば、J.A.Nestorら、1986年のインターナショナル・カンファレンス・オン・コンピュータ・エイデッド・デザイン「Behavioral Synthesys with Interfaces」、pp.112−115.や、Gaetano Borrielloら、1987年のインターナショナル・カンファレンス・オン・コンピュータ・エイデッド・デザイン「Synthesys and Optimization of Intarface Transducer Logic」、pp.274−277.等がある。
【0005】
【発明が解決しようとする課題】
既設計の回路モジュールを再利用しようとした場合、従来、設計者が参照できたのは、その回路モジュールに関するマニュアルとその回路モジュールのハードウェア記述のみであった。マニュアルにはその回路モジュールの仕様、すなわち機能とタイミングチャート等により説明した動作が記載されていた。しかし、図面として記載された動作はある機能を利用する場合のインタフェース信号の挙動の一例を示しているに過ぎず、すべての動作を網羅的に表現できていなかった。また、図面にのみ表現されていたため、再利用する回路モジュールを接続する回路を検証する場合は、その図面に記載された波形が再現されているかどうかを設計者が確認する必要があった。
【0006】
この検証作業は人手により行っていたため、多くの設計工数が必要であり、設計者が図面に記載されたタイミングチャートを間違って理解していると、正しい回路を設計できないという問題があった。そのため、設計者はマニュアルを正確に理解し、場合によってはその動作を把握するためにハードウェア記述を解析する必要があった。
【0007】
【課題を解決するための手段】
従来からある回路モジュールの構造、動作記述をコンピュータ読取り可能な記憶媒体に記憶するのに加えて、回路モジュールの各機能に関係する各入出力端子が特定の時刻に取りうる信号値の組み合わせを識別名で区別し、前記回路記述情報の各機能のインタフェースを前記識別名の時系列の組み合わせで表したインタフェース情報を同時に記録する。
【0008】
また、二つの回路モジュールに関して、前記コンピュータ読み取り可能な記憶媒体に記憶された情報を用いることにより、所定のイベントの発生する時刻のずれを比較することにより、二つの回路モジュールが接続可能であるか否かを検証する。
【0009】
また、前記コンピュータ読み取り可能な記憶媒体に記憶された情報を用い、その回路モジュールの入出力端子に現れる信号の時系列変化を追うことにより、信号パタンを合成する。
【0010】
【発明の実施の形態】
以下に本発明の実施例を説明する。
【0011】
図1は回路モジュールのインタフェース仕様定義を記憶媒体上に記憶する本発明の概要を説明する図である。図1において入出力信号102を持つ論理回路101を考える。通常、この論理回路の構造、あるいは動作はハードウェア記述言語を用いて記述されそのデータ(104)はコンピュータ読み取り可能な記憶媒体103に格納され、保管あるいは設計データとして利用される。あるいはまた電子記憶媒体自体が商品として販売される。これに対して図1では図2に示すインタフェース定義記述213をデータ(105)として論理回路構造あるいは動作を記述したデータ104とともにコンピュータ読み取り可能な記憶媒体103に格納する。
【0012】
図2は図1におけるインタフェース定義記述の詳細を説明する図である。図2において、論理回路201は202に示す複数の入出力信号を持ち、203に示す複数の機能(例えば204〜210)を持つ。これらの複数の機能は、具体的には、入出力インタフェース信号202を通して、211に示すような信号系列として利用される。
【0013】
論理回路201の機能203を213に示す情報により表現する。まず、論理回路201が持つ入出力信号インタフェース202に関する定義情報214を持つ。この定義情報は各端子のビット幅、入出力の区別等を表す。次に信号値の定義情報215を持つ。信号値定義情報では、これらの信号の取り得る値の組み合わせを列挙し、それらの各々に記号を設ける。同期型論理回路では211に示すようにクロック信号clkの1周期に合わせて他の信号も変化する。そして、その1周期分の信号の組み合わせに記号を定義することができる。例えば、212の信号の組み合わせにはRDBHWという記号を定義する。次の定義情報は機能定義情報216である。機能定義情報は論理回路201の持つ機能204〜210の各々に関してその機能に関する信号系列を前記信号値定義情報215で定義した記号の列により定義する。例えば、211に示す信号系列は「NOP、NOP、RDBHW、RDBHW、RDBHW、RDBH、NOP」という系列で表現できる。実際には一つの機能に対応する信号系列は複数存在する場合もあるので、ある機能は複数の記号列の集合として定義される。そして、この記号列に対して、機能を総称する名称を定義する。機能を表現する信号系列は、その機能の動作として可能性のあるすべての信号系列を過不足無く並べる。例えば、211に示す系列の最初のNOPと最後のNOPはあっても無くても機能として不足が無い場合は、211の機能は「RDBHW、RDBHW、RDBHW、RDBH」と定義する。最後の定義情報は統括情報定義情報217である。この情報は216で定義した機能定義情報間の相互関係の定義であり、例えば、論理回路201を使用するにあたり最初に必ず行わなくてはならない機能や連続して使用することができない機能等を機能定義情報で定義した名称を用いて定義する。
【0014】
以上の214〜217の定義、すなわち、端子定義情報、信号値定義情報、機能定義情報、統括情報定義情報により、論理回路の機能とその機能に対応する入出力インタフェース信号の信号系列の対応関係を表現する。なお、この表現を以下ではインタフェース定義記述と呼ぶ。
【0015】
図3は図1および図2で説明したコンピュータ読み取り可能な記憶媒体に格納するインタフェース定義記述データ213の電子記憶媒体中でのデータ構造を説明する図である。
【0016】
まず、記述の対象となるインタフェースの名称301が格納される。次にインタフェースの持つ複数の端子に関して端子名称、信号幅(信号線本数)、入力または出力等の信号属性の3種類の情報を表すデータを組にして端子の数だけ格納し、最後に終端記号を表すデータを格納する。次が信号値定義情報を表すデータ303で、302で記述した端子が取り得る論理値(0、1、不定等)の組合せと、その組合せに対する定義名称のデータを組にして表す。図3の例では、定義名称として「信号値定義名称」と「省略形名」の二つを持つ。信号値定義名称は意味のある単語やその羅列で表現し、省略形名は1〜2文字程度の短い名称とする。論理値は302で記述した端子名称の数だけ列挙する。この信号値定義名も全てのデータの最後に終端記号を列挙したデータを格納する。
【0017】
次は機能定義情報304で機能定義名称と、その機能に対応する信号系列を303に格納した信号値定義名、あるいはその省略形名を用いて表す。また、必要に応じて同じ信号値定義名の繰り返しやどちらか一方といった選択等を表現する記号を格納する。これらは、「信号、記号名」に格納する。ここで使用する記号名には例えば以下の記号を用いる。
【0018】
(1)“*” 直前の信号値定義名の0個以上、無限回の繰り返しを意味する記号。たとえば“A B * C”と格納した場合はA C,A B C,A BB C,A B B B C等のすべてを表現する。
【0019】
(2)“(”、“)” 数学の表記と同様に“(”と“)”にはさまれた信号値定義名の列を一まとめに扱う。例えば“A(B C)*”と格納した場合はA,A B C,A B C B C等を表現する。
【0020】
(3)“<”、“>” “<”と“>”にはさまれた信号値定義名の列があるかあるいはまったく無い場合を表現する。例えば、“A <B> C”と格納した場合はA C、A B Cを表現する。
【0021】
(4)“[”、“|”、“]” “[”と“]”にはさまれた信号値定義名の列で、“|”により区切られた複数の列のうちのいずれかに一致する列を表現する。例えば“A[B|C]D”と格納した場合はA B D、A C Dを表現する。
【0022】
定義する機能は対象とする論理回路の持つ機能、例えば「データ読み出し」「データ書き込み」などの機能に関してのインタフェース信号における信号変化を過不足無く表現する。定義する信号系列の長さは機能毎に異なるため、定義の最後には終端記号を格納する。
【0023】
最後の305は統括情報定義情報で、304で定義した機能に関してそれらの機能間の可能な並びを304で定義した機能定義名と305で使用したのと同じ記号を用いて表し、それを格納する。このデータも可変長データなので、データの最後には終端記号を格納する。統括情報定義情報は、例えば、回路の電源投入時に1回だけ実行する機能Aとその他の機能B,Cがある場合には統括情報定義は“A[B|C]*”と格納する。あるいは機能Aと機能Bとの間に実行のための制限が存在する場合、機能Aの後にはからなず機能Cの後機能Bが続く場合は“A C B”という列を格納する。
【0024】
図3のコンピュータ読み取り可能な記憶媒体に格納するデータ構造とこのデータから、コンピュータの処理により容易に以下の事を実現できる。
【0025】
(1)このデータ構造から、データ構造が表現するインタフェースを構成する信号が取りうる任意の信号系列を発生する事ができる。これは、コンピュータを用いて論理シミュレーションを実施する際のテストパタン、あるいは論理シミュレーション結果の正しさの確認、さらには、任意のテストパタンにより論理シミュレーションを行った際にどのような機能の動作を再現したかを確認する事が可能になる。後にこれを実現する実施例を図10を用いて説明する。
【0026】
(2)こののデータ構造から、二つの論理回路を接続する接続回路を実現することが可能であるかどうかを判定できる。後にこれを実現する実施例を図4を用いて説明する。
【0027】
(3)このデータ構造から、二つの論理回路間を接続する接続回路を自動的に生成する事が可能になる。
【0028】
図11は本発明の実施例2を説明する図である。この例では論理回路1101が複数にグループ分けされた入出力インタフェース(1102〜1104)を持つ。そしてそれに対応して、コンピュータ読み取り可能な記憶媒体1105には、論理回路構造、動作記述1106とともにそれぞれのインタフェースに対応したインタフェース定義記述1107〜1109を持つ。
【0029】
図12を用いて、拡張されたデータ構造を説明する。図12は図3のデータ構造を拡張したものである。図中で301〜303と305は図3におけるデータ構造と同じである。
【0030】
1201は拡張された機能定義情報である。304と同じ構造であるが、データ構成要素である1202には信号名、記号名の他、条件名、手続き名が格納される。
【0031】
1203は定数定義情報である。定数定義情報は、定数定義名と定数型識別子と定数値からなる。ここで定数型識別子として、整数を現すI型と時間を現すT型がある。
【0032】
1204は変数定義情報である。変数定義情報は、変数定義名と変数型識別子と変数初期値からなる。この変数型識別子は定数型識別子と同じである。
【0033】
1205は条件定義情報である。条件定義情報は条件定義名と変数名、定数名、演算記号名、あるいは演算名からなる構成要素1206と終端記号からなる。
【0034】
1207は手続き定義情報である。手続き定義情報は手続き定義名と変数名、定数名、演算記号名、あるいは演算名からなる構成要素1208と終端記号からなる。
【0035】
上記の拡張したデータ構造は、例えば、
定数定義として、
定数名 型 定数値
UPPER I 3
変数定義として、
変数名 型 初期値
cnt I 0
機能定義として、
機能定義名 1202
X A ( p B t )* “終端記号”
ここで、Xは機能定義名、A,Bは信号名、pは条件定義名、tは手続き定義名とする。
【0036】
条件定義として、
条件定義名 1206
p cnt < UPPER “終端記号”
手続き定義として、
手続き定義名 1208
t cnt = cnt + 1 “終端記号”
と格納したデータ構造は、機能Xとして、Aの後、Bが高々3つしか続かない信号系列、すなわち、A 、A B、A B B、A B B Bを表現する。
【0037】
別の例としては、
変数定義として、
変数名 型 初期値
tx T 0
機能定義として、
機能定義名 1202
Y A t2 B * p2
条件定義として、
条件定義名 1206
p2 ( now − tx ) < 100 ms
手続き定義として、
手続き定義名 1208
t2 tx = now
と格納したデータ構造は、機能Yとして、Aの後、Bを100 ms 以内の期間繰り返す信号系列を意味する。ここで、“now”は現在の時刻、“ms”は時間の単位である。
【0038】
図4は本発明によるインタフェース定義記述を利用した二つの論理回路間の接続可能性を判定するシステムの構成図である。このシステムは、接続すべき二つの論理回路のインタフェース定義記述IF−A(401)とIF−B(404)を入力し、更に、インタフェース定義記述の中で定義されている機能同士がどのように対応するかを記述したデータファイル407を入力し、二つのインタフェース間を接続するための論理回路を構成することが可能であるかどうかを判定する。インタフェース間を接続するための論理回路とは例えば図5において、インタフェースIF−Aを持つ論理回路501とインタフェースIF−Bを持つ論理回路503を接続する接続回路502のような回路を指す。
【0039】
図4の説明の前に、図6〜図9を用いてインタフェース定義記述を解析する事により得られるデータの到達ステップの算出方法を説明する。データの到達ステップとはインタフェースのある機能に関して、処理が開始してから何サイクル目に有効なデータが送信、あるいは受信されるかを表す値である。
【0040】
図6はあるインタフェースにおける1つの機能を示すタイミングチャートである。このインタフェースにおける信号はクロック信号clkの立上りに同期している。601と602の2つのサイクルは何もしていないサイクルで、NOPという信号値定義名が付いている。READという機能606は603からはじまり605で終了する。開始サイクル603からイネーブル信号en、ウエイト信号wait、アドレス値adrがアサートされる。そしてサイクル605ではウエイト信号waitがネゲートされ、データ線dataに有効なデータ607が現れる。イネーブル信号enがアサートされ、ウエイト信号waitもアサートされている状態(603、604)をRDWという信号値定義名、ウエイト信号waitがネゲートされ、データ線dataに有効なデータが現れている状態605をRDという信号値定義名とすると、ここで表現されているREADという機能は「RDW RDW RD」という信号値定義名の列で表現できる。
【0041】
この信号値定義名の列を状態遷移グラフで表現すると図7に示すグラフになる。この状態遷移グラフは出発点S(701)と終点E(704)を持ち、グラフの枝が信号値定義名に対応する。「RDW RDW RD」という例は、最初のRDWが701から702への遷移枝、次のRDWが702から703への遷移枝、最後のRDが703から704への遷移枝として表現される。この例では有効なデータ(図6における607)は3サイクル目に出現することから到達ステップは3となる。
【0042】
しかし、実際の回路が、ウエイト信号waitがアサートされている限りRDWの状態を繰り返すという仕様であれば、実際の動作はウエイト信号waitがアサートされない「RD」のみからRDWが無限に続く場合まで考えられる。このような場合、全ての場合を列挙することは不可能であるため、繰り返し記号「*」を用いて表現する。すなわち、「RDW * RD」と記述することにより、0個以上のRDWが連続した後にRDが来るという信号系列を表す。この例を状態遷移グラフで表現すると図8に示すグラフになる。出発点S(801)からRDWとRDの2本の遷移枝が出ている。RDWは再び出発点Sに戻るため、0回以上、無限回のRDWの繰り返しを表現する。この場合の到達ステップは1以上無限大までなので、[0、∞]という区間で到達ステップを表現できる。
【0043】
更に、図9の状態遷移の例は、RDが3サイクル目か5サイクル目のどちらかに出現する場合である。このような場合の信号値定義名の列は論理和記号「|」を用いて「(RDW RDW RD)|(RDW RDW RDW RDW RD)」と記述するか、あるか無いかを示す記号「<>」を用いて「RDW RDW <RDW RDW> RD」と表現する。この場合の到達ステップは(3,5)という集合で表現できる。
【0044】
以上のように、信号定義名の列から状態遷移グラフを作成し、グラフ上で出発点から特定の枝まで至る枝の本数を算出することにより、到達ステップの値を計算することができる。この原理を用いて図4の接続可能性を判定するシステムの動作を説明する。
【0045】
図4において、401と404が接続対象の論理回路に対するインタフェース定義記述を格納するファイルである。402、405でこのファイルを読み込み、403、406で状態遷移グラフを作成し、409、410で各々の到達ステップを計算する。到達ステップの計算に先立ち、二つの論理回路を接続するにあたり、双方の機能の対応関係(例えば、一方はデータを出力する機能、もう一方はデータを入力する機能)を記述したデータファイル407を入力し、解析対象の機能と対応する機能に関して有効なデータが出現する箇所を双方の到達ステップ計算手段409、410に指示する。計算された到達ステップは到達期間比較手段411において比較され、その結果は比較結果出力手段412において表示装置413またはファイル414に出力される。
【0046】
比較の前提として接続対象の論理回路のファイル407により指定された機能の対応関係において、データの転送関係、すなわち一方が出力でもう一方が入力、という関係が成立しているものとする。
【0047】
ここで、到達期間比較手段411における比較は2段階で行われる。。まず第1段階において双方の到達ステップの範囲に重なりがあるかどうかを調べる。もし重なりがあれば、同じタイミングでデータを転送できる。ここでもし重なりがなければ第2段階に進み、データの出力側の範囲よりもデータの入力側の範囲の方が大きい値、すなわち時間的に後であるかどうかを調べる。もし、時間的に後であれば、接続回路中にラッチ等のデータを一時的に保持する回路を設ける事により正しくデータを転送できる。以上の比較を行い、接続を正しく行う事が可能かどうかを判断する。比較結果出力手段412は前記の比較結果に関して、第1段階で重なりが存在したかどうか、第2段階で条件を満足したかどうかを表示装置413またはファイル414に出力する。この結果は、第1段階で重なりが存在すれば、データバッファを必要とせずに接続回路を実現できる事がわかる。第2段階で条件を満足すれば、データバッファを必要とする接続回路により実現できる事がわかる。第2段階で条件を満足しなければ、接続回路を実現できないことがわかる。
【0048】
図4に示す接続可能性を判定するシステムを利用することにより、任意の論理回路間の接続回路の設計の前に、接続回路を実現可能であるかどうかを実際に接続回路を設計する前に検証することが可能になる。
【0049】
図10は本発明によるインタフェース定義記述を元に、そのインタフェースに与えるシミュレーション用信号パタンを自動的に生成するシステムの構成図である。処理は接続可能性判定の場合と同様にインタフェース定義記述から状態遷移グラフを生成する。まず、インタフェース定義記述を格納したファイル1001をインタフェース記述解析手段1002で読み込み、インタフェース状態生成手段1003で状態遷移グラフを生成する。また、シミュレーションパタンの生成にあたり、パタン生成の対象となるインタフェースの機能を記述したファイル1004を機能入力手段1005で読み込み、状態トレース手段1006において、指定された機能に対する状態遷移グラフをトレースし、出発点(例えば図7の701)から終点(例えば図7の704)までの経路、すなわち経路上の信号値定義名を順番に列挙する。列挙された順番を基に、信号波形出力手段1007では、その信号値定義名に対応した波形を信号値定義情報の中の各端子の論理値をシミュレーションパタンとして表示装置1008またはファイル1009に出力する。
【0050】
以上の処理により、インタフェース定義記述からシミュレーション用信号パタンを生成するシステムを構成できる。
【0051】
【発明の効果】
本発明を用いると、既設計の論理回路ブロックのインタフェース動作を本発明を用いて記述し、コンピュータ読み取り可能な記憶媒体に記憶する事が可能になる。そして、そのデータを論理回路ブロックのハードウェア記述とセットにして配布したり、そのデータからインタフェースを構成する端子上の信号系列を再生し、表示したり、それを論理シミュレーション用のテストパタンとして利用することが可能になる。さらには接続すべき二つの論理回路のインタフェース記述を用いて、二つの論理回路が接続可能であるかどうかを検証でき、従来課題となっていた、既設計回路の利用時に必要だった設計者による検証作業を軽減することが可能になる。
【図面の簡単な説明】
【図1】本発明の概要を説明する図である。
【図2】本発明によるインタフェース仕様の定義方法を説明する図である。
【図3】図2においてコンピュータ読み取り可能な記憶媒体に記録されるデータ構造を説明する図である。
【図4】二つの論理回路間の接続可能性をインタフェース定義記述を利用して判定するシステムの構成図である。
【図5】本発明が対象とする二つの論理回路間を接続する接続回路を説明する図である。
【図6】あるインタフェースにおける一つの機能の信号系列の例を説明する図である。
【図7】図6の例を状態遷移グラフで表す図である。
【図8】状態遷移グラフの一例を説明する図である。
【図9】状態遷移グラフの他の一例を説明する図である。
【図10】インタフェース定義記述を元に、そのインタフェースに与えるシミュレーション用信号パタンを生成するシステムの構成図である。
【図11】論理回路が複数のインタフェース定義記述を備えた実施例を示す図である。
【図12】図3のデータ構造を拡張したデータ構造を表す図である。
【符号の説明】
101…論理回路、102…入出力信号、103…コンピュータ読み取り可能な記憶媒体、104…論理回路構造,動作記述、105…インタフェース定義記述。
201…論理回路、202…入出力信号、203…論理回路201が持つ機能、204…read_byte_h機能、205…read_byte_l機能、206…read_word機能、207…write_byte_h機能、208…write_byte_l機能、209…write_word機能、210…nop機能、111…入出力端子202の入出力信号系列の1例、212…ある時刻の信号波形、213…インタフェース定義記述、214…端子定義情報、215…信号値定義情報、216…機能定義情報、217…統括情報定義情報。
301…インタフェース名、302…端子定義情報、303…信号値定義情報、304…機能定義情報、305…統括情報定義情報。
1101…論理回路、1102〜1104…グループ分けされた入出力信号、1105…コンピュータ読み取り可能な記憶媒体、1106…論理回路構造、動作記述、1107〜1109…インタフェース定義記述。
1201…機能定義情報、1202…信号、記号、条件、手続き名、1203…定数定義情報、1204…変数定義情報、1205…条件定義情報、1206…変数、定数、演算記号、演算名、1207…手続き定義情報、1208…変数、定数、演算記号、演算名。
401、404…インタフェース定義記述ファイル、402、405…インタフェース記述解析手段、403、406…インタフェース状態生成手段、407…対応機能指定ファイル、408…対応状態入力手段、409、410…到達ステップ計算手段、411…到達期間比較手段、412…比較結果出力手段、413…表示装置、414…出力ファイル。
501…論理回路A、502…接続回路、503…論理回路B。
601、602…NOP波形、603、604…RDW波形、605…RD波形、606…READ機能、607…有効データ出力。
701…出発点S、702、703…中間節点、704…終点E。
801…出発点S、802…終点E。
901…出発点S、902〜905…中間節点、906…終点E。
1001…インタフェース定義記述ファイル、1002…インタフェース記述解析手段、1003…インタフェース状態生成手段、1004…機能指定ファイル、1005…機能入力手段、1006…状態トレース手段、1007…信号波形出力手段、1008…表示装置、1009…出力ファイル。
Claims (11)
- 回路モジュールのインタフェース定義記述が記憶されたコンピュータ読取り可能な記憶媒体であって、
前記インタフェース定義記述は、前記回路モジュールの各入出力端子が特定の時刻に取りうる信号値の組合せを定義するものであって第1の記憶領域に記憶される第1の記号と、前記第1の記号及び前記信号値の組合せの0回以上無限回までの繰返しを表現する記号、前記信号値の発生または非発生を表現する記号、複数種類の前記第1の記号の組合せ候補を表現する記号の少なくとも何れかを含み、前記回路モジュールの機能に対応する前記第1の記号の時系列の組合せを定義する信号系列を定義するものであって第2の記憶領域に記憶される第2の記号によって記述され、
システムのインタフェース記述解析手段が、前記第1及び第2の記号を読み込み、前記第1の記号から前記回路モジュールの各入出力端子が特定の時刻に取りうる信号値の組合せを特定し、前記第2の記号が前記信号値の組合せの0回以上無限回までの繰返しを表現する記号を含む場合には該記号を前記信号値の組合せの0回以上無限回までの繰返しと判定し、前記第2の記号が前記信号値の発生または非発生を表現する記号を含む場合には該記号を前記信号値の発生または非発生と判定し、前記第2の記号が前記複数種類の前記第1の記号の組合せ候補を表現する記号を含む場合には該記号を前記複数種類の前記第1の記号の組合せ候補の何れか1つと判定することにより、前記第2の記号から前記回路モジュールの機能に対応する前記特定された信号値の組合せの時系列の組合せを定義する信号系列を特定し、
前記システムのインタフェース状態生成手段が、前記特定された信号系列から前記回路モジュールの機能に対応する信号系列を表現する状態遷移グラフを作成するのに用いられることを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項1に記載のコンピュータ読取り可能な記憶媒体において、
前記システムは、到達ステップ計算手段及び到達期間比較手段をさらに有し、
前記インタフェース記述解析手段が、第1の回路モジュールの第1のインタフェース定義記述及び第2の回路モジュールの第2のインタフェース定義記述を記述する第1及び第2の記号を前記記憶媒体から読み込み、前記第1の記号から前記第1及び第2の回路モジュールの各入出力端子が特定の時刻に取りうる第1及び第2の信号値の組合せを特定し、前記第2の記号が前記信号値の組合せの0回以上無限回までの繰返しを表現する記号を含む場合には該記号を前記第1及び第2の信号値の組合せの0回以上無限回までの繰返しと判定し、前記第2の記号が前記信号値の発生または非発生を表現する記号を含む場合には該記号を前記信号値の発生または非発生と判定し、前記第2の記号が前記複数種類の前記第1の記号の組合せ候補を表現する記号を含む場合には該記号を前記複数種類の前記第1の記号の組合せ候補の何れか1つと判定することにより、前記第2の記号から前記第1及び第2の回路モジュールの機能に対応する前記特定された第1及び第2の信号値の組合せの時系列の組合せを定義する第1及び第2の信号系列を特定し、
前記インタフェース状態生成手段が、前記特定された第1及び第2の信号系列から前記第1及び第2の回路モジュールの機能に対応する第1及び第2の信号系列を表現する第1及び第2の状態遷移グラフを作成し、
前記到達ステップ計算手段が、前記第1及び第2の状態遷移グラフを用いて第1及び第2の到達ステップを計算し、
前記到達期間比較手段が、前記第1及び第2の到達ステップを比較することにより前記第1及び第2の回路モジュールの接続の検証を実行するのに用いられることを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項2に記載のコンピュータ読取り可憶な記憶媒体において、
前記到達期間比較手段は、前記第1及び第2の回路モジュールを接続する接続回路における入力側と出力側の前記到達ステップの範囲を比較し、双方の到達ステップの範囲の重なりが無く、かつ前記出力側の到達ステップの範囲よりも入力側の到達ステップの範囲の方が大きい場合には、前記接続回路にデータバッファを設けることにより前記第1及び第2の回路モジュールの接続が可能と判定するのに用いられることを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項1に記載のコンピュータ読取り可能な記憶媒体において、
前記システムはさらに、状態トレース手段及び信号波形出力手段を有し、
前記状態トレース手段が、指定される機能に対応する前記状態遷移グラフをトレースし、
前記信号波形出力手段が、前記トレースされた状態遷移グラフに対応する信号変化を出力するのに用いられることを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項1乃至4の何れかに記載のコンピュータ読取り可能な記憶媒体において、
前記回路モジュールの構造または動作を示すハードウエア記述情報を更に具備して成ることを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項1乃至5の何れかに記載のコンピュータ読取り可能な記憶媒体において、
前記インタフェース定義記述は、前記入出力端子の定義を更に含み、前記入出力端子の定義の各々はビット幅および入力/出力の別を示す識別子を含むことを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項1乃至6の何れかに記載のコンピュータ読取り可能な記憶媒体において、
前記第2の記号は、複数の前記第1の記号によって定義される信号値の組合せを1単位として表現する記号を含み、
前記インタフェース記述解析手段は、該記号を前記複数の第1の記号によって定義される信号値の組合せが1単位であると判定することを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項1乃至7の何れかに記載のコンピュータ読取り可能な記憶媒体において、
前記インタフェース定義記述は、前記第2の記号において、前記第1の記号または前記第1の記号の組が所定の範囲で繰り返されることを規定する条件をさらに含むことを特徴とするコンピュータ読取り可能な記憶媒体。 - 請求項1乃至8の何れかに記載のコンピュータ読取り可能な記憶媒体において、
前記第2の記号は、クロック信号の周期の間隔に前記第1の記号を時系列に並べて記述されることを特徴とするコンピュータ読取り可能な記憶媒体。 - 記憶媒体に格納される回路モジュールのインタフェース定義記述を用いてシステムで実行される前記回路モジュールの接続検証方法であって、
前記インタフェース定義記述は、前記回路モジュールの各入出力端子が特定の時刻に取りうる信号値の組合せを定義するものであって第1の記憶領域に記憶される第1の記号と、前記第1の記号及び前記信号値の組合せの0回以上無限回までの繰返しを表現する記号、前記信号値の発生または非発生を表現する記号、複数種類の前記第1の記号の組合せ候補を表現する記号の少なくとも何れかを含み、前記回路モジュールの機能に対応する前記第1の記号の時系列の組合せを定義する信号系列を定義するものであって第2の記憶領域に記憶される第2の記号によって記述され、
前記システムは、インタフェース記述解析手段と、インタフェース状態生成手段と、到達ステップ計算手段と、到達期間比較手段と、を有し、
前記インタフェース記述解析手段は、第1の回路モジュールの第1の前記インタフェース定義記述及び第2の回路モジュールの第2の前記インタフェース定義記述を記述する第1及び第2の記号を前記記憶媒体から読み込み、前記第1の記号から前記第1及び第2の回路モジュールの各入出力端子が特定の時刻に取りうる第1及び第2の信号値の組合せを特定し、前記第2の記号が前記第1及び第2の信号値の組合せの0回以上無限回までの繰返しを表現する記号を含む場合には該記号を前記第1及び第2の信号値の組合せの0回以上無限回までの繰返しと判定し、前記第2の記号が前記第1及び第2の信号値の発生または非発生を表現する記号を含む場合には該記号を前記第1及び第2の信号値の発生または非発生と判定し、前記第2の記号が前記複数種類の前記第1の記号の組合せ候補を表現する記号を含む場合には該記号を前記複数種類の前記第1の記号の組合せ候補の何れか1つと判定することにより、前記第2の記号から前記第1及び第2の回路モジュールの機能に対応する前記特定された第1及び第2の信号値の組合せの時系列の組合せを定義する第1及び第2の信号系列を特定し、
前記インタフェース状態生成手段は、前記特定された第1及び第2の信号系列から前記第1及び第2の回路モジュールの機能に対応する第1及び第2信号系列を表現する第1及び第2の状態遷移グラフを作成し、
前記到達ステップ計算手段は、前記第1及び第2の状態遷移グラフから第1及び第2の到達ステップを計算し、
前記到達期間比較手段は、前記第1及び第2の到達ステップを比較することにより、前記第1及び第2の回路モジュールの接続可否を判定することを特徴とする接続検証方法。 - 記憶媒体に格納される回路モジュールのインタフェース定義記述を用いてシステムで実行される信号パターン生成方法であって、
前記インタフェース定義記述は、前記回路モジュールの各入出力端子が特定の時刻に取りうる信号値の組合せを定義するものであって第1の記憶領域に記憶される第1の記号と、前記第1の記号及び前記信号値の組合せの0回以上無限回までの繰返しを表現する記号、前記信号値の発生または非発生を表現する記号、複数種類の前記第1の記号の組合せ候補を表現する記号の少なくとも何れかを含み、前記回路モジュールの機能に対応する前記第1の記号の時系列の組合せを定義する信号系列を定義するものであって第2の記憶領域に記憶される第2の記号によって記述され、
前記システムは、インタフェース記述解析手段と、インタフェース状態生成手段と、状態トレース手段と、信号波形出力手段と、を有し、
前記インタフェース記述解析手段は、前記第1及び第2の記号を前記記憶媒体から読み込み、前記第1の記号から前記回路モジュールの各入出力端子が特定の時刻に取りうる信号値の組合せを特定し、前記第2の記号が前記信号値の組合せの0回以上無限回までの繰返しを表現する記号を含む場合には該記号を前記信号値の組合せの0回以上無限回までの繰返しと判定し、前記第2の記号が前記信号値の発生または非発生を表現する記号を含む場合には該記号を前記信号値の発生または非発生と判定し、前記第2の記号が前記複数種類の前記第1の記号の組合せ候補を表現する記号を含む場合には該記号を前記複数種類の前記第1の記号の組合せ候補の何れか1つと判定することにより、前記第2の記号から前記回路モジュールの機能に対応する前記特定された信号値の組合せの時系列の組合せを定義する信号系列を特定し、
前記インタフェース状態生成手段は、前記特定された信号系列から前記回路モジュールの機能に対応する信号系列を表現する状態遷移グラフを作成し、
前記状態トレース手段は、指定される機能に対応する前記状態遷移グラフをトレースし、
前記信号波形出力手段は、前記トレースされた状態遷移グラフに対応する信号変化を出力することを特徴とする信号パターン生成方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29782798A JP4142176B2 (ja) | 1998-10-20 | 1998-10-20 | インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 |
US09/420,485 US6505338B1 (en) | 1998-10-20 | 1999-10-19 | Computer readable medium with definition of interface recorded thereon, verification method for feasibility to connect given circuit and method of generating signal pattern |
US10/298,546 US6701510B2 (en) | 1998-10-20 | 2002-11-19 | Computer readable medium with definition of interface recorded thereon, verification method for feasibility to connect given circuit and method of generating signal pattern |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29782798A JP4142176B2 (ja) | 1998-10-20 | 1998-10-20 | インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000123064A JP2000123064A (ja) | 2000-04-28 |
JP4142176B2 true JP4142176B2 (ja) | 2008-08-27 |
Family
ID=17851678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29782798A Expired - Fee Related JP4142176B2 (ja) | 1998-10-20 | 1998-10-20 | インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US6505338B1 (ja) |
JP (1) | JP4142176B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4142176B2 (ja) * | 1998-10-20 | 2008-08-27 | 株式会社ルネサステクノロジ | インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 |
DE10036387A1 (de) * | 1999-08-16 | 2001-03-01 | Advantest Corp | Halbleitertestprogramm-Diagnosevorrichtung |
US6625789B2 (en) * | 2000-04-14 | 2003-09-23 | Hitachi, Ltd. | Computer-readable medium for recording interface specifications |
JP2002073719A (ja) | 2000-08-31 | 2002-03-12 | Hitachi Ltd | 回路動作モデル記述の生成方法および論理設計検証装置 |
JP2002230061A (ja) | 2001-01-30 | 2002-08-16 | Matsushita Electric Ind Co Ltd | 半導体回路接続データベース及びこれを用いた半導体回路設計方法 |
JP4078435B2 (ja) | 2001-06-06 | 2008-04-23 | 株式会社ルネサステクノロジ | 論理集積回路及び論理集積回路設計方法及び論理集積回路のハードウェア動作記述を生成するハードウェア記述生成方法 |
US7577726B1 (en) * | 2002-02-07 | 2009-08-18 | Cisco Technology, Inc. | Method for updating a hardware configuration of a networked communications device |
US6907584B1 (en) * | 2003-03-14 | 2005-06-14 | Xilinx, Inc. | Method and apparatus for providing an interface to an electronic design of an integrated circuit |
US20070288881A1 (en) * | 2006-06-12 | 2007-12-13 | Sreeni Maheshwarla | Method of merging designs of an integrated circuit from a plurality of sources |
JP4870786B2 (ja) | 2007-01-30 | 2012-02-08 | 富士通株式会社 | 接続整合性チェック処理方法,ケーブル選択処理方法,設計確認処理装置および設計確認処理プログラム |
US9501594B2 (en) * | 2014-04-13 | 2016-11-22 | Vtool Ltd. | Graphical design verification environment generator |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4622633A (en) * | 1983-12-06 | 1986-11-11 | Tri Sigma Corporation | Object building method for self configuring computer network |
US4989203A (en) * | 1989-06-09 | 1991-01-29 | Honeywell Inc. | Apparatus for providing multiple controller interfaces to a standard digital modem and including separate contention resolution |
US5598344A (en) * | 1990-04-06 | 1997-01-28 | Lsi Logic Corporation | Method and system for creating, validating, and scaling structural description of electronic device |
FR2661266B1 (fr) * | 1990-04-20 | 1992-08-07 | Aerospatiale | Procede interactive de production de logiciel en code source, modelisant un ensemble complexe de modules fonctionnels. |
US5499192A (en) * | 1991-10-30 | 1996-03-12 | Xilinx, Inc. | Method for generating logic modules from a high level block diagram |
JPH0765040A (ja) * | 1993-08-24 | 1995-03-10 | Matsushita Electric Ind Co Ltd | 機能データインターフェース方法および機能データインターフェース装置 |
JPH09153077A (ja) | 1995-12-01 | 1997-06-10 | Pfu Ltd | デジタル回路設計支援システムおよびデジタル回路のハードウェアおよびソフトウェアの設計方法 |
US6236956B1 (en) * | 1996-02-16 | 2001-05-22 | Avant! Corporation | Component-based analog and mixed-signal simulation model development including newton step manager |
US5798935A (en) * | 1996-07-01 | 1998-08-25 | Sun Microsystems, Inc. | Method and apparatus for sizing buffers to provide minimal skew |
US6152612A (en) * | 1997-06-09 | 2000-11-28 | Synopsys, Inc. | System and method for system level and circuit level modeling and design simulation using C++ |
JP4142176B2 (ja) * | 1998-10-20 | 2008-08-27 | 株式会社ルネサステクノロジ | インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 |
US6230114B1 (en) * | 1999-10-29 | 2001-05-08 | Vast Systems Technology Corporation | Hardware and software co-simulation including executing an analyzed user program |
-
1998
- 1998-10-20 JP JP29782798A patent/JP4142176B2/ja not_active Expired - Fee Related
-
1999
- 1999-10-19 US US09/420,485 patent/US6505338B1/en not_active Expired - Fee Related
-
2002
- 2002-11-19 US US10/298,546 patent/US6701510B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6701510B2 (en) | 2004-03-02 |
US20030070154A1 (en) | 2003-04-10 |
JP2000123064A (ja) | 2000-04-28 |
US6505338B1 (en) | 2003-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6536031B2 (en) | Method for generating behavior model description of circuit and apparatus for logic verification | |
US20050198601A1 (en) | Method for analyzing and validating clock integration properties in circuit systems | |
US20080104556A1 (en) | Assertion Generating System, Program Thereof, Circuit Verifying System, and Assertion Generating Method | |
JP4142176B2 (ja) | インタフェース仕様定義を記録した記憶媒体、及び接続検証方法、及び信号パタン生成方法 | |
CN116663467B (zh) | 断言等效硬件库的构建方法、装置、电子设备及存储介质 | |
JPS63145549A (ja) | 論理回路シミユレ−シヨン方法 | |
JP4850091B2 (ja) | 検証シナリオ生成装置,方法,およびプログラム,並びに検証装置 | |
CN115293084A (zh) | 一种门级网表跨时钟域自动化分析方法及系统 | |
CN111400169A (zh) | 一种自动化生成用于测试软硬件的网表文件的方法及系统 | |
US7194715B2 (en) | Method and system for performing static timing analysis on digital electronic circuits | |
US7197445B1 (en) | Atomic transaction processing for logic simulation | |
US6745376B2 (en) | Several improvements for timing diagrams | |
WO2000036532A1 (en) | Latch inference using dataflow analysis | |
US8090564B1 (en) | Automatic generation of transaction level bus simulation instructions from bus protocol | |
JP5104356B2 (ja) | 検証支援プログラム、検証支援装置、および検証支援方法 | |
JP2002259488A (ja) | クロックスキュー検証方法 | |
JPH10254930A (ja) | 半導体素子の機能検証装置及びその機能検証方法 | |
US20250103789A1 (en) | Techniques for modeling and verification of convergence for hierarchical domain crossings | |
US12197840B2 (en) | Techniques for modeling and verification of convergence for hierarchical domain crossings | |
US7350162B2 (en) | Structure analytic program | |
JP2004192334A (ja) | 設計データ解析方法及び設計データ解析プログラム | |
KR101215977B1 (ko) | 집적회로 및 메모리장치의 테스트 방법 | |
KR19990079355A (ko) | 테스트벤치 발생기 및 이를 이용한 시뮬레이션방법 | |
JPH1125136A (ja) | Hdl記述生成装置及び方法並びにhdl記述生成プログラムを記録した記録媒体 | |
CN119026542A (zh) | Fpga芯片的层次化静态时序分析方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20040308 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060522 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060525 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060724 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060817 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060914 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20061025 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20061117 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080501 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080612 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120620 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120620 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130620 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130620 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140620 Year of fee payment: 6 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |