JP3047884B2 - Logic synthesis method and apparatus - Google Patents

Logic synthesis method and apparatus

Info

Publication number
JP3047884B2
JP3047884B2 JP10078918A JP7891898A JP3047884B2 JP 3047884 B2 JP3047884 B2 JP 3047884B2 JP 10078918 A JP10078918 A JP 10078918A JP 7891898 A JP7891898 A JP 7891898A JP 3047884 B2 JP3047884 B2 JP 3047884B2
Authority
JP
Japan
Prior art keywords
flip
flop
net
flops
delay constraint
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
JP10078918A
Other languages
Japanese (ja)
Other versions
JPH11282887A (en
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP10078918A priority Critical patent/JP3047884B2/en
Publication of JPH11282887A publication Critical patent/JPH11282887A/en
Application granted granted Critical
Publication of JP3047884B2 publication Critical patent/JP3047884B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、一般的には回路設
計における論理合成装置および方法に関し、特にクロッ
ク指定されていない任意の信号がクロックピンに入力さ
れる2個のフリップフロップ間において、データのホー
ルドを保証する回路を、特別な操作をすることなく自動
的に生成することのできる論理合成装置および方法を提
供することにある。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention generally relates to a logic synthesizing apparatus and method in circuit design, and more particularly, to a data synthesizing method between two flip-flops in which an arbitrary signal not specified by a clock is input to a clock pin. It is an object of the present invention to provide a logic synthesizing device and a method capable of automatically generating a circuit for guaranteeing the hold of the data without special operation.

【0002】[0002]

【従来の技術】コンピュータによる現在の設計自動化技
術は、ハードウェア動作をHDL(Hardware
Description Language)で記述
し、検証した後、合成ツールで論理合成することにより
行われている。また、現在、合成可能なHDL記述は、
ほとんどの場合、レジスタ位置やクロックを明確に定義
するRTL(Register Transfer L
evel)である。
2. Description of the Related Art The current design automation technology by a computer uses a hardware operation such as HDL (Hardware).
This is performed by describing and verifying in a description language (Description Language), and then performing logical synthesis using a synthesis tool. Currently, the HDL description that can be synthesized is
In most cases, RTL (Register Transfer L) that clearly defines register locations and clocks
evel).

【0003】このような自動設計技術により同期式の順
序回路を設計するとき、図1に示すようにフリップフロ
ップである2個のセルに同じクロックが入力される場
合、フリップフロップ(以下、F/Fと略記することも
ある)間の最小遅延量が次段のF/Fのホールド時間よ
り小さいと、次段のF/Fでデータの“つつ抜け”、す
なわちホールドタイミングエラーが発生する回路が設計
されてしまう。このような場合、F/F間に遅延素子を
挿入するという人手による修正が必要になるという問題
があった。
When a synchronous sequential circuit is designed by such an automatic design technique, when the same clock is input to two cells which are flip-flops as shown in FIG. If the minimum delay time during the following stage is shorter than the hold time of the next stage F / F, a circuit that causes a “fall through” of data at the next stage F / F, that is, a hold timing error occurs. It will be designed. In such a case, there is a problem that a manual correction of inserting a delay element between the F / F is required.

【0004】このような問題を避けるため、従来の論理
合成では、図2に示すように、HDLを入力し、合
成を実行して、ネットリストを出力する手順で回路の
生成を行い、の合成において、クロック指定された信
号がクロックピンに入力されるフリップフロップにおい
ては、フリップフロップ間の最小遅延保証が行われてい
た。
In order to avoid such a problem, in the conventional logic synthesis, as shown in FIG. 2, a circuit is generated in a procedure of inputting HDL, executing synthesis, and outputting a netlist. In the above, in a flip-flop in which a clock-specified signal is input to a clock pin, a minimum delay between flip-flops is guaranteed.

【0005】なお、上記の手順では、最大遅延指定箇
所の最小遅延保証を行っている。ここに、最大遅延と
は、入力が到着しF/Fの出力である信号値が確定する
時間であり、同期順序回路が正しく動作するためには、
最小遅延は、F/Fのホールド時間よりも大きくし(最
小遅延制約)、最大遅延はクロック周期からF/Fのセ
ットアップ時間を差し引いた時間よりも小さくなければ
ならない(最大遅延制約)。図2の従来技術では、最大
遅延がすでに満たされていることを前提としている。
[0005] In the above procedure, the minimum delay is guaranteed at the position where the maximum delay is specified. Here, the maximum delay is the time when the input arrives and the signal value which is the output of the F / F is determined. In order for the synchronous sequential circuit to operate correctly,
The minimum delay must be greater than the hold time of the F / F (minimum delay constraint), and the maximum delay must be less than the clock period minus the setup time of the F / F (maximum delay constraint). The prior art of FIG. 2 assumes that the maximum delay has already been met.

