JP4217204B2 - タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム - Google Patents

タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム Download PDF

Info

Publication number
JP4217204B2
JP4217204B2 JP2004337832A JP2004337832A JP4217204B2 JP 4217204 B2 JP4217204 B2 JP 4217204B2 JP 2004337832 A JP2004337832 A JP 2004337832A JP 2004337832 A JP2004337832 A JP 2004337832A JP 4217204 B2 JP4217204 B2 JP 4217204B2
Authority
JP
Japan
Prior art keywords
path
sequential circuit
value
input
circuit elements
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
Application number
JP2004337832A
Other languages
English (en)
Other versions
JP2006146711A (ja
Inventor
博之 樋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004337832A priority Critical patent/JP4217204B2/ja
Priority to US11/063,773 priority patent/US7299437B2/en
Publication of JP2006146711A publication Critical patent/JP2006146711A/ja
Application granted granted Critical
Publication of JP4217204B2 publication Critical patent/JP4217204B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/3312Timing analysis

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

この発明は、ディジタル回路のタイミング解析に関し、特にタイミング例外パスを検出するタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムに関する。
ディジタル回路の設計から遅延を見積もり、正常に動作する範囲内にあるか否かを検査するタイミング解析は、製造した回路が正しく動作することを保障するために必要不可欠な工程である。このタイミング解析を行うためには、設計するディジタル回路のネットリストだけでなく、ディジタル回路のクロックの指定、モードの指定、遅延制約の指定、およびマルチサイクルパスやフォールスパス等のいわゆるタイミング例外パスの指定などを記述したタイミング制約情報が必要である。
このうち、設計するディジタル回路のネットリストについては、論理合成ツールやレイアウトツールなどのCADツールの進歩により、ある程度自動生成することができるようになっている。しかし、もう一方のタイミング制約の情報については、依然人手により作成する場合がほとんどであり、従来はタイミング制約情報の記述量がそれほど多くなかったため人手による場合でも問題なく作成が行えていたが、近年では、タイミング制約情報の複雑化、ディジタル回路の高速化、およびディジタル回路規模の増大化などにより与えられたクロックサイクルで動作するようなディジタル回路を製造することが困難になりつつある。
このため、たとえば、ディジタル回路中に含まれる複数の順序回路素子の中から、任意の2つの順序回路素子間でのパスの遅延が1クロックサイクルに収まる必要のないパス、すなわち、パスの遅延が2クロックサイクル以上にしても良いマルチサイクルパスや、論理的、タイミング的あるいは機能的に使用しないフォールスパスなどの、いわゆるタイミング例外パスをできるだけ多くかつ効率的に検出する技術への要望が高まっている。
このようなタイミング例外パスを、ディジタル回路から検出する従来技術は、大別して以下の2つに分類することができる。すなわち、(1)順序回路素子間のパスごとにタイミング例外パスか否かを検出する技術と、(2)順序回路素子間のすべてのパスを一括して扱い、複数の順序回路素子の各組合せごとにタイミング例外パスか否かを検出する技術とがある(たとえば、特許文献1および2参照。)。
特開2003−157297号公報 特開2004−171149号公報
このうち、上記(1)の従来技術では、パスが回路規模に対して最悪の場合指数爆発を起こすため、検出のための計算時間が膨大となるとともに、タイミング例外パスの記述量が多くなる場合、これを受け取るタイミング解析ツールの計算時間が増大するという問題があった。一方、上記(2)の従来技術では、パスの数が増加することによる上記(1)の従来技術での問題点は回避することが可能であるが、次のような問題がある。
たとえば、上記(2)の従来技術は、パスごとのタイミング例外パス、すなわち、任意に抽出した2つの順序回路素子間のパスのうち、ある一部のパスのみがタイミング例外パスであるような場合は、このタイミング例外パスを検出することができないという問題がある。
また、タイミング例外パスは、上記マルチサイクルパスと、フォールスパスとに分類することができるが、従来では、それぞれ独立して解析が行われていたため、タイミング例外パス全体の解析として見た場合、冗長になることが多く計算時間の増大につながっていた。
さらに、近年のディジタル回路の製造において、回路設計段階でタイミング例外パスを効率良く検出するとともに、タイミング例外パスを高精度で検出し、複雑化するディジタル回路の製造工期の短縮を図ることが望まれている。
この発明は、このような問題点に鑑みてなされたもので、LSIなどのディジタル回路のタイミング例外パスを効率良くかつ高精度で検出することができるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、この発明にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムは、タイミング例外パスの検出対象回路に関する回路情報の入力を受け付け、入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択し、選択された第2の順序回路素子へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データに設定し、選択された第1および第2の順序回路素子間のパス集合から、算出された値取込条件データと合致するパス集合を分割し、分割されたパス集合内のすべてのパスが、マルチサイクルパスか否かを検出することを備えることを特徴とする。
また、この発明にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムは、タイミング例外パスの検出対象回路に関する回路情報の入力を受け付け、入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択し、選択された第2の順序回路素子へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データに設定し、選択された第1および第2の順序回路素子間のパス集合から、算出された値取込条件データと合致しないパス集合を分割し、分割されたパス集合内の各々のパスが、フォールスパスか否かを検出することを特徴とする。
また、この発明にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムによれば、タイミング例外パスの検出対象回路に関する回路情報の入力を受け付け、入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択し、選択された第2の順序回路素子へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データに設定し、選択された第1および第2の順序回路素子間のパス集合から、算出された値取込条件データと合致しないパス集合を分割し、分割されたパス集合内の任意のパスの選択を行うパス選択ゲートに関する情報を抽出し、抽出されたパス選択ゲートに関する情報に基づいて、前記パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定し、設定された値の組合せに関する情報に基づいて、前記値の組合せが起こり得るか否かを判定し、判定された判定結果に基づいて、前記パス集合内のパスを、フォールスパスと決定することを特徴とする。
この発明にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムによれば、順序回路素子間のタイミング例外パスを効率良くかつ高精度で検出して設計期間の短縮化を図ることができるという効果を奏する。
以下に、添付図面を参照して、この発明にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムの好適な実施の形態を詳細に説明する。なお、下記の実施の形態にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムは、たとえば、この実施の形態にかかるタイミング例外パス検出プログラムが記録された記録媒体を備えるCADシステムによって実現することができる。
(実施の形態)
(タイミング例外パス検出装置のハードウェア構成)
まず、この発明の実施の形態にかかるタイミング例外パス検出装置のハードウェア構成について説明する。図1は、この発明の実施の形態にかかるタイミング例外パス検出装置のハードウェア構成を示すブロック図である。
図1において、タイミング例外パス検出装置は、CPU101と、ROM102と、RAM103と、HDD(ハードディスクドライブ)104と、HD(ハードディスク)105と、FDD(フレキシブルディスクドライブ)106と、着脱可能な記録媒体の一例としてのFD(フレキシブルディスク)107と、ディスプレイ108と、I/F(インターフェース)109と、キーボード110と、マウス111と、スキャナ112と、プリンタ113と、を備えている。また、各構成部はバス100によってそれぞれ接続されている。
ここで、CPU101は、タイミング例外パス検出装置の全体の制御を司る。ROM102は、ブートプログラムなどのプログラムを記憶している。RAM103は、CPU101のワークエリアとして使用される。HDD104は、CPU101の制御にしたがってHD105に対するデータのリード/ライトを制御する。HD105は、HDD104の制御で書き込まれたデータを記憶する。
FDD106は、CPU101の制御にしたがってFD107に対するデータのリード/ライトを制御する。FD107は、FDD106の制御で書き込まれたデータを記憶したり、FD107に記憶されたデータをタイミング例外パス検出装置に読み取らせたりする。
また、着脱可能な記録媒体として、FD107のほか、CD−ROM(CD−R、CD−RW)、MO、DVD(Digital Versatile Disk)、メモリーカードなどであっても良い。ディスプレイ108は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ108は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
I/F109は、通信回線115を通じてインターネットなどのネットワーク114に接続され、このネットワーク114を介して他の装置に接続される。そして、I/F109は、ネットワーク114と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F109には、たとえば、モデムやLANアダプタなどを採用することができる。
キーボード110は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであっても良い。マウス111は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであっても良い。
スキャナ112は、画像を光学的に読み取り、タイミング例外パス検出装置内に画像データを取り込む。なお、スキャナ112は、OCR機能を持たせても良い。また、プリンタ113は、画像データや文書データを印刷する。プリンタ113には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
(タイミング例外パス検出装置の機能的構成)
次に、この発明の実施の形態にかかるタイミング例外パス検出装置の機能的構成について説明する。図2は、この発明の実施の形態にかかるタイミング例外パス検出装置の機能的構成を示すブロック図である。
図2において、タイミング例外パス検出装置200は、入力部201と、選択部202と、算出部203と、分割部204と、マルチサイクルパス検出部205と、フォールスパス検出部206と、出力部207と、を備え、記憶装置208と、入出力装置209とに接続されている。このタイミング例外パス検出装置200は、記憶装置208に格納されたタイミング例外パス検出プログラムにしたがいタイミング例外パスの検出処理を実行するものである。
入力部201は、入出力装置209から、タイミング例外パスの検出対象回路に関する回路情報の入力を受け付ける。ここで、検出対象回路とは、製造すべきディジタル回路のことであり、検出対象回路に関する回路情報(以下、「回路情報」とする)とは、順序回路素子に関する情報や、順序回路素子間の接続に関する情報などが規定されたネットリストなどのことである。入力部201は、具体的には、たとえば、図1に示したI/F109によってその機能を実現する。
選択部202は、入力部201によって入力された回路情報に含まれている複数の順序回路素子(たとえば、記憶素子)の中から、任意の順序回路素子(以下、「第1の順序回路素子」とする)と、この第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する。選択部202は、具体的には、たとえば、図1に示したROM102、RAM103、HD105、FD107などの記録媒体に記録されているプログラムを、CPU101に実行させることによってその機能を実現する。
算出部203は、選択部202によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出する。ここで、値取込条件データとは、第2の順序回路素子について、マルチサイクルで値を取り込むために、回路情報中に割り当てる値などの条件からなるデータのことである。算出部203は、具体的には、たとえば、図1に示したROM102、RAM103、HD105、FD107などの記録媒体に記録されているプログラムを、CPU101に実行させることによってその機能を実現する。
分割部204は、選択部202によって選択された第1および第2の順序回路素子間の信号伝搬経路であるパス集合を、算出部203によって算出された値取込条件データと合致するパス集合(以下、「第1パス集合」とする)と、値取込条件データと合致しないパス集合(以下、「第2パス集合」とする)とにそれぞれ分割する。分割部204は、具体的には、たとえば、図1に示したROM102、RAM103、HD105、FD107などの記録媒体に記録されているプログラムを、CPU101に実行させることによってその機能を実現する。
マルチサイクルパス検出部205は、分割部204によって分割された第1パス集合について、第1パス集合内のすべてのパスが、マルチサイクルパスであるか否かを、値取込条件データのもとで第1および第2の順序回路素子間のパスベースのマルチサイクルパス解析を行い検出する。ここで、マルチサイクルパス解析は、公知のマルチサイクルパス解析方法などにより行われる。マルチサイクルパス検出部205は、具体的には、たとえば、図1に示したROM102、RAM103、HD105、FD107などの記録媒体に記録されているプログラムを、CPU101に実行させることによってその機能を実現する。
たとえば、ある順序回路素子の組合せ(A,B)について、A,B間のパスの始点(S)と、終点(E)での値変化の組合せ、(S,E)=(0→1,0→1)、(0→1,1→0)、(1→0,0→1)、(1→0,1→0)の各々に対して、その組合せが起こり得るかを調べることにより、A,B間のマルチサイクルパスを検出することができる。
フォールスパス検出部206は、分割部204によって分割された第2パス集合について、第2パス集合全体に対して、あるいは第2パス集合内の各々のパスに対して、フォールスパスか否かを、フォールスパス解析を行い検出する。フォールスパス検出部206は、具体的には、たとえば、図1に示したROM102、RAM103、HD105、FD107などの記録媒体に記録されているプログラムを、CPU101に実行させることによってその機能を実現する。
出力部207は、マルチサイクルパス検出部205によって検出されたマルチサイクルパスとしてのパス集合と、フォールスパス検出部206によって検出されたフォールスパスとしてのパス集合とを、タイミング例外パスとして、回路情報に関する出力情報(たとえば、タイミング例外パスリスト)を出力する。出力部207は、具体的には、たとえば、図1に示したI/F109によってその機能を実現する。
なお、記憶装置208は、具体的には、図1に示したROM102、RAM103、HDD104、HD105、FDD106およびFD107などにより構成され、入出力装置209は、具体的には、図1に示したキーボード110、マウス111、スキャナ112およびプリンタ113などにより構成されている。
(タイミング例外パス検出処理手順)
次に、この発明の実施の形態にかかるタイミング例外パス検出処理手順について説明する。図3は、この発明の実施の形態にかかるタイミング例外パス検出処理手順を示すフローチャートである。また、図4および図5は、この発明の実施の形態にかかるタイミング例外パス検出処理を説明するための回路図である。図3において、まず、入出力装置209から入力部201に回路情報CKTが入力される(ステップS301)。
入力部201に入力された回路情報CKTは、たとえば、図4に示すような構成からなる。すなわち、図4において、回路情報CKTには、順序回路素子として、複数の記憶素子であるフリップフロップ(以下、「FF」とする)1〜7と、パス選択ゲートであるマルチプレクサ(以下、「MUX」とする)1,2と、複数のインバータ(以下、「INV」とする)と、複数のANDゲート1〜4と、一つのORゲートとが記述され、これらは図中の信号線により接続されている。
ここで、回路情報CKTにおける順序回路のパスとは、外部入力端子またはFFの出力端子を始点として始まり、ゲートの入力端子と、ゲートの出力端子とが交互に現れ、最後に外部出力端子またはFFの入力端子を終点として終わる系列のことをいう。
そして、あるパスPに対して、パスP上の各ゲートの入力端子への入力信号のうち、パスP上の入力信号をオン入力といい、それ以外の入力信号をサイド入力という。また、ゲートの出力端子からの出力信号を一意に決めるゲート入力信号の値を制御値といい、制御値でない値を非制御値という。さらに、制御値により決まるゲート出力端子の出力信号の値を被制御値という。たとえば、AND(OR)ゲートにおける制御値は0(1)、非制御値は1(0)および被制御値は0(1)となる。
ステップS301において入力部201に回路情報CKTが入力されると、選択部202によって、入力された回路情報CKTに基づいて、複数のFFの中から、任意に選択されたFFと、このFFから伝搬される信号を入力するFFとで構成される一組のFF(以下、「FFペア」とする)のうち、未だ選択されていないFFペアが存在するか否かが検出される(ステップS302)。
このステップS302において、未選択のFFペアが存在すると判断された場合(ステップS302:Yes)、選択部202によって、未選択のFFペアの中から任意に1つのFFペア(FFs,FFe)が選択される(ステップS303)。一方、このステップS302において、未選択のFFペアが存在しないと判断された場合(ステップS302:No)、出力部207によって、タイミング例外パスリストLが入出力装置209に出力され(ステップS312)、タイミング例外パス検出処理が終了する。
選択部202によってFFペア(FFs,FFe)が選択されると、算出部203により、選択したFFペア(FFs,FFe)のパスの終点のFFであるFFeにおいて、マルチサイクルで値を取り込むための値取込条件データを算出するために、FFeのイネーブル端子へのイネーブル信号の入力値を時刻1のときに0と、時刻2のときに1となるようにそれぞれ設定する(ステップS304)。すなわち、FFeにおいて、時刻2ではマルチサイクルで値を取り込まず、時刻3のときにマルチサイクルで値を取り込むように、FFe.EN(1)←0,FFe.EN(2)←1と設定する。
こうして、ステップS304で設定したイネーブル信号の入力値から、算出部203によって、一意的に決まる回路情報CKT中の値割り当てを求めるために、含意操作を行う(ステップS305)。ここで、含意操作とは、割り当てられた値を伝搬させることにより、一意的に決められる回路情報CKT中の信号の値を可能な限り割り当てていく操作のことをいう。含意操作の途中で値割り当てに矛盾が生じた場合は、含意操作前に割り当てられた値の組合せが実際にはあり得ないことを示す。そして、この場合、そのような組合せに対してはマルチサイクルか否かを判断する必要がないことを意味する。
こうして、ステップS305の含意操作により求められた値割り当てのうち、算出部203によって、時刻2のときにFFペア(FFs,FFe)間のパスを選択する信号となっている値割り当てを、FFeの値取込条件データCと設定する(ステップS306)。ここで、回路情報CKT中の、ある所定のパス集合内のパスを選択する制御信号とは、MUX1,2のD0入力端子およびD1入力端子が、ともにそのパス集合内のパスが通過するような制御信号の入力端子となるか、あるいはそれと意味的に等価な制御信号のことであり、その信号の値が1のときに所定のパス集合内のあるパスを選択し、0のときに別のパスを選択する機能を持つ入力信号のことである。
すなわち、ステップS306によって、FFペア(FFs,FFe)間のパスの選択にのみ関する値取込条件データCが設定される。そして、算出部203によって設定された値取込条件データCに基づいて、分割部204により、FFペア(FFs,FFe)間の複数のパスからなるパス集合を、値取込条件データCと合致する第1パス集合としてのパス集合Mと、値取込条件データCと合致しない第2パス集合としてのパス集合Fとに分割し、分割されたパス集合M,Fのうちのパス集合Mを求める(ステップS307)。
こうして、分割部204によって求められたパス集合Mに対し、マルチサイクルパス検出部205により、ステップS306において求められた値取込条件データCの値割り当てのもとで、FFペアベースのマルチサイクルパスの検出を行う(ステップS308)。なお、マルチサイクルパスとは、あるパスPを通る信号が、始点から終点まで1クロックで到達する必要がないときのパスをいう。
このステップS308におけるマルチサイクルパスの検出は、FFペアベースによるマルチサイクルパスの検出に、値取込条件データCを付加して行われるため、FFペア(FFs,FFe)間のパス集合のうち、一部のパスのみがマルチサイクルパスである場合においてもマルチサイクルパスを検出することができる。
そして、マルチサイクルパス検出部205によるステップS308において、パス集合Mがマルチサイクルパスであると判断された場合(ステップS309:Yes)、出力部207により、パス集合Mをタイミング例外パスリストLに追加する(ステップS310)。一方、マルチサイクルパス検出部205によるステップS308において、パス集合Mがマルチサイクルパスでないと判断された場合(ステップS309:No)、次のステップS311に移行する。
ここでは、分割部204によって求められたパス集合M以外のパス集合Fに対し、フォールスパス検出部206により、パス集合F内のパスを選択するすべてのゲートの入力端子へのサイド入力の組合せのうち、値取込条件データC以外の組合せの各々について、その組合せが表すパス集合Fがフォールスパスであるか否かを、その組合せが起こり得るかどうかにより調べ、起こり得ないときにパス集合Fをフォールスパスとして、出力部207により、タイミング例外パスリストLに追加する(ステップS311)。なお、フォールスパスとは、回路の遅延に影響を与えないパスのことをいう。こうして、フォールスパス検出部206によってステップS311での処理が終了すると、ステップS302に戻り、ステップS302からステップS311の処理が繰り返される。
ここで、フォールスパス検出部206でのフォールスパス検出の処理を含め、タイミング例外パス検出処理手順をさらに詳細に説明する。図6は、この発明の実施の形態にかかるタイミング例外パス検出処理におけるフォールスパス検出部の機能的構成を示すブロック図である。また、図7は、この発明の実施の形態にかかるタイミング例外パス検出処理におけるフォールスパス検出部のフォールスパス検出処理手順を詳細に示すフローチャートである。
図6において、フォールスパス検出部206は、抽出部601と、設定部602と、判定部603と、決定部604と、を備えて構成されている。なお、フォールスパス検出部206の抽出部601、設定部602、判定部603および決定部604は、具体的には、たとえば、図1に示したROM102、RAM103、HD105、FD107などの記録媒体に記録されているプログラムを、CPU101に実行させることによってその機能を実現する。
抽出部601は、上記分割部204によって分割されたパス集合F内の任意のパスPの選択を行うパス選択ゲート(たとえば、MUX1,2、図4および図5参照)に関する情報を抽出する。設定部602は、抽出部601によって抽出されたパス選択ゲートに関する情報に基づいて、パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定する。ここで、制御信号がとり得る値とは、パス選択ゲートの制御入力端子への制御信号の入力信号がとり得る制御値のことである。
判定部603は、設定部602によって設定された値の組合せに関する情報に基づいて、これらの値の組合せが起こり得るか否かを判定する。そして、決定部604は、判定部603によって判定された、値の組合せが起こり得るか否かの判定結果に基づいて、パス集合F内のパスPを、フォールスパスと決定する。
すなわち、図3のフローチャートにおけるステップS311において、図7に示すように、フォールスパス検出部206に入力された、分割部204によって求められたパス集合M以外のFFペア(FFs,FFe)間のパス集合Fに対し、パス集合F上のパスを選択するパス選択ゲート、たとえば、マルチプレクサ(以下、「MUX」とする)を求める(ステップS701)。
次に、ステップS701で求められたMUXに基づいて、FFペア(FFs,FFe)間のパス集合Fを、MUX以外のゲート(たとえば、AND(OR)ゲート)を無視したMUXパスのパス集合Piに変換する(ステップS702)。すなわち、パス集合Fをパス集合Piに変換するとは、パス集合Fから、MUXのみを抽出し、MUXパスのパス集合Piを生成することである。
ステップS702によってパス集合Piが求められた後、フォールスパス検出部206によって、パス集合Pi内に未だ選択されていないMUXパスが存在するか否かが検出される(ステップS703)。このステップS703において、未選択のMUXパスが存在すると判断された場合(ステップS703:Yes)、パス集合Piの中から任意に一つのMUXパスPが選択される(ステップS704)。一方、このステップS703において、未選択のMUXパスが存在しないと判断された場合(ステップS703:No)、図3のフローチャートにおけるステップS311での処理が終了し、ステップS302からステップS311の処理が繰り返される。
ステップS704において、MUXパスPが選択されると、このMUXパスP上に未だ選択されていないMUXが存在するか否かが検出される(ステップS705)。このステップS705において、未選択のMUXが存在すると判断された場合(ステップS705:Yes)、フォールスパス検出部206の抽出部601によって、未選択のMUXの中から任意の一つのMUXGが選択される(ステップS706)。
こうして、抽出部601によってMUXGが抽出されると、設定部602により、MUXパスPがMUXGのD1入力端子を通るパスか、D0入力端子を通るパスかにしたがい、抽出されたMUXGを制御する制御入力端子への入力信号の値(制御値)が設定され(ステップS707)、ステップS705に戻って未選択のMUXが存在するか否かの検出が行われる。
一方、ステップS705において、未選択のMUXが存在しないと判断された場合(ステップS705:No)、ステップS708に移行して、判定部603による判定が行われる。すなわち、判定部603において、設定部602により設定された制御値に基づき、MUXパスP上の各MUXの制御入力端子への入力信号として割り当てた値が、実際に起こり得るか否かが判定される(ステップS708)。
このステップS708において、割り当てた値が起こり得ると判定された場合(ステップS708:Yes)、ステップS703に戻り、ステップS703からステップS708までの処理が繰り返される。一方、ステップS708において、割り当てた値が起こり得ないと判定された場合(ステップS708:No)、判定部603からの判定結果に基づいて、決定部604により、MUXパスPに対応するパス集合F内のパスを、フォールスパスとしてタイミング例外パスリストLに追加する(ステップS709)。こうして、ステップS709での処理が終了すると、ステップS703に戻り、ステップS703からステップS709までの処理が繰り返される。
ここで、タイミング例外パス検出処理手順について、図4の回路図を用いてさらに具体的に説明する。図4における回路は、回路上のMULT入力端子への入力信号の値が、MULT=(0)のときにADD(加算)処理を1クロックサイクルで行い、MULT=(1)のときにMULT(乗算)処理を2クロックサイクルで行うものである。
まず、図3のフローチャートにおけるステップS301において、入力部201に図4に示す回路の回路情報CKTが入力されたと仮定する。また、ステップS303において、FFペア(FFs,FFe)としてFF1およびFF4が選択されたと仮定する。選択部202によってFFペア(FF1,FF4)が選択されると、ステップS304において、算出部203により、値取込条件データを算出するためにFF4のイネーブル端子へのイネーブル信号の入力値を、FF4.EN(1)←0,FF4.EN(2)←1と設定する。
算出部203によってFF4のイネーブル端子へのイネーブル信号の入力値が設定されると、ステップS305において、値割り当ての含意操作が行われる。図5に示す回路は、この含意操作の結果を図4の回路に反映させたものである。なお、図5において、各信号線上の数値は、その信号線に割り当てられた値を示し、カッコ内の数値は時刻を示すものである。たとえば、FF7のQ出力端子の近傍にある「1(2)」の数値は、時刻2のときにFF7のQ出力端子からの出力信号の値が1(FF7.Q=1)であることを表している。
算出部203によって各信号線に値割り当ての含意操作が行われると、次いで、ステップS306において、FFペア(FF1,FF4)間のパスを選択する信号になっている値割り当てを、値取込条件データCと設定する。図5の場合、MUX2のセレクタ(以下、「C」とする)入力端子への入力信号が、FF1からFF4へのパスを選択する信号であることが分かるので、MUX2.C(2)=1という条件を、FF4においてマルチサイクルで値を取り込む値取込条件データCと設定する。なお、設定された値取込条件データC(MUX2.C(2)=1)は、回路上のMULT入力端子への入力信号の値が、MULT(0)=1に対応しているため、MULTを行うときの乗算条件が正しく設定されていることが分かる。
この値取込条件データC(MUX2.C(2)=1)は、MUX2のD1入力端子への入力信号を選択することを意味するので、この値取込条件データCに基づいて、ステップS307において、分割部204により、FFペア(FF1,FF4)間のパス集合から、MUX2のD1入力端子を通過点とするパス集合をパス集合Mとして、また、MUX2のD0入力端子を通過点とするパス集合をパス集合Fとして、それぞれ分割する。
そして、分割部204によって分割されたパス集合Mについて、ステップS308において、マルチサイクルパス検出部205により、値取込条件データC(MUX2.C(2)=1)を割り当てた状態のもとで、FFペアベースのマルチサイクルパスの検出が行われる。この場合、分割されたFFペア(FF1,FF4)間のパス集合Mは、値取込条件データC(MUX2.C(2)=1)と合致するため、ステップS309において、パス集合Mが、すべてマルチサイクルパスであることが検出される。これにより、FFペア(FF1,FF4)間でMUX2のD1入力端子を通るパスは、すべてマルチサイクルパスであることが判明する。
一方、ステップS307において、分割部204により、FFペア(FF1,FF4)間のパス集合から分割されたパス集合Fは、ステップS311において、フォールスパス検出部206により、上述したフォールスパスの検出が行われる。ここで、パス集合Fは、MUX2のD0入力端子を通るパスであり、図5においては、ANDゲート2を通るパスと、ANDゲート3を通るパスとの2つが存在する。すなわち、図5の回路では、これらANDゲート1および2を通るパスが、D0入力端子およびD1入力端子の両入力端子を通る条件のMUX1および2は存在しないため、フォールスパス検出部206によって、これらのパスはフォールスパスではないと判断され、タイミング例外パスリストLへの追加は行われないこととなる。
図8は、この発明の実施の形態にかかるタイミング例外パス検出処理に用いられる回路情報における他のパス選択ゲートの構成を示す回路図である。上述した実施の形態では、パス選択ゲートとしてMUXを用いたが、たとえば、図8に示すように、MUXの代わりに、2つのANDゲート5,6と、一つのINVと、一つのORゲートと、から構成されるパス選択ゲートを用いても良い。
以上説明したように、この発明の実施の形態にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムによれば、検出対象回路に含まれる順序回路素子間のパス集合からマルチサイクルに関する値取込条件データと合致するパス集合を分割し、分割されたパス集合内のすべてのパスについて、マルチサイクルパスか否かを検出する。このため、順序回路素子間のパスがすべてマルチサイクルパスではない場合でもマルチサイクルパスを効率良く検出することができる。また、順序回路素子間のパスをパス集合のまま検出するため、計算時間の増大を抑えることができる。
また、この発明の実施の形態にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムによれば、検出対象回路に含まれる順序回路素子間のパス集合からマルチサイクルに関する値取込条件データと合致しないパス集合を分割し、分割されたパス集合内の各々のパスについて、フォールスパスか否かを検出する。このため、順序回路素子間のパスをパス集合のまま効率良く検出することができるとともに、順序回路素子間においてマルチサイクルで値を取り込まないパス集合に対してのみフォールスパスの検出を高精度ですることができるため、計算時間の増大を抑えることができる。
さらに、この発明の実施の形態にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムによれば、検出対象回路に含まれる順序回路素子間のパス集合からマルチサイクルに関する値取込条件データと合致しないパス集合を分割し、分割されたパス集合内のパス選択ゲートに関する情報を抽出し、抽出されたパス選択ゲートに関する情報に基づき、パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定し、設定された値の組合せに関する情報に基づき、値の組合せが起こり得るか否かを判定し、判定結果に基づき、バス集合内のパスをフォールスパスと決定する。このため、順序回路素子間のパスをパス集合のまま効率良く検出することができるとともに、順序回路素子間においてマルチサイクルで値を取り込まないパス集合に対しても、同時に、パス集合のまま効率良くフォールスパスの検出を高精度ですることができるため、計算時間の増大を抑えることができる。
以上のように、この発明の実施の形態にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムによれば、順序回路素子間のタイミング例外パスを効率良くかつ高精度で検出して設計期間の短縮化を図ることができるという効果を奏する。
なお、本実施の形態で説明したタイミング例外パス検出方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション、CAD等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
(付記1)タイミング例外パスの検出対象回路に関する回路情報の入力を受け付ける入力手段と、
前記入力手段によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択手段と、
前記選択手段によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出する算出手段と、
前記選択手段によって選択された第1および第2の順序回路素子間のパス集合から、前記算出手段によって算出された値取込条件データと合致するパス集合を分割する分割手段と、
前記分割手段によって分割されたパス集合内のすべてのパスが、マルチサイクルパスか否かを検出する検出手段と、
を備えることを特徴とするタイミング例外パス検出装置。
(付記2)タイミング例外パスの検出対象回路に関する回路情報の入力を受け付ける入力手段と、
前記入力手段によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択手段と、
前記選択手段によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出する算出手段と、
前記選択手段によって選択された第1および第2の順序回路素子間のパス集合から、前記算出手段によって算出された値取込条件データと合致しないパス集合を分割する分割手段と、
前記分割手段によって分割されたパス集合内の各々のパスが、フォールスパスか否かを検出する検出手段と、
を備えることを特徴とするタイミング例外パス検出装置。
(付記3)タイミング例外パスの検出対象回路に関する回路情報の入力を受け付ける入力手段と、
前記入力手段によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択手段と、
前記選択手段によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出する算出手段と、
前記選択手段によって選択された第1および第2の順序回路素子間のパス集合から、前記算出手段によって算出された値取込条件データと合致しないパス集合を分割する分割手段と、
前記分割手段によって分割されたパス集合内の任意のパスの選択を行うパス選択ゲートに関する情報を抽出する抽出手段と、
前記抽出手段によって抽出されたパス選択ゲートに関する情報に基づいて、前記パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定する設定手段と、
前記設定手段によって設定された値の組合せに関する情報に基づいて、前記値の組合せが起こり得るか否かを判定する判定手段と、
前記判定手段によって判定された判定結果に基づいて、前記パス集合内のパスを、フォールスパスと決定する決定手段と、
を備えることを特徴とするタイミング例外パス検出装置。
(付記4)前記分割手段は、前記第1および第2の順序回路素子間のパスの集合から、前記値取込条件データと合致しないパス集合をさらに分割することを特徴とする付記1に記載のタイミング例外パス検出装置。
(付記5)前記検出手段は、前記分割手段によって分割された、前記値取込条件データと合致しないパス集合内の各々のパスが、フォールスパスか否かを検出することを特徴とする付記4に記載のタイミング例外パス検出装置。
(付記6)前記分割されたパス集合内の任意のパスの選択を行うパス選択ゲートに関する情報を抽出する抽出手段と、
前記抽出手段によって抽出されたパス選択ゲートに関する情報に基づいて、前記パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定する設定手段と、
前記設定手段によって設定された値の組合せに関する情報に基づいて、前記値の組合せが起こり得るか否かを判定する判定手段と、
前記判定手段によって判定された判定結果に基づいて、前記パス集合内のパスを、フォールスパスと決定する決定手段と、
をさらに備えることを特徴とする付記1に記載のタイミング例外パス検出装置。
(付記7)タイミング例外パスの検出対象回路に関する回路情報を入力する入力工程と、
前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択工程と、
前記選択工程によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出する算出工程と、
前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致するパス集合を分割する分割工程と、
前記分割工程によって分割されたパス集合内のすべてのパスが、マルチサイクルパスか否かを検出する検出工程と、
を含んだことを特徴とするタイミング例外パス検出方法。
(付記8)タイミング例外パスの検出対象回路に関する回路情報を入力する入力工程と、
前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択工程と、
前記選択工程によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出する算出工程と、
前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致しないパス集合を分割する分割工程と、
前記分割工程によって分割されたパス集合内の各々のパスが、フォールスパスか否かを検出する検出工程と、
を含んだことを特徴とするタイミング例外パス検出方法。
(付記9)タイミング例外パスの検出対象回路に関する回路情報を入力する入力工程と、
前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択工程と、
前記選択工程によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出する算出工程と、
前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致しないパス集合を分割する分割工程と、
前記分割工程によって分割されたパス集合内の任意のパスの選択を行うパス選択ゲートに関する情報を抽出する抽出工程と、
前記抽出工程によって抽出されたパス選択ゲートに関する情報に基づいて、前記パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定する設定工程と、
前記設定工程によって設定された値の組合せに関する情報に基づいて、前記値の組合せが起こり得るか否かを判定する判定工程と、
前記判定工程によって判定された判定結果に基づいて、前記パス集合内のパスを、フォールスパスと決定する決定工程と、
を含んだことを特徴とするタイミング例外パス検出方法。
(付記10)タイミング例外パスの検出対象回路に関する回路情報を入力させる入力工程と、
前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択させる選択工程と、
前記選択工程によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出させる算出工程と、
前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致するパス集合を分割させる分割工程と、
前記分割工程によって分割されたパス集合内のすべてのパスが、マルチサイクルパスか否かを検出させる検出工程と、
をコンピュータに実行させることを特徴とするタイミング例外パス検出プログラム。
(付記11)タイミング例外パスの検出対象回路に関する回路情報を入力させる入力工程と、
前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択させる選択工程と、
前記選択工程によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出させる算出工程と、
前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致しないパス集合を分割させる分割工程と、
前記分割工程によって分割されたパス集合内の各々のパスが、フォールスパスか否かを検出させる検出工程と、
をコンピュータに実行させることを特徴とするタイミング例外パス検出プログラム。
(付記12)タイミング例外パスの検出対象回路に関する回路情報を入力させる入力工程と、
前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択させる選択工程と、
前記選択工程によって選択された第2の順序回路素子における、マルチサイクルに関する値取込条件データを算出させる算出工程と、
前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致しないパス集合を分割させる分割工程と、
前記分割工程によって分割されたパス集合内の任意のパスの選択を行うパス選択ゲートに関する情報を抽出させる抽出工程と、
前記抽出工程によって抽出されたパス選択ゲートに関する情報に基づいて、前記パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定させる設定工程と、
前記設定工程によって設定された値の組合せに関する情報に基づいて、前記値の組合せが起こり得るか否かを判定させる判定工程と、
前記判定工程によって判定された判定結果に基づいて、前記パス集合内のパスを、フォールスパスと決定させる決定工程と、
をコンピュータに実行させることを特徴とするタイミング例外パス検出プログラム。
以上のように、本発明にかかるタイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラムは、検出対象回路の回路情報に含まれている順序回路素子間のタイミング例外パスの検出を行う各種の用途に利用できる。
この発明の実施の形態にかかるタイミング例外パス検出装置のハードウェア構成を示すブロック図である。 この発明の実施の形態にかかるタイミング例外パス検出装置の機能的構成を示すブロック図である。 この発明の実施の形態にかかるタイミング例外パス検出処理手順を示すフローチャートである。 この発明の実施の形態にかかるタイミング例外パス検出処理を説明するための回路図である。 この発明の実施の形態にかかるタイミング例外パス検出処理を説明するための回路図である。 この発明の実施の形態にかかるタイミング例外パス検出処理におけるフォールスパス検出部の機能的構成を示すブロック図である。 この発明の実施の形態にかかるタイミング例外パス検出処理におけるフォールスパス検出部のフォールスパス検出処理手順を詳細に示すフローチャートである。 この発明の実施の形態にかかるタイミング例外パス検出処理に用いられる回路情報における他のパス選択ゲートの構成を示す回路図である。
符号の説明
200 タイミング例外パス検出装置
201 入力部
202 選択部
203 算出部
204 分割部
205 マルチサイクルパス検出部
206 フォールスパス検出部
207 出力部
601 抽出部
602 設定部
603 判定部
604 決定部

Claims (5)

  1. タイミング例外パスの検出対象回路に関する回路情報の入力を受け付ける入力手段と、
    前記入力手段によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択手段と、
    前記選択手段によって選択された第2の順序回路へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データに設定する算出手段と、
    前記選択手段によって選択された第1および第2の順序回路素子間のパス集合から、前記算出手段によって算出された値取込条件データと合致するパス集合を分割する分割手段と、
    前記分割手段によって分割されたパス集合内のすべてのパスが、マルチサイクルパスか否かを検出する検出手段と、
    を備えることを特徴とするタイミング例外パス検出装置。
  2. 入力手段、選択手段、算出手段、分割手段および検出手段を備えるタイミング例外パス検出装置が、
    前記入力手段により、タイミング例外パスの検出対象回路に関する回路情報を入力する入力工程と、
    前記選択手段により、前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択する選択工程と、
    前記算出手段により、前記選択工程によって選択された第2の順序回路素子へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データをに設定する算出工程と、
    前記分割手段により、前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致するパス集合を分割する分割工程と、
    前記検出手段により、前記分割工程によって分割されたパス集合内のすべてのパスが、マルチサイクルパスか否かを検出する検出工程と、
    実行することを特徴とするタイミング例外パス検出方法。
  3. タイミング例外パスの検出対象回路に関する回路情報を入力させる入力工程と、
    前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択させる選択工程と、
    前記選択工程によって選択された第2の順序回路素子へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データに設定させる算出工程と、
    前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致するパス集合を分割させる分割工程と、
    前記分割工程によって分割されたパス集合内のすべてのパスが、マルチサイクルパスか否かを検出させる検出工程と、
    をコンピュータに実行させることを特徴とするタイミング例外パス検出プログラム。
  4. タイミング例外パスの検出対象回路に関する回路情報を入力させる入力工程と、
    前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択させる選択工程と、
    前記選択工程によって選択された第2の順序回路素子へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データに設定させる算出工程と、
    前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致しないパス集合を分割させる分割工程と、
    前記分割工程によって分割されたパス集合内の各々のパスが、フォールスパスか否かを検出させる検出工程と、
    をコンピュータに実行させることを特徴とするタイミング例外パス検出プログラム。
  5. タイミング例外パスの検出対象回路に関する回路情報を入力させる入力工程と、
    前記入力工程によって入力された回路情報に含まれている複数の順序回路素子の中から、任意の順序回路素子(以下、「第1の順序回路素子」という)と、当該第1の順序回路素子から伝搬される信号を入力する第2の順序回路素子とを選択させる選択工程と、
    前記選択工程によって選択された第2の順序回路素子へのイネーブル信号の入力値をマルチサイクルで値を取り込むように設定し、当該入力値の含意操作により値割り当てを求め、当該値割り当ての中からマルチサイクルで値を取り込む時刻のときに前記第1および第2の順序回路素子間のパスを選択する信号となる値割り当てを、前記第2の順序回路素子のマルチサイクルに関する値取込条件データに設定させる算出工程と、
    前記選択工程によって選択された第1および第2の順序回路素子間のパス集合から、前記算出工程によって算出された値取込条件データと合致しないパス集合を分割させる分割工程と、
    前記分割工程によって分割されたパス集合内の任意のパスの選択を行うパス選択ゲートに関する情報を抽出させる抽出工程と、
    前記抽出工程によって抽出されたパス選択ゲートに関する情報に基づいて、前記パス選択ゲートを制御する制御信号がとり得る値の組合せに関する情報を設定させる設定工程と、
    前記設定工程によって設定された値の組合せに関する情報に基づいて、前記値の組合せが起こり得るか否かを判定させる判定工程と、
    前記判定工程によって判定された判定結果に基づいて、前記パス集合内のパスを、フォールスパスと決定させる決定工程と、
    をコンピュータに実行させることを特徴とするタイミング例外パス検出プログラム。
JP2004337832A 2004-11-22 2004-11-22 タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム Expired - Fee Related JP4217204B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004337832A JP4217204B2 (ja) 2004-11-22 2004-11-22 タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム
US11/063,773 US7299437B2 (en) 2004-11-22 2005-02-24 Method and apparatus for detecting timing exception path and computer product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004337832A JP4217204B2 (ja) 2004-11-22 2004-11-22 タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム

Publications (2)

Publication Number Publication Date
JP2006146711A JP2006146711A (ja) 2006-06-08
JP4217204B2 true JP4217204B2 (ja) 2009-01-28

Family

ID=36575780

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004337832A Expired - Fee Related JP4217204B2 (ja) 2004-11-22 2004-11-22 タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム

Country Status (2)

Country Link
US (1) US7299437B2 (ja)
JP (1) JP4217204B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080201671A1 (en) * 2007-02-16 2008-08-21 Atrenta, Inc. Method for generating timing exceptions
US7650581B2 (en) * 2007-05-15 2010-01-19 Atrenta, Inc. Method for modeling and verifying timing exceptions
US8560988B2 (en) 2010-08-13 2013-10-15 Atrenta, Inc. Apparatus and method thereof for hybrid timing exception verification of an integrated circuit design

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5633812A (en) * 1992-09-29 1997-05-27 International Business Machines Corporation Fault simulation of testing for board circuit failures
US5452239A (en) * 1993-01-29 1995-09-19 Quickturn Design Systems, Inc. Method of removing gated clocks from the clock nets of a netlist for timing sensitive implementation of the netlist in a hardware emulation system
US5544175A (en) * 1994-03-15 1996-08-06 Hewlett-Packard Company Method and apparatus for the capturing and characterization of high-speed digital information
JPH11232135A (ja) * 1998-02-10 1999-08-27 Mitsubishi Electric Corp 半導体装置
US6966021B2 (en) * 1998-06-16 2005-11-15 Janusz Rajski Method and apparatus for at-speed testing of digital circuits
US7085688B1 (en) * 1999-10-22 2006-08-01 Shizuo Sumida Non-linear characteristic reproducing apparatus and non-linear characteristic reproducing program storage medium
US6624829B1 (en) * 1999-10-29 2003-09-23 Agilent Technologies, Inc. System and method for specifying trigger conditions of a signal measurement system using hierarchical structures on a graphical user interface
US6813739B1 (en) * 2000-04-04 2004-11-02 Silicon Graphics, Inc. Scan interface chip (SIC) system and method for scan testing electronic systems
US7219284B2 (en) * 2000-12-01 2007-05-15 Texas Instruments Incorporated Decode logic selecting IC scan path parts
JP4004780B2 (ja) 2001-11-20 2007-11-07 富士通株式会社 論理回路のタイミング解析プログラム、タイミング解析方法および記録媒体
US7173431B1 (en) * 2002-06-07 2007-02-06 Marvell International Ltd. Cable tester
JP4083544B2 (ja) 2002-11-18 2008-04-30 富士通株式会社 マルチサイクルパス解析方法
JP4030880B2 (ja) * 2003-01-07 2008-01-09 Necインフロンティア株式会社 同期用クロック供給システムおよび同期用クロック供給方法
US7096144B1 (en) * 2004-08-09 2006-08-22 T-Ram, Inc. Digital signal sampler

Also Published As

Publication number Publication date
US20060123274A1 (en) 2006-06-08
US7299437B2 (en) 2007-11-20
JP2006146711A (ja) 2006-06-08

Similar Documents

Publication Publication Date Title
US7895552B1 (en) Extracting, visualizing, and acting on inconsistencies between a circuit design and its abstraction
JP4217220B2 (ja) 検証支援プログラムおよび検証支援装置
US10078714B2 (en) Data propagation analysis for debugging a circuit design
US7779377B2 (en) Method and apparatus for aiding verification of circuit, and computer product
US7493578B1 (en) Correlation of data from design analysis tools with design blocks in a high-level modeling system
JP4261502B2 (ja) 検証支援装置、検証支援方法、検証支援プログラム、および記録媒体
US7888971B2 (en) Verification support system and method
JP2008123056A (ja) 論理回路のタイミング制約生成システムおよび論理回路のタイミング制約生成方法、制御プログラム、可読記録媒体
US8069026B2 (en) Clock gating analyzing apparatus, clock gating analyzing method, and computer product
JP4217204B2 (ja) タイミング例外パス検出装置、タイミング例外パス検出方法およびタイミング例外パス検出プログラム
JP2006201980A (ja) カバレッジ評価装置、カバレッジ評価方法、カバレッジ評価プログラム、および記録媒体
US8024684B2 (en) Apparatus, method, and computer product for estimating power consumption of LSI
US20100269003A1 (en) Delay fault diagnosis program
JP2007271290A (ja) 故障解析プログラム、該プログラムを記録した記録媒体、故障解析方法、および故障解析装置
JP4649356B2 (ja) 消費電力算出プログラム、記録媒体、消費電力算出方法、および消費電力算出装置
JP2008243092A (ja) マルチサイクルパス検出装置、マルチサイクルパス検出方法及びマルチサイクルパス検出プログラム
JP2009076679A (ja) 設計支援プログラム、該プログラムを記録したコンピュータに読み取り可能な記録媒体、設計支援装置、および設計支援方法
JP4682059B2 (ja) フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法
JP4351245B2 (ja) 遅延解析プログラム、該プログラムを記録した記録媒体、遅延解析装置および遅延解析方法
JP4275636B2 (ja) 検証支援装置、検証支援方法、検証支援プログラム、および記録媒体
JP2008004024A (ja) レイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法
JP4747036B2 (ja) Lsi解析プログラム、該プログラムを記録した記録媒体、lsi解析装置、およびlsi解析方法
JP5293461B2 (ja) スキャンチェーンの生成方法、スキャンチェーンの生成プログラムおよび集積回路
JP4985211B2 (ja) 論理回路のシミュレーション
JP2007257375A (ja) 遅延解析プログラム、記録媒体、遅延解析方法、および遅延解析装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080805

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080926

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081104

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: 20081107

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: 20111114

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111114

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131114

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees