(57)【要約】【課題】  検証作業の効率を向上できる論理シミュレータおよび論理検証プログラムを提供する。【解決手段】  複数の論理回路にそれぞれ対応する複数のシミュレーションデータベースを形成し、複数の論理回路を構成するのに必要な各素子の初期状態設定情報を上記形成した各シミュレーションデータベースに個別に保持する。【選択図】図１
2011159293.tif 000002
【特許請求の範囲】
【請求項１】
複数の論理回路を複数の素子により選択的に構成可能な再構成可能論理回路と、この再構成可能論理回路における論理回路の構成に必要な再構成データを記憶する再構成データメモリと、これら再構成可能論理回路および再構成データメモリを制御する制御部とを記憶装置上に形成し、前記各論理回路の構成および動作をシミュレーションする論理シミュレータであって、
前記複数の論理回路にそれぞれ対応する複数のシミュレーションデータベースを前記記憶装置上に形成し、前記複数の論理回路を構成するのに必要な前記各素子の初期状態設定情報を前記形成した各シミュレーションデータベースに保持する処理手段、
を備えることを特徴とする論理シミュレータ。
【請求項２】
前記構成された論理回路の動作を開始し、その動作に伴う前記各素子の入出力の状態変化をノード情報として記憶する処理手段、
をさらに備えることを特徴とする請求項１に記載の論理シミュレータ。
【請求項３】
前記構成された論理回路の動作を開始し、その動作に伴う前記各素子の入出力の状態変化をノード情報として記憶するとともに、その各素子の入出力の状態変化と同期する前記制御部の制御内容を時系列に記憶する処理手段、
をさらに備えることを特徴とする請求項１に記載の論理シミュレータ。
【請求項４】
前記構成された論理回路の動作を開始し、その動作に伴う前記各素子の入出力の状態変化のうち、予め登録された素子の入出力の状態変化をノード情報として記憶するとともに、その登録された素子の入出力の状態変化と同期する前記制御部の制御内容を時系列に記憶する処理手段、
をさらに備えることを特徴とする請求項１記載の論理シミュレータ。
【請求項５】
前記構成された論理回路の動作を予め設定された条件で停止する処理手段、
をさらに備えることを特徴とする請求項４記載の論理シミュレータ。
【請求項６】
前記記憶したノード情報を論理回路ごとに異なる表示形態で表示する処理手段、
をさらに備えることを特徴とする請求項２ないし請求項４のいずれかに記載の論理シミュレータ。
【請求項７】
前記形成された複数のシミュレーションデータベースのうち、選定されるシミュレーションデータベース内の初期状態設定情報に応じた論理回路を前記再構成可能論理回路において構成させる処理手段、
をさらに備えることを特徴とする請求項１ないし請求項５のいずれかに記載の論理シミュレータ。
【請求項８】
前記記憶装置は、コンピュータのメモリであり、
前記各処理手段は、前記コンピュータのＣＰＵである、
ことを特徴とする請求項１ないし請求項７のいずれかに記載の論理シミュレータ。
【請求項９】
記憶装置を有するコンピュータに、
複数の論理回路を複数の素子により選択的に構成可能な再構成可能論理回路と、この再構成可能論理回路における論理回路の構成に必要な再構成データを記憶する再構成データメモリと、これら再構成可能論理回路および再構成データメモリを制御する制御部とを前記記憶装置上に形成する機能と、
前記複数の論理回路にそれぞれ対応する複数のシミュレーションデータベースを前記記憶装置上に形成し、前記複数の論理回路を構成するのに必要な前記各素子の初期状態設定情報を前記形成した各シミュレーションデータベースに保持する機能と、
前記各論理回路の構成および動作をシミュレーションする機能と、
を実現させることを特徴とする論理検証プログラム。
【請求項１０】
前記コンピュータに、
前記構成された論理回路の動作を開始し、その動作に伴う前記各素子の入出力の状態変化をノード情報として記憶する機能、
をさらに実現させることを特徴とする請求項９に記載の論理検証プログラム。
【請求項１１】
前記コンピュータに、
前記構成された論理回路の動作を開始し、その動作に伴う前記各素子の入出力の状態変化をノード情報として記憶するとともに、その各素子の入出力の状態変化と同期する前記制御部の制御内容を時系列に記憶する機能、
をさらに実現させることを特徴とする請求項９に記載の論理検証プログラム。
【請求項１２】
前記コンピュータに、
前記構成された論理回路の動作を開始し、その動作に伴う前記各素子の入出力の状態変化のうち、予め登録された素子の入出力の状態変化をノード情報として記憶するとともに、その登録された素子の入出力の状態変化と同期する前記制御部の制御内容を時系列に記憶する機能、
をさらに実現させることを特徴とする請求項９に記載の論理検証プログラム。
をさらに備えることを特徴とする請求項９記載の論理シミュレータ。
【請求項１３】
前記コンピュータに、
前記構成された論理回路の動作を予め設定された条件で停止する機能、
をさらに実現させることを特徴とする請求項１２記載の論理検証プログラム。
【請求項１４】
前記コンピュータに、
前記記憶したノード情報を論理回路ごとに異なる表示形態で表示する機能、
をさらに実現させることを特徴とする請求項１０ないし請求項１２のいずれかに記載の論理検証プログラム。
【請求項１５】
前記コンピュータに、
前記形成された複数のシミュレーションデータベースのうち、選定されるシミュレーションデータベース内の初期状態設定情報に応じた論理回路を前記再構成可能論理回路において構成させる機能、
をさらに実現させることを特徴とする請求項９ないし請求項１４のいずれかに記載の論理検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、論理回路の構成および動作をシミュレーションする論理シミュレータおよび論理検証プログラムに関する。
【背景技術】
【０００２】
電気機器においては、高機能化の実現のため、特定の用途に最適設計されたＡＳＩＣにより回路が構成される。しかし、ＡＳＩＣの機能は固定で、開発後に変更あるいは追加することができない。再開発するとしても、開発期間が必要となり、開発費も高騰する。
【０００３】
一方、複数の回路を選択的に構成することが可能なリコンフィギュラブル回路技術が知られている（例えば特許文献１）。このリコンフィギュラブル回路技術を採用することにより、処理に必要な機能を臨機応変的に切換えたり増減することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−３０３２７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
電気機器へのリコンフィギュラブル回路技術の採用に際しては、構成される複数の回路を例えば設計の段階で検証することが望まれる。
【０００６】
ただし、この検証に際しては、複数の回路が一定の順序で順に構成されるので、検証したい回路が２番目や３番目であっても、常に１番目の回路から構成される。オペレータは、検証したい回路が構成されるまで待機することになり、検証作業の効率が悪い。
【０００７】
本発明の実施形態の目的は、検証作業の効率を向上できる論理シミュレータおよび論理検証プログラムを提供することである。
【課題を解決するための手段】
【０００８】
本発明の実施形態の論理シミュレータは、複数の論理回路を複数の素子により選択的に構成可能な再構成可能論理回路と、この再構成可能論理回路における論理回路の構成に必要な再構成データを記憶する再構成データメモリと、これら再構成可能論理回路および再構成データメモリを制御する制御部とを記憶装置上に形成し、前記各論理回路の構成および動作をシミュレーションする論理シミュレータであって、前記複数の論理回路にそれぞれ対応する複数のシミュレーションデータベースを前記記憶装置上に形成し、前記複数の論理回路を構成するのに必要な前記各素子の初期状態設定情報を前記形成した各シミュレーションデータベースに保持する処理手段、を備える。
【図面の簡単な説明】
【０００９】
【図１】一実施形態の構成を示すブロック図。
【図２】一実施形態のＣＰＵコアの処理を示すフローチャート。
【図３】図２に続くフローチャート。
【図４】一実施形態のＣＰＵの処理を示すフローチャート。
【図５】図４に続くフローチャート。
【図６】図５に続くフローチャート。
【図７】図６に続くフローチャート。
【発明を実施するための形態】
【００１０】
以下、一実施形態について図面を参照して説明する。  
図１に示すように、ＣＰＵ１００にシステムバス１０１を介してＲＯＭ１０２、記憶装置であるメモリ１０３、操作部１０４、ディスク状の磁気記憶装置を含むハードディスクドライブ装置（以下ＨＤＤという）２０８、表示装置２１０を接続し、コンピュータを構成する。このコンピュータを、論理回路の構成および動作をシミュレーションするための論理シミュレータとして使用する。この論理シミュレータの処理に必要な論理検証プログラムを上記ＲＯＭ１０２に記憶する。上記表示装置２１０は、論理シミュレータの検証結果を表示するための波形表示装置として使用する。
【００１１】
この論理シミュレータのＣＰＵ１００は、上記論理検証プログラムに基づく次の（１）から（８）の機能を有する。
【００１２】
（１）複数の論理回路を複数の素子(Processor Element；ノードともいう）により選択的に構成可能な再構成可能論理回路（再構成可能論理回路ミュレーションモデル）２０１と、この再構成可能論理回路２０１における論理回路の構成に必要な再構成データを記憶する再構成データメモリ２０２（再構成データメモリミュレーションモデル）と、これら再構成可能論理回路２０１および再構成データメモリ２０２を制御する制御部であるＣＰＵコア（ＣＰＵシミュレーションモデルともいう）２００と、このＣＰＵコア２００、再構成可能論理回路２０１、再構成データメモリ２０２を相互接続するシステムバス（システムバスミュレーションモデル）２０４とからなるダイナミック・リコンフィギュラブル・プロセッサ（Dynamic Reconfigurable Processor；以下ＤＲＰという）２０６を上記メモリ１０３上に形成するとともに、このＤＲＰ２０６に対する入力データおよびＤＲＰ２０６からの出力データを記憶する外部メモリ（外部メモリシミュレーションデータベース）２０９、ＤＲＰ１０３と上記システムバス１０１とを接続するインタフェース（Application Program Interface；ＡＰＩ)２１２を上記メモリ１０３上に形成する処理手段。
【００１３】
（２）上記複数の論理回路にそれぞれ対応する複数の再構成可能論理回路シミュレーションデータベース（シミュレーションデータベースと略称する）２０３を前記メモリ１０３上のＤＲＰ２０６内に形成し、上記複数の論理回路を構成するのに必要な上記各素子の初期状態設定情報を上記形成した各シミュレーションデータベースに保持する処理手段。
【００１４】
（３）上記構成された論理回路の動作を開始し、その動作に伴う上記各素子の入出力の状態変化をノード情報としてＨＤＤ２０８記憶するとともに、その各素子の入出力の状態変化と同期するＣＰＵコア２００の制御内容をＨＤＤ２０８に時系列に記憶する処理手段。
【００１５】
（４）上記構成された論理回路の動作を開始し、その動作に伴う上記各素子の入出力の状態変化のうち、オペレータにより予め登録された素子の入出力の状態変化をノード情報としてＨＤＤ２０８に記憶するとともに、その登録された素子の入出力の状態変化と同期するＣＰＵコア２００の制御内容をＨＤＤ２０８に時系列に記憶する処理手段。
【００１６】
（５）上記構成された論理回路の動作をオペレータにより予め設定された条件（ブレークポイント）で停止する処理手段。
【００１７】
（６）上記記憶したノード情報を論理回路ごとに異なる表示形態で表示装置２１０において表示する処理手段。
【００１８】
（７）上記形成された複数のシミュレーションデータベースのうち、オペレータにより選定されるシミュレーションデータベース内の上記初期状態設定情報に応じた論理回路を上記再構成可能論理回路２０１において構成させる処理手段。
【００１９】
（８）上記表示される各ノード情報のいずれかが指定されると、指定されたノード情報に対応する制御内容をＨＤＤ２０８から読み出し、各論理回路の動作を上記読み出した制御内容に基く途中のポイントから再開する知り手段。
【００２０】
ＣＰＵコア２００は、当該論理シミュレータの制御の中枢であるＣＰＵ１００の処理により形成され、そのＣＰＵ１００の処理と平行して次の処理を行う。この処理を図２および図３のフローチャートを参照しながら説明する。  
まず、ＤＲＰ２０６を初期化する（ステップＳ４０１）。再構成データメモリ２０２に複数たとえば３種類の再構成データを記憶させる処理については、ＣＰＵ１００からの制御より実行せず、ＣＰＵ１００に任せる（ステップＳ４０２）。
【００２１】
再構成可能論理回路２０１で構成される各論理回路の処理に供される入力データを外部メモリ２０９に記憶する（ステップＳ４０３）。再構成可能論理回路２０１での論理回路の構成に適さない演算であるＣＰＵ用演算を開始する（ステップＳ４０４）。
【００２２】
ＣＰＵ用演算の途中、再構成データメモリ２０２から１つ目の再構成データを読み出す命令については、ＣＰＵ１００からの制御により実行せず、ＣＰＵ１００に任せる（ステップＳ４０５）。１つ目の再構成データを再構成可能論理回路２０１に書き込み、かつ再構成可能論理回路２０１で１つ目の論理回路Ａを構成する命令も、ＣＰＵ１００に任せる（ステップＳ４０６）。
【００２３】
後述のように構成される論理回路Ａの動作（外部メモリ２０９内の入力データの処理）を開始させ（ステップＳ４０７）、ＣＰＵ用演算を継続する（ステップＳ４０８）。このＣＰＵ用演算の途中で論理回路Ａの動作の終了フラグを調べる（ステップＳ４０９）。論理回路Ａの動作の終了フラグがアクティブでないならば、終了フラグがアクティブになるまで待機する（ステップＳ４１０）。論理回路Ａの動作の終了フラグがアクティブとなったとき、再構成データメモリ２０２から２つ目の再構成データを読み出す命令については、ＣＰＵ１００からの制御により実行せず、ＣＰＵ１００に任せる（ステップＳ４１１）。２つ目の再構成データを再構成可能論理回路２０１に書き込み、かつ再構成可能論理回路２０１で２つ目の論理回路Ｂを構成する命令も、ＣＰＵ１００に任せる（ステップＳ４１２）。
【００２４】
後述のように構成される論理回路Ｂの動作（外部メモリ２０９内の入力データまたは論理回路Ａで処理されたデータの処理）を開始させ（ステップＳ４１３）、ＣＰＵ用演算を継続する（ステップＳ４１４）。このＣＰＵ用演算の途中で論理回路Ｂの動作の終了フラグを調べる（ステップＳ４１５）。論理回路Ｂの動作の終了フラグがアクティブでないならば、終了フラグがアクティプになるまで待機する（ステップＳ４１６）。論理回路Ｂの動作の終了フラグがアクティブとなったとき、再構成データメモリ２０２から３つ目の再構成データを読み出す命令については、ＣＰＵ１００からの制御により実行せず、ＣＰＵ１００に任せる（ステップＳ４１７）。３つ目の再構成データを再構成可能論理回路２０１に書き込み、かつ再構成可能論理回路２０１で３つ目の論理回路Ｃを構成する命令も、論理シミュレータに任せる（ステップＳ４１８）。
【００２５】
後述のように構成される論理回路Ｃの動作（外部メモリ２０９内の入力データまたは論理回路Ａ，Ｂで処理されたデータの処理）を開始させ（ステップＳ４１９）、ＣＰＵ用演算を継続する（ステップＳ４２０）。このＣＰＵ用演算の途中で論理回路Ｃの動作の終了フラグを調べる（ステップＳ４２１）。論理回路Ｃの動作の終了フラグがアクティブでないならば、終了フラグがアクティブになるまで待機する（ステップＳ４２２）。論理回路Ｃの動作の終了フラグがアクティブとなったとき、ＣＰＵ用演算が終了していなければＣＰＵ用演算を継続する（ステップＳ４２３）。ＣＰＵ用演算が終了していれば、論理回路Ａ，Ｂ，Ｃで処理されたデータを出力データとして外部メモリ２０９に記憶する（ステップＳ４２４）。
【００２６】
一方、当該論理シミュレータの制御の中枢であるＣＰＵ１００は次の処理を行う。この処理を図４および図７のフローチャートを参照しながら説明する。  
まず、ＣＰＵコア２００、再構成可能論理回路２０１、再構成データメモリ２０２、複数のシミュレーションデータベース２０３、システムバス２０４を含むＤＲＰ２０６と、外部メモリ２０９と、インタフェース２１２とを、シミュレーション対象モデルとしてメモリ１０３上に形成する（ステップＳ５０１）。
【００２７】
上記３つの再構成データを再構成データメモリ２０２に書き込むとともに、その再構成データメモリ２０２内の３つの再構成データに基づく所期状態情報を３つのシミュレーションデータベース２０３にそれぞれ書き込んで保持する（ステップＳ５０２）。所期状態情報は、再構成可能論理回路２０１において複数の論理回路を構成するのに必要な同再構成可能論理回路２０１の各素子の初期状態を設定する。
【００２８】
この時点で、３種類の論理回路Ａ，Ｂ，Ｃにおける各素子の入出力の状態変化をノード情報として登録することが可能になる（ステップＳ５０３）。オペレータは、論理回路Ａ，Ｂ，Ｃのうち、観測したい任意の論理回路の任意の素子（ノード）のノード情報を、操作部１０４の操作により、記憶対象として登録できる（ステップＯＰ５０１）。
【００２９】
論理シミュレータ側では、３種類の論理回路Ａ，Ｂ，Ｃの各素子を表示対象として登録することが可能になる（ステップＳ５０４）。オペレータは、論理回路Ａ，Ｂ，Ｃのうち、観測したい任意の論理回路の任意の素子を、操作部１０４の捜査により、表示対象として登録できる（ステップＯＰ５０２）。
【００３０】
この時点で、３種類の論理回路Ａ，Ｂ，Ｃの動作を所定のタイミングまたは動作状況において停止するいわゆるブレークポイントを設定することが可能になる（ステップＳ５０５）。オペレータは、論理回路Ａ，Ｂ，Ｃののうち、任意の論理回路Ａ，Ｂ，Ｃの動作に対しブレークポイントを、操作部１０４の操作により任意に設定できる（ステップＯＰ５０３）。
【００３１】
３種類の論理回路Ａ，Ｂ，Ｃの構成および動作についてのシミュレーションを開始する（ステップＳ５０６）。この時点で、３種類の論理回路Ａ，Ｂ，Ｃの各素子のノード情報（入出力の状態変化）を表示装置２１０で論理回路ごとに異なる表示形態たとえば複数種の色や複数種の描画線で表示することが可能となる（ステップＳ５０７）。さらに、３種類の論理回路Ａ，Ｂ，Ｃのノード情報をＨＤＤ２０８ へ記憶することが可能となる（ステップＳ５０８）。また、３種類の論理回路Ａ，Ｂ，Ｃの各素子の入出力の状態変化と同期するＣＰＵコア２００の制御内容をＨＤＤ２０８に時系列に記憶することが可能となる（ステップＳ５０９）。再構成可能論理回路２０１は、この時点では３つの再構成データとリンクが取れていないので、論理回路の機能はまだ持っていない。
【００３２】
ＣＰＵコア２００では上記ステップＳ４０１〜Ｓ４０６の処理が実行される。  
再構成可能論理回路２０１を１つ目の再構成データとリンクする（ステップＳ５１０）。すなわち、各シミュレーションデータベース２０３のうち、１番目のシミュレーションデータベース２０３内の初期状態設定情報と再構成可能論理回路２０１とがリンクし、再構成可能論理回路２０１において論理回路Ａが構成される。
【００３３】
ＣＰＵコア２００では上記ステップＳ４０７の処理（論理回路Ａの動作開始）が実行される。この動作に伴い、論理回路Ａの全ての素子に関するノード情報およびＣＰＵコア２００の制御内容をＨＤＤ２０８に記憶する（ステップＳ５１１）。
【００３４】
この論理回路Ａのシミュレーションを続ける（ステップＳ５１２）。
【００３５】
オペレータは、当該論理シミュレータのシミュレーションを継続する（ステップＯＰ５０４）。
【００３６】
この論理回路Ａのシミュレーション中、論理回路Ａの構成要素である各素子のうち、予め登録された素子に関するノード情報と同期したＣＰＵコア２００の制御内容をＨＤＤ２０８に時系列に記憶する（ステップＳ５１３）。また、論理回路Ａの構成要素である各素子のうち、予め登録されている素子に関するノード情報をＨＤＤ２０８に時系列に記憶する（ステップＳ５１４）。
【００３７】
ＨＤＤ２０８に記憶される全てのノード情報または予め登録された素子に関するノード情報を論理“１”“０”の信号波形として表示装置２１０で逐次に表示する（ステップＳ５１５）。全てのノード情報または予め登録された素子に関するノード情報のどちらを表示するかは、オペレータの設定により選定することができる。
【００３８】
ＣＰＵコア２００ではステップＳ４０８〜Ｓ４１２の処理が実行される。
【００３９】
オペレータは、当該論理シミュレータのシミュレーションを継続する（ステップＯＰ５０５）。
【００４０】
所定のタイミングまたは動作状況において動作を停止するブレークポイントの設定を検出すると、論理回路Ａの動作をそのブレークポイントで一時停止する（ステップＳ５１６）。この一時停止に伴い、全ての論理回路Ａ，Ｂ，Ｃの各素子を観測対象として追加登録することが可能となる（ステップＳ５１７）。
【００４１】
オペレータは、全ての論理回路Ａ，Ｂ，Ｃのうち、検証したい任意の論理回路の各素子を、操作部１０４の操作により検証対象として登録できる（ステップＯＰ５０６）。
【００４２】
また、上記一時停止に伴い、全ての論理回路Ａ，Ｂ，Ｃに対するブレークポイントを追加設定することが可能となる（ステップＳ５１８）。
【００４３】
オペレータは、全ての論理回路Ａ，Ｂ，Ｃのうち、任意の論理回路に対し任意のブレークポイントを、操作部１０４の操作により設定できる（ステップＯＰ５０７）。また、オペレータは、ブレークポイントの設定の有無とは関係なく、操作部１０４の操作により、当該論理シミュレータのシミュレーションを一時停止できる（ステップＯＰ５０８）。
【００４４】
この一時停止に際し、１番目のシミュレーションデータベース２０３には論理回路Ａ用の初期状態設定情報が保持されているので、その初期状態設定情報に基づき、論理回路Ａの構成および動作についてのシミュレーションをその先頭位置から再開することが可能である（ステップＳ５１９）。２番目および３番目のシミュレーションデータベース２０３には論理回路Ｂ，Ｃ用の初期状態設定情報がそれぞれ保持されているので、その各初期状態設定情報に基づき、論理回路Ｂ，Ｃの構成および動作についてのシミュレーションをその先頭位置から開始することも可能である（ステップＳ５１９）。これは、論理回路Ａのシミュレーション中に限らず、論理回路Ｂ，Ｃのシミュレーション中でも同様である。
【００４５】
オペレータがシミュレーションの一時停止を行わなければ、再構成可能論理回路２０１を２つ目の再構成データとリンクする（ステップＳ５２０）。すなわち、各シミュレーションデータベース２０３のうち、２番目のシミュレーションデータベース２０３内の初期状態設定情報と再構成可能論理回路２０１とがリンクし、再構成可能論理回路２０１において論理回路Ｂが構成される。
【００４６】
ＣＰＵコア２００では上記ステップＳ４１３の処理（論理回路Ｂの動作開始）が実行される。この動作開始に伴い、論理回路Ｂの全ての素子に関するノード情報およびＣＰＵコア２００の制御内容をＨＤＤ２０８に記憶する（ステップＳ５２１）。
【００４７】
この論理回路Ｂのシミュレーションを続ける（ステップＳ５２２）。
【００４８】
オペレータは、当該論理シミュレータのシミュレーションを継続する（ステップＯＰ５０９）。
【００４９】
論理回路Ｂのシミュレーション中、論理回路Ｂの構成要素である各素子のうち、予め登録された素子に関するノード情報と同期したＣＰＵコア２００の制御内容をＨＤＤ２０８に時系列に記憶する（ステップＳ５２３）。また、論理回路Ｂの構成要素である各素子のうち、予め登録されている素子に関するノード情報をＨＤＤ２０８に時系列に記憶する（ステップＳ５２４）。
【００５０】
ＨＤＤ２０８に記憶される全てのノード情報または予め登録された素子に関するノード情報を、ＨＤＤ２０８にすでに記憶されている論理回路Ａのノード情報または予め登録された素子に関するノード情報とともに、論理“１”“０”の信号波形として表示装置２１０で逐次に表示する（ステップＳ５１５）。全てのノード情報または予め登録された素子に関するノード情報のどちらを表示するかは、オペレータの設定により選定できる。
【００５１】
ＣＰＵコア２００ではステップＳ４１４〜Ｓ４１８の処理が実行される。
【００５２】
オペレータは、当該論理シミュレータのシミュレーションを継続する（ステップＯＰ５１０）。
【００５３】
次に、再構成可能論理回路２０１を３つ目の再構成データとリンクする（ステップＳ５２６）。すなわち、各シミュレーションデータベース２０３のうち、３番目のシミュレーションデータベース２０３内の初期状態設定情報と再構成可能論理回路２０１とがリンクし、再構成可能論理回路２０１において論理回路Ｃが構成される（ステップＳ５２７）。
【００５４】
ＣＰＵコア２００ではステップＳ４１９の処理（論理回路Ｃの動作開始）が実行される。この動作に伴い、論理回路Ｃの全ての素子に関するノード情報およびＣＰＵコア２００の制御内容をＨＤＤ２０８に記憶する（ステップＳ５２８）。
【００５５】
この論理回路Ｃのシミュレーションを続ける（ステップＳ５２９）。
【００５６】
オペレータは、当該論理シミュレータのシミュレーションを継続する（ステップＯＰ５１１）。
【００５７】
論理回路Ｃのシミュレーション中、論理回路Ｃの構成要素である各素子のうち、予め登録された素子に関するノード情報と同期したＣＰＵコア２００の制御内容をＨＤＤ２０８に時系列に記憶する（ステップＳ５３０）。また、論理回路Ｃの構成要素である各素子のうち、予め登録されている素子に関するノード情報をＨＤＤ２０８に時系列に記憶する（ステップＳ５３１）。
【００５８】
ＨＤＤ２０８に記憶される全てのノード情報または予め登録された素子に関するノード情報を、ＨＤＤ２０８にすでに記憶されている論理回路Ａ，Ｂのノード情報または予め登録された素子に関するノード情報とともに、論理“１”“０”の信号波形として表示装置２１０で逐次に表示する（ステップＳ５３２）。全てのノード情報または予め登録された素子に関するノード情報のどちらを表示するかは、オペレータの設定により選定できる。
【００５９】
ＣＰＵコア２００ではステップＳ４２０の処理が実行される。
【００６０】
オペレータは、当該論理シミュレータのシミュレーションを継続する（ステップＯＰ５１２）。
【００６１】
オペレータからのシミュレーション停止指示を受けるまで、または論理回路Ｃの動作終了までは（ステップＳ５３３のＮＯ）、論理回路Ｃのシミュレーションを継続する（ステップＳ５３４）。オペレータからのシミュレーション停止指示を受けると、または論理回路Ｃの動作が終了すると（ステップＳ５３３のＹＥＳ）、シミュレーションを終了する（ステップＳ５３５）。
【００６２】
以上のように、複数の論理回路にそれぞれ対応する複数のシミュレーションデータベース２０３を形成し、複数の論理回路を構成するのに必要な各素子の初期状態設定情報を上記形成した各シミュレーションデータベース２０３に個別に保持することにより、検証したい論理回路が２番目や３番目であっても、その順番にかかわらず、検証したい論理回路のシミュレーションを直ちに開始することができる。これにより、オペレータの待ち時間が短縮されてオペレータの負担が軽減されるとともに、検証に要する時間を大幅に短縮できて検証作業の効率が向上する。
【００６３】
構成される論理回路の構成要素である各素子のノード情報を、全ての素子について表示することはもちろん、予め登録された素子についてだけ表示することもできる。これも検証作業の効率向上につながる。
【００６４】
ＣＰＵコア２００の制御内容をノード情報に同期してＨＤＤ２０８に記憶するので、表示される各ノード情報の中にオペレータが気になるノード情報があって、そのノード情報がオペレータにより指定された場合には、当該論理シミュレータのＣＰＵ１００は、指定されたノード情報に対応する制御内容をＨＤＤ２０８から読み出し、各論理回路の動作を上記読み出した制御内容に基く途中のポイントから再開する。これも検証作業の効率向上につながる。
【００６５】
なお、上記実施形態では、再構成可能論理回路２０１において構成する複数の論理回路として論理回路Ａ，Ｂ，Ｃを例に説明したが、その論理回路の数および種類について限定はなく、ＤＲＰが搭載される機器に応じて適宜に選定可能である。
【００６６】
その他、上記実施形態および各変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態および変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、書き換え、変更を行うことができる。これら実施形態や変形は、発明の範囲は要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６７】
１００…ＣＰＵ、１０１システムバス、１０２…ＲＯＭ、１０３…メモリ（記憶装置）、１０４…操作部、２００…ＣＰＵコア（制御部）、２０１…再構成可能論理回路、２０２…再構成データメモリ、２０３…再構成可能論理回路シミュレーションデータベース、２０４…データバス、２０６…ＤＲＰ、２０９…外部メモリ、２１０…表示装置
【図１】
2011159293.tif 000003
【図２】
2011159293.tif 000004
【図３】
2011159293.tif 000005
【図４】
2011159293.tif 000006
【図５】
2011159293.tif 000007
【図６】
2011159293.tif 000008
【図７】
2011159293.tif 000009