説明

論理検証装置及び論理検証方法

【課題】論理検証の実行速度を高速化し、且つ圧縮されていない本来の波形データを出力することが可能な論理検証装置及び論理検証方法を提供することを目的とする。
【解決手段】周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置であって、第1回路ブロックが動作していない期間前記第1回路ブロックの第1クロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、を含む切替情報を出力する動作制御手段と、前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手段と、有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置及び論理検証方法に関する。
【背景技術】
【0002】
マイクロプロセッサやメモリ等を組み合わされたシステムLSI(Large Scale Integration)は、エミュレータ等の論理検証装置を用いて検証される。エミュレータとは、論理シミュレーションをハードウェアで実現する装置である。一般のエミュレータでは、テストベンチに与えるクロック信号は1系統のみである。よって検証対象回路に複数系統のクロック入力がある場合には、テストベンチに与えるクロック信号をテストベンチ内で分周して複数系統のクロック信号を生成し、検証対象回路へ供給する。
【0003】
例えば検証対象回路内に、高速のクロック信号で動作する高速動作回路ブロックと、低速のクロック信号で動作する低速動作回路ブロックとが存在する場合、テストベンチに与えられるクロック信号が高速動作回路へ供給される。テストベンチに与えられるクロック信号を分周して生成されたクロック信号が低速動作回路へ供給される。
【0004】
この場合、高速動作回路が停止している状態であっても低速動作回路には低速のクロック信号が供給される。よって複数系統のクロック信号を用いる回路の論理検証を行う場合、高速動作回路が停止しているときの論理検証に係る時間が長くなるという問題がある。
【0005】
この問題を解決する方法として、高速動作回路が動作していないときは、低速動作回路へ供給するクロック信号を分周して生成したクロック信号(低速)から、テストベンチに与えられるクロック信号(高速)へ切り替える方法がある。
【0006】
この方法は、論理検証の項目に正確な回路遅延を考慮する必要がなく、クロック同期の範囲での検証ができれば良い場合に有効である。クロック同期の動作の検証に関しては、動作クロックを変化させて実行しても論理検証結果に影響がないからである。
【0007】
この方法では、高速動作回路が動作していないときに低速動作回路へ供給するクロック信号を高速のクロック信号へ切り替えることで、検証の実行時間を短縮することができる。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2000−222238号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
上述したような従来の技術では、論理検証の実行速度を高速化することができる。しかしながら、論理検証の結果を示す波形データは部分的に圧縮されたものになり、正しい波形データを観測することができない。このため、例えば検証対象回路が所定時間内に目的の動作を完了しているか否かを判断することが困難であると言った問題点がある。
【0010】
本発明は、上記の点に鑑みなされたもので、論理検証の実行速度を高速化し、且つ圧縮されていない本来の波形データを出力することが可能な論理検証装置及び論理検証方法を提供することを目的とする。
【課題を解決するための手段】
【0011】
上記課題を解決するため、周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置であって、第1回路ブロックが動作していない期間前記第1回路ブロックの第1クロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、を含む切替情報を出力する動作制御手段と、前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手段と、有する。
【発明の効果】
【0012】
論理検証の実行速度を高速化すると共に、切替情報に基づいて圧縮波形データを復元できるため、圧縮されていない本来の波形データを出力することができる。
【図面の簡単な説明】
【0013】
【図1】論理検証システムのハードウェア構成例を示す図である。
【図2】第一実施例の論理検証装置と波形表示装置を説明する図である。
【図3】第一実施例においてクロック信号を切り替えない場合の波形データの一例を示す図である。
【図4】第一実施例においてクロック信号を切り替えた場合の波形データの一例を示す図である。
【図5】第一実施例における復元波形データを含む波形データの一例を示す図である。
【図6】第二実施例の論理検証装置と波形表示装置を説明する図である。
【図7】動作制御部の動作を説明するための図である。
【図8】第二実施例においてクロック信号を切り替えない場合の波形データの一例を示す図である。
【図9】第二実施例においてクロック信号を切り替えた場合の波形データの一例を示す図である。
【図10】第二実施例において復元波形データを含む波形データの一例を示す図である。
【図11】第三実施例の論理検証装置を説明する図である。
【図12】第四実施例の論理検証装置を説明する図である。
【図13】第五実施例の論理検証装置を説明する図である。
【図14】クロック切替テーブルの一例を示す図である。
【図15】第五実施例においてクロック信号を切り替えた場合の波形データの一例を示す図である。
【図16】第五実施例においてクロック信号を切り替えた場合の波形データの他の例を示す図である。
【発明を実施するための形態】
【0014】
以下、本発明の実施の形態を図面に基づいて説明する。
【0015】
図1は、論理検証システムのハードウェア構成例を示す図である。論理検証システム100は、論理検証装置200と、波形表示装置300とを有する。
【0016】
論理検証装置200は、それぞれバスB1で相互に接続されているMPU(microprocessor)21、メモリ装置22、検証モデル装置23を有する。MPU21は、論理検証装置200で実行される各種処理を制御する。メモリ装置22は、論理検証装置200で実行される処理を実現させるプログラム等が格納されている。検証モデル装置23は、後述する検証対象回路が配置されて論理検証が行われる。
【0017】
波形表示装置300は、それぞれバスB2で相互に接続されているCPU(Central Processing Unit)31、補助記憶装置32、入力装置33、表示装置34、ドライバ35を有する。CPU31は、波形表示装置300で実行される各種処理を制御する。補助記憶装置32は、波形表示装置300で実行される処理を実現させるプログラム、プログラムを実行するために必要なデータ等が格納されている。入力装置33は、キーボードやマウス等を含み、各種信号を入力するために用いられる。表示装置33はディスプレイ装置等を含み、各種ウインドウやデータ等を表示するために用いられる。
【0018】
また波形表示装置300を動作させるプログラムの一部である波形表示プログラムを記録した記録媒体36がドライバ35にセットされると、波形表示プログラムは記録媒体36からドライバ35を介して補助記憶装置32にインストールされる。波形表示プログラムを記録した記録媒体36は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【0019】
(第一実施例)
以下に図面を参照して本発明の第一実施例について説明する。図2は、第一実施例の論理検証装置と波形表示装置を説明する図である。
【0020】
本実施例の論理検証装置200は、検証モデル装置23を有する。また本実施例の論理検証装置200は、クロック信号供給部210と、切替情報取得部220と、出力部230と、を有する。クロック信号供給部210は、検証モデル装置23へクロック信号Aを供給する。切替情報取得部220は、動作制御部270から出力される切替情報290を取得する。動作制御部270及び切替情報290の詳細は後述する。出力部230は、検証モデル装置23に配置された検証対象回路240の検証結果の波形データ280と、切替情報取得部220により取得された切替情報290と、を波形表示装置300へ出力する。
【0021】
検証モデル装置23は、検証対象回路240が配置される。検証対象回路240には、回路ブロック241と、回路ブロック242とが含まれる。また検証モデル装置23は、分周回路250と、クロック切替部260と、動作制御部270と、を有する。
【0022】
分周回路250は、クロック信号供給部210から検証モデル装置23へ供給されるクロック信号Aを分周してクロック信号Bを生成する。クロック切替部260は、回路ブロック242へ供給されるクロック信号を、クロック信号A又はクロック信号Bのどちらか一方に切り替える。動作制御部270は、回路ブロック241の動作に基づき、回路ブロック242へ供給されるクロック信号を選択し、クロック切替部260によるクロック信号の切り替えを制御する。また動作制御部270は、後述する切替情報290を切替情報取得部220へ出力する。
【0023】
本実施例の検証モデル装置23では、回路ブロック241の動作クロックはクロック信号Aである。また回路ブロック242の動作クロックはクロック信号Bである。
【0024】
本実施例では、例えばクロック信号Aは高周波であり、クロック信号Bは低周波であって、クロック信号Bはクロック信号Aを分周した信号である。よってクロック信号Aを動作クロックとする回路ブロック241は、クロック信号Bを動作クロックとする回路ブロック242によりも高速に動作する回路ブロックである。
【0025】
本実施例の検証モデル装置23では、動作制御部270により、回路ブロック241が動作しているか否かを判定する。そして検証モデル装置23は、回路ブロック241が動作していないときはクロック切替部260により、回路ブロック242に供給されるクロック信号をクロック信号Bからクロック信号Aへ切り替える。回路ブロック241が動作を再開すると、動作制御部270は、回路ブロック242に供給されるクロック信号をクロック信号Aからクロック信号Bへ切り替える。
【0026】
また動作制御部270は、切替情報290を出力する。以下に切替情報290について説明する。
【0027】
本実施例の切替情報290には、回路ブロック242がクロック信号Aで動作した期間を示す期間情報と、回路ブロック242を識別するためのブロック識別情報と、クロック信号Aとクロック信号Bとの分周比とが含まれる。ブロック識別情報と分周比とは、例えば予め検証モデル装置23に設定するようにすれば良い。期間情報は、クロック信号Aによる回路ブロック242の動作の開始時刻と終了時刻とを含む情報である。
【0028】
回路ブロック242にクロック信号Aが供給されて動作した場合、検証結果の波形データは、クロック信号Bを動作クロックとした場合と比べて圧縮された波形データとなる。例えばクロック信号Bがクロック信号Aを4分周した信号である場合、クロック信号Aで回路ブロック242を検証した結果の波形データは、クロック信号Bで回路ブロック242を検証した結果の波形データを4倍圧縮した波形データとなる。
【0029】
以下に図3、図4を参照して検証結果の波形データについて説明する。図3は、第一実施例においてクロック信号を切り替えない場合の波形データの一例を示す図である。
【0030】
図3の例では、クロック信号Aを動作クロックとする回路ブロック241が動作しておらず、クロック信号Bを動作クロックとする回路ブロック242のみが動作している。この場合、回路ブロック241の動作が停止した時点T1から時点T2までの期間Hの間、回路ブロック242の動作クロックをクロック信号Bからクロック信号Aへ切り替えれば、期間Hの波形データ(以下、圧縮前波形データ281)を圧縮することができ、論理検証を高速化することができる。
【0031】
そこで本実施例では、動作制御部270により回路ブロック241が動作していないと判定されたとき、クロック切替部260により回路ブロック242へ供給されるクロック信号をクロック信号Bからクロック信号Aへ切り替える。
【0032】
図4は、第一実施例においてクロック信号を切り替えた場合の波形データの一例を示す図である。図4の例では、回路ブロック241の動作が停止した時点T1で回路ブロック242へ供給するクロック信号をクロック信号Aへ切り替える。このため図3の期間Hは、圧縮された期間H1となる。また回路ブロック242の検証結果の波形データは、期間H1においては圧縮された圧縮波形データ282となる。よって論理検証装置200の出力部230から波形表示装置300へ出力される波形データ280は、図4に示す圧縮波形データ282を含む波形データとなる。
【0033】
図2に戻って、論理検証装置200の有する切替情報取得部220は、切替情報290を取得する。切替情報290には、動作制御部270による制御により、クロック信号Aが回路ブロック242へ供給された期間を示す期間情報、回路ブロック242を識別するブロック識別情報、クロック信号Aとクロック信号Bの分周比とが含まれる。
【0034】
論理検証装置200の有する出力部230は、検証モデル装置23による検証結果を示す波形データ280と、切替情報取得部220により取得された切替情報290と、を波形表示装置300へ出力する。出力部230から出力される波形データ280には、圧縮波形データ282が含まれる。
【0035】
本実施例の波形表示装置300は、波形データ280に含まれる圧縮波形データ282を圧縮前波形データ281と同じ時間軸となるように復元する。そして波形表示装置300は、復元された波形データを表示装置34へ表示させる。
【0036】
波形表示装置300は、波形データ取得部310と、切替情報取得部320と、復元部330と、表示制御部340と、を有する。波形データ取得部310は、論理検証装置200から出力された波形データ280を取得する。切替情報取得部320は、論理検証装置200から出力された切替情報290を取得する。
【0037】
復元部330は、取得された波形データ280と、切替情報290に含まれるブロック識別情報とから、波形データ280において圧縮波形データ282が含まれる波形データを特定する。この場合、回路ブロック242の論理検証の結果の波形データが特定される。復元部330は、切替情報290に含まれる期間情報に基づき、特定された波形データに含まれる圧縮波形データ282を特定する。そして圧縮波形データ282を、切替情報290に含まれる分周比を用いて圧縮前波形データ281と同じ時間軸となるように復元する。復元された波形データを復元波形データ283(図5参照)とする。
【0038】
例えばクロック信号Bがクロック信号Aを1/4に分周した信号である場合、復元部330は、圧縮波形データ282を4倍に引き延ばせば圧縮前波形データ281と同様の時間軸に復元できる。
【0039】
表示制御部340は、復元された復元波形データ283が含まれる波形データ280を表示装置34へ表示させる。
【0040】
図5は、第一実施例における復元波形データを含む波形データの一例を示す図である。図5に示すように、圧縮波形データ282は、復元部330により復元波形データ283に復元される。復元波形データ283は、図3に示す圧縮前波形データ281と同様の時間軸となるように復元される。
【0041】
このように本実施例によれば、一度圧縮した波形データを圧縮前の波形データに復元して表示させるので、論理検証の実行速度を高速化し、且つ圧縮されていない本来の波形データを出力することができる。このため、例えば検証対象回路240が所定時間内に目的の動作を完了しているか否かを判断することができる。
【0042】
(第二実施例)
以下に図面を参照して本発明の第二実施例について説明する。図6は、第二実施例の論理検証装置と波形表示装置を説明する図である。本実施例の論理検証装置200Aの有する検証モデル装置23Aに配置された検証対象回路240Aは、外部端子ENを有する。また検証対象回路240Aの有する回路ブロック241Aは、制御レジスタ243と、ステータスレジスタ242と、OR回路245と、クロック制御部246と、回路ブロック動作部247と、を有する。
【0043】
本実施例の外部端子ENは、回路ブロック241Aと接続されており、図示しないテストパターンにより入力値が制御されている。制御レジスタ243は、制御レジスタ243中の1ビットがENABLEビットとされている。ステータスレジスタ244は、ステータスレジスタ244内の1ビットがRUNビットとされており、RUNビットの値が回路ブロック241Aの状態を示している。OR回路245の一方の入力には制御レジスタ243のENABLEビットが入力され、他方の入力には外部端子ENの入力値が入力される。ステータスレジスタ244のRUNビットの値は、OR回路245の出力の値、即ち制御レジスタ243のENABLEビットと外部端子ENの入力値との論理和をとった値となる。
【0044】
クロック制御部246は、ステータスレジスタ246のRUNビットの値に基づき、回路ブロック241Aの動作部である回路ブロック動作部247へのクロック信号Aの供給を制御する。本実施例のクロック制御部246は、ステータスレジスタ244のRUNビットが1のときクロック信号Aを回路ブロック動作部247へ供給し、回路ブロック241Aを動作させる。またクロック制御部246は、ステータスレジスタ244のRUNビットが0のとき、回路ブロック動作部277へのクロック信号Aの供給を停止し、回路ブロック241Aの動作を停止させる。
【0045】
本実施例の動作制御部270は、回路ブロック241Aの有するステータスレジスタ244のRUNビットを参照して回路ブロック241Aが動作しているか否かを判定し、回路ブロック242へ供給するクロック信号を選択する。図7を参照して本実施例の動作制御部270の動作を説明する。図7は、動作制御部の動作を説明するための図である。
【0046】
本実施例の動作制御部270は、ステータスレジスタ244のRUNビットが1のとき、回路ブロック241Aは動作しているものと判定する。回路ブロック241Aが動作している場合は、クロック信号Aは回路ブロック241Aに供給されているため、動作制御部270は回路ブロック242へ供給するクロック信号として、クロック信号Bを選択する。
【0047】
また動作制御部270は、ステータスレジスタ244のRUNビットが0のとき、回路ブロック241Aは動作していないと判定する。回路ブロック241Aが動作していない場合、動作制御部270は、回路ブロック242へ供給するクロック信号としてクロック信号Aを選択する。クロック信号Aが選択されると、クロック切替部260は、回路ブロック242へ供給されるクロック信号をクロック信号Bからクロック信号Aへ切り替える。このとき動作制御部270は、クロック信号Aの選択を開始した時刻、即ちクロック切替部260によりクロック信号Bからクロック信号Aへ切り替えた時刻の情報(以下、開始時刻情報)を取得する。
【0048】
次にステータスレジスタ244のRUNビットが0から1へ変わると、動作制御部270は、回路ブロック241Aの動作が再開したと判定し、回路ブロック242に供給するクロック信号としてクロック信号Bを選択する。クロック信号Bが選択されると、クロック切替部260は、回路ブロック242へ供給されるクロック信号をクロック信号Aからクロック信号Bへ切り替える。このとき動作制御部270は、クロック信号Aの選択を終了した時刻、即ちクロック切替部260によりクロック信号Aからクロック信号Bへ切り替えた時刻の情報(以下、終了時刻情報)を取得する。
【0049】
動作制御部270は、開始時刻情報と終了時刻情報とを期間情報とする。動作制御部270は、この期間情報と、回路ブロック242を識別するブロック識別情報と、分周比とを切替情報として切替情報取得部220へ出力する。
【0050】
よって本実施例の切替情報取得部220は、回路ブロック242にクロック信号Aが供給された期間、すなわち回路ブロック241Aの動作が停止していた期間を示す期間情報を得ることができる。
【0051】
出力部230は、切替情報取得部220が取得した切替情報290と、論理検証の結果である波形データ280とを波形表示装置300へ出力する。本実施例の波形表示装置300は、第一実施例で説明した通りである。
【0052】
以下に図8ないし図10を参照して、論理検証の結果である波形データについて説明する。図8は、第二実施例においてクロック信号を切り替えない場合の波形データの一例を示す図である。図8の例では、動回路ブロック241Aの動作が停止している期間T3の間も、回路ブロック242をクロック信号Bで動作させた例である。この場合回路ブロック242の検証結果の波形データである圧縮前波形データ281Aは、回路ブロック241Aが動作しているときの回路ブロック242の波形データと同様である。
【0053】
図9は、第二実施例においてクロック信号を切り替えた場合の波形データの一例を示す図である。図9の例では、回路ブロック241Aの動作が停止した時点T10から回路ブロック241Aの動作が再開した時点T11までの期間T4は、回路ブロック242はクロック信号Aで動作している。このため期間T4の波形データは、圧縮された圧縮波形データ282Aとなる。
【0054】
論理検証装置200Aの出力部230からは、圧縮波形データ282Aを含む波形データ280Aと、切替情報290とが、波形表示装置300へ出力される。
【0055】
波形表示装置300では、第一実施例で説明したように、波形データ280Aと切替情報290とから、波形データ280Aに含まれる圧縮波形データ282Aを特定し、圧縮前波形データ281Aと同様の波形に復元する。
【0056】
図10は、第二実施例において復元波形データを含む波形データの一例を示す図である。図10に示す波形データ280Aには、圧縮波形データ282Aを復元した復元波形データ283Aが含まれている。図10の例では、図9で示した期間T4が図8で示した期間T3と同様の期間に復元されており、圧縮波形データ282Aが圧縮前波形データ281Aと同様の波形データとなるように復元されている。
【0057】
このように本実施例によれば、一度圧縮した波形データを圧縮前の波形データに復元して表示させるので、論理検証の実行速度を高速化し、且つ圧縮されていない本来の波形データを出力することができる。このため、例えば検証対象回路240が所定時間内に目的の動作を完了しているか否かを判断することができる。
【0058】
(第三実施例)
以下に図面を参照して本発明の第三実施例について説明する。図11は、第三実施例の論理検証装置を説明する図である。本実施例の論理検証装置200Bは、圧縮波形データ282を含む波形データ280を復元する復元部290を有する。
【0059】
本実施例の論理検証装置200Bでは、波形データ280の復元まで論理検証装置200Bで行うことで、波形データ280の復元機能を有する波形表示装置が不要となる。よって本実施例では、例えば論理検証装置200Bを一般のディスプレイ装置等に接続するだけで、復元波形データ283を含む波形データを表示させることができる。
【0060】
本実施例の論理検証装置200Bの復元部290は、波形データ取得部291、切替情報取得部220を有する。波形データ取得部291は、検証モデル装置23Bによる検証結果の波形データを取得する。波形データ取得部291により取得される波形データは、復元前の波形データであり、圧縮波形データ282が含まれる波形データである。
【0061】
切替情報取得部220は、第一実施例、第二実施例で説明した通りであり、切替情報を取得する。
【0062】
復元部290は、波形データ取得部291により取得された波形データと、切替情報取得部220に取得された切替情報とに基づき、波形データに含まれる圧縮波形データを特定して復元する。すなわち復元部290には、切替情報に含まれるブロック識別情報から、圧縮波形データ282が含まれる波形データを特定し、期間情報に基づき特定された波形データ中の圧縮波形データ282を特定する。そして分周比を用いて圧縮波形データ282を復元波形データへ復元する。
【0063】
よって本実施例では、一度圧縮した波形データを圧縮前の波形データに復元して表示させるので、論理検証の実行速度を高速化し、且つ圧縮されていない本来の波形データを出力することができる。このため、例えば検証対象回路240が所定時間内に目的の動作を完了しているか否かを判断することができる。また本実施例では、論理検証装置200Bから復元された波形データを出力することができるため、波形データの復元機能を有する波形表示装置が不要となる。
【0064】
(第四実施例)
以下に図面を参照して本発明の第四実施例について説明する。図12は、第四実施例の論理検証装置を説明する図である。本実施例の論理検証装置200Cは、第三実施例の論理検証装置200Cに、検証モデル装置23Aを配置した例である。本実施例の論理検証装置200Cの検証モデル装置23Aの動作制御部270は、回路ブロック241Aのステータスレジスタ244のRUNビットを参照し、回路ブロック242の動作クロック信号を選択する。また本実施例の論理検証装置200Cは、圧縮波形データ282を復元する復元部290を有する。
【0065】
よって本実施例では、第三実施例と同様の効果を奏することができる。
【0066】
(第五実施例)
以下に図面を参照して本発明の第五実施例について説明する。本発明の第五実施例では、検証対象回路に含まれる回路ブロックが3つであり、3系統のクロック信号を用いる場合について説明する。図13は、第五実施例の論理検証装置を説明する図である。
【0067】
本実施例の論理検証装置200Dは、検証モデル装置23Bを有する。また本実施例の論理検証装置200Dは、クロック供給部210、切替情報取得部220、出力部230を有する。
【0068】
本実施例の検証モデル装置23Bには、検証対象回路240Bが配置され、論理検証が行われる。本実施例の検証対象回路240Bは、回路ブロック241、242、249を有する。
【0069】
また本実施例の検証モデル装置23Bは、分周回路250、251、252、クロック切替部260、261、動作制御部270、271を有する。分周回路250は、クロック供給部210から検証モデル装置23Bへ供給されるクロック信号Aを分周してクロック信号Bを生成する。分周回路251は、クロック信号Aを分周してクロック信号Cを生成し、分周回路252はクロック信号Aを分周してクロック信号Dを生成する。
【0070】
クロック切替部260は、クロック信号Aとクロック信号Bとの切り替えを行う。クロック切替部251は、クロック信号Aとクロック信号Cとクロック信号Dとの切り替えを行う。
【0071】
動作制御部270は、回路ブロック241の動作に基づき回路ブロック242に供給されるクロック信号を選択し、クロック切替部260を制御してクロック信号を切り替えさせる。本実施例の回路ブロック241は、図示しないステータスレジスタを有しており、回路ブロック241が動作している場合はステータスレジスタのRUN−1ビットの値が1となる。回路ブロック241が動作していない場合はステータスレジスタのRUN−1ビットの値が0となる。本実施例の動作制御部270は、回路ブロック241のステータスレジスタの値を参照して回路ブロック241が動作しているか否かを判定し、回路ブロック242に供給されるクロック信号を選択する。
【0072】
動作制御部271は、回路ブロック241の動作と回路ブロック242の動作とに基づき、回路ブロック249へ供給されるクロック信号を選択し、クロック切替部261を制御してクロック信号を切り替えさせる。本実施例の回路ブロック242は、図示しないステータスレジスタを有しており、回路ブロック242が動作している場合はステータスレジスタのRUN−2ビットの値が1となる。回路ブロック242が動作していない場合はステータスレジスタのRUN−2ビットの値が0となる。本実施例の動作制御部271は、回路ブロック242のステータスレジスタの値を参照して回路ブロック242が動作しているか否かを判定し、回路ブロック249に供給されるクロック信号を選択する。
【0073】
尚本実施例では、回路ブロック241の動作クロックはクロック信号Aであり、回路ブロック242の動作クロックはクロック信号Bであり、回路ブロック249の動作クロックはクロック信号Cである。また本実施例では、クロック信号Cの周波数はクロック信号Bの周波数よりも小さい。
【0074】
よって本実施例では、回路ブロック241が最も高速で動作し、回路ブロック249が最も低速で動作することがわかる。
【0075】
本実施例では、回路ブロック241の動作と回路ブロック242の動作とに基づき、各回路ブロックに供給されるクロック信号が選択され、クロック切替部260、261の制御によりクロック信号が切り替えられる。
【0076】
本実施例の論理検証装置200Dでは、回路ブロック241の動作と、回路ブロック242の動作と、選択されるクロック信号とを対応付けたクロック切替テーブル40を有する。動作制御部270、271は、クロック切替テーブル40を参照してクロック切替部260、261を制御する。尚クロック切替テーブル40は、例えば論理検証装置200Dのメモリ装置22等に格納されている。
【0077】
図14は、クロック切替テーブルの一例を示す図である。本実施例のクロック切替テーブル40によれば、回路ブロック241、242が動作している場合、クロック切替部260はクロック信号Bを回路ブロック242へ供給するクロック信号とする。またクロック切替部261は、クロック信号Cを回路ブロック249に供給するクロック信号とする。
【0078】
また回路ブロック241が動作しており、回路ブロック242が動作していない場合、回路ブロック241にはクロック信号Aが供給され、回路ブロック249にはクロック信号Cが供給される。
【0079】
また回路ブロック241の動作が停止しており、回路ブロック242が動作している場合、クロック切替部260は回路ブロック242へ供給されるクロック信号を、クロック信号Bからクロック信号Aへ切り替える。クロック切替部261は、回路ブロック249に供給されるクロック信号をクロック信号Cからクロック信号Dへ切り替える。
【0080】
ここでクロック信号Dについて説明する。
【0081】
本実施例において、回路ブロック242のクロック信号を切り替える場合、回路ブロック242の動作クロックと回路ブロック249の動作クロックとの比率を一定に保持する必要がある。例えばクロック信号Bはクロック信号Aを4分周した信号であり、クロック信号Cはクロック信号Aを8分周した信号である場合、クロック信号Bとクロック信号Cとの比率は1:2である。
【0082】
すなわち、回路ブロック242の動作クロックをクロック信号Bからクロック信号Aへ切り替えた場合、クロック信号Aと回路ブロック249の動作クロック信号との比率は1:2とする必要がある。本実施例のクロック信号Dは、回路ブロック242に供給されるクロック信号がクロック信号Aに切り替えられたとき、回路ブロック242に供給されるクロック信号と回路ブロック249に供給されるクロック信号との比率が切り替え前と同様になるように設定された信号である。
【0083】
よって図14に示すように、回路ブロック241の動作が停止しており、回路ブロック242が動作している場合、回路ブロック242にはクロック信号Bが供給され、回路ブロック249にはクロック信号Dが供給される。
【0084】
また回路ブロック241と回路ブロック242の両方の動作が停止していた場合、クロック切替部261は、回路ブロック249の動作クロックをクロック信号Aに切り替える。
【0085】
図15は、第五実施例においてクロック信号を切り替えた場合の波形データの一例を示す図である。
【0086】
図15に示す例では、時点T21から時点T22までの期間T5において、回路ブロック241の動作が停止している。
【0087】
よって動作制御部270は、クロック切替テーブル40を参照してクロック切替部260を制御し、期間T5の間、回路ブロック242の動作クロックをクロック信号Bからクロック信号Aへ切り替える。また動作制御部271は、クロック切替テーブル40を参照してクロック切替部261を制御し、期間T5の間、回路ブロック249の動作クロックをクロック信号Cからクロック信号Dへ切り替える。
【0088】
期間T5の波形データは、圧縮された圧縮波形データ232Bとなる。また論理検証装置200Dは、切替情報取得部220により、時点T21と時点T22とを期間T5の開始時刻情報及び終了時刻情報とする期間情報を含む切替情報290を取得し、出力部230へ渡す。出力部230は、圧縮波形データ282Bを含む波形データ280Bと、切替情報290と、回路ブロックの識別情報とを、圧縮波形データの復元機能を有する波形表示装置300へ出力する。
【0089】
波形表示装置300では、圧縮波形データを復元した復元波形データを含む波例データを表示することができる。
【0090】
図16は、第五実施例においてクロック信号を切り替えた場合の波形データの他の例を示す図である。
【0091】
図16に示す例では、時点T31から時点T32までの期間T6において、回路ブロック241及び回路ブロック242の動作が停止している。
【0092】
よって動作制御部271は、クロック切替テーブル40を参照してクロック切替部261を制御し、期間T6の間、回路ブロック249の動作クロックをクロック信号Cからクロック信号Aへ切り替える。
【0093】
よって期間T6の波形データは、圧縮された圧縮波形データ282Cとなる。本実施例の論理検証装置200Dは、出力部230から圧縮波形データ282Cを含む波形データ280Cを波形表示装置300へ出力し、波形表示装置300において圧縮波形データ282Cが復元された復元波形データを含む波形データを表示させる。
【0094】
よって本実施例によれば、一度圧縮した波形データを圧縮前の波形データに復元して表示させるので、論理検証の実行速度を高速化し、且つ圧縮されていない本来の波形データを出力することができる。このため、例えば検証対象回路240Bが所定時間内に目的の動作を完了しているか否かを判断することができる。
【0095】
本発明は、以下に記載する付記のような構成が考えられる。
(付記1)
周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置であって、
第1回路ブロックが動作していない期間前記第1回路ブロックの第1クロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、を含む切替情報を出力する動作制御手段と、
前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手段と、有することを特徴とする論理検証装置。
(付記2)
前記切替情報を取得する切替情報取得手段と、
前記波形データを取得する波形データ取得手段と、
前記切替情報に含まれる前記期間に基づき前記波形データ内の前記圧縮波形データを前記分周比を用いて前前記第2クロック信号の周波数の波形データとなる復元波形データへ復元する復元手段と、
前記復元波形データを含む前記波形データを表示させる表示手段と、を有する波形表示装置が接続されていることを特徴とする付記1記載の論理検証装置。
(付記3)
前記第1回路ブロックは、当該第1回路ブロックが動作しているか否かを示す値が書き込まれるレジスタを有し、
前記動作制御手段は、
前記レジスタに書き込まれた値を参照して前記第1回路ブロックが動作していないことを判断することを特徴とする付記1又は2記載の論理検証装置。
(付記4)
前記動作制御手段により前記第1回路ブロックが動作していないと判断されたとき、前記第2クロック信号を前記第1クロック信号に切り替える切替手段を有することを特徴とする付記3記載の論理検証装置。
(付記5)
前記動作制御手段は、
前記第1回路ブロックが動作していないと判断されたときの時刻を示す情報と、前記動作制御手段により前記第1回路ブロックが動作を開始したと判断されたときの時刻を示す情報と、を前記切替情報に含まれる前記期間を示す期間情報とすることを特徴とする付記3又は4記載の論理検証装置。
(付記6)
第3回路ブロックを有し、
前記第1回路ブロックの動作と前記第2回路ブロックの動作とに基づき、前記第3回路ブロックを、前記第1クロック信号又は前記第3回路ブロックの第3クロック信号又は予め設定されたクロック信号のうち何れか一つのクロック信号により動作させる第3回路ブロック動作制御手段を有することを特徴とする付記1ないし5の何れか一項に記載の論理検証装置。
(付記7)
前記第1回路ブロックの動作及び前記第2回路ブロックの動作と、前記第3クロック信号とが対応付けられたクロック切替テーブルを有し、
前記動作制御手段と、前記第3回路ブロック動作制御手段と、は、前記クロック切替テーブルを参照して前記第2回路ブロックと前記第3回路ブロックとを動作させるクロック信号を選択することを特徴とする付記6記載の論理検証装置。
(付記8)
前記第3回路ブロック動作制御手段は、
前記第1回路ブロックの動作が停止しており、前記第2回路ブロックが動作しているとき、前記第3回路ブロックを前記予め設定されたクロック信号により動作させることを特徴とする付記6又は7記載の論理検証装置。
(付記9)
前記第1クロック信号と前記予め設定されたクロック信号との比率は、
前記第1回路ブロックが動作している場合の第1クロック信号と第2クロック信号との比率と等しいことを特徴とする付記8記載の論理検証装置。
(付記10)
周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置であって、
第1回路ブロックが動作していない期間、前記第1回路ブロックのクロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、を含む切替情報を出力する動作制御手段と、
前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手段と、
前記切替情報に含まれる前記期間に基づき前記波形データ内の前記圧縮波形データを前記分周比を用いて前記第2クロック信号の周波数の波形データとなる復元波形データへ復元する復元手段と、を有することを特徴とする論理検証装置。
(付記11)
周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証した結果の波形データを表示する波形表示装置であって、
第1回路ブロックが動作していない期間、前記第1回路ブロックのクロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、前記第2回路ブロックを識別するブロック識別情報と、を含む切替情報を出力する動作制御手段と、
前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手段と、有する論理検証装置と接続されており、
前記論理検証装置から前記切替情報を取得する切替情報取得手段と、
前記論理検証装置から前記波形データを取得する波形データ取得手段と、
前記切替情報に含まれる前記ブロック識別情報に基づき復元すべき波形データを特定し、前記切替情報に含まれる前記期間から前記復元すべき波形データに含まれる前記圧縮波形データを特定し、前記圧縮波形データを前記切替情報に含まれる前記分周比を用いて前記圧縮波形データを前記第2クロック信号の周波数の波形データとなる復元波形データへ復元する復元手段と、
前記復元波形データを含む前記波形データを表示させる表示手段と、を有することを特徴とする波形表示装置。
(付記12)
周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置と、前記論理検証装置による論理検証の結果の波形データを表示させる波形表示装置とを有する論理検証システムであって、
前記論理検証装置は、
第1回路ブロックが動作していない期間、前記第1回路ブロックのクロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、前記第2回路ブロックを識別するブロック識別情報と、を含む切替情報を出力する動作制御手段と、
前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手段と、を有し、
前記波形表示装置は、
前記切替情報を取得する切替情報取得手段と、
前記波形データを取得する波形データ取得手段と、
前記切替情報に含まれる前記ブロック識別情報に基づき復元すべき波形データを特定し、前記切替情報に含まれる前記期間から前記復元すべき波形データに含まれる前記圧縮波形データを特定し、前記圧縮波形データを前記切替情報に含まれる前記分周比を用いて前記圧縮波形データを前記第2クロック信号の周波数の波形データとなる復元波形データへ復元する復元手段と、
前記復元波形データを含む前記波形データを表示させる表示手段と、を有することを特徴とする論理検証システム。
(付記13)
周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置と、前記論理検証装置による論理検証の結果の波形データを表示させる波形表示装置とを有する論理検証システムによる論理検証方法であって、
前記論理検証装置による
第1回路ブロックが動作していない期間、前記第1回路ブロックのクロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、前記第2回路ブロックを識別するブロック識別情報と、を含む切替情報を出力する動作制御手順と、
前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手順と、を有し、
前記波形表示装置による
前記切替情報を取得する切替情報取得手順と、
前記波形データを取得する波形データ取得手順と、
前記切替情報に含まれる前記ブロック識別情報に基づき復元すべき波形データを特定し、前記切替情報に含まれる前記期間から前記復元すべき波形データに含まれる前記圧縮波形データを特定し、前記圧縮波形データを前記切替情報に含まれる前記分周比を用いて前記圧縮波形データを第2クロック信号の周波数の波形データとなる復元波形データへ復元する復元手順と、
前記復元波形データを含む前記波形データを表示させる表示手順と、を有することを特徴とする論理検証方法。
【0096】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【0097】
100 論理検証システム
200、200A、200B、200C、200D 論理検証装置
210 クロック供給部
220 期間情報取得部
230 出力部
240、240A、240B 検証対象回路
250、251、252 分周回路
260、261 クロック切替部
270、271 動作制御部
300 波形表示装置
310 波形データ取得部
320 期間情報取得部
330 復号部