【0006】ホールドタイミングエラーの問題は、特開
平9−54796号公報「論理回路レイアウトデータ作
成装置」に記載されている。この公報に記載の技術によ
れば、論理合成装置(論理回路レイアウトデータ作成装
置)において、抽出された各遅延情報に基づきホールド
タイミングエラーが発生するか否かを判断し、前段のF
/Fのクロック入力端子に供給するクロック信号の遅延
量を増加させることによって前記の問題の解決を図って
いる。
The problem of the hold timing error is described in Japanese Patent Application Laid-Open No. 9-54796, entitled "Logic Circuit Layout Data Creation Apparatus". According to the technique described in this publication, a logic synthesis device (logic circuit layout data creation device) determines whether or not a hold timing error occurs based on each extracted delay information,
The above problem is solved by increasing the amount of delay of the clock signal supplied to the clock input terminal of / F.

【0007】[0007]

【発明が解決しようとする課題】図2で説明した従来技
術では、フリップフロップのクロックピンには、クロッ
ク指定された信号が入力されることを前提としている。
したがって、クロックピンにクロック指定されていない
任意の信号が入力される場合には、最小遅延保証が行わ
れないので、ホールドタイミングエラーが生じる回路が
合成されることになる。
In the prior art described with reference to FIG. 2, it is assumed that a signal designated by a clock is input to a clock pin of a flip-flop.
Therefore, when an arbitrary signal not specified by the clock is input to the clock pin, the minimum delay is not guaranteed, and a circuit in which a hold timing error occurs is synthesized.

【0008】また、前記した特開平9−54796号公
報に記載の技術を、F/Fのクロックピンには、クロッ
ク指定された信号が入力されることを前提としている。
したがって、この方法においても、クロック指定されて
いない任意の信号に対しては遅延量を増大させることは
できない。
The technique described in the above-mentioned Japanese Patent Application Laid-Open No. 9-54796 is based on the premise that a clock-designated signal is input to the clock pin of the F / F.
Therefore, even in this method, the delay amount cannot be increased for an arbitrary signal whose clock is not specified.

【0009】したがって従来の技術では、クロック指定
していない任意の信号がクロックピンに入力されるF/
Fの最小遅延保証は、合成前に合成実行者が意図的に最
小遅延制約を必要箇所毎に付加しなければならない。最
小遅延制約を付加しない場合は、後段のF/Fで、デー
タのつつ抜けが生じる回路が合成される。このような場
合、F/F間に遅延素子を挿入するという人手による修
正が依然として必要になる。
Therefore, according to the conventional technique, an arbitrary signal not designated by the clock is supplied to the F / F input to the clock pin.
The minimum delay guarantee of F requires that the synthesis executor intentionally add a minimum delay constraint for each necessary part before synthesis. In the case where the minimum delay constraint is not added, a circuit in which data dropout occurs is synthesized by the subsequent F / F. In such a case, manual correction of inserting a delay element between the F / F is still required.

【0010】本発明の目的は、クロック指定していない
信号がクロックピンに入力されるフリップフロップの最
小遅延保証を自動的に行う論理合成方法および装置を提
供することにある。
It is an object of the present invention to provide a logic synthesizing method and apparatus for automatically guaranteeing a minimum delay of a flip-flop in which a signal whose clock is not specified is input to a clock pin.

【0011】本発明の他の目的は、論理合成の方法を実
行するプログラムを記録した記録媒体を提供することに
ある。
Another object of the present invention is to provide a recording medium on which a program for executing a logic synthesis method is recorded.

【0012】[0012]

【課題を解決するための手段】クロック特定されていな
い任意の信号がクロックピンに入力される2個のフリッ
プフロップ間において、データのホールドを保証する回
路を自動的に生成する論理合成方法であって、HDL記
述を読込み、最大遅延制約による論理合成を実行し、ネ
ットリストを出力するステップと、出力されたネットリ
ストから、縦続接続されている2個のフリップフロップ
を全て検出し、2個のフリップフロップのクロック端子
が同一ネットに接続されている場合には、これら2個の
フリップフロップの間に、次段のフリップフロップのホ
ールド時間を満たすように最小遅延制約を付加するステ
ップと、最大遅延制約および最小遅延制約による再論理
合成を行い、ネットリストを出力するステップとを含む
ことを特徴とする。
A logic synthesis method for automatically generating a circuit for guaranteeing data hold between two flip-flops in which an arbitrary signal whose clock is not specified is input to a clock pin. Reading the HDL description, executing logic synthesis based on the maximum delay constraint, and outputting a netlist; detecting all two cascade-connected flip-flops from the output netlist; When the clock terminals of the flip-flops are connected to the same net, a step of adding a minimum delay constraint between the two flip-flops so as to satisfy the hold time of the next-stage flip-flop; Re-synthesizing by constraints and minimum delay constraints, and outputting a netlist.

