JP2008017389A - Design method for synchronous circuit having reduced emi noise - Google Patents

Design method for synchronous circuit having reduced emi noise Download PDF

Info

Publication number
JP2008017389A
JP2008017389A JP2006188988A JP2006188988A JP2008017389A JP 2008017389 A JP2008017389 A JP 2008017389A JP 2006188988 A JP2006188988 A JP 2006188988A JP 2006188988 A JP2006188988 A JP 2006188988A JP 2008017389 A JP2008017389 A JP 2008017389A
Authority
JP
Japan
Prior art keywords
skew
clock
circuit
modules
setting circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006188988A
Other languages
Japanese (ja)
Inventor
Hiromitsu Matsuda
裕充 松田
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2006188988A priority Critical patent/JP2008017389A/en
Publication of JP2008017389A publication Critical patent/JP2008017389A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Manipulation Of Pulses (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a design method for a synchronous circuit for reducing a peak value of EMI noise by verifying where and how many skews are given and by diversifying the timing of current of power dissipation on the time axis. <P>SOLUTION: The design method for synchronous circuit comprises a first step for implementing a primary layout and wiring of the synchronous circuit using an automatic layout wiring tool by inputting the predetermined condition including a network list, a second step for analyzing a skew as a difference of arriving times of the clock up to each terminal path from the clock source in accordance with a clock tree of the arranged and wired synchronous circuit, a third step for dividing into a plurality of modules I, II, III and IV where the analyzed skew has margin for setup/hold time, a fourth step for additionally inserting a clock skew setting circuit 10 to at least one of the plurality of divided modules I, II, III and IV, and a fifth step for implementing a secondary layout and wiring by adding the clock skew setting circuit 10. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、EMIノイズを低減した同期回路の設計方法に関する。   The present invention relates to a method for designing a synchronous circuit with reduced EMI noise.

この種の設計方法として、特許文献1に記載の設計方法がある。この方法によると、フリップフロップと組み合わせ回路を備えた回路をブロックに分割し、各ブロック毎に少しずつ遅延量の異なるクロックツリーを挿入している。その後に、各ブロック毎に計算されたスキューが同期回路全体のスキュー値の上限より小さくなるように設計している。
特開2004−120084号公報
As a design method of this type, there is a design method described in Patent Document 1. According to this method, a circuit including a flip-flop and a combinational circuit is divided into blocks, and a clock tree having a slightly different delay amount is inserted for each block. Thereafter, the skew calculated for each block is designed to be smaller than the upper limit of the skew value of the entire synchronous circuit.
JP 2004-120084 A

しかし、特許文献1の方法では、先ず、回路を複数にブロック分割することが困難である。このブロック分割は、以降の設計手順を拘束する重要な要素であり、例えばクロックツリーを挿入すべき場所を決定する要因となる。しかし、実際には、最初の段階でブロック分割を決定する明確な基準はない。   However, with the method of Patent Document 1, it is difficult to first divide a circuit into a plurality of blocks. This block division is an important element that constrains the subsequent design procedure, and becomes a factor that determines, for example, a place where a clock tree is to be inserted. In practice, however, there is no clear criterion for determining block partitioning in the first stage.

特許文献1では、同期回路全体のスキュー値が上限値以下とならない場合には、最初に戻ってブロック分割からやり直すことになっている(請求項2)が、結局、ブロック分割から試行錯誤の状況となり、効率的な設計方法とは言い難い。   In Patent Document 1, when the skew value of the entire synchronous circuit is not less than or equal to the upper limit value, the process returns to the beginning and starts again from block division (Claim 2). It is difficult to say that it is an efficient design method.

そこで、本発明の目的は、どの場所にどれだけスキューを付けられるかを検証して、消費電流が流れるタイミングを時間軸上で分散させることで、EMIのいずのピークを低減することができる同期回路の設計方法を提供することにある。   Therefore, an object of the present invention is to verify how much skew can be attached to which location, and to disperse the timing of current consumption on the time axis, thereby reducing any peak of EMI. It is to provide a method for designing a synchronous circuit.

本発明に係る同期回路の設計方法は、ネットリストを含む所与の条件を入力して、自動配置配線ツールを用いて同期回路の一次配置配線を実施する第1工程と、配置配線された同期回路のクロックツリーに従って、クロックソースから各末端経路までのクロックの到達時間差であるスキューを解析する第2工程と、解析されたスキューがセットアップ/ホールドタイムに対してマージンを有する複数のモジュールに分割する第3工程と、分割された前記複数のモジュールの少なくとも一つにクロックスキュー設定回路を追加挿入する第4工程と、前記クロックスキュー設定回路を追加して、二次配置配線を実施する第5工程と、を有することを特徴とする。   The method for designing a synchronous circuit according to the present invention includes a first step of inputting a given condition including a netlist and performing primary placement and routing of the synchronization circuit using an automatic placement and routing tool, and synchronization of placement and routing In accordance with the clock tree of the circuit, a second step of analyzing the skew that is the difference in arrival time of the clock from the clock source to each end path, and the analyzed skew is divided into a plurality of modules having margins with respect to the setup / hold time. A third step, a fourth step of additionally inserting a clock skew setting circuit into at least one of the plurality of divided modules, and a fifth step of adding the clock skew setting circuit and performing secondary placement and routing It is characterized by having.

本発明によれば、第1〜第3工程の実施により、どの場所にさらにスキューを追加できるかを検証でき、特許文献1のように予めスキューを付けるべき場所を特定していないので、EMIノイズを低減するためのスキュー調整の自由度と確実性が向上する。また、第4,第5工程の実施により、一次自動配置配線の時よりもEMIノイズを時間軸上で分散でき、ENIノイズのピークを確実に低減できる。   According to the present invention, by performing the first to third steps, it is possible to verify where the skew can be further added, and since the place where the skew is to be added is not specified in advance as in Patent Document 1, the EMI noise is not specified. The degree of freedom and certainty of the skew adjustment for reducing the error is improved. Also, by performing the fourth and fifth steps, EMI noise can be distributed on the time axis more than in the case of primary automatic placement and routing, and the peak of ENI noise can be reliably reduced.

本発明では、前記第4工程では、前記複数のモジュールのうち、回路規模が大きい最上位2つのモジュール間で、最大のスキュー差が生じるように、前記最上位2つのモジュールの少なくとも一方に前記クロックスキュー設定回路を挿入することができる。   In the present invention, in the fourth step, at least one of the top two modules has the clock clock so that a maximum skew difference is generated between the top two modules having a large circuit scale among the plurality of modules. A queue setting circuit can be inserted.

EMIノイズの原因となる消費電流量は回路規模に依存するので、回路規模が大きい最上位2つのモジュール間で最大のスキュー差を生じさせれば、EMIノイズの二大ピークは時間軸上で分散され、二大ピークが相互に重なり合わず、EMIノイズのピークを低減できる。   Since the amount of current consumption that causes EMI noise depends on the circuit scale, if the largest skew difference occurs between the two most significant modules with a large circuit scale, the two largest peaks of EMI noise are dispersed on the time axis. Thus, the two major peaks do not overlap each other, and the EMI noise peak can be reduced.

さらに本発明では、前記第4工程では、前記複数のモジュールのうち、三番目に回路規模が大きいモジュールが、前記最上位2つのモジュールのそれぞれに対して、最大のスキュー差が生じるように、前記三番目に回路規模が大きいモジュールに前記クロックスキュー設定回路を挿入することができる。   Further, in the present invention, in the fourth step, the module having the third largest circuit scale among the plurality of modules has a maximum skew difference with respect to each of the top two modules. The clock skew setting circuit can be inserted into a module having the third largest circuit scale.

こうすると、三番目に大きなEMIノイズピークは、二大ピークとも時間軸上で分散されるので、EMIノイズのピークを低減できる。   In this way, since the third largest EMI noise peak is dispersed on the time axis, both the EMI noise peaks can be reduced.

本発明では、前記クロックスキュー設定回路は、ロジック信号によりスキュー量が可変であり、前記第4工程は、前記モジュール毎に前記クロックスキュー設定回路のスキュー量を設定する工程を含むことができる。   In the present invention, the skew amount of the clock skew setting circuit is variable by a logic signal, and the fourth step can include a step of setting the skew amount of the clock skew setting circuit for each module.

こうすると、スキュー調整はクロックスキュー設定回路の挿入場所だけでなく、モジュール毎にスキューも可変となるので、EMIノイズピークを低減させるためのより細かな調整が可能となる。   In this way, the skew adjustment not only changes the insertion position of the clock skew setting circuit but also makes the skew variable for each module, so that finer adjustment for reducing the EMI noise peak is possible.

本発明では、前記複数のモジュールの少なくとも一つに前記クロックスキュー設定回路を挿入する位置は、他のモジュールにスキューの変動を与えない位置であって、かつ、前記複数のモジュールの少なくとも一つに属する最上流のバッファのさらに上流側の位置とすることができる。   In the present invention, the position at which the clock skew setting circuit is inserted into at least one of the plurality of modules is a position that does not cause a skew fluctuation to other modules, and the position at which at least one of the plurality of modules is at least one of the plurality of modules. It may be located further upstream than the most upstream buffer to which it belongs.

こうすると、クロックスキュー設定回路の挿入により、他のモジュールでのスキューマージンに変動を与えないばかりか、クロックスキュー設定回路が挿入されるモジュールの回路規模を最大限に活用でき、EMIノイズピークの低減により寄与できる。   In this way, the insertion of the clock skew setting circuit does not change the skew margin in other modules, and the circuit scale of the module in which the clock skew setting circuit is inserted can be utilized to the maximum, and the EMI noise peak is reduced. Can contribute.

本発明では、前記第5工程後に、前記クロックスキュー設定回路が追加されたクロックツリーに従って、クロックソースから各末端経路までのクロックの到達時間差であるスキューを解析し、解析されたスキューがセットアップ/ホールドタイムに対してマージンを有するか否かを検証する第6工程をさらに有することができる。   In the present invention, after the fifth step, according to the clock tree to which the clock skew setting circuit is added, a skew that is a difference in arrival time of the clock from the clock source to each end path is analyzed, and the analyzed skew is set up / holded. A sixth step of verifying whether or not there is a margin with respect to time can be further included.

こうして、クロックスキュー設定回路を追加挿入後に、同期回路として必要なセットアップ/ホールドタイムの要件を満足しているか否かを再確認できる。   In this way, it is possible to reconfirm whether or not the setup / hold time requirement necessary for the synchronization circuit is satisfied after the clock skew setting circuit is additionally inserted.

以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。   Hereinafter, preferred embodiments of the present invention will be described in detail. The present embodiment described below does not unduly limit the contents of the present invention described in the claims, and all the configurations described in the present embodiment are indispensable as means for solving the present invention. Not necessarily.

図1は、本発明方法の実施形態を示すフローチャートである。以下、フローチャートに従って、ASIC(特定用途向けIC)であるLSIの設計方法を説明する。   FIG. 1 is a flowchart showing an embodiment of the method of the present invention. Hereinafter, a method for designing an LSI, which is an ASIC (application-specific IC), will be described with reference to a flowchart.

(1)第1次配置配線(1STP&R)
先ず、ネットリストを含む所与の条件を入力して、自動配置配線ツールを用いてLSIの配置配線を実施する(図1のステップ1)。この際、クロックツリージェネレータ(CTGen)を用いてクロックツリー・シンセシス(synthesis:統合)を実施し、さらにネットリストの最適化を実施する。
(1) Primary placement and routing (1 ST P & R)
First, given conditions including a net list are input, and LSI placement and routing is performed using an automatic placement and routing tool (step 1 in FIG. 1). At this time, clock tree synthesis (synthesis) is performed using a clock tree generator (CTGen), and netlist optimization is further performed.

(2)次に、クロックツリーのスキュー解析を実施する(図1のステップ2)。図2は、配置配線されたクロックツリーを模式的に示す。図2に示すように、クロックツリーは分岐されており、分岐の前後にはバッファ(三角形で示す)が挿入されている。クロックツリーの各末端部の四角形は最終段のフリップフロップを示す。フリップフロップ間を接続する線はデータ線である。   (2) Next, a skew analysis of the clock tree is performed (step 2 in FIG. 1). FIG. 2 schematically shows a clock tree arranged and routed. As shown in FIG. 2, the clock tree is branched, and buffers (shown by triangles) are inserted before and after the branch. A square at each end of the clock tree indicates a flip-flop at the final stage. A line connecting the flip-flops is a data line.

スキュー解析は、スタティックタイミングアナライザ(STA)と称されるツールを用いて行なわれる。これにより、クロックが、複数の信号線の経路を通ることによって発生する到達時間の差(スキュー)が解析される。   Skew analysis is performed using a tool called a static timing analyzer (STA). As a result, the difference (skew) in the arrival time generated when the clock passes through the paths of the plurality of signal lines is analyzed.

ここで、クロック信号に先だって、データ信号を確定、保持しておかなければならない最小限の時間を「セットアップタイム」といい、逆に、タイミング信号を与えた後もデータ信号を保持しておかなければならない時間を「(入力)ホールドタイム」という。同期回路では、ICの全回路にて「セットアップタイム」及び「ホールドタイム」を満たさなければならない。そうでないと、IC内部でデータ信号を正しく処理できないからである。図1のステップ2では、クロックソースから末端までのスキューを解析することで、セットアップ/ホールドタイムを満たしているかと、それに対するマージンがどれだけあるかが解析される。   Here, the minimum time that the data signal must be determined and held before the clock signal is called `` setup time '', and conversely, the data signal must be held even after the timing signal is given. The time that must be called is called “(input) hold time”. In the synchronous circuit, the “setup time” and “hold time” must be satisfied in all circuits of the IC. Otherwise, the data signal cannot be correctly processed inside the IC. In step 2 of FIG. 1, by analyzing the skew from the clock source to the end, it is analyzed whether the setup / hold time is satisfied and how much margin there is.

(3)モジュール分割の検討(図1のステップ3)
単位時間あたりのIC内部の消費電流の変化が最大となる時に、EMIノイズはピークに達する。このEMIノイズのピークを低減する方法としては、消費電流が過渡的に変化するタイミングが、LSI中にてモジュール分割した各モジュールにて同時期に集中することを緩和して、EMIノイズのピークを下げることが考えられる。このためのモジュール分割が図1のステップ3である。
(3) Examination of module division (Step 3 in FIG. 1)
EMI noise reaches a peak when the change in current consumption inside the IC per unit time becomes maximum. As a method of reducing the peak of EMI noise, the timing at which the current consumption changes transiently is eased by concentrating on each module divided in the LSI at the same time, and the peak of EMI noise is reduced. It can be lowered. Module division for this is step 3 in FIG.

例えば、図2において、破線で囲んだモジュールI,II,III,IVに属するフリップフロップF.F.までのスキューが、セットアップ/ホールドタイムに対してマージンが大きいことが分かった。破線で囲んでいない他のモジュールは、セットアップ/ホールドタイムを満たしているが、マージンが大きくなかったとする。   For example, in FIG. 2, flip-flops F.1 belonging to modules I, II, III, and IV surrounded by broken lines. F. It was found that the margin to the skew up to the setup / hold time is large. It is assumed that other modules not surrounded by a broken line satisfy the setup / hold time, but the margin is not large.

この場合、破線で囲んだモジュールI,II,III,IVが分割モジュールの候補として決定される。   In this case, modules I, II, III, and IV surrounded by a broken line are determined as candidates for divided modules.

(4)クロックスキュー設定回路の挿入(図1のステップ4)
図3は、配置配線後に、分割モジュール候補のモジュールI,II,III,IVの直前に挿入されるクロックスキュー設定回路10を示している。このクロックスキュー設定回路10は、例えば第1,第2のバッファ12,14と、3つのセレクタ20,22,24とを有する。第1,第2のバッファ12,14と、3つのセレクタ20,22,24とは、それぞれクロック信号CLKを遅延させる。
(4) Insertion of clock skew setting circuit (step 4 in FIG. 1)
FIG. 3 shows a clock skew setting circuit 10 that is inserted immediately before the modules I, II, III, and IV that are candidate division modules after placement and routing. The clock skew setting circuit 10 includes, for example, first and second buffers 12 and 14 and three selectors 20, 22 and 24. The first and second buffers 12 and 14 and the three selectors 20, 22, and 24 delay the clock signal CLK, respectively.

図3中のクロック信号A〜Dのうち、クロック信号A〜CはクロックCLKが第1バッファ12にて遅延されたものであるが、クロック信号Aはセレクタ24のみを通過して出力され、クロック信号Bはセレクタ22,24を通過して出力され、クロック信号Cはセレクタ20,22,24を通過して出力される。クロック信号Cと同じく3つのセレクタ20,22,24を通過して出力されるクロック信号Dは、第1バッファ12に加えて第2バッファ14でも遅延されている。従って、最終段のセレクタ24より出力されるクロック信号A〜Dの遅延量の大きさは、A<B<C<Dとなり、クロック信号Dの遅延量が最も大きく、クロック信号Aの遅延量が最も小さくなる。   Of the clock signals A to D in FIG. 3, the clock signals A to C are obtained by delaying the clock CLK by the first buffer 12, but the clock signal A is output only through the selector 24, and the clock The signal B is output through the selectors 22 and 24, and the clock signal C is output through the selectors 20, 22, and 24. Like the clock signal C, the clock signal D output through the three selectors 20, 22, 24 is delayed in the second buffer 14 in addition to the first buffer 12. Accordingly, the delay amount of the clock signals A to D output from the selector 24 at the final stage is A <B <C <D, the delay amount of the clock signal D is the largest, and the delay amount of the clock signal A is The smallest.

3つのセレクタ20,22,24を切り換える制御信号S1,S2,S3は、2つのロジック信号M1,M2の論理に基づき、それらが入力される3つのロジック回路30,32,34より出力される。   The control signals S1, S2, S3 for switching the three selectors 20, 22, 24 are output from the three logic circuits 30, 32, 34 to which they are input based on the logic of the two logic signals M1, M2.

図4は、図3に示すクロックスキュー設定回路10の真理値表であり、2つのロジック信号M1,M2の論理が固定されると、出力Xがクロック信号A〜Dのいずれか一つに固定される。   FIG. 4 is a truth table of the clock skew setting circuit 10 shown in FIG. 3. When the logic of the two logic signals M1 and M2 is fixed, the output X is fixed to any one of the clock signals A to D. Is done.

次に、このクロックスキュー設定回路10が挿入されるべき位置と、クロックスキュー設定回路10にて選択されるクロック信号の遅延量について説明する。   Next, the position where the clock skew setting circuit 10 is to be inserted and the delay amount of the clock signal selected by the clock skew setting circuit 10 will be described.

先ず、クロックスキュー設定回路10が挿入可能な位置は、各モジュールI,II,III,IVに対応して、図2に示す各位置a〜dとなる。この各位置a〜dは、次の2つの要件を満足している。一つは、各モジュールI,II,III,IVにのみ個別的にスキューを補正できる位置であることである。もし、クロックスキュー設定回路10が挿入されることにより、スキューマージンが小さいモジュールにまで影響及ぶと、スキュー解析をやり直さなければならないからである。他の一つは、モジュール内の最上流に位置するバッファのさらに上流位置である。こうして、クロックソースに最も近い位置にクロックスキュー設定回路10が挿入されることで、スキューを調整できる回路規模を最大とすることができ、EMIノイズのピークを低減させるのに効果的だからである。   First, the positions where the clock skew setting circuit 10 can be inserted are the positions a to d shown in FIG. 2 corresponding to the modules I, II, III, and IV. Each of the positions a to d satisfies the following two requirements. One is that the skew can be individually corrected only for each of the modules I, II, III, and IV. This is because if the clock skew setting circuit 10 is inserted to affect a module having a small skew margin, the skew analysis must be performed again. The other is a further upstream position of the buffer located at the uppermost stream in the module. This is because the circuit scale capable of adjusting the skew can be maximized by inserting the clock skew setting circuit 10 at the position closest to the clock source, and this is effective in reducing the peak of EMI noise.

次に、クロックスキュー設定回路10にて選択されるクロック信号の遅延量について説明する。ここで検討するべきことは、予め解析された各モジュールのスキューマージンの大きさと、各モジュールが占める回路規模の大きさである。上述した通り、図3のクロックスキュー設定回路10は4種類のスキュー量(クロック信号A〜D)を選択できるが、選択されるスキューの大きさが各モジュールにてスキューマージンの範囲内でなれければならない。そうでないと、クロックスキュー設定回路10の追加によって、あるモジュールではセットアップ/ホールドタイムを満足できなくなってしまうからである。なお、各モジュールにて選択されるスキュー量の大きさ(クロック信号A〜D)は、必ずしも異ならせる必要はない。   Next, the delay amount of the clock signal selected by the clock skew setting circuit 10 will be described. What should be considered here is the size of the skew margin of each module analyzed in advance and the size of the circuit occupied by each module. As described above, the clock skew setting circuit 10 of FIG. 3 can select four types of skew amounts (clock signals A to D), but the selected skew amount can be within the range of the skew margin in each module. I must. Otherwise, the addition of the clock skew setting circuit 10 prevents a certain module from satisfying the setup / hold time. Note that the magnitude of the skew amount selected by each module (clock signals A to D) is not necessarily different.

重要なことは、各モジュールが持っているスキューに追加してクロックスキュー設定回路10によるスキューを追加した時に、結果として各モジュールにて消費電流が過渡的に変化するタイミングを分散して、EMIノイズのピークを低減することである。   What is important is that when the skew by the clock skew setting circuit 10 is added in addition to the skew possessed by each module, as a result, the timing at which the consumption current changes transiently in each module is dispersed, resulting in EMI noise. Is to reduce the peak.

ここで、EMIノイズは同時期に流れる消費電流の大きさに依存するため、各モジュールのセル数を把握しておくことも重要である。   Here, since the EMI noise depends on the current consumption flowing in the same period, it is also important to know the number of cells of each module.

図2の例では、次のような回路規模であったとする。なお、セル数とは、基本セルによって構成される機能セルの数である。モジュールIのセル数2,582個で基本セル数は20,597個、モジュールIIのセル数は6,103個で基本セル数は61,596個、モジュールIIIのセル数は10,585個で基本セル数は92,732個、モジュールIVのセル数は1,138個で基本セル数は9,485個であった。よって、回路規模からすると、モジュールIV<モジュールI<モジュールII<モジュールIIIとなり、最大規模はモジュールIIIで最小規模はモジュールIVである。   In the example of FIG. 2, it is assumed that the circuit scale is as follows. Note that the number of cells is the number of functional cells configured by basic cells. The number of modules I is 2,582, the number of basic cells is 20,597, the number of cells of module II is 6,103, the number of basic cells is 61,596, and the number of cells of module III is 10,585. The number of basic cells was 92,732, the number of cells of module IV was 1,138, and the number of basic cells was 9,485. Therefore, in terms of circuit scale, module IV <module I <module II <module III, where the maximum scale is module III and the minimum scale is module IV.

スキュー量の設定として、例えば最大規模のモジュールIIIにマージンの範囲内で最大スキュー量を設定した時、次に規模が大きいモジュールIIに最小スキュー量を設定するように、クロックスキュー設定回路10により調整するとよい。この場合、モジュールIIにクロックスキュー設定回路10を挿入しないという選択肢もある。このように回路規模の大きいモジュール間でスキュー量の相違を最大とすることで、各モジュールにて生成されるEMIノイズのピークは時間軸で明確に分離され、相互に重なり合うことがない。これにより、EMIノイズのピークを低減できる。   As the skew amount setting, for example, when the maximum skew amount is set within the margin range for the largest module III, the clock skew setting circuit 10 adjusts so that the smallest skew amount is set for the next largest module II. Good. In this case, there is an option that the clock skew setting circuit 10 is not inserted into the module II. By maximizing the difference in skew amount between modules having a large circuit scale in this way, the peaks of EMI noise generated in each module are clearly separated on the time axis and do not overlap each other. Thereby, the peak of EMI noise can be reduced.

以降は、モジュールIのモジュールII,IIIのそれぞれに対するスキュー量の相違が最大になるように、最後にモジュールIVのモジュールI,IIのそれぞれに対するスキュー量の相違が最大となるように、それぞれクロックスキュー設定回路10の挿入の有無とクロックスキュー設定回路10でのスキュー量の選択を実行する。   Thereafter, the clock skew is set so that the difference in skew amount between modules I and II of module I is maximized, and finally the difference in skew amount between modules I and II of module IV is maximized. The selection of whether or not the setting circuit 10 is inserted and the amount of skew in the clock skew setting circuit 10 are executed.

図5は、追加バッファとしてクロックスキュー設定回路10を挿入した状態を示している。図5では、ルートバッファ40から最終段のフリップフロップF.F.までに許容されるスキュー量が300〜500psecという条件下で、サブルートバッファ42を有するモジュールにはクロックスキュー設定回路10を挿入せず、サブルートバッファ44を有するモジュールには、サブルートバッファ44の上流側に追加バッファとしてクロックスキュー設定回路10を挿入した。   FIG. 5 shows a state in which the clock skew setting circuit 10 is inserted as an additional buffer. In FIG. 5, the flip-flop F. F. The clock skew setting circuit 10 is not inserted into the module having the sub-root buffer 42 under the condition that the skew amount allowed until 300 to 500 psec is set, and the module having the sub-root buffer 44 is inserted upstream of the sub-root buffer 44. A clock skew setting circuit 10 is inserted as an additional buffer.

(5)二次配置配線(2ndP&R:図1のステップ5)
上述したクロックスキュー設定回路20の挿入と配線を二次配置配線により実施する。
なお、既に一次配置配線は終了しているので、この二次配置配線は、一次配置配線での開きスペースを利用して手作業にて実施される。
(5) Secondary placement and routing (2ndP & R: Step 5 in FIG. 1)
The insertion and wiring of the clock skew setting circuit 20 described above is performed by secondary arrangement wiring.
Since the primary placement and routing has already been completed, the secondary placement and routing is performed manually using an open space in the primary placement and routing.

(6)クロックツリーのスキュー再解析(図1での二度目のステップ2)
二次配置配線後に、上述したステップ2と同様にして、スタティックタイミングアナライザ(STA)と称されるツールを用いて、二度目のスキュー解析を実施する。これにより、クロックソースから末端までのスキューを解析して、各クロックツリーにてセットアップ/ホールドタイムを満たしていることを確認する。確認できれば終了し(図2のステップ6)、不具合があればステップ3〜5及びステップ2を再度実施する。
(6) Clock tree skew reanalysis (second step 2 in FIG. 1)
After secondary placement and routing, a second skew analysis is performed using a tool called a static timing analyzer (STA) in the same manner as in Step 2 described above. Thus, the skew from the clock source to the end is analyzed, and it is confirmed that the setup / hold time is satisfied in each clock tree. If it can be confirmed, the process ends (step 6 in FIG. 2). If there is a problem, steps 3 to 5 and step 2 are performed again.

(7)本実施形態の効果
上述したような設計方法によれば、図6に示すようにモジュール毎にフリップフロップF.F.でのデータ切換えタイミングがずれ、しかも回路規模に応じてピークの大きなEMIノイズは時間軸で分散されるので、大きなEMIノイズピーク同士が重なり合うことなく、IC全体としてのEMIノイズのピークを小さくできる。
(7) Effects of this Embodiment According to the design method as described above, as shown in FIG. F. Since the EMI noise having a large peak is dispersed on the time axis according to the circuit scale, the peak of the EMI noise of the entire IC can be reduced without overlapping the large EMI noise peaks.

なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。   Although the present embodiment has been described in detail as described above, it will be easily understood by those skilled in the art that many modifications can be made without departing from the novel matters and effects of the present invention. Accordingly, all such modifications are intended to be included in the scope of the present invention. For example, a term described at least once together with a different term having a broader meaning or the same meaning in the specification or the drawings can be replaced with the different term in any part of the specification or the drawings.

本発明の実施形態に係る同期回路の設計方法のフローチャートである。It is a flowchart of the design method of the synchronous circuit which concerns on embodiment of this invention. 一次配置配線により得られたクロックツリーの模式図である。It is a schematic diagram of a clock tree obtained by primary placement and routing. クロックスキュー設定回路の一例を示す回路図である。It is a circuit diagram which shows an example of a clock skew setting circuit. 図3の回路の真理値表を示す特性図である。It is a characteristic view which shows the truth table of the circuit of FIG. クロックスキュー設定回路の挿入例を示す図である。It is a figure which shows the example of insertion of a clock skew setting circuit. 実施形態の設計方法によって時間軸上で分散された各モジュールのEMIノイズを示す特性図である。It is a characteristic view which shows the EMI noise of each module distributed on the time axis by the design method of the embodiment.

符号の説明Explanation of symbols

10 クロックスキュー設定回路、12,14 第1,第2バッファ、20,22,24 セレクタ、30,32,34 ゲート回路、40 ルートバッファ、42,44 サブルートバッファ   10 clock skew setting circuit, 12, 14 first and second buffer, 20, 22, 24 selector, 30, 32, 34 gate circuit, 40 route buffer, 42, 44 sub route buffer

Claims (8)

ネットリストを含む所与の条件を入力して、自動配置配線ツールを用いて同期回路の一次配置配線を実施する第1工程と、
配置配線された同期回路のクロックツリーに従って、クロックソースから各末端経路までのクロックの到達時間差であるスキューを解析する第2工程と、
解析されたスキューがセットアップ/ホールドタイムに対してマージンを有する複数のモジュールに分割する第3工程と、
分割された前記複数のモジュールの少なくとも一つにクロックスキュー設定回路を追加挿入する第4工程と、
前記クロックスキュー設定回路を追加して、二次配置配線を実施する第5工程と、
を有することを特徴とする同期回路の設計方法。
A first step of inputting a given condition including a netlist and performing primary placement and routing of a synchronous circuit using an automatic placement and routing tool;
A second step of analyzing a skew, which is a difference in arrival time of the clock from the clock source to each end path, according to the clock tree of the synchronous circuit arranged and routed;
A third step in which the analyzed skew is divided into a plurality of modules having a margin with respect to the setup / hold time;
A fourth step of additionally inserting a clock skew setting circuit into at least one of the plurality of divided modules;
A fifth step of adding the clock skew setting circuit and performing secondary placement and routing;
A method for designing a synchronous circuit, comprising:
請求項1において、
前記第4工程では、前記複数のモジュールのうち、回路規模が大きい最上位2つのモジュール間で、最大のスキュー差が生じるように、前記最上位2つのモジュールの少なくとも一方に前記クロックスキュー設定回路を挿入することを特徴とする同期回路の設計方法。
In claim 1,
In the fourth step, the clock skew setting circuit is provided in at least one of the top two modules so that a maximum skew difference occurs between the top two modules having a large circuit scale among the plurality of modules. A method for designing a synchronous circuit, comprising inserting the synchronous circuit.
請求項2において、
前記第4工程では、前記複数のモジュールのうち、三番目に回路規模が大きいモジュールが、前記最上位2つのモジュールのそれぞれに対して、最大のスキュー差が生じるように、前記三番目に回路規模が大きいモジュールに前記クロックスキュー設定回路を挿入することを特徴とする同期回路の設計方法。
In claim 2,
In the fourth step, the module having the third largest circuit scale among the plurality of modules has the third largest circuit scale so that the largest skew difference is generated with respect to each of the top two modules. A method for designing a synchronous circuit, wherein the clock skew setting circuit is inserted into a module having a large value.
請求項1において、
前記クロックスキュー設定回路は、ロジック信号によりスキュー量が可変であり、
前記第4工程は、前記モジュール毎に前記クロックスキュー設定回路のスキュー量を設定する工程を含むことを特徴とする同期回路の設計方法。
In claim 1,
The clock skew setting circuit has a variable skew amount according to a logic signal,
The method of designing a synchronous circuit, wherein the fourth step includes a step of setting a skew amount of the clock skew setting circuit for each module.
請求項4において、
前記第4工程では、前記複数のモジュールのうち、回路規模が大きい最上位2つのモジュール間で、最大のスキュー差が生じるように、前記最上位2つのモジュールの少なくとも一方に前記クロックスキュー設定回路を挿入し、かつ、前記クロックスキュー設定回路のスキュー量を前記ロジック信号により調整することを特徴とする同期回路の設計方法。
In claim 4,
In the fourth step, the clock skew setting circuit is provided in at least one of the top two modules so that a maximum skew difference occurs between the top two modules having a large circuit scale among the plurality of modules. A method for designing a synchronous circuit, comprising: inserting and adjusting a skew amount of the clock skew setting circuit by the logic signal.
請求項5において、
前記第4工程では、前記複数のモジュールのうち、三番目に回路規模が大きいモジュールが、前記最上位2つのモジュールのそれぞれに対して、最大のスキュー差が生じるように、前記三番目に回路規模が大きいモジュールに前記クロックスキュー設定回路を挿入し、かつ、前記クロックスキュー設定回路のスキュー量を前記ロジック信号により調整することを特徴とする同期回路の設計方法。
In claim 5,
In the fourth step, the module having the third largest circuit scale among the plurality of modules has the third largest circuit scale so that the largest skew difference is generated with respect to each of the top two modules. A method of designing a synchronous circuit, wherein the clock skew setting circuit is inserted into a module having a large value, and a skew amount of the clock skew setting circuit is adjusted by the logic signal.
請求項1乃至6のいずれかにおいて、
前記複数のモジュールの少なくとも一つに前記クロックスキュー設定回路を挿入する位置は、他のモジュールにスキューの変動を与えない位置であって、かつ、前記複数のモジュールの少なくとも一つに属する最上流のバッファのさらに上流側の位置であることを特徴とする同期回路の設計方法。
In any one of Claims 1 thru | or 6.
The position at which the clock skew setting circuit is inserted into at least one of the plurality of modules is a position that does not cause a skew fluctuation to other modules, and is the most upstream of the at least one of the plurality of modules. A method for designing a synchronous circuit, which is a position further upstream of a buffer.
請求項1乃至7のいずれかにおいて、
前記第5工程後に、前記クロックスキュー設定回路が追加されたクロックツリーに従って、クロックソースから各末端経路までのクロックの到達時間差であるスキューを解析し、解析されたスキューがセットアップ/ホールドタイムに対してマージンを有するか否かを検証する第6工程をさらに有することを特徴とする同期回路の設計方法。
In any one of Claims 1 thru | or 7,
After the fifth step, according to the clock tree to which the clock skew setting circuit is added, a skew that is a difference in arrival time of the clock from the clock source to each terminal path is analyzed, and the analyzed skew is compared with the setup / hold time. A method for designing a synchronous circuit, further comprising a sixth step of verifying whether or not a margin is provided.
JP2006188988A 2006-07-10 2006-07-10 Design method for synchronous circuit having reduced emi noise Pending JP2008017389A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006188988A JP2008017389A (en) 2006-07-10 2006-07-10 Design method for synchronous circuit having reduced emi noise

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006188988A JP2008017389A (en) 2006-07-10 2006-07-10 Design method for synchronous circuit having reduced emi noise

Publications (1)

Publication Number Publication Date
JP2008017389A true JP2008017389A (en) 2008-01-24

Family

ID=39073969

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006188988A Pending JP2008017389A (en) 2006-07-10 2006-07-10 Design method for synchronous circuit having reduced emi noise

Country Status (1)

Country Link
JP (1) JP2008017389A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187104A (en) * 2008-02-04 2009-08-20 Panasonic Corp Semiconductor integrated circuit
JP2015201502A (en) * 2014-04-07 2015-11-12 三菱電機株式会社 semiconductor integrated circuit and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187104A (en) * 2008-02-04 2009-08-20 Panasonic Corp Semiconductor integrated circuit
JP2015201502A (en) * 2014-04-07 2015-11-12 三菱電機株式会社 semiconductor integrated circuit and program

Similar Documents

Publication Publication Date Title
US6192092B1 (en) Method and apparatus for clock skew compensation
MX2007000249A (en) Method and apparatus for fixing hold time violations in a circuit design.
CN113792520A (en) Layout wiring method, layout wiring device, synchronous circuit and integrated circuit chip
CN107908884B (en) Interactive ECO method for improving time sequence by adjusting clock tree branches
JP2008017389A (en) Design method for synchronous circuit having reduced emi noise
JP2005123537A (en) Semiconductor device and its manufacturing method
US7725855B1 (en) Symmetry-based optimization for the physical synthesis of programmable logic devices
US20110191733A1 (en) Segment and Bipartite Graph Based Apparatus and Method to Address Hold Violations in Static Timing
US6499125B1 (en) Method for inserting test circuit and method for converting test data
US7331027B2 (en) Method for swapping circuits in a metal-only engineering change
US7320117B2 (en) Design method for semiconductor integrated circuit device using path isolation
JP2016122299A (en) State machine division program, information processor and state machine division method
US20080079468A1 (en) Layout method for semiconductor integrated circuit
US7191416B2 (en) System and method for modifying integrated circuit hold times
JP2008166981A (en) Delay adjustment circuit and delay adjustment method
JP2009163490A (en) Timing adjustment method of integrated circuit and computer program
JP5696407B2 (en) Semiconductor integrated circuit automatic placement and routing method, layout apparatus, automatic placement and routing program, and semiconductor integrated circuit
JP2005116793A (en) Semiconductor integrated circuit and its clock wiring method
JP2008219535A (en) Synchronous circuit
JP2005322694A (en) Method for designing layout of semiconductor integrated circuit and its fabrication process
JP2003256488A (en) Method for layout of lsi, program, and recording medium
JP2012137986A (en) Layout design device for semiconductor integrated circuit, layout design method for semiconductor integrated circuit, and program
JPH08274260A (en) Clock skew reduction method
JP2010141005A (en) Method of designing semiconductor integrated circuit
JP2008103929A (en) Semiconductor integrated circuit