JP2008187027A - Design method of semiconductor integrated circuit - Google Patents

Design method of semiconductor integrated circuit Download PDF

Info

Publication number
JP2008187027A
JP2008187027A JP2007019505A JP2007019505A JP2008187027A JP 2008187027 A JP2008187027 A JP 2008187027A JP 2007019505 A JP2007019505 A JP 2007019505A JP 2007019505 A JP2007019505 A JP 2007019505A JP 2008187027 A JP2008187027 A JP 2008187027A
Authority
JP
Japan
Prior art keywords
clock
common
delay time
target
cell
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
Application number
JP2007019505A
Other languages
Japanese (ja)
Inventor
Yuki Nishimaru
由貴 西丸
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 Electronics Corp
Original Assignee
NEC Electronics 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 Electronics Corp filed Critical NEC Electronics Corp
Priority to JP2007019505A priority Critical patent/JP2008187027A/en
Publication of JP2008187027A publication Critical patent/JP2008187027A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To reduce the different route clock skew by delay fluctuation caused by the variation. <P>SOLUTION: A plurality of cells and a clock tree 2 are arranged in a coordinate region 1. Clock buffers 4-1, 4-2, 12 and 22 are disposed on the clock tree 2. Dummy clock buffers 18 and 28 for adjusting clock skew which occurs between non-common nets are connected to first and second non-common nets (13, 15-1, 15-2 and 17) and (23, 25-1 to 25-3 and 27) of the clock tree 2. For transferring data between the cells 16-2 and 26-1, the different route clock skew may arise since the cells 16-2 and 26-1 are connected to the first and second non-common nets. Thus, a connection change dummy clock buffer 29 is connected to the second non-common nets (23, 25-1 to 25-3 and 27) instead of the cell 26-1, and the cell 26-1 is connected to the dummy clock buffer 18. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、半導体集積回路を設計する設計方法に関する。   The present invention relates to a design method for designing a semiconductor integrated circuit.

半導体集積回路を設計するためのコンピュータが開発されている。そのコンピュータは、半導体集積回路を構成する複数のセル(フリップフロップ)を所定の座標領域(X、Y)に配置し、その複数のセルの各々に入力端からのクロックが供給されるように、配線が引き回されたクロックツリーを所定の座標領域(X、Y)に配置する。また、コンピュータは、クロックをドライブするためのクロックバッファをクロックツリー上に配置する。   Computers for designing semiconductor integrated circuits have been developed. The computer arranges a plurality of cells (flip-flops) constituting a semiconductor integrated circuit in a predetermined coordinate area (X, Y), and a clock from an input end is supplied to each of the plurality of cells. The clock tree in which the wiring is routed is arranged in a predetermined coordinate area (X, Y). The computer also arranges a clock buffer for driving the clock on the clock tree.

例えば、複数のセルのうちの第1、第2セル群にクロックを供給するものとする。この場合、クロックが入力端から第1セル群に伝達されるまでの第1遅延時間と、クロックが入力端から第2セル群に伝達されるまでの第2遅延時間とが同一であることが望ましい。しかし、第1遅延時間と第2遅延時間との時間差が大きい場合、クロックスキューが生じてしまう。このクロックスキューを低減するために、第1遅延時間と第2遅延時間とを同一の遅延時間に調整する設計方法が、特開2001−306643号公報に記載されている。   For example, the clock is supplied to the first and second cell groups of the plurality of cells. In this case, the first delay time until the clock is transmitted from the input end to the first cell group may be the same as the second delay time until the clock is transmitted from the input end to the second cell group. desirable. However, when the time difference between the first delay time and the second delay time is large, clock skew occurs. Japanese Patent Laid-Open No. 2001-306643 discloses a design method for adjusting the first delay time and the second delay time to the same delay time in order to reduce the clock skew.

図1は、従来の半導体集積回路の設計方法が適用される設計システムの構成を示している。その設計システムは、コンピュータ140と、入力装置143と、出力装置144と、ソフトウェアである設計ツール145とを具備している。   FIG. 1 shows the configuration of a design system to which a conventional semiconductor integrated circuit design method is applied. The design system includes a computer 140, an input device 143, an output device 144, and a design tool 145 that is software.

設計ツール145は、コンピュータプログラムである制御部150と、配置情報ファイル161と、遅延情報ファイル162とを含んでいる。配置情報ファイル161は、半導体集積回路を構成するための部品が配置される所定の座標領域(X、Y)を有している。配置情報ファイル161には、部品を識別する名称と、その部品が所定の座標領域に配置されたときの座標(X、Y)とが制御部150によって格納される。遅延情報ファイル162には、クロックが部品から部品に伝達されるときの座標と、そのときの遅延時間とが制御部150によって格納される。   The design tool 145 includes a control unit 150 that is a computer program, an arrangement information file 161, and a delay information file 162. The arrangement information file 161 has a predetermined coordinate area (X, Y) in which parts for configuring the semiconductor integrated circuit are arranged. In the arrangement information file 161, a name for identifying a part and coordinates (X, Y) when the part is arranged in a predetermined coordinate area are stored by the control unit 150. In the delay information file 162, the coordinates when the clock is transmitted from part to part and the delay time at that time are stored by the control unit 150.

図2は、所定の座標領域(X、Y)である座標領域101に配置される半導体集積回路を示している。   FIG. 2 shows a semiconductor integrated circuit arranged in a coordinate area 101 which is a predetermined coordinate area (X, Y).

制御部150は、ユーザによる入力装置143の操作に応じて、配置情報ファイル161を新規に作成し、その配置情報ファイル161の座標領域101を出力装置144(表示装置)に表示する。この制御部150は、ユーザによる入力装置143の操作に応じて、上記の部品として複数のセル116−1、116−2、126−1〜126−3、…を座標領域101に配置する。複数のセル116−1、116−2、126−1〜126−3、…は、クロックCLKに応じて動作する回路である。   The control unit 150 newly creates an arrangement information file 161 in accordance with the operation of the input device 143 by the user, and displays the coordinate area 101 of the arrangement information file 161 on the output device 144 (display device). The control unit 150 arranges a plurality of cells 116-1, 116-2, 126-1 to 126-3,... In the coordinate area 101 as the above components in accordance with the operation of the input device 143 by the user. The plurality of cells 116-1, 116-2, 126-1 to 126-3,... Are circuits that operate according to the clock CLK.

制御部150は、クロックツリー102を座標領域101に配置する。クロックツリー102は、上記の部品として、配線(103、105)と、分岐点106と、複数のブロック131〜134とを含んでいる。配線(103、105)の一端は、クロックCLKが供給される入力端INに接続されている。配線(103、105)の他端は、分岐点106を介して複数のブロック131〜134に接続されている。ここで、複数のブロック131〜134のうちのブロック131について説明する。   The control unit 150 places the clock tree 102 in the coordinate area 101. The clock tree 102 includes wiring (103, 105), a branch point 106, and a plurality of blocks 131 to 134 as the above components. One end of the wiring (103, 105) is connected to an input end IN to which a clock CLK is supplied. The other end of the wiring (103, 105) is connected to a plurality of blocks 131 to 134 via a branch point 106. Here, the block 131 among the plurality of blocks 131 to 134 will be described.

ブロック131は、配線(107、108)と、分岐点109と、複数のブロック110、120とを含んでいる。配線(107、108)は、その一端に分岐点106が接続され、その他端に分岐点109を介して複数のブロック110、120が接続されている。   The block 131 includes wiring (107, 108), a branch point 109, and a plurality of blocks 110, 120. The wiring (107, 108) has a branch point 106 connected to one end thereof, and a plurality of blocks 110, 120 connected to the other end via a branch point 109.

ブロック110は、配線(111、113)と、分岐点114と、配線群115−1、115−2と、上記の複数のセル116−1、116−2、126−1〜126−3、…のうちのセル群116−1、116−2とを含んでいる。配線(111、113)は、その一端に分岐点109が接続され、その他端に分岐点114が接続されている。配線群115−1、115−2は、それぞれ、その一端に分岐点114が接続され、その他端にセル群116−1、116−2が接続されている。即ち、セル群116−1、116−2は並列接続されている。   The block 110 includes a wiring (111, 113), a branch point 114, a wiring group 115-1, 115-2, and the plurality of cells 116-1, 116-2, 126-1 to 126-3,. Cell groups 116-1 and 116-2. The wiring (111, 113) has a branch point 109 connected to one end thereof and a branch point 114 connected to the other end thereof. Each of the wiring groups 115-1 and 115-2 has a branch point 114 connected to one end thereof, and cell groups 116-1 and 116-2 connected to the other ends thereof. That is, the cell groups 116-1 and 116-2 are connected in parallel.

ブロック120は、配線(121、123)と、分岐点124と、配線群125−1〜125−3と、上記の複数のセル116−1、116−2、126−1〜126−3、…のうちのセル群126−1〜126−3とを含んでいる。配線(121、123)は、その一端に分岐点109が接続され、その他端に分岐点124が接続されている。配線群125−1〜125−3は、それぞれ、その一端に分岐点124が接続され、その他端にセル群126−1〜126−3が接続されている。即ち、セル群126−1〜126−3は並列接続されている。   The block 120 includes wiring (121, 123), a branch point 124, wiring groups 125-1 to 125-3, and the plurality of cells 116-1, 116-2, 126-1 to 126-3,. Cell groups 126-1 to 126-3. The wiring (121, 123) has a branch point 109 connected to one end thereof and a branch point 124 connected to the other end thereof. Each of the wiring groups 125-1 to 125-3 has a branch point 124 connected to one end thereof, and cell groups 126-1 to 126-3 connected to the other end thereof. That is, the cell groups 126-1 to 126-3 are connected in parallel.

制御部150は、配置情報ファイル161上のクロックツリー102を参照して、クロックCLKをドライブするためのクロックバッファの段数を決定する。制御部150は、ブロック110に対して、入力端INからセル群116−1、116−2に配置された分岐点(分岐点106、109、114)の数により、クロックバッファが3段必要であることを認識する。制御部150は、1つ目のクロックバッファとしてクロックバッファ104−1を配線(103、105)上に接続し、2つ目のクロックバッファとしてクロックバッファ104−2を配線(107、108)上に接続し、3つ目のクロックバッファとしてクロックバッファ112を配線(111、113)上に接続する。   The control unit 150 refers to the clock tree 102 on the arrangement information file 161 and determines the number of stages of the clock buffer for driving the clock CLK. The control unit 150 requires three stages of clock buffers for the block 110 depending on the number of branch points (branch points 106, 109, and 114) arranged in the cell groups 116-1 and 116-2 from the input terminal IN. Recognize that there is. The control unit 150 connects the clock buffer 104-1 as the first clock buffer on the wiring (103, 105), and the clock buffer 104-2 as the second clock buffer on the wiring (107, 108). The clock buffer 112 is connected as a third clock buffer on the wiring (111, 113).

また、制御部150は、ブロック120に対して、入力端INからセル群126−1〜126−3に配置された分岐点(分岐点106、109、124)の数により、クロックバッファが3段必要であることを認識する。1つ目、2つ目のクロックバッファは、それぞれ、上記のクロックバッファ104−1、104−2に対応する。制御部150は、3つ目のクロックバッファとしてクロックバッファ122を配線(121、123)上に接続する。   Further, the control unit 150 has three stages of clock buffers for the block 120 depending on the number of branch points (branch points 106, 109, and 124) arranged in the cell groups 126-1 to 126-3 from the input terminal IN. Recognize that it is necessary. The first and second clock buffers correspond to the clock buffers 104-1 and 104-2, respectively. The control unit 150 connects the clock buffer 122 as a third clock buffer on the wiring (121, 123).

制御部150は、配線111、113と配線群115−1、115−2とクロックバッファ112とによる遅延に基づいて、クロックCLKが分岐点109からセル群116−1、116−2に伝達されるまでの遅延時間t110を算出する。また、制御部150は、配線121、123と配線群125−1〜125−3とクロックバッファ122とによる遅延に基づいて、クロックCLKが分岐点109からセル群126−1〜126−3に伝達されるまでの遅延時間t120を算出する。   The control unit 150 transmits the clock CLK from the branch point 109 to the cell groups 116-1 and 116-2 based on the delay caused by the wirings 111 and 113, the wiring groups 115-1 and 115-2, and the clock buffer 112. Until the delay time t110 is calculated. Further, the control unit 150 transmits the clock CLK from the branch point 109 to the cell groups 126-1 to 126-3 based on the delays caused by the wirings 121 and 123, the wiring groups 125-1 to 125-3, and the clock buffer 122. The delay time t120 until it is calculated is calculated.

遅延時間t110、t120の算出方法としては、既知の方法が用いられる。例えば、上記の配線、クロックバッファには、予め設定された設定遅延時間と、温度、電圧、製造のばらつきによるばらつき遅延時間とが考慮される。配線における設定遅延時間は、配線の長さに比例する。   A known method is used as a method of calculating the delay times t110 and t120. For example, a preset delay time set in advance and a variation delay time due to variations in temperature, voltage, and manufacturing are taken into consideration for the wiring and clock buffer. The set delay time in the wiring is proportional to the length of the wiring.

制御部150は、分岐点109からセル群116−1、116−2までの座標と、遅延時間t110とを遅延情報ファイル162に格納する。また、制御部150は、分岐点109からセル群126−1〜126−3までの座標と、遅延時間t120とを遅延情報ファイル162に格納する。   The control unit 150 stores the coordinates from the branch point 109 to the cell groups 116-1 and 116-2 and the delay time t110 in the delay information file 162. Further, the control unit 150 stores the coordinates from the branch point 109 to the cell groups 126-1 to 126-3 and the delay time t120 in the delay information file 162.

制御部150は、遅延情報ファイル162を参照して、遅延時間t110と遅延時間t120とを同一の遅延時間に調整するスキュー調整処理を実行する。スキュー調整処理において、制御部150は、スキュー調整用配線117、127をそれぞれ分岐点114、124に接続し、スキュー調整用配線117、127にそれぞれダミークロックバッファ118、128の入力を接続する。ダミークロックバッファ118、128の出力は接続されない。   The control unit 150 refers to the delay information file 162 and executes a skew adjustment process for adjusting the delay time t110 and the delay time t120 to the same delay time. In the skew adjustment processing, the control unit 150 connects the skew adjustment wirings 117 and 127 to the branch points 114 and 124, respectively, and connects the inputs of the dummy clock buffers 118 and 128 to the skew adjustment wirings 117 and 127, respectively. The outputs of the dummy clock buffers 118 and 128 are not connected.

上記のスキュー調整用配線117、127は、分岐点114、124間に生じるクロックスキューを調整するための容量を有している。このため、スキュー調整処理を実行することにより、クロックスキューを小さくすることができる。   The skew adjusting wires 117 and 127 have a capacity for adjusting a clock skew generated between the branch points 114 and 124. For this reason, the clock skew can be reduced by executing the skew adjustment processing.

特開2001−306643号公報JP 2001-306643 A

例えば、図2に示されるように、セル群116−1、116−2のうちの1つのセルとして対象セル116−2と、セル群126−1〜126−3のうちの1つのセルとして対象セル126−1とがデータの受け渡しを行うものとする。対象セル116−2、126−1がそれぞれ分岐点114、124に接続されていることにより、クロックCLKが分岐点109から対象セル116−2に伝達されるまでの遅延時間と、クロックCLKが分岐点109から対象セル126−1に伝達されるまでの遅延時間が大きくなり、遅延変動に起因するクロックスキューが大きく生じる場合がある。このクロックスキューを異経路クロックスキューと称する。   For example, as shown in FIG. 2, the target cell 116-2 as one cell of the cell groups 116-1 and 116-2 and the target cell as one of the cell groups 126-1 to 126-3. Assume that data is transferred to and from the cell 126-1. Since the target cells 116-2 and 126-1 are connected to the branch points 114 and 124, respectively, the delay time until the clock CLK is transmitted from the branch point 109 to the target cell 116-2 and the clock CLK are branched. The delay time from the point 109 to the target cell 126-1 is increased, and there is a case where a clock skew due to delay variation is increased. This clock skew is called a different path clock skew.

その理由として、対象セル116−2、126−1に対して、共通の分岐点は分岐点109である。この場合、対象セル116−2、126−1のそれぞれに対する非共通部分は、分岐点109から配線115−2、125−1まである。このため、クロックCLKが分岐点109から対象セル116−2に伝達されるまでの対象遅延時間と、クロックCLKが分岐点109から対象セル126−1に伝達されるまでの対象遅延時間が大きくなってしまう。   The reason is that the common branch point is the branch point 109 for the target cells 116-2 and 126-1. In this case, the non-common part for each of the target cells 116-2 and 126-1 is from the branch point 109 to the wirings 115-2 and 125-1. Therefore, the target delay time until the clock CLK is transmitted from the branch point 109 to the target cell 116-2 and the target delay time until the clock CLK is transmitted from the branch point 109 to the target cell 126-1 are increased. End up.

このように、対象セル116−2、126−1に至るまでの非共通部分が長いと、それぞれの経路に対して異なる遅延変動に起因する上記の異経路クロックスキューが生じてしまう。   As described above, when the non-common part up to the target cells 116-2 and 126-1 is long, the above-mentioned different path clock skew due to different delay fluctuations occurs for each path.

以下に、[発明を実施するための最良の形態]で使用する番号・符号を用いて、課題を解決するための手段を説明する。これらの番号・符号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]の記載との対応関係を明らかにするために付加されたものであるが、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。   Hereinafter, means for solving the problem will be described using the numbers and symbols used in [Best Mode for Carrying Out the Invention]. These numbers and symbols are added to clarify the correspondence between the description of [Claims] and the description of [Best Mode for Carrying Out the Invention]. It should not be used to interpret the technical scope of the invention described in “

本発明の半導体集積回路の設計方法は、
クロック(CLK)に応じて動作する複数のセル(16−1、16−2、26−1〜26−3、…)を座標領域(1)に配置するセル配置ステップ(S1)と、
前記クロック(CLK)が入力される入力ネット(5、7)と、前記複数のセル(16−1、16−2、26−1〜26−3、…)である第1、第2セル群(16−1、16−2)(26−1〜26−3)がそれぞれ並列接続された第1、第2非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)と、前記入力ネット(5、7)と前記第1、第2非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)との間に接続された共通ネット(8、11、21)とを含むクロックツリー(2)を前記座標領域(1)に配置するツリー配置ステップ(S2)と、
前記入力ネット(5、7)と前記共通ネット(8、11、21)との間と、前記共通ネット(8、11、21)と前記第1、第2非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)との間に、クロックバッファ(4−2)(12)(22)を接続するバッファ配置ステップ(S3)と、
前記第1、第2非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)間に生じるクロックスキューを調整するための第1、第2ダミークロックバッファ(18)(28)をそれぞれ前記第1、第2非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)に接続するスキュー調整ステップ(S5)と、
前記第1、第2セル群(16−1、16−2)(26−1〜26−3)のうちの1つのセルとして第1、第2対象セル(16−2)(26−1)間でデータの受け渡しを行う場合(S6−YES)、前記第1、第2対象セル(16−2)(26−1)がそれぞれ前記第1、第2非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)に接続されていることにより生じる遅延変動起因の異経路クロックスキューを調整するために、
前記第2対象セル(26−1)に代えて接続変更用ダミークロックバッファ(29)を前記第2非共通ネット(23、25−1〜25−3、27)に接続する第1接続変更ステップ(S9)と、
前記第2対象セル(26−1)を前記第1ダミークロックバッファ(18)に接続する第2接続変更ステップ(S9)と
を具備している。
A method for designing a semiconductor integrated circuit according to the present invention includes:
A cell placement step (S1) for placing a plurality of cells (16-1, 16-2, 26-1 to 26-3,...) Operating according to a clock (CLK) in the coordinate area (1);
Input nets (5, 7) to which the clock (CLK) is input, and first and second cell groups including the plurality of cells (16-1, 16-2, 26-1 to 26-3,...). The first and second non-common nets (13, 15-1, 15-2, 17) (23, 25-) in which (16-1, 16-2) (26-1 to 26-3) are connected in parallel, respectively. 1-25-3, 27), the input net (5, 7) and the first and second non-common nets (13, 15-1, 15-2, 17) (23, 25-1-25- A tree placement step (S2) for placing a clock tree (2) including a common net (8, 11, 21) connected to the coordinate region (1) between
Between the input net (5, 7) and the common net (8, 11, 21), the common net (8, 11, 21) and the first and second non-common nets (13, 15-1) , 15-2, 17) (23, 25-1 to 25-3, 27), a buffer arrangement step (S 3) for connecting the clock buffers (4-2), (12) and (22),
First and second for adjusting clock skew generated between the first and second non-common nets (13, 15-1, 15-2, 17) (23, 25-1 to 25-3, 27). Skew for connecting the dummy clock buffers (18) and (28) to the first and second non-common nets (13, 15-1, 15-2, 17) (23, 25-1 to 25-3, 27), respectively. An adjustment step (S5);
First and second target cells (16-2) and (26-1) as one cell in the first and second cell groups (16-1, 16-2) (26-1 to 26-3) (S6-YES), the first and second target cells (16-2) and (26-1) are respectively connected to the first and second non-common nets (13, 15-1, 15-2, 17) (23, 25-1 to 25-3, 27) in order to adjust the different path clock skew due to delay variation caused by being connected to
A first connection changing step of connecting a connection changing dummy clock buffer (29) to the second non-common net (23, 25-1 to 25-3, 27) instead of the second target cell (26-1). (S9),
A second connection changing step (S9) for connecting the second target cell (26-1) to the first dummy clock buffer (18).

以上により、本発明の半導体集積回路の設計方法によれば、遅延変動起因の異経路クロックスキューを小さくすることができる。   As described above, according to the semiconductor integrated circuit design method of the present invention, it is possible to reduce the different path clock skew caused by the delay variation.

その理由として、第1、第2対象セル(16−2)(26−1)に対して経路が異なるため、それぞれの経路に対して異なる遅延変動に起因する上記の異経路クロックスキューが生じる。第1、第2接続変更ステップ(S9)が実行される前では、第1、第2対象セル(16−2)(26−1)に対して、共通のネットは共通ネット(8、11、21)だけであり、非共通のネットは非共通ネット(13、15−1、15−2、17)(25−1〜25−3、27)である。この場合、第1、第2対象セル(16−2)(26−1)のそれぞれに対する非共通部分は、非共通ネット(13、15−1、15−2、17)(25−1〜25−3、27)である。このため、クロック(CLK)が共通ネット(8、11、21)から第1対象セル(16−2)に伝達されるまでの対象遅延時間(t1016−2)と、クロック(CLK)が共通ネット(8、11、21)から第2対象セル(26−1)に伝達されるまでの対象遅延時間(t2026−1)が大きくなってしまう。 The reason is that the path is different from that of the first and second target cells (16-2) and (26-1), and thus the above-mentioned different path clock skew is caused by the different delay variation for each path. Before the first and second connection changing steps (S9) are executed, the common nets are the common nets (8, 11, 11) with respect to the first and second target cells (16-2) (26-1). 21), and non-common nets are non-common nets (13, 15-1, 15-2, 17) (25-1 to 25-3, 27). In this case, the non-common part for each of the first and second target cells (16-2) and (26-1) is the non-common net (13, 15-1, 15-2, 17) (25-1 to 25). -3, 27). For this reason, the clock (CLK) is common to the target delay time (t10 16-2 ) until the clock (CLK) is transmitted from the common net (8, 11, 21) to the first target cell (16-2). The target delay time (t20 26-1 ) until it is transmitted from the net (8, 11, 21) to the second target cell ( 26-1 ) is increased.

一方、第1、第2接続変更ステップ(S9)が実行されたとき、第1、第2対象セル(16−2)(26−1)に対して、共通のネットは、共通ネット(8、11、21)と非共通ネット(13、15−1、15−2、17)であり、非共通のネットは非共通ネット(13、15−1、15−2、17)である。この場合、第1対象セル(16−2)、26−1のそれぞれに対する非共通部分は、非共通ネット(13、15−1、15−2、17)だけになる。このため、クロック(CLK)が非共通ネット(13、15−1、15−2、17)から第1対象セル(16−2)に伝達されるまでの改善対象遅延時間(t1016−2’)と、クロック(CLK)が非共通ネット(13、15−1、15−2、17)から第2対象セル(26−1)に伝達されるまでの改善対象遅延時間(t2026−1’)は、上記の遅延時間に比べて大幅に短くなる。このように、第1、第2対象セル(16−2)(26−1)に対して非共通部分が短くなる接続変更を行うことにより、非共通部分に対しての異なる遅延変動に起因する異経路クロックスキューを小さくすることができる。 On the other hand, when the first and second connection changing steps (S9) are executed, the common nets are common nets (8, 8) with respect to the first and second target cells (16-2) (26-1). 11, 21) and non-common nets (13, 15-1, 15-2, 17), and non-common nets are non-common nets (13, 15-1, 15-2, 17). In this case, the non-common part for each of the first target cells (16-2) and 26-1 is only the non-common net (13, 15-1, 15-2, 17). Therefore, the improvement target delay time (t10 16-2 ′) from when the clock (CLK) is transmitted from the non-common net (13, 15-1, 15-2, 17) to the first target cell (16-2). ) And the improvement target delay time (t20 26-1 ′) until the clock (CLK) is transmitted from the non-common net (13, 15-1, 15-2, 17) to the second target cell (26-1). ) Is significantly shorter than the above delay time. As described above, the connection change that shortens the non-common part is performed on the first and second target cells (16-2) and (26-1), thereby causing different delay fluctuations with respect to the non-common part. Different path clock skew can be reduced.