【0013】また、本発明は、クロック特定されていな
い任意の信号がクロックピンに入力される2個のフリッ
プフロップ間において、データのホールドを保証する回
路を自動的に生成する論理合成装置であって、HDL記
述を読込むHDL読込み部と、読み込んだHDLで、最
大遅延制約による論理合成を実行し、ネットリストを出
力する第1の論理合成部と、出力されたネットリストか
ら、縦続接続されている2個のフリップフロップを全て
検出し、2個のフリップフロップのクロック端子が同一
ネットに接続されている場合には、これら2個のフリッ
プフロップの間に、次段のフリップフロップのホールド
時間を満たすように最小遅延制約を付加する最小遅延付
加部と、最大遅延制約および最小遅延制約による再論理
合成を行い、ネットリストを出力する第2の論理合成部
とを備えることを特徴とする。
Further, the present invention is a logic synthesizing apparatus for automatically generating a circuit for guaranteeing data hold between two flip-flops in which an arbitrary signal whose clock is not specified is input to a clock pin. An HDL reading unit that reads the HDL description, a first logic synthesis unit that executes a logic synthesis based on the maximum delay constraint in the read HDL and outputs a netlist, and a cascade connection from the output netlist. If all the two flip-flops are detected and the clock terminals of the two flip-flops are connected to the same net, the hold time of the next flip-flop is set between the two flip-flops. A minimum delay addition unit that adds a minimum delay constraint so as to satisfy Characterized in that it comprises a second logic synthesizing section for outputting the list.

【0014】[0014]

【発明の実施の形態】図3は、本発明の論理合成装置の
機能ブロック図である。この論理合成装置は、RTL読
込み部10,最大遅延による論理合成部12,最小遅延
制約付加部14,最大遅延制約,最小遅延制約による論
理合成部16,ネットリスト出力部18とから構成され
ている。
FIG. 3 is a functional block diagram of a logic synthesizing apparatus according to the present invention. This logic synthesizing device comprises an RTL reading unit 10, a logic synthesizing unit 12 using a maximum delay, a minimum delay constraint adding unit 14, a logic synthesizing unit 16 using a maximum delay constraint and a minimum delay constraint, and a netlist output unit 18. .

【0015】最小遅延制約付加部14は、F/F検出部
20,F/Fクロックピン先のネット検出部22,F/
Fデータピン先のネット検出部24,ネット先のF/F
検出部26,ディレイ測定部28,F/Fクロックピン
先のネット検出部30,ネット比較部32,最小遅延制
約生成部34から構成されている。
The minimum delay constraint adding unit 14 includes an F / F detection unit 20, a net detection unit 22, a F / F clock pin destination, and a F / F clock pin.
Net data detector 24 at the F data pin destination, F / F at the net destination
It comprises a detection unit 26, a delay measurement unit 28, a net detection unit 30 at the F / F clock pin destination, a net comparison unit 32, and a minimum delay constraint generation unit 34.

【0016】この論理合成装置による処理を、図4およ
び図5のフローチャート、および図6〜図11の模式図
を参照して説明する。
The processing by the logic synthesizing apparatus will be described with reference to the flowcharts of FIGS. 4 and 5 and the schematic diagrams of FIGS.

【0017】RTL読込み部10は、要求される機能を
具体化したRTLレベルの用意されたHDL記述を読込
み(ステップS1)、最大遅延制約による論理合成部1
2に送る。
The RTL reading unit 10 reads an HDL description prepared at the RTL level that embodies the required function (step S1), and executes the logic synthesis unit 1 based on the maximum delay constraint.
Send to 2.

【0018】論理合成部12は、最大遅延制約による論
理合成を実行し(ステップS2)、作成されたネットリ
ストを最小遅延制約付加部14に送る。
The logic synthesizing unit 12 executes logic synthesis under the maximum delay constraint (step S2), and sends the created netlist to the minimum delay constraint adding unit 14.

【0019】最小遅延制約付加部14のF/F検出部2
0は、与えられたネットリストから、F/Fである全て
のセルを抽出する(ステップS3)。抽出された全てF
/Fのうち縦続接続された2個のF/F(CELL1,
CELL2)を模式的に図6に示す。
F / F detecting section 2 of minimum delay constraint adding section 14
0 extracts all cells that are F / F from the given netlist (step S3). All extracted F
/ F of two cascaded F / Fs (CELL1,
CELL2) is schematically shown in FIG.

【0020】F/F検出部20は、さらに、全てのF/
Fのうちの1つを選択し(ステップS4)、F/Fクロ
ックピン先のネット検出部22およびF/Fデータピン
先のネット検出部24に与える。この実施例では、CE
LL1のF/Fを選択するもとし、図7に、選択された
CELL1を太線で示す。
The F / F detecting section 20 further detects all F / Fs.
One of the Fs is selected (step S4) and given to the net detector 22 at the F / F clock pin destination and the net detector 24 at the F / F data pin destination. In this embodiment, the CE
Assuming that the F / F of the LL1 is selected, the selected CELL1 is shown by a thick line in FIG.

【0021】ネット検出部22では、与えられたF/F
(CELL1)のクロック端子ClockINに接続さ
れているネットc1を検出し(ステップS5)、ネット
比較部32に与える。図8に、ネットc1を模式的に示
す。
In the net detecting section 22, the given F / F
The net c1 connected to the clock terminal ClockIN of (CELL1) is detected (step S5) and given to the net comparison unit 32. FIG. 8 schematically shows the net c1.

【0022】一方、ネット検出部24では、与えられた
F/F(CELL1)のデータ出力端子DataOUT
に接続されているネットn1を検出し(ステップS
6)、ネット先のF/F検出部26に与える。図9に、
ネットn1を模式的に示す。
On the other hand, in the net detecting section 24, the data output terminal DataOUT of the given F / F (CELL1)
Is detected (step S)
6), to the F / F detector 26 at the end of the net. In FIG.
The net n1 is schematically shown.

【0023】F/F検出部26は、ネットn1に接続さ
れているセル(CELL2)を検出する(ステップS
7)。図10に、検出されたCELL2を太線で示す。
検出したセルがF/Fであるか否かを判断する(ステッ
プS8)。検出したセルがF/Fであれば、F/Fクロ
ックピン先のネット検出部30は、検出したF/F(C
ELL2)のクロック端子ClockINに接続されて
いるネットc2を検出し(ステップS9)、ネット比較
部32に与える。図11は、ネットc2を検出した状態
を模式的に示す。
The F / F detector 26 detects a cell (CELL2) connected to the net n1 (step S).
7). FIG. 10 shows the detected CELL2 by a thick line.
It is determined whether or not the detected cell is F / F (step S8). If the detected cell is an F / F, the net detector 30 at the F / F clock pin destination detects the detected F / F (C
ELL2), the net c2 connected to the clock terminal ClockIN is detected (step S9), and given to the net comparison unit 32. FIG. 11 schematically shows a state where the net c2 is detected.

【0024】ネット比較部32では、ネットc1とネッ
トc2とを比較し、ネットc1とc2とが等しいか否か
を判断する(ステップS10)。等しい場合には、最小
遅延制約生成部34に指示を与える。
The net comparing unit 32 compares the nets c1 and c2 and determines whether the nets c1 and c2 are equal (step S10). If they are equal, an instruction is given to the minimum delay constraint generator 34.

【0025】最小遅延生成部34では、CELL(F/
F)1のデータ出力端子DataOUTと次段のF/F
のデータ入力端子DataINとの間に対して、CEL
L(F/F)2のホールド時間を満たすように、最小遅
延制約を付加する(ステップS11)。図12に、最小
遅延制約を付加した状態を示す。
In the minimum delay generation section 34, CELL (F /
F) Data output terminal DataOUT of 1 and F / F of the next stage
Between the data input terminal DataIN and CEL
A minimum delay constraint is added so as to satisfy the hold time of L (F / F) 2 (step S11). FIG. 12 shows a state where the minimum delay constraint is added.

【0026】次のステップS12で、ステップS3で抽
出されたF/Fの中で他に選択すべきF/Fがあるか否
かを判断し、あればステップS4に戻る。
In the next step S12, it is determined whether or not there is any other F / F to be selected among the F / Fs extracted in step S3, and if so, the flow returns to step S4.

【0027】前記ステップS8において、ネットn1に
接続されているCELL2がF/Fでなければ、ネット
先のF/F検出部26は、次段のF/F(CELL3)
までのパスを抽出する(ステップS13)。
In step S8, if the cell 2 connected to the net n1 is not an F / F, the F / F detecting section 26 at the end of the net performs the F / F (CELL3) of the next stage.
The path up to is extracted (step S13).

【0028】ディレイ測定部28は、始点のF/F(C
ELL1)と終点のF/F(CELL3)との間の遅延
時間を測定し(ステップS14)、(CELL1とCE
LL3との間の遅延時間)より(CELL3のホールド
時間)が大きいか否かを判断する(ステップS15)。
遅延時間がホールド時間より小さければ、最小遅延制約
を満たしていないとして、ステップS9に進む。遅延時
間がホールド時間より大きければ、最小遅延制約を満た
しているとして、ステップS12に進む。ステップS1
2で、選択すべきF/Fが無くなれば、論理合成部16
で最大遅延制約および最小遅延制約による再論理合成を
行う(ステップS16)。ネットリスト出力部18は、
合成の結果であるネットリストを出力する(ステップS
17)。出力されたネットリストでは、図13に示すよ
うに、2個のセル間に最小遅延制約を満たすように遅延
素子が挿入されている。
The delay measuring section 28 calculates the start point F / F (C
The delay time between the ELL1) and the end point F / F (CELL3) is measured (step S14), and (CELL1 and CE)
It is determined whether (hold time of CELL3) is greater than (delay time with LL3) (step S15).
If the delay time is smaller than the hold time, it is determined that the minimum delay constraint is not satisfied, and the process proceeds to step S9. If the delay time is longer than the hold time, it is determined that the minimum delay constraint is satisfied, and the process proceeds to step S12. Step S1
If there are no more F / Fs to select in 2, the logic synthesis unit 16
Performs re-logic synthesis under the maximum delay constraint and the minimum delay constraint (step S16). The netlist output unit 18
Output the netlist that is the result of the synthesis (step S
17). In the output netlist, as shown in FIG. 13, delay elements are inserted between the two cells so as to satisfy the minimum delay constraint.

【0029】[0029]

【発明の効果】本発明によれば、最初の最大遅延に関す
る合成後に、クロック信号に拘わらず、同一信号がクロ
ックピンに入力されるフリップフロップ同士が直接接続
されている箇所を検出し、フリップフロップ間に最小遅
延を保証するための制約を与えることにより、再合成時
に最小遅延が保証される回路が生成されるので、クロッ
ク指定されていない任意の信号をクロックピンに入力す
るフリップフロップにおいてデータのつつ抜けが、生じ
ない回路を自動合成することが可能となる。
According to the present invention, after combining the first maximum delay, a point where flip-flops to which the same signal is input to the clock pin is directly connected to each other regardless of the clock signal is detected and the flip-flop is detected. Since a circuit that guarantees the minimum delay during re-synthesis is generated by providing a constraint to guarantee the minimum delay between them, the flip-flop that inputs an arbitrary signal whose clock is not specified to the clock pin is generated. It is possible to automatically synthesize a circuit that does not cause slip-through.

【図面の簡単な説明】[Brief description of the drawings]

【図1】同じクロックが入力される2個のF/Fを示す
図である。
FIG. 1 is a diagram illustrating two F / Fs to which the same clock is input.

【図2】従来の技術を示す図である。FIG. 2 is a diagram showing a conventional technique.

【図3】本発明の論理合成装置の機能ブロック図であ
る。
FIG. 3 is a functional block diagram of a logic synthesis device according to the present invention.

【図4】論理合成装置の処理を示すフローチャートであ
る。
FIG. 4 is a flowchart illustrating a process performed by the logic synthesis apparatus.

【図5】論理合成装置の処理を示すフローチャートであ
る。
FIG. 5 is a flowchart illustrating a process performed by the logic synthesis device.

【図6】縦続接続された2個のF/F(CELL1,C
ELL2)を模式的に示す図である。
FIG. 6 shows two cascade-connected F / Fs (CELL1, CELL
ELL2).

【図7】選択されたCELL1を太線で示す図である。FIG. 7 is a diagram illustrating selected CELL1 by a bold line.

【図8】ネットc1を模式的に示す図である。FIG. 8 is a diagram schematically showing a net c1.

【図9】ネットn1を模式的に示す図である。FIG. 9 is a diagram schematically showing a net n1.

【図10】検出されたCELL2を太線で示す図であ
る。
FIG. 10 is a diagram showing detected CELL2 by a thick line.

【図11】ネットc2を検出した状態を模式的に示す図
である。
FIG. 11 is a diagram schematically illustrating a state in which a net c2 is detected.

【図12】最小遅延制約を付加した状態を示す図であ
る。
FIG. 12 is a diagram illustrating a state where a minimum delay constraint is added.

【図13】2個のF/F間に遅延素子が挿入された状態
を示す図である。
FIG. 13 is a diagram showing a state where a delay element is inserted between two F / Fs.

【符号の説明】[Explanation of symbols]

10 RTL読込み部 12 最大遅延による論理合成部 14 最小遅延制約付加部 16 最大遅延制約,最小遅延制約による論理合成部 18 ネットリスト出力部 20 F/F検出部 22 F/Fクロックピン先のネット検出部 24 F/Fデータピン先のネット検出部 26 ネット先のF/F検出部 28 ディレイ測定部 30 F/Fクロックピン先のネット検出部 32 ネット比較部 34 最小遅延制約生成部 Reference Signs List 10 RTL reading unit 12 Logic synthesis unit based on maximum delay 14 Minimum delay constraint addition unit 16 Logic synthesis unit based on maximum delay constraint and minimum delay constraint 18 Netlist output unit 20 F / F detection unit 22 Net detection of F / F clock pin destination Unit 24 F / F data pin destination net detection unit 26 net destination F / F detection unit 28 delay measurement unit 30 F / F clock pin destination net detection unit 32 net comparison unit 34 minimum delay constraint generation unit

Claims (9)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】クロック特定されていない任意の信号がク
ロックピンに入力される2個のフリップフロップ間にお
いて、データのホールドを保証する回路を自動的に生成
する論理合成方法であって、 HDL記述を読込み、最大遅延制約による論理合成を実
行し、ネットリストを出力するステップと、 出力されたネットリストから、縦続接続されている2個
のフリップフロップを全て検出し、2個のフリップフロ
ップのクロック端子が同一ネットに接続されている場合
には、これら2個のフリップフロップの間に、次段のフ
リップフロップのホールド時間を満たすように最小遅延
制約を付加するステップと、 最大遅延制約および最小遅延制約による再論理合成を行
い、ネットリストを出力するステップと、を含むことを
特徴とする論理合成方法。
1. A logic synthesis method for automatically generating a circuit for guaranteeing data hold between two flip-flops in which an arbitrary signal whose clock is not specified is input to a clock pin, comprising: And executing logic synthesis based on the maximum delay constraint to output a netlist. From the output netlist, detect all two cascade-connected flip-flops and detect the clocks of the two flip-flops. When the terminals are connected to the same net, a step of adding a minimum delay constraint between these two flip-flops so as to satisfy the hold time of the next-stage flip-flop; Re-synthesizing by constraints and outputting a netlist.
【請求項2】前記最小遅延制約を付加するステップは、
(a)与えられたネットリストから、フリップフロップ
である全てのセルを抽出するステップと、(b)抽出さ
れた全てのフリップフロップのうちの1つを選択するス
テップと、(c)選択された第1のフリップフロップの
クロック端子に接続されている第1のネットを検出する
ステップと、(d)選択されたフリップフロップのデー
タ出力端子に接続されている第2のネットを検出するス
テップと、(e)前記第2のネットに接続されているセ
ルを検出するステップと、(f)検出したセルがフリッ
プフロップであるか否かを判断するステップと、(g)
検出したセルがフリップフロップであれば、検出した第
2のフリップフロップのクロック端子に接続されている
第3のネットを検出するステップと、(h)前記第1の
ネットと前記第3のネットとを比較し、第1のネットと
第3のネットとが等しいか否かを判断するステップと、
(i)前記第1のネットと前記第3のネットが等しい場
合には、前記第1のフリップフロップ出力と前記第2の
フリップフロップの入力との間に、第2のフリップフロ
ップのホールド時間を満たすように最小遅延制約を付加
するステップと、(j)前記ステップ(b)〜(i)を
繰り返すステップと、を含むことを特徴とする請求項1
記載の論理合成方法。
2. The step of adding the minimum delay constraint,
(A) extracting all cells that are flip-flops from a given netlist; (b) selecting one of all extracted flip-flops; and (c) selecting the selected flip-flop. Detecting a first net connected to the clock terminal of the first flip-flop; and (d) detecting a second net connected to the data output terminal of the selected flip-flop; (E) detecting a cell connected to the second net; (f) determining whether the detected cell is a flip-flop; and (g).
Detecting the third net connected to the clock terminal of the detected second flip-flop if the detected cell is a flip-flop; and (h) detecting the first net and the third net. And determining whether the first net and the third net are equal; and
(I) when the first net is equal to the third net, the hold time of the second flip-flop is set between the output of the first flip-flop and the input of the second flip-flop. 2. The method according to claim 1, further comprising: adding a minimum delay constraint so as to satisfy the condition; and (j) repeating the steps (b) to (i).
Logic synthesis method as described.
【請求項3】前記ステップ(f)で検出したセルがフリ
ップフロップでなければ、次段の第3のフリップフロッ
プまでのパスを抽出するステップと、 前記第1のフリップフロップと前記第3のフリップフロ
ップとの間の遅延時間を測定するステップと、 前記遅延時間が、前記第3のフリップフロップのホール
ド時間より小さければ、最小遅延制約を満たしていない
として、第3のフリップフロップについて、前記ステッ
プ(g)に進むステップと、を含むことを特徴とする請
求項2記載の論理合成方法。
3. If the cell detected in the step (f) is not a flip-flop, extracting a path to a next-stage third flip-flop; and the first flip-flop and the third flip-flop. Measuring the delay time between the third flip-flop and the third flip-flop if the delay time is smaller than the hold time of the third flip-flop, and determining that the minimum delay constraint is not satisfied. 3. The method according to claim 2, further comprising the step of: g).
【請求項4】クロック特定されていない任意の信号がク
ロックピンに入力される2個のフリップフロップ間にお
いて、データのホールドを保証する回路を自動的に生成
する論理合成装置であって、 HDL記述を読込むHDL読込み部と、 読み込んだHDLで、最大遅延制約による論理合成を実
行し、ネットリストを出力する第1の論理合成部と、 出力されたネットリストから、縦続接続されている2個
のフリップフロップを全て検出し、2個のフリップフロ
ップのクロック端子が同一ネットに接続されている場合
には、これら2個のフリップフロップの間に、次段のフ
リップフロップのホールド時間を満たすように最小遅延
制約を付加する最小遅延付加部と、 最大遅延制約および最小遅延制約による再論理合成を行
い、ネットリストを出力する第2の論理合成部と、を備
えることを特徴とする論理合成装置。
4. A logic synthesizer for automatically generating a circuit for guaranteeing data hold between two flip-flops to which an arbitrary signal whose clock is not specified is input to a clock pin, comprising: An HDL reading unit that reads a HDL, a first logic synthesis unit that executes a logic synthesis based on a maximum delay constraint using the read HDL, and outputs a netlist, and two cascade-connected units of the output netlist. Are detected, and if the clock terminals of the two flip-flops are connected to the same net, the time between these two flip-flops is set so as to satisfy the hold time of the next flip-flop. Performs re-synthesis using the minimum delay addition unit that adds the minimum delay constraint and the maximum delay constraint and the minimum delay constraint, and outputs a netlist And a second logic synthesizing unit.
【請求項5】前記最小遅延制約付加部は、 出力されたネットリストから、フリップフロップである
全てのセルを抽出し、抽出された全てのフリップフロッ
プのうちの1つを選択する第1のフリップフロップ検出
部と、 選択された第1のフリップフロップのクロック端子に接
続されている第1のネットを検出する第1のネット検出
部と、 選択されたフリップフロップのデータ出力端子に接続さ
れている第2のネットを検出する第2のネット検出部
と、 前記第2のネットに接続されているセルを検出し、検出
したセルがフリップフロップであるか否かを判断する第
2のフリップフロップ検出部と、 検出したセルがフリップフロップであれば、検出した第
2のフリップフロップのクロック端子に接続されている
第3のネットを検出する第3のネット検出部と、 前記第1のネットと前記第3のネットとを比較し、第1
のネットと第3のネットとが等しいか否かを判断するネ
ット比較部と、 前記第1のネットと前記第3のネットが等しい場合に
は、前記第1のフリップフロップの出力と前記第2のフ
リップフロップの入力との間に、第2のフリップフロッ
プのホールド時間を満たすように最小遅延制約を付加す
る最小遅延制約生成部と、を有することを特徴とする請
求項4記載の論理合成装置。
5. A first flip-flop for extracting all cells that are flip-flops from an output netlist and selecting one of the extracted flip-flops from the output netlist. A first net detector for detecting a first net connected to the clock terminal of the selected first flip-flop; and a first net detector connected to the data output terminal of the selected flip-flop. A second net detection unit for detecting a second net; a second flip-flop detection unit for detecting a cell connected to the second net and determining whether the detected cell is a flip-flop And a third net for detecting a third net connected to the clock terminal of the detected second flip-flop if the detected cell is a flip-flop. Comparing the preparative detector, and the first net and said third net, first
A net comparing unit that determines whether or not the first net is equal to the third net; and, when the first net and the third net are equal, the output of the first flip-flop and the second net. 5. The logic synthesis device according to claim 4, further comprising: a minimum delay constraint generation unit that adds a minimum delay constraint so as to satisfy a hold time of the second flip-flop between the input of the flip-flop and the input of the flip-flop. .
【請求項6】前記第2のフリップフロップ検出部で検出
したセルがフリップフロップでなければ、次段の第3の
フリップフロップまでのパスを抽出し、前記第1のフリ
ップフロップと前記第3のフリップフロップとの間の遅
延時間を測定するディレイ測定部を有し、 前記遅延時間が、前記第3のフリップフロップのホール
ド時間より小さければ、最小遅延制約を満たしていない
として、第3のフリップフロップについて、前記第3の
ネット検出部で、第3のフリップフロップのクロック端
子に接続されているネットを検出する、ことを特徴とす
る請求項5記載の論理合成装置。
6. If the cell detected by the second flip-flop detector is not a flip-flop, a path to a next third flip-flop is extracted, and the first flip-flop and the third flip-flop are extracted. A delay measuring unit for measuring a delay time between the third flip-flop and the third flip-flop; if the delay time is smaller than a hold time of the third flip-flop, it is determined that the minimum delay constraint is not satisfied; 6. The logic synthesis device according to claim 5, wherein the third net detector detects a net connected to a clock terminal of a third flip-flop.
【請求項7】クロック特定されていない任意の信号がク
ロックピンに入力される2個のフリップフロップ間にお
いて、データのホールドを保証する回路を自動的に生成
する論理合成方法を実行するプログラムを格納した記録
媒体であって、 HDL記述を読込み、最大遅延制約による論理合成を実
行し、ネットリストを出力するステップと、 出力されたネットリストから、縦続接続されている2個
のフリップフロップを全て検出し、2個のフリップフロ
ップのクロック端子が同一ネットに接続されている場合
には、これら2個のフリップフロップの間に、次段のフ
リップフロップのホールド時間を満たすように最小遅延
制約を付加するステップと、 最大遅延制約および最小遅延制約による再論理合成を行
い、ネットリストを出力するステップと、を含むことを
特徴とする記録媒体。
7. A program for executing a logic synthesis method for automatically generating a circuit for guaranteeing data hold between two flip-flops to which an arbitrary signal whose clock is not specified is input to a clock pin. Reading the HDL description, executing logic synthesis under the maximum delay constraint, and outputting a netlist; and detecting all two cascaded flip-flops from the output netlist. If the clock terminals of the two flip-flops are connected to the same net, a minimum delay constraint is added between the two flip-flops so as to satisfy the hold time of the next flip-flop. Steps for performing re-synthesis with maximum delay constraint and minimum delay constraint and outputting a netlist Recording medium, which comprises a.
【請求項8】前記最小遅延制約を付加するステップは、
(a)与えられたネットリストから、フリップフロップ
である全てのセルを抽出するステップと、(b)抽出さ
れた全てのフリップフロップのうちの1つを選択するス
テップと、(c)選択された第1のフリップフロップの
クロック端子に接続されている第1のネットを検出する
ステップと、(d)選択されたフリップフロップのデー
タ出力端子に接続されている第2のネットを検出するス
テップと、(e)前記第2のネットに接続されているセ
ルを検出するステップと、(f)検出したセルがフリッ
プフロップであるか否かを判断するステップと、(g)
検出したセルがフリップフロップであれば、検出した第
2のフリップフロップのクロック端子に接続されている
第3のネットを検出するステップと、(h)前記第1の
ネットと前記第3のネットとを比較し、第1のネットと
第3のネットとが等しいか否かを判断するステップと、
(i)前記第1のネットと前記第3のネットが等しい場
合には、前記第1のフリップフロップ出力と前記第2の
フリップフロップの入力との間に、第2のフリップフロ
ップのホールド時間を満たすように最小遅延制約を付加
するステップと、(j)前記ステップ(b)〜(i)を
繰り返すステップと、を含むことを特徴とする請求項7
記載の記録媒体。
8. The step of adding the minimum delay constraint,
(A) extracting all cells that are flip-flops from a given netlist; (b) selecting one of all extracted flip-flops; and (c) selecting the selected flip-flop. Detecting a first net connected to the clock terminal of the first flip-flop; and (d) detecting a second net connected to the data output terminal of the selected flip-flop; (E) detecting a cell connected to the second net; (f) determining whether the detected cell is a flip-flop; and (g).
Detecting the third net connected to the clock terminal of the detected second flip-flop if the detected cell is a flip-flop; and (h) detecting the first net and the third net. And determining whether the first net and the third net are equal; and
(I) when the first net is equal to the third net, the hold time of the second flip-flop is set between the output of the first flip-flop and the input of the second flip-flop. 8. The method according to claim 7, further comprising: adding a minimum delay constraint so as to satisfy the condition; and (j) repeating the steps (b) to (i).
The recording medium according to the above.
【請求項9】前記ステップ(f)で検出したセルがフリ
ップフロップでなければ、次段の第3のフリップフロッ
プまでのパスを抽出するステップと、 前記第1のフリップフロップと前記第3のフリップフロ
ップとの間の遅延時間を測定するステップと、 前記遅延時間が、前記第3のフリップフロップのホール
ド時間より小さければ、最小遅延制約を満たしていない
として、第3のフリップフロップについて、前記ステッ
プ(g)に進むステップと、を含むことを特徴とする請
求項8記載の記録媒体。
9. If the cell detected in the step (f) is not a flip-flop, extracting a path to a next third flip-flop; and the first flip-flop and the third flip-flop. Measuring the delay time between the third flip-flop and the third flip-flop if the delay time is smaller than the hold time of the third flip-flop, and determining that the minimum delay constraint is not satisfied. 9. The recording medium according to claim 8, further comprising: g).
JP10078918A 1998-03-26 1998-03-26 Logic synthesis method and apparatus Expired - Fee Related JP3047884B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10078918A JP3047884B2 (en) 1998-03-26 1998-03-26 Logic synthesis method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10078918A JP3047884B2 (en) 1998-03-26 1998-03-26 Logic synthesis method and apparatus

Publications (2)

Publication Number Publication Date
JPH11282887A JPH11282887A (en) 1999-10-15
JP3047884B2 true JP3047884B2 (en) 2000-06-05

Family

ID=13675245

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10078918A Expired - Fee Related JP3047884B2 (en) 1998-03-26 1998-03-26 Logic synthesis method and apparatus

Country Status (1)

Country Link
JP (1) JP3047884B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158151A (en) 1998-07-29 2000-12-12 Won; Jong-Pil Golf shoes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158151A (en) 1998-07-29 2000-12-12 Won; Jong-Pil Golf shoes

Also Published As

Publication number Publication date
JPH11282887A (en) 1999-10-15

Similar Documents

Publication Publication Date Title
Cheng et al. Delay testing for non-robust untestable circuits
CN115238619B (en) Post-module simulation method and system for digital chip
US6457161B1 (en) Method and program product for modeling circuits with latch based design
US20070028203A1 (en) Apparatus and method for creating function verification description, and computer-readable recording medium in which program for creating function verification description is recorded
JP4512934B2 (en) Layout design and timing adjustment method and apparatus for logically designed integrated circuit, program for executing the method, and computer-readable recording medium on which the program is recorded
CN107784185B (en) Method and device for extracting pseudo path in gate-level netlist and terminal equipment
CN116227398B (en) Method and system for automatically generating IP core test stimulus
JP3047884B2 (en) Logic synthesis method and apparatus
JP4083544B2 (en) Multi-cycle path analysis method
JP2003196339A (en) System and method for analyzing test facility, and system, and method for designing test facilitation
JP4275636B2 (en) Verification support device, verification support method, verification support program, and recording medium
JP4307169B2 (en) Delay verification device
JP3759007B2 (en) Asynchronous circuit timing verification apparatus and timing verification method thereof
JP3017504B2 (en) Expectation value extraction method for logic circuit simulation.
JPH06148293A (en) Test circuit for logical circuit
JP2845478B2 (en) Logic circuit delay time analyzer
JPH05250434A (en) Test pattern generating method for synchronous sequence circuit
JP2001155043A (en) Timing check method for logic simulation and recording medium with recorded timing check method
JPH11259554A (en) Timing analysis method for logic circuit, logic synthesis system using the method and record medium for programming and recording the method
JP3652220B2 (en) Logic circuit verification device, logic circuit verification method, and recording medium storing logic circuit verification program
JP2002163322A (en) Method and device for verifying logic circuit
JP2996153B2 (en) ASIC verification method
JP2002022805A (en) Scan path circuit, generation method for scan path circuit and recording medium with recorded program for it
CN114785715A (en) Link delay detection system and method
JPH11133119A (en) Test information forming device

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080324

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090324

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100324

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100324

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 11

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 11

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110324

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120324

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130324

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20130324

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20140324

Year of fee payment: 14

LAPS Cancellation because of no payment of annual fees