JP2006302996A - Semiconductor integrated circuit, and circuit layout apparatus, method, and program - Google Patents
Semiconductor integrated circuit, and circuit layout apparatus, method, and program Download PDFInfo
- Publication number
- JP2006302996A JP2006302996A JP2005119448A JP2005119448A JP2006302996A JP 2006302996 A JP2006302996 A JP 2006302996A JP 2005119448 A JP2005119448 A JP 2005119448A JP 2005119448 A JP2005119448 A JP 2005119448A JP 2006302996 A JP2006302996 A JP 2006302996A
- Authority
- JP
- Japan
- Prior art keywords
- flip
- wiring
- scan chain
- flop
- generating
- 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.)
- Pending
Links
Images
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
Description
本発明は半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラムに関し、特に、半導体集積回路のスキャン設計方法に適用して好適なものである。 The present invention relates to a semiconductor integrated circuit, a circuit layout device, a circuit layout method, and a circuit layout program, and is particularly suitable for application to a scan design method for a semiconductor integrated circuit.
LSI内の論理回路およびクロック信号線のレイアウトでは、シフト時のミスシフトを防止するために、クロックスキュー(クロック信号の到達時間の差)が抑制されるように論理回路の配置や配線が行われている。
また、例えば、特許文献1には、ノーマルファンクションのタイミングを崩すことなくLSIのレイアウトを行えるようにするため、セットアップまたはホールドが収束できていない箇所に遅延調整用バッファを挿入し、遅延調整を行ったときのフリップフロップへのクロック到達時間を考慮に入れて、フリップフロップのクロック到達時間の値をもとにスキャンチェーンをリオーダリングし、スキャンチェーンを再構成する方法が開示されている。
Also, for example, in
しかしながら、特許文献1に開示された方法では、クロック到達時間を考慮してスキャンチェーンをリオーダリングするためには、遅延調整用バッファを挿入する必要があり、消費電力の増大を招くという問題があった。
そこで、本発明の目的は、遅延調整用バッファを挿入することなく、ホールドタイムエラーを防止するとともに、配線長の増大を抑制することが可能な半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラムを提供することである。
However, in the method disclosed in
SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide a semiconductor integrated circuit, a circuit layout device, a circuit layout method, and a circuit capable of preventing a hold time error and suppressing an increase in wiring length without inserting a delay adjustment buffer. To provide a layout program.
上述した課題を解決するために、本発明の一態様に係る半導体集積回路によれば、半導体チップに配置された複数のフリップフロップと、ホールドタイムエラーが発生するフリップフロップについては、クロック到達時間の遅い順に前記フリップフロップのデータ入力端子を順次接続する第1配線と、ホールドタイムエラーが発生しないフリップフロップについては、配線長が短くなるような順序で前記フリップフロップのデータ入力端子を順次接続する第2配線とを備えることを特徴とする。 In order to solve the above-described problem, according to a semiconductor integrated circuit according to one embodiment of the present invention, a clock arrival time of a plurality of flip-flops arranged in a semiconductor chip and a flip-flop in which a hold time error occurs is reduced. For the first wiring that sequentially connects the data input terminals of the flip-flops and the flip-flop that does not generate a hold time error, the data input terminals of the flip-flops are sequentially connected in an order that shortens the wiring length. Two wirings are provided.
これにより、配線を繋ぎ直すことで、配線長の増大を抑制しつつ、クロックスキューに起因するホールドタイムエラーを防止することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなるとともに、配線の混雑を回避することが可能となることから、レイアウト設計にかかる時間を短縮しつつ、消費電力の増大を抑制することができる。 Thus, by reconnecting the wiring, it is possible to prevent a hold time error due to the clock skew while suppressing an increase in the wiring length. This eliminates the need to insert a delay adjustment buffer to prevent hold time errors caused by clock skew, and avoids wiring congestion, thus reducing layout design time. However, an increase in power consumption can be suppressed.
また、本発明の一態様に係る半導体集積回路によれば、半導体チップに配置された複数のフリップフロップと、前記フリップフロップにクロック信号を分配するクロックツリーと、ホールドタイムエラーが発生するフリップフロップについては、前記クロックツリーにおけるクロック到達時間の遅い順に前記フリップフロップを接続する第1スキャンチェーンと、ホールドタイムエラーが発生しないフリップフロップについては、配線長が短くなるような順序で前記フリップフロップのデータ入力端子を順次接続する第2スキャンチェーンとを備えることを特徴とする。 In addition, according to the semiconductor integrated circuit of one embodiment of the present invention, a plurality of flip-flops arranged on a semiconductor chip, a clock tree that distributes a clock signal to the flip-flops, and a flip-flop that generates a hold time error For the first scan chain that connects the flip-flops in the slowest clock arrival time in the clock tree and the flip-flops that do not generate a hold time error, the data input to the flip-flops in such an order that the wiring length is shortened. And a second scan chain for sequentially connecting the terminals.
これにより、スキャンチェーンを繋ぎ直すことで、配線長の増大を抑制しつつ、クロックスキューに起因するホールドタイムエラーを防止することが可能となり、レイアウト設計にかかる時間を短縮することが可能となるとともに、消費電力の増大を抑制することができる。
また、本発明の一態様に係る回路レイアウト装置によれば、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するクロックツリー生成手段と、前記半導体チップに配置されるセルの配置情報を生成する配置情報生成手段と、前記半導体チップに配置されるセルの配線情報を生成する配線情報生成手段と、前記セルに配線された配線の遅延量を評価する遅延量評価手段と、前記遅延量評価手段にて評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するスキャンチェーン構築手段と、前記セルに配置される配線の配線長に基づいて、前記スキャンチェーン構築手段にて構築されたスキャンチェーンを修正するスキャンチェーン修正手段と、前記スキャンチェーン修正手段にて修正されたスキャンチェーンに基づいて前記セルの再配線情報を生成する再配線情報生成手段とを備えることを特徴とする。
As a result, by reconnecting the scan chain, it is possible to prevent a hold time error due to clock skew while suppressing an increase in wiring length, and to shorten the time required for layout design. Thus, an increase in power consumption can be suppressed.
According to the circuit layout device of one aspect of the present invention, the clock tree generating means for generating a clock tree for distributing the clock signal to the cells arranged on the semiconductor chip, and the cells arranged on the semiconductor chip Arrangement information generating means for generating the arrangement information of the cell, wiring information generating means for generating the wiring information of the cells arranged in the semiconductor chip, and delay amount evaluating means for evaluating the delay amount of the wiring arranged in the cells A scan chain constructing means for constructing a scan chain in which the cells are reconnected in order from the latest clock arrival time based on the delay amount evaluated by the delay amount evaluating means, and the wiring length of the wiring arranged in the cell A scan chain correcting means for correcting the scan chain constructed by the scan chain constructing means, and the scan chain. Characterized in that it comprises a rerouting information generating means for generating a redistribution information of the cell based on the scan chain that is fixed in the chain modifying means.
これにより、スキャンチェーンを繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となるとともに、配線長の増大を抑制することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなり、消費電力の増大を抑制することが可能となるとともに、配線の混雑を回避することが可能となる。 Thus, by reconnecting the scan chains, it is possible to prevent a hold time error caused by clock skew and to suppress an increase in wiring length. For this reason, it is not necessary to insert a delay adjustment buffer in order to prevent a hold time error due to clock skew, and it is possible to suppress an increase in power consumption and to avoid congestion of wiring. It becomes possible.
また、本発明の一態様に係る回路レイアウト方法によれば、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するステップと、前記半導体チップに配置されるセルの配置情報を生成するステップと、前記半導体チップに配置されるセルの配線情報を生成するステップと、前記セルに配線された配線の遅延量を評価するステップと、前記評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、前記セルに配置される配線の配線長に基づいて、前記構築されたスキャンチェーンを修正するステップと、前記修正されたスキャンチェーンに基づいて前記セルの再配線情報を生成するステップとを備えることを特徴とする。 According to the circuit layout method of one embodiment of the present invention, the step of generating a clock tree for distributing the clock signal to the cells arranged on the semiconductor chip and the arrangement information of the cells arranged on the semiconductor chip A step of generating wiring information of cells arranged on the semiconductor chip, a step of evaluating a delay amount of wirings wired to the cell, and a clock based on the evaluated delay amount Constructing a scan chain in which the cells are reconnected in the order of arrival time, modifying the constructed scan chain based on a wiring length of wiring arranged in the cell, and the modified scan Generating redistribution information of the cell based on a chain.
これにより、遅延調整用バッファを挿入する必要がなく、ホールドタイムエラーを防止することが可能となるとともに、配線長の増大を抑制することが可能となり、消費電力の増大を抑制することが可能となるとともに、配線の混雑を回避することが可能となる。
また、本発明の一態様に係る回路レイアウトプログラムによれば、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するステップと、前記半導体チップに配置されるセルの配置情報を生成するステップと、前記半導体チップに配置されるセルの配線情報を生成するステップと、前記セルに配線された配線の遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、前記セルに配置される配線の配線長に基づいて、前記構築されたスキャンチェーンを修正するステップと、前記修正されたスキャンチェーンに基づいて前記セルの再配線情報を生成するステップとをコンピュータに実行させることを特徴とする。
As a result, it is not necessary to insert a delay adjustment buffer, it is possible to prevent a hold time error, it is possible to suppress an increase in wiring length, and it is possible to suppress an increase in power consumption. In addition, it is possible to avoid wiring congestion.
According to the circuit layout program of one aspect of the present invention, the step of generating a clock tree for distributing the clock signal to the cells arranged on the semiconductor chip, and the arrangement information of the cells arranged on the semiconductor chip A step of generating wiring information of the cells arranged on the semiconductor chip, and a scan in which the cells are reconnected in the order of late arrival time of the clock based on the delay amount of the wiring wired to the cells. A step of constructing a chain; a step of modifying the constructed scan chain based on a wiring length of a wiring arranged in the cell; and generating rewiring information of the cell based on the modified scan chain And causing the computer to execute the step of performing.
これにより、回路レイアウトプログラムをコンピュータに実行させることで、遅延調整用バッファを挿入する必要がなく、ホールドタイムエラーを防止することが可能となるとともに、配線長の増大を抑制することが可能となり、消費電力の増大を抑制しつつ、配線の混雑を回避することが可能となる。 Thereby, by causing the computer to execute the circuit layout program, it is not necessary to insert a delay adjustment buffer, and it becomes possible to prevent a hold time error and to suppress an increase in the wiring length. It is possible to avoid congestion of wiring while suppressing an increase in power consumption.
以下、本発明の実施形態に係る回路レイアウト方法について図面を参照しながら説明する。
図1および図2は、本発明の一実施形態に係るスキャンチェーンの生成方法を説明する図、図3(a)は、図1のスキャンチェーンにおけるホールドタイムエラーを説明するタイミングチャート、3(b)は、図2のスキャンチェーンにおけるホールドタイムエラーの改善効果を説明するタイミングチャートである。
Hereinafter, a circuit layout method according to an embodiment of the present invention will be described with reference to the drawings.
1 and 2 are diagrams for explaining a scan chain generation method according to an embodiment of the present invention. FIG. 3A is a timing chart for explaining a hold time error in the scan chain of FIG. ) Is a timing chart for explaining the improvement effect of the hold time error in the scan chain of FIG.
図1において、フリップフロップFF1の後段にはフリップフロップFF2が配置されている。そして、各フリップフロップFF1、FF2のクロック信号入力端子CLKA、CLKBには、バッファBを介してクロックパスCPが接続されている。また、フリップフロップFF1のデータ入力端子DAにはスキャンパスP1が接続され、フリップフロップFF1のデータ出力端子QAとフリップフロップFF2のデータ入力端子DBは、スキャンパスP2を介して接続され、フリップフロップFF2のデータ出力端子QBにはスキャンパスP3が接続されている。 In FIG. 1, a flip-flop FF2 is arranged at the subsequent stage of the flip-flop FF1. A clock path CP is connected via a buffer B to the clock signal input terminals CLKA and CLKB of the flip-flops FF1 and FF2. Further, the scan path P1 is connected to the data input terminal DA of the flip-flop FF1, and the data output terminal QA of the flip-flop FF1 and the data input terminal DB of the flip-flop FF2 are connected via the scan path P2, and the flip-flop FF2 A scan path P3 is connected to the data output terminal QB.
そして、図3(a)において、スキャンパスP1を介してデータ入力端子DAに入力されたデータはフリップフロップFF1に保持され、データ出力端子QAから出力される。そして、フリップフロップFF1のデータ出力端子QAから出力されたデータはスキャンパスP2を介してフリップフロップFF2のデータ入力端子DBに入力される。そして、データ入力端子DBに入力されたデータは、クロック信号入力端子CLKBに入力されるクロック信号に同期してフリップフロップFF2に保持され、データ出力端子QBから出力される。 In FIG. 3A, data input to the data input terminal DA via the scan path P1 is held in the flip-flop FF1 and output from the data output terminal QA. The data output from the data output terminal QA of the flip-flop FF1 is input to the data input terminal DB of the flip-flop FF2 via the scan path P2. The data input to the data input terminal DB is held in the flip-flop FF2 in synchronization with the clock signal input to the clock signal input terminal CLKB, and is output from the data output terminal QB.
ここで、フリップフロップFF2のクロック信号入力端子CLKBには、フリップフロップFF2のクロック信号入力端子CLKBに対して遅延時間DL1だけ遅れてクロック信号が入力されるものとする。また、フリップフロップFF1のデータ出力端子QAから出力されたデータは、遅延時間DL2だけ遅れてフリップフロップFF2のデータ入力端子DBに入力されるものとする。この場合、クロック信号入力端子CLKBに入力されるクロック信号が立ち上がる時点では、今回のデータがフリップフロップFF2にて保持される前に、次回のデータがフリップフロップFF2のデータ入力端子DBに入力されるので、データの筒抜けが発生する。 Here, it is assumed that the clock signal is input to the clock signal input terminal CLKB of the flip-flop FF2 with a delay of DL1 from the clock signal input terminal CLKB of the flip-flop FF2. The data output from the data output terminal QA of the flip-flop FF1 is input to the data input terminal DB of the flip-flop FF2 with a delay of the delay time DL2. In this case, when the clock signal input to the clock signal input terminal CLKB rises, the next data is input to the data input terminal DB of the flip-flop FF2 before the current data is held in the flip-flop FF2. Therefore, data omission occurs.
そこで、クロック到達時間の遅い順にフリップフロップFF1、FF2のスキャンパスP1〜P3を繋ぎ直すようにする。すなわち、図2において、図1の各フリップフロップFF1、FF2のクロック信号入力端子CLKA、CLKBには、バッファBを介してクロックパスCPが接続されている。また、フリップフロップFF2のデータ入力端子DBにはスキャンパスP11が接続され、フリップフロップFF2のデータ出力端子QBとフリップフロップFF1のデータ入力端子DAは、スキャンパスP12を介して接続され、フリップフロップFF1のデータ出力端子QAにはスキャンパスP13が接続されている。 Therefore, the scan paths P1 to P3 of the flip-flops FF1 and FF2 are reconnected in order of late clock arrival time. That is, in FIG. 2, the clock path CP is connected via the buffer B to the clock signal input terminals CLKA and CLKB of the flip-flops FF1 and FF2 of FIG. Further, the scan path P11 is connected to the data input terminal DB of the flip-flop FF2, and the data output terminal QB of the flip-flop FF2 and the data input terminal DA of the flip-flop FF1 are connected via the scan path P12, and the flip-flop FF1. A scan path P13 is connected to the data output terminal QA.
そして、図3(b)において、スキャンパスP11を介してデータ入力端子DBに入力されたデータはフリップフロップFF2に保持され、データ出力端子QBから出力される。そして、フリップフロップFF2のデータ出力端子QBから出力されたデータはスキャンパスP12を介してフリップフロップFF1のデータ入力端子DAに入力される。そして、データ入力端子DAに入力されたデータは、クロック信号入力端子CLKAに入力されるクロック信号に同期してフリップフロップFF1に保持され、データ出力端子QAから出力される。 In FIG. 3B, the data input to the data input terminal DB via the scan path P11 is held in the flip-flop FF2 and output from the data output terminal QB. The data output from the data output terminal QB of the flip-flop FF2 is input to the data input terminal DA of the flip-flop FF1 via the scan path P12. The data input to the data input terminal DA is held in the flip-flop FF1 in synchronization with the clock signal input to the clock signal input terminal CLKA, and is output from the data output terminal QA.
ここで、図3(a)と同様に、フリップフロップFF2のクロック信号入力端子CLKBには、フリップフロップFF2のクロック信号入力端子CLKBに対して遅延時間DL1だけ遅れてクロック信号が入力されるものとする。一方、フリップフロップFF2のデータ出力端子QBから出力されたデータは、図3(a)の遅延時間DL2より大きな遅延時間DL3だけ遅れてフリップフロップFF1のデータ入力端子DAに入力されるものとする。この場合、クロック信号入力端子CLKAに入力されるクロック信号が立ち上がる時点では、今回のデータがフリップフロップFF1にて保持される前に、次回のデータがフリップフロップFF1のデータ入力端子DAに入力されることはないので、データの筒抜けは発生しない。 Here, as in FIG. 3A, the clock signal is input to the clock signal input terminal CLKB of the flip-flop FF2 with a delay of the delay time DL1 from the clock signal input terminal CLKB of the flip-flop FF2. To do. On the other hand, the data output from the data output terminal QB of the flip-flop FF2 is input to the data input terminal DA of the flip-flop FF1 with a delay of a delay time DL3 larger than the delay time DL2 of FIG. In this case, when the clock signal input to the clock signal input terminal CLKA rises, the next data is input to the data input terminal DA of the flip-flop FF1 before the current data is held in the flip-flop FF1. Since there is nothing, there is no data omission.
ここで、単にクロック到達時間のみを考慮してクロック到達時間の遅い順に全てのフリップフロップを接続すると、配線を迂回させければならない距離が増大し、配線が混雑する。このため、クロック到達時間のみならず、配線長も考慮しながらフリップフロップを接続することができる。
図4は、本発明の一実施形態に係るスキャンチェーンの接続方法を示す図である。
Here, if only all the flip-flops are connected in order of the clock arrival time taking into consideration only the clock arrival time, the distance that must be bypassed increases and the wiring becomes congested. For this reason, flip-flops can be connected in consideration of not only the clock arrival time but also the wiring length.
FIG. 4 is a diagram showing a scan chain connection method according to an embodiment of the present invention.
図4(a)において、フリップフロップFF11の入力にはスキャンパスP31が接続され、フリップフロップFF11の出力とフリップフロップFF12の入力は、スキャンパスP32を介して接続され、フリップフロップFF12の出力とフリップフロップFF13の入力は、スキャンパスP33を介して接続され、フリップフロップFF13の出力にはスキャンパスP34が接続されているものとする。 4A, the scan path P31 is connected to the input of the flip-flop FF11, the output of the flip-flop FF11 and the input of the flip-flop FF12 are connected via the scan path P32, and the output of the flip-flop FF12 is flip-flops. Assume that the input of the flip-flop FF13 is connected via the scan path P33, and the output of the flip-flop FF13 is connected to the scan path P34.
ここで、フリップフロップFF13、フリップフロップFF11、フリップフロップFF12の順にクロック到達時間が遅くなるものとすると、フリップフロップFF13、フリップフロップFF11、フリップフロップFF12の順にスキャンパスP31〜P34を繋ぎ直す。すなわち、図4(b)において、フリップフロップFF13の入力にはスキャンパスP41を接続し、フリップフロップFF13の出力とフリップフロップFF11の入力はスキャンパスP42を介して接続し、フリップフロップFF11の出力とフリップフロップFF12の入力はスキャンパスP43を介して接続し、フリップフロップFF12の出力にはスキャンパスP44を接続する。 Here, assuming that the clock arrival time is delayed in the order of the flip-flop FF13, the flip-flop FF11, and the flip-flop FF12, the scan paths P31 to P34 are reconnected in the order of the flip-flop FF13, the flip-flop FF11, and the flip-flop FF12. That is, in FIG. 4B, the scan path P41 is connected to the input of the flip-flop FF13, the output of the flip-flop FF13 and the input of the flip-flop FF11 are connected via the scan path P42, and the output of the flip-flop FF11 The input of the flip-flop FF12 is connected via the scan path P43, and the scan path P44 is connected to the output of the flip-flop FF12.
これにより、クロック到達にかかる実時間の遅い順にフリップフロップFF11〜FF13の配線を繋ぎ直すことが可能となり、クロックスキューに起因するホールドタイムエラーを防止することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなることから、レイアウト設計にかかる時間を短縮することが可能となるとともに、消費電力の増大を抑制することができる。 As a result, it is possible to reconnect the wirings of the flip-flops FF11 to FF13 in order of late real time for reaching the clock, and it is possible to prevent a hold time error due to clock skew. For this reason, it is not necessary to insert a delay adjustment buffer to prevent a hold time error due to clock skew, so it is possible to reduce the time required for layout design and increase power consumption. Can be suppressed.
さらに、フリップフロップFF11とフリップフロップFF13との間ではホールドタイムエラーが発生しないが、フリップフロップFF12とフリップフロップFF13との間ではホールドタイムエラーが発生するものとすると、フリップフロップFF11、FF13は配線が短くなるような順序で、フリップフロップFF12、FF13はクロック到達時間の遅い順にスキャンパスP41〜P44を繋ぎ直す。すなわち、図4(c)において、フリップフロップFF11の入力にはスキャンパスP51を接続し、フリップフロップFF11の出力とフリップフロップFF13の入力はスキャンパスP52を介して接続し、フリップフロップFF13の出力とフリップフロップFF12の入力はスキャンパスP53を介して接続し、フリップフロップFF12の出力にはスキャンパスP54を接続する。 Furthermore, if a hold time error does not occur between the flip-flops FF11 and FF13, but a hold time error occurs between the flip-flops FF12 and FF13, the flip-flops FF11 and FF13 are wired. In the order of shortening, the flip-flops FF12 and FF13 reconnect the scan paths P41 to P44 in order of late clock arrival time. 4C, the scan path P51 is connected to the input of the flip-flop FF11, the output of the flip-flop FF11 and the input of the flip-flop FF13 are connected via the scan path P52, and the output of the flip-flop FF13 is connected. The input of the flip-flop FF12 is connected via the scan path P53, and the scan path P54 is connected to the output of the flip-flop FF12.
これにより、クロック到達時間のみならず、配線長も考慮しながらフリップフロップFF11〜FF13の配線を繋ぎ直すことが可能となり、配線長の増大を抑制しつつ、クロックスキューに起因するホールドタイムエラーを防止することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなるとともに、配線の混雑を回避することが可能となることから、レイアウト設計にかかる時間を短縮しつつ、消費電力の増大を抑制することが可能となる。 As a result, it is possible to reconnect the wirings of the flip-flops FF11 to FF13 in consideration of not only the clock arrival time but also the wiring length, and it is possible to prevent a hold time error due to clock skew while suppressing an increase in the wiring length. It becomes possible to do. This eliminates the need to insert a delay adjustment buffer to prevent hold time errors caused by clock skew, and avoids wiring congestion, thus reducing layout design time. However, an increase in power consumption can be suppressed.
図5は、本発明の一実施形態に係るスキャンチェーンの生成方法を示すフローチャートである。
図5において、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成する(ステップS1)。なお、セルの構成要素としては、フリップフロップを用いることができる。次に、半導体チップに配置されるセルの配置情報を生成する(ステップS2)。次に、半導体チップに配置されるセルの配線情報を生成する(ステップS3)。次に、セルに配線された配線の遅延量を評価する(ステップS4)。次に、半導体チップに配置されるセルの配置座標を抽出する(ステップS5)。そして、セルに配線された配線の遅延量およびセルの配置座標を考慮しながら、スキャンチェーンを繋ぎ直す。すなわち、評価された配線の遅延量に基づいて、クロック到達時間の遅い順にセルを繋ぎ直したスキャンチェーンを構築するとともに、セルの配置座標に基づいて構築されたスキャンチェーンを修正する(ステップS6)。なお、スキャンチェーンを繋ぎ直す方法としては、ホールドタイムエラーが発生するセルについては、クロック到達時間の遅い順にスキャンチェーンを繋ぎ直し、ホールドタイムエラーが発生しないセルについては、配線長が短くなるような順序でスキャンチェーンを繋ぎ直すことができる。そして、スキャンチェーンに基づいてセルの再配線情報を生成する(ステップS7)。
FIG. 5 is a flowchart illustrating a scan chain generation method according to an embodiment of the present invention.
In FIG. 5, a clock tree for distributing clock signals to cells arranged on the semiconductor chip is generated (step S1). Note that a flip-flop can be used as a constituent element of the cell. Next, arrangement information of cells arranged on the semiconductor chip is generated (step S2). Next, wiring information of cells arranged on the semiconductor chip is generated (step S3). Next, the delay amount of the wiring wired to the cell is evaluated (step S4). Next, the arrangement coordinates of the cells arranged on the semiconductor chip are extracted (step S5). Then, the scan chains are reconnected while taking into account the delay amount of the wiring wired to the cells and the arrangement coordinates of the cells. That is, based on the evaluated delay amount of the wiring, a scan chain in which cells are reconnected in the order of the clock arrival time is constructed, and the constructed scan chain is modified based on the cell arrangement coordinates (step S6). . As a method for reconnecting the scan chain, for the cell in which the hold time error occurs, the scan chain is reconnected in order of the clock arrival time, and for the cell in which the hold time error does not occur, the wiring length is shortened. Scan chains can be reconnected in order. Then, cell rewiring information is generated based on the scan chain (step S7).
これにより、スキャンチェーンを繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となるとともに、配線長の増大を抑制することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなり、消費電力の増大を抑制することが可能となるとともに、配線の混雑を回避することが可能となる。 Thus, by reconnecting the scan chains, it is possible to prevent a hold time error caused by clock skew and to suppress an increase in wiring length. For this reason, it is not necessary to insert a delay adjustment buffer in order to prevent a hold time error due to clock skew, and it is possible to suppress an increase in power consumption and to avoid congestion of wiring. It becomes possible.
FF1、FF2、FF11〜FF13 フリップフロップ、B バッファ、P1〜P3、P11〜P13、P31〜P34、P41〜P44、P51〜P54 スキャンパス、CP クロックパス、DA、DB データ入力端子、QA、QB データ出力端子、CLKA、CLKB クロック信号入力端子、C 半導体チップ FF1, FF2, FF11 to FF13 flip-flop, B buffer, P1 to P3, P11 to P13, P31 to P34, P41 to P44, P51 to P54 Scan campus, CP clock path, DA, DB data input terminal, QA, QB data Output terminal, CLKA, CLKB Clock signal input terminal, C Semiconductor chip
Claims (5)
ホールドタイムエラーが発生するフリップフロップについては、クロック到達時間の遅い順に前記フリップフロップのデータ入力端子を順次接続する第1配線と、
ホールドタイムエラーが発生しないフリップフロップについては、配線長が短くなるような順序で前記フリップフロップのデータ入力端子を順次接続する第2配線とを備えることを特徴とする半導体集積回路。 A plurality of flip-flops arranged on a semiconductor chip;
For a flip-flop in which a hold time error occurs, a first wiring that sequentially connects the data input terminals of the flip-flop in order of late clock arrival time;
A flip-flop that does not generate a hold time error includes a second wiring that sequentially connects the data input terminals of the flip-flop in an order that shortens the wiring length.
前記フリップフロップにクロック信号を分配するクロックツリーと、
ホールドタイムエラーが発生するフリップフロップについては、前記クロックツリーにおけるクロック到達時間の遅い順に前記フリップフロップを接続する第1スキャンチェーンと、
ホールドタイムエラーが発生しないフリップフロップについては、配線長が短くなるような順序で前記フリップフロップのデータ入力端子を順次接続する第2スキャンチェーンとを備えることを特徴とする半導体集積回路。 A plurality of flip-flops arranged on a semiconductor chip;
A clock tree for distributing a clock signal to the flip-flop;
For a flip-flop in which a hold time error occurs, a first scan chain that connects the flip-flops in order of late clock arrival time in the clock tree;
A flip-flop that does not generate a hold time error includes a second scan chain that sequentially connects the data input terminals of the flip-flop in an order that shortens the wiring length.
前記半導体チップに配置されるセルの配置情報を生成する配置情報生成手段と、
前記半導体チップに配置されるセルの配線情報を生成する配線情報生成手段と、
前記セルに配線された配線の遅延量を評価する遅延量評価手段と、
前記遅延量評価手段にて評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するスキャンチェーン構築手段と、
前記セルに配置される配線の配線長に基づいて、前記スキャンチェーン構築手段にて構築されたスキャンチェーンを修正するスキャンチェーン修正手段と、
前記スキャンチェーン修正手段にて修正されたスキャンチェーンに基づいて前記セルの再配線情報を生成する再配線情報生成手段とを備えることを特徴とする回路レイアウト装置。 Clock tree generating means for generating a clock tree for distributing a clock signal to cells arranged on a semiconductor chip;
Arrangement information generating means for generating arrangement information of cells arranged on the semiconductor chip;
Wiring information generating means for generating wiring information of cells arranged on the semiconductor chip;
A delay amount evaluating means for evaluating a delay amount of the wiring wired to the cell;
Based on the delay amount evaluated by the delay amount evaluating means, a scan chain constructing means for constructing a scan chain in which the cells are reconnected in order of late clock arrival time;
Based on the wiring length of the wiring arranged in the cell, scan chain correcting means for correcting the scan chain constructed by the scan chain constructing means,
A circuit layout apparatus comprising: rewiring information generation means for generating rewiring information of the cells based on the scan chain corrected by the scan chain correction means.
前記半導体チップに配置されるセルの配置情報を生成するステップと、
前記半導体チップに配置されるセルの配線情報を生成するステップと、
前記セルに配線された配線の遅延量を評価するステップと、
前記評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、
前記セルに配置される配線の配線長に基づいて、前記構築されたスキャンチェーンを修正するステップと、
前記修正されたスキャンチェーンに基づいて前記セルの再配線情報を生成するステップとを備えることを特徴とする回路レイアウト方法。 Generating a clock tree for distributing clock signals to cells arranged on a semiconductor chip;
Generating arrangement information of cells arranged on the semiconductor chip;
Generating wiring information of cells arranged on the semiconductor chip;
Evaluating the amount of delay of wiring wired to the cell;
Based on the estimated delay amount, constructing a scan chain in which the cells are reconnected in order of slow clock arrival time;
Modifying the constructed scan chain based on the wiring length of the wiring placed in the cell;
Generating circuit rewiring information based on the modified scan chain. A circuit layout method comprising:
前記半導体チップに配置されるセルの配置情報を生成するステップと、
前記半導体チップに配置されるセルの配線情報を生成するステップと、
前記セルに配線された配線の遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、
前記セルに配置される配線の配線長に基づいて、前記構築されたスキャンチェーンを修正するステップと、
前記修正されたスキャンチェーンに基づいて前記セルの再配線情報を生成するステップとをコンピュータに実行させることを特徴とする回路レイアウトプログラム。 Generating a clock tree for distributing clock signals to cells arranged on a semiconductor chip;
Generating arrangement information of cells arranged on the semiconductor chip;
Generating wiring information of cells arranged on the semiconductor chip;
Based on the delay amount of the wiring wired to the cell, constructing a scan chain in which the cells are reconnected in order of slow clock arrival time;
Modifying the constructed scan chain based on the wiring length of the wiring placed in the cell;
A circuit layout program causing a computer to execute the step of generating rewiring information of the cell based on the modified scan chain.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005119448A JP2006302996A (en) | 2005-04-18 | 2005-04-18 | Semiconductor integrated circuit, and circuit layout apparatus, method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005119448A JP2006302996A (en) | 2005-04-18 | 2005-04-18 | Semiconductor integrated circuit, and circuit layout apparatus, method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006302996A true JP2006302996A (en) | 2006-11-02 |
Family
ID=37470969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005119448A Pending JP2006302996A (en) | 2005-04-18 | 2005-04-18 | Semiconductor integrated circuit, and circuit layout apparatus, method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006302996A (en) |
-
2005
- 2005-04-18 JP JP2005119448A patent/JP2006302996A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5232019B2 (en) | Apparatus, system, and method for multiple processor cores | |
JP2009038072A (en) | Semiconductor integrated circuit, and development method thereof | |
JPWO2006030904A1 (en) | Semiconductor device and communication control method | |
JP2005513626A (en) | Clock tree synthesis for mixed region clocks | |
JP2007272687A (en) | Timing verification method and device for semiconductor integrated circuit | |
JP2007027841A (en) | Design apparatus, method, and program for semiconductor integrated circuit | |
JP2007123336A (en) | Clock structure method of semiconductor integrated circuit and its program | |
US7913219B2 (en) | Orientation optimization method of 2-pin logic cell | |
US6711089B2 (en) | Method and apparatus for performing signal synchronization | |
US7162707B2 (en) | Scan path timing optimizing apparatus determining connection order of scan path circuits to realize optimum signal timings | |
JP2002083000A (en) | Logic circuit design method and logic circuit | |
JP4473163B2 (en) | How to eliminate scan chain hold errors | |
JP2006302996A (en) | Semiconductor integrated circuit, and circuit layout apparatus, method, and program | |
CN112580278B (en) | Optimization method and optimization device for logic circuit and storage medium | |
JP2006302995A (en) | Semiconductor integrated circuit, and circuit layout apparatus, method, and program | |
US7746785B2 (en) | Time multiplexing logic in physical design domain for multiple instantiation | |
JP2008219535A (en) | Synchronous circuit | |
JP2005004496A (en) | Method and device for laying out semiconductor integrated circuit | |
JP2005116793A (en) | Semiconductor integrated circuit and its clock wiring method | |
JP2006319162A (en) | Method and program for clock tree generation | |
JP2012137986A (en) | Layout design device for semiconductor integrated circuit, layout design method for semiconductor integrated circuit, and program | |
JP4845400B2 (en) | Semiconductor device design method and semiconductor device | |
JPH1092939A (en) | Method of auto placement and routing of semiconductor integrated circuit | |
JP2003256488A (en) | Method for layout of lsi, program, and recording medium | |
JPWO2008056468A1 (en) | Semiconductor integrated circuit and layout method |