以下に添付図面を参照して、本発明の半導体集積回路の設計方法について詳細に説明する。   Hereinafter, a method for designing a semiconductor integrated circuit according to the present invention will be described in detail with reference to the accompanying drawings.

図3は、本発明の半導体集積回路の設計方法が適用される設計システムの構成を示している。その設計システムは、コンピュータ40と、入力装置43と、出力装置44とを具備している。入力装置43と出力装置44は、コンピュータ40に接続されている。入力装置43は、キーボード、ポインティングデバイスを含み、出力装置44は、表示装置を含んでいる。   FIG. 3 shows the configuration of a design system to which the semiconductor integrated circuit design method of the present invention is applied. The design system includes a computer 40, an input device 43, and an output device 44. The input device 43 and the output device 44 are connected to the computer 40. The input device 43 includes a keyboard and a pointing device, and the output device 44 includes a display device.

コンピュータ40は、コンピュータプログラムを格納する記憶部41と、コンピュータプログラムを実行する実行部であるCPU(Central Processing Unit)42とを備えている。   The computer 40 includes a storage unit 41 that stores a computer program, and a CPU (Central Processing Unit) 42 that is an execution unit that executes the computer program.

設計システムは、更に、ソフトウェアである設計ツール45を具備している。設計ツール45は、記憶部41にインストールされる。この設計ツール45は、コンピュータプログラム50と、ファイル60とを含んでいる。ファイル60は、配置情報ファイル61、遅延情報ファイル62を含んでいる。   The design system further includes a design tool 45 that is software. The design tool 45 is installed in the storage unit 41. The design tool 45 includes a computer program 50 and a file 60. The file 60 includes an arrangement information file 61 and a delay information file 62.

図4は、配置情報ファイル61を示している。配置情報ファイル61は、半導体集積回路を構成するための部品が配置される所定の座標領域(X、Y)を有している。配置情報ファイル61には、部品を識別する名称と、その部品が所定の座標領域に配置されたときの座標(X、Y)とがコンピュータプログラム50によって格納される。   FIG. 4 shows the arrangement information file 61. The arrangement information file 61 has a predetermined coordinate area (X, Y) in which parts for configuring the semiconductor integrated circuit are arranged. The arrangement information file 61 stores a name for identifying a part and coordinates (X, Y) when the part is arranged in a predetermined coordinate area by the computer program 50.

図5は、遅延情報ファイル62を示している。遅延情報ファイル62には、クロックが部品から部品に伝達されるときの座標と、そのときの遅延時間とがコンピュータプログラム50によって格納される。   FIG. 5 shows the delay information file 62. In the delay information file 62, the coordinates when the clock is transmitted from part to part and the delay time at that time are stored by the computer program 50.

コンピュータプログラム50は、後述のセル配置部51、ツリー配置部52、バッファ配置部53、遅延時間算出部54、スキュー調整部55、対象遅延時間算出部56、接続変更部57を含んでいる。セル配置部51、ツリー配置部52、バッファ配置部53、遅延時間算出部54、スキュー調整部55は、前述のコンピュータプログラムである制御部150に対応する。例えば、セル配置部51、ツリー配置部52、バッファ配置部53、遅延時間算出部54、スキュー調整部55は、既存コンピュータプログラム150として、記憶部41に予めインストールされているものとする。この場合、その既存コンピュータプログラム150に対して、対象遅延時間算出部56、接続変更部57は、接続変更用コンピュータプログラム50として、更に、記憶部41に追加インストールされる。   The computer program 50 includes a cell placement unit 51, a tree placement unit 52, a buffer placement unit 53, a delay time calculation unit 54, a skew adjustment unit 55, a target delay time calculation unit 56, and a connection change unit 57, which will be described later. The cell placement unit 51, the tree placement unit 52, the buffer placement unit 53, the delay time calculation unit 54, and the skew adjustment unit 55 correspond to the control unit 150 that is the above-described computer program. For example, the cell placement unit 51, the tree placement unit 52, the buffer placement unit 53, the delay time calculation unit 54, and the skew adjustment unit 55 are assumed to be installed in the storage unit 41 in advance as the existing computer program 150. In this case, the target delay time calculation unit 56 and the connection change unit 57 are additionally installed in the storage unit 41 as the connection change computer program 50 for the existing computer program 150.

図6、図7は、所定の座標領域(X、Y)である座標領域1に配置される半導体集積回路を示している。   6 and 7 show a semiconductor integrated circuit arranged in the coordinate area 1 which is a predetermined coordinate area (X, Y).

図6に示されるように、セル配置部51は、ユーザによる入力装置43の操作に応じて、配置情報ファイル61を新規に作成し、その配置情報ファイル61の座標領域1を出力装置44(表示装置)に表示する。このセル配置部51は、ユーザによる入力装置43の操作に応じて、上記の部品として複数のセル16−1、16−2、26−1〜26−3、…を座標領域1に配置する。複数のセル16−1、16−2、26−1〜26−3、…は、クロックCLKに応じて動作する回路であり、その回路としては、フリップフロップ、レジスタが例示される。本実施形態では、フリップフロップであるものとする。   As shown in FIG. 6, the cell placement unit 51 newly creates a placement information file 61 in accordance with the operation of the input device 43 by the user, and outputs the coordinate area 1 of the placement information file 61 to the output device 44 (display). Displayed on the device. The cell arrangement unit 51 arranges a plurality of cells 16-1, 16-2, 26-1 to 26-3,... In the coordinate area 1 as the above components in accordance with the operation of the input device 43 by the user. The plurality of cells 16-1, 16-2, 26-1 to 26-3,... Operate in response to the clock CLK, and examples of the circuit include flip-flops and registers. In this embodiment, it is assumed to be a flip-flop.

ツリー配置部52は、クロックツリー2を座標領域1に配置する。クロックツリー2は、上記の部品として、共通配線(3、5)と、分岐点6と、複数のブロック31〜34とを含んでいる。共通配線(3、5)の一端は、クロックCLKが供給される入力端INに接続されている。共通配線(3、5)の他端は、分岐点6を介して複数のブロック31〜34に接続されている。ここで、複数のブロック31〜34のうちのブロック31について説明する。   The tree placement unit 52 places the clock tree 2 in the coordinate area 1. The clock tree 2 includes common wires (3, 5), a branch point 6, and a plurality of blocks 31 to 34 as the above components. One end of the common wiring (3, 5) is connected to an input end IN to which a clock CLK is supplied. The other end of the common wiring (3, 5) is connected to a plurality of blocks 31 to 34 via a branch point 6. Here, the block 31 among the plurality of blocks 31 to 34 will be described.

ブロック31は、共通配線(7、8)と、共通分岐点9と、複数のブロック10、20とを含んでいる。共通配線(7、8)は、その一端に分岐点6が接続され、その他端に共通分岐点9を介して複数のブロック10、20が接続されている。   The block 31 includes common wiring (7, 8), a common branch point 9, and a plurality of blocks 10, 20. The common wiring (7, 8) has a branch point 6 connected to one end thereof, and a plurality of blocks 10, 20 connected to the other end via a common branch point 9.

ブロック10は、中継配線(11、13)と、分岐点14と、配線群15−1、15−2と、上記の複数のセル16−1、16−2、26−1〜26−3、…のうちのセル群16−1、16−2とを含んでいる。中継配線(11、13)は、その一端に共通分岐点9が接続され、その他端に分岐点14が接続されている。配線群15−1、15−2は、それぞれ、その一端に分岐点14が接続され、その他端にセル群16−1、16−2が接続されている。即ち、セル群16−1、16−2は並列接続されている。   The block 10 includes a relay wiring (11, 13), a branch point 14, a wiring group 15-1, 15-2, and the plurality of cells 16-1, 16-2, 26-1 to 26-3, Of the cell groups 16-1 and 16-2. The relay wiring (11, 13) has a common branch point 9 connected to one end thereof and a branch point 14 connected to the other end thereof. Each of the wiring groups 15-1 and 15-2 has a branch point 14 connected to one end thereof, and cell groups 16-1 and 16-2 connected to the other ends thereof. That is, the cell groups 16-1 and 16-2 are connected in parallel.

ブロック20は、中継配線(21、23)と、分岐点24と、配線群25−1〜25−3と、上記の複数のセル16−1、16−2、26−1〜26−3、…のうちのセル群26−1〜26−3とを含んでいる。中継配線(21、23)は、その一端に共通分岐点9が接続され、その他端に分岐点24が接続されている。配線群25−1〜25−3は、それぞれ、その一端に分岐点24が接続され、その他端にセル群26−1〜26−3が接続されている。即ち、セル群26−1〜26−3は並列接続されている。   The block 20 includes a relay wiring (21, 23), a branch point 24, a wiring group 25-1 to 25-3, and the plurality of cells 16-1, 16-2, 26-1 to 26-3, Of the cell groups 26-1 to 26-3. The relay wiring (21, 23) has a common branch point 9 connected to one end thereof and a branch point 24 connected to the other end thereof. Each of the wiring groups 25-1 to 25-3 has a branch point 24 connected to one end thereof, and cell groups 26-1 to 26-3 connected to the other ends thereof. That is, the cell groups 26-1 to 26-3 are connected in parallel.

バッファ配置部53は、配置情報ファイル61上のクロックツリー2を参照して、クロックCLKをドライブするためのクロックバッファの段数を決定する。バッファ配置部53は、ブロック10に対して、入力端INからセル群16−1、16−2に配置された分岐点(分岐点6、共通分岐点9、分岐点14)の数により、クロックバッファが3段必要であることを認識する。バッファ配置部53は、1つ目のクロックバッファとしてクロックバッファ4−1を共通配線(3、5)上に接続し、2つ目のクロックバッファとしてクロックバッファ4−2を共通配線(7、8)上に接続し、3つ目のクロックバッファとしてクロックバッファ12を中継配線(11、13)上に接続する。   The buffer arrangement unit 53 refers to the clock tree 2 on the arrangement information file 61 and determines the number of stages of the clock buffer for driving the clock CLK. The buffer placement unit 53 clocks the block 10 according to the number of branch points (branch point 6, common branch point 9, branch point 14) placed in the cell groups 16-1 and 16-2 from the input terminal IN. Recognize that three stages of buffers are required. The buffer arrangement unit 53 connects the clock buffer 4-1 as the first clock buffer on the common wiring (3, 5), and connects the clock buffer 4-2 as the second clock buffer to the common wiring (7, 8). ) And a clock buffer 12 as a third clock buffer is connected on the relay wiring (11, 13).

この場合、共通配線(3、5)は共通配線3、5に分けられる。共通配線3は、その一端に入力端INが接続され、その他端にクロックバッファ4−1の入力が接続されている。共通配線5は、その一端にクロックバッファ4−1の出力が接続され、その他端に分岐点6が接続されている。また、共通配線(7、8)は共通配線7、8に分けられる。共通配線7は、その一端に分岐点6が接続され、その他端にクロックバッファ4−2の入力が接続されている。共通配線8は、その一端にクロックバッファ4−2の出力が接続され、その他端に共通分岐点9が接続されている。また、中継配線(11、13)は中継配線11、13に分けられる。中継配線11は、その一端に共通分岐点9が接続され、その他端にクロックバッファ12の入力が接続されている。中継配線13は、その一端にクロックバッファ12の出力が接続され、その他端に分岐点14が接続されている。   In this case, the common wires (3, 5) are divided into common wires 3, 5. The common line 3 has one end connected to the input end IN and the other end connected to the input of the clock buffer 4-1. The common wire 5 has one end connected to the output of the clock buffer 4-1 and the other end connected to the branch point 6. The common wiring (7, 8) is divided into common wirings 7, 8. The common wiring 7 has one end connected to the branch point 6 and the other end connected to the input of the clock buffer 4-2. The common wire 8 has one end connected to the output of the clock buffer 4-2 and the other end connected to the common branch point 9. The relay wiring (11, 13) is divided into relay wirings 11, 13. The relay wire 11 has a common branch point 9 connected to one end thereof and an input of the clock buffer 12 connected to the other end thereof. The relay wiring 13 has one end connected to the output of the clock buffer 12 and the other end connected to the branch point 14.

また、バッファ配置部53は、ブロック20に対して、入力端INからセル群26−1〜26−3に配置された分岐点(分岐点6、共通分岐点9、分岐点24)の数により、クロックバッファが3段必要であることを認識する。1つ目、2つ目のクロックバッファは、それぞれ、上記のクロックバッファ4−1、4−2に対応する。バッファ配置部53は、3つ目のクロックバッファとしてクロックバッファ22を中継配線(21、23)上に接続する。   In addition, the buffer arrangement unit 53 depends on the number of branch points (branch point 6, common branch point 9, branch point 24) arranged from the input terminal IN to the cell groups 26-1 to 26-3 with respect to the block 20. Recognize that three stages of clock buffers are required. The first and second clock buffers correspond to the clock buffers 4-1 and 4-2, respectively. The buffer arrangement unit 53 connects the clock buffer 22 as a third clock buffer on the relay wiring (21, 23).

この場合、中継配線(21、23)は中継配線21、23に分けられる。中継配線21は、その一端に共通分岐点9が接続され、その他端にクロックバッファ22の入力が接続されている。中継配線23は、その一端にクロックバッファ22の出力が接続され、その他端に分岐点24が接続されている。   In this case, the relay wiring (21, 23) is divided into the relay wirings 21, 23. The relay wire 21 has one end connected to the common branch point 9 and the other end connected to the input of the clock buffer 22. The relay wire 23 has one end connected to the output of the clock buffer 22 and the other end connected to the branch point 24.

遅延時間算出部54は、中継配線11、13と配線群15−1、15−2とクロックバッファ12とによる遅延に基づいて、クロックCLKが共通分岐点9からセル群16−1、16−2に伝達されるまでの遅延時間t10を算出する。また、遅延時間算出部54は、中継配線21、23と配線群25−1〜25−3とクロックバッファ22とによる遅延に基づいて、クロックCLKが共通分岐点9からセル群26−1〜26−3に伝達されるまでの遅延時間t20を算出する。   The delay time calculation unit 54 receives the clock CLK from the common branch point 9 to the cell groups 16-1 and 16-2 based on the delay caused by the relay wirings 11 and 13, the wiring groups 15-1 and 15-2, and the clock buffer 12. The delay time t10 until it is transmitted to is calculated. Further, the delay time calculation unit 54 receives the clock CLK from the common branch point 9 to the cell groups 26-1 to 26-26 based on the delays caused by the relay wirings 21 and 23, the wiring groups 25-1 to 25-3 and the clock buffer 22. -Delay time t20 until it is transmitted to -3.

遅延時間t10、t20の算出方法としては、既知の方法が用いられる。例えば、上記の配線、クロックバッファには、予め設定された設定遅延時間と、温度、電圧、製造のばらつきによるばらつき遅延時間とが考慮される。配線における設定遅延時間は、配線の長さに比例する。   A known method is used as a method of calculating the delay times t10 and t20. For example, a preset delay time set in advance and a variation delay time due to variations in temperature, voltage, and manufacturing are taken into consideration for the wiring and clock buffer. The set delay time in the wiring is proportional to the length of the wiring.

遅延時間算出部54は、共通分岐点9からセル群16−1、16−2までの座標と、遅延時間t10とを遅延情報ファイル62に格納する。また、遅延時間算出部54は、共通分岐点9からセル群26−1〜26−3までの座標と、遅延時間t20とを遅延情報ファイル62に格納する。   The delay time calculation unit 54 stores the coordinates from the common branch point 9 to the cell groups 16-1 and 16-2 and the delay time t10 in the delay information file 62. In addition, the delay time calculation unit 54 stores the coordinates from the common branch point 9 to the cell groups 26-1 to 26-3 and the delay time t 20 in the delay information file 62.

スキュー調整部55は、遅延情報ファイル62を参照して、遅延時間t10と遅延時間t20とを同一の遅延時間に調整するスキュー調整処理を実行する。スキュー調整処理において、スキュー調整部55は、スキュー調整用配線17、27をそれぞれ分岐点14、24に接続し、スキュー調整用配線17、27にそれぞれダミークロックバッファ18、28の入力を接続する。ダミークロックバッファ18、28の出力は接続されない。   The skew adjustment unit 55 refers to the delay information file 62 and executes a skew adjustment process for adjusting the delay time t10 and the delay time t20 to the same delay time. In the skew adjustment processing, the skew adjustment unit 55 connects the skew adjustment wirings 17 and 27 to the branch points 14 and 24, respectively, and connects the inputs of the dummy clock buffers 18 and 28 to the skew adjustment wirings 17 and 27, respectively. The outputs of the dummy clock buffers 18 and 28 are not connected.

スキュー調整用配線17、27は、分岐点14、24間に生じるクロックスキューを調整するための容量を有している。このため、スキュー調整処理を実行することにより、クロックスキューを小さくすることができる。   The skew adjustment wires 17 and 27 have a capacity for adjusting a clock skew generated between the branch points 14 and 24. For this reason, the clock skew can be reduced by executing the skew adjustment processing.

例えば、図6に示されるように、セル群16−1、16−2のうちの1つのセルとして対象セル16−2と、セル群26−1〜26−3のうちの1つのセルとして対象セル26−1とがデータの受け渡しを行うものとする。また、対象セル16−2、26−1は隣接しているものとする。対象セル16−2、26−1がそれぞれ分岐点14、24に接続されていることにより、クロックCLKが共通分岐点9から対象セル16−2に伝達されるまでの遅延時間と、クロックCLKが共通分岐点9から対象セル26−1に伝達されるまでの遅延時間が大きくなり、遅延変動に起因するクロックスキューが大きく生じる場合がある。このクロックスキューを異経路クロックスキューと称する。   For example, as shown in FIG. 6, the target cell 16-2 as one cell of the cell groups 16-1 and 16-2 and the target cell as one of the cell groups 26-1 to 26-3. It is assumed that the cell 26-1 exchanges data. Further, the target cells 16-2 and 26-1 are adjacent to each other. Since the target cells 16-2 and 26-1 are connected to the branch points 14 and 24, respectively, the delay time until the clock CLK is transmitted from the common branch point 9 to the target cell 16-2, and the clock CLK The delay time from the common branch point 9 to the transmission to the target cell 26-1 becomes large, and there may be a large clock skew due to delay variation. This clock skew is called a different path clock skew.

そこで、ユーザは、異経路クロックスキューが存在するか否かを調べるために、ユーザの入力装置43の操作により、対象セル16−2、26−1を指定する。対象セル16−2は、配線群15−1、15−2のうちの、変更候補配線として配線15−2に接続され、対象セル26−1は、配線群25−1〜25−3のうちの、変更候補配線として配線25−1に接続されている。このとき、対象遅延時間算出部56は、中継配線11、13と変更候補配線15−2とクロックバッファ12とによる遅延に基づいて、クロックCLKが共通分岐点9から対象セル16−2に伝達されるまでの対象遅延時間t1016−2を算出する。また、対象遅延時間算出部56は、中継配線21、23と変更候補配線25−1とクロックバッファ22とによる遅延に基づいて、クロックCLKが共通分岐点9から対象セル26−1に伝達されるまでの対象遅延時間t2026−1を算出する。 Therefore, the user designates the target cells 16-2 and 26-1 by operating the input device 43 of the user in order to check whether or not there is a different path clock skew. The target cell 16-2 is connected to the wiring 15-2 as a change candidate wiring in the wiring groups 15-1 and 15-2, and the target cell 26-1 is included in the wiring groups 25-1 to 25-3. The change candidate wiring is connected to the wiring 25-1. At this time, the target delay time calculation unit 56 transmits the clock CLK from the common branch point 9 to the target cell 16-2 based on the delays caused by the relay wirings 11 and 13, the change candidate wiring 15-2, and the clock buffer 12. The target delay time t10 16-2 is calculated. Further, the target delay time calculation unit 56 transmits the clock CLK from the common branch point 9 to the target cell 26-1 based on the delays caused by the relay wirings 21 and 23, the change candidate wiring 25-1, and the clock buffer 22. The target delay time t20 26-1 until is calculated.

対象遅延時間t1016−2、t2026−1の算出方法としては、遅延時間t10、t20の算出方法と同様に、既知の方法が用いられる。上述のように、例えば、上記の配線、クロックバッファには、上記の設定遅延時間、ばらつき遅延時間が考慮され、配線における設定遅延時間は、配線の長さに比例する。 As a calculation method of the target delay times t10 16-2 and t20 26-1 , a known method is used as in the calculation method of the delay times t10 and t20. As described above, for example, the above set delay time and variation delay time are considered in the above wiring and clock buffer, and the set delay time in the wiring is proportional to the length of the wiring.

対象遅延時間算出部56は、共通分岐点9から対象セル16−2までの座標と、対象遅延時間t1016−2とを遅延情報ファイル62に格納する。また、対象遅延時間算出部56は、共通分岐点9から対象セル26−1までの座標と、対象遅延時間t2026−1とを遅延情報ファイル62に格納する。 The target delay time calculation unit 56 stores the coordinates from the common branch point 9 to the target cell 16-2 and the target delay time t10 16-2 in the delay information file 62. In addition, the target delay time calculation unit 56 stores the coordinates from the common branch point 9 to the target cell 26-1 and the target delay time t 20 26-1 in the delay information file 62.

図7に示されるように、接続変更部57は、遅延情報ファイル62を参照して、対象遅延時間t1016−2と対象遅延時間t2026−1との遅延時間差が設定時間差よりも大きい場合、接続変更処理を実行する。接続変更処理において、接続変更部57は、変更候補配線25−1の他端から、対象セル26−1を切り離す。次に、接続変更部57は、変更候補配線25−1の他端にダミークロックバッファとして接続変更用ダミークロックバッファ29の入力を接続する。接続変更用ダミークロックバッファ29は、対象セル26−1の入力容量と同じ入力容量を有する。更に、接続変更部57は、対象セル26−1をダミークロックバッファ18に接続する。 As illustrated in FIG. 7, the connection changing unit 57 refers to the delay information file 62 and when the delay time difference between the target delay time t10 16-2 and the target delay time t20 26-1 is larger than the set time difference, Execute connection change processing. In the connection change process, the connection change unit 57 separates the target cell 26-1 from the other end of the change candidate wiring 25-1. Next, the connection changing unit 57 connects the input of the connection changing dummy clock buffer 29 as a dummy clock buffer to the other end of the change candidate wiring 25-1. The connection changing dummy clock buffer 29 has the same input capacity as that of the target cell 26-1. Further, the connection changing unit 57 connects the target cell 26-1 to the dummy clock buffer 18.

上述のように、対象セル16−2、26−1に対して経路が異なるため、それぞれの経路に対して異なる遅延変動に起因する上記の異経路クロックスキューが生じる。接続変更処理が実行される前では、対象セル16−2、26−1に対して、共通の分岐点は共通分岐点9である。この場合、対象セル16−2、26−1のそれぞれに対する非共通部分は、共通分岐点9から配線15−2、25−1まである。このため、クロックCLKが共通分岐点9から対象セル16−2に伝達されるまでの対象遅延時間t1016−2と、クロックCLKが共通分岐点9から対象セル26−1に伝達されるまでの対象遅延時間t2026−1が大きくなってしまう。 As described above, since the paths are different for the target cells 16-2 and 26-1, the above-mentioned different path clock skew is caused by different delay fluctuations for each path. Before the connection change process is executed, the common branch point is the common branch point 9 for the target cells 16-2 and 26-1. In this case, the non-common part with respect to each of the target cells 16-2 and 26-1 is from the common branch point 9 to the wirings 15-2 and 25-1. Therefore, the target delay time t10 16-2 until the clock CLK is transmitted from the common branch point 9 to the target cell 16-2, and the time until the clock CLK is transmitted from the common branch point 9 to the target cell 26-1. The target delay time t20 26-1 becomes large.

一方、接続変更処理が実行されたとき、対象セル16−2、26−1に対して、共通の分岐点は、共通分岐点9と分岐点14である。この場合、対象セル16−2、26−1のそれぞれに対する非共通部分は、分岐点14から配線15−2、17までになる。このため、クロックCLKが分岐点14から対象セル16−2に伝達されるまでの改善対象遅延時間t1016−2’と、クロックCLKが分岐点14から対象セル26−1に伝達されるまでの改善対象遅延時間t2026−1’は、上記の遅延時間に比べて大幅に短くなる。これにより、非共通部分に対しての異なる遅延変動に起因する異経路クロックスキューが上記のそれに比べて大幅に短くなる。 On the other hand, when the connection change process is executed, common branch points are the common branch point 9 and the branch point 14 for the target cells 16-2 and 26-1. In this case, a non-common part with respect to each of the target cells 16-2 and 26-1 is from the branch point 14 to the wirings 15-2 and 17. Therefore, the improvement target delay time t10 16-2 ′ until the clock CLK is transmitted from the branch point 14 to the target cell 16-2 and the time until the clock CLK is transmitted from the branch point 14 to the target cell 26-1. The improvement target delay time t20 26-1 ′ is significantly shorter than the above delay time. As a result, the different path clock skew caused by different delay fluctuations with respect to the non-common part is significantly shortened as compared with the above.

例えば、接続変更処理が実行される前では、対象遅延時間t1016−2として、クロックCLKが共通分岐点9から対象セル16−2に伝達されるまでの設定遅延時間が3.0[ns]であるものとする。また、対象遅延時間t2026−1として、クロックCLKが共通分岐点9から対象セル26−1に伝達されるまでの設定遅延時間が3.4[ns]であるものとする。この場合、対象遅延時間t1016−2と対象遅延時間t2026−1との遅延時間差は、3.4−3.0=0.4[ns]になる。そこで、ばらつき遅延時間の範囲を設定遅延時間の90%〜110%とした場合、そのばらつきの影響も含めた最大の遅延時間差は、3.4×1.1−3.0×0.9=1.04[ns]になる。 For example, before the connection change process is executed, the set delay time until the clock CLK is transmitted from the common branch point 9 to the target cell 16-2 as the target delay time t10 16-2 is 3.0 [ns]. Suppose that Further, it is assumed that the set delay time until the clock CLK is transmitted from the common branch point 9 to the target cell 26-1 is 3.4 [ns] as the target delay time t20 26-1 . In this case, the delay time difference between the target delay time t10 16-2 and the target delay time t20 26-1 is 3.4-3.0 = 0.4 [ns]. Therefore, when the range of the variation delay time is 90% to 110% of the set delay time, the maximum delay time difference including the influence of the variation is 3.4 × 1.1−3.0 × 0.9 = 1.04 [ns].

一方、接続変更処理が実行されたとき、改善対象遅延時間t1016−2’として、クロックCLKが分岐点14から対象セル16−2に伝達されるまでの設定遅延時間が1.0[ns]であるものとする。また、改善対象遅延時間t2026−1’として、クロックCLKが分岐点14から対象セル26−1に伝達されるまでの設定遅延時間が1.4[ns]であるものとする。この場合、対象遅延時間t1016−2と対象遅延時間t2026−1との遅延時間差は、1.4−1.0=0.4[ns]になる。そこで、ばらつき遅延時間の範囲を設定遅延時間の90%〜110%とした場合、そのばらつきの影響も含めた最大の遅延時間差は、1.4×1.1−1.0×0.9=0.64[ns]になる。この場合、接続変更処理が実行されたときのばらつきの影響も含めた最大遅延時間差と、接続変更処理が実行される前のばらつきの影響も含めた最大遅延時間差との差は、1.04−0.64=0.4になる。これにより、接続変更処理が実行されたとき、接続変更処理が実行される前に比べて、遅延時間差が最大で0.4[ns]も短縮される。つまり、ばらつきの影響も含まない遅延差は、接続変更処理の実行前と実行後で変化が無いのに対して、ばらつきを含めた遅延差は、この接続変更処理によって短縮されることを示している。 On the other hand, when the connection change process is executed, the set delay time until the clock CLK is transmitted from the branch point 14 to the target cell 16-2 is 1.0 [ns] as the improvement target delay time t10 16-2 ′. Suppose that Also, it is assumed that the set delay time until the clock CLK is transmitted from the branch point 14 to the target cell 26-1 is 1.4 [ns] as the improvement target delay time t20 26-1 '. In this case, the delay time difference between the target delay time t10 16-2 and the target delay time t20 26-1 is 1.4−1.0 = 0.4 [ns]. Therefore, when the range of the variation delay time is 90% to 110% of the set delay time, the maximum delay time difference including the influence of the variation is 1.4 × 1.1−1.0 × 0.9 = 0.64 [ns]. In this case, the difference between the maximum delay time difference including the effect of variation when the connection change process is executed and the maximum delay time difference including the effect of variation before the connection change process is executed is 1.04−. 0.64 = 0.4. Thereby, when the connection change process is executed, the delay time difference is shortened by 0.4 [ns] at the maximum compared to before the connection change process is executed. In other words, the delay difference that does not include the influence of variation does not change before and after the execution of the connection change process, whereas the delay difference including the variation is shortened by this connection change process. Yes.

また、接続変更処理が実行されたとき、中継配線13、スキュー調整用配線17の容量が接続変更処理の実行前と変わらないことと、配線25−1に対象セル26−1と同入力容量の接続変更用ダミークロックバッファ29を接続することにより中継配線23、配線25−1の容量が接続変更処理の実行前と変わらない。これにより、クロックCLKが入力端INからセル群16−1、16−2に伝達されるまでの遅延時間と、クロックCLKが入力端INからセル群26−2、26−3に伝達されるまでの遅延時間が変化しない。つまり、接続変更に関与しないセル群までの遅延時間は保持されたまま接続変更処理が行われる。   Further, when the connection change process is executed, the capacity of the relay wiring 13 and the skew adjustment wiring 17 is not different from that before the connection change process, and the wiring 25-1 has the same input capacity as the target cell 26-1. By connecting the connection changing dummy clock buffer 29, the capacity of the relay wiring 23 and the wiring 25-1 is not changed from that before the connection changing process is executed. Thereby, the delay time until the clock CLK is transmitted from the input terminal IN to the cell groups 16-1 and 16-2 and the clock CLK from the input terminal IN to the cell groups 26-2 and 26-3 are transmitted. The delay time does not change. That is, the connection change process is performed while the delay time up to the cell group not involved in the connection change is maintained.

このように、本発明の半導体集積回路の設計方法によれば、対象セル16−2、26−1に対して非共通部分が短くなる接続変更を行うことにより、ばらつきに起因する遅延変動による異経路クロックスキューを小さくすることができる。   As described above, according to the semiconductor integrated circuit design method of the present invention, the connection change that shortens the non-common portion with respect to the target cells 16-2 and 26-1 is performed, so that the difference due to the delay variation due to the variation is caused. The path clock skew can be reduced.

図8は、本発明の半導体集積回路の設計方法を示し、コンピュータ40の動作を示すフローチャートである。   FIG. 8 is a flowchart showing the operation of the computer 40, showing the semiconductor integrated circuit design method of the present invention.

セル配置部51は、ユーザによる入力装置43の操作に応じて、セル配置処理を実行する(ステップS1)。ステップS1において、まず、セル配置部51は、ユーザによる入力装置43の操作に応じて、配置情報ファイル61を新規に作成し、その配置情報ファイル61の座標領域1を出力装置44(表示装置)に表示する。次に、セル配置部51は、ユーザによる入力装置43の操作に応じて、上記の複数のセル16−1、16−2、26−1〜26−3、…を座標領域1に配置する。   The cell placement unit 51 performs a cell placement process in response to an operation of the input device 43 by the user (step S1). In step S1, the cell placement unit 51 first creates a placement information file 61 in response to the user's operation of the input device 43, and outputs the coordinate area 1 of the placement information file 61 to the output device 44 (display device). To display. Next, the cell arrangement unit 51 arranges the plurality of cells 16-1, 16-2, 26-1 to 26-3,... In the coordinate area 1 according to the operation of the input device 43 by the user.

ツリー配置部52は、上記のクロックツリー2を座標領域1に配置するツリー配置処理を実行する(ステップS2)。   The tree placement unit 52 executes a tree placement process for placing the clock tree 2 in the coordinate area 1 (step S2).

ステップS2において、上記の共通配線5、7により構成されるネットワークを入力ネット(5、7)と称する。上記の共通配線8、中継配線11、21により構成されるネットワークを共通ネット(8、11、21)と称する。上記の中継配線13、配線群15−1、15−2、スキュー調整用配線17により構成されるネットワークを非共通ネット(13、15−1、15−2、17)と称する。上記の中継配線23、配線群25−1〜25−3、スキュー調整用配線27により構成されるネットワークを非共通ネット(23、25−1〜25−3、27)と称する。   In step S2, the network constituted by the common wirings 5 and 7 is referred to as an input net (5, 7). A network constituted by the common wiring 8 and the relay wirings 11 and 21 is referred to as a common net (8, 11, 21). A network constituted by the relay wiring 13, the wiring groups 15-1 and 15-2, and the skew adjustment wiring 17 is referred to as a non-common net (13, 15-1, 15-2, 17). A network composed of the relay wiring 23, the wiring groups 25-1 to 25-3, and the skew adjustment wiring 27 is referred to as a non-common net (23, 25-1 to 25-3, 27).

バッファ配置部53は、配置情報ファイル61上のクロックツリー2を参照して、ツリー配置処理を実行する(ステップS3)。   The buffer arrangement unit 53 refers to the clock tree 2 on the arrangement information file 61 and executes tree arrangement processing (step S3).

ステップS3において、バッファ配置部53は、ブロック10に対して、入力端INから末端セル(セル群16−1、16−2)に配置された分岐点の数により、クロックバッファが3段必要であることを認識する。バッファ配置部53は、1つ目のクロックバッファとしてクロックバッファ4−1を入力ネット(5、7)の前に接続し、2つ目のクロックバッファとしてクロックバッファ4−2を入力ネット(5、7)と共通ネット(8、11、21)との間に接続し、3つ目のクロックバッファとしてクロックバッファ12を共通ネット(8、11、21)と非共通ネット(13、15−1、15−2、17)との間に接続する。   In step S3, the buffer arrangement unit 53 requires three stages of clock buffers for the block 10 depending on the number of branch points arranged from the input terminal IN to the terminal cells (cell groups 16-1 and 16-2). Recognize that there is. The buffer arrangement unit 53 connects the clock buffer 4-1 as the first clock buffer before the input net (5, 7), and the clock buffer 4-2 as the second clock buffer as the input net (5, 7). 7) and the common net (8, 11, 21), and the clock buffer 12 as a third clock buffer is connected to the common net (8, 11, 21) and the non-common net (13, 15-1, 15-2, 17).

また、ステップS3において、バッファ配置部53は、ブロック20に対して、入力端INから末端セル(セル群26−1〜26−3)に配置された分岐点の数により、クロックバッファが3段必要であることを認識する。1つ目、2つ目のクロックバッファは、それぞれ、上記のクロックバッファ4−1、4−2に対応する。バッファ配置部53は、3つ目のクロックバッファとしてクロックバッファ22を共通ネット(8、11、21)と非共通ネット(23、25−1〜25−3、27)との間に接続する。   In step S3, the buffer placement unit 53 sets three stages of clock buffers for the block 20 depending on the number of branch points placed from the input terminal IN to the terminal cells (cell groups 26-1 to 26-3). Recognize that it is necessary. The first and second clock buffers correspond to the clock buffers 4-1 and 4-2, respectively. The buffer arrangement unit 53 connects the clock buffer 22 as a third clock buffer between the common net (8, 11, 21) and the non-common net (23, 25-1 to 25-3, 27).

遅延時間算出部54は、共通ネット(8、11、21)と非共通ネット(13、15−1、15−2、17)とクロックバッファ12とによる遅延(設定遅延時間・ばらつき遅延時間)に基づいて、クロックCLKが共通ネット(8、11、21)からセル群16−1、16−2に伝達されるまでの遅延時間t10を算出する。また、遅延時間算出部54は、共通ネット(8、11、21)と非共通ネット(23、25−1〜25−3、27)とクロックバッファ22とによる遅延(設定遅延時間・ばらつき遅延時間)に基づいて、クロックCLKが共通ネット(8、11、21)からセル群26−1〜26−3に伝達されるまでの遅延時間t20を算出する(ステップS4)。   The delay time calculation unit 54 calculates delays (set delay time / variation delay time) caused by the common nets (8, 11, 21), non-common nets (13, 15-1, 15-2, 17), and the clock buffer 12. Based on this, a delay time t10 until the clock CLK is transmitted from the common net (8, 11, 21) to the cell groups 16-1, 16-2 is calculated. The delay time calculation unit 54 also includes delays (set delay time / variation delay time) caused by the common nets (8, 11, 21), the non-common nets (23, 25-1 to 25-3, 27), and the clock buffer 22. ) To calculate a delay time t20 until the clock CLK is transmitted from the common net (8, 11, 21) to the cell groups 26-1 to 26-3 (step S4).

また、ステップS4において、遅延時間算出部54は、共通分岐点9からセル群16−1、16−2までの座標と、遅延時間t10とを遅延情報ファイル62に格納し、共通分岐点9からセル群26−1〜26−3までの座標と、遅延時間t20とを遅延情報ファイル62に格納する。   In step S 4, the delay time calculation unit 54 stores the coordinates from the common branch point 9 to the cell groups 16-1 and 16-2 and the delay time t 10 in the delay information file 62. The coordinates of the cell groups 26-1 to 26-3 and the delay time t20 are stored in the delay information file 62.

スキュー調整部55は、遅延情報ファイル62を参照して、遅延時間t10と遅延時間t20とを同一の遅延時間に調整するために、スキュー調整処理を実行する(ステップS5)。   The skew adjustment unit 55 refers to the delay information file 62 and executes a skew adjustment process in order to adjust the delay time t10 and the delay time t20 to the same delay time (step S5).

ステップS5において、スキュー調整部55は、非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)間に生じるクロックスキューを調整するためのダミークロックバッファ18、28をそれぞれ非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)に接続する。   In step S5, the skew adjustment unit 55 is a dummy for adjusting the clock skew generated between the non-common nets (13, 15-1, 15-2, 17) (23, 25-1 to 25-3, 27). The clock buffers 18 and 28 are connected to the non-common nets (13, 15-1, 15-2, 17) (23, 25-1 to 25-3, 27), respectively.

ここで、セル群16−1、16−2とセル群26−1〜26−3の中に、異経路でデータの受け渡しを行うセルが存在しない場合(ステップS6−NO)、スキュー調整部55は、配置情報ファイル61を更新し、半導体集積回路の設計を終了する。   Here, in the case where there is no cell in the cell groups 16-1 and 16-2 and the cell groups 26-1 to 26-3 that exchanges data through different paths (step S6-NO), the skew adjustment unit 55 Updates the arrangement information file 61 and ends the design of the semiconductor integrated circuit.

一方、セル群16−1、16−2とセル群26−1〜26−3のうちの、異経路でデータの受け渡しを行うセルが存在する場合(ステップS6−YES)、ユーザは、そのセルを指定する。上述のように、セル群16−1、16−2、26−1〜26−3のうちの、隣接している対象セル16−2、26−1がデータの受け渡しを行うものとする。   On the other hand, when there is a cell for transferring data through a different path among the cell groups 16-1 and 16-2 and the cell groups 26-1 to 26-3 (step S6-YES), the user Is specified. As described above, it is assumed that the adjacent target cells 16-2 and 26-1 among the cell groups 16-1, 16-2, and 26-1 to 26-3 transfer data.

この場合、ユーザは、入力装置43を操作して、対象セル16−2、26−1を指定する。このとき、対象遅延時間算出部56は、共通ネット(8、11、21)と非共通ネット(13、15−1、15−2、17)とクロックバッファ12とによる遅延(設定遅延時間・ばらつき遅延時間)に基づいて、クロックCLKが共通ネット(8、11、21)から対象セル16−2に伝達されるまでの対象遅延時間t1016−2を算出する。対象遅延時間算出部56は、共通ネット(8、11、21)と非共通ネット(23、25−1〜25−3、27)とクロックバッファ22とによる遅延(設定遅延時間・ばらつき遅延時間)に基づいて、クロックCLKが共通ネット(8、11、21)から対象セル26−1に伝達されるまでの対象遅延時間t2026−1を算出する(ステップS7)。 In this case, the user operates the input device 43 to specify the target cells 16-2 and 26-1. At this time, the target delay time calculation unit 56 determines the delay (set delay time / variation) caused by the common net (8, 11, 21), the non-common net (13, 15-1, 15-2, 17), and the clock buffer 12. Based on the delay time), the target delay time t10 16-2 until the clock CLK is transmitted from the common net (8, 11, 21) to the target cell 16-2 is calculated. The target delay time calculation unit 56 is a delay (set delay time / variation delay time) caused by the common net (8, 11, 21), the non-common net (23, 25-1 to 25-3, 27), and the clock buffer 22. Based on, the target delay time t20 26-1 until the clock CLK is transmitted from the common net (8, 11, 21) to the target cell 26-1 is calculated (step S7).

また、ステップS7において、対象遅延時間算出部56は、共通分岐点9から対象セル16−2までの座標と、対象遅延時間t1016−2とを遅延情報ファイル62に格納する。また、対象遅延時間算出部56は、共通分岐点9から対象セル26−1までの座標と、対象遅延時間t2026−1とを遅延情報ファイル62に格納する。 In step S <b> 7, the target delay time calculation unit 56 stores the coordinates from the common branch point 9 to the target cell 16-2 and the target delay time t < b > 10 16-2 in the delay information file 62. In addition, the target delay time calculation unit 56 stores the coordinates from the common branch point 9 to the target cell 26-1 and the target delay time t 20 26-1 in the delay information file 62.

接続変更部57は、遅延情報ファイル62を参照して、対象遅延時間t1016−2と対象遅延時間t2026−1との遅延時間差が設定時間よりも大きいか否かを調べる(ステップS8)。 The connection changing unit 57 refers to the delay information file 62 and checks whether or not the delay time difference between the target delay time t10 16-2 and the target delay time t20 26-1 is larger than the set time (step S8).

ここで、対象遅延時間t1016−2と対象遅延時間t2026−1との遅延時間差が設定時間以下である場合(ステップS8−NO)、接続変更部57は、配置情報ファイル61を更新し、半導体集積回路の設計を終了する。 Here, when the delay time difference between the target delay time t10 16-2 and the target delay time t20 26-1 is equal to or smaller than the set time (step S8—NO), the connection changing unit 57 updates the arrangement information file 61, The design of the semiconductor integrated circuit is completed.

一方、対象遅延時間t1016−2と対象遅延時間t2026−1との遅延時間差が設定時間よりも大きい場合(ステップS8−YES)、接続変更部57は、異経路クロックスキューを調整するための接続変更処理を実行する(ステップS9)。ただし、この接続変更処理(ステップS9)は、接続変更によりばらつきを含めたクロックスキューが改善される場合に実行される。 On the other hand, when the delay time difference between the target delay time t10 16-2 and the target delay time t20 26-1 is larger than the set time (step S8—YES), the connection changing unit 57 adjusts the different path clock skew. A connection change process is executed (step S9). However, this connection change process (step S9) is executed when the clock skew including variation is improved by the connection change.

ステップS9において、接続変更部57は、対象セル26−1に代えて、対象セル26−1の入力容量と同じ入力容量を有する接続変更用ダミークロックバッファ29を非共通ネット(23、25−1〜25−3、27)に接続する。更に、接続変更部57は、対象セル26−1をダミークロックバッファ18に接続する。   In step S9, the connection changing unit 57 replaces the target cell 26-1 with the connection change dummy clock buffer 29 having the same input capacity as that of the target cell 26-1, by using the non-common net (23, 25-1). To 25-3, 27). Further, the connection changing unit 57 connects the target cell 26-1 to the dummy clock buffer 18.

以上の説明により、本発明の半導体集積回路の設計方法によれば、遅延変動起因の異経路クロックスキューを小さくすることができる。   As described above, according to the method for designing a semiconductor integrated circuit of the present invention, it is possible to reduce the different path clock skew caused by the delay variation.

その理由として、対象セル16−2、26−1に対して経路が異なるため、それぞれの経路に対して異なる遅延変動に起因する上記の異経路クロックスキューが生じる。接続変更処理(ステップS9)が実行される前では、対象セル16−2、26−1に対して、共通のネットは共通ネット(8、11、21)であり、非共通のネットは非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)である。この場合、対象セル16−2、26−1のそれぞれに対する非共通部分は、非共通ネット(13、15−1、15−2、17)(23、25−1〜25−3、27)である。このため、クロックCLKが共通ネット(8、11、21)から対象セル16−2に伝達されるまでの対象遅延時間t1016−2と、クロックCLKが共通ネット(8、11、21)から対象セル26−1に伝達されるまでの対象遅延時間t2026−1が大きくなってしまう。 The reason is that the paths are different for the target cells 16-2 and 26-1, and therefore the above-mentioned different path clock skew is caused by different delay fluctuations for each path. Before the connection change process (step S9) is executed, the common net is the common net (8, 11, 21) and the non-common net is non-common for the target cells 16-2 and 26-1. Net (13, 15-1, 15-2, 17) (23, 25-1 to 25-3, 27). In this case, the non-common part for each of the target cells 16-2 and 26-1 is the non-common net (13, 15-1, 15-2, 17) (23, 25-1 to 25-3, 27). is there. Therefore, the target delay time t10 16-2 until the clock CLK is transmitted from the common net (8, 11, 21) to the target cell 16-2, and the clock CLK from the common net (8, 11, 21). The target delay time t20 26-1 until it is transmitted to the cell 26-1 becomes large.

一方、接続変更処理(ステップS9)が実行されたとき、対象セル16−2、26−1に対して、共通のネットは、共通ネット(8、11、21)であり、非共通のネットは非共通ネット(13、15−1、15−2、17)である。この場合、対象セル16−2、26−1のそれぞれに対する非共通部分は、非共通ネット(13、15−1、15−2、17)だけになる。このため、クロックCLKが非共通ネット(13、15−1、15−2、17)から対象セル16−2に伝達されるまでの改善対象遅延時間t1016−2’と、クロックCLKが非共通ネット(13、15−1、15−2、17)から対象セル26−1に伝達されるまでの改善対象遅延時間t2026−1’は、上記の遅延時間に比べて大幅に短くなる。このように、対象セル16−2、26−1に対して非共通部分が短くなる接続変更を行うことにより、非共通部分に対しての異なる遅延変動に起因する異経路クロックスキューを小さくすることができる。 On the other hand, when the connection change process (step S9) is executed, the common nets for the target cells 16-2 and 26-1 are the common nets (8, 11, 21), and the non-common nets are It is a non-common net (13, 15-1, 15-2, 17). In this case, the non-common part for each of the target cells 16-2 and 26-1 is only the non-common net (13, 15-1, 15-2, 17). Therefore, the improvement target delay time t10 16-2 ′ until the clock CLK is transmitted from the non-common net (13, 15-1, 15-2, 17) to the target cell 16-2 and the clock CLK are not common. The improvement target delay time t20 26-1 ′ from the net (13, 15-1, 15-2, 17) to the target cell 26-1 is significantly shorter than the above delay time. In this way, by changing the connection that shortens the non-common portion for the target cells 16-2 and 26-1, it is possible to reduce the different path clock skew caused by different delay fluctuations for the non-common portion. Can do.

また、接続変更処理(ステップS9)が実行されたとき、上記の非共通ネット(13、15−1、15−2、17)の容量が接続変更処理(ステップS9)の実行前と変わらないことと、上記の非共通ネット(23、25−1〜25−3、27)に対象セル26−1と同入力容量の接続変更用ダミークロックバッファ29を接続することにより非共通ネット(23、25−1〜25−3、27)の容量が接続変更処理(ステップS9)の実行前と変わらない。これにより、クロックCLKが入力端INからセル群16−1、16−2に伝達されるまでの遅延時間と、クロックCLKが入力端INからセル群26−2、26−3に伝達されるまでの遅延時間が変化しない。つまり、接続変更に関与しないセル群までの遅延時間は保持されたまま接続変更処理(ステップS9)が行われる。   Further, when the connection change process (step S9) is executed, the capacity of the non-common net (13, 15-1, 15-2, 17) is not different from that before the connection change process (step S9) is executed. By connecting the connection changing dummy clock buffer 29 having the same input capacity as the target cell 26-1 to the non-common net (23, 25-1 to 25-3, 27), the non-common net (23, 25 The capacities of −1 to 25-3 and 27) are the same as before the connection change process (step S9). Thereby, the delay time until the clock CLK is transmitted from the input terminal IN to the cell groups 16-1 and 16-2 and the clock CLK from the input terminal IN to the cell groups 26-2 and 26-3 are transmitted. The delay time does not change. That is, the connection change process (step S9) is performed while the delay time to the cell group not involved in the connection change is maintained.

図1は、従来の半導体集積回路の設計方法が適用される設計システムの構成を示している。FIG. 1 shows the configuration of a design system to which a conventional semiconductor integrated circuit design method is applied. 図2は、所定の座標領域(X、Y)である座標領域101に配置される半導体集積回路を示している。FIG. 2 shows a semiconductor integrated circuit arranged in a coordinate area 101 which is a predetermined coordinate area (X, Y). 図3は、本発明の半導体集積回路の設計方法が適用される設計システムの構成を示している。FIG. 3 shows the configuration of a design system to which the semiconductor integrated circuit design method of the present invention is applied. 図4は、配置情報ファイル61を示している。FIG. 4 shows the arrangement information file 61. 図5は、遅延情報ファイル62を示している。FIG. 5 shows the delay information file 62. 図6は、所定の座標領域(X、Y)である座標領域1に配置される半導体集積回路を示している。FIG. 6 shows a semiconductor integrated circuit arranged in the coordinate area 1 which is a predetermined coordinate area (X, Y). 図7は、所定の座標領域(X、Y)である座標領域1に配置される半導体集積回路を示している。FIG. 7 shows a semiconductor integrated circuit arranged in the coordinate area 1 which is a predetermined coordinate area (X, Y). 図8は、本発明の半導体集積回路の設計方法を示し、コンピュータ40の動作を示すフローチャートである。FIG. 8 is a flowchart showing the operation of the computer 40, showing the semiconductor integrated circuit design method of the present invention.

符号の説明Explanation of symbols

1 座標領域、
2 クロックツリー、
3 共通配線、
4−1、4−2 クロックバッファ、
5 共通配線、
6 分岐点、
7、8 共通配線、
9 共通分岐点、
10 ブロック、
11 中継配線、
12 クロックバッファ、
13 中継配線、
14 分岐点、
15−1、15−2 配線、
16−1、16−2 セル、
17 スキュー調整用配線、
18 ダミークロックバッファ、
20 ブロック、
21 中継配線、
22 クロックバッファ、
23 中継配線、
24 分岐点、
25−1〜25−3 配線、
26−1〜26−3 セル、
27 スキュー調整用配線、
28 ダミークロックバッファ、
29 接続変更用ダミークロックバッファ、
31〜34 ブロック、
40 コンピュータ、
41 記憶部、
42 CPU(実行部)、
43 入力装置、
44 出力装置、
45 設計ツール、
50 コンピュータプログラム、
51 セル配置部、
52 ツリー配置部、
53 バッファ配置部、
54 遅延時間算出部、
55 スキュー調整部、
56 対象遅延時間算出部、
57 接続変更部、
60 ファイル、
61 配置情報ファイル、
62 遅延情報ファイル、
1 coordinate area,
2 clock tree,
3 Common wiring,
4-1, 4-2 Clock buffer,
5 Common wiring,
6 branch point,
7, 8 Common wiring,
9 Common branch point,
10 blocks,
11 Relay wiring,
12 clock buffers,
13 Relay wiring,
14 branch point,
15-1, 15-2 wiring,
16-1, 16-2 cells,
17 Skew adjustment wiring,
18 Dummy clock buffer,
20 blocks,
21 Relay wiring,
22 clock buffer,
23 Relay wiring,
24 branch point,
25-1 to 25-3 wiring,
26-1 to 26-3 cells,
27 Wiring for skew adjustment,
28 dummy clock buffer,
29 Dummy clock buffer for connection change,
31-34 blocks,
40 computers,
41 storage unit,
42 CPU (execution unit),
43 input devices,
44 output device,
45 design tools,
50 computer programs,
51 cell placement section,
52 Tree placement section,
53 Buffer placement section,
54 delay time calculator,
55 Skew adjustment unit,
56 target delay time calculation unit,
57 Connection change part,
60 files,
61 Placement information file,
62 Delay information file,

Claims (13)

クロックに応じて動作する複数のセルを座標領域に配置するセル配置ステップと、
前記クロックが入力される入力ネットと、前記複数のセルである第1、第2セル群がそれぞれ並列接続された第1、第2非共通ネットと、前記入力ネットと前記第1、第2非共通ネットとの間に接続された共通ネットとを含むクロックツリーを前記座標領域に配置するツリー配置ステップと、
前記入力ネットと前記共通ネットとの間と、前記共通ネットと前記第1、第2非共通ネットとの間に、クロックバッファを接続するバッファ配置ステップと、
前記第1、第2非共通ネット間に生じるクロックスキューを調整するための第1、第2ダミークロックバッファをそれぞれ前記第1、第2非共通ネットに接続するスキュー調整ステップと、
前記第1、第2セル群のうちの1つのセルとして第1、第2対象セル間でデータの受け渡しを行う場合、前記第1、第2対象セルがそれぞれ前記第1、第2非共通ネットに接続されていることにより生じる遅延変動起因の異経路クロックスキューを調整するために、
前記第2対象セルに代えて接続変更用ダミークロックバッファを前記第2非共通ネットに接続する第1接続変更ステップと、
前記第2対象セルを前記第1ダミークロックバッファに接続する第2接続変更ステップと
を具備する半導体集積回路の設計方法。
A cell placement step of placing a plurality of cells operating in accordance with a clock in a coordinate area;
The input net to which the clock is input, the first and second non-common nets in which the first and second cell groups as the plurality of cells are connected in parallel, the input net and the first and second non-nets, respectively. A tree placement step of placing a clock tree including a common net connected to the common net in the coordinate area;
A buffer placement step of connecting a clock buffer between the input net and the common net, and between the common net and the first and second non-common nets;
A skew adjusting step of connecting first and second dummy clock buffers for adjusting a clock skew generated between the first and second non-common nets to the first and second non-common nets, respectively;
When data is transferred between the first and second target cells as one cell of the first and second cell groups, the first and second target cells are respectively connected to the first and second non-common networks. In order to adjust the different path clock skew due to delay variation caused by being connected to
A first connection changing step of connecting a connection change dummy clock buffer to the second non-common net instead of the second target cell;
A method for designing a semiconductor integrated circuit, comprising: a second connection changing step for connecting the second target cell to the first dummy clock buffer.
請求項1に記載の半導体集積回路の設計方法において、
前記共通ネットと前記第1、第2非共通ネットと前記クロックバッファとによる遅延に基づいて、それぞれ前記クロックが前記共通ネットから前記第1、第2セル群に伝達されるまでの第1、第2遅延時間を算出する遅延時間算出ステップと、
前記クロックスキューの調整として、前記第1遅延時間と前記第2遅延時間とを同一の遅延時間に調整するために、前記スキュー調整ステップを実行するステップと、
前記第1、第2対象セル間でデータの受け渡しを行う場合、前記共通ネットと前記第1、第2非共通ネットと前記クロックバッファとによる遅延に基づいて、それぞれ前記クロックが前記共通ネットから前記第1、第2対象セルに伝達されるまでの第1、第2対象遅延時間を算出する対象遅延時間算出ステップと、
前記第1対象遅延時間と前記第2対象遅延時間との遅延時間差が設定時間差よりも大きい場合、前記異経路クロックスキューの調整として、前記第1及び第2接続変更ステップを実行するステップと
を更に具備する半導体集積回路の設計方法。
The method for designing a semiconductor integrated circuit according to claim 1,
Based on the delays caused by the common net, the first and second non-common nets, and the clock buffer, the first and second times until the clock is transmitted from the common net to the first and second cell groups, respectively. 2 delay time calculating step for calculating delay time;
Performing the skew adjustment step to adjust the first delay time and the second delay time to the same delay time as the clock skew adjustment; and
When data is exchanged between the first and second target cells, the clock is transferred from the common net based on the delays caused by the common net, the first and second non-common nets, and the clock buffer, respectively. A target delay time calculating step for calculating first and second target delay times until the first and second target cells are transmitted;
When the delay time difference between the first target delay time and the second target delay time is larger than a set time difference, the step of executing the first and second connection changing steps as the adjustment of the different path clock skew is further performed. A method for designing a semiconductor integrated circuit.
クロックに応じて動作する複数のセルを座標領域に配置するセル配置ステップと、
その一端に前記クロックが入力され、その他端に共通分岐点が接続された共通配線と、その一端に前記共通分岐点が接続され、その他端に第1、第2分岐点がそれぞれ接続された第1、第2中継配線と、その一端に前記第1、第2分岐点がそれぞれ接続され、その他端に前記複数のセルである第1、第2セル群がそれぞれ接続された第1、第2配線群とを含むクロックツリーを前記座標領域に配置するツリー配置ステップと、
前記共通配線上と、前記第1、第2中継配線上に、クロックバッファを接続するバッファ配置ステップと、
前記第1、第2分岐点間に生じるクロックスキューを調整するための容量を有する第1、第2スキュー調整用配線をそれぞれ前記第1、第2分岐点に接続し、前記第1、第2スキュー調整用配線にそれぞれ第1、第2ダミークロックバッファを接続するスキュー調整ステップと、
前記第1、第2セル群のうちの1つのセルとして第1、第2対象セルがデータの受け渡しを行う場合、前記第1、第2対象セルがそれぞれ前記第1、第2分岐点に接続されていることにより生じる遅延変動起因の異経路クロックスキューを調整するために、
前記第2配線群のうちの、前記第2対象セルが接続されている変更候補配線の他端から、前記第2対象セルを切り離し、前記変更候補配線の他端に接続変更用ダミークロックバッファを接続する第1接続変更ステップと、
前記第2対象セルを前記第1ダミークロックバッファに接続する第2接続変更ステップと
を具備する半導体集積回路の設計方法。
A cell placement step of placing a plurality of cells operating in accordance with a clock in a coordinate area;
The clock is input to one end and the common branch point is connected to the other end, the common branch point is connected to the one end, and the first and second branch points are connected to the other end. First, second relay wiring, and the first and second branch points connected to the first and second branch points at one end thereof, and the first and second cell groups as the plurality of cells connected to the other end, respectively. A tree placement step of placing a clock tree including a wiring group in the coordinate area;
A buffer arrangement step of connecting a clock buffer on the common line and on the first and second relay lines;
First and second skew adjustment wirings having capacitances for adjusting clock skew generated between the first and second branch points are connected to the first and second branch points, respectively. A skew adjustment step of connecting the first and second dummy clock buffers to the skew adjustment wiring;
When the first and second target cells transfer data as one cell of the first and second cell groups, the first and second target cells are connected to the first and second branch points, respectively. In order to adjust the different path clock skew due to the delay variation caused by
In the second wiring group, the second target cell is disconnected from the other end of the change candidate wiring to which the second target cell is connected, and a connection change dummy clock buffer is provided at the other end of the change candidate wiring. A first connection changing step for connecting;
A method for designing a semiconductor integrated circuit, comprising: a second connection changing step for connecting the second target cell to the first dummy clock buffer.
請求項3に記載の半導体集積回路の設計方法において、
前記第1、第2中継配線と前記第1、第2配線群と前記クロックバッファとによる遅延に基づいて、それぞれ前記クロックが前記共通分岐点から前記第1、第2セル群に伝達されるまでの第1、第2遅延時間を算出する遅延時間算出ステップと、
前記クロックスキューの調整として、前記第1遅延時間と前記第2遅延時間とを同一の遅延時間に調整するために、前記スキュー調整ステップを実行するステップと、
前記第1、第2対象セル間でデータの受け渡しを行う場合、前記第1、第2中継配線と、前記第1配線群のうちの、前記第1対象セルが接続されている配線と、前記変更候補配線と、前記クロックバッファとによる遅延に基づいて、それぞれ前記クロックが前記共通分岐点から前記第1、第2対象セルに伝達されるまでの第1、第2対象遅延時間を算出する対象遅延時間算出ステップと、
前記第1対象遅延時間と前記第2対象遅延時間との遅延時間差が設定時間差よりも大きい場合、前記異経路クロックスキューの調整として、前記第1及び第2接続変更ステップを実行するステップと
を更に具備する半導体集積回路の設計方法。
The method of designing a semiconductor integrated circuit according to claim 3,
Until the clock is transmitted from the common branch point to the first and second cell groups based on delays caused by the first and second relay wirings, the first and second wiring groups, and the clock buffer, respectively. A delay time calculating step for calculating the first and second delay times of
Performing the skew adjustment step to adjust the first delay time and the second delay time to the same delay time as the clock skew adjustment; and
When transferring data between the first and second target cells, the first and second relay wirings, the wiring of the first wiring group to which the first target cells are connected, and Targets for calculating the first and second target delay times until the clock is transmitted from the common branch point to the first and second target cells based on delays caused by the change candidate wiring and the clock buffer. A delay time calculating step;
When the delay time difference between the first target delay time and the second target delay time is larger than a set time difference, the step of executing the first and second connection changing steps as the adjustment of the different path clock skew is further performed. A method for designing a semiconductor integrated circuit.
請求項1〜4のいずれかに記載の半導体集積回路の設計方法において、
前記接続変更用ダミークロックバッファは、前記第2対象セルの入力容量と同じ入力容量を有する
半導体集積回路の設計方法。
In the design method of the semiconductor integrated circuit in any one of Claims 1-4,
The method of designing a semiconductor integrated circuit, wherein the connection-changing dummy clock buffer has an input capacity that is the same as an input capacity of the second target cell.
請求項1〜5のいずれかに記載の半導体集積回路の設計方法において、
前記第1、第2対象セルは隣接している
半導体集積回路の設計方法。
In the design method of the semiconductor integrated circuit in any one of Claims 1-5,
A method of designing a semiconductor integrated circuit in which the first and second target cells are adjacent to each other.
半導体集積回路を設計するコンピュータにインストールされるコンピュータプログラムであって、
クロックに応じて動作する複数のセルを座標領域に配置するセル配置ステップと、
前記クロックが入力される入力ネットと、前記複数のセルである第1、第2セル群がそれぞれ並列接続された第1、第2非共通ネットと、前記入力ネットと前記第1、第2非共通ネットとの間に接続された共通ネットとを含むクロックツリーを前記座標領域に配置するツリー配置ステップと、
前記入力ネットと前記共通ネットとの間と、前記共通ネットと前記第1、第2非共通ネットとの間に、クロックバッファを接続するバッファ配置ステップと、
前記第1、第2非共通ネット間に生じるクロックスキューを調整するための第1、第2ダミークロックバッファをそれぞれ前記第1、第2非共通ネットに接続するスキュー調整ステップと、
前記第1、第2セル群のうちの1つのセルとして第1、第2対象セル間でデータの受け渡しを行う場合、前記第1、第2対象セルがそれぞれ前記第1、第2非共通ネットに接続されていることにより生じる遅延変動起因の異経路クロックスキューを調整するために、
前記第2対象セルに代えて接続変更用ダミークロックバッファを前記第2非共通ネットに接続する第1接続変更ステップと、
前記第2対象セルを前記第1ダミークロックバッファに接続する第2接続変更ステップと
の各ステップを前記コンピュータに実行させるコンピュータプログラム。
A computer program installed in a computer for designing a semiconductor integrated circuit,
A cell placement step of placing a plurality of cells operating in accordance with a clock in a coordinate area;
The input net to which the clock is input, the first and second non-common nets in which the first and second cell groups as the plurality of cells are connected in parallel, the input net and the first and second non-nets, respectively. A tree placement step of placing a clock tree including a common net connected to the common net in the coordinate area;
A buffer placement step of connecting a clock buffer between the input net and the common net, and between the common net and the first and second non-common nets;
A skew adjusting step of connecting first and second dummy clock buffers for adjusting a clock skew generated between the first and second non-common nets to the first and second non-common nets, respectively;
When data is transferred between the first and second target cells as one cell of the first and second cell groups, the first and second target cells are respectively connected to the first and second non-common networks. In order to adjust the different path clock skew due to delay variation caused by being connected to
A first connection changing step of connecting a connection change dummy clock buffer to the second non-common net instead of the second target cell;
A computer program for causing the computer to execute each step of a second connection changing step of connecting the second target cell to the first dummy clock buffer.
請求項7に記載のコンピュータプログラムにおいて、
前記共通ネットと前記第1、第2非共通ネットと前記クロックバッファとによる遅延に基づいて、それぞれ前記クロックが前記共通ネットから前記第1、第2セル群に伝達されるまでの第1、第2遅延時間を算出する遅延時間算出ステップと、
前記クロックスキューの調整として、前記第1遅延時間と前記第2遅延時間とを同一の遅延時間に調整するために、前記スキュー調整ステップを実行するステップと、
前記第1、第2対象セル間でデータの受け渡しを行う場合、前記共通ネット、前記第1、第2非共通ネットによる遅延と、前記クロックバッファによる遅延とに基づいて、それぞれ前記クロックが前記共通ネットから前記第1、第2対象セルに伝達されるまでの第1、第2対象遅延時間を算出する対象遅延時間算出ステップと、
前記第1対象遅延時間と前記第2対象遅延時間との遅延時間差が設定時間差よりも大きい場合、前記異経路クロックスキューの調整として、前記第1及び第2接続変更ステップを実行するステップと
の各ステップを更に前記コンピュータに実行させるコンピュータプログラム。
The computer program according to claim 7, wherein
Based on the delays caused by the common net, the first and second non-common nets, and the clock buffer, the first and second times until the clock is transmitted from the common net to the first and second cell groups, respectively. 2 delay time calculating step for calculating delay time;
Performing the skew adjustment step to adjust the first delay time and the second delay time to the same delay time as the clock skew adjustment; and
When data is transferred between the first and second target cells, the clock is shared by the common net, the delay by the first and second non-common nets, and the delay by the clock buffer, respectively. A target delay time calculating step of calculating first and second target delay times until the first and second target cells are transmitted from the net;
Each of the steps of executing the first and second connection changing steps as the adjustment of the different path clock skew when a delay time difference between the first target delay time and the second target delay time is larger than a set time difference. A computer program for causing the computer to further execute steps.
半導体集積回路を設計するコンピュータにインストールされるコンピュータプログラムであって、
クロックに応じて動作する複数のセルを座標領域に配置するセル配置ステップと、
その一端に前記クロックが入力され、その他端に共通分岐点が接続された共通配線と、その一端に前記共通分岐点が接続され、その他端に第1、第2分岐点がそれぞれ接続された第1、第2中継配線と、その一端に前記第1、第2分岐点がそれぞれ接続され、その他端に前記複数のセルである第1、第2セル群がそれぞれ接続された第1、第2配線群とを含むクロックツリーを前記座標領域に配置するツリー配置ステップと、
前記共通配線上と、前記第1、第2中継配線上に、クロックバッファを接続するバッファ配置ステップと、
前記第1、第2分岐点間に生じるクロックスキューを調整するための容量を有する第1、第2スキュー調整用配線をそれぞれ前記第1、第2分岐点に接続し、前記第1、第2スキュー調整用配線にそれぞれ第1、第2ダミークロックバッファを接続するスキュー調整ステップと、
前記第1、第2セル群のうちの1つのセルとして第1、第2対象セルがデータの受け渡しを行う場合、前記第1、第2対象セルがそれぞれ前記第1、第2分岐点に接続されていることにより生じる遅延変動起因の異経路クロックスキューを調整するために、
前記第2配線群のうちの、前記第2対象セルが接続されている変更候補配線の他端から、前記第2対象セルを切り離し、前記変更候補配線の他端に接続変更用ダミークロックバッファを接続する第1接続変更ステップと、
前記第2対象セルを前記第1ダミークロックバッファに接続する第2接続変更ステップと
の各ステップを前記コンピュータに実行させるコンピュータプログラム。
A computer program installed in a computer for designing a semiconductor integrated circuit,
A cell placement step of placing a plurality of cells operating in accordance with a clock in a coordinate area;
The clock is input to one end and the common branch point is connected to the other end, the common branch point is connected to the one end, and the first and second branch points are connected to the other end. First, second relay wiring, and the first and second branch points connected to the first and second branch points at one end thereof, and the first and second cell groups as the plurality of cells connected to the other end, respectively. A tree placement step of placing a clock tree including a wiring group in the coordinate area;
A buffer arrangement step of connecting a clock buffer on the common line and on the first and second relay lines;
First and second skew adjustment wirings having capacitances for adjusting clock skew generated between the first and second branch points are connected to the first and second branch points, respectively. A skew adjustment step of connecting the first and second dummy clock buffers to the skew adjustment wiring;
When the first and second target cells transfer data as one cell of the first and second cell groups, the first and second target cells are connected to the first and second branch points, respectively. In order to adjust the different path clock skew due to the delay variation caused by
In the second wiring group, the second target cell is disconnected from the other end of the change candidate wiring to which the second target cell is connected, and a connection change dummy clock buffer is provided at the other end of the change candidate wiring. A first connection changing step for connecting;
A computer program for causing the computer to execute each step of a second connection changing step of connecting the second target cell to the first dummy clock buffer.
請求項9に記載のコンピュータプログラムにおいて、
前記第1、第2中継配線と前記第1、第2配線群と前記クロックバッファとによる遅延に基づいて、それぞれ前記クロックが前記共通分岐点から前記第1、第2セル群に伝達されるまでの第1、第2遅延時間を算出する遅延時間算出ステップと、
前記クロックスキューの調整として、前記第1遅延時間と前記第2遅延時間とを同一の遅延時間に調整するために、前記スキュー調整ステップを実行するステップと、
前記第1、第2対象セル間でデータの受け渡しを行う場合、前記第1、第2中継配線と、前記第1配線群のうちの、前記第1対象セルが接続されている配線と、前記変更候補配線と、前記クロックバッファとによる遅延に基づいて、それぞれ前記クロックが前記共通分岐点から前記第1、第2対象セルに伝達されるまでの第1、第2対象遅延時間を算出する対象遅延時間算出ステップと、
前記第1対象遅延時間と前記第2対象遅延時間との遅延時間差が設定時間差よりも大きい場合、前記異経路クロックスキューの調整として、前記第1及び第2接続変更ステップを実行するステップと
の各ステップを更に前記コンピュータに実行させるコンピュータプログラム。
The computer program according to claim 9,
Until the clock is transmitted from the common branch point to the first and second cell groups based on delays caused by the first and second relay wirings, the first and second wiring groups, and the clock buffer, respectively. A delay time calculating step for calculating the first and second delay times of
Performing the skew adjustment step to adjust the first delay time and the second delay time to the same delay time as the clock skew adjustment; and
When transferring data between the first and second target cells, the first and second relay wirings, the wiring of the first wiring group to which the first target cells are connected, and Targets for calculating the first and second target delay times until the clock is transmitted from the common branch point to the first and second target cells based on delays caused by the change candidate wiring and the clock buffer. A delay time calculating step;
Each of the steps of executing the first and second connection changing steps as the adjustment of the different path clock skew when a delay time difference between the first target delay time and the second target delay time is larger than a set time difference. A computer program for causing the computer to further execute steps.
請求項7〜10のいずれかに記載のコンピュータプログラムにおいて、
前記接続変更用ダミークロックバッファは、前記第2対象セルの入力容量と同じ入力容量を有する
コンピュータプログラム。
In the computer program in any one of Claims 7-10,
The connection change dummy clock buffer is a computer program having the same input capacity as that of the second target cell.
請求項7〜11のいずれかに記載のコンピュータプログラムにおいて、
前記第1、第2対象セルは隣接している
コンピュータプログラム。
The computer program according to any one of claims 7 to 11,
A computer program in which the first and second target cells are adjacent.
請求項7〜12のいずれかに記載のコンピュータプログラムがインストールされたコンピュータ。   A computer in which the computer program according to any one of claims 7 to 12 is installed.
JP2007019505A 2007-01-30 2007-01-30 Design method of semiconductor integrated circuit Withdrawn JP2008187027A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007019505A JP2008187027A (en) 2007-01-30 2007-01-30 Design method of semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007019505A JP2008187027A (en) 2007-01-30 2007-01-30 Design method of semiconductor integrated circuit

Publications (1)

Publication Number Publication Date
JP2008187027A true JP2008187027A (en) 2008-08-14

Family

ID=39729867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007019505A Withdrawn JP2008187027A (en) 2007-01-30 2007-01-30 Design method of semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP2008187027A (en)

Similar Documents

Publication Publication Date Title
US10650110B2 (en) Photonic circuit design systems
JP2007027841A (en) Design apparatus, method, and program for semiconductor integrated circuit
US20060248486A1 (en) Manufacturing a clock distribution network in an integrated circuit
US8671374B2 (en) Information processing apparatus
US8499268B2 (en) Method of supporting layout design of semiconductor integrated circuit
JP2005184262A (en) Semiconductor integrated circuit and its fabricating process
JP2014035667A (en) Lsi designing method and lsi designing device
JP2008187027A (en) Design method of semiconductor integrated circuit
JPWO2008133116A1 (en) Circuit design apparatus, circuit design method, and circuit design program
JP5807887B1 (en) Programmable logic device, programmable logic device error verification method, and programmable logic device circuit formation method
JP2003173361A (en) Layout design method and device for semiconductor integrated circuit
US11030376B2 (en) Net routing for integrated circuit (IC) design
US7376927B2 (en) Manhattan routing with minimized distance to destination points
CN109271202B (en) Asynchronous Softmax hardware acceleration method and accelerator
JP2016122299A (en) State machine division program, information processor and state machine division method
JP2010140255A (en) Reconfigurable logic circuit, verification method and verification program
JP2001267429A (en) Layout design device and method
JP2012137986A (en) Layout design device for semiconductor integrated circuit, layout design method for semiconductor integrated circuit, and program
JP2001034647A (en) Clock distribution circuit, design method of the same and semiconductor integrated circuit
JP2009188093A (en) Method and device for designing semiconductor integrated circuit, and program
JP6596554B2 (en) Circuit design method and program
WO2010100830A1 (en) Semiconductor device, circuit correction method, design support device, and recording medium having design support program stored thereupon
JP5515757B2 (en) Scan flip-flop addition system and scan flip-flop addition method
JP3116915B2 (en) Clock net layout design change method
JP2008176486A (en) Design method for multi-power source integrated circuit, design support system for multi-power source integrated circuit and program

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