JP2011134072A - Method for designing semiconductor integrated circuit and program - Google Patents
Method for designing semiconductor integrated circuit and program Download PDFInfo
- Publication number
- JP2011134072A JP2011134072A JP2009292507A JP2009292507A JP2011134072A JP 2011134072 A JP2011134072 A JP 2011134072A JP 2009292507 A JP2009292507 A JP 2009292507A JP 2009292507 A JP2009292507 A JP 2009292507A JP 2011134072 A JP2011134072 A JP 2011134072A
- Authority
- JP
- Japan
- Prior art keywords
- flop
- flip
- logic block
- phase
- integrated circuit
- 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.)
- Withdrawn
Links
Images
Landscapes
- Logic Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Manipulation Of Pulses (AREA)
Abstract
Description
本発明は、半導体集積回路の設計方法及びプログラムに関するものである。 The present invention relates to a semiconductor integrated circuit design method and program.
半導体集積回路の設計では、論理セルの初期配置、クロックツリー合成(CTS:Clock Tree Synthesis)を用いたクロック配線、論理セルの配置最適化、論理セル間の詳細配線が順に行われる。 In designing a semiconductor integrated circuit, initial arrangement of logic cells, clock wiring using clock tree synthesis (CTS), optimization of arrangement of logic cells, and detailed wiring between logic cells are sequentially performed.
クロックツリー合成は、チップ内に散在するフリップフロップ等の複数の論理回路間に供給されるクロック信号の位相ずれ(クロックスキュー)を小さくするための手法である。 Clock tree synthesis is a technique for reducing the phase shift (clock skew) of clock signals supplied between a plurality of logic circuits such as flip-flops scattered in a chip.
クロックツリー合成後の論理セルの配置最適化では、静的タイミング解析(STA:Static Timing Analysis)により論理回路が所望のタイミング制約を満たしているか否かが検証され、所望のタイミング制約を満たしていない場合、論理セルの配置が変更される。論理セルの配置を変更してもタイミング制約を満たすことができない場合は、RTL(Register Transfer Level)を変更することになり、クロック配線等が再度行われるため、設計期間を増加させるという問題があった。 In logic cell layout optimization after clock tree synthesis, whether or not a logic circuit satisfies a desired timing constraint is verified by static timing analysis (STA), and does not satisfy a desired timing constraint. In this case, the arrangement of the logic cells is changed. If the timing constraint cannot be satisfied even if the logic cell arrangement is changed, the RTL (Register Transfer Level) is changed and the clock wiring and the like are performed again, which increases the design period. It was.
第1の同期型回路ブロックと第2の同期型回路ブロックとの間に製造状態の違いによる遅延時間差がある場合に、第1の同期型回路ブロックと第2の同期型回路ブロックとの間に第1の同期型回路ブロックの内部クロックに同期して動作するレジスタ素子を設け、2つの同期型回路ブロック間でのデータ受け渡し時の動作余裕を拡大する手法が知られている(例えば特許文献1参照)。しかし、レジスタ素子を追加するために、素子の配置や配線等を再度行う必要があり、設計期間を増加させるという問題があった。 When there is a delay time difference between the first synchronous circuit block and the second synchronous circuit block due to a difference in manufacturing state, between the first synchronous circuit block and the second synchronous circuit block. A technique is known in which a register element that operates in synchronization with the internal clock of the first synchronous circuit block is provided to increase an operation margin when data is transferred between two synchronous circuit blocks (for example, Patent Document 1). reference). However, in order to add a register element, it is necessary to perform element arrangement, wiring, and the like again, which increases the design period.
本発明は、設計期間を短縮できる半導体集積回路の設計方法及びプログラムを提供することを目的とする。 It is an object of the present invention to provide a semiconductor integrated circuit design method and program capable of shortening the design period.
本発明の一態様による半導体集積回路の設計方法は、複数の論理ブロック、クロック信号の立ち上がりエッジに同期して入力データを保持する正相フリップフロップ、及びクロック信号の立ち下がりエッジに同期して入力データを保持する逆相フリップフロップを有する半導体集積回路の設計方法であって、前記半導体集積回路のネットリストに対して静的タイミング解析を行うことにより、所定のタイミング制約を満たさないタイミングエラーパスが検出する工程と、所定のタイミング制約を満たさない前記タイミングエラーパスを含む第1の論理ブロックと、フリップフロップを介して前記第1の論理ブロックに接続され、所定のタイミング制約を満たす第2の論理ブロックとを抽出する工程と、前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記正相フリップフロップである場合は、当該正相フリップフロップを逆相フリップフロップに変更し、前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記逆相フリップフロップである場合は、当該逆相フリップフロップを正相フリップフロップに変更する工程と、を備えるものである。 A method for designing a semiconductor integrated circuit according to one embodiment of the present invention includes a plurality of logic blocks, a positive-phase flip-flop that holds input data in synchronization with a rising edge of a clock signal, and an input in synchronization with a falling edge of the clock signal. A method for designing a semiconductor integrated circuit having a reverse-phase flip-flop that holds data, wherein a timing error path that does not satisfy a predetermined timing constraint is obtained by performing a static timing analysis on a netlist of the semiconductor integrated circuit. A first logic block including the timing error path that does not satisfy a predetermined timing constraint, and a second logic that is connected to the first logic block via a flip-flop and satisfies the predetermined timing constraint Extracting a block, the first logic block and the second argument If the flip-flop between the blocks is the normal-phase flip-flop, the normal-phase flip-flop is changed to a reverse-phase flip-flop, and the flip-flop between the first logic block and the second logic block And a step of changing the negative phase flip-flop to a normal phase flip-flop.
本発明の一態様による半導体集積回路の設計プログラムは、複数の論理ブロック、クロック信号の立ち上がりエッジに同期して入力データを保持する正相フリップフロップ、及びクロック信号の立ち下がりエッジに同期して入力データを保持する逆相フリップフロップを有する半導体集積回路の設計プログラムであって、前記半導体集積回路のネットリストに対して静的タイミング解析を行うことにより、所定のタイミング制約を満たさないタイミングエラーパスが検出するステップと、所定のタイミング制約を満たさないパスを含む第1の論理ブロックと、フリップフロップを介して前記第1の論理ブロックに接続され、所定のタイミング制約を満たす第2の論理ブロックとを抽出するステップと、前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記正相フリップフロップである場合は、当該正相フリップフロップを逆相フリップフロップに変更し、前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記逆相フリップフロップである場合は、当該逆相フリップフロップを正相フリップフロップに変更するステップと、詳細な配線経路を決定するステップと、をコンピュータに実行させるものである。 A semiconductor integrated circuit design program according to one embodiment of the present invention includes a plurality of logic blocks, a positive-phase flip-flop that holds input data in synchronization with a rising edge of a clock signal, and an input in synchronization with a falling edge of the clock signal. A design program for a semiconductor integrated circuit having a reverse-phase flip-flop that holds data, and a timing error path that does not satisfy a predetermined timing constraint by performing a static timing analysis on a netlist of the semiconductor integrated circuit A first logical block including a path that does not satisfy a predetermined timing constraint, and a second logical block connected to the first logical block via a flip-flop and satisfying the predetermined timing constraint. Extracting, the first logic block and the second argument If the flip-flop between the blocks is the normal-phase flip-flop, the normal-phase flip-flop is changed to a reverse-phase flip-flop, and the flip-flop between the first logic block and the second logic block If the reverse-phase flip-flop is a reverse-phase flip-flop, the computer executes a step of changing the reverse-phase flip-flop to a normal-phase flip-flop and a step of determining a detailed wiring path.
本発明によれば、設計期間を短縮できる。 According to the present invention, the design period can be shortened.
以下、本発明の実施の形態を図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1に示すフローチャートを用いて、本発明の実施形態に係る半導体集積回路の設計方法を説明する。 A method for designing a semiconductor integrated circuit according to an embodiment of the present invention will be described with reference to the flowchart shown in FIG.
(ステップS101)C言語等の高級言語によってシステム(論理回路)の動作のみを記述した動作記述を作成し、この動作記述からクロックサイクル、レジスタ、演算器等のハードウェア情報を含んだRTL(Register Transfer Level)記述に合成する高位合成が行われる。RTLの記述に対して論理合成ツールを適用し、RTLの記述をゲートレベルのネットリストに論理合成する。 (Step S101) An operation description describing only the operation of the system (logic circuit) is created in a high-level language such as C language, and an RTL (Register) including hardware information such as a clock cycle, a register, and an arithmetic unit is created from this operation description. High-level synthesis is performed on the Transfer Level) description. A logic synthesis tool is applied to the RTL description to synthesize the RTL description into a gate level netlist.
(ステップS102)論理ゲートセルネットリストの初期配置を行い、概略配線の経路を決定する。 (Step S102) Initial arrangement of the logic gate cell netlist is performed, and the route of the schematic wiring is determined.
(ステップS103)クロックツリー合成を用いて、チップ内に散在するフリップフロップ等の複数の論理回路間に供給されるクロック信号の遅延(クロックレイテンシー)が短く、なおかつ到達時間のずれ(クロックスキュー)が小さくなるようにクロック信号を分配するクロックリーが構築される。 (Step S103) Using clock tree synthesis, a delay (clock latency) of a clock signal supplied between a plurality of logic circuits such as flip-flops scattered in a chip is short, and a shift in arrival time (clock skew) is small. A clock tree that distributes the clock signal to be small is constructed.
(ステップS104)静的タイミング解析(STA:Static Timing Analysis)が行われ、所望のタイミング制約を満たしていないタイミングエラーパスが検出される。 (Step S104) Static timing analysis (STA) is performed, and a timing error path that does not satisfy a desired timing constraint is detected.
(ステップS105)ステップS104で検出されたタイミングエラーパスに接続されるフリップフロップの正相/逆相を入れ替えることでタイミングが改善される回路が検出される。 (Step S105) A circuit whose timing is improved by detecting the normal phase / reverse phase of the flip-flop connected to the timing error path detected in Step S104 is detected.
ここで、正相フリップフロップは、クロック信号の立ち上がりエッジに同期して情報を入力するフリップフロップをいう。また、逆相フリップフロップは、クロック信号の立ち下がりエッジに同期して情報を入力するフリップフロップをいう。 Here, the positive-phase flip-flop is a flip-flop that inputs information in synchronization with the rising edge of the clock signal. The anti-phase flip-flop is a flip-flop that inputs information in synchronization with a falling edge of a clock signal.
(ステップS106)ステップS105で検出された回路のフリップフロップの正相/逆相を入れ替える。 (Step S106) The normal phase / reverse phase of the flip-flop of the circuit detected in step S105 is switched.
フリップフロップの正相/逆相の入れ替えについて図2、図3を用いて説明する。図2に示すように、フリップフロップ101〜106、論理ブロック110、111が設けられた回路に対してフリップフロップの正相/逆相の入れ替えを行う場合について考える。
The switching of the normal phase / reverse phase of the flip-flop will be described with reference to FIGS. As shown in FIG. 2, consider a case where the flip-flop is switched between the normal phase and the reverse phase for a circuit provided with flip-
フリップフロップ101、102は正相フリップフロップであり、入力信号をクロック信号CLKの立ち上がりエッジに基づいて保持し、論理ブロック110へ出力する。
The flip-
フリップフロップ103、104は逆相フリップフロップであり、論理ブロック110からの出力信号をクロック信号CLKの立ち下がりエッジに基づいて保持し、論理ブロック111へ出力する。
The flip-
フリップフロップ105、106は逆相フリップフロップであり、論理ブロック111からの出力信号をクロック信号CLKの立ち下がりエッジに基づいて保持し、出力する。
The flip-
フリップフロップ101、102が時刻t1におけるクロック信号CLKの立ち上がりエッジで信号を保持する場合、フリップフロップ103、104は時刻t2におけるクロック信号CLKの立ち下がりエッジで論理ブロック110からの出力信号を保持し、フリップフロップ105、106は時刻t4におけるクロック信号CLKの立ち下がりエッジで論理ブロック111からの出力信号を保持することになる。
When the flip-
従って、論理ブロック110を通るパスが満たすべき遅延時間(遅延制約)は時刻t1からt2の間、すなわちクロック信号CLKの半周期となる。また、論理ブロック111を通るパスが満たすべき遅延時間は時刻t2からt4の間、すなわちクロック信号CLKの1周期となる。
Accordingly, the delay time (delay constraint) to be satisfied by the path passing through the
ここで、論理ブロック110を通るパスの遅延時間がクロック信号CLKの半周期より長く、1周期より短く、かつ、論理ブロック111を通るパスの遅延時間がクロック信号CLKの半周期以下である場合、図3に示すように、論理ブロック110と論理ブロック111との間に位置するフリップフロップ103、104を正相フリップフロップに入れ替える。
Here, when the delay time of the path passing through the
正相フリップフロップであるフリップフロップ103、104は、時刻t3におけるクロック信号CLKの立ち上がりエッジで論理ブロック110からの出力信号を保持する。
The flip-
これにより、論理ブロック110を通るパスが満たすべき遅延時間は時刻t1からt3の間、すなわちクロック信号CLKの1周期となる。また、論理ブロック111を通るパスが満たすべき遅延時間は時刻t3からt4の間、すなわちクロック信号CLKの半周期となる。
Thereby, the delay time to be satisfied by the path passing through the
このように、フリップフロップ(フリップフロップ103、104)の正相/逆相を入れ替えることで、タイミングに余裕がある回路パス(論理ブロック111を通るパス)の遅延制約を厳しくし、タイミングが間に合わなくなった回路パス(論理ブロック110を通るパス)の遅延制約を緩和することができる。
In this way, by switching the normal phase / reverse phase of the flip-flops (flip-
論理ブロック110、111を通るパスはマルチサイクルパスでも良い。
The path passing through the
フリップフロップの正相/逆相の入れ替えの別の例を図4、図5を用いて説明する。図4に示すように、フリップフロップ201〜206、論理ブロック210、211が設けられた回路に対してフリップフロップの正相/逆相の入れ替えを行う場合について考える。
Another example of flip-flop normal / reverse phase switching will be described with reference to FIGS. As shown in FIG. 4, consider a case where flip-flops are switched between the normal phase and the reverse phase for a circuit provided with flip-
フリップフロップ201、202は正相フリップフロップであり、入力信号をクロック信号CLKの立ち上がりエッジに基づいて保持し、論理ブロック210へ出力する。
The flip-
フリップフロップ203、204は正相フリップフロップであり、論理ブロック210からの出力信号をクロック信号CLKの立ち上がりエッジに基づいて保持し、論理ブロック211へ出力する。
The flip-
フリップフロップ205、206は正相フリップフロップであり、論理ブロック211からの出力信号をクロック信号CLKの立ち上がりエッジに基づいて保持し、出力する。
The flip-
フリップフロップ201、202が時刻t11におけるクロック信号CLKの立ち上がりエッジで信号を保持する場合、フリップフロップ203、204は時刻t12におけるクロック信号CLKの立ち上がりエッジで論理ブロック110からの出力信号を保持し、フリップフロップ205、206は時刻t13におけるクロック信号CLKの立ち上がりエッジで論理ブロック211からの出力信号を保持することになる。
When the flip-
従って、論理ブロック210を通るパスが満たすべき遅延時間(遅延制約)は時刻t11からt12の間、すなわちクロック信号CLKの1周期となる。同様に、論理ブロック211を通るパスが満たすべき遅延時間は時刻t12からt13の間、すなわちクロック信号CLKの1周期となる。
Accordingly, the delay time (delay constraint) to be satisfied by the path passing through the
ここで、論理ブロック211を通るパスの遅延時間がクロック信号CLKの1周期より長く、1.5周期より短く、かつ、論理ブロック210を通るパスの遅延時間がクロック信号CLKの半周期以下である場合、図5に示すように、論理ブロック210と論理ブロック211との間に位置するフリップフロップ203、204を逆相フリップフロップに入れ替える。
Here, the delay time of the path passing through the
逆相フリップフロップであるフリップフロップ203、204は、時刻t14におけるクロック信号CLKの立ち下がりエッジで論理ブロック210からの出力信号を保持する。
The flip-
これにより、論理ブロック210を通るパスが満たすべき遅延時間は時刻t11からt14の間、すなわちクロック信号CLKの半周期となる。また、論理ブロック211を通るパスが満たすべき遅延時間は時刻t14からt13の間、すなわちクロック信号CLKの1.5周期となる。
Thereby, the delay time to be satisfied by the path passing through the
このように、フリップフロップ(フリップフロップ203、204)の正相/逆相を入れ替えることで、タイミングに余裕がある回路パス(論理ブロック210を通るパス)の遅延制約を厳しくし、タイミングが間に合わなくなった回路パス(論理ブロック211通るパス)の遅延制約を緩和することができる。
In this way, by switching the normal phase / reverse phase of the flip-flops (flip-
ステップS105では、上述したような隣り合うタイミングが間に合わない回路パス及びタイミングに余裕がある回路パスが検出される。 In step S105, a circuit path in which adjacent timings are not in time and a circuit path with sufficient timing are detected.
このようなフリップフロップの種類の変更(正相/逆相の入れ替え)に伴い、CTSの配線ツリーからの配線引き出し部分を変更して、その部分のみ再度CTS配線を行う。 Along with such a change in the type of flip-flop (switching between normal phase and reverse phase), the wiring drawing portion from the wiring tree of the CTS is changed, and the CTS wiring is performed again only for that portion.
(ステップS107)ステップS106において正相/逆相の入れ替えを行ったフリップフロップの前後の回路を最適化し、所望のタイミング制約が満たされるようにする。 (Step S107) The circuits before and after the flip-flop that has switched the normal phase / reverse phase in step S106 are optimized so that the desired timing constraint is satisfied.
例えば、フリップフロップ203、204の正相/逆相の入れ替えを行った図5に示す回路では、論理ブロック211の全ての経路はクロック信号CLKの0.5周期以上、1.5周期未満の遅延時間となるようなホールド制約を満たす必要がある。クロック信号CLKの0.5周期未満の経路が存在する場合、フリップフロップ205、206が、その経路を伝播した信号を時刻t12におけるクロック信号CLKの立ち上がりエッジで保持することで、所望の動作が行われなくなるためである。
For example, in the circuit shown in FIG. 5 in which the flip-
従って、論理ブロック211の経路のうち、遅延時間がクロック信号CLKの0.5周期未満となる経路に遅延素子(バッファ等)を挿入して、遅延時間がクロック信号CLKの0.5周期以上、1.5周期未満となるようにする。
Therefore, a delay element (such as a buffer) is inserted into a path of the
このようにステップS107では、ステップS106において正相/逆相の入れ替えを行ったフリップフロップの前後の論理ブロックの各経路が所望の遅延時間となるように、遅延素子の挿入等が行われる。 As described above, in step S107, delay elements are inserted so that each path of the logic block before and after the flip-flop for which the normal phase / reverse phase is switched in step S106 has a desired delay time.
また、遅延制約が緩和される論理ブロックに対して、使用されている論理セルの面積を小さくし、駆動力を小さくしてもよい。セル面積を小さくすることで、他のセルを配置したり、他のセルの駆動力を大きくしたり面積を大きくしたりできる。また、トランジスタを、閾値電圧の高い種類のトランジスタに置き換えて、リーク電流を抑制するようにしてもよい。 Further, for the logic block in which the delay constraint is relaxed, the area of the used logic cell may be reduced to reduce the driving force. By reducing the cell area, other cells can be arranged, the driving force of other cells can be increased, or the area can be increased. In addition, the transistor may be replaced with a transistor having a high threshold voltage to suppress leakage current.
遅延制約が厳しくなる論理ブロックに対しては、使用されている論理セルを、より駆動力の大きいセルに変更してもよい。また、トランジスタを、閾値電圧の低い種類のトランジスタに置き換えて、論理セルの遅延時間を短縮してもよい。 For a logic block in which the delay constraint becomes severe, the logic cell used may be changed to a cell having a larger driving force. Further, the delay time of the logic cell may be shortened by replacing the transistor with a transistor having a low threshold voltage.
(ステップS108)データ信号の詳細な配線を行う。 (Step S108) Detailed wiring of the data signal is performed.
このように、本実施形態によれば、タイミング制約を満たせない回路パスとタイミングに余裕がある回路パスとの間のフリップフロップの正相/逆相を入れ替えることで、タイミングに余裕がある回路パスの遅延制約を厳しくし、タイミング制約を満たせない回路パスの遅延制約を緩和する。タイミング制約を満たすためにセルの物理的な位置やRTLを変更する必要がないので、回路の最適化を短時間に行うことができ、半導体集積回路の設計期間を短縮することができる。 As described above, according to the present embodiment, by switching the normal phase / reverse phase of the flip-flop between a circuit path that does not satisfy the timing constraint and a circuit path that has a margin in timing, a circuit path that has a margin in timing. The delay constraint of the circuit path that cannot satisfy the timing constraint is relaxed. Since it is not necessary to change the physical position of the cell or the RTL in order to satisfy the timing constraint, the circuit can be optimized in a short time, and the design period of the semiconductor integrated circuit can be shortened.
図2、図3に示す例において、フリップフロップ103、104の正相/逆相を入れ替えることで、論理ブロック111を通るパスが満たすべき遅延時間はクロック信号CLKの半周期未満となった。論理ブロック111がこの遅延制約を満たせない場合、図6に示すように、論理ブロック112の次のフリップフロップ107、108が逆相であり、論理ブロック112を通るパスのタイミングに余裕があれば、フリップフロップ105、106の正相/逆相を入れ替えて、論理ブロック111の遅延制約を緩和することができる。このように、遅延制約を満たせない第1の論理ブロックと、回路パスのタイミングに余裕がある第2の論理ブロックとが隣り合っていなくても、それらの間に位置するフリップフロップの正相/逆相を入れ替えることで、第1の論理ブロックの遅延制約を緩和することができる。
In the example shown in FIGS. 2 and 3, by switching the normal phase / reverse phase of the flip-
なお、正相フリップフロップと逆相フリップフロップとの間の論理ブロック(図3における論理ブロック111等)では、CRPR(Clock Reconvergence Pessimism Removal)による遅延制約の緩和が出来なくなるため、これらの論理を通るパスは、CRPR緩和無しの条件でもタイミングを満たすように論理最適化される必要がある。
It should be noted that a delay block by CRPR (Clock Reconvergence Pessimism Removal) cannot be relaxed in a logic block (such as
上記実施形態において、ステップS103におけるクロックツリー合成に使用するセルは、バッファでなくインバータのみで構成することが好適である。例えば、図7(a)に示すように、クロックツリーをバッファで構成し、フリップフロップ700の正相/逆相を反転する場合、図7(b)に示すように、インバータ701を追加する必要がある。インバータ701の追加により、ツリー構造のバランスを崩すおそれがある。
In the above-described embodiment, it is preferable that the cell used for the clock tree synthesis in step S103 is composed of only an inverter, not a buffer. For example, as shown in FIG. 7A, when the clock tree is configured by a buffer and the normal phase / reverse phase of the flip-
一方、図8(a)に示すように、クロックツリーをインバータのみで構成し、フリップフロップ800の正相/逆相を反転する場合、図8(b)に示すように、1段手前のインバータからクロック配線を引き出せばよく、セルを追加する必要はない。
On the other hand, when the clock tree is composed of only inverters as shown in FIG. 8A and the normal phase / reverse phase of the flip-
従って、本実施形態では、クロックツリーをインバータのみで構成することが好適である。 Therefore, in this embodiment, it is preferable to configure the clock tree only with inverters.
上述した半導体集積回路の設計方法の一連の手順は、コンピュータに実行させるプログラムに組み込み、フレキシブルディスクやCD−ROM等の記録媒体に収納してコンピュータに読み込ませて実行させてもよい。これにより、本実施形態に係る設計方法を、汎用コンピュータを用いて実現することができる。記録媒体は、磁気ディスクや光ディスク等の携帯可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。また、上述した半導体集積回路の設計方法の一連の手順を組み込んだプログラムをインターネット等の通信回線(無線通信を含む)を介して頒布してもよい。さらに上述した半導体集積回路の設計方法の一連の手順を組み込んだプログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。 The series of steps of the semiconductor integrated circuit design method described above may be incorporated in a program to be executed by a computer, stored in a recording medium such as a flexible disk or a CD-ROM, and read by the computer and executed. Thereby, the design method according to the present embodiment can be realized using a general-purpose computer. The recording medium is not limited to a portable medium such as a magnetic disk or an optical disk, but may be a fixed recording medium such as a hard disk device or a memory. Further, a program incorporating a series of procedures of the above-described semiconductor integrated circuit design method may be distributed through a communication line (including wireless communication) such as the Internet. Furthermore, a program incorporating a series of steps of the above-described semiconductor integrated circuit design method is encrypted, modulated, or compressed and stored in a recording medium via a wired line or a wireless line such as the Internet. May be distributed.
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。 Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.
101〜106 フリップフロップ
111、112 論理ブロック
101-106 flip-
Claims (5)
前記半導体集積回路のネットリストに対して静的タイミング解析を行うことにより、所定のタイミング制約を満たさないタイミングエラーパスを検出する工程と、
所定のタイミング制約を満たさない前記タイミングエラーパスを含む第1の論理ブロックと、フリップフロップを介して前記第1の論理ブロックに接続され、所定のタイミング制約を満たす第2の論理ブロックとを抽出する工程と、
前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記正相フリップフロップである場合は、当該正相フリップフロップを逆相フリップフロップに変更し、前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記逆相フリップフロップである場合は、当該逆相フリップフロップを正相フリップフロップに変更する工程と、
を備える半導体集積回路の設計方法。 A semiconductor integrated circuit having a plurality of logic blocks, a normal-phase flip-flop that holds input data in synchronization with a rising edge of a clock signal, and a negative-phase flip-flop that holds input data in synchronization with a falling edge of a clock signal A design method,
Detecting a timing error path that does not satisfy a predetermined timing constraint by performing a static timing analysis on the net list of the semiconductor integrated circuit;
A first logical block including the timing error path that does not satisfy a predetermined timing constraint and a second logical block connected to the first logical block via a flip-flop and satisfying the predetermined timing constraint are extracted. Process,
When the flip-flop between the first logic block and the second logic block is the normal-phase flip-flop, the normal-phase flip-flop is changed to a reverse-phase flip-flop, and the first logic block And when the flip-flop between the second logic block is the negative-phase flip-flop, the negative-phase flip-flop is changed to a normal-phase flip-flop.
A method for designing a semiconductor integrated circuit comprising:
前記半導体集積回路のネットリストに対して静的タイミング解析を行うことにより、所定のタイミング制約を満たさないタイミングエラーパスを検出するステップと、
所定のタイミング制約を満たさないパスを含む第1の論理ブロックと、フリップフロップを介して前記第1の論理ブロックに接続され、所定のタイミング制約を満たす第2の論理ブロックとを抽出するステップと、
前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記正相フリップフロップである場合は、当該正相フリップフロップを逆相フリップフロップに変更し、前記第1の論理ブロックと前記第2の論理ブロックとの間のフリップフロップが前記逆相フリップフロップである場合は、当該逆相フリップフロップを正相フリップフロップに変更するステップと、
詳細な配線経路を決定するステップと、
をコンピュータに実行させることを特徴とする半導体集積回路の設計プログラム。 A semiconductor integrated circuit having a plurality of logic blocks, a normal-phase flip-flop that holds input data in synchronization with a rising edge of a clock signal, and a negative-phase flip-flop that holds input data in synchronization with a falling edge of a clock signal A design program,
Detecting a timing error path that does not satisfy a predetermined timing constraint by performing static timing analysis on the netlist of the semiconductor integrated circuit; and
Extracting a first logical block including a path that does not satisfy a predetermined timing constraint, and a second logical block connected to the first logical block via a flip-flop and satisfying the predetermined timing constraint;
When the flip-flop between the first logic block and the second logic block is the normal-phase flip-flop, the normal-phase flip-flop is changed to a reverse-phase flip-flop, and the first logic block And when the flip-flop between the second logic block is the negative-phase flip-flop, the negative-phase flip-flop is changed to a normal-phase flip-flop.
Determining detailed wiring routes;
A program for designing a semiconductor integrated circuit, characterized in that a computer is executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009292507A JP2011134072A (en) | 2009-12-24 | 2009-12-24 | Method for designing semiconductor integrated circuit and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009292507A JP2011134072A (en) | 2009-12-24 | 2009-12-24 | Method for designing semiconductor integrated circuit and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011134072A true JP2011134072A (en) | 2011-07-07 |
Family
ID=44346742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009292507A Withdrawn JP2011134072A (en) | 2009-12-24 | 2009-12-24 | Method for designing semiconductor integrated circuit and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011134072A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017138951A (en) * | 2016-01-28 | 2017-08-10 | ルネサスエレクトロニクス株式会社 | Semiconductor device and power feeding system |
-
2009
- 2009-12-24 JP JP2009292507A patent/JP2011134072A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017138951A (en) * | 2016-01-28 | 2017-08-10 | ルネサスエレクトロニクス株式会社 | Semiconductor device and power feeding system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110239069A1 (en) | Sequential digital circuitry with test scan | |
JP2004172373A (en) | Crosstalk correction method | |
US10699054B2 (en) | Standard cell library, integrated circuit including synchronous circuit, and computing system for designing the integrated circuit | |
US8086989B2 (en) | Structure for glitchless clock multiplexer optimized for synchronous and asynchronous clocks | |
US6425115B1 (en) | Area efficient delay circuits | |
US20100253409A1 (en) | Clock generation system and clock dividing module | |
US20090271747A1 (en) | Logic circuit designing device, logic circuit designing method and logic circuit designing program for asynchronous logic circuit | |
US9697309B1 (en) | Metastability-hardened synchronization circuit | |
JP2007053680A (en) | Semiconductor integrated circuit device | |
US9449127B1 (en) | System for verifying timing constraints of IC design | |
Takizawa et al. | A design support tool set for asynchronous circuits with bundled-data implementation on FPGAs | |
JP2008065457A (en) | Method and system for designing semiconductor integrated circuit | |
JP2011134072A (en) | Method for designing semiconductor integrated circuit and program | |
Bhaskara et al. | A Robust CTS algorithm using the H-Tree to minimize local skews of higher frequency targets of the SOC designs | |
JP3703333B2 (en) | Logical connection information converter | |
US9960771B2 (en) | Hum generation using representative circuitry | |
JP4425300B2 (en) | Semiconductor integrated circuit device design program and recording medium | |
JP2005277909A (en) | Logical circuit, and system, method, and program for designing logical circuit | |
TWI821198B (en) | Integrated circuit, non-transitory computer readable medium and computing system | |
JP6322888B2 (en) | Semiconductor test program, semiconductor test apparatus, and semiconductor test method | |
Hassan et al. | Optimization of circuitry for power and area efficiency by using combination between latch and register | |
JP2011164988A (en) | Design device | |
JPWO2011074044A1 (en) | Integrated circuit power consumption calculation method, power consumption calculation program, and power consumption calculation device | |
JP2014006564A (en) | Semiconductor integrated circuit design method and design program | |
JP2004127012A (en) | Synchronous circuit and its design method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130305 |