(57)【要約】【課題】  ＬＳＩの論理検証の効率化、及び期間短縮を実現する論理検証方法、および装置を提供する。【解決手段】  データ転送要求信号、データ転送許可信号、及びデータ転送バスを所有し、データ転送要求信号を発行し、データ転送許可信号を受けた後にデータ転送バスを介してデータを転送する、バスマスターとなる論理ブロックと、前記データ転送要求信号を監視し、データ転送許可信号を発行する、仮想バスモデルからなる。【選択図】  図５
2006113862.tif 000002
【特許請求の範囲】
【請求項１】
データ転送要求信号、データ転送許可信号、及びデータ転送バスを所有し、データ転送要求信号を発行し、データ転送許可信号を受けた後にデータ転送バスを介してデータを転送する、バスマスターとなる論理ブロックを検証する論理検証方法であって、
前記データ転送要求信号を監視し、データ転送許可信号を発行する、仮想バスモデルを使用して、前期論理ブロックのデータ転送機能の検証を行うことを特徴とした論理検証方法。
【請求項２】
前記仮想バスモデルがデータ転送許可信号を発行する際に、予め検証項目として挙げたバス待機時間（サイクル）のリストから選択し、これに従って待機させた後にデータ転送許可信号を発行することを特徴とした、請求項1に記載した論理検証方法。
【請求項３】
前記予め検証項目として挙げたバス待機時間のリストから、1つずつ実行し、全ての項目を実行し終えたときに検証終了とすることを特徴とした、請求項１に記載した論理検証方法。
【請求項４】
前記仮想バスモデルに、検証対象であるバスマスターとなる論理ブロック内部を監視する手段を持ち、論理ブロック内部の状態によりデータ転送許可信号の発行をコントロールすることを特徴とした、請求項1に記載した論理検証方法。
【請求項５】
前記論理ブロック内部の状態によりデータ転送許可信号の発行をコントロールするに際し、論理ブロック内部の全ての状態において待機させたときに、検証終了とすることを特徴とした、請求項１に記載した論理検証方法。
【請求項６】
前記論理ブロックを単体にて、前記仮想バスモデルを使用してデータ転送機能の論理検証を終了し、この論理ブロックを含むLSIを論理検証する際には、前記データ転送機能を論理検証しないことを特徴とした論理検証方法。
【請求項７】
前記論理ブロックの設計データ、前記仮想モデル、及び前記検証項目リストを記憶する記憶装置と、これを論理シミュレーションするプロセッサとを有する、論理検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、LSIの論理検証における効率化、期間短縮に関するものである。
【背景技術】
【０００２】
複数の論理ブロックが一つのデータバスを取り合って、このデータバスに接続される他の論理ブロックにデータを転送する場合、これら複数の論理ブロックのバス転送権を調停するブロックが、順番にデータ転送許可を与えるような処理をする回路方式が知られている。
【０００３】
このデータバスを取り合う、データバスのマスターとなる論理ブロックは、バス権が与えられるまでデータの出力を待たなければならない。あるひとつのマスター回路のこの機能を検証するためには、調停回路、及び他のマスター回路が必要になる。すなわち他のマスター回路によって、バス取得権を妨害されなければならない。
【０００４】
図3に従来の検証方法の一例を示す。１０、１１、１２は上述のマスターとなる論理ブロックであり、それぞれはスレーブとなる論理ブロック１４にデータを転送するとき、調停ブロック１３に対して転送要求を出し、許可を得たもののみがData Bus３０を介してデータの転送を行う。
【０００５】
図4にこの時のタイミングチャートを示す。図中の番号は図3の番号に対応している。論理ブロック１０はサイクルcにおいて、データ転送要求信号２０ req0を発行している。しかし、調停ブロック13は既にaサイクルにおける論理ブロック１１からのデータ転送要求２３ req1に対して、サイクルbにおいて転送許可信号２４ ack1を返している。このため、論理ブロック１０はデータの転送を待たされる。２２のdata bus0や２５のdata bus1は、図に示すように例えばデータdata0, data1、アドレスaddress0, address1、及びバスの占有期間を示すbb0, bb1からなる。調停ブロック13はこのバスを監視し、サイクルgにおいて論理ブロック１１のバス占有期間を示すbb1が下がったのを確認し、論理ブロック１０に対して転送許可信号２１ ack0を発行している。
【特許文献１】特開平１１−２３８３１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上述したバス転送権の調停の様子は、ほんの一例に過ぎず、各マスターとなる論理ブロックがデータ転送を待たされても正常に動くことを保障するためには、さらに待たされる時間が短い場合、長い場合など様々な長さについて検証しなければならない。さらに、各論理回路内がどのような状態にあっても（例えば、各論理回路内のある機能を掌るステートマシンが、全ての状態において）データ転送を待たされたときに、正常に動作することを検証する必要がある。上記各論理ブロックの回路規模が大きく、全体で非常に大きなLSIとなる場合、LSI全体を使用して検証を行ったのではシミュレーション速度が遅く、すなわち様々な状況が起こりにくくなり、検証効率が悪いという問題があった。また、他のマスターブロックや調停ブロックの完成を待ってからでなくてはこの機能の検証は行えず、バグを発見した場合には修正を行った後、論理ブロックレベルに立ち戻って検証を行う必要があり、論理ブロック検証のTAT（Turn Around Time）が長引くという問題があった。
【課題を解決するための手段】
【０００７】
上記問題点を解決するための本発明の検証方法は、上記調停ブロックや、他のマスターとなる論理ブロックの完成を待たず、検証対象であるマスターとなる論理ブロックのBusアクセスの機能を、仮想Bus制御モデルを用いることにより検証できることを特徴とするものである。また概仮想Bus制御モデルに、検証すべき様々な状態を動的に起こすことが出来る機能を持たせ、効率的に検証ができることを特徴とする。
【発明の効果】
【０００８】
以上説明したように本発明によれば、バスマスターとなる論理ブロックのバスアクセス機能の論理検証を、より効率的に、より短期間で検証する事が出来る。さらにLSI全体の検証期間を短縮することが出来る。
【発明を実施するための最良の形態】
【０００９】
＜実施形態１＞
図1は本発明に係わる検証方法の一実施形態を示すものである。図1において図3(従来の実施例)と同一の構成要素には同一符号を付した。
【００１０】
図１は図3の従来例から、データバスのバスマスターとなる1つの論理ブロック１０と、そこに接続されるデータ線２０ req0、２１ ack0、２２ data bus0を抜き出したものである。このブロックのデータ転送機能について、図3に示した他のブロック無しで検証を行う。
【００１１】
１１０は仮想バスモデルである。仮想バスモデル１１０は信号線１００を介して２０ req0を監視する。論理ブロック１０のバスアクセス機能を検証する際には、どれだけ検証したら検証完了とするかのCheck Itemを列挙する必要がある。その一例を１２０に示す。この検証はCheck Item １２０に示す７通りの状態を確認できたところで検証完了とする。このCheck Item １２０の情報を仮想バスモデル１１０に与え、仮想バスモデルが信号線１００により論理ブロック１０からの２０ req0を受けたとき、このChek Item１２０から順番に、あるいはランダムに選択し、選択したItemのサイクル分待機させた後、信号線１０１を介して２１ ack0を発行する。
【００１２】
図2に上記ランダムに行った場合のタイミング図を示す。サイクルbにおいて論理ブロック１０はreq0を発行している。仮想バスモデル１１０はこれを感知し、Chek Item１２１よりItemをランダムに選択する。図2では、最初「３ cycle wait」が選択されている。仮想バスモデル１１０はこれに従い、サイクルcから3サイクル待った後、fサイクルにおいて１０１ ack0'を発行する。このとき、仮想バスモデル１１０はCheck Item１２１の選択候補から「３ cycle wait」を削除する。
【００１３】
次にサイクルkにおいて論理ブロック10はreq0を発行している。仮想バスモデル１１０はこれを受け、残りのCheck Item １２１からItemを選択する。ここでは「４ cycle wait」が選択されている。仮想バスモデル１１０はサイクルlから４サイクル待った後、pサイクルにおいて１０１ ack0'を発行する。このとき、仮想バスモデル１１０はCheck Item１２１の選択候補から「４ cycle wait」を削除する。Check Item １２１にはこの様に「3 cycle wait」と「４ cycle wait」が削除された様子が示されている。この様にして、Check Item １２１より順番にItemを選択、削除していき、Itemがなくなった時点でシミュレーションを終了とする。
【００１４】
この様に仮想バスモデルを用い、与えられたCheck Itemに従ってバスアクセス許可信号をコントロールすることにより、従来に比較してより短い時間で、効率的に論理ブロック１０のバスアクセス機能を検証することが出来る。従来の様な他の論理ブロック、及び調停回路を用いて検証したのでは、データ転送時間をコントロールすることは非常に困難であり、全てのCheck Itemをカバーするためには、非常に長い検証時間を要する。また、テストベンチも小さくて済むので、より短期間での検証が可能となる。
【００１５】
＜実施形態２＞
図5に、本発明の別の実施例を示す。図５において図3(従来の実施例)と同一の構成要素には同一符号を付した。
【００１６】
図５は図3の従来例から、データバスのバスマスターとなる1つの論理ブロック１０と、そこに接続されるデータ線２０ req0、２１ ack0、２２ data bus0を抜き出したものである。このブロックのデータ転送機能について、図3に示した他のブロック無しで検証を行う。
【００１７】
論理ブロック１０は図のように、例えば内部を3つのステート、State A、StateB、及びState Cを持つステートマシンから構成されるとする。このステートマシンが、論理ブロック１０が２２のdata bus0を通してデータを転送する際に、２１ ack0が発行されずに待たされた時に停止していなければいけない様な場合、全てのステートに対する待機動作、及び再始動動作を確認しなければならない。
【００１８】
図中の仮想バスモデル１１０は信号線１４０を介して論理ブロック１０の内部のステートマシンの状態を監視し、全てのステートに対して待機動作をさせるように動的に対応する。
【００１９】
図6にこの時のタイミング図を示す。サイクルbにおいて論理ブロック１０はデータ転送要求２０ req0を発行しており、仮想バスモデル１１０は信号線１００を介してサイクルcにおいてこれを感知する。同時に、仮想バスモデル１１０は信号線１４０を介して論理ブロック１０内のステートマシンの状態がState Bであることを感知する。仮想バスモデル１１０は任意サイクル（図では1サイクル）待たせた後、サイクルdにおいてバスアクセス許可信号１０１ ack0'を発行する。次に論理ブロック１０は、サイクルiにて再びデータ転送要求２０ req0を発行している。仮想バスモデル１１０は信号線１００を介してサイクルjにてこれを感知すると同時に、論理ブロック１０内のステートマシンの状態がState Bであることを感知する。このとき、State Bにおける待機動作は既に行っているため、直ちにバスアクセス許可信号１０１ ack0'を発行する。次に論理ブロック１０はサイクルoにおいて再びデータ転送要求２０ req0を発行している。仮想バスモデル１１０は信号線１００を介してサイクルpにてこれを感知すると同時に、論理ブロック内のステートマシンの状態が、State Cであることを感知する。Stete Cにおける待機動作はまだ行っていないため、仮想バスモデル１１０は任意サイクル（図では1サイクル）待たせた後、サイクルqにおいてバスアクセス信号１０１ ack0'を発行する。この様にして仮想バスモデル１１０は、信号１００を介して２０ req0を感知した際に信号線１４０により、論理ブロック１０内のステートマシンの状態を監視し、既に待機動作を行ったステートの場合には信号線１０１を介して即座に１０１ ack0'を発行し、まだ待機動作を行っていないステートであった場合には任意サイクル待った後に、１０１ ack0'を発行し、全てのステートにおいて待機動作を行ったならばシミュレーション終了とする。
【００２０】
この様に検証対象の論理ブロック１０内のステートを監視し、動的にデータ転送を待機させるかさせないかを判断する方法により、より早くに全てのステートにおける待機状態を作り出し、検証期間を短縮することが出来る。
【００２１】
＜実施形態３＞
図７に本発明の別の実施例を示す。本実施例では、前述の実施例１、及び実施例2の論理検証方法をあわせて用いている。
【００２２】
この論理検証の終了は、例えば論理ブロック１０内のステートマシンの全ての状態に対し、Check Item １２０の全ての待機状態が行われた時とする。
【図面の簡単な説明】
【００２３】
【図１】本発明の論理検証方法の一実施例の構成図。
【図２】本発明の論理検証方法の一実施例のタイミング図。
【図３】従来の論理検証方法の構成図。
【図４】従来の論理検証方法のタイミング図。
【図５】本発明の論理検証方法の一実施例の構成図。
【図６】本発明の論理検証方法の一実施例のタイミング図。
【図７】本発明の論理検証方法の一実施例の構成図。
【符号の説明】
【００２４】
１０〜１２  マスター論理ブロック
１３  調停ブロック
１４  スレーブ論理ブロック
２０、２３、２６  データ転送要求信号
２１、２４、２７  データ転送許可信号
２２、２５、２８  データバス
３０  データバス
１００  データ転送要求監視信号線
１０１  データ転送許可発行信号線
１０２  論理回路内部状態監視信号線
１１０  仮想バスモデル
１２０、１２１  検証Check Item
１３０、１３１、１３２  ステートマシンの状態
【図１】
2006113862.tif 000003
【図２】
2006113862.tif 000004
【図３】
2006113862.tif 000005
【図４】
2006113862.tif 000006
【図５】
2006113862.tif 000007
【図６】
2006113862.tif 000008
【図７】
2006113862.tif 000009