【特許請求の範囲】
【請求項1】
周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置であって、
第1回路ブロックが動作していない期間前記第1回路ブロックの第1クロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、を含む切替情報を出力する動作制御手段と、
前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手段と、有することを特徴とする論理検証装置。
【請求項2】
前記切替情報を取得する切替情報取得手段と、
前記波形データを取得する波形データ取得手段と、
前記切替情報含まれる前記期間に基づき前記波形データ内の前記圧縮波形データを前記分周比を用いて前記第2クロック信号の周波数の波形データとなる復元波形データへ復元する復元手段と、
前記復元波形データを含む前記波形データを表示させる表示手段と、を有する波形表示装置が接続されていることを特徴とする請求項1記載の論理検証装置。
【請求項3】
第3回路ブロックを有し、
前記第1回路ブロックの動作と前記第2回路ブロックの動作とに基づき、前記第3回路ブロックを、前記第1クロック信号又は前記第3回路ブロックの第3クロック信号又は予め設定されたクロック信号のうち何れか一つのクロック信号により動作させる第3回路ブロック動作制御手段を有することを特徴とする請求項1又は2記載の論理検証装置。
【請求項4】
前記第1回路ブロックの動作及び前記第2回路ブロックの動作と、前記第3クロック信号とが対応付けられたクロック切替テーブルを有し、
前記動作制御手段と、前記第3回路ブロック動作制御手段と、は、前記クロック切替テーブルを参照して前記第2回路ブロックと前記第3回路ブロックとを動作させるクロック信号を選択することを特徴とする請求項3記載の論理検証装置。
【請求項5】
周波数の異なる複数のクロック信号で動作する複数の回路ブロックを、該クロック信号を切り替えて論理検証する論理検証装置と、前記論理検証装置による論理検証の結果の波形データを表示させる波形表示装置とを有する論理検証システムによる論理検証方法であって、
前記論理検証装置による
第1回路ブロックが動作していない期間、前記第1回路ブロックのクロック信号で第2回路ブロックを動作させるように制御し、前記期間と、前記第1クロック信号と前記第2回路ブロックの第2クロック信号との分周比と、前記第2回路ブロックを識別するブロック識別情報と、を含む切替情報を出力する動作制御手順と、
前記切替情報と、前記第2回路ブロックを動作させた前記第1クロック信号が前記第2クロック信号の周波数に復元される圧縮波形データを含む波形データとを出力する出力手順と、を有し、
前記波形表示装置による
前記切替情報を取得する切替情報取得手順と、
前記波形データを取得する波形データ取得手順と、
前記切替情報に含まれる前記ブロック識別情報に基づき復元すべき波形データを特定し、前記切替情報に含まれる前記期間から前記復元すべき波形データに含まれる前記圧縮波形データを特定し、前記圧縮波形データを前記切替情報に含まれる前記分周比を用いて前記圧縮波形データを第2クロック信号の周波数の波形データとなる復元波形データへ復元する復元手順と、
前記復元波形データを含む前記波形データを表示させる表示手順と、を有することを特徴とする論理検証方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2011−34371(P2011−34371A)
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願番号】特願2009−180339(P2009−180339)
【出願日】平成21年8月3日(2009.8.3)
【出願人】(308014341)富士通セミコンダクター株式会社 (2,507)
【Fターム(参考)】