半導体装置
【課題】半導体装置の回路面積の増大を抑制し、かつクロックジッタを低減できるようにする。
【解決手段】基準クロック信号を動作クロックとして動作する回路ブロックと、基準クロック信号をn分周したクロック信号を動作クロックとして動作する回路ブロックとを有する半導体装置にて、遅延回路により基準クロック信号に所定の遅延を与えて、セレクタが制御信号に応じて基準クロック信号及び遅延が与えられたクロック信号の内から1つのクロック信号を選択して基準クロック信号を動作クロックとして動作する回路ブロックに出力するようにして、電源ノイズにより生じる位相変化を合わせた基準クロック信号の位相変化量を各周期で等しくしてクロックジッタを低減できるようにする。
【解決手段】基準クロック信号を動作クロックとして動作する回路ブロックと、基準クロック信号をn分周したクロック信号を動作クロックとして動作する回路ブロックとを有する半導体装置にて、遅延回路により基準クロック信号に所定の遅延を与えて、セレクタが制御信号に応じて基準クロック信号及び遅延が与えられたクロック信号の内から1つのクロック信号を選択して基準クロック信号を動作クロックとして動作する回路ブロックに出力するようにして、電源ノイズにより生じる位相変化を合わせた基準クロック信号の位相変化量を各周期で等しくしてクロックジッタを低減できるようにする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置に関し、詳しくはクロックジッタの低減技術に関する。
【背景技術】
【0002】
動作周波数(動作クロックとするクロック信号の周波数)が異なった複数の回路部を有する半導体装置がある。例えば、基準とするクロック信号を動作クロックとして動作するディジタル回路と、そのクロック信号をn分周(2分周や4分周など)したクロック信号を動作クロックとして動作するディジタル回路とを有する半導体装置がある。このような半導体装置では、n分周したクロック信号を動作クロックとするディジタル回路などで発生した電源ノイズが、同じ電源線を共有している他のクロック信号に係る回路に伝搬して影響を与え、クロック信号にジッタがのることがある。
【0003】
図16(A)に、動作周波数が異なる複数の回路ブロックCB51、CB52を有する半導体装置の一例を示す。回路ブロックCB51は、ノードND51より入力される基準となるクロック信号(基準クロック信号)CLK0を動作クロックとして動作する。また、回路ブロックCB52は、例えばディジタル回路であり、ノードND51より入力される基準クロック信号CLK0を分周回路DIV51によって2分周したクロック信号CLK1を動作クロックとして動作する。
【0004】
回路ブロックCB52では、クロック信号CLK1が供給されて動作することによって電源ノイズが発生する。電源ノイズは、同じ電源線を共有する基準クロック信号CLK0に係る回路に伝搬し影響を与える。一般に、ある回路ブロックにおいて、供給されるクロック信号の立ち上がりを基準にして動作する回路規模と、クロック信号の立ち下がりを基準にして動作する回路規模とは異なる。つまり、回路ブロックの動作に伴って、クロック信号の立ち上がりにおいて発生する電源ノイズの大きさと、クロック信号の立ち下がりにおいて発生する電源ノイズの大きさとは異なる。
【0005】
例えば、回路ブロックCB52においてクロック信号CLK1の立ち上がりで動作する回路規模がクロック信号CLK1の立ち下がりで動作する回路規模より大きいと、回路ブロックCB52が動作することで発生する電源ノイズは図16(B)に示すようになる。そのため、伝搬過程でクロック信号CLK1の立ち上がり時の電源ノイズの影響を主に受けることで生じるクロックCLK0の大きな位相変化量Δtrと、クロック信号CLK1の立ち下がり時の電源ノイズの影響を主に受けることで生じるクロック信号CLK0の小さな位相変化量Δtfとが異なる。その結果、クロック信号CLK0にはジッタがのり、回路ブロックCB51のクロック入力ノードNA51におけるクロック信号の波形は、図16(B)に示すCLK0Aのようになる。
【0006】
従来においては、前述のようなクロックジッタを低減する手法として、例えば図16(A)に示したように電源ノイズの発生源となる回路ブロックCB52の電源間にバイパスコンデンサCを挿入している。これにより、回路ブロックCB52で発生する電源ノイズ自体を抑制して、クロック信号CLK0にのるジッタの低減を図っている。
【0007】
また、電圧変化やクロック周波数の変化に追従しデューティ比が良好な2逓倍クロック信号を生成する回路が提案されている(例えば、特許文献1参照。)。特許文献1には、クロック信号と、クロック信号を段階的に遅延させる回路により遅延された複数の遅延クロック信号の内から選択した1つの遅延クロック信号とに基づき、クロック信号の2倍の周波数を有する2逓倍クロック信号を生成することが記載されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2004−350234号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
前述した従来のクロックジッタの低減手法では、電源ノイズの発生源となる回路ブロックの電源間にバイパスコンデンサを挿入することにより、回路面積が増大するという問題がある。
【課題を解決するための手段】
【0010】
本発明の一観点によれば、第1のクロック信号で動作する第1の回路部と、第1のクロック信号をn分周した第2のクロック信号で動作する第2の回路部と、1つ又は複数の遅延回路と、セレクタとを備える半導体装置が提供される。遅延回路は、第1のクロック信号に所定の遅延を与え、セレクタは、第1のクロック信号及び遅延が与えられた第1のクロック信号の内から制御信号に応じて1つのクロック信号を選択して第1の回路部に出力する。
【発明の効果】
【0011】
開示の半導体装置は、遅延回路により第1のクロック信号に所定の遅延を与え、制御信号に応じて第1のクロック信号及び遅延された第1のクロック信号の内から1つのクロック信号を選択して第1の回路部に出力することで、電源ノイズにより生じる位相変化を合わせた第1のクロック信号の位相変化量を各周期で等しくしクロックジッタを低減する効果を奏する。
【図面の簡単な説明】
【0012】
【図1】第1の実施形態における半導体装置の構成例を示す図である。
【図2】第1の実施形態における半導体装置の構成例(2分周クロックの例)を示す図である。
【図3】図2に示す半導体装置の動作例を示すタイミングチャートである。
【図4】第1の実施形態における半導体装置の構成例(4分周クロックの例)を示す図である。
【図5】図4に示す半導体装置の動作例を示すタイミングチャートである。
【図6】図4に示す半導体装置の動作例を示すタイミングチャートである。
【図7】第1の実施形態における半導体装置の構成例(8分周クロックの例)を示す図である。
【図8】図7に示す半導体装置の動作例を示すタイミングチャートである。
【図9】第2の実施形態における半導体装置の構成例を示す図である。
【図10】第2の実施形態における半導体装置の構成例(2分周クロックの例)を示す図である。
【図11】図10に示す半導体装置の動作例を示すタイミングチャートである。
【図12】第2の実施形態における半導体装置の構成例(4分周クロックの例)を示す図である。
【図13】図12に示す半導体装置の動作例を示すタイミングチャートである。
【図14】第2の実施形態における半導体装置の構成例(8分周クロックの例)を示す図である。
【図15】図14に示す半導体装置の動作例を示すタイミングチャートである。
【図16】クロックジッタを説明するための図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態を図面に基づいて説明する。
【0014】
(第1の実施形態)
本発明の第1の実施形態について説明する。
図1は、第1の実施形態における半導体装置の構成例を示すブロック図である。図1において、DL1、DL2、・・・、DL(n−1)は遅延回路であり、SEL1はセレクタである。また、DIV1は分周回路であり、CB1、CB2は回路ブロックである。
【0015】
回路ブロックCB1、CB2は、例えばディジタル回路である。回路ブロックCB1は、基準となるクロック信号(基準クロック信号)を動作クロックとして動作する。また、回路ブロックCB2は、基準クロック信号をn分周(nは2以上の整数)したクロック信号を動作クロックとして動作する。
【0016】
遅延回路DL1、DL2、・・・、DL(n−1)の各々は、ノードND1より入力される基準クロック信号が入力され、基準クロック信号に所定の遅延を与えて遅延クロック信号として出力する。遅延回路DL1、DL2、・・・、DL(n−1)としては、遅延量を設定可能な任意の遅延回路を適用できる。例えば、遅延回路DL1、DL2、・・・、DL(n−1)の各々は、設定する遅延量に応じた1つ又は縦続接続された複数のクロックバッファである。
【0017】
セレクタSEL1は、ノードND1より入力される基準クロック信号が入力されるとともに、遅延回路DL1、DL2、・・・、DL(n−1)により所定の遅延が与えられた遅延クロック信号が入力される。また、セレクタSEL1は、制御信号CTL1が入力される。セレクタSEL1は、制御信号CTL1に応じて、入力される基準クロック信号及び遅延クロック信号の内から1つのクロック信号を選択して出力する。セレクタSEL1の出力(セレクタSEL1より選択出力されたクロック信号)は、回路ブロックCB1のクロック入力ノードNA1を介して回路ブロックCB1に入力される。
【0018】
分周回路DIV1は、ノードND1より入力される基準クロック信号が入力され、基準クロック信号をn分周して出力する。分周回路DIV1の出力(基準クロック信号をn分周したクロック信号)は、回路ブロックCB2のクロック入力ノードNB1を介して回路ブロックCB2に入力される。
【0019】
図1に示すように、電源ノイズの発生源となる回路ブロックCB2が基準クロック信号をn分周したクロック信号を動作クロックとして動作する場合には、基準クロック信号に所定の遅延を与える遅延回路を(n−1)個設ける。これは、回路ブロックCB2に供給されるクロック信号の1周期に対応する基準クロック信号の連続したn周期において、出力先まで(本例では、回路ブロックCB1のクロック入力端)に生じる基準クロック信号の立ち上がりにおける位相変化量(遅延)を等しくするためである。
【0020】
各遅延回路DL1、DL2、・・・、DL(n−1)の遅延量は、出力先までに生じる基準クロック信号の立ち上がりにおける位相変化量を等しくする遅延量である。すなわち、回路ブロックCB2の動作により発生した電源ノイズの影響を受けることで生じる遅延と遅延回路で与える遅延との和が、一定(略一定)となるように各遅延回路DL1、DL2、・・・、DL(n−1)の遅延量が設定される。この遅延量は、発生した電源ノイズの影響を受けることにより位相が変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番大きな位相変化量に対する差分に相当する。各遅延回路DL1、DL2、・・・、DL(n−1)の遅延量は、例えば電源ノイズの発生源となる回路ブロックCB2における電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定する。なお、(n−1)個の遅延回路を設けた場合、制御信号CNTは少なくとも(log2n)ビットの信号である。
【0021】
本実施形態によれば、基準クロック信号の連続したn周期のうち、発生した電源ノイズの影響を受けることにより出力先までに生じる位相変化量が最も大きいものを除く(n−1)の各周期における位相変化量を最も大きいものに合わせるように遅延させる。これにより、基準クロック信号の出力先での位相変化量を等しくし、出力先での基準クロック信号の立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0022】
以下、第1の実施形態における半導体装置の具体例について説明する。なお、以下に説明する例では、基準となるクロック信号(基準クロック信号)をn分周したクロック信号を動作クロックとして動作する回路ブロックでは、クロック信号の立ち上がりで動作する回路の規模が立ち下がりで動作する回路の規模より大きいものとする。すなわち、n分周したクロック信号の立ち上がりにおいて発生する電源ノイズが、n分周したクロック信号の立ち下がりにおいて発生する電源ノイズよりも大きいものとして説明する。
【0023】
図2は、第1の実施形態における半導体装置の具体的な構成例を示す図である。図2に例示する半導体装置は、基準クロック信号CLK0を2分周したクロック信号CLK1を動作クロックとして動作する回路ブロックを有する半導体装置である。
【0024】
図2において、DL11は遅延回路であり、SEL11はセレクタである。また、DIV11は分周回路であり、CB11、CB12は回路ブロックである。回路ブロックCB11、CB12は、例えばディジタル回路である。回路ブロックCB11は、基準クロック信号を動作クロックとして動作し、回路ブロックCB12は、基準クロック信号を2分周したクロック信号を動作クロックとして動作する。
【0025】
遅延回路DL11は、ノードND11より入力される基準クロック信号CLK0が入力され、基準クロック信号に所定の遅延tdを与えて遅延クロック信号CLK0dとして出力する。遅延回路DL11は、入力信号に対して遅延tdを与えるようにされた、1つ又は縦続接続された複数のクロックバッファである。
【0026】
遅延tdは、発生した電源ノイズの影響を受けることにより位相が変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番位相変化量が大きな箇所に対しての差分である。遅延tdは、例えば回路ブロックCB12における電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定される。
【0027】
セレクタSEL11は、ノードND11より入力される基準クロック信号CLK0が入力されるとともに、遅延回路DL11から出力される遅延クロック信号CLK0dが入力される。セレクタSEL11は、入力される制御信号CTL11に応じて、基準クロック信号CLK0又は遅延クロック信号CLK0dを選択して出力する。セレクタSEL11の出力(セレクタSEL11より選択出力されたクロック信号)は、回路ブロックCB11のクロック入力ノードNA11を介して回路ブロックCB11に入力される。
【0028】
分周回路DIV11は、基準クロック信号CLK0が入力され、基準クロック信号CLK0を2分周して出力する。分周回路DIV11の出力は、基準クロック信号CLK0を2分周したクロック信号CLK1として回路ブロックCB12のクロック入力ノードNB11を介して回路ブロックCB12に入力される。また、分周回路DIV11の出力は、制御信号CTLとしてセレクタSEL11に入力される。このように分周回路DIV11の出力をセレクタSEL11の制御信号CTLとして用いることで、制御信号CTLを生成するための回路を別に設ける必要がなく、回路規模の増大を抑制し簡易な回路構成で制御信号CTLを供給することができる。
【0029】
図3は、図2に示した半導体装置の動作例を示すタイミングチャートである。図3において、CLK0はノードND11より入力される基準クロック信号(周期T)であり、CLK1は基準クロック信号CLK0を2分周したクロック信号(周期2T)である。
【0030】
CLK0dは、遅延回路DL11から出力される遅延クロック信号である。遅延クロック信号CLK0dは、遅延回路DL11により遅延td(=Δtr−Δtf)が与えられる。ここで、Δtrは、クロック信号CLK1の立ち上がり時の電源ノイズの影響を受けることにより生じる基準クロック信号CLK0での位相変化量である。また、Δtfは、クロック信号CLK1の立ち下がり時の電源ノイズの影響を受けることにより生じる基準クロック信号CLK0での位相変化量である。
【0031】
CTLはセレクタSEL11に入力される制御信号であり、制御信号CTLが“1”のときセレクタSEL11が基準クロック信号CLK0を出力し、制御信号CTLが“0”のときセレクタSEL11が遅延クロック信号CLK0dを出力する。
【0032】
CLK0jは、制御信号CTLが常に“1”である(セレクタSEL11から基準クロック信号CLK0が常に出力される)と仮定した場合に、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。すなわち、クロック信号CLK0jは、クロック入力ノードNA11に出力されたと仮定した場合の電源ノイズの影響を受けた基準クロック信号CLK0に相当する。図示したように、クロック信号CLK1の立ち上がり時において、クロック信号CLK0jの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtr分遅れる。また、クロック信号CLK1の立ち下がり時において、クロック信号CLK0jの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtf分遅れる。
【0033】
CLK0djは、制御信号CTLが常に“0”である(セレクタSEL11から遅延クロック信号CLK0dが常に出力される)と仮定した場合に、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。すなわち、クロック信号CLK0djは、クロック入力ノードNA11に出力されたと仮定した場合の電源ノイズの影響を受けた遅延クロック信号CLK0dに相当する。図示したように、クロック信号CLK1の立ち上がり時において、クロック信号CLK0djの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtrと遅延tdとの総和分遅れる。また、クロック信号CLK1の立ち下がり時において、クロック信号CLK0djの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtfと遅延tdとの総和分遅れる。
【0034】
CLK0Aは、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。ここで、前述したようにセレクタSEL11は、制御信号CTLが“1”のとき基準クロック信号CLK0を出力し、制御信号CTLが“0”のとき遅延クロック信号CLK0dを出力する。したがって、クロック入力ノードNA11に対して、制御信号CTLが“1”のときにはクロック信号CLK0jがクロック信号CLK0Aとして出力され、制御信号CTLが“0”のときにはクロック信号CLK0djがクロック信号CLK0Aとして出力される。
【0035】
これにより、クロック信号CLK1の立ち上がり時においては、クロック信号CLK0jがクロック信号CLK0Aとして出力され、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtr分遅れてクロック信号が立ち上がる。また、クロック信号CLK1の立ち下がり時においては、クロック信号CLK0djがクロック信号CLK0Aとして出力され、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtf分と遅延tdとの総和分遅れてクロック信号が立ち上がる。ここで、遅延tdは(Δtr−Δtf)であるので、クロック信号CLK1の立ち下がり時におけるクロック信号CLK0Aの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtr(=Δtf+(Δtr−Δtf))分遅れることとなる。したがって、クロック信号CLK0Aの位相変化量を等しくして出力先での立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0036】
図4は、第1の実施形態における半導体装置の他の具体的な構成例を示す図である。図4に例示する半導体装置は、基準クロック信号CLK0を4分周したクロック信号CLK2を動作クロックとして動作する回路ブロックを有する半導体装置である。
【0037】
図4において、DL21、DL22、DL23は遅延回路であり、SEL21はセレクタである。また、DIV21は分周回路であり、CB21、CB22は回路ブロックである。回路ブロックCB21、CB22は、例えばディジタル回路である。回路ブロックCB21は、基準クロック信号を動作クロックとして動作し、回路ブロックCB22は、基準クロック信号を4分周したクロック信号を動作クロックとして動作する。
【0038】
遅延回路DL21は、ノードND21より入力される基準クロック信号CLK0が入力され、基準クロック信号に所定の遅延td(10)を与えて遅延クロック信号CLK0d(10)として出力する。また、遅延回路DL22、DL23の各々は、ノードND21より入力される基準クロック信号CLK0が入力され、基準クロック信号に所定の遅延td(01)、td(00)を与えて遅延クロック信号CLK0d(01)、CLK0d(00)として出力する。
【0039】
遅延td(10)、td(01)、td(00)は、電源ノイズの影響を受けることで位相変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番大きな位相変化量に対する差分である。例えば、図5、図6に示した例において、基準クロック信号CLK0を2分周したクロック信号CLK1の立ち上がり時、かつ4分周したクロック信号CLK2の立ち上がり時における基準クロック信号の立ち上がりの位相変化量が最も大きく、Δtdaとする。また、クロック信号CLK1の立ち下がり時かつクロック信号CLK2が“1”である時における基準クロック信号の立ち上がりの位相変化量をΔtdbとする。また、クロック信号CLK1の立ち上がり時かつクロック信号CLK2の立ち下がり時における基準クロック信号の立ち上がりの位相変化量をΔtdcとし、クロック信号CLK1の立ち下がり時かつクロック信号CLK2が“0”である時における基準クロック信号の立ち上がりの位相変化量をΔtddとする。このとき、遅延td(10)は(Δtda−Δtdb)であり、遅延td(01)は(Δtda−Δtdc)であり、遅延td(00)は(Δtda−Δtdd)である。遅延td(10)、td(01)、td(00)は、例えば発生する電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定される。
【0040】
セレクタSEL21は、ノードND21より入力される基準クロック信号CLK0が入力されるとともに、遅延回路DL21、DL22、DL23から出力される遅延クロック信号CLK0d(10)、CLK0d(01)、CLK0d(00)が入力される。セレクタSEL21は、入力される制御信号CTL21に応じて、基準クロック信号CLK0、及び遅延クロック信号CLK0d(10)、CLK0d(01)、CLK0d(00)の内から1つのクロック信号を選択して出力する。セレクタSEL21の出力(セレクタSEL21より選択出力されたクロック信号)は、回路ブロックCB21のクロック入力ノードNA21を介して回路ブロックCB21に入力される。
【0041】
分周回路DIV21は、基準クロック信号CLK0が入力され、基準クロック信号CLK0を4分周して出力する。分周回路DIV21の出力は、基準クロック信号CLK0を4分周したクロック信号CLK2として回路ブロックCB22のクロック入力ノードNB21を介して回路ブロックCB22に入力される。なお、図2に示した例と同様にして、分周回路DIV21によって4分周されたクロック信号CLK2、及びその過程で得られる2分周されたクロック信号CLK1を制御信号CTLとして利用するようにしても良い。この場合には、例えばクロック信号CLK2を上位ビット、クロック信号CLK1を下位ビットとする2ビットの制御信号CTLとして供給すれば良い。
【0042】
図5及び図6は、図4に示した半導体装置の動作例を示すタイミングチャートである。図5には伝搬遅延が0〜T(Tは基準クロック信号CLK0の周期)である場合の例を示しており、図6には伝搬遅延がT〜2Tである場合の例を示している。図5及び図6において、CLK0はノードND21より入力される基準クロック信号(周期T)であり、CLK1は基準クロック信号CLK0を2分周したクロック信号(周期2T)であり、CLK2は基準クロック信号CLK0を4分周したクロック信号(周期4T)である。
【0043】
CLK0d(10)、CLK0d(01)、CLK0d(00)は、遅延回路DL21、DL22、DL23から出力される遅延クロック信号である。CTLはセレクタSEL21に入力される制御信号である。セレクタSEL21は、制御信号CTLが“11”のとき基準クロック信号CLK0を出力し、制御信号CTLが“10”のとき遅延クロック信号CLK0d(10)を出力する。また、セレクタSEL21は、制御信号CTLが“01”のとき遅延クロック信号CLK0d(01)を出力し、制御信号CTLが“00”のとき遅延クロック信号CLK0d(00)を出力する。
【0044】
CLK0jは、制御信号CTLが常に“11”であると仮定した場合に回路ブロックCB21のクロック入力ノードNA21に出力されるクロック信号である。CLK0d(10)jは、制御信号CTLが常に“10”であると仮定した場合にクロック入力ノードNA21に出力されるクロック信号である。CLK0d(01)jは、制御信号CTLが常に“01”であると仮定した場合にノードNA21に出力されるクロック信号であり、CLK0d(00)jは、制御信号CTLが常に“00”であると仮定した場合にノードNA21に出力されるクロック信号である。
【0045】
CLK0Aは、回路ブロックCB21のクロック入力ノードNA21に出力されるクロック信号である。前述したセレクタSEL21の選択出力によりクロック入力ノードNA21には、制御信号CTLが“11”のときクロック信号CLK0jが出力され、制御信号CTLが“10”のときクロック信号CLK0d(10)jが出力される。また、クロック入力ノードNA11には、制御信号CTLが“01”のときクロック信号CLK0d(01)jが出力され、制御信号CTLが“00”のときクロック信号CLK0d(00)jが出力される。
【0046】
このように制御信号CTLが“11”、“10”、“01”、“00”、“11”、・・・と変化することで、クロック信号CLK0j、CLK0d(10)j、CLK0d(01)j、CLK0d(00)jが順にクロック信号CLK0Aとして選択出力される。クロック信号CLK0Aとして選択出力されるときのクロック信号CLK0j、CLK0d(10)j、CLK0d(01)j、CLK0d(00)jの基準クロック信号CLK0の立ち上がりに対する位相変化量はすべてΔtdaとなる。したがって、クロック信号CLK0Aの位相変化量を等しくして出力先での立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0047】
図7は、第1の実施形態における半導体装置の他の具体的な構成例を示す図である。図7に例示する半導体装置は、基準クロック信号CLK0を8分周したクロック信号CLK3を動作クロックとして動作する回路ブロックを有する半導体装置である。
【0048】
図7において、DL31〜DL37は遅延回路であり、SEL31はセレクタである。また、DIV31は分周回路であり、CB31、CB32は回路ブロックである。回路ブロックCB31、CB32は、例えばディジタル回路である。回路ブロックCB31は、基準クロック信号を動作クロックとして動作し、回路ブロックCB32は、基準クロック信号を8分周したクロック信号を動作クロックとして動作する。
【0049】
遅延回路DL31〜DL37の各々は、ノードND31より入力される基準クロック信号CLK0が入力される。遅延回路DL31は、基準クロック信号CLK0に所定の遅延td(110)を与えて遅延クロック信号CLK0d(110)として出力する。また、遅延回路DL32、DL33、DL34は、それぞれ基準クロック信号CLK0に所定の遅延td(101)、td(100)、td(011)を与え遅延クロック信号CLK0d(101)、CLK0d(100)、CLK0d(011)として出力する。同様に、遅延回路DL35、DL36、DL37は、それぞれ基準クロック信号CLK0に所定の遅延td(010)、td(001)、td(000)を与え遅延クロック信号CLK0d(010)、CLK0d(001)、CLK0d(000)として出力する。
【0050】
各遅延回路DL31〜DL37で与えられる遅延tdは、電源ノイズの影響を受けることで位相変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番大きな位相変化量に対する差分である。以下において、基準クロック信号CLK0を2分周したクロック信号CLK1が状態A、4分周したクロック信号CLK2が状態B、及び8分周したクロック信号CLK3が状態Cであることを{A,B,C}で示す。また、クロック信号の状態について、“↑”は立ち上がり時を示し、“↓”は立ち下がりを示し、“1”は信号値が1であることを示し、“0”は信号値が0であることを示す。例えば図8の例において、{↑,↑,↑}である時における基準クロック信号の立ち上がりの位相変化量が最も大きく、Δtdaとする。また、{↓,1,1}時における基準クロック信号の立ち上がりの位相変化量をΔtdbとする。また、{↑,↓,1}時における基準クロック信号の立ち上がりの位相変化量をΔtdc、{↓,0,1}時における基準クロック信号の立ち上がりの位相変化量をΔtdd、{↑,↑,↓}時における基準クロック信号の立ち上がりの位相変化量をΔtdeとする。同様に、{↓,1,0}時における基準クロック信号の立ち上がりの位相変化量をΔtdf、{↑,↓,0}時における基準クロック信号の立ち上がりの位相変化量をΔtdg、{↓,0,0}時における基準クロック信号の立ち上がりの位相変化量をΔtdhとする。このとき、遅延td(110)は(Δtda−Δtdb)である。また、遅延td(101)は(Δtda−Δtdc)、遅延td(100)は(Δtda−Δtdd)、遅延td(011)は(Δtda−Δtde)である。同様に、遅延td(010)は(Δtda−Δtdf)、遅延td(001)は(Δtda−Δtdg)、遅延td(000)は(Δtda−Δtdh)である。各遅延回路DL31〜DL37で与えられる遅延tdは、例えば発生する電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定される。
【0051】
セレクタSEL31は、ノードND31より入力される基準クロック信号CLK0が入力されるとともに、遅延回路DL31〜DL37から出力される遅延クロック信号CLK0d(x)(xは“000”〜“110”)が入力される。セレクタSEL31は、入力される制御信号CTL31に応じて、基準クロック信号CLK0及び遅延クロック信号CLK0d(x)の内から1つのクロック信号を選択して出力する。セレクタSEL31の出力(セレクタSEL31より選択出力されたクロック信号)は、回路ブロックCB31のクロック入力ノードNA31を介して回路ブロックCB31に入力される。
【0052】
分周回路DIV31は、基準クロック信号CLK0が入力され、基準クロック信号CLK0を8分周して出力する。分周回路DIV31の出力は、基準クロック信号CLK0を8分周したクロック信号CLK3として回路ブロックCB32のクロック入力ノードNB31を介して回路ブロックCB32に入力される。なお、図2に示した例と同様にして、分周回路DIV31によって8分周されたクロック信号CLK3と、その過程で得られる4分周されたクロック信号CLK2及び2分周されたクロック信号CLK1とを制御信号CTLとして利用するようにしても良い。この場合には、例えば上位ビット側からクロック信号CLK3、CLK2、CLK1とする3ビットの制御信号CTLとして供給すれば良い。
【0053】
図8は、図7に示した半導体装置の動作例を示すタイミングチャートである。図8には伝搬遅延が0〜T(Tは基準クロック信号CLK0の周期)である場合の例を示している。図8において、CLK0はノードND31より入力される基準クロック信号(周期T)であり、CLK1は基準クロック信号CLK0を2分周したクロック信号(周期2T)である。また、CLK2は基準クロック信号CLK0を4分周したクロック信号(周期4T)であり、CLK3は基準クロック信号CLK0を8分周したクロック信号(周期8T)である。
【0054】
CLK0d(x)(xはバイナリ表記で“000”〜“110”)は、遅延回路DL31〜DL37から出力される遅延クロック信号である。CTLはセレクタSEL31に入力される制御信号である。セレクタSEL31は、制御信号CTLが“111”のとき基準クロック信号CLK0を出力し、制御信号CTLが“x”のとき遅延クロック信号CLK0d(x)を出力する。
【0055】
また、CLK0jは、制御信号CTLが常に“111”であると仮定した場合に回路ブロックCB31のクロック入力ノードNA31に出力されるクロック信号である。CLK0d(x)jは、制御信号CTLが常に“x”であると仮定した場合に回路ブロックCB31のクロック入力ノードNA31に出力されるクロック信号である。
【0056】
CLK0Aは、回路ブロックCB31のクロック入力ノードNA31に出力されるクロック信号である。セレクタSEL31によりクロック入力ノードNA31には、制御信号CTLが“111”のときクロック信号CLK0jが出力され、制御信号CTLが“x”のときクロック信号CLK0d(x)jが出力される。図8に示すように制御信号CTLが順に変化することで、クロック信号CLK0j、CLK0d(110)j、CLK0d(101)j、CLK0d(100)j、CLK0d(011)j、CLK0d(010)j、CLK0d(001)j、CLK0d(000)jが順にクロック信号CLK0Aとして選択出力される。
【0057】
クロック信号CLK0Aとして選択出力されるとき、出力されるクロック信号の基準クロック信号CLK0の立ち上がりに対する位相変化量はすべてΔtdaである。したがって、クロック信号CLK0Aの位相変化量を等しくして出力先での立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0058】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
前述した第1の実施形態では立ち上がりで見た基準クロック信号の周期を等しくしているが、以下に説明する第2の実施形態は立ち上がりで見た基準クロック信号の周期を等しくするとともに立ち下がりで見た基準クロック信号の周期を等しくするものである。
【0059】
図9は、第2の実施形態における半導体装置の構成例を示すブロック図である。なお、第2の実施形態における半導体装置は、基準クロック信号の立ち下がりが電源ノイズの影響を受けることのない伝搬遅延が0〜T/2(Tは基準クロック信号の周期)の条件で適用可能である。図9において、図1に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
【0060】
図9において、AND1、AND2、・・・、AND(n−1)はAND回路(論理積演算回路)である。iを1〜(n−1)の整数値をとる添え字として、AND回路ANDiは、遅延回路DLiに対応して設けられる。AND回路ANDiは、ノードND1より入力される基準クロック信号及び遅延回路DLiの出力が入力され、その演算結果を遅延クロック信号としてセレクタSEL1に出力する。つまり、AND回路ANDiは、基準クロック信号が“1”である期間において遅延回路DLiにより所定の遅延を与えた基準クロック信号を遅延クロック信号として出力し、基準クロック信号が“0”である期間において“0”を遅延クロック信号として出力する。
【0061】
したがって、セレクタSEL1に供給される遅延クロック信号は、基準クロック信号に対して、立ち上がりにおいて所定の遅延が与えられ、かつ立ち下がりにおいて遅延のない信号となる。これにより、基準クロック信号の出力先での位相変化量を等しくし、出力先での基準クロック信号の立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0062】
以下、第2の実施形態における半導体装置の具体例について説明する。なお、以下に説明する例においても、基準クロック信号をn分周したクロック信号を動作クロックとして動作する回路ブロックでは、クロック信号の立ち上がりで動作する回路の規模が立ち下がりで動作する回路の規模より大きいものとする。
【0063】
図10は、第2の実施形態における半導体装置の具体的な構成例を示す図である。図10に例示する半導体装置は、基準クロック信号CLK0を2分周したクロック信号CLK1を動作クロックとして動作する回路ブロックを有する半導体装置である。図10において、図2に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
【0064】
図10において、AND11はAND回路である。AND回路AND11は、ノードND11より入力される基準クロック信号CLK0、及び遅延回路DL11から出力される遅延クロック信号CLK0dが入力され、その論理積演算結果を遅延クロック信号CLK0dmとしてセレクタSEL11に出力する。セレクタSEL11は、入力される制御信号CTL11に応じて、基準クロック信号CLK0又は遅延クロック信号CLK0dmを選択して出力する。
【0065】
図11は、図10に示した半導体装置の動作例を示すタイミングチャートである。図11において、図3に示した信号に対応する信号には同一の符号を付し、重複する説明は省略する。また、基準クロック信号の立ち上がりに関しては、第1の実施形態と同様であるので説明は省略する。
【0066】
図11において、CLK0dmは、AND回路AND11から出力される遅延クロック信号である。図10に示した半導体装置において、セレクタSEL11は、制御信号CTLが“1”のとき基準クロック信号CLK0を出力し、制御信号CTLが“0”のとき遅延クロック信号CLK0dmを出力する。CLK0djmは、制御信号CTLが常に“0”である(セレクタSEL11から遅延クロック信号CLK0dmが常に出力される)と仮定した場合に、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。
【0067】
図11に示すように、遅延クロック信号CLK0dmは、立ち上がりについて遅延tdが与えられるが、立ち下がりについては遅延がなく基準クロック信号CLK0に同期している。また、クロック信号CLK0djmは、クロック入力ノードNA11に出力されたと仮定した場合の電源ノイズの影響を受けた遅延クロック信号CLK0dmに相当するが、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。なお、クロック信号CLK0jも、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。したがって、クロック信号CLK0Aとして選択出力されるクロック信号CLK0j、CLK0djmの立ち下がりは、基準クロック信号CLK0に同期したものとなる。
【0068】
これにより、クロック信号CLK0Aの立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0069】
図12は、第2の実施形態における半導体装置の他の具体的な構成例を示す図である。図12に例示する半導体装置は、基準クロック信号CLK0を4分周したクロック信号CLK2を動作クロックとして動作する回路ブロックを有する半導体装置である。図12において、図4に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
【0070】
図12において、AND21、AND22、AND23はAND回路である。AND回路AND21は、ノードND21より入力される基準クロック信号CLK0及び遅延回路DL21から出力される遅延クロック信号CLK0d(10)が入力され、その演算結果を遅延クロック信号CLK0d(10)mとしてセレクタSEL21に出力する。AND回路AND22は、ノードND21より入力される基準クロック信号CLK0及び遅延回路DL22から出力される遅延クロック信号CLK0d(01)が入力され、その演算結果を遅延クロック信号CLK0d(01)mとしてセレクタSEL21に出力する。AND回路AND23は、ノードND21より入力される基準クロック信号CLK0及び遅延回路DL23から出力される遅延クロック信号CLK0d(00)が入力され、その演算結果を遅延クロック信号CLK0d(00)mとしてセレクタSEL21に出力する。セレクタSEL21は、入力される制御信号CTL21に応じて、基準クロック信号CLK0、及び遅延クロック信号CLK0d(10)m、CLK0d(01)m、CLK0d(00)mの内から1つのクロック信号を選択して出力する。
【0071】
図13は、図12に示した半導体装置の動作例を示すタイミングチャートである。図12において、図5等に示した信号に対応する信号には同一の符号を付し、重複する説明は省略する。また、基準クロック信号の立ち上がりに関しては、第1の実施形態と同様であるので説明は省略する。
【0072】
図13において、CLK0d(10)m、CLK0d(01)m、CLK0d(00)mは、AND回路AND21、AND22、AND23から出力される遅延クロック信号である。図12に示した半導体装置において、セレクタSEL21は、制御信号CTLが“11”のとき基準クロック信号CLK0を出力し、制御信号CTLが“10”のとき遅延クロック信号CLK0d(10)mを出力する。また、セレクタSEL21は、制御信号CTLが“01”のとき遅延クロック信号CLK0d(01)mを出力し、制御信号CTLが“00”のとき遅延クロック信号CLK0d(00)mを出力する。
【0073】
CLK0d(10)jmは、制御信号CTLが常に“10”であると仮定した場合にクロック入力ノードNA21に出力されるクロック信号である。CLK0d(01)jmは、制御信号CTLが常に“01”であると仮定した場合にノードNA21に出力されるクロック信号であり、CLK0d(00)jmは、制御信号CTLが常に“00”であると仮定した場合にノードNA21に出力されるクロック信号である。
【0074】
図13に示すように、遅延クロック信号CLK0d(10)m、CLK0d(01)m、CLK0d(00)mは、立ち上がりについては所定の遅延が与えられるが、立ち下がりについては遅延がなく基準クロック信号CLK0に同期している。また、立ち下がりについては電源ノイズの影響を受けないので、クロック信号CLK0d(10)jm、CLK0d(01)jm、CLK0d(00)jmは位相の変化を生じない。なお、クロック信号CLK0jも、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。したがって、クロック信号CLK0Aとして選択出力されるクロック信号CLK0j、CLK0d(10)jm、CLK0d(01)jm、CLK0d(00)jmの立ち下がりは、基準クロック信号CLK0に同期したものとなる。よって、クロック信号CLK0Aの立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0075】
図14は、第2の実施形態における半導体装置の他の具体的な構成例を示す図である。図14に例示する半導体装置は、基準クロック信号CLK0を8分周したクロック信号CLK3を動作クロックとして動作する回路ブロックを有する半導体装置である。図14において、図7に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
図14において、AND31〜AND37はAND回路である。AND回路AND31〜AND37の各々は、ノードND31より入力される基準クロック信号CLK0が入力されるとともに、対応する遅延回路DL31〜DL37からの遅延クロック信号CLK0d(x)(xは“000”〜“110”)が入力される。AND回路AND31〜AND37は、基準クロック信号CLK0と遅延クロック信号CLK0d(x)との論理積演算結果を遅延クロック信号CLK0d(x)mとしてセレクタSEL31に出力する。セレクタSEL31は、入力される制御信号CTL31に応じて、基準クロック信号CLK0、及び遅延クロック信号CLK0d(x)mの内から1つのクロック信号を選択して出力する。
【0076】
図15は、図14に示した半導体装置の動作例を示すタイミングチャートである。図15において、図8に示した信号に対応する信号には同一の符号を付し、重複する説明は省略する。また、基準クロック信号の立ち上がりに関しては、第1の実施形態と同様であるので説明は省略する。
【0077】
図15において、CLK0d(x)m(xは“000”〜“110”)は、AND回路AND31〜AND37から出力される遅延クロック信号である。図14に示した半導体装置において、セレクタSEL31は、制御信号CTLが“111”のとき基準クロック信号CLK0を出力し、制御信号CTLが“x”のとき遅延クロック信号CLK0d(x)mを出力する。CLK0d(x)jmは、制御信号CTLが常に“x”であると仮定した場合にクロック入力ノードNA31に出力されるクロック信号である。
【0078】
図15に示すように、遅延クロック信号CLK0d(x)mの各々は、立ち上がりについては所定の遅延が与えられるが、立ち下がりについては遅延がなく基準クロック信号CLK0に同期している。また、立ち下がりについては電源ノイズの影響を受けないので、クロック信号CLK0d(x)jmの各々は位相の変化を生じない。なお、クロック信号CLK0jも、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。したがって、クロック信号CLK0Aとして選択出力されるクロック信号CLK0j、CLK0d(x)jmの各々の立ち下がりは、基準クロック信号CLK0に同期したものとなる。よって、クロック信号CLK0Aの立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0079】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
【0080】
(付記1)
第1のクロック信号で動作する第1の回路部と、
前記第1のクロック信号をn分周(nは2以上の整数)した第2のクロック信号で動作する第2の回路部と、
前記第1のクロック信号に所定の遅延を与える1つ又は複数の遅延回路と、
前記第1のクロック信号及び前記遅延回路により遅延が与えられた前記第1のクロック信号が入力され、入力される複数のクロック信号の内から制御信号に応じて1つのクロック信号を選択して前記第1の回路部に出力するセレクタとを備えることを特徴とする半導体装置。
(付記2)前記遅延回路は、(n−1)個設けられ、
前記セレクタは、前記第1のクロック信号及び(n−1)個の前記遅延回路により遅延が与えられた前記第1のクロック信号を、前記第1のクロック信号の周期毎に順次選択し出力することを特徴とする付記1記載の半導体装置。
(付記3)前記遅延回路の各々に対応して設けられ、前記第1のクロック信号及び対応する前記遅延回路により遅延が与えられた前記第1のクロック信号が入力されて論理積演算し、演算結果を前記セレクタに出力する論理積演算回路を備え、
前記セレクタは、前記第1のクロック信号及び前記論理積演算回路の出力が入力され、入力される前記第1のクロック信号及び前記論理積演算回路の出力の内からいずれか1つを選択して前記第1の回路部に出力することを特徴とする付記1又は2記載の半導体装置。
(付記4)前記第2のクロック信号は、前記第1のクロック信号を2m分周(mは1以上の整数)したクロック信号であることを特徴とする付記1〜3の何れか1項に記載の半導体装置。
(付記5)前記遅延回路が与える遅延は、前記第2の回路部の動作に伴い発生したノイズによって位相変化した前記第1のクロック信号を前記第1の回路部に供給した場合に、前記第1のクロック信号の連続したn周期での前記第1のクロック信号の立ち上がりにおける位相変化量の最大の位相変化量に対する差分であることを特徴とする付記1〜4の何れか1項に記載の半導体装置。
(付記6)前記遅延回路は、前記第2のクロック信号の立ち上がり及び立ち下がりにおけるノイズによって生じる前記第1のクロック信号の位相変化の差を、前記第1の回路部で同じになるように前記第1のクロック信号に遅延を与えることを特徴とする付記1〜4の何れか1項に記載の半導体装置。
(付記7)前記制御信号は、前記第1のクロック信号を分周したクロック信号に基づいて生成されることを特徴とする付記1〜6の何れか1項に記載の半導体装置。
【符号の説明】
【0081】
DLi 遅延回路
SELi セレクタ
DIVi 分周回路
CBi 回路ブロック
CTLi 制御信号
ANDi 論理積演算回路(AND回路)
【技術分野】
【0001】
本発明は、半導体装置に関し、詳しくはクロックジッタの低減技術に関する。
【背景技術】
【0002】
動作周波数(動作クロックとするクロック信号の周波数)が異なった複数の回路部を有する半導体装置がある。例えば、基準とするクロック信号を動作クロックとして動作するディジタル回路と、そのクロック信号をn分周(2分周や4分周など)したクロック信号を動作クロックとして動作するディジタル回路とを有する半導体装置がある。このような半導体装置では、n分周したクロック信号を動作クロックとするディジタル回路などで発生した電源ノイズが、同じ電源線を共有している他のクロック信号に係る回路に伝搬して影響を与え、クロック信号にジッタがのることがある。
【0003】
図16(A)に、動作周波数が異なる複数の回路ブロックCB51、CB52を有する半導体装置の一例を示す。回路ブロックCB51は、ノードND51より入力される基準となるクロック信号(基準クロック信号)CLK0を動作クロックとして動作する。また、回路ブロックCB52は、例えばディジタル回路であり、ノードND51より入力される基準クロック信号CLK0を分周回路DIV51によって2分周したクロック信号CLK1を動作クロックとして動作する。
【0004】
回路ブロックCB52では、クロック信号CLK1が供給されて動作することによって電源ノイズが発生する。電源ノイズは、同じ電源線を共有する基準クロック信号CLK0に係る回路に伝搬し影響を与える。一般に、ある回路ブロックにおいて、供給されるクロック信号の立ち上がりを基準にして動作する回路規模と、クロック信号の立ち下がりを基準にして動作する回路規模とは異なる。つまり、回路ブロックの動作に伴って、クロック信号の立ち上がりにおいて発生する電源ノイズの大きさと、クロック信号の立ち下がりにおいて発生する電源ノイズの大きさとは異なる。
【0005】
例えば、回路ブロックCB52においてクロック信号CLK1の立ち上がりで動作する回路規模がクロック信号CLK1の立ち下がりで動作する回路規模より大きいと、回路ブロックCB52が動作することで発生する電源ノイズは図16(B)に示すようになる。そのため、伝搬過程でクロック信号CLK1の立ち上がり時の電源ノイズの影響を主に受けることで生じるクロックCLK0の大きな位相変化量Δtrと、クロック信号CLK1の立ち下がり時の電源ノイズの影響を主に受けることで生じるクロック信号CLK0の小さな位相変化量Δtfとが異なる。その結果、クロック信号CLK0にはジッタがのり、回路ブロックCB51のクロック入力ノードNA51におけるクロック信号の波形は、図16(B)に示すCLK0Aのようになる。
【0006】
従来においては、前述のようなクロックジッタを低減する手法として、例えば図16(A)に示したように電源ノイズの発生源となる回路ブロックCB52の電源間にバイパスコンデンサCを挿入している。これにより、回路ブロックCB52で発生する電源ノイズ自体を抑制して、クロック信号CLK0にのるジッタの低減を図っている。
【0007】
また、電圧変化やクロック周波数の変化に追従しデューティ比が良好な2逓倍クロック信号を生成する回路が提案されている(例えば、特許文献1参照。)。特許文献1には、クロック信号と、クロック信号を段階的に遅延させる回路により遅延された複数の遅延クロック信号の内から選択した1つの遅延クロック信号とに基づき、クロック信号の2倍の周波数を有する2逓倍クロック信号を生成することが記載されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2004−350234号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
前述した従来のクロックジッタの低減手法では、電源ノイズの発生源となる回路ブロックの電源間にバイパスコンデンサを挿入することにより、回路面積が増大するという問題がある。
【課題を解決するための手段】
【0010】
本発明の一観点によれば、第1のクロック信号で動作する第1の回路部と、第1のクロック信号をn分周した第2のクロック信号で動作する第2の回路部と、1つ又は複数の遅延回路と、セレクタとを備える半導体装置が提供される。遅延回路は、第1のクロック信号に所定の遅延を与え、セレクタは、第1のクロック信号及び遅延が与えられた第1のクロック信号の内から制御信号に応じて1つのクロック信号を選択して第1の回路部に出力する。
【発明の効果】
【0011】
開示の半導体装置は、遅延回路により第1のクロック信号に所定の遅延を与え、制御信号に応じて第1のクロック信号及び遅延された第1のクロック信号の内から1つのクロック信号を選択して第1の回路部に出力することで、電源ノイズにより生じる位相変化を合わせた第1のクロック信号の位相変化量を各周期で等しくしクロックジッタを低減する効果を奏する。
【図面の簡単な説明】
【0012】
【図1】第1の実施形態における半導体装置の構成例を示す図である。
【図2】第1の実施形態における半導体装置の構成例(2分周クロックの例)を示す図である。
【図3】図2に示す半導体装置の動作例を示すタイミングチャートである。
【図4】第1の実施形態における半導体装置の構成例(4分周クロックの例)を示す図である。
【図5】図4に示す半導体装置の動作例を示すタイミングチャートである。
【図6】図4に示す半導体装置の動作例を示すタイミングチャートである。
【図7】第1の実施形態における半導体装置の構成例(8分周クロックの例)を示す図である。
【図8】図7に示す半導体装置の動作例を示すタイミングチャートである。
【図9】第2の実施形態における半導体装置の構成例を示す図である。
【図10】第2の実施形態における半導体装置の構成例(2分周クロックの例)を示す図である。
【図11】図10に示す半導体装置の動作例を示すタイミングチャートである。
【図12】第2の実施形態における半導体装置の構成例(4分周クロックの例)を示す図である。
【図13】図12に示す半導体装置の動作例を示すタイミングチャートである。
【図14】第2の実施形態における半導体装置の構成例(8分周クロックの例)を示す図である。
【図15】図14に示す半導体装置の動作例を示すタイミングチャートである。
【図16】クロックジッタを説明するための図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態を図面に基づいて説明する。
【0014】
(第1の実施形態)
本発明の第1の実施形態について説明する。
図1は、第1の実施形態における半導体装置の構成例を示すブロック図である。図1において、DL1、DL2、・・・、DL(n−1)は遅延回路であり、SEL1はセレクタである。また、DIV1は分周回路であり、CB1、CB2は回路ブロックである。
【0015】
回路ブロックCB1、CB2は、例えばディジタル回路である。回路ブロックCB1は、基準となるクロック信号(基準クロック信号)を動作クロックとして動作する。また、回路ブロックCB2は、基準クロック信号をn分周(nは2以上の整数)したクロック信号を動作クロックとして動作する。
【0016】
遅延回路DL1、DL2、・・・、DL(n−1)の各々は、ノードND1より入力される基準クロック信号が入力され、基準クロック信号に所定の遅延を与えて遅延クロック信号として出力する。遅延回路DL1、DL2、・・・、DL(n−1)としては、遅延量を設定可能な任意の遅延回路を適用できる。例えば、遅延回路DL1、DL2、・・・、DL(n−1)の各々は、設定する遅延量に応じた1つ又は縦続接続された複数のクロックバッファである。
【0017】
セレクタSEL1は、ノードND1より入力される基準クロック信号が入力されるとともに、遅延回路DL1、DL2、・・・、DL(n−1)により所定の遅延が与えられた遅延クロック信号が入力される。また、セレクタSEL1は、制御信号CTL1が入力される。セレクタSEL1は、制御信号CTL1に応じて、入力される基準クロック信号及び遅延クロック信号の内から1つのクロック信号を選択して出力する。セレクタSEL1の出力(セレクタSEL1より選択出力されたクロック信号)は、回路ブロックCB1のクロック入力ノードNA1を介して回路ブロックCB1に入力される。
【0018】
分周回路DIV1は、ノードND1より入力される基準クロック信号が入力され、基準クロック信号をn分周して出力する。分周回路DIV1の出力(基準クロック信号をn分周したクロック信号)は、回路ブロックCB2のクロック入力ノードNB1を介して回路ブロックCB2に入力される。
【0019】
図1に示すように、電源ノイズの発生源となる回路ブロックCB2が基準クロック信号をn分周したクロック信号を動作クロックとして動作する場合には、基準クロック信号に所定の遅延を与える遅延回路を(n−1)個設ける。これは、回路ブロックCB2に供給されるクロック信号の1周期に対応する基準クロック信号の連続したn周期において、出力先まで(本例では、回路ブロックCB1のクロック入力端)に生じる基準クロック信号の立ち上がりにおける位相変化量(遅延)を等しくするためである。
【0020】
各遅延回路DL1、DL2、・・・、DL(n−1)の遅延量は、出力先までに生じる基準クロック信号の立ち上がりにおける位相変化量を等しくする遅延量である。すなわち、回路ブロックCB2の動作により発生した電源ノイズの影響を受けることで生じる遅延と遅延回路で与える遅延との和が、一定(略一定)となるように各遅延回路DL1、DL2、・・・、DL(n−1)の遅延量が設定される。この遅延量は、発生した電源ノイズの影響を受けることにより位相が変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番大きな位相変化量に対する差分に相当する。各遅延回路DL1、DL2、・・・、DL(n−1)の遅延量は、例えば電源ノイズの発生源となる回路ブロックCB2における電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定する。なお、(n−1)個の遅延回路を設けた場合、制御信号CNTは少なくとも(log2n)ビットの信号である。
【0021】
本実施形態によれば、基準クロック信号の連続したn周期のうち、発生した電源ノイズの影響を受けることにより出力先までに生じる位相変化量が最も大きいものを除く(n−1)の各周期における位相変化量を最も大きいものに合わせるように遅延させる。これにより、基準クロック信号の出力先での位相変化量を等しくし、出力先での基準クロック信号の立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0022】
以下、第1の実施形態における半導体装置の具体例について説明する。なお、以下に説明する例では、基準となるクロック信号(基準クロック信号)をn分周したクロック信号を動作クロックとして動作する回路ブロックでは、クロック信号の立ち上がりで動作する回路の規模が立ち下がりで動作する回路の規模より大きいものとする。すなわち、n分周したクロック信号の立ち上がりにおいて発生する電源ノイズが、n分周したクロック信号の立ち下がりにおいて発生する電源ノイズよりも大きいものとして説明する。
【0023】
図2は、第1の実施形態における半導体装置の具体的な構成例を示す図である。図2に例示する半導体装置は、基準クロック信号CLK0を2分周したクロック信号CLK1を動作クロックとして動作する回路ブロックを有する半導体装置である。
【0024】
図2において、DL11は遅延回路であり、SEL11はセレクタである。また、DIV11は分周回路であり、CB11、CB12は回路ブロックである。回路ブロックCB11、CB12は、例えばディジタル回路である。回路ブロックCB11は、基準クロック信号を動作クロックとして動作し、回路ブロックCB12は、基準クロック信号を2分周したクロック信号を動作クロックとして動作する。
【0025】
遅延回路DL11は、ノードND11より入力される基準クロック信号CLK0が入力され、基準クロック信号に所定の遅延tdを与えて遅延クロック信号CLK0dとして出力する。遅延回路DL11は、入力信号に対して遅延tdを与えるようにされた、1つ又は縦続接続された複数のクロックバッファである。
【0026】
遅延tdは、発生した電源ノイズの影響を受けることにより位相が変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番位相変化量が大きな箇所に対しての差分である。遅延tdは、例えば回路ブロックCB12における電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定される。
【0027】
セレクタSEL11は、ノードND11より入力される基準クロック信号CLK0が入力されるとともに、遅延回路DL11から出力される遅延クロック信号CLK0dが入力される。セレクタSEL11は、入力される制御信号CTL11に応じて、基準クロック信号CLK0又は遅延クロック信号CLK0dを選択して出力する。セレクタSEL11の出力(セレクタSEL11より選択出力されたクロック信号)は、回路ブロックCB11のクロック入力ノードNA11を介して回路ブロックCB11に入力される。
【0028】
分周回路DIV11は、基準クロック信号CLK0が入力され、基準クロック信号CLK0を2分周して出力する。分周回路DIV11の出力は、基準クロック信号CLK0を2分周したクロック信号CLK1として回路ブロックCB12のクロック入力ノードNB11を介して回路ブロックCB12に入力される。また、分周回路DIV11の出力は、制御信号CTLとしてセレクタSEL11に入力される。このように分周回路DIV11の出力をセレクタSEL11の制御信号CTLとして用いることで、制御信号CTLを生成するための回路を別に設ける必要がなく、回路規模の増大を抑制し簡易な回路構成で制御信号CTLを供給することができる。
【0029】
図3は、図2に示した半導体装置の動作例を示すタイミングチャートである。図3において、CLK0はノードND11より入力される基準クロック信号(周期T)であり、CLK1は基準クロック信号CLK0を2分周したクロック信号(周期2T)である。
【0030】
CLK0dは、遅延回路DL11から出力される遅延クロック信号である。遅延クロック信号CLK0dは、遅延回路DL11により遅延td(=Δtr−Δtf)が与えられる。ここで、Δtrは、クロック信号CLK1の立ち上がり時の電源ノイズの影響を受けることにより生じる基準クロック信号CLK0での位相変化量である。また、Δtfは、クロック信号CLK1の立ち下がり時の電源ノイズの影響を受けることにより生じる基準クロック信号CLK0での位相変化量である。
【0031】
CTLはセレクタSEL11に入力される制御信号であり、制御信号CTLが“1”のときセレクタSEL11が基準クロック信号CLK0を出力し、制御信号CTLが“0”のときセレクタSEL11が遅延クロック信号CLK0dを出力する。
【0032】
CLK0jは、制御信号CTLが常に“1”である(セレクタSEL11から基準クロック信号CLK0が常に出力される)と仮定した場合に、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。すなわち、クロック信号CLK0jは、クロック入力ノードNA11に出力されたと仮定した場合の電源ノイズの影響を受けた基準クロック信号CLK0に相当する。図示したように、クロック信号CLK1の立ち上がり時において、クロック信号CLK0jの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtr分遅れる。また、クロック信号CLK1の立ち下がり時において、クロック信号CLK0jの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtf分遅れる。
【0033】
CLK0djは、制御信号CTLが常に“0”である(セレクタSEL11から遅延クロック信号CLK0dが常に出力される)と仮定した場合に、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。すなわち、クロック信号CLK0djは、クロック入力ノードNA11に出力されたと仮定した場合の電源ノイズの影響を受けた遅延クロック信号CLK0dに相当する。図示したように、クロック信号CLK1の立ち上がり時において、クロック信号CLK0djの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtrと遅延tdとの総和分遅れる。また、クロック信号CLK1の立ち下がり時において、クロック信号CLK0djの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtfと遅延tdとの総和分遅れる。
【0034】
CLK0Aは、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。ここで、前述したようにセレクタSEL11は、制御信号CTLが“1”のとき基準クロック信号CLK0を出力し、制御信号CTLが“0”のとき遅延クロック信号CLK0dを出力する。したがって、クロック入力ノードNA11に対して、制御信号CTLが“1”のときにはクロック信号CLK0jがクロック信号CLK0Aとして出力され、制御信号CTLが“0”のときにはクロック信号CLK0djがクロック信号CLK0Aとして出力される。
【0035】
これにより、クロック信号CLK1の立ち上がり時においては、クロック信号CLK0jがクロック信号CLK0Aとして出力され、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtr分遅れてクロック信号が立ち上がる。また、クロック信号CLK1の立ち下がり時においては、クロック信号CLK0djがクロック信号CLK0Aとして出力され、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtf分と遅延tdとの総和分遅れてクロック信号が立ち上がる。ここで、遅延tdは(Δtr−Δtf)であるので、クロック信号CLK1の立ち下がり時におけるクロック信号CLK0Aの立ち上がりは、基準クロック信号CLK0の立ち上がりに対して位相変化量Δtr(=Δtf+(Δtr−Δtf))分遅れることとなる。したがって、クロック信号CLK0Aの位相変化量を等しくして出力先での立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0036】
図4は、第1の実施形態における半導体装置の他の具体的な構成例を示す図である。図4に例示する半導体装置は、基準クロック信号CLK0を4分周したクロック信号CLK2を動作クロックとして動作する回路ブロックを有する半導体装置である。
【0037】
図4において、DL21、DL22、DL23は遅延回路であり、SEL21はセレクタである。また、DIV21は分周回路であり、CB21、CB22は回路ブロックである。回路ブロックCB21、CB22は、例えばディジタル回路である。回路ブロックCB21は、基準クロック信号を動作クロックとして動作し、回路ブロックCB22は、基準クロック信号を4分周したクロック信号を動作クロックとして動作する。
【0038】
遅延回路DL21は、ノードND21より入力される基準クロック信号CLK0が入力され、基準クロック信号に所定の遅延td(10)を与えて遅延クロック信号CLK0d(10)として出力する。また、遅延回路DL22、DL23の各々は、ノードND21より入力される基準クロック信号CLK0が入力され、基準クロック信号に所定の遅延td(01)、td(00)を与えて遅延クロック信号CLK0d(01)、CLK0d(00)として出力する。
【0039】
遅延td(10)、td(01)、td(00)は、電源ノイズの影響を受けることで位相変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番大きな位相変化量に対する差分である。例えば、図5、図6に示した例において、基準クロック信号CLK0を2分周したクロック信号CLK1の立ち上がり時、かつ4分周したクロック信号CLK2の立ち上がり時における基準クロック信号の立ち上がりの位相変化量が最も大きく、Δtdaとする。また、クロック信号CLK1の立ち下がり時かつクロック信号CLK2が“1”である時における基準クロック信号の立ち上がりの位相変化量をΔtdbとする。また、クロック信号CLK1の立ち上がり時かつクロック信号CLK2の立ち下がり時における基準クロック信号の立ち上がりの位相変化量をΔtdcとし、クロック信号CLK1の立ち下がり時かつクロック信号CLK2が“0”である時における基準クロック信号の立ち上がりの位相変化量をΔtddとする。このとき、遅延td(10)は(Δtda−Δtdb)であり、遅延td(01)は(Δtda−Δtdc)であり、遅延td(00)は(Δtda−Δtdd)である。遅延td(10)、td(01)、td(00)は、例えば発生する電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定される。
【0040】
セレクタSEL21は、ノードND21より入力される基準クロック信号CLK0が入力されるとともに、遅延回路DL21、DL22、DL23から出力される遅延クロック信号CLK0d(10)、CLK0d(01)、CLK0d(00)が入力される。セレクタSEL21は、入力される制御信号CTL21に応じて、基準クロック信号CLK0、及び遅延クロック信号CLK0d(10)、CLK0d(01)、CLK0d(00)の内から1つのクロック信号を選択して出力する。セレクタSEL21の出力(セレクタSEL21より選択出力されたクロック信号)は、回路ブロックCB21のクロック入力ノードNA21を介して回路ブロックCB21に入力される。
【0041】
分周回路DIV21は、基準クロック信号CLK0が入力され、基準クロック信号CLK0を4分周して出力する。分周回路DIV21の出力は、基準クロック信号CLK0を4分周したクロック信号CLK2として回路ブロックCB22のクロック入力ノードNB21を介して回路ブロックCB22に入力される。なお、図2に示した例と同様にして、分周回路DIV21によって4分周されたクロック信号CLK2、及びその過程で得られる2分周されたクロック信号CLK1を制御信号CTLとして利用するようにしても良い。この場合には、例えばクロック信号CLK2を上位ビット、クロック信号CLK1を下位ビットとする2ビットの制御信号CTLとして供給すれば良い。
【0042】
図5及び図6は、図4に示した半導体装置の動作例を示すタイミングチャートである。図5には伝搬遅延が0〜T(Tは基準クロック信号CLK0の周期)である場合の例を示しており、図6には伝搬遅延がT〜2Tである場合の例を示している。図5及び図6において、CLK0はノードND21より入力される基準クロック信号(周期T)であり、CLK1は基準クロック信号CLK0を2分周したクロック信号(周期2T)であり、CLK2は基準クロック信号CLK0を4分周したクロック信号(周期4T)である。
【0043】
CLK0d(10)、CLK0d(01)、CLK0d(00)は、遅延回路DL21、DL22、DL23から出力される遅延クロック信号である。CTLはセレクタSEL21に入力される制御信号である。セレクタSEL21は、制御信号CTLが“11”のとき基準クロック信号CLK0を出力し、制御信号CTLが“10”のとき遅延クロック信号CLK0d(10)を出力する。また、セレクタSEL21は、制御信号CTLが“01”のとき遅延クロック信号CLK0d(01)を出力し、制御信号CTLが“00”のとき遅延クロック信号CLK0d(00)を出力する。
【0044】
CLK0jは、制御信号CTLが常に“11”であると仮定した場合に回路ブロックCB21のクロック入力ノードNA21に出力されるクロック信号である。CLK0d(10)jは、制御信号CTLが常に“10”であると仮定した場合にクロック入力ノードNA21に出力されるクロック信号である。CLK0d(01)jは、制御信号CTLが常に“01”であると仮定した場合にノードNA21に出力されるクロック信号であり、CLK0d(00)jは、制御信号CTLが常に“00”であると仮定した場合にノードNA21に出力されるクロック信号である。
【0045】
CLK0Aは、回路ブロックCB21のクロック入力ノードNA21に出力されるクロック信号である。前述したセレクタSEL21の選択出力によりクロック入力ノードNA21には、制御信号CTLが“11”のときクロック信号CLK0jが出力され、制御信号CTLが“10”のときクロック信号CLK0d(10)jが出力される。また、クロック入力ノードNA11には、制御信号CTLが“01”のときクロック信号CLK0d(01)jが出力され、制御信号CTLが“00”のときクロック信号CLK0d(00)jが出力される。
【0046】
このように制御信号CTLが“11”、“10”、“01”、“00”、“11”、・・・と変化することで、クロック信号CLK0j、CLK0d(10)j、CLK0d(01)j、CLK0d(00)jが順にクロック信号CLK0Aとして選択出力される。クロック信号CLK0Aとして選択出力されるときのクロック信号CLK0j、CLK0d(10)j、CLK0d(01)j、CLK0d(00)jの基準クロック信号CLK0の立ち上がりに対する位相変化量はすべてΔtdaとなる。したがって、クロック信号CLK0Aの位相変化量を等しくして出力先での立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0047】
図7は、第1の実施形態における半導体装置の他の具体的な構成例を示す図である。図7に例示する半導体装置は、基準クロック信号CLK0を8分周したクロック信号CLK3を動作クロックとして動作する回路ブロックを有する半導体装置である。
【0048】
図7において、DL31〜DL37は遅延回路であり、SEL31はセレクタである。また、DIV31は分周回路であり、CB31、CB32は回路ブロックである。回路ブロックCB31、CB32は、例えばディジタル回路である。回路ブロックCB31は、基準クロック信号を動作クロックとして動作し、回路ブロックCB32は、基準クロック信号を8分周したクロック信号を動作クロックとして動作する。
【0049】
遅延回路DL31〜DL37の各々は、ノードND31より入力される基準クロック信号CLK0が入力される。遅延回路DL31は、基準クロック信号CLK0に所定の遅延td(110)を与えて遅延クロック信号CLK0d(110)として出力する。また、遅延回路DL32、DL33、DL34は、それぞれ基準クロック信号CLK0に所定の遅延td(101)、td(100)、td(011)を与え遅延クロック信号CLK0d(101)、CLK0d(100)、CLK0d(011)として出力する。同様に、遅延回路DL35、DL36、DL37は、それぞれ基準クロック信号CLK0に所定の遅延td(010)、td(001)、td(000)を与え遅延クロック信号CLK0d(010)、CLK0d(001)、CLK0d(000)として出力する。
【0050】
各遅延回路DL31〜DL37で与えられる遅延tdは、電源ノイズの影響を受けることで位相変化した基準クロック信号を出力先にそのまま供給した場合に、位相変化量を基準クロック信号の立ち上がりで見たとき一番大きな位相変化量に対する差分である。以下において、基準クロック信号CLK0を2分周したクロック信号CLK1が状態A、4分周したクロック信号CLK2が状態B、及び8分周したクロック信号CLK3が状態Cであることを{A,B,C}で示す。また、クロック信号の状態について、“↑”は立ち上がり時を示し、“↓”は立ち下がりを示し、“1”は信号値が1であることを示し、“0”は信号値が0であることを示す。例えば図8の例において、{↑,↑,↑}である時における基準クロック信号の立ち上がりの位相変化量が最も大きく、Δtdaとする。また、{↓,1,1}時における基準クロック信号の立ち上がりの位相変化量をΔtdbとする。また、{↑,↓,1}時における基準クロック信号の立ち上がりの位相変化量をΔtdc、{↓,0,1}時における基準クロック信号の立ち上がりの位相変化量をΔtdd、{↑,↑,↓}時における基準クロック信号の立ち上がりの位相変化量をΔtdeとする。同様に、{↓,1,0}時における基準クロック信号の立ち上がりの位相変化量をΔtdf、{↑,↓,0}時における基準クロック信号の立ち上がりの位相変化量をΔtdg、{↓,0,0}時における基準クロック信号の立ち上がりの位相変化量をΔtdhとする。このとき、遅延td(110)は(Δtda−Δtdb)である。また、遅延td(101)は(Δtda−Δtdc)、遅延td(100)は(Δtda−Δtdd)、遅延td(011)は(Δtda−Δtde)である。同様に、遅延td(010)は(Δtda−Δtdf)、遅延td(001)は(Δtda−Δtdg)、遅延td(000)は(Δtda−Δtdh)である。各遅延回路DL31〜DL37で与えられる遅延tdは、例えば発生する電源ノイズを基準クロック信号に係る回路に与えた際に基準クロック信号にのるジッタをシミュレーション等により求めて決定される。
【0051】
セレクタSEL31は、ノードND31より入力される基準クロック信号CLK0が入力されるとともに、遅延回路DL31〜DL37から出力される遅延クロック信号CLK0d(x)(xは“000”〜“110”)が入力される。セレクタSEL31は、入力される制御信号CTL31に応じて、基準クロック信号CLK0及び遅延クロック信号CLK0d(x)の内から1つのクロック信号を選択して出力する。セレクタSEL31の出力(セレクタSEL31より選択出力されたクロック信号)は、回路ブロックCB31のクロック入力ノードNA31を介して回路ブロックCB31に入力される。
【0052】
分周回路DIV31は、基準クロック信号CLK0が入力され、基準クロック信号CLK0を8分周して出力する。分周回路DIV31の出力は、基準クロック信号CLK0を8分周したクロック信号CLK3として回路ブロックCB32のクロック入力ノードNB31を介して回路ブロックCB32に入力される。なお、図2に示した例と同様にして、分周回路DIV31によって8分周されたクロック信号CLK3と、その過程で得られる4分周されたクロック信号CLK2及び2分周されたクロック信号CLK1とを制御信号CTLとして利用するようにしても良い。この場合には、例えば上位ビット側からクロック信号CLK3、CLK2、CLK1とする3ビットの制御信号CTLとして供給すれば良い。
【0053】
図8は、図7に示した半導体装置の動作例を示すタイミングチャートである。図8には伝搬遅延が0〜T(Tは基準クロック信号CLK0の周期)である場合の例を示している。図8において、CLK0はノードND31より入力される基準クロック信号(周期T)であり、CLK1は基準クロック信号CLK0を2分周したクロック信号(周期2T)である。また、CLK2は基準クロック信号CLK0を4分周したクロック信号(周期4T)であり、CLK3は基準クロック信号CLK0を8分周したクロック信号(周期8T)である。
【0054】
CLK0d(x)(xはバイナリ表記で“000”〜“110”)は、遅延回路DL31〜DL37から出力される遅延クロック信号である。CTLはセレクタSEL31に入力される制御信号である。セレクタSEL31は、制御信号CTLが“111”のとき基準クロック信号CLK0を出力し、制御信号CTLが“x”のとき遅延クロック信号CLK0d(x)を出力する。
【0055】
また、CLK0jは、制御信号CTLが常に“111”であると仮定した場合に回路ブロックCB31のクロック入力ノードNA31に出力されるクロック信号である。CLK0d(x)jは、制御信号CTLが常に“x”であると仮定した場合に回路ブロックCB31のクロック入力ノードNA31に出力されるクロック信号である。
【0056】
CLK0Aは、回路ブロックCB31のクロック入力ノードNA31に出力されるクロック信号である。セレクタSEL31によりクロック入力ノードNA31には、制御信号CTLが“111”のときクロック信号CLK0jが出力され、制御信号CTLが“x”のときクロック信号CLK0d(x)jが出力される。図8に示すように制御信号CTLが順に変化することで、クロック信号CLK0j、CLK0d(110)j、CLK0d(101)j、CLK0d(100)j、CLK0d(011)j、CLK0d(010)j、CLK0d(001)j、CLK0d(000)jが順にクロック信号CLK0Aとして選択出力される。
【0057】
クロック信号CLK0Aとして選択出力されるとき、出力されるクロック信号の基準クロック信号CLK0の立ち上がりに対する位相変化量はすべてΔtdaである。したがって、クロック信号CLK0Aの位相変化量を等しくして出力先での立ち上がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0058】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
前述した第1の実施形態では立ち上がりで見た基準クロック信号の周期を等しくしているが、以下に説明する第2の実施形態は立ち上がりで見た基準クロック信号の周期を等しくするとともに立ち下がりで見た基準クロック信号の周期を等しくするものである。
【0059】
図9は、第2の実施形態における半導体装置の構成例を示すブロック図である。なお、第2の実施形態における半導体装置は、基準クロック信号の立ち下がりが電源ノイズの影響を受けることのない伝搬遅延が0〜T/2(Tは基準クロック信号の周期)の条件で適用可能である。図9において、図1に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
【0060】
図9において、AND1、AND2、・・・、AND(n−1)はAND回路(論理積演算回路)である。iを1〜(n−1)の整数値をとる添え字として、AND回路ANDiは、遅延回路DLiに対応して設けられる。AND回路ANDiは、ノードND1より入力される基準クロック信号及び遅延回路DLiの出力が入力され、その演算結果を遅延クロック信号としてセレクタSEL1に出力する。つまり、AND回路ANDiは、基準クロック信号が“1”である期間において遅延回路DLiにより所定の遅延を与えた基準クロック信号を遅延クロック信号として出力し、基準クロック信号が“0”である期間において“0”を遅延クロック信号として出力する。
【0061】
したがって、セレクタSEL1に供給される遅延クロック信号は、基準クロック信号に対して、立ち上がりにおいて所定の遅延が与えられ、かつ立ち下がりにおいて遅延のない信号となる。これにより、基準クロック信号の出力先での位相変化量を等しくし、出力先での基準クロック信号の立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0062】
以下、第2の実施形態における半導体装置の具体例について説明する。なお、以下に説明する例においても、基準クロック信号をn分周したクロック信号を動作クロックとして動作する回路ブロックでは、クロック信号の立ち上がりで動作する回路の規模が立ち下がりで動作する回路の規模より大きいものとする。
【0063】
図10は、第2の実施形態における半導体装置の具体的な構成例を示す図である。図10に例示する半導体装置は、基準クロック信号CLK0を2分周したクロック信号CLK1を動作クロックとして動作する回路ブロックを有する半導体装置である。図10において、図2に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
【0064】
図10において、AND11はAND回路である。AND回路AND11は、ノードND11より入力される基準クロック信号CLK0、及び遅延回路DL11から出力される遅延クロック信号CLK0dが入力され、その論理積演算結果を遅延クロック信号CLK0dmとしてセレクタSEL11に出力する。セレクタSEL11は、入力される制御信号CTL11に応じて、基準クロック信号CLK0又は遅延クロック信号CLK0dmを選択して出力する。
【0065】
図11は、図10に示した半導体装置の動作例を示すタイミングチャートである。図11において、図3に示した信号に対応する信号には同一の符号を付し、重複する説明は省略する。また、基準クロック信号の立ち上がりに関しては、第1の実施形態と同様であるので説明は省略する。
【0066】
図11において、CLK0dmは、AND回路AND11から出力される遅延クロック信号である。図10に示した半導体装置において、セレクタSEL11は、制御信号CTLが“1”のとき基準クロック信号CLK0を出力し、制御信号CTLが“0”のとき遅延クロック信号CLK0dmを出力する。CLK0djmは、制御信号CTLが常に“0”である(セレクタSEL11から遅延クロック信号CLK0dmが常に出力される)と仮定した場合に、回路ブロックCB11のクロック入力ノードNA11に出力されるクロック信号である。
【0067】
図11に示すように、遅延クロック信号CLK0dmは、立ち上がりについて遅延tdが与えられるが、立ち下がりについては遅延がなく基準クロック信号CLK0に同期している。また、クロック信号CLK0djmは、クロック入力ノードNA11に出力されたと仮定した場合の電源ノイズの影響を受けた遅延クロック信号CLK0dmに相当するが、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。なお、クロック信号CLK0jも、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。したがって、クロック信号CLK0Aとして選択出力されるクロック信号CLK0j、CLK0djmの立ち下がりは、基準クロック信号CLK0に同期したものとなる。
【0068】
これにより、クロック信号CLK0Aの立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0069】
図12は、第2の実施形態における半導体装置の他の具体的な構成例を示す図である。図12に例示する半導体装置は、基準クロック信号CLK0を4分周したクロック信号CLK2を動作クロックとして動作する回路ブロックを有する半導体装置である。図12において、図4に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
【0070】
図12において、AND21、AND22、AND23はAND回路である。AND回路AND21は、ノードND21より入力される基準クロック信号CLK0及び遅延回路DL21から出力される遅延クロック信号CLK0d(10)が入力され、その演算結果を遅延クロック信号CLK0d(10)mとしてセレクタSEL21に出力する。AND回路AND22は、ノードND21より入力される基準クロック信号CLK0及び遅延回路DL22から出力される遅延クロック信号CLK0d(01)が入力され、その演算結果を遅延クロック信号CLK0d(01)mとしてセレクタSEL21に出力する。AND回路AND23は、ノードND21より入力される基準クロック信号CLK0及び遅延回路DL23から出力される遅延クロック信号CLK0d(00)が入力され、その演算結果を遅延クロック信号CLK0d(00)mとしてセレクタSEL21に出力する。セレクタSEL21は、入力される制御信号CTL21に応じて、基準クロック信号CLK0、及び遅延クロック信号CLK0d(10)m、CLK0d(01)m、CLK0d(00)mの内から1つのクロック信号を選択して出力する。
【0071】
図13は、図12に示した半導体装置の動作例を示すタイミングチャートである。図12において、図5等に示した信号に対応する信号には同一の符号を付し、重複する説明は省略する。また、基準クロック信号の立ち上がりに関しては、第1の実施形態と同様であるので説明は省略する。
【0072】
図13において、CLK0d(10)m、CLK0d(01)m、CLK0d(00)mは、AND回路AND21、AND22、AND23から出力される遅延クロック信号である。図12に示した半導体装置において、セレクタSEL21は、制御信号CTLが“11”のとき基準クロック信号CLK0を出力し、制御信号CTLが“10”のとき遅延クロック信号CLK0d(10)mを出力する。また、セレクタSEL21は、制御信号CTLが“01”のとき遅延クロック信号CLK0d(01)mを出力し、制御信号CTLが“00”のとき遅延クロック信号CLK0d(00)mを出力する。
【0073】
CLK0d(10)jmは、制御信号CTLが常に“10”であると仮定した場合にクロック入力ノードNA21に出力されるクロック信号である。CLK0d(01)jmは、制御信号CTLが常に“01”であると仮定した場合にノードNA21に出力されるクロック信号であり、CLK0d(00)jmは、制御信号CTLが常に“00”であると仮定した場合にノードNA21に出力されるクロック信号である。
【0074】
図13に示すように、遅延クロック信号CLK0d(10)m、CLK0d(01)m、CLK0d(00)mは、立ち上がりについては所定の遅延が与えられるが、立ち下がりについては遅延がなく基準クロック信号CLK0に同期している。また、立ち下がりについては電源ノイズの影響を受けないので、クロック信号CLK0d(10)jm、CLK0d(01)jm、CLK0d(00)jmは位相の変化を生じない。なお、クロック信号CLK0jも、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。したがって、クロック信号CLK0Aとして選択出力されるクロック信号CLK0j、CLK0d(10)jm、CLK0d(01)jm、CLK0d(00)jmの立ち下がりは、基準クロック信号CLK0に同期したものとなる。よって、クロック信号CLK0Aの立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0075】
図14は、第2の実施形態における半導体装置の他の具体的な構成例を示す図である。図14に例示する半導体装置は、基準クロック信号CLK0を8分周したクロック信号CLK3を動作クロックとして動作する回路ブロックを有する半導体装置である。図14において、図7に示した構成要素と同一の機能を有する構成要素には同一の符号を付し、重複する説明は省略する。
図14において、AND31〜AND37はAND回路である。AND回路AND31〜AND37の各々は、ノードND31より入力される基準クロック信号CLK0が入力されるとともに、対応する遅延回路DL31〜DL37からの遅延クロック信号CLK0d(x)(xは“000”〜“110”)が入力される。AND回路AND31〜AND37は、基準クロック信号CLK0と遅延クロック信号CLK0d(x)との論理積演算結果を遅延クロック信号CLK0d(x)mとしてセレクタSEL31に出力する。セレクタSEL31は、入力される制御信号CTL31に応じて、基準クロック信号CLK0、及び遅延クロック信号CLK0d(x)mの内から1つのクロック信号を選択して出力する。
【0076】
図15は、図14に示した半導体装置の動作例を示すタイミングチャートである。図15において、図8に示した信号に対応する信号には同一の符号を付し、重複する説明は省略する。また、基準クロック信号の立ち上がりに関しては、第1の実施形態と同様であるので説明は省略する。
【0077】
図15において、CLK0d(x)m(xは“000”〜“110”)は、AND回路AND31〜AND37から出力される遅延クロック信号である。図14に示した半導体装置において、セレクタSEL31は、制御信号CTLが“111”のとき基準クロック信号CLK0を出力し、制御信号CTLが“x”のとき遅延クロック信号CLK0d(x)mを出力する。CLK0d(x)jmは、制御信号CTLが常に“x”であると仮定した場合にクロック入力ノードNA31に出力されるクロック信号である。
【0078】
図15に示すように、遅延クロック信号CLK0d(x)mの各々は、立ち上がりについては所定の遅延が与えられるが、立ち下がりについては遅延がなく基準クロック信号CLK0に同期している。また、立ち下がりについては電源ノイズの影響を受けないので、クロック信号CLK0d(x)jmの各々は位相の変化を生じない。なお、クロック信号CLK0jも、立ち下がりについては電源ノイズの影響を受けず位相の変化を生じない。したがって、クロック信号CLK0Aとして選択出力されるクロック信号CLK0j、CLK0d(x)jmの各々の立ち下がりは、基準クロック信号CLK0に同期したものとなる。よって、クロック信号CLK0Aの立ち上がり及び立ち下がりについて周期をそろえることができ、回路面積の増大を抑制し、かつクロックジッタを低減することができる。
【0079】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
【0080】
(付記1)
第1のクロック信号で動作する第1の回路部と、
前記第1のクロック信号をn分周(nは2以上の整数)した第2のクロック信号で動作する第2の回路部と、
前記第1のクロック信号に所定の遅延を与える1つ又は複数の遅延回路と、
前記第1のクロック信号及び前記遅延回路により遅延が与えられた前記第1のクロック信号が入力され、入力される複数のクロック信号の内から制御信号に応じて1つのクロック信号を選択して前記第1の回路部に出力するセレクタとを備えることを特徴とする半導体装置。
(付記2)前記遅延回路は、(n−1)個設けられ、
前記セレクタは、前記第1のクロック信号及び(n−1)個の前記遅延回路により遅延が与えられた前記第1のクロック信号を、前記第1のクロック信号の周期毎に順次選択し出力することを特徴とする付記1記載の半導体装置。
(付記3)前記遅延回路の各々に対応して設けられ、前記第1のクロック信号及び対応する前記遅延回路により遅延が与えられた前記第1のクロック信号が入力されて論理積演算し、演算結果を前記セレクタに出力する論理積演算回路を備え、
前記セレクタは、前記第1のクロック信号及び前記論理積演算回路の出力が入力され、入力される前記第1のクロック信号及び前記論理積演算回路の出力の内からいずれか1つを選択して前記第1の回路部に出力することを特徴とする付記1又は2記載の半導体装置。
(付記4)前記第2のクロック信号は、前記第1のクロック信号を2m分周(mは1以上の整数)したクロック信号であることを特徴とする付記1〜3の何れか1項に記載の半導体装置。
(付記5)前記遅延回路が与える遅延は、前記第2の回路部の動作に伴い発生したノイズによって位相変化した前記第1のクロック信号を前記第1の回路部に供給した場合に、前記第1のクロック信号の連続したn周期での前記第1のクロック信号の立ち上がりにおける位相変化量の最大の位相変化量に対する差分であることを特徴とする付記1〜4の何れか1項に記載の半導体装置。
(付記6)前記遅延回路は、前記第2のクロック信号の立ち上がり及び立ち下がりにおけるノイズによって生じる前記第1のクロック信号の位相変化の差を、前記第1の回路部で同じになるように前記第1のクロック信号に遅延を与えることを特徴とする付記1〜4の何れか1項に記載の半導体装置。
(付記7)前記制御信号は、前記第1のクロック信号を分周したクロック信号に基づいて生成されることを特徴とする付記1〜6の何れか1項に記載の半導体装置。
【符号の説明】
【0081】
DLi 遅延回路
SELi セレクタ
DIVi 分周回路
CBi 回路ブロック
CTLi 制御信号
ANDi 論理積演算回路(AND回路)
【特許請求の範囲】
【請求項1】
第1のクロック信号で動作する第1の回路部と、
前記第1のクロック信号をn分周(nは2以上の整数)した第2のクロック信号で動作する第2の回路部と、
前記第1のクロック信号に所定の遅延を与える1つ又は複数の遅延回路と、
前記第1のクロック信号及び前記遅延回路により遅延が与えられた前記第1のクロック信号が入力され、入力される複数のクロック信号の内から制御信号に応じて1つのクロック信号を選択して前記第1の回路部に出力するセレクタとを備えることを特徴とする半導体装置。
【請求項2】
前記遅延回路は、(n−1)個設けられ、
前記セレクタは、前記第1のクロック信号及び(n−1)個の前記遅延回路により遅延が与えられた前記第1のクロック信号を、前記第1のクロック信号の周期毎に順次選択し出力することを特徴とする請求項1記載の半導体装置。
【請求項3】
前記遅延回路の各々に対応して設けられ、前記第1のクロック信号及び対応する前記遅延回路により遅延が与えられた前記第1のクロック信号が入力されて論理積演算し、演算結果を前記セレクタに出力する論理積演算回路を備え、
前記セレクタは、前記第1のクロック信号及び前記論理積演算回路の出力が入力され、入力される前記第1のクロック信号及び前記論理積演算回路の出力の内からいずれか1つを選択して前記第1の回路部に出力することを特徴とする請求項1又は2記載の半導体装置。
【請求項4】
前記遅延回路が与える遅延は、前記第2の回路部の動作に伴い発生したノイズによって位相変化した前記第1のクロック信号を前記第1の回路部に供給した場合に、前記第1のクロック信号の連続したn周期での前記第1のクロック信号の立ち上がりにおける位相変化量の最大の位相変化量に対する差分であることを特徴とする請求項1〜3の何れか1項に記載の半導体装置。
【請求項5】
前記制御信号は、前記第1のクロック信号を分周したクロック信号に基づいて生成されることを特徴とする請求項1〜4の何れか1項に記載の半導体装置。
【請求項1】
第1のクロック信号で動作する第1の回路部と、
前記第1のクロック信号をn分周(nは2以上の整数)した第2のクロック信号で動作する第2の回路部と、
前記第1のクロック信号に所定の遅延を与える1つ又は複数の遅延回路と、
前記第1のクロック信号及び前記遅延回路により遅延が与えられた前記第1のクロック信号が入力され、入力される複数のクロック信号の内から制御信号に応じて1つのクロック信号を選択して前記第1の回路部に出力するセレクタとを備えることを特徴とする半導体装置。
【請求項2】
前記遅延回路は、(n−1)個設けられ、
前記セレクタは、前記第1のクロック信号及び(n−1)個の前記遅延回路により遅延が与えられた前記第1のクロック信号を、前記第1のクロック信号の周期毎に順次選択し出力することを特徴とする請求項1記載の半導体装置。
【請求項3】
前記遅延回路の各々に対応して設けられ、前記第1のクロック信号及び対応する前記遅延回路により遅延が与えられた前記第1のクロック信号が入力されて論理積演算し、演算結果を前記セレクタに出力する論理積演算回路を備え、
前記セレクタは、前記第1のクロック信号及び前記論理積演算回路の出力が入力され、入力される前記第1のクロック信号及び前記論理積演算回路の出力の内からいずれか1つを選択して前記第1の回路部に出力することを特徴とする請求項1又は2記載の半導体装置。
【請求項4】
前記遅延回路が与える遅延は、前記第2の回路部の動作に伴い発生したノイズによって位相変化した前記第1のクロック信号を前記第1の回路部に供給した場合に、前記第1のクロック信号の連続したn周期での前記第1のクロック信号の立ち上がりにおける位相変化量の最大の位相変化量に対する差分であることを特徴とする請求項1〜3の何れか1項に記載の半導体装置。
【請求項5】
前記制御信号は、前記第1のクロック信号を分周したクロック信号に基づいて生成されることを特徴とする請求項1〜4の何れか1項に記載の半導体装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2011−160097(P2011−160097A)
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願番号】特願2010−18787(P2010−18787)
【出願日】平成22年1月29日(2010.1.29)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願日】平成22年1月29日(2010.1.29)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]