JP2004127012A - Synchronous circuit and its design method - Google Patents

Synchronous circuit and its design method Download PDF

Info

Publication number
JP2004127012A
JP2004127012A JP2002291285A JP2002291285A JP2004127012A JP 2004127012 A JP2004127012 A JP 2004127012A JP 2002291285 A JP2002291285 A JP 2002291285A JP 2002291285 A JP2002291285 A JP 2002291285A JP 2004127012 A JP2004127012 A JP 2004127012A
Authority
JP
Japan
Prior art keywords
clock
clock control
control cell
synchronous circuit
signal
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
JP2002291285A
Other languages
Japanese (ja)
Inventor
Takashi Ueda
植田 隆
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.)
Kawasaki Microelectronics Inc
Original Assignee
Kawasaki Microelectronics Inc
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 Kawasaki Microelectronics Inc filed Critical Kawasaki Microelectronics Inc
Priority to JP2002291285A priority Critical patent/JP2004127012A/en
Publication of JP2004127012A publication Critical patent/JP2004127012A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a synchronous circuit capable of designing a circuit by using design environment of the synchronous circuit and reducing power consumption like an asynchronous circuit, and to provide its design method. <P>SOLUTION: In synthesizing a clock tree including clock control cells, arrangement of the clock control cells in the clock tree is determined according to the number of first storage elements driven by the clock control cells and a timing restriction value of the clock control cells is changed and timing verification before arrangement and wiring is performed in consideration of phase shift between first clock signals to be inputted in the first storage elements and second clock signals to be inputted in the clock control cells to be changed according to the arrangement of the clock control cells. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、クロックツリーによって生成される複数のクロック信号に同期して動作する複数の記憶素子を備える同期式回路およびその設計方法に関するものである。
【0002】
【従来の技術】
大規模化するLSI(大規模集積回路)の設計には同期式回路を用いるのが主流である。同期式回路には、設計環境が整備されている(今現在、主流の設計手法である)、タイミングの検証が簡単である(静的タイミング検証)、テスト容易化設計としてスキャンテストを採用可能である等の利点がある反面、非同期式回路と比べて消費電力が大きい、非同期式回路と比べてPVT変動に対する信頼性が低い等の欠点がある。
【0003】
ここで、PVT変動とは、半導体製造プロセス(P)、電源電圧(V)、温度(T)の変動を意味する。
【0004】
ところで、半導体製造プロセスの微細化に伴う、配線遅延の絶対値の増大とゲート遅延に対する配線遅延の相対値の増大により、大規模な半導体チップにおいて、同期式回路を用いてクロック信号を高速化することは次第に難しくなってきている。この問題に対する1つの回答は非同期式回路である。但し、クロック周波数が比較的低いアプリケーションも数多く存在し、それらに対しては同期式回路の方が好ましい場合も多い。
【0005】
非同期式回路は、同期式回路とは相反する利点や欠点を持っている。すなわち、非同期式回路は、同期式回路と比べて消費電力が小さい、同期式回路と比べてPVT変動に対する信頼性が高い等の利点がある反面、設計環境が整備されていない、タイミング検証が難しい(静的タイミング解析は使用不可)、全てをイベントドリブンシミュレーションで行う必要がある、テスト容易化設計としてスキャンテストを採用できない等の欠点がある。
【0006】
同期式回路において、消費電力に占めるクロックラインの充放電電流の割合は非常に高く、回路にも依存するが、消費電力の半分以上を占める場合もある。特に、携帯電話等のモバイル用途のアプリケーションでは、低消費電力の要求が非常に高いというのが現状である。
【0007】
これに対し、前述のように、非同期式回路を採用して回路設計を行うことにより低消費電力を実現することができる。しかし、非同期式回路の設計環境は整備されていないし、スキャンテスト等のテスト容易化設計も利用できないため、設計工数の増大を招くという問題がある。
【0008】
【発明が解決しようとする課題】
従って、本発明の目的は、前記従来技術に基づく問題点を解消し、同期式回路の設計環境を使用して回路設計を行うことができ、なおかつ非同期式回路のように低消費電力を実現することができる同期式回路およびその設計方法を提供することにある。
【0009】
【課題を解決するための手段】
上記目的を達成するために、本発明は、クロックツリーによって生成される複数の第1クロック信号に同期して動作する複数の第1記憶素子を備える同期式回路であって、
前記クロックツリーは、前記第1クロック信号よりも位相の進んでいる第2クロック信号を出力するタイミングを指定するイネーブル信号により指定される所定のタイミングで前記第2クロック信号を出力するゲート素子を備えるクロック制御セルを含むことを特徴とする同期式回路を提供するものである。
【0010】
ここで、前記クロック制御セルは、前記イネーブル信号を保持する第2記憶素子を備え、前記ゲート素子は前記第2記憶素子に保持されたイネーブル信号により制御されるのが好ましい。
【0011】
また、前記第2記憶素子は、前記第2クロック信号により前記イネーブル信号を保持するのが好ましい。
【0012】
本発明は、上記のいずれかに記載の同期式回路の設計方法であって、
前記クロック制御セルを含むクロックツリーを合成するに際し、
前記クロック制御セルが駆動する前記第1記憶素子の個数に応じて、前記クロックツリーの中における前記クロック制御セルの配置を決定し、前記クロック制御セルの配置に応じて変化する、前記第1記憶素子に入力される前記第1クロック信号と前記クロック制御セルに入力される前記第2クロック信号との間の位相のずれを考慮して、前記クロック制御セルのタイミング制約値を変更し、配置配線前のタイミング検証を行うことを特徴とする同期式回路の設計方法を提供する。
【0013】
ここで、さらに、前記クロック制御セルの第2記憶素子による遅延時間を考慮して、前記クロック制御セルのタイミング制約値を変更し、前記配置配線前のタイミング検証を行うのが好ましい。
【0014】
【発明の実施の形態】
以下に、添付の図面に示す好適実施形態に基づいて、本発明の同期式回路およびその設計方法を詳細に説明する。
【0015】
図1は、本発明の同期式回路の一実施形態の構成概念図である。
同図に示す同期式回路10は、大元(ルート)のクロック信号CLKから複数のクロック信号(第1クロック信号)CLKOを生成するクロックツリー12と、このクロックツリー12によって生成される複数のクロック信号CLKOに同期して動作する複数のフリップフロップ(第1記憶素子)14と、組合せ論理回路16とを備えている。
【0016】
クロックツリー12は、ルートバッファ(CTS)18と、複数のクロック制御セル20とを備えている。ルートバッファ18の入力端子には大元のクロック信号CLKが入力され、ルートバッファ18の出力信号CLKIは各クロック制御セル20の一方の入力端子(図中下側の入力端子)に入力されている。また、各クロック制御セル20の出力信号CLKOは、各々対応するフリップフロップ14のクロック入力端子に入力されている。
【0017】
クロックツリー12は、クロックツリー合成ツールを用いて自動生成されるものである。図示を省略しているが、ルートバッファ18と各クロック制御セル20との間、および各クロック制御セル20と各々対応するフリップフロップ14との間には、必要に応じて、ツリー状に構成された1段以上のバッファまたはインバータが適宜挿入される。これにより、クロック制御セル20の出力信号CLKOは複数のクロック信号に分配される。
【0018】
クロック制御セル20は、そのファンナウト数、すなわちクロック制御セル20が最終的に駆動するフリップフロップ14の個数に応じて、クロックツリー合成ツールにより、クロックツリー12の中における配置が自動的に決定される。すなわち、クロック制御セル20は、そのファンナウト数が多い場合には、クロックツリーの中の比較的上流側に配置され、ファンナウト数が少ない場合には比較的下流側に配置される。
【0019】
フリップフロップ14は、クロックツリー12によって生成されるクロック信号CLKOに同期して動作する。本実施形態のフリップフロップ14の場合、クロック信号CLKOの立ち上がりに同期して、データ入力端子Dに入力される信号が保持され、データ出力端子Qから出力される。フリップフロップ14のデータ入力端子Dには組み合わせ回路16からの出力信号が入力され、データ出力端子Qからの出力信号は組合せ論理回路16に入力されている。
【0020】
図示例では、各々のクロック制御セル20からの出力信号CLKOが、それぞれ対応するフリップフロップ14のクロック入力端子に入力されている。図示を省略しているが、各々のフリップフロップ14は、複数のフリップフロップをまとめて1つのフリップフロップ14として概念的に表したものであり、各々のフリップフロップのクロック入力端子には、クロック制御セル20の出力信号CLKOが分配されて生成された複数のクロック信号がそれぞれ入力される。
【0021】
組合せ論理回路16は、クロックツリー12およびフリップフロップ14以外の回路を概念的に表したものである。組合せ論理回路16には、外部からの信号も入力されている。また、組合せ論理回路16からの出力信号の一部は、フリップフロップ14のデータ入力端子Dの他、クロックツリー12を構成するクロック制御セル20の他方の入力端子(図中上側の入力端子)にも入力され、残りの出力信号は外部へ出力されている。
【0022】
図1に示す同期式回路10は、従来公知の同期式回路の設計環境を使用して設計することが可能である。また、スキャンテスト等のテスト容易化手法を採用することも可能である。
【0023】
次に、同期式回路10の動作を説明する前に、クロック制御セル20について、図2の構成回路図および図3のタイミングチャートを参照して説明する。
【0024】
図2に示すクロック制御セル20は、ラッチ(第2記憶素子)22と、ANDゲート(ゲート素子)24とを備えている。ラッチ22のデータ入力端子Dにはイネーブル信号CLKEが入力され、その反転クロック入力端子Gにはクロック信号(第2クロック信号)CLKIが入力されている。ラッチ22のデータ出力端子Qからの出力信号およびクロック信号CLKIがANDゲート24に入力され、ANDゲート24からはクロック信号CLKOが出力されている。
【0025】
図3のタイミングチャートに示すように、クロック信号CLKIは、図1に示すクロックツリー12のルートバッファ18から直接、もしくは必要に応じて、ツリー状に構成されたバッファまたはインバータを介して入力される所定周波数のクロック信号である。このクロック信号CLKIは、クロックツリー12の中におけるクロック制御セル20の配置に応じて、フリップフロップ14に入力されるクロック信号に対して位相が所定の時間進んでいる。
【0026】
イネーブル信号CLKEは、このクロック制御セル20から、クロック信号CLKIをクロック信号CLKOとして出力するタイミングを指定する制御信号であり、図1に示す組合せ論理回路16から入力される。イネーブル信号CLKEは、フリップフロップ14に入力されるクロック信号に同期して変化するので、クロック信号CLKIの立ち上がりエッジに対して所定時間遅延したタイミングで変化する。
【0027】
クロック制御セル20において、ラッチ22は、クロック信号CLKIがローレベル(L)の期間は透過モードとなり、データ入力端子Dに入力されるイネーブル信号CLKEがデータ出力端子Qから出力される。また、クロック信号CLKIがハイレベル(H)の期間は保持モードとなり、クロック信号CLKIの立ち上がりのタイミングでデータ入力端子Dに入力されているイネーブル信号CLKEの状態が保持される。
【0028】
図4のタイミングチャートに示すように、ラッチ22を正しく動作させるためには、クロック信号CLKIの立ち上がりエッジに対してイネーブル信号CLKEのデータ保持期間に物理的なタイミング制約がある。すなわち、ラッチ22を正しく動作させるためには、イネーブル信号CLKEは、クロック信号CLKIの立ち上がりに対して所定のセットアップ時間ts およびホールド時間th が必要である。
【0029】
クロック制御セル20では、図3のタイミングチャートに示すように、イネーブル信号CLKEとしてハイレベルが入力されると、前述のように、クロック信号CLKIのローレベルの期間にラッチ22が透過モードとなり、そのデータ出力端子Qからハイレベルが出力される。そして、ANDゲート24によりクロック信号CLKIとの論理積が取られ、クロック信号CLKIの次のハイレベルの期間に、クロック信号CLKOとしてハイレベルが出力される。
【0030】
次に、図1に示す同期式回路10の動作を説明する。
【0031】
同期式回路10では、クロックツリー12により、大元のクロック信号CLKが分配されて複数のクロック信号CLKOが生成される。クロック制御セル20には、組合せ論理回路16からイネーブル信号CLKEが入力されており、クロック制御セル20から各々対応するフリップフロップ14に供給されるクロック信号CLKOは、フリップフロップ14が動作する必要がある時にしか変化しないので、クロックラインの充放電による消費電力を大幅に削減することができる。
【0032】
各々のフリップフロップ14は、前述のように、クロックツリー12から入力されるクロック信号CLKOに同期して動作し、その出力信号は組合せ論理回路16へ入力される。組合せ論理回路16は、外部入力およびそれぞれのフリップフロップ14からの出力信号に基づいて動作する。そして、その出力信号の一部はイネーブル信号CLKEとしてクロック制御セル20に入力され、他の一部はフリップフロップ14のデータ入力端子Dに入力され、残りは外部へ出力される。
【0033】
次に、本発明の同期式回路の設計方法について説明する。
【0034】
既に述べたように、クロックツリー12はクロックツリー合成ツールによって合成される。この時、クロック制御セル20は、例えばラッチ22の出力信号をハイレベルとして透過の属性が与えられ、クロックツリー12を構成するバッファの1つとして扱われる。これにより、従来公知のクロックツリー合成ツールを使用してクロックツリー12を合成することができる。
【0035】
また、クロックツリー合成ツールによってクロックツリー12が合成される場合、クロック制御セル20は、そのファンナウト数に応じて、クロックツリー12の中の配置が自動的に決定される。クロック制御セル20の配置に応じて、クロック制御セル20に入力されるクロック信号CLKIは、フリップフロップ14に入力されるクロック信号CLKOに対して、そのファンナウト数に応じて位相が所定の時間だけ進んでいる。
【0036】
例えば、クロック制御セル20のファンナウト数が少ない場合、クロック制御セル20はクロックツリー12の中の比較的下流側に配置され、多い場合には比較的上流側に配置される。したがって、クロック制御セル20のファンナウト数が多くなるにつれて、クロック制御セル20は、次第にクロックツリー12の中の上流側に配置されるので、クロック制御セル20に入力されるクロック信号CLKIの進み具合は大きくなる。
【0037】
通常、同期式回路の設計において、配置配線前のタイミング検証、例えばシミュレーションや論理合成時のタイミング検証では、クロックライン上の全てのノードが同位相であると仮定して、例えばフリップフロップやラッチ等の各記憶素子のタイミング制約の検証が行われる。
【0038】
しかし、クロック制御セル20を用いてクロックツリー12を合成した場合、クロックツリー12からフリップフロップ14に入力されるクロック信号CLKOに対して、クロック制御セル20に入力されるクロック信号CLKIの位相が所定の一定時間進んでいるため、全てのクロック信号が同位相であるとしてタイミング検証を行うと、実際に配置配線した後のタイミング検証において、不具合が発生する可能性が高くなる。
【0039】
その理由は、クロック制御セル20のファンナウト数に応じて、クロックツリー12におけるクロック制御セル20の配置が上流側、下流側に前後し、クロック制御セル20に入力されるクロック信号CLKIの位相の進み具合、すなわちクロックツリー12からフリップフロップ14に入力されるクロック信号CLKOとクロック制御セル20に入力されるクロック信号CLKIとの間の位相のずれ幅が変化するからである。
【0040】
これに対して、本発明の同期式回路の設計方法では、ネットリスト解析を行って各クロック制御セル20のファンナウト数を検出し、このファンナウト数すなわちクロック制御セル20の配置に応じて変化する、フリップフロップ14に入力されるクロック信号とクロック制御セル20に入力されるクロック信号CLKIとの間の位相のずれを考慮して、クロック制御セル20のタイミング制約値を動的に変更し、配置配線前のタイミング検証を行う。
【0041】
言い換えると、クロック制御セル20に入力されるクロック信号CLKIが、フリップフロップ14に入力されるクロック信号と同位相であると仮定して配置配線前のタイミング検証を行っても、配置配線後のタイミング検証において不具合が発生する確率が低くなるように、クロック制御セル20のタイミング制約値にオフセットを与えて配置配線前のタイミング検証を行う。
【0042】
例えば、クロック制御セル20の物理的なタイミング制約値として、セットアップ時間およびホールド時間がそれぞれ2nsおよび1nsである場合に、クロック制御セル20のファンナウト数に応じて、クロック制御セル20に入力されるクロック信号CLKIの進み時間が1nsであるとすると、配置配線前のタイミング検証では、クロック制御セル20のセットアップ時間およびホールド時間がそれぞれ3nsおよび0nsに変更される。
【0043】
このように、クロック制御セル20のファンナウト数に応じて、そのタイミング制約値を動的に変更して配置配線前のタイミング検証を行うことにより、配置配線後にタイミングエラーが発生する確率を低く抑えることができる。
【0044】
なお、クロック制御セル20では、ラッチ22による出力遅延が発生するため、この遅延時間を考慮して、ANDゲート24から無用なパルスが発生しないようにラッチ22のセットアップ時間ts を調整する方が好ましい。また、本発明の同期式回路の設計方法では、各クロック制御セル20のファンナウト数に応じてそのタイミング制約値を動的に変更するため、同一クロックライン上にクロック制御セル20を1つだけ設けるようにする方が好ましい。
【0045】
次に、従来公知の同期式回路に、本発明を適用した場合の一例を挙げて説明する。
【0046】
図5(a)は、従来の同期式回路の一例の構成回路図である。
この同期式回路26は、マルチプレクサ28と、フリップフロップ30とを備えている。マルチプレクサ28の入力端子0には、フリップフロップ30のデータ出力端子Qからの出力信号OUTが入力され、入力端子1には入力信号INが入力されている。また、フリップフロップ30のクロック入力端子にはクロック信号CLKが入力され、データ入力端子Dには、マルチプレクサ28からの出力信号が入力されている。
【0047】
この同期式回路26では、イネーブル信号ENBLがハイレベルの場合には、クロック信号CLKの立ち上がりに同期して、入力信号INがマルチプレクサ28を介してフリップフロップ30に保持され、出力信号OUTとして出力される。一方、イネーブル信号ENBLがローレベルの場合には、フリップフロップ30の出力信号OUTがマルチプレクサ28を介してフリップフロップ30に再度保持されるため、フリップフロップ30の出力信号OUTは変化しない。
【0048】
この同期式回路26では、イネーブル信号ENBLの状態に応じて、フリップフロップ30の出力信号OUTが不必要に変化するのを防止するが、フリップフロップ30が動作する必要がない場合でもフリップフロップ30に無駄なクロックが入力され、クロックラインの充放電に伴い無駄な消費電力が発生する。
【0049】
図5(b)は、図5(a)に示す従来の同期式回路に本発明を適用して構成された本発明の同期式回路である。図5(b)に示す同期式回路32は、図5(a)に示す同期式回路26において、クロック信号CLKの代わりに、クロック制御セル20の出力信号をフリップフロップ30のクロック入力端子に入力したものである。また、クロック制御セル20には、クロック信号CLKおよびイネーブル信号ENBLが入力されている。
【0050】
この同期式回路32では、クロック制御セル20の出力信号が、イネーブル信号ENBLの状態に応じて、フリップフロップ30が動作する必要がある時にしか変化しないので、クロック制御セル20の出力信号CLKOの充放電による消費電力を削減することができる。特に、クロック制御セル20の出力信号CLKOが入力されるフリップフロップ30の個数が多くなるほど、また、フリップフロップ30が動作する割合が少なければ少ないほど、クロック制御セル20の出力信号CLKOの充放電による消費電力の削減効果は大きくなる。
【0051】
図5(c)は、図5(b)に示す本発明の同期式回路をさらに最適化したものである。図5(c)に示す同期式回路34は、図5(b)に示す同期式回路32において、マルチプレクサ28が取り除かれ、フリップフロップ30のデータ入力端子Dに入力信号INが直接入力されている。図5(b)に示す同期式回路32では、クロック制御セル20の出力信号が、フリップフロップ30が動作する必要がある時にしか変化しないので、マルチプレクサ28は不要である。
【0052】
このように、本発明を適用する同期式回路では、単にクロックラインの充放電電流を削減し、同期式回路の消費電力を削減することができるというだけではなく、図5(b)および(c)からも分かるように、従来、マルチプレクサ等の回路を用いてフリップフロップの出力信号が不必要に変化するのを防止していたところを、クロック信号が変化するのを防止し、マルチプレクサ等の回路を不要とすることにより、その分のトランジスタ数や消費電力も削減できるという効果もある。
【0053】
なお、クロック制御セル20は、図2の構成に限定されず、所定の機能を実現する他の構成のものを用いてもよい。例えば、ラッチ22ではなくフリップフロップを使用してもよい。クロック立ち上がり同期のフリップフロップの場合には、データ出力端子からの出力信号の変化タイミングが1クロック後ろ側へずれることになる。クロック立ち下がり同期のフリップフロップの場合には出力信号の変化タイミングは遅れないが、データ入力信号に課せられる遅延時間制約がおよそクロック半周期分厳しくなる。また、フリップフロップ14がクロック立ち下がり同期である場合や、イネーブル信号ENBLの極性が異なる場合には、それに合わせてクロック制御セル20内のラッチ22やANDゲート24の入力および出力信号の極性を適宜変化させる必要がある。
【0054】
本発明は、基本的に以上のようなものである。
以上、本発明の同期式回路およびその設計方法について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【0055】
【発明の効果】
以上詳細に説明した様に、本発明の同期式回路によれば、クロック制御セルから各々対応する第1記憶素子に供給されるクロック信号は、第1記憶素子が動作する必要がある時にしか変化しないので、クロックラインの充放電による消費電力を大幅に削減することができる。また、本発明の同期式回路は、同期式回路の設計環境を使用して短時間で設計を行うことができるし、スキャンテスト等のテスト方式を利用してテストを容易化することも可能である。
また、本発明の同期式回路の設計方法によれば、クロック制御セルのファンナウト数に応じて、そのタイミング制約値を動的に変更して配置配線前のタイミング検証を行うので、配置配線後のタイミング検証の時にタイミングエラーが発生する確率を低く抑えることができる。
また、本発明によれば、クロックツリー内で同じクロック制御セルを経由して生成されるクロック信号群の間のスキューが小さくなるので、配置配線後のタイミングエラーが発生しにくいという効果もある。例えば、シフトレジスタ回路にクロック制御セルが付加される場合は、ホールド時間制約エラーの発生する確率が抑えられることが期待される。
【図面の簡単な説明】
【図1】本発明の同期式回路の一実施形態の構成概念図である。
【図2】クロック制御セルの一実施形態の構成回路図である。
【図3】クロック制御セルの動作を表す一実施形態のタイミングチャートである。
【図4】クロック制御セルのタイミング制約を表す一実施形態のタイミングチャートである。
【図5】(a)、(b)および(c)は、それぞれ従来の同期式回路、本発明を適用した同期式回路、および本発明の同期式回路を最適化した状態を表す一実施形態の概念図である。
【符号の説明】
10,26,32,34 同期式回路
12 クロックツリー
14,30 フリップフロップ
16 組合せ論理回路
18 ルートバッファ
20 クロック制御セル
22 ラッチ
24 ANDゲート
28 マルチプレクサ
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a synchronous circuit including a plurality of storage elements operating in synchronization with a plurality of clock signals generated by a clock tree, and a method for designing the same.
[0002]
[Prior art]
In designing LSIs (Large Scale Integrated Circuits) which are becoming larger in scale, synchronous circuits are mainly used. Synchronous circuits have a well-designed design environment (currently the mainstream design method), easy timing verification (static timing verification), and scan testing as a test-friendly design. On the other hand, there are advantages such as the above, but there are disadvantages such as higher power consumption as compared with the asynchronous circuit and lower reliability against PVT fluctuation as compared with the asynchronous circuit.
[0003]
Here, the PVT fluctuation means fluctuations in the semiconductor manufacturing process (P), the power supply voltage (V), and the temperature (T).
[0004]
By the way, with the increase in the absolute value of the wiring delay and the increase in the relative value of the wiring delay with respect to the gate delay accompanying the miniaturization of the semiconductor manufacturing process, the clock signal is speeded up using a synchronous circuit in a large-scale semiconductor chip. Things are getting harder and harder. One answer to this problem is asynchronous circuits. However, there are many applications where the clock frequency is relatively low, and a synchronous circuit is often preferred for them.
[0005]
Asynchronous circuits have advantages and disadvantages that conflict with synchronous circuits. That is, an asynchronous circuit has advantages such as lower power consumption than a synchronous circuit and higher reliability against PVT fluctuations than a synchronous circuit, but has a poor design environment and difficult timing verification. (Static timing analysis cannot be used.) There are drawbacks such as that all must be performed by event-driven simulation and that scan tests cannot be used as testability design.
[0006]
In a synchronous circuit, the ratio of the charge / discharge current of the clock line to the power consumption is very high, and depending on the circuit, it may occupy more than half of the power consumption. In particular, at present, low power consumption is very demanding in mobile applications such as mobile phones.
[0007]
On the other hand, as described above, low power consumption can be realized by designing a circuit using an asynchronous circuit. However, there is a problem that the design environment of the asynchronous circuit is not prepared and a design for facilitating test such as a scan test cannot be used.
[0008]
[Problems to be solved by the invention]
Therefore, an object of the present invention is to solve the problems based on the conventional technique, to perform circuit design using a synchronous circuit design environment, and to realize low power consumption like an asynchronous circuit. To provide a synchronous circuit and a design method thereof.
[0009]
[Means for Solving the Problems]
To achieve the above object, the present invention is a synchronous circuit including a plurality of first storage elements that operate in synchronization with a plurality of first clock signals generated by a clock tree,
The clock tree includes a gate element that outputs the second clock signal at a predetermined timing specified by an enable signal that specifies a timing of outputting a second clock signal whose phase is earlier than the first clock signal. A synchronous circuit including a clock control cell is provided.
[0010]
Here, it is preferable that the clock control cell includes a second storage element holding the enable signal, and the gate element is controlled by the enable signal held in the second storage element.
[0011]
Further, it is preferable that the second storage element holds the enable signal by the second clock signal.
[0012]
The present invention is a method for designing a synchronous circuit according to any of the above,
In synthesizing a clock tree including the clock control cell,
The first storage, wherein an arrangement of the clock control cells in the clock tree is determined according to the number of the first storage elements driven by the clock control cells, and the first storage changes in accordance with the arrangement of the clock control cells. Changing a timing constraint value of the clock control cell in consideration of a phase shift between the first clock signal input to the element and the second clock signal input to the clock control cell; Provided is a method for designing a synchronous circuit, which performs a previous timing verification.
[0013]
Here, it is preferable that the timing constraint value of the clock control cell is changed in consideration of the delay time of the clock control cell due to the second storage element, and the timing verification before the placement and routing is performed.
[0014]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, a synchronous circuit and a design method thereof according to the present invention will be described in detail based on preferred embodiments shown in the accompanying drawings.
[0015]
FIG. 1 is a conceptual diagram of a configuration of an embodiment of a synchronous circuit of the present invention.
The synchronous circuit 10 shown in FIG. 1 includes a clock tree 12 that generates a plurality of clock signals (first clock signals) CLKO from a clock signal CLK of a base (root), and a plurality of clocks generated by the clock tree 12. A plurality of flip-flops (first storage elements) 14 operating in synchronization with the signal CLKO and a combinational logic circuit 16 are provided.
[0016]
The clock tree 12 includes a root buffer (CTS) 18 and a plurality of clock control cells 20. The original clock signal CLK is input to the input terminal of the root buffer 18, and the output signal CLKI of the root buffer 18 is input to one input terminal (the lower input terminal in the figure) of each clock control cell 20. . Further, the output signal CLKO of each clock control cell 20 is input to the clock input terminal of the corresponding flip-flop 14.
[0017]
The clock tree 12 is automatically generated using a clock tree synthesis tool. Although not shown, a tree structure is formed between the root buffer 18 and each clock control cell 20 and between each clock control cell 20 and each corresponding flip-flop 14 as necessary. One or more buffers or inverters are appropriately inserted. Thereby, the output signal CLKO of the clock control cell 20 is distributed to a plurality of clock signals.
[0018]
The arrangement of the clock control cell 20 in the clock tree 12 is automatically determined by the clock tree synthesis tool according to the fan-out number, that is, the number of flip-flops 14 that the clock control cell 20 finally drives. . That is, the clock control cell 20 is arranged relatively upstream in the clock tree when the number of fanouts is large, and is arranged relatively downstream when the number of fanouts is small.
[0019]
The flip-flop 14 operates in synchronization with the clock signal CLKO generated by the clock tree 12. In the case of the flip-flop 14 of the present embodiment, the signal input to the data input terminal D is held and output from the data output terminal Q in synchronization with the rise of the clock signal CLKO. The output signal from the combination circuit 16 is input to the data input terminal D of the flip-flop 14, and the output signal from the data output terminal Q is input to the combination logic circuit 16.
[0020]
In the illustrated example, the output signal CLKO from each clock control cell 20 is input to the clock input terminal of the corresponding flip-flop 14. Although not shown, each flip-flop 14 conceptually represents a plurality of flip-flops as one flip-flop 14, and a clock input terminal of each flip-flop is connected to a clock control terminal. A plurality of clock signals generated by distributing the output signal CLKO of the cell 20 are input.
[0021]
The combinational logic circuit 16 conceptually represents circuits other than the clock tree 12 and the flip-flop 14. An external signal is also input to the combinational logic circuit 16. A part of the output signal from the combinational logic circuit 16 is supplied not only to the data input terminal D of the flip-flop 14 but also to the other input terminal (upper input terminal in the drawing) of the clock control cell 20 constituting the clock tree 12. , And the remaining output signal is output to the outside.
[0022]
The synchronous circuit 10 shown in FIG. 1 can be designed using a conventionally known synchronous circuit design environment. Further, it is also possible to adopt a test facilitation method such as a scan test.
[0023]
Next, before describing the operation of the synchronous circuit 10, the clock control cell 20 will be described with reference to the configuration circuit diagram of FIG. 2 and the timing chart of FIG.
[0024]
The clock control cell 20 shown in FIG. 2 includes a latch (second storage element) 22 and an AND gate (gate element) 24. The enable signal CLKE is input to the data input terminal D of the latch 22, and the clock signal (second clock signal) CLKI is input to its inverted clock input terminal G. The output signal from the data output terminal Q of the latch 22 and the clock signal CLKI are input to the AND gate 24, and the AND gate 24 outputs the clock signal CLKO.
[0025]
As shown in the timing chart of FIG. 3, the clock signal CLKI is input directly from the root buffer 18 of the clock tree 12 shown in FIG. 1, or through a tree-shaped buffer or inverter as required. This is a clock signal of a predetermined frequency. The clock signal CLKI has a predetermined time advance in phase with respect to the clock signal input to the flip-flop 14 in accordance with the arrangement of the clock control cells 20 in the clock tree 12.
[0026]
The enable signal CLKE is a control signal that specifies the timing at which the clock signal CLKI is output as the clock signal CLKO from the clock control cell 20, and is input from the combinational logic circuit 16 shown in FIG. Since the enable signal CLKE changes in synchronization with the clock signal input to the flip-flop 14, the enable signal CLKE changes at a timing delayed by a predetermined time from the rising edge of the clock signal CLKI.
[0027]
In the clock control cell 20, the latch 22 is in the transparent mode while the clock signal CLKI is at the low level (L), and the enable signal CLKE input to the data input terminal D is output from the data output terminal Q. In addition, the holding mode is set while the clock signal CLKI is at the high level (H), and the state of the enable signal CLKE input to the data input terminal D is held at the rising timing of the clock signal CLKI.
[0028]
As shown in the timing chart of FIG. 4, in order to correctly operate the latch 22, there is a physical timing constraint on the data holding period of the enable signal CLKE with respect to the rising edge of the clock signal CLKI. That is, in order to operate the latch 22 correctly, enable signal CLKE is required predetermined set-up time t s and the hold time t h with respect to rising edge of the clock signal CLKI.
[0029]
In the clock control cell 20, as shown in the timing chart of FIG. 3, when a high level is input as the enable signal CLKE, the latch 22 is in the transparent mode during the low level of the clock signal CLKI, as described above. A high level is output from the data output terminal Q. Then, AND operation with the clock signal CLKI is performed by the AND gate 24, and a high level is output as the clock signal CLKO during the next high level period of the clock signal CLKI.
[0030]
Next, the operation of the synchronous circuit 10 shown in FIG. 1 will be described.
[0031]
In the synchronous circuit 10, the original clock signal CLK is distributed by the clock tree 12, and a plurality of clock signals CLKO are generated. The clock control cell 20 receives the enable signal CLKE from the combinational logic circuit 16. The clock signal CLKO supplied from the clock control cell 20 to the corresponding flip-flop 14 requires the flip-flop 14 to operate. Since it changes only at times, power consumption due to charging and discharging of the clock line can be significantly reduced.
[0032]
Each flip-flop 14 operates in synchronization with clock signal CLKO input from clock tree 12 as described above, and its output signal is input to combinational logic circuit 16. The combinational logic circuit 16 operates based on an external input and an output signal from each flip-flop 14. A part of the output signal is input to the clock control cell 20 as the enable signal CLKE, the other part is input to the data input terminal D of the flip-flop 14, and the rest is output to the outside.
[0033]
Next, a method of designing a synchronous circuit according to the present invention will be described.
[0034]
As described above, the clock tree 12 is synthesized by the clock tree synthesis tool. At this time, the clock control cell 20 is given a transparency attribute by setting the output signal of the latch 22 to a high level, for example, and is treated as one of the buffers constituting the clock tree 12. Thus, the clock tree 12 can be synthesized using a conventionally known clock tree synthesis tool.
[0035]
When the clock tree 12 is synthesized by the clock tree synthesis tool, the arrangement of the clock control cells 20 in the clock tree 12 is automatically determined according to the number of fan-outs. In accordance with the arrangement of clock control cell 20, clock signal CLKI input to clock control cell 20 has a phase leading clock signal CLKO input to flip-flop 14 by a predetermined time in accordance with the number of fan-outs. In.
[0036]
For example, when the number of fan-outs of the clock control cells 20 is small, the clock control cells 20 are arranged relatively downstream in the clock tree 12, and when the number is large, they are arranged relatively upstream. Therefore, as the number of fan-outs of the clock control cell 20 increases, the clock control cell 20 is gradually arranged on the upstream side in the clock tree 12, so that the clock signal CLKI input to the clock control cell 20 advances. growing.
[0037]
Normally, in synchronous circuit design, timing verification before placement and routing, for example, timing verification at the time of simulation or logic synthesis, assumes that all nodes on a clock line have the same phase, such as flip-flops and latches. The verification of the timing constraint of each storage element is performed.
[0038]
However, when the clock tree 12 is synthesized using the clock control cell 20, the phase of the clock signal CLKI input to the clock control cell 20 is predetermined with respect to the clock signal CLKO input to the flip-flop 14 from the clock tree 12. Therefore, if the timing verification is performed on the assumption that all the clock signals have the same phase, there is a high possibility that a problem will occur in the timing verification after the actual placement and wiring.
[0039]
The reason is that the arrangement of the clock control cells 20 in the clock tree 12 moves upstream and downstream in accordance with the fan-out number of the clock control cells 20, and the phase of the clock signal CLKI input to the clock control cells 20 advances. This is because the phase shift width between the clock signal CLKO input to the flip-flop 14 from the clock tree 12 and the clock signal CLKI input to the clock control cell 20 changes.
[0040]
On the other hand, in the synchronous circuit design method of the present invention, the number of fan-outs of each clock control cell 20 is detected by performing a netlist analysis, and the number changes depending on the number of fan-outs, that is, the arrangement of the clock control cells 20. Considering the phase shift between the clock signal input to the flip-flop 14 and the clock signal CLKI input to the clock control cell 20, the timing constraint value of the clock control cell 20 is dynamically changed, Perform previous timing verification.
[0041]
In other words, assuming that the clock signal CLKI input to the clock control cell 20 has the same phase as the clock signal input to the flip-flop 14, even if the timing verification before the placement and routing is performed, An offset is given to the timing constraint value of the clock control cell 20 so that the timing verification before the placement and routing is performed so that the probability that a failure occurs in the verification is reduced.
[0042]
For example, when the setup time and the hold time are 2 ns and 1 ns, respectively, as the physical timing constraint values of the clock control cell 20, the clock input to the clock control cell 20 depends on the number of fan-outs of the clock control cell 20. Assuming that the advance time of the signal CLKI is 1 ns, the setup time and the hold time of the clock control cell 20 are changed to 3 ns and 0 ns, respectively, in the timing verification before placement and routing.
[0043]
As described above, by dynamically changing the timing constraint value according to the number of fan-outs of the clock control cell 20 and performing timing verification before placement and routing, it is possible to reduce the probability of occurrence of a timing error after placement and routing. Can be.
[0044]
In the clock control cell 20, the output delay by the latch 22 is generated, in consideration of this delay time, is better to unnecessary pulses to adjust the set-up time t s of the latch 22 so as not to generate from the AND gate 24 preferable. In the synchronous circuit design method of the present invention, only one clock control cell 20 is provided on the same clock line because the timing constraint value is dynamically changed according to the number of fan-outs of each clock control cell 20. It is preferable to do so.
[0045]
Next, an example in which the present invention is applied to a conventionally known synchronous circuit will be described.
[0046]
FIG. 5A is a configuration circuit diagram of an example of a conventional synchronous circuit.
The synchronous circuit 26 includes a multiplexer 28 and a flip-flop 30. The output signal OUT from the data output terminal Q of the flip-flop 30 is input to the input terminal 0 of the multiplexer 28, and the input signal IN is input to the input terminal 1. The clock signal CLK is input to the clock input terminal of the flip-flop 30, and the output signal from the multiplexer 28 is input to the data input terminal D.
[0047]
In the synchronous circuit 26, when the enable signal ENBL is at a high level, the input signal IN is held in the flip-flop 30 via the multiplexer 28 and output as the output signal OUT in synchronization with the rise of the clock signal CLK. You. On the other hand, when the enable signal ENBL is at the low level, the output signal OUT of the flip-flop 30 is held again by the flip-flop 30 via the multiplexer 28, so that the output signal OUT of the flip-flop 30 does not change.
[0048]
The synchronous circuit 26 prevents the output signal OUT of the flip-flop 30 from being unnecessarily changed according to the state of the enable signal ENBL. A useless clock is input, and useless power consumption occurs due to charging and discharging of the clock line.
[0049]
FIG. 5B shows a synchronous circuit of the present invention configured by applying the present invention to the conventional synchronous circuit shown in FIG. The synchronous circuit 32 shown in FIG. 5B is different from the synchronous circuit 26 shown in FIG. 5A in that the output signal of the clock control cell 20 is input to the clock input terminal of the flip-flop 30 instead of the clock signal CLK. It was done. Further, the clock signal CLK and the enable signal ENBL are input to the clock control cell 20.
[0050]
In the synchronous circuit 32, the output signal of the clock control cell 20 changes only when the flip-flop 30 needs to operate according to the state of the enable signal ENBL. Power consumption due to discharging can be reduced. In particular, the greater the number of flip-flops 30 to which the output signal CLKO of the clock control cell 20 is input, and the smaller the rate at which the flip-flop 30 operates, the more the charge and discharge of the output signal CLKO of the clock control cell 20 The effect of reducing power consumption increases.
[0051]
FIG. 5 (c) shows a further optimization of the synchronous circuit of the present invention shown in FIG. 5 (b). In the synchronous circuit 34 shown in FIG. 5C, the multiplexer 28 is removed from the synchronous circuit 32 shown in FIG. 5B, and the input signal IN is directly input to the data input terminal D of the flip-flop 30. . In the synchronous circuit 32 shown in FIG. 5B, the multiplexer 28 is unnecessary because the output signal of the clock control cell 20 changes only when the flip-flop 30 needs to operate.
[0052]
As described above, in the synchronous circuit to which the present invention is applied, not only the charge / discharge current of the clock line can be reduced and the power consumption of the synchronous circuit can be reduced, but also FIGS. As can be seen from FIG. 2), the output signal of the flip-flop is prevented from being unnecessarily changed by using a circuit such as a multiplexer, but the clock signal is prevented from being changed by a circuit such as a multiplexer. The effect of reducing the number of transistors is that the number of transistors and power consumption can be reduced.
[0053]
Note that the clock control cell 20 is not limited to the configuration in FIG. 2, but may use another configuration that realizes a predetermined function. For example, a flip-flop instead of the latch 22 may be used. In the case of a flip-flop synchronized with the rising edge of the clock, the change timing of the output signal from the data output terminal is shifted one clock backward. In the case of the flip-flop synchronized with the clock falling, the change timing of the output signal is not delayed, but the delay time constraint imposed on the data input signal becomes strict about half a clock cycle. When the flip-flop 14 is synchronized with the falling edge of the clock or when the polarity of the enable signal ENBL is different, the polarities of the input and output signals of the latch 22 and the AND gate 24 in the clock control cell 20 are appropriately adjusted accordingly. It needs to be changed.
[0054]
The present invention is basically as described above.
As described above, the synchronous circuit and the design method thereof according to the present invention have been described in detail. However, the present invention is not limited to the above embodiment, and various improvements and modifications may be made without departing from the gist of the present invention. Of course.
[0055]
【The invention's effect】
As described above in detail, according to the synchronous circuit of the present invention, the clock signal supplied from the clock control cell to each corresponding first storage element changes only when the first storage element needs to operate. Therefore, power consumption due to charging and discharging of the clock line can be significantly reduced. In addition, the synchronous circuit of the present invention can be designed in a short time by using a synchronous circuit design environment, and can also facilitate a test by using a test method such as a scan test. is there.
Further, according to the synchronous circuit design method of the present invention, the timing constraint value is dynamically changed in accordance with the number of fan-outs of the clock control cell to perform timing verification before placement and routing. The probability that a timing error will occur at the time of timing verification can be reduced.
Further, according to the present invention, the skew between clock signal groups generated via the same clock control cell in the clock tree is reduced, so that there is also an effect that a timing error after placement and routing hardly occurs. For example, when a clock control cell is added to the shift register circuit, it is expected that the probability of occurrence of a hold time constraint error is reduced.
[Brief description of the drawings]
FIG. 1 is a conceptual diagram illustrating a configuration of a synchronous circuit according to an embodiment of the present invention.
FIG. 2 is a configuration circuit diagram of an embodiment of a clock control cell.
FIG. 3 is a timing chart of an embodiment showing an operation of a clock control cell.
FIG. 4 is a timing chart of an embodiment showing timing constraints of a clock control cell.
FIGS. 5 (a), (b) and (c) are embodiments showing a conventional synchronous circuit, a synchronous circuit to which the present invention is applied, and an optimized state of the synchronous circuit of the present invention, respectively. FIG.
[Explanation of symbols]
10, 26, 32, 34 Synchronous circuit 12 Clock tree 14, 30 Flip-flop 16 Combinational logic circuit 18 Root buffer 20 Clock control cell 22 Latch 24 AND gate 28 Multiplexer

