JP4510052B2 - Semiconductor integrated circuit device and duty control method - Google Patents
Semiconductor integrated circuit device and duty control method Download PDFInfo
- Publication number
- JP4510052B2 JP4510052B2 JP2007136886A JP2007136886A JP4510052B2 JP 4510052 B2 JP4510052 B2 JP 4510052B2 JP 2007136886 A JP2007136886 A JP 2007136886A JP 2007136886 A JP2007136886 A JP 2007136886A JP 4510052 B2 JP4510052 B2 JP 4510052B2
- Authority
- JP
- Japan
- Prior art keywords
- clock
- duty
- phase difference
- critical path
- level
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Pulse Circuits (AREA)
- Manipulation Of Pulses (AREA)
Description
この発明は、半導体集積回路装置及びデューティ制御方法に関する。例えば、クロックが“H”レベルとなる期間にアクティブとなるクリティカルパスと、“L”となる期間にアクティブとなるクリティカルパスとを含むプロセッサコアにおける、クロックのデューティ制御方法に関する。 The present invention relates to a semiconductor integrated circuit device and a duty control method. For example, the present invention relates to a clock duty control method in a processor core including a critical path that is active during a period when the clock is at “H” level and a critical path that is active during a period when it is “L”.
近年の半導体集積回路(LSI)の動作の高速化には目覚ましいものがある。この動作の高速化のために、クロックの立ち上がりエッジと立ち下がりエッジの両エッジに同期して動作するプロセッサが、広く用いられている。 In recent years, there has been a remarkable increase in the operation speed of semiconductor integrated circuits (LSIs). In order to increase the speed of this operation, a processor that operates in synchronization with both the rising edge and falling edge of the clock is widely used.
上記のようなプロセッサを使用したLSIにおいては、クロックのデューティが、LSIの動作、特性、歩留まり等に大きく影響を与える。従って、デューティを適切に調整することが重要であり、そのために種々の提案がなされている(例えば特許文献1、2参照)。 In an LSI using a processor as described above, the duty of the clock greatly affects the operation, characteristics, yield, etc. of the LSI. Therefore, it is important to adjust the duty appropriately, and various proposals have been made for that purpose (for example, see Patent Documents 1 and 2).
しかしながら、上記従来の手法は、デューティを適切に調整するという点において十分では無かった。そのため、高周波数で動作するLSIの動作速度を更に向上させることが困難であった。
この発明は、動作速度を向上出来る半導体集積回路装置及びデューティ制御方法を提供する。 The present invention provides a semiconductor integrated circuit device and a duty control method capable of improving the operation speed.
この発明の一態様に係る半導体集積回路装置は、第1クロックに同期して動作し、該第1クロックが“H”レベルとなる期間でアクティブとなる第1クリティカルパスと、“L”レベルとなる期間でアクティブとなる第2クリティカルパスとを含むプロセッサコアと、外部から入力された第2クロックのデューティを制御して、前記第1クロックを生成する第1クロック生成部と、前記第1クロックと、前記第1クロックが前記第1クリティカルパスで生じる遅延時間だけ遅れて得られる第3クロックとの第1位相差と、前記第1クロックと、前記第1クロックが前記第2クリティカルパスで生じる遅延時間だけ遅れて得られる第4クロックとの第2位相差とを検出し、前記第1位相差と前記第2位相差との差分が最小となるように前記デューティを制御するよう、前記第1クロック生成部に命令する制御部とを具備する。 A semiconductor integrated circuit device according to an aspect of the present invention operates in synchronization with a first clock, and is active during a period in which the first clock is at an “H” level, and an “L” level. A processor core including a second critical path that is active in a certain period, a first clock generation unit that generates a first clock by controlling a duty of a second clock input from the outside, and the first clock And a first phase difference from a third clock obtained by delaying the first clock by a delay time occurring in the first critical path, the first clock, and the first clock occurring in the second critical path. A second phase difference from the fourth clock obtained by delaying by the delay time is detected, and the duty is set so that the difference between the first phase difference and the second phase difference is minimized. To control the tee, and a control unit for instructing the first clock generator.
この発明の一態様に係るデューティ制御方法は、プロセッサコアを動作させる第1クロックのデューティ制御方法であって、外部から入力された第2クロックに基づいて前記第1クロックを生成するステップと、前記第1クロックを、前記プロセッサコアにおいて前記第1クロックが“H”レベルとなる期間でアクティブとなる第1クリティカルパスで生じる遅延時間だけ遅らせた第3クロックを生成するステップと、前記第1クロックを、前記プロセッサコアにおいて前記第1クロックが“L”レベルとなる期間でアクティブとなる第2クリティカルパスで生じる遅延時間だけ遅らせた第4クロックを発生するステップと、前記第1クロックと前記第3クロックとの第1位相差を検出するステップと、前記第1クロックと前記第4クロックとの第2位相差を検出するステップと、前記第1位相差と前記第2位相差との差分が最小となるように、前記第1クロックのデューティを制御するステップとを具備する。 A duty control method according to an aspect of the present invention is a duty control method of a first clock for operating a processor core, the step of generating the first clock based on a second clock input from the outside, Generating a third clock obtained by delaying the first clock by a delay time generated in a first critical path that is active in a period in which the first clock is at an “H” level in the processor core; and Generating a fourth clock delayed by a delay time generated in a second critical path that is active in a period in which the first clock is at an “L” level in the processor core; and the first clock and the third clock Detecting a first phase difference between the first clock and the fourth clock Detecting a second phase difference, the difference between the second phase difference between the first phase difference so as to minimize, and a step of controlling the duty of the first clock.
本発明によれば、動作速度を向上出来る半導体集積回路装置及びデューティ制御方法を提供出来る。 According to the present invention, it is possible to provide a semiconductor integrated circuit device and a duty control method capable of improving the operation speed.
以下、この発明の実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。 Embodiments of the present invention will be described below with reference to the drawings. In the description, common parts are denoted by common reference symbols throughout the drawings.
[第1の実施形態]
この発明の第1の実施形態に係る半導体集積回路装置及びデューティ制御方法について、図1を用いて説明する。図1は、本実施形態に係るLSIのブロック図である。
[First Embodiment]
A semiconductor integrated circuit device and a duty control method according to a first embodiment of the present invention will be described with reference to FIG. FIG. 1 is a block diagram of an LSI according to this embodiment.
図示するようにLSI1は、プロセッサコア2、デューティ調整器3、及び制御部4を備えている。
As illustrated, the LSI 1 includes a
プロセッサコア2は、デューティ調整器3で発生される第1クロックCLK1に同期して動作する。プロセッサコア2は、フリップフロップ10や組み合わせ回路11を含む複数の論理回路を備えている。これらの論理回路には、第1クロックCLK1が“H”レベルである期間にアクティブとなるもの、すなわち第1クロックCLK1の立ち上がりタイミングに同期して動作するものと、第1クロックCLK1が“L”である期間にアクティブとなるもの、すなわち第1クロックCLK1の立ち下がりタイミングに同期して動作するものとが含まれる。そして、それぞれの動作を行う論理回路につき、クリティカルパスが存在する。クリティカルパスとは、信号の伝播に最も時間のかかるパス(経路)のことであり、クリティカルパスによってプロセッサコア2の動作速度が律速される。以下、第1クロックCLK1が“H”レベルとなる期間にアクティブとなるパスについてのクリティカルパスを第1クリティカルパス12と呼ぶ。また、第1クロックCLK1が“L”レベルとなる期間にアクティブとなるパスについてのクリティカルパスを第2クリティカルパス13と呼ぶ。
The
また、第1、第2クリティカルパス12、13は、それぞれ所定の遅延時間Δtd1、Δtd2を有する。すなわち、第1クロックCLK1は第1クリティカルパス12を通過することでΔtd1だけ遅延し、第2クリティカルパス13を通過することでΔtd2だけ遅延する。以下、第1、第2クリティカルパス12、13によって遅延された第1クロックCLK1を、それぞれ第3クロックCLK3及び第4クロックCLK4と呼ぶ。
The first and second
デューティ調整器3は、外部から与えられる第2クロックCLK2のデューティ(duty)を調整し、これを第1クロックCLK1としてプロセッサコア2へ供給する。デューティとは、クロックの1サイクルにおける“H”レベルの期間の割合のことである。デューティ調整器3は、制御部4から与えられる制御信号CNTに応じて、第2クロックCLK2のデューティを制御する。なお、本実施形態におけるデューティ調整器3は、第2クロックCLK2の立ち下がりタイミングを調整することでデューティを制御する。
The duty adjuster 3 adjusts the duty of the second clock CLK2 given from the outside, and supplies this to the
制御部4は、インバータ20、第1位相比較部21、第2位相比較部22、チャージポンプ回路23、及びローパスフィルタ24を備えている。インバータ20は、デューティ調整器2が発生する第1クロックCLK1を反転させる。以下、説明の簡単化のためにインバータ20の出力を第1クロック/CLK1と呼ぶ。
The
第1位相比較部21は、第1クロック/CLK1と、プロセッサコア2から出力される第3クロックCLK3との位相差を検出し、検出された位相差に応じて第1位相差信号UPを出力する。より具体的には、第1位相比較部21は、例えば第1クロック/CLK1の立ち上がりタイミングと、第3クロックCLK3の立ち上がりタイミングとの位相差を検出する。
The first
第2位相比較部22は、第1クロックCLK1と、プロセッサコア2から出力される第4クロックCLK4との位相差を検出し、検出された位相差に応じて第2位相差信号DNを出力する。より具体的には、第2位相比較部22は、例えば第1クロックCLK1の立ち上がりタイミングと、第4クロックCLK4の立ち上がりタイミングとの位相差を検出する。
The second
チャージポンプ回路23は、第1、第2位相比較部21、22から出力される第1、第2位相差信号UP、DNに応じた電圧を発生する。そしてこの電圧がローパスフィルタ24を介して、制御信号CNTとしてデューティ調整器2へ与えられる。換言すれば、チャージポンプ回路23及びローパスフィルタ24は、第1クロックCLK1と、第3クロックCLK3及び第4クロックCLK4との位相差を電圧に変換する。そして、この電圧によってデューティ調整器2におけるデューティの調整具合が制御される。
The
次に、図2を用いて第1クロックCLK1、/CLK1、第3クロックCLK3、第4クロックCLK4、第1位相差信号UP、及び第2位相差信号DNの詳細と、デューティ調整器2におけるデューティの調整方法について説明する。図2は、上記各種信号のタイミングチャートである。
Next, the details of the first clock CLK1, / CLK1, the third clock CLK3, the fourth clock CLK4, the first phase difference signal UP, and the second phase difference signal DN and the duty in the
図示するように、第1クロックCLK1は時刻t1で立ち上がり、時刻t3で立ち下がり、時刻t5で再び立ち上がるものとする。つまり1サイクルの期間は時刻t1〜t5の長さである。そして、第1クロックCLK1が“H”レベルとなる期間の長さΔt_Hが、デューティ調整器2によって調整される。
As shown in the drawing, the first clock CLK1 rises at time t1, falls at time t3, and rises again at time t5. That is, the period of one cycle is the length of time t1 to t5. Then, the length Δt_H during which the first clock CLK1 is at the “H” level is adjusted by the
第3クロックCLK3は、クロックCLK1の立ち上がりタイミング(時刻t1)からΔtd1だけ遅れて立ち上がる信号である。例えば第3クロックCLK3は、時刻t2で立ち上がる。 The third clock CLK3 is a signal that rises with a delay of Δtd1 from the rising timing (time t1) of the clock CLK1. For example, the third clock CLK3 rises at time t2.
第4クロックCLK4は、クロックCLK1の立ち下がりタイミング(時刻t3)からΔt2だけ遅れて立ち上がる信号である。例えば第4クロックCLK4は、時刻t4で立ち上がる。 The fourth clock CLK4 is a signal that rises with a delay of Δt2 from the falling timing (time t3) of the clock CLK1. For example, the fourth clock CLK4 rises at time t4.
第1位相差信号UPは、第3クロックCLK3の立ち上がりタイミング(時刻t2)から、第1クロックCLK1の立ち下がりタイミング、すなわち第1クロック/CLK1の立ち上がりタイミング(時刻t3)までの期間に“H”レベルとなる信号である。この期間を、以下Δt_UPと呼ぶ。 The first phase difference signal UP is “H” in a period from the rising timing (time t2) of the third clock CLK3 to the falling timing of the first clock CLK1, that is, the rising timing (time t3) of the first clock / CLK1. This is a level signal. This period is hereinafter referred to as Δt_UP.
第2位相差信号DNは、第4クロックCLK4の立ち上がりタイミング(時刻t4)から、第1クロックCLK1の立ち上がりタイミング(時刻t5)までの期間に“H”レベルとなる信号である。この期間を、以下Δt_DNと呼ぶ。 The second phase difference signal DN is a signal that becomes “H” level during a period from the rising timing (time t4) of the fourth clock CLK4 to the rising timing (time t5) of the first clock CLK1. This period is hereinafter referred to as Δt_DN.
デューティ調整器2は、Δt_UPとΔt_DNとの差が最小値、好ましくは等しくなるように、クロックCLK1のΔt_H、すなわちデューティを調整する。すなわち、Δt_UP<Δt_DNの場合には、Δt_Hを大きくする(デューティを大きくする)。逆にΔt_UP>Δt_DNの場合には、Δt_Hを小さくする(デューティを小さくする)。なお上記最小値とは、デューティ調整器2において設定可能な最小値である。
The
次に、上記構成のLSIにおけるデューティ調整方法の詳細について、図3を用いて説明する。図3はデューティ調整方法のフローチャートである。 Next, details of the duty adjustment method in the LSI having the above configuration will be described with reference to FIG. FIG. 3 is a flowchart of the duty adjustment method.
図示するように、まず外部から第2クロックCLK2が入力されると、それを元にしてデューティ調整器3が第1クロックCLK1を生成する(ステップS10)。最初に生成される第1クロックCLK1のデューティは第2クロックCLK2と同じでも良いし、制御部4の制御に基づいて、予め定められた所定のデューティに調整されたものであっても良い。
As shown in the drawing, when the second clock CLK2 is first input from the outside, the
デューティ調整器3から第1クロックCLK1がプロセッサコア2に与えられることにより、第1クリティカルパス12から第3クロックCLK3が出力され、第2クリティカルパス13から第4クロックCLK4が出力される(ステップS11)。これらはそれぞれ第1、第2位相比較部21、22に与えられる。
By supplying the first clock CLK1 from the
すると、第1位相比較部21は第1クロックCLK1(実際には/CLK1)と第3クロックCLK3との位相差を検出して第1位相差信号UPを出力し、第2位相比較部22は第1クロックCLK1と第4クロックCLK4との位相差を検出して第2位相差信号DNを出力する(ステップS12)。
Then, the first
Δt_UPがΔt_DNより小さければ(ステップS13、NO、ステップS14、YES)、チャージポンプ回路23及びローパスフィルタ24は、所定の幅Δtだけ“H”レベルとなる期間を長くさせる旨の制御信号CNTを発生し、デューティ調整器3へ出力する。この制御信号CNTに基づき、デューティ調整器3は第2クロックCLK2の“H”レベルとなる期間を長くする。すなわち、第1クロックCLK1のデューティが大きくされる(ステップS15)。
If Δt_UP is smaller than Δt_DN (step S13, NO, step S14, YES), the
逆にΔt_UPがΔt_DNより大きければ(ステップS13、NO、ステップS14、NO)、チャージポンプ回路23及びローパスフィルタ24は、所定の幅Δtだけ“H”レベルとなる期間を短くさせる旨の制御信号CNTを発生し、デューティ調整器3へ出力する。この制御信号CNTに基づき、デューティ調整器3は第2クロックCLK2の“H”レベルとなる期間を短くする。すなわち、第1クロックCLK1のデューティが小さくされる(ステップS16)。
On the other hand, if Δt_UP is larger than Δt_DN (step S13, NO, step S14, NO), the
そしてステップS10に戻り、Δt_UP=Δt_DNとなるまで(ステップS13、YES)、上記の処理を繰り返す。 Then, the process returns to step S10, and the above processing is repeated until Δt_UP = Δt_DN (step S13, YES).
なお、上記ステップS15、S16における所定の幅Δtの大きさは、常時一定であっても良いし、繰り返す度に小さくされても良いし、またはΔt_UPとΔt_DNとの大小関係が反転した際に小さくされる値であっても良い。 Note that the size of the predetermined width Δt in the above steps S15 and S16 may be constant at all times, may be reduced each time it is repeated, or small when the magnitude relationship between Δt_UP and Δt_DN is reversed. It may be a value.
上記調整方法の具体例について、図4を用いて説明する。図4は、デューティの調整時における第1クロックCLK1、第3クロックCLK3、第4クロックCLK4、第1位相差信号UP、及び第2位相差信号DNのタイミングチャートであり、3回の調整によりデューティを最適化した場合について示している。また図4では、Δt_UPとΔt_DNとの大小関係が反転した際に、Δtが小さくされる場合について示している。 A specific example of the adjustment method will be described with reference to FIG. FIG. 4 is a timing chart of the first clock CLK1, the third clock CLK3, the fourth clock CLK4, the first phase difference signal UP, and the second phase difference signal DN at the time of adjusting the duty. It shows the case where is optimized. FIG. 4 shows a case where Δt is reduced when the magnitude relationship between Δt_UP and Δt_DN is reversed.
図示するように、第2クロックCLK2に基づいて最初に生成された第1クロックCLK1においては、Δt_UP<Δt_DNである(ステップS14、YES)。すなわち、この状態では第1クロックCLK1の“H”レベルとなる期間が短すぎる。これが図中の「初期状態」である。 As shown in the drawing, Δt_UP <Δt_DN is satisfied in the first clock CLK1 generated first based on the second clock CLK2 (step S14, YES). That is, in this state, the period during which the first clock CLK1 is at the “H” level is too short. This is the “initial state” in the figure.
そこで、次にデューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間をΔt1だけ大きくする。これが「1回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t3から時刻t7に変化する。この補正の結果、初期状態とは逆にΔt_UP>Δt_DNとなる(ステップS14、NO)。すなわち、第1クロックCLK1の“L”となる期間が短すぎる。
Therefore, the
そこで次にデューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間をΔt2だけ短くする。これが「2回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t7から時刻t10に変化する。なお、初期状態から1回目の補正後の状態に移行する際に比して、Δt_UPとΔt_DNとの大小関係が反転したので、デューティ調整器3は、Δt2の値をΔt1より小さいものとする。この補正の結果、Δt_UP<Δt_DNとなる(ステップS14、YES)。すなわち、第1クロックCLK1の“H”となる期間が短すぎる。
Therefore, next, the
そこで次にデューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間をΔt3だけ長くする。これが「3回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t10から時刻t13に変化する。なおΔt3<Δt2である。この補正の結果、Δt_UP=Δt_DNとなる(ステップS13、YES)。よって、デューティの調整は終了し、以後、デューティ調整器3は、時刻t1から時刻t13の期間の長さだけ“H”レベルとなる第1クロックCLK1を生成する。
Therefore, next, the
以上のように、この発明の第1の実施形態に係るデューティ調整方法であると、下記(1)の効果が得られる。
(1)LSIの動作速度を向上出来る。
本実施形態に係る構成によれば、制御部4が第1クロックCLK1と第3クロックCLK3との位相差を監視し、更に第1クロックCLK1と第4クロックCLK4との位相差を監視している。そして制御部4は、両位相差が等しくなるようにデューティを調整するよう、デューティ調整器3に命令している。その結果、LSIの動作速度を格段に向上出来る。本効果について、以下詳細に説明する。
As described above, with the duty adjustment method according to the first embodiment of the present invention, the following effect (1) can be obtained.
(1) The operation speed of the LSI can be improved.
According to the configuration of the present embodiment, the
図2で説明したように、Δt_UPは、第3クロックCLK3が立ち上がってから第1クロックCLK1が立ち下がるまでの期間である。そして、第3クロックCLK3が立ち上がるタイミングは、第1クロックCLK1が立ち上がってから第1クリティカルパス12内の遅延時間経過の後である。つまり、第1クリティカルパス12が正常に動作するためには、第1クロックCLK1のΔt_Hが少なくともΔtd1と等しいかそれ以上でなければならない。言い換えれば、第1クロックCLK1と第3クロックCLK3の位相差Δt_UPは、当該第1クロックCLK1に対する第1クリティカルパス12の動作余裕を意味する。
As described in FIG. 2, Δt_UP is a period from when the third clock CLK3 rises to when the first clock CLK1 falls. The timing at which the third clock CLK3 rises is after the delay time in the first
そして当然ながら、プロセッサコア2において第1クロックCLK1が“H”レベルとなる期間にアクティブとなる論理回路は、少なくとも第1クリティカルパス12が正常に動作する第1クロックCLK1でなければ正確に動作しない。なぜなら、これらの論理回路において最も遅延の大きい経路こそが第1クリティカルパス12だからである。
Of course, a logic circuit that is active in the period when the first clock CLK1 is at “H” level in the
Δt_DNについても同様である。すなわち、第2クリティカルパス13が正常に動作するためには、第1クロックCLK1の1サイクルにおける“L”レベルの期間が少なくともΔtd2と等しいかそれ以上でなければならない。つまり、第1クロックCLK1と第4クロックCLK4の位相差Δt_DNも、当該第1クロックCLK1に対する第2クリティカルパス13の動作余裕を意味する。そして、プロセッサコア2において第1クロックCLK1が“L”レベルとなる期間にアクティブとなる論理回路は、少なくとも第2クリティカルパス13が正常に動作する第1クロックCLK1でなければ正確に動作しない。
The same applies to Δt_DN. That is, in order for the second
この点、本実施形態に係る構成であると、制御部4によってΔt_UPとΔt_DNは等しくされる(デューティ調整器3において可能な最小値とされる)。そのため、第1クロックCLK1の周波数を最大限に大きくすることが出来る。この様子を図5に示す。図5は、2つの場合(CASE1、CASE2)において、第1クロックCLK1の周波数を上昇させた際の様子を示すタイミングチャートである。CASE1は、Δt_UP<<Δt_DNの場合であり、CASE2は、本実施形態に係る方法によりΔt_UP=Δt_DNとした場合である。 In this regard, in the configuration according to the present embodiment, Δt_UP and Δt_DN are equalized by the control unit 4 (the minimum value is possible in the duty adjuster 3). Therefore, the frequency of the first clock CLK1 can be maximized. This is shown in FIG. FIG. 5 is a timing chart showing a situation when the frequency of the first clock CLK1 is increased in two cases (CASE1, CASE2). CASE1 is a case where Δt_UP << Δt_DN, and CASE2 is a case where Δt_UP = Δt_DN by the method according to the present embodiment.
図示するように、第1クロックCLK1の1サイクルの期間がΔtc1であったとする。CASE1、CASE2のいずれの場合であっても、第1クロックCLK1の“H”レベルとなる期間はΔtd1以上でなければならず、“L”レベルとなる期間はΔtd2以上でなければならない。 As shown in the figure, it is assumed that the period of one cycle of the first clock CLK1 is Δtc1. In both cases CASE1 and CASE2, the period during which the first clock CLK1 is at the “H” level must be equal to or greater than Δtd1, and the period during which the first clock CLK1 is at the “L” level must be equal to or greater than Δtd2.
すると、CASE1の場合には“L”レベル期間には動作余裕(Δt_DN)が十分にある一方で、“H”レベル期間には動作余裕(Δt_UP)が殆ど無い。その結果、第1クロックCLK1の周波数はΔt_UPに制限され、殆ど上げることが出来ない。 Then, in the case of CASE 1, while there is a sufficient operation margin (Δt_DN) in the “L” level period, there is almost no operation margin (Δt_UP) in the “H” level period. As a result, the frequency of the first clock CLK1 is limited to Δt_UP and can hardly be increased.
これに対してCASE2の場合、Δt_UP=Δt_DNである。従って、第1クロックCLK1の“H”レベルとなる期間をΔtd1とし、“L”レベルとなる期間をΔtd2とすることが可能となる。すなわち、第1クロックCLK1の周波数を最大限に大きく出来る(Δtc3<<Δtc2)。よって、LSIの動作速度を向上出来る。 On the other hand, in the case of CASE2, Δt_UP = Δt_DN. Accordingly, it is possible to set the period during which the first clock CLK1 is at the “H” level to Δtd1, and the period for which the “L” level is at Δtd2. That is, the frequency of the first clock CLK1 can be maximized (Δtc3 << Δtc2). Therefore, the operation speed of the LSI can be improved.
[第2の実施形態]
次に、この発明の第2の実施形態に係る半導体集積回路装置及びデューティ制御方法について説明する。本実施形態は、上記第1の実施形態において第1、第2クリティカルパス12、13のレプリカ回路を設けたものである。図6は、本実施形態に係るLSIのブロック図である。
[Second Embodiment]
Next explained is a semiconductor integrated circuit device and a duty control method according to the second embodiment of the invention. In this embodiment, replica circuits of the first and second
図示するように、本実施形態に係るLSI1は、上記第1の実施形態で説明した図1の構成において、レプリカ回路5を設けた構成を有している。そして、プロセッサコア2の代わりに、レプリカ回路5が第3クロックCLK3及び第4クロックCLK4を出力するものである。
As shown in the figure, the LSI 1 according to the present embodiment has a configuration in which a
レプリカ回路5は、プロセッサコア2における第1クリティカルパス12及び第2クリティカルパス13と同様の回路、すなわちこれらのレプリカを保持している。図中において、レプリカ回路5内の第1ディレイ回路30が第1クリティカルパス12のレプリカであり、第2ディレイ回路31が第2クリティカルパス13のレプリカである。第1、第2ディレイ回路30、31には、デューティ調整器3によって第1クロックCLK1が入力される。そして、第1、第2ディレイ回路30、31は、第3、第4クロックCLK3、CLK4をそれぞれ出力する。
その他の構成は第1の実施形態と同様であるので、説明は省略する。
The
Since other configurations are the same as those of the first embodiment, description thereof is omitted.
次に、本実施形態に係るLSIにおけるデューティ調整方法について図7を用いて説明する。図7は、デューティ調整方法のフローチャートである。 Next, a duty adjustment method in the LSI according to the present embodiment will be described with reference to FIG. FIG. 7 is a flowchart of the duty adjustment method.
図示するように、第1の実施形態で説明した図3と異なる点は、第3クロックCLK3及び第4クロックCLK4が、第1ディレイ回路30及び第2ディレイ回路31によって生成される点である(ステップS20)。その他は図3と同様である。
As shown in the drawing, the difference from FIG. 3 described in the first embodiment is that the third clock CLK3 and the fourth clock CLK4 are generated by the
以上のように、本実施形態に係るデューティ調整方法であると、第1の実施形態で説明した(1)の効果に加えて、下記(2)の効果を併せて得られる。
(2)LSIの動作信頼性を維持しつつ、(1)の効果が得られる。
本実施形態に係る構成であると、制御部4で使用するための第3、第4クロックCLK3、CLK4を、レプリカ回路5で生成している。つまり、プロセッサコア2は制御部4の動作とは無関係である。従って、何らかの理由により制御部4に故障等が発生し、それがレプリカ回路5に悪影響を及ぼすような事態が発生したとしても、その影響はプロセッサコア2には及ばない。そのため、プロセッサコア2の動作に支障をきたすことを防止し、LSIの動作信頼性の低下を防止出来る。
As described above, in the duty adjustment method according to this embodiment, the following effect (2) can be obtained in addition to the effect (1) described in the first embodiment.
(2) The effect (1) can be obtained while maintaining the operational reliability of the LSI.
In the configuration according to this embodiment, the
なお、上記実施形態では第1、第2ディレイ回路30、31が、第1、第2クリティカルパス12、13のレプリカそのものである場合について説明した。しかし、このような場合に限られるものでは無い。つまり、レプリカ回路5内に、第1、第2クリティカルパス12、13のレプリカとは別に第1、第2ディレイ回路30、31を設けても良い。そして第1、第2ディレイ回路30、31を、第1、第2クリティカルパス12、13を用いて第3、第4クロックCLK4を生成するための専用回路としても良い。
In the above embodiment, the case where the first and
[第3の実施形態]
次に、この発明の第3の実施形態に係る半導体集積回路装置及びデューティ制御方法について説明する。本実施形態は、上記第1の実施形態において、第1、第2クリティカルパス12、13のレプリカを設け、更にディジタル的にデューティの調整を行うものである。図8は、本実施形態に係るLSIのブロック図である。
[Third Embodiment]
Next explained is a semiconductor integrated circuit device and a duty control method according to the third embodiment of the invention. In this embodiment, replicas of the first and second
図示するように、本実施形態に係るLSI1は、プロセッサコア2、デューティ調整器3、制御部4、及びレプリカ回路5を備えている。プロセッサコア2の構成は、第1の実施形態で説明した通りである。但し、プロセッサコア2は第3クロックCLK3及び第4クロックCLK4を外部へ出力する必要は無い。デューティ調整器3の構成も、第1の実施形態で説明した通りであり、制御部4から与えられる制御信号CNTに従ってデューティを調整する。具体的なデューティ調整方法については後述する。
As illustrated, the LSI 1 according to this embodiment includes a
レプリカ回路5は、第2の実施形態の場合と同様に、第1クリティカルパス12のレプリカと第2クリティカルパス13のレプリカを含んでいる。更にレプリカ回路5は第3ディレイ回路32及び第4ディレイ回路33を備えている。第3ディレイ回路32は、第1クロックCLK1に基づいて第5クロックCLK5を生成する。第5クロックCLK5は、第1クリティカルパス12で生じる遅延時間Δtd1より数%大きい時間だけ、第1クロックCLK1を遅らせた信号である。第4ディレイ回路33は、第1クロックCLK1に基づいて第6クロックCLK6を生成する。第6クロックCLK6は、第2クリティカルパス13で生じる遅延時間Δtd2より数%大きい時間だけ、第1クロックCLK1を遅らせた信号である。
As in the case of the second embodiment, the
制御部4は、インバータ20、第1、第2位相比較部21、22、及びカウンタ回路25を備えている。インバータ20は、第1の実施形態と同様に第1クロックCLK1を反転させる。
第1位相比較部21は、第1クロック/CLK1と、レプリカ回路5から出力される第5クロックCLK5との位相差を検出し、検出された位相差に応じて第1位相差信号UPを出力する。より具体的には、第1位相比較部21は、例えば第1クロック/CLK1の立ち上がりタイミングと、第5クロックCLK3の立ち上がりタイミングとの位相差を検出する。
第2位相比較部22は、第1クロックCLK1と、レプリカ回路5から出力される第6クロックCLK6との位相差を検出し、検出された位相差に応じて第2位相差信号DNを出力する。より具体的には、第2位相比較部22は、例えば第1クロックCLK1の立ち上がりタイミングと、第6クロックCLK6の立ち上がりタイミングとの位相差を検出する。
カウンタ回路25は、デューティ調整中の各ステップにおいて、第1位相比較部21から出力された第1位相差信号UPと、第2位相比較部22から出力された第2位相差信号DNをカウントする。そして、第1位相差信号UPと第2位相差信号DNとのいずれがカウントされたかに応じて、デューティ調整器3を制御する制御信号CNTを出力する。
The
The
The second
The
次に、図9及び図10を用いて第1クロックCLK1、/CLK1、第5クロックCLK5、第6クロックCLK6、第1位相差信号UP、及び第2位相差信号DNの詳細と、デューティ調整器2におけるデューティの調整方法について簡単に説明する。図9及び図10は、上記各種信号のタイミングチャートである。 Next, the details of the first clock CLK1, / CLK1, the fifth clock CLK5, the sixth clock CLK6, the first phase difference signal UP, and the second phase difference signal DN and the duty adjuster will be described with reference to FIGS. The method for adjusting the duty in 2 will be briefly described. 9 and 10 are timing charts of the various signals.
まず図9の場合について説明する。図示するように、第1クロックCLK1は時刻t1で立ち上がり、時刻t2で立ち下がり、時刻t5で再び立ち上がるものとする。つまり1サイクルの期間は時刻t1〜t5の長さである。そして、デューティ調整器2によって第1クロックCLK1が“H”レベルとなる期間の長さΔt_Hが調整される。
First, the case of FIG. 9 will be described. As shown, the first clock CLK1 rises at time t1, falls at time t2, and rises again at time t5. That is, the period of one cycle is the length of time t1 to t5. The length Δt_H of the period during which the first clock CLK1 is at the “H” level is adjusted by the
第5クロックCLK5は、第1クロックCLK1の立ち上がりタイミング(時刻t1)から(Δtd1+C1・Δtd1)だけ遅れて立ち上がる信号である。例えばC1=0.01〜0.09程度であり、第5クロックCLK5は、時刻t3で立ち上がるものとする。つまり、例えばC1=0.01であったとすれば、第5クロックCLK5は、第1クロックCLK1の立ち上がりから、Δtd1よりもその1%だけ大きい遅延時間だけ遅れて立ち上がる信号である。 The fifth clock CLK5 is a signal that rises with a delay of (Δtd1 + C1 · Δtd1) from the rising timing (time t1) of the first clock CLK1. For example, C1 = about 0.01 to 0.09, and the fifth clock CLK5 rises at time t3. That is, for example, if C1 = 0.01, the fifth clock CLK5 is a signal that rises with a delay time that is 1% greater than Δtd1 from the rise of the first clock CLK1.
第6クロックCLK6は、第1クロックCLK1の立ち下がりタイミング(時刻t2)から(Δtd2+C2・Δtd2)だけ遅れて立ち上がる信号である。例えばC2=0.01〜0.09程度であり、第6クロックCLK6は、時刻t4で立ち下がるものとする。つまり、例えばC2=0.01であったとすれば、第6クロックCLK6は、第1クロックCLK1の立ち下がりから、Δtd2よりもその1%だけ大きい遅延時間だけ遅れて立ち上がる信号である。 The sixth clock CLK6 is a signal that rises with a delay of (Δtd2 + C2 · Δtd2) from the falling timing (time t2) of the first clock CLK1. For example, C2 = about 0.01 to 0.09, and the sixth clock CLK6 falls at time t4. That is, for example, if C2 = 0.01, the sixth clock CLK6 is a signal that rises with a delay time larger by 1% than Δtd2 from the fall of the first clock CLK1.
第1位相差信号UPは、第1クロックの立ち下がりタイミング(すなわち第1クロック/CLK1の立ち上がりタイミング)が第5クロックCLK5の立ち上がりタイミングよりも早い場合に、第1クロックの立ち下がりタイミングで“H”レベルとなる信号である。従って図9の場合、第1位相差信号UPは時刻t2で立ち上がる。そして第1位相差信号UPは第1クロックの立ち上がりタイミング(すなわち第1クロック/CLK1の立ち下がりタイミング)で、“L”レベルに立ち下がる。第1位相差信号UPが“H”レベルとなる期間を、以下Δt_UPと呼ぶ。 The first phase difference signal UP is “H” at the falling timing of the first clock when the falling timing of the first clock (that is, the rising timing of the first clock / CLK1) is earlier than the rising timing of the fifth clock CLK5. It is a signal that becomes “level”. Accordingly, in the case of FIG. 9, the first phase difference signal UP rises at time t2. The first phase difference signal UP falls to the “L” level at the rising timing of the first clock (that is, the falling timing of the first clock / CLK1). The period during which the first phase difference signal UP is at the “H” level is hereinafter referred to as Δt_UP.
第2位相差信号DNは、第1クロックの立ち上がりタイミングが第6クロックCLK6の立ち上がりタイミングよりも早い場合に、第1クロックの立ち上がりタイミングで“H”レベルとなる信号である。従って図9の場合、第2位相差信号DNは常時“L”レベルである。 The second phase difference signal DN is a signal that becomes “H” level at the rising timing of the first clock when the rising timing of the first clock is earlier than the rising timing of the sixth clock CLK6. Therefore, in the case of FIG. 9, the second phase difference signal DN is always at the “L” level.
次に図10の場合について説明する。図10は図9の場合と逆に、第2位相差信号DNが“H”レベルとなる場合について示している。図示するように、第1クロックCLK1は時刻t1で立ち上がり、時刻t3で立ち下がり、時刻t4で再び立ち上がる。 Next, the case of FIG. 10 will be described. FIG. 10 shows a case where the second phase difference signal DN is at the “H” level, contrary to the case of FIG. As shown in the figure, the first clock CLK1 rises at time t1, falls at time t3, and rises again at time t4.
第5クロックCLK5は、第1クロックCLK1が立ち下がるよりも先に立ち上がる(時刻t2)。また第6クロックCLK6は、第1クロックCLK1の立ち上がりタイミングよりも遅れて立ち上がる(時刻t5)。その結果、第1位相差信号UPは常時“L”レベルとなる。他方、第2位相差信号DNは、第1クロックCLK1の立ち上がりタイミング(時刻t4)で“H”レベルとなる。そして第2位相差信号DNは、第1クロックの立ち下がりタイミングで“L”レベルに立ち下がる。第2位相差信号DNが“H”レベルとなる期間を、以下Δt_DNと呼ぶ。 The fifth clock CLK5 rises before the first clock CLK1 falls (time t2). The sixth clock CLK6 rises later than the rising timing of the first clock CLK1 (time t5). As a result, the first phase difference signal UP is always at “L” level. On the other hand, the second phase difference signal DN becomes “H” level at the rising timing (time t4) of the first clock CLK1. The second phase difference signal DN falls to “L” level at the fall timing of the first clock. Hereinafter, the period during which the second phase difference signal DN is at the “H” level is referred to as Δt_DN.
デューティ調整器2は、UP=“H”の場合にクロックCLK1のΔt_Hを長くし(デューティを大きくする)、DN=“H”の場合にΔt_Hを小さくする(デューティを小さくする)。
The
次に、本実施形態に係るLSIの、デューティ調整方法の詳細について図11を用いて説明する。図11はデューティ調整方法のフローチャートである。 Next, details of the duty adjustment method of the LSI according to the present embodiment will be described with reference to FIG. FIG. 11 is a flowchart of the duty adjustment method.
図示するように、まず第1クロックCLK1を生成する(ステップS10)。デューティ調整器3から第1クロックCLK1がプロセッサコア2に与えられることにより、第3ディレイ回路32から第5クロックCLK5が出力され、第4ディレイ回路33から第6クロックCLK6が出力される(ステップS30)。これらはそれぞれ第1、第2位相比較部21、22に与えられる。
As shown in the figure, first, a first clock CLK1 is generated (step S10). By supplying the first clock CLK1 from the
すると、第1位相比較部21は第1クロックCLK1(実際には/CLK1)と第3クロックCLK3との位相差を検出する。そして、第1クロックCLK1の立ち下がりタイミングが第5クロックCLK5の立ち上がりタイミングよりも早ければ、第1位相差信号UPを“H”レベルとする。また第2位相比較部22は、第1クロックCLK1と第6クロックCLK6との位相差を検出する。そして、第1クロックCLK1の立ち上がりタイミングが第6クロックCLK6の立ち上がりタイミングよりも早ければ、第2位相差信号DNを“H”レベルとする(ステップS31)。
Then, the first
第1位相差信号UPが“H”レベルであれば、すなわちDN=“L”であれば(ステップS32、NO、ステップS33、YES)、その旨がカウンタ回路25でカウントされる。つまり、第1位相差信号UPについてのカウント数がカウントアップされる。そしてカウンタ回路25は、所定の幅Δtだけ“H”レベルとなる期間を長くさせる旨の制御信号CNTを発生し、デューティ調整器3へ出力する。この制御信号CNTに基づき、デューティ調整器3は第2クロックCLK2の“H”レベルとなる期間を長くする。すなわち、第1クロックCLK1のデューティが大きくされる(ステップS15)。
If the first phase difference signal UP is “H” level, that is, if DN = “L” (step S32, NO, step S33, YES), the fact is counted by the
逆に第1位相差信号DNが“H”レベルであれば、すなわちUP=“L”であれば(ステップS32、NO、ステップS33、NO)、その旨がカウンタ回路25でカウントされる。つまり、第2位相差信号DNについてのカウント数がカウントアップされる。そしてカウンタ回路25は、所定の幅Δtだけ“H”レベルとなる期間を短くさせる旨の制御信号CNTを発生し、デューティ調整器3へ出力する。この制御信号CNTに基づき、デューティ調整器3は第2クロックCLK2の“H”レベルとなる期間を短くする。すなわち、第1クロックCLK1のデューティが小さくされる(ステップS16)。
On the contrary, if the first phase difference signal DN is “H” level, that is, if UP = “L” (step S32, NO, step S33, NO), the fact is counted by the
そしてステップS10に戻り、第1、第2位相差信号UP、DNが共に“L”レベルとなるまで(ステップS32、YES)、上記の処理を繰り返す。 Then, the process returns to step S10, and the above processing is repeated until both the first and second phase difference signals UP and DN become “L” level (YES in step S32).
なお、上記ステップS15、S16における所定の幅Δtの大きさは、常時一定とされる。勿論、デューティの調整を繰り返す度にΔtを変化させても構わない。 The predetermined width Δt in steps S15 and S16 is always constant. Of course, Δt may be changed each time duty adjustment is repeated.
上記調整方法の具体例を、Δt_Hを大きくすることでデューティを最適化する場合(CASE1)と、Δt_Hを小さくすることで最適化する場合(CASE2)とに分けて、以下説明する。 Specific examples of the adjustment method will be described below, divided into a case where the duty is optimized by increasing Δt_H (CASE 1) and a case where the duty is optimized by reducing Δt_H (CASE 2).
(CASE1)
まずCASE1について、図12を用いて説明する。図12は、デューティの調整時における第1クロックCLK1、第5クロックCLK5、第6クロックCLK6、第1位相差信号UP、及び第2位相差信号DNのタイミングチャートであり、3回の調整によりデューティを最適化した場合について示している。図12では、ステップS15、S16におけるΔtを、Δt4一定とした場合について示している。また、(Δtd1+C1・Δtd1)をΔtd3と表記し、(Δtd2+C2・Δtd2)をΔtd4と表記する。
(CASE1)
First, CASE 1 will be described with reference to FIG. FIG. 12 is a timing chart of the first clock CLK1, the fifth clock CLK5, the sixth clock CLK6, the first phase difference signal UP, and the second phase difference signal DN at the time of adjusting the duty. It shows the case where is optimized. FIG. 12 shows a case where Δt in steps S15 and S16 is constant Δt4. Also, (Δtd1 + C1 · Δtd1) is expressed as Δtd3, and (Δtd2 + C2 · Δtd2) is expressed as Δtd4.
図示するように、第2クロックCLK2に基づいて最初に生成された第1クロックCLK1は、第5クロックCLK5の立ち上がりタイミング(時刻t3)よりも先に立ち下がる(時刻t2)。従って、第1位相差信号UP=“H”、第2位相差信号DN=“L”である(ステップS33、YES)。すなわち、この状態では第1クロックCLK1の“H”レベルとなる期間が短すぎる。これが図中の「初期状態」である。 As shown in the figure, the first clock CLK1 generated first based on the second clock CLK2 falls before the rising timing (time t3) of the fifth clock CLK5 (time t2). Accordingly, the first phase difference signal UP = "H" and the second phase difference signal DN = "L" (step S33, YES). That is, in this state, the period during which the first clock CLK1 is at the “H” level is too short. This is the “initial state” in the figure.
そこで、次にデューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間をΔt4だけ大きくする。これが「1回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t2から時刻t6に変化する。しかし、まだ第1クロックCLK1の立ち下がりタイミング(時刻t6)は、第5クロックCLK5の立ち上がりタイミング(時刻t3)よりも先である。従って、第1位相差信号UP=“H”、第2位相差信号DN=“L”である(ステップS33、YES)。すなわち、この状態ではまだ第1クロックCLK1の“H”レベルとなる期間が短すぎる。
Therefore, the
そこで、デューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間を更にΔt4だけ大きくする。これが「2回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t2から時刻t8に変化する。しかし、まだ第1クロックCLK1の立ち下がりタイミング(時刻t8)は、第5クロックCLK5の立ち上がりタイミング(時刻t3)よりも先である。従って、第1位相差信号UP=“H”、第2位相差信号DN=“L”である(ステップS33、YES)。すなわち、この状態ではまだ第1クロックCLK1の“H”レベルとなる期間が短すぎる。
Therefore, the
よって、デューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間を更にΔt4だけ大きくする。これが「3回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t2から時刻t3に変化する。その結果、第1クロックCLK1の立ち下がりタイミングは、第5クロックCLK5の立ち上がりタイミング(時刻t3)と同時になる。従って、第1位相差信号UP=“L”、第2位相差信号DN=“L”である(ステップS32、YES)。よって、デューティの調整は終了し、以後、デューティ調整器3は、時刻t1から時刻t3の期間の長さだけ“H”レベルとなる第1クロックCLK1を生成する。
Therefore, the
なお、図12の3回目の補正後の状態では、第1クロックCLK1の立ち下がりタイミングが第5クロックCLK5の立ち上がりタイミングと同時であるが、第5クロックCLK5の立ち上がりタイミングよりも遅くてもよいことは言うまでもない。 In the state after the third correction in FIG. 12, the falling timing of the first clock CLK1 is simultaneous with the rising timing of the fifth clock CLK5, but may be later than the rising timing of the fifth clock CLK5. Needless to say.
(CASE2)
次にCASE2について、図13を用いて説明する。図13は、デューティの調整時における第1クロックCLK1、第5クロックCLK5、第6クロックCLK6、第1位相差信号UP、及び第2位相差信号DNのタイミングチャートであり、3回の調整によりデューティを最適化した場合について示している。図13も図12と同様に、ステップS15、S16におけるΔtを、Δt4一定とした場合について示している。また、(Δtd1+C1・Δtd1)をΔtd3と表記し、(Δtd2+C2・Δtd2)をΔtd4と表記する。
(CASE2)
Next,
図示するように、第2クロックCLK2に基づいて最初に生成された第1クロックCLK1は、第5クロックCLK5の立ち上がりタイミング(時刻t3)よりも後に立ち下がり(時刻t2)、第6クロックCLK6の立ち上がりタイミング(時刻t5)よりも先に立ち上がる(時刻t4)。従って、第1位相差信号UP=“L”、第2位相差信号DN=“H”である(ステップS33、NO)。すなわち、この状態では第1クロックCLK1の“H”レベルとなる期間が長すぎる。これが図中の「初期状態」である。 As illustrated, the first clock CLK1 generated first based on the second clock CLK2 falls after the rising timing (time t3) of the fifth clock CLK5 (time t2), and the rising of the sixth clock CLK6. It rises before the timing (time t5) (time t4). Therefore, the first phase difference signal UP = “L” and the second phase difference signal DN = “H” (step S33, NO). That is, in this state, the period during which the first clock CLK1 is at the “H” level is too long. This is the “initial state” in the figure.
そこで、デューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間をΔt4だけ短くする。これが「1回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t3から時刻t6に変化する。しかし、まだ第1クロックCLK1の立ち上がりタイミング(時刻t4)は、第6クロックCLK6の立ち上がりタイミング(時刻t7)よりも先である。従って、第1位相差信号UP=“L”、第2位相差信号DN=“H”である(ステップS33、NO)。すなわち、この状態ではまだ第1クロックCLK1の“H”レベルとなる期間が短すぎる。
Therefore, the
そこで、次にデューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間を更にΔt4だけ小さくする。これが「2回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t6から時刻t8に変化する。しかし、まだ第1クロックCLK1の立ち上がりタイミング(時刻t4)は、第6クロックCLK6の立ち上がりタイミング(時刻t9)よりも先である。従って、第1位相差信号UP=“L”、第2位相差信号DN=“H”である(ステップS33、NO)。すなわち、この状態ではまだ第1クロックCLK1の“H”レベルとなる期間が長すぎる。
Therefore, next, the
よって、デューティ調整器3は、第1クロックCLK1の“H”レベルとなる期間を更にΔt4だけ小さくする。これが「3回目の補正後の状態」である。つまり、第1クロックCLK1の立ち下がりタイミングは、時刻t8から時刻t10に変化する。その結果、第1クロックCLK1の立ち上がりタイミングは、第6クロックCLK6の立ち上がりタイミング(時刻t4)と同時になる。従って、第1位相差信号UP=“L”、第2位相差信号DN=“L”である(ステップS32、YES)。よって、デューティの調整は終了し、以後、デューティ調整器3は、時刻t1から時刻t10の期間の長さだけ“H”レベルとなる第1クロックCLK1を生成する。
Therefore, the
以上のように、本実施形態に係るデューティ調整方法であると、第1、第2の実施形態で説明した(1)、(2)の効果を得られる。
なお、本実施形態に係る方法であると、上記第1の実施形態とは異なり、第1クリティカルパス12に関する動作余裕と第2クリティカルパス13に関する動作余裕とは、必ずしも同じにならない。なぜなら、本実施形態では、第1クロックCLK1の“H”レベル期間がΔtd3以上になるか、または“L”レベル期間がΔtd4以上になった時点で、デューティの調整が終了するからである。
As described above, with the duty adjustment method according to this embodiment, the effects (1) and (2) described in the first and second embodiments can be obtained.
In the method according to this embodiment, unlike the first embodiment, the operation margin related to the first
しかし、Δtd3は第1クリティカルパス12の遅延時間Δtd1よりも一定程度大きな値であり、またΔtd4は第2クリティカルパス13の遅延時間Δtd2よりも一定程度大きな値である。従って、第1クロックCLK1の周波数を上昇させる場合、第1クロックCLK1の1サイクルの期間を、最低でも上記一定程度の期間は短くすることが出来る。従って、LSIの動作速度を向上出来る。
However, Δtd3 is a certain value larger than the delay time Δtd1 of the first
また、本実施形態ではレプリカ回路5内に第3ディレイ回路32及び第4ディレイ回路33が設けられる場合について説明した。しかし、第1の実施形態と同様にレプリカ回路5を設けない構成であっても良い。この場合のLSI1の構成を図14に示す。図示するように、第3ディレイ回路32及び第4ディレイ回路33はプロセッサコア2内に設けられる。そして、第5クロックCLK5及び第6クロックCLK6はプロセッサコア2から出力される。
In the present embodiment, the case where the
上記のように、この発明の第1乃至第3の実施形態に係る半導体集積回路装置及びデューティ制御方法であると、プロセッサコア内のクリティカルパスから与えられる情報を用いて、プロセッサコアを動作させるためのクロックのデューティを最適化している。 As described above, in the semiconductor integrated circuit device and the duty control method according to the first to third embodiments of the present invention, the processor core is operated using information given from the critical path in the processor core. The clock duty is optimized.
より具体的には、クロックが“H”レベルである期間でアクティブとなる第1クリティカルパス12の遅延時間Δtd1と、“L”レベルである期間でアクティブとなる第2クリティカルパス13の遅延時間Δtd2とを用いている。そして、第1、第2の実施形態では、第1クリティカルパス12についての動作余裕(Δt_H−Δtd1)と、第2クリティカルパス13についての動作余裕(“L”レベル期間−Δtd2)とが等しくなるようにデューティを調整している。また第3の実施形態では、第1クリティカルパス12に対して与えられた動作余裕(C1・Δtd1)と、第2クリティカルパス13に対して与えられた動作余裕(C1・Δtd2)とのいずれかを満足するように、デューティを調整している。従って、クロックの周波数を向上出来、プロセッサコアの動作を高速化出来る。
More specifically, the delay time Δtd1 of the first
また、上記のデューティ制御を、制御部4によって行っている。従って、クロックのデューティを動的に行うことが出来る。すなわち、LSI1の製造後であっても、適宜デューティの調整が可能である。その結果、LSI1の製造プロセスの過程でバラツキが発生したとしても、そのバラツキを原因とするデューティの悪化を制御部4によって補正出来る。従来のように、デューティの調整を動的に行うことが出来ない場合には、プロセスバラツキによってデューティが最適とならない場合がある。そして全てのチップに対して最適補正をするには、チップ毎のクリティカルパスの評価結果をチップ設計にフィードバックしなければならず、テスト時間は非常に長くなる。これは、クロックの“H”レベル期間でアクティブとなる回路と“L”レベル期間でアクティブとなる回路との両方が含まれている場合に特に顕著である。しかし、本実施形態に係る構成であると、チップの製造後であってもデューティを最適化出来る。その結果、チップの歩留まりを向上出来ると共に、テスト時間も短縮化出来るため製造コストを削減することも可能である。また、LSI1の動作中であってもデューティの調整が可能であるので、周囲温度や動作電圧等、動作条件の変動に応じてデューティを最適化することも出来る。その結果、動作条件にかかわらず、LSI1のパフォーマンスを最適にすることが出来る。
Further, the above-described duty control is performed by the
特に上記実施形態は、例えばDDR(Double Data Rate)モードを使用した半導体メモリや、非常に高周波数のクロックを用いてタイミング設計のされたマイクロプロセッサ等に適用することで顕著な効果が得られる。 In particular, the above-described embodiment can achieve a remarkable effect when applied to, for example, a semiconductor memory using a DDR (Double Data Rate) mode, a microprocessor whose timing is designed using a very high frequency clock, and the like.
なお上記第1、第2の実施形態では、第1、第2位相比較部21、22は第1クロックCLK1、/CLK1の立ち上がりタイミングと、第3、第4クロックCLK3、CLK4の立ち上がりタイミングとを比較している。また第3の実施形態では、第1クロックCLK1、/CLK1の立ち上がりタイミングと、第5、第6クロックCLK5、CLK6の立ち上がりタイミングとを比較している。しかし、立ち上がりタイミングと立ち下がりタイミングとで比較しても良いし、または立ち下がりタイミング同士を比較しても良い。つまり、第3〜第6クロックCLK3〜CLK6は、第1クロックCLK1にΔtd1〜Δtd4だけそれぞれ遅延して反転する信号であれば良い。更に言い換えれば、第3、第4クロックCLK3、CLK4は、第1、第2クリティカルパス12、13における遅延の長さが分かる信号であれば良い。また第5、第6クロックCLK5、CLK6は、第1、第2クリティカルパス12、13における遅延の長さと、それに動作余裕時間とを合わせた時間の長さが分かる信号でありさえすれば良い。勿論、デューティ調整器3も、クロックの立ち下がりタイミングを調整するものに限られず、立ち上がりタイミングを調整するもの、または立ち上がりタイミングと立ち下がりタイミングの両方を調整するものであっても良い。
In the first and second embodiments, the first and second
また、上記実施形態で説明したデューティの調整は、必ずしもLSI1内部で行われる必要はない。すなわち、制御部4はLSI1の内部に無くても良い。このような構成について図15に示す。図15は、出荷前のLSI1のテスト工程の様子を示すブロック図である。図示するようにLSI1は、そのテスト工程において、デューティ制御用コントローラ6に接続される。デューティ制御用コントローラ6は、第1、第3の実施形態で説明した制御部4の構成を備えている。そして、LSI1から出力される第3クロックCLK3と第4クロックCLK4、または第5クロックCLK5と第6クロックCLK6とを用いて制御信号CNTを発生し、LSI1のデューティを制御する。
Further, the duty adjustment described in the above embodiment is not necessarily performed inside the LSI 1. That is, the
また、上記第3の実施形態では、第5クロックCLK5は第1クロックCLK1の立ち上がりからΔtd3だけ遅れて立ち上がる。また第6クロックCLK6は第1クロックCLK1の立ち下がりからΔtd4だけ遅れて立ち上がる。そして、Δtd3は第1クリティカルパス12における遅延時間td1に、C1・Δtd1を加えたものであり、Δtd4は第2クリティカルパス13における遅延時間td2にC2・Δtd2を加えたものである。C1、C2の値は適宜選択出来、C1とC2は共に同じ値であっても良いし、異なる値であっても良い。また、第1、第2クリティカルパス12、13でそれぞれ生じる遅延時間Δtd1、Δtd2は一定値では無く、電圧や温度等の動作環境によって動的に変動する。よって、ある条件(電圧、温度)下におけるΔtd1、Δtd2を用いてデューティ補正を行ったとしても、連続する異なる条件下においては、このΔtd1、Δtd2で行ったデューティ補正は十分でない可能性がある。従って、上記動作環境によって動的に変動する遅延時間のプラスアルファ分として、C1・Δtd1及びC2・Δtd2をそれぞれΔtd1、Δtd2に加えることで、十分なデューティ補正が可能となる。
In the third embodiment, the fifth clock CLK5 rises with a delay of Δtd3 from the rise of the first clock CLK1. The sixth clock CLK6 rises with a delay of Δtd4 from the fall of the first clock CLK1. Δtd3 is obtained by adding C1 · Δtd1 to the delay time td1 in the first
なお、本願発明は上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。 Note that the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the invention in the implementation stage. Furthermore, the above embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements. For example, even if some constituent requirements are deleted from all the constituent requirements shown in the embodiment, the problem described in the column of the problem to be solved by the invention can be solved, and the effect described in the column of the effect of the invention Can be extracted as an invention.
1…LSI、2…プロセッサコア、3…デューティ調整器、4…制御部、5…レプリカ回路、6…デューティ制御用コントローラ、10…フリップフロップ、11…組み合わせ回路、12、13…クリティカルパス、20…インバータ、21、22…位相比較部、23…チャージポンプ回路、24…ローパスフィルタ、25…カウンタ回路、30〜33…ディレイ回路 DESCRIPTION OF SYMBOLS 1 ... LSI, 2 ... Processor core, 3 ... Duty regulator, 4 ... Control part, 5 ... Replica circuit, 6 ... Duty control controller, 10 ... Flip-flop, 11 ... Combination circuit, 12, 13 ... Critical path, 20 ... Inverter, 21, 22 ... Phase comparator, 23 ... Charge pump circuit, 24 ... Low pass filter, 25 ... Counter circuit, 30-33 ... Delay circuit
Claims (5)
外部から入力された第2クロックのデューティを制御して、前記第1クロックを生成する第1クロック生成部と、
前記第1クロックと、前記第1クロックが前記第1クリティカルパスで生じる遅延時間だけ遅れて得られる第3クロックとの第1位相差と、前記第1クロックと、前記第1クロックが前記第2クリティカルパスで生じる遅延時間だけ遅れて得られる第4クロックとの第2位相差とを検出し、前記第1位相差と前記第2位相差との差分が最小となるように前記デューティを制御するよう、前記第1クロック生成部に命令する制御部と
を具備することを特徴とする半導体集積回路装置。 A first critical path that operates in synchronization with the first clock and becomes active when the first clock is at the “H” level, and a second critical path that is active when the first clock is at the “L” level. A processor core,
A first clock generator for controlling the duty of a second clock input from the outside to generate the first clock;
A first phase difference between the first clock and a third clock obtained by delaying the first clock by a delay time occurring in the first critical path, the first clock, and the first clock being the second clock The second phase difference from the fourth clock obtained with a delay by a delay time occurring in the critical path is detected, and the duty is controlled so that the difference between the first phase difference and the second phase difference is minimized. And a control unit that commands the first clock generation unit.
前記第4クロックの立ち上がりタイミングから、前記第1クロックの立ち上がりタイミングまでの期間に相当する第2パルスを発生する第2位相差検出部と、
前記第1パルスのパルス幅と、前記第2パルスのパルス幅との差を電圧に変換する変換部と
を備え、前記制御部は、前記変換部によって得られた前記電圧に従って、前記デューティを制御する
ことを特徴とする請求項1記載の半導体集積回路装置。 The controller generates a first pulse corresponding to a period from a rising timing of the third clock to a rising timing of an inverted signal of the first clock;
A second phase difference detector that generates a second pulse corresponding to a period from the rising timing of the fourth clock to the rising timing of the first clock;
A conversion unit that converts a difference between the pulse width of the first pulse and the pulse width of the second pulse into a voltage, and the control unit controls the duty according to the voltage obtained by the conversion unit. The semiconductor integrated circuit device according to claim 1.
前記制御部は、前記レプリカ回路で生成された前記第3、第4クロックを用いて、前記第1、第2位相差を検出する
ことを特徴とする請求項1記載の半導体集積回路装置。 A replica circuit of the first and second critical paths;
The semiconductor integrated circuit device according to claim 1, wherein the control unit detects the first and second phase differences using the third and fourth clocks generated by the replica circuit.
外部から入力された第2クロックのデューティを制御して、前記第1クロックを生成する第1クロック生成部と、
前記第1クロックの立ち上がりから、前記第1クリティカルパスで生じる遅延時間よりも大きな遅延時間だけ遅れたタイミングを示す第3クロックを生成する第3クロック生成部と、
前記第1クロックの立ち下がりから、前記第2クリティカルパスで生じる遅延時間よりも大きな遅延時間だけ遅れたタイミングを示す第4クロックを生成する第4クロック生成部と、
前記第1クロックと第3クロックとの位相差と、前記第1クロックと前記第4クロックとの位相差を検出し、いずれか一方の前記位相差が最小となるように前記デューティを制御するよう、前記第1クロック生成部に命令する制御部と
を具備することを特徴とする半導体集積回路装置。 A first critical path that operates in synchronization with the first clock and becomes active when the first clock is at the “H” level, and a second critical path that is active when the first clock is at the “L” level. A processor core,
A first clock generator for controlling the duty of a second clock input from the outside to generate the first clock;
A third clock generator for generating a third clock indicating a timing delayed by a delay time larger than the delay time generated in the first critical path from the rising edge of the first clock;
A fourth clock generator for generating a fourth clock indicating a timing delayed by a delay time larger than the delay time generated in the second critical path from the falling edge of the first clock;
The phase difference between the first clock and the third clock and the phase difference between the first clock and the fourth clock are detected, and the duty is controlled so that any one of the phase differences is minimized. And a control unit that commands the first clock generation unit.
外部から入力された第2クロックに基づいて前記第1クロックを生成するステップと、
前記第1クロックを、前記プロセッサコアにおいて前記第1クロックが“H”レベルとなる期間でアクティブとなる第1クリティカルパスで生じる遅延時間だけ遅らせた第3クロックを生成するステップと、
前記第1クロックを、前記プロセッサコアにおいて前記第1クロックが“L”レベルとなる期間でアクティブとなる第2クリティカルパスで生じる遅延時間だけ遅らせた第4クロックを発生するステップと、
前記第1クロックと前記第3クロックとの第1位相差を検出するステップと、
前記第1クロックと前記第4クロックとの第2位相差を検出するステップと、
前記第1位相差と前記第2位相差との差分が最小となるように、前記第1クロックのデューティを制御するステップと
を具備することを特徴とするデューティ制御方法。 A duty control method of a first clock for operating a processor core,
Generating the first clock based on a second clock input from the outside;
Generating a third clock obtained by delaying the first clock by a delay time generated in a first critical path that is active in a period in which the first clock is at an “H” level in the processor core;
Generating a fourth clock obtained by delaying the first clock by a delay time generated in a second critical path that is active in a period in which the first clock is at an “L” level in the processor core;
Detecting a first phase difference between the first clock and the third clock;
Detecting a second phase difference between the first clock and the fourth clock;
Controlling the duty of the first clock so that the difference between the first phase difference and the second phase difference is minimized.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007136886A JP4510052B2 (en) | 2007-05-23 | 2007-05-23 | Semiconductor integrated circuit device and duty control method |
| US12/027,101 US7724056B2 (en) | 2007-02-08 | 2008-02-06 | Semiconductor integrated circuit device operating in synchronism with clock and method for controlling duty of clock |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007136886A JP4510052B2 (en) | 2007-05-23 | 2007-05-23 | Semiconductor integrated circuit device and duty control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2008294657A JP2008294657A (en) | 2008-12-04 |
| JP4510052B2 true JP4510052B2 (en) | 2010-07-21 |
Family
ID=40168953
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2007136886A Expired - Fee Related JP4510052B2 (en) | 2007-02-08 | 2007-05-23 | Semiconductor integrated circuit device and duty control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4510052B2 (en) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3989798B2 (en) * | 2002-08-27 | 2007-10-10 | 株式会社ルネサステクノロジ | Clock generation circuit |
| WO2004051907A2 (en) * | 2002-11-27 | 2004-06-17 | The Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations | System and method of digital system performance enhancement |
| JP4191579B2 (en) * | 2003-11-25 | 2008-12-03 | 川崎マイクロエレクトロニクス株式会社 | Duty ratio correction circuit |
-
2007
- 2007-05-23 JP JP2007136886A patent/JP4510052B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2008294657A (en) | 2008-12-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6710726B2 (en) | Serializer-deserializer circuit having increased margins for setup and hold time | |
| US7990194B2 (en) | Apparatus and method for correcting duty cycle of clock signal | |
| US5955904A (en) | Semiconductor integrated circuit with appropriate data output timing and reduced power consumption | |
| KR101062741B1 (en) | DLL circuit and its control method | |
| KR100873624B1 (en) | Power down mode control device and DLL circuit including the same | |
| JP2005251368A (en) | Delay lock loop in semiconductor storage element and its lock method | |
| CN101741372A (en) | Semiconductor integrated circuit and control method for clock signal synchronization | |
| US20140062552A1 (en) | Dll circuit and delay-locked method using the same | |
| JP2009065633A (en) | Semiconductor device and drive method therefor | |
| JP2008219866A (en) | Semiconductor memory device and method of driving same | |
| TWI307508B (en) | Memory devices having power supply routing for delay locked loops that counteracts power noise effects | |
| KR101076889B1 (en) | data output control circuit | |
| JP2006086455A (en) | Semiconductor device | |
| KR20080098197A (en) | Delay locked loops, integrated circuits comprising the same and methods of driving the same | |
| US7667509B2 (en) | Delay time adjusting method of delaying a phase of an output signal until a phase difference between an input signal and the output signal becomes an integral number of periods other than zero | |
| JP2017135506A (en) | Skew adjustment circuit, semiconductor device, and skew calibration method | |
| JP2005018739A (en) | Delay fixed loop, and clock delay fixation method for delay fixed loop | |
| US7724056B2 (en) | Semiconductor integrated circuit device operating in synchronism with clock and method for controlling duty of clock | |
| US7902899B2 (en) | Apparatus and method of generating reference clock for DLL circuit | |
| US8482326B2 (en) | DLL circuit, semiconductor device including the same, and data processing system | |
| JP2009171573A (en) | Dll circuit and method of controlling the same | |
| JP4510052B2 (en) | Semiconductor integrated circuit device and duty control method | |
| US20130002322A1 (en) | Semiconductor device | |
| US12362736B2 (en) | Clock frequency adjusting circuit and method for adjusting clock frequency | |
| CN119341529B (en) | Duty cycle adjusting circuit, delay phase-locked loop circuit and memory |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090310 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090825 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091008 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100406 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100428 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |