(57)【特許請求の範囲】
【請求項１】
電子回路設計で用いられる回路の構成を記述した論理ゲート群の接続情報から回路機能を抽出する、コンピュータ処理を主体とした回路機能抽出方法であって、ゲート群の接続情報の信号経路をたどり、帰還ループのない場合には回路を組合せ回路と判断し、帰還ループのある場合には回路を順序回路であると判別する第一のステップと、第一のステップにより組み合わせ回路と判断された場合には、回路の出力端子毎に入力端子による論理評価を行い機能を求める第二のステップと、第一のステップにより順序回路と判断された場合には、回路の中から、クロックで動作する回路部分と状態を保持する回路部分とからなる全ての保持回路部分と、保持回路部分以外の回路部分とを識別する第三ステップと、第三のステップにより識別された全ての保持回路部分に対し、それぞれ各保持回路毎に、入力信号と出力信号を、保持データ入力信号と、クロック信号と、制御信号と、保持データ出力信号に分類した後、全ての保持回路部分に対して、それぞれ各保持回路毎に、分類された信号群により論理評価を行い機能を求める第四のステップと、第三のステップにより識別された保持回路部分以外の全ての回路部分については組み合わせ回路として、保持回路部分以外の全ての回路部分に対して、それぞれ各回路部分毎に、論理評価を行い機能を求める第五のステップとを行い、得られた全ての保持回路部分の機能と保持回路部分以外の全ての回路部分の機能を全て併せて回路全体の機能とすることを特徴とする回路機能抽出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，ＬＳＩ設計における動作検証の技術分野に属し、特に回路の機能（論理）抽出に関する。
【０００２】
【従来の技術】
近年、電子機器の高性能化と軽薄短小の傾向から、ＡＳＩＣに代表される種々のＬＳＩには、ますます高集積化、高機能化が求められるようになってきた。即ち、できるだけチップサイズを小さくして、高機能を実現することがＡＳＩＣ等のＩＣには求められている。
上記ＡＳＩＣ等のＬＳＩは、機能、論理設計、回路設計、レイアウト設計等を経て、フオトマスクパターン用のパターンを作製し、これを用いてフオトマスクを作製した後、フオトマスクのパターンをウエハ上に縮小投影露光等により転写して、半導体素子作製のプロセスを行うという長い工程を経て作製されるものであり、高集積化、高機能化に伴い、ますます回路設計においても、設計通りに作成されているか否かを早い段階で正確に確認しておく必要がでてきた。
この為、従来、レイアウト設計の段階で設計変更がある場合には、トランジスタレベルから更に論理ゲート群の接続レベル（論理回路とも言う）へ戻して、ここで回路の機能を抽出して、設計どおりに作成されているか否かの検証を行っていた。
【０００３】
この、論理ゲート群の接続レベルでの機能抽出は、回路の論理ゲート群の接続情報から機能を抽出する方法で、従来、図１０に示すような方法で行われていた。以下、図１０に示す方法を簡単に説明する。
先ず、与えられた回路の接続情報の出力端子について、出力端子から入力方向にたどり、出力端子が入力端子による論理評価の対象となりえるかどうかを判断する。（Ｓ２１０）
この判断は、帰還ループがある場合は、即ち回路が順序回路である場合は論理評価の対象となり得ないものとし、帰還ループがない場合、即ち組合せ回路の場合には論理評価の対象となり得るとするものである。
そして、出力端子の機能が入力端子群のによる論理評価の対象となり得る場合は、出力端子の機能を入力端子群により論理評価し、機能の抽出を行う。（Ｓ２２０）
また、出力端子の機能が入力端子群による論理評価の対象となり得ない場合は、登録されている接続情報群と対象となる回路接続パターンとを比較し（Ｓ２３０）、既に登録されている接続情報と対象の回路接続パターンとが一致した場合、その登録されている接続情報の機能を、対象の回路接続パターンに対応する回路機能から求める。（Ｓ２４０））
また、対象となる回路接続パターンが存在しない場合は、機能の抽出はできない。（Ｓ２５０）
この場合には、図１０に示す回路接続パターンとその機能情報を増やしていくこととなる。
【０００４】
更に、具体的な例を挙げて説明する。
対象とする回路が図５のような組合せ回路である場合、出力端子Ｏ１１、Ｏ１２から入力端子側に経路をたどることにより、出力端子Ｏ１１は入力端子Ｉ１１、Ｉ１２、Ｉ１３により論理評価を行うことができ、出力端子Ｏ１２は入力端子Ｉ１３により論理評価を行うことができる。
しかし、対象となる回路が図４のような順序回路である場合、出力端子から入力端子側に経路を検索する時点でｇ３、ｇ４による帰還ループが存在するため、出力端子０１は入力端子群により論理評価はできない。
このため、登録回路接続パターンを検索する。（Ｓ２３０）
登録回路接続パターンの例を図１１に示すが、図４に示す回路接続は、図１１の（ｄ）に示す回路接続パターンと合致するため、機能情報として図１１の（ｄ）に示す回路接続パターン１１４に対応する図１１の（ｈ）に示す回路機能が求められる。（Ｓ２４０）
【０００５】
しかしながら、同一の機能をもつ回路であっても、論理ゲートの接続情報で表現される回路接続パターンは多種多様である為、上記図１０に示す機能抽出方法においては、同一の回路機能について、回路接続パターンを多種登録することが必要となる上、既に登録されている回路の接続情報との比較においても、１つの回路接続パターンについて、接続情報とのパターンマッチングを行う必要があり、パターンマッチングに多くの時間を必要とするという問題があった。
【０００６】
【発明が解決しようとする課題】
上記のように、図１０に示す、従来の回路の論理ゲート群の接続情報から機能を抽出する方法においては、予め登録しておく、回路機能と回路接続パターンの組みを多く必要とする上、登録されている回路接続情報との比較においても、１つの回路接続パターンについて、接続情報との照合（パターンマッチング）を行うのに多くの時間を必要とするため、この対応が求められていた。
本発明は、このような状況のもと、多様な回路構成に対応でき、図１０に示す従来の方法のように、予め回路機能と回路接続パターンの組みを多数登録しておき、且つ、登録されている回路接続情報と回路接続パターンとの照合を行う必要のない回路の機能抽出方法を提供しようとするものである。
【０００７】
【課題を解決するための手段】
本発明の回路機能抽出方法は、電子回路設計で用いられる回路の構成を記述した論理ゲート群の接続情報から回路機能を抽出する、コンピュータ処理を主体とした回路機能抽出方法であって、ゲート群の接続情報の信号経路をたどり、帰還ループのない場合には回路を組合せ回路と判断し、帰還ループのある場合には回路を順序回路であると判別する第一のステップと、第一のステップにより組み合わせ回路と判断された場合には、回路の出力端子毎に入力端子による論理評価を行い機能を求める第二のステップと、第一のステップにより順序回路と判断された場合には、回路の中から、クロックで動作する回路部分と状態を保持する回路部分とからなる全ての保持回路部分と、保持回路部分以外の回路部分とを識別する第三ステップと、第三のステップにより識別された全ての保持回路部分に対し、それぞれ各保持回路毎に、入力信号と出力信号を、保持データ入力信号と、クロック信号と、制御信号と、保持データ出力信号に分類した後、全ての保持回路部分に対して、それぞれ各保持回路毎に、分類された信号群により論理評価を行い機能を求める第四のステップと、第三のステップにより識別された保持回路部分以外の全ての回路部分については組み合わせ回路として、保持回路部分以外の全ての回路部分に対して、それぞれ各回路部分毎に、論理評価を行い機能を求める第五のステップとを行い、得られた全ての保持回路部分の機能と保持回路部分以外の全ての回路部分の機能を全て併せて回路全体の機能とすることを特徴とするものである。
【０００８】
【作用】
本発明の回路機能抽出方法は、このような構成にすることにより、多様な回路構成に対応でき、図１０に示す従来の方法のように、予め回路機能と回路接続パターンの組みを多数登録しておき、且つ、登録されている回路接続情報と回路接続パターンとの照合を行う必要のない回路の機能抽出方法の提供を可能としている。
詳しくは、ゲート群の接続情報の信号経路をたどり、帰還ループのない場合には回路を組合せ回路と判断し、帰還ループのある場合には回路を順序回路であると判別する第一のステップと、第一のステップにより組み合わせ回路と判断された場合には、回路の出力端子毎に入力端子による論理評価を行い機能を求める第二のステップと、第一のステップにより順序回路と判断された場合には、回路の中から、クロックで動作する回路部分と状態を保持する回路部分とからなる全ての保持回路部分と、保持回路部分以外の回路部分とを識別する第三ステップと、第三のステップにより識別された全ての保持回路部分に対し、それぞれ各保持回路毎に、入力信号と出力信号とを、保持データ入力信号と、クロック信号と、制御信号と、保持データ出力信号に分類した後、全ての保持回路部分に対して、それぞれ各保持回路毎に、分類された信号群により論理評価を行い機能を求める第四のステップと、第三のステップにより識別された保持回路部分以外の全ての回路部分については組み合わせ回路として、保持回路部分以外の全ての回路部分に対して、それぞれ各回路部分毎に、論理評価を行い機能を求める第五のステップとを行い、得られた全ての保持回路部分の機能と保持回路部分以外の全ての回路部分の機能を全て併せて回路全体の機能とすることにより、これを達成している。
即ち、処理対象とする回路を帰還ループのない組合せ回路と、帰還ループのある順序回路に区分けし、組合せ回路の場合には、そのまま入力端子による論理評価を行い真理値表を求め機能抽出し、順序回路である場合には、クロックで動作する回路部分と状態を保持する回路部分とからなる全ての保持回路部分と、保持回路部分以外の回路部分とを識別し、各保持回路部分に対しては、新たに、入力信号と出力信号とを、保持データ入力信号と、クロック信号と、制御信号と、保持データ出力信号に分類した後、保持回路部分に対し、分類された入力信号により論理評価を行い、該保持回路部分の機能を抽出し、保持回路部分以外の回路部分、即ち、組合せ回路部に対しては、前述の組合せ回路の場合と同様に論理評価することにより、順序回路に対しても、真理値表で機能を抽出することを可能としている。
【０００９】
【実施の形態】
本発明の回路機能抽出方法を図にもとづいて説明する。
図１は本発明の回路機能抽出方法のフロー図であり、図２は本発明の回路機能抽出方法で処理する対象として扱う順序回路のモデル図で、図３は状態保持回路と、その入出力を示したものである。
以下、図１にもとづいて本発明の回路機能抽出方法を説明するが、はじめに、図２に示す順序回路モデルを説明しておく。
回路の構成は、データを保持する状態保持回路２６と、状態保持回路２６へ取り込まれる信号を作成する入力論理部２４、状態保持回路２６の制御信号を作成する制御論理部２５、状態保持回路２６からの出力信号を作成する出力論理部２８とから成り、回路の入力信号は、外部から指定するクロック信号群２２と、処理途中で識別されるデータ信号群２１と制御信号群２３とからなる。尚、入力論理部２４と制御論理部２５と出力論理部２８は組合せ回路である。
【００１０】
先ず、論理ゲートの接続情報から組合せ回路であるか順序回路であるかを識別する。（Ｓ１１０）
図４に示す回路の場合、論理ゲートの接続情報を検索することにより、ｇ３、ｇ４で構成される帰還ループを含む回路と判断され、結果順序回路と判断される。
また、図５に示す回路の場合には、論理ゲートの接続情報を検索することにより、帰還ループを含まない回路と判断され、即ち組合せ回路と判断される。
次いで、ステップＳ１１０で組合せ回路と判断された場合には、そのまま入力端子による論理評価を行い真理値表を求め機能抽出を行う。（Ｓ１２０）
図５に示す回路の場合は、出力端子はＯ１１、Ｏ１２の２つであるため、この２つの出力端子個々について論理を評価する。
出力端子から入力端子側への経路毎の論理ゲートの論理を接続すると、出力Ｏ１１、Ｏ１２からの経路は、それぞれ図６（ａ）、図６（ｂ）のような論理式での機能を求めることができる。
組合せ回路については論理式表示で機能が求められたことになるが、図６（ａ）、図６（ｂ）について、入力端子の値を代入し、論理式を評価することにより入力端子の状態と出力端子の状態の関係を求めることができる。このようにして求めた関係を表にしたものが図７に示す真理値表である。
【００１１】
次いで、ステップＳ１１０で順序回路と判断された場合には、順序回路の機能抽出を以下の手順にて行う。
先ず、外部から与えられたクロック信号により動作するゲートを検出してクロック動作ゲートとし、帰還ループ、即ち状態保持ループとクロック動作ゲートの組みを状態保持回路として判別する。（Ｓ１３０）
状態保持回路は図３に示す構成で、クロック動作ゲート３５と状態保持ループ３６とからなり、クロック動作ゲート３５を駆動するクロック信号３２、クロック動作ゲート３５を経由して状態保持ループ３６に入り込むデータ入力信号３１、クロック動作ゲート３５を経由しないで状態保持ループ３６を構成するゲートの入力となる制御信号３３、状態保持ループ３６からの出力するデータ出力信号３４を持つ。
【００１２】
次いで、全ての状態保持回路に対し、各状態保持回路毎に、全ての入力信号が、図３に示す入力信号のどの種類に対応するかを識別する。（Ｓ１４０）
図４に示す回路においては、状態ループはｇ３、ｇ４で、クロック動作ゲートはｇ２である。
状態保持回路への入力論理は、Ｉ２、Ｉ３の論理となる。
制御論理はＩ１が直接状態保持ループ３６に入り込んでいるためＩ１である。出力論理は、状態保持ループ３６から直接Ｏ１へ出力しているためＯ１である。
図４に示す回路においては、状態保持回路はｇ２、ｇ３、ｇ４で構成されるのみであり、この状態保持回路のデータ入力信号はＳ１、クロック信号はＩ４、制御信号はＩ１、データ出力信号はＯ１である。
【００１３】
次に、各状態保持回路について、論理評価を行う。（Ｓ１５０）
制御信号がある場合、制御信号は直接状態保持ループの入力となるため、データ出力信号を出力とみなし制御信号により論理を評価することにより、特定の制御信号の組み合わせによりデータ出力信号が確定する。
制御信号によりデータ出力信号が確定する場合、データ入力信号とクロック信号はなんであっても良い。
図４に示す回路では、Ｉ１に０が入力された場合、出力Ｏ１の値が１に確定する。この場合、データ入力信号Ｓ１とクロック信号Ｉ４はなんであっても良いことになる。
制御信号によりデータ出力信号が確定しない組合せについて、データ入力信号とクロック信号により状態保持ループに取り込むまれるべき状態を評価する。
図４の例では、制御信号Ｉ１の値を１としたときには、データ信号入力Ｓ１とクロック信号Ｉ４により、状態保持ループに格納される値が決定する。Ｉ４が１の時に信号Ｓ１の値がＳ２に伝達すると、データ出力信号０１は、Ｓ１の反転状態となる。
状態保持ループに取り込むまれるべき状態が確定しない場合には、その状態保持回路は状態を変化せず状態を保持し続ける。
図４の例では、クロック信号Ｉ４の値が０のとき、信号Ｓ１の値がＳ２に伝達されないとすると、クロック信号Ｉ４が０の場合、状態値が状態保持ループに保持されたままとなる。
このようにして、データ入力信号、クロック信号、制御信号により、データ出力信号の状態が評価される。
以上の操作による論理評価を全ての状態保持回路について行う。
尚、図４の状態保持回路の論理評価は、図８（ａ）のようになる。
【００１４】
次に、入力端子から状態保持回路のデータ入力信号までの論理を入力論理として、組合せ回路と同様に評価し、状態保持回路のデータ出力信号から出力端子までの論理を出力論理として組合せ回路と同様に評価し、状態保持回路の制御信号から入力端子までの論理を制御論理として組合せ回路として評価する。（Ｓ１６０））
図４の例では、入力論理がＮＯＲ（Ｉ２、Ｉ３）であるため、入力論理は図８（ｂ）のようになる。
また、制御論理はＩ１、出力論理は０１だけである。
以上より、状態保持回路と、状態保持回路以外の回路、即ち、組合せ回路からなる入力論理部、出力論理部、制御論理部の評価結果として回路全体の機能が抽出される。
【００１５】
【発明の効果】
本発明は、上記のように、論理ゲート群の接続情報のみから、処理対象となった回路の機能を抽出することができる、回路機能抽出方法の提供を可能としている。
このため、図１０に示す、従来の論理ゲート群の接続情報から回路機能を抽出する方法のように、予め回路機能と回路接続パターンの組みを多数登録しておき、且つ、登録されている回路接続情報との接続情報のパターンマッチングを行う作業を必要のないものとしている。
【図面の簡単な説明】
【図１】本発明の回路機能抽出方法のフロー図
【図２】本発明の回路機能抽出方法で処理する対象として扱う順序回路のモデル図
【図３】状態保持回路とその入出力を示した図
【図４】順序回路の具体例を論理回路図で示した図
【図５】組合せ回路の具体例を論理回路図で示した図
【図６】組合せ回路の論理式（機能）を示した図
【図７】組合せ回路の真理値表（機能）を示した図
【図８】図４に示す順序回路の状態保持回路の真理値表（機能）を示した図
【図９】図４に示す順序回路の入力論理を示した図
【図１０】従来の機能抽出方法を処理手順を示した図
【図１１】従来の機能抽出方法において、予め登録しておく回路接続パターンと回路機能との示した図
【符号の説明】
Ｓ１１０〜Ｓ１７０                      ステップ
２１                                    データ信号群
２２                                    クロック信号群
２３                                    制御信号群
２４                                    入力論理部
２５                                    制御論理部
２６                                    状態保持回路
２８                                    出力論理部
３１                                    データ入力信号
３２                                    クロック信号
３３                                    制御信号
３４                                    データ出力信号
３５                                    クロック動作ゲート
３６                                    状態保持ループ
ｇ１、ｇ２、ｇ３、ｇ４                  論理素ゲート
Ｉ１                                    入力信号（制御信号）
Ｉ２、Ｉ３                              入力信号
Ｉ４                                    クロック信号
Ｓ１、Ｓ２                              信号
Ｏ１                                    出力信号
ｇ１１、ｇ１２、ｇ１３                  論理素ゲート
Ｉ１１、Ｉ１２、Ｉ１３                  入力信号
０１１、Ｏ１２                          出力信号
Ｓ２１０〜Ｓ２５０                      ステップ
【図１】
0003923567.tif 000002
【図２】
0003923567.tif 000003
【図３】
0003923567.tif 000004
【図４】
0003923567.tif 000005
【図５】
0003923567.tif 000006
【図６】
0003923567.tif 000007
【図７】
0003923567.tif 000008
【図８】
0003923567.tif 000009
【図９】
0003923567.tif 000010
【図１０】
0003923567.tif 000011
【図１１】
0003923567.tif 000012