Claims (5)

クロックツリーによって生成される複数の第1クロック信号に同期して動作する複数の第1記憶素子を備える同期式回路であって、
前記クロックツリーは、前記第1クロック信号よりも位相の進んでいる第2クロック信号を出力するタイミングを指定するイネーブル信号により指定される所定のタイミングで前記第2クロック信号を出力するゲート素子を備えるクロック制御セルを含むことを特徴とする同期式回路。
A synchronous circuit including a plurality of first storage elements operating in synchronization with a plurality of first clock signals generated by a clock tree,
The clock tree includes a gate element that outputs the second clock signal at a predetermined timing specified by an enable signal that specifies a timing of outputting a second clock signal whose phase is earlier than the first clock signal. A synchronous circuit comprising a clock control cell.
前記クロック制御セルは、前記イネーブル信号を保持する第2記憶素子を備え、前記ゲート素子は前記第2記憶素子に保持されたイネーブル信号により制御されることを特徴とする請求項1に記載の同期式回路。The synchronization according to claim 1, wherein the clock control cell includes a second storage element holding the enable signal, and the gate element is controlled by the enable signal held in the second storage element. Expression circuit. 前記第2記憶素子は、前記第2クロック信号により前記イネーブル信号を保持することを特徴とする請求項2に記載の同期式回路。The synchronous circuit according to claim 2, wherein the second storage element holds the enable signal in accordance with the second clock signal. 請求項1〜3のいずれかに記載の同期式回路の設計方法であって、
前記クロック制御セルを含むクロックツリーを合成するに際し、
前記クロック制御セルが駆動する前記第1記憶素子の個数に応じて、前記クロックツリーの中における前記クロック制御セルの配置を決定し、前記クロック制御セルの配置に応じて変化する、前記第1記憶素子に入力される前記第1クロック信号と前記クロック制御セルに入力される前記第2クロック信号との間の位相のずれを考慮して、前記クロック制御セルのタイミング制約値を変更し、配置配線前のタイミング検証を行うことを特徴とする同期式回路の設計方法。
A method for designing a synchronous circuit according to claim 1,
In synthesizing a clock tree including the clock control cell,
The first storage, wherein an arrangement of the clock control cells in the clock tree is determined according to the number of the first storage elements driven by the clock control cells, and the first storage changes in accordance with the arrangement of the clock control cells. Changing a timing constraint value of the clock control cell in consideration of a phase shift between the first clock signal input to the element and the second clock signal input to the clock control cell; A method for designing a synchronous circuit, comprising performing timing verification before.
さらに、前記クロック制御セルの第2記憶素子による遅延時間を考慮して、前記クロック制御セルのタイミング制約値を変更し、前記配置配線前のタイミング検証を行う請求項4に記載の同期式回路の設計方法。The synchronous circuit according to claim 4, further comprising: changing a timing constraint value of the clock control cell in consideration of a delay time of the clock control cell by a second storage element, and performing timing verification before the placement and routing. Design method.
JP2002291285A 2002-10-03 2002-10-03 Synchronous circuit and its design method Pending JP2004127012A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002291285A JP2004127012A (en) 2002-10-03 2002-10-03 Synchronous circuit and its design method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002291285A JP2004127012A (en) 2002-10-03 2002-10-03 Synchronous circuit and its design method

Publications (1)

Publication Number Publication Date
JP2004127012A true JP2004127012A (en) 2004-04-22

Family

ID=32282918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002291285A Pending JP2004127012A (en) 2002-10-03 2002-10-03 Synchronous circuit and its design method

Country Status (1)

Country Link
JP (1) JP2004127012A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008067323A (en) * 2006-09-11 2008-03-21 Canon Inc Rush current controller and rush current control method
JP2009010804A (en) * 2007-06-29 2009-01-15 Renesas Technology Corp Arrangement and wiring method of semiconductor integrated circuit and program for supporting arrangement and wiring of semiconductor integrated circuit
JP2009296548A (en) * 2008-06-09 2009-12-17 Toshiba Corp Semiconductor integrated circuit device
JP2016208231A (en) * 2015-04-21 2016-12-08 日本電気株式会社 Logic circuit and method for controlling setting circuit

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008067323A (en) * 2006-09-11 2008-03-21 Canon Inc Rush current controller and rush current control method
JP2009010804A (en) * 2007-06-29 2009-01-15 Renesas Technology Corp Arrangement and wiring method of semiconductor integrated circuit and program for supporting arrangement and wiring of semiconductor integrated circuit
JP2009296548A (en) * 2008-06-09 2009-12-17 Toshiba Corp Semiconductor integrated circuit device
JP2016208231A (en) * 2015-04-21 2016-12-08 日本電気株式会社 Logic circuit and method for controlling setting circuit

Similar Documents

Publication Publication Date Title
US8484523B2 (en) Sequential digital circuitry with test scan
US8015530B1 (en) Method of enabling the generation of reset signals in an integrated circuit
US9685957B2 (en) System reset controller replacing individual asynchronous resets
JP2008122159A (en) Semiconductor integrated circuit
US9625938B2 (en) Integrated differential clock gater
US6356132B1 (en) Programmable delay cell
CN109905116B (en) Programmable pipeline interface circuit
US10354706B1 (en) Delaying start of user design execution
US8058900B1 (en) Method and apparatus for clocking
JP2579237B2 (en) State element circuit having a flow-through latch circuit, VLSI circuit having the state element circuit, and method of operating a latch as a functional alternative to a master-slave flip-flop
JP2008278482A (en) Multi-speed ring oscillator
EP1116087B1 (en) Synchronous polyphase clock distribution system
US5742190A (en) Method and apparatus for clocking latches in a system having both pulse latches and two-phase latches
US6611158B2 (en) Method and system using a common reset and a slower reset clock
US6711089B2 (en) Method and apparatus for performing signal synchronization
US6304125B1 (en) Method for generating and distribution of polyphase clock signals
US7003683B2 (en) Glitchless clock selection circuit
US20110181331A1 (en) Integrated circuit with leakage reduction in static nets
JP2004127012A (en) Synchronous circuit and its design method
US20190087516A1 (en) Concurrently optimized system-on-chip implementation with automatic synthesis and integration
US20040019830A1 (en) Test apparatus of semiconductor integrated circuit with hold error preventing function
JPH10133768A (en) Clock system and semiconductor device, and method for testing semiconductor device, and cad device
US9729153B1 (en) Multimode multiplexer-based circuit
US6185720B1 (en) Slaveless synchronous system design
TWI783555B (en) Semiconductor device and method for generating test pulse signals

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050526

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070816

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070821

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080108