ラッチ回路
【課題】回路面積が小さく、かつ省電力化したラッチ回路を提供する。
【解決手段】複数の論理回路(第1の論理回路11、第2の論理回路13、第3の論理回路15、及び第4の論理回路17)によりラッチ回路1を構成し、選択信号の論理レベルに応じて差動動作とシングルエンド動作の切り替えを行う。また、これらの複数の論理回路11,13,15,17へのクロック入力信号に応じて個々の論理回路をON状態又はOFF状態にすることで、差動動作とシングルエンド動作それぞれにおいてスルー動作とホールド動作をさせる。
【解決手段】複数の論理回路(第1の論理回路11、第2の論理回路13、第3の論理回路15、及び第4の論理回路17)によりラッチ回路1を構成し、選択信号の論理レベルに応じて差動動作とシングルエンド動作の切り替えを行う。また、これらの複数の論理回路11,13,15,17へのクロック入力信号に応じて個々の論理回路をON状態又はOFF状態にすることで、差動動作とシングルエンド動作それぞれにおいてスルー動作とホールド動作をさせる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ラッチ回路に関する。
【背景技術】
【0002】
デジタル計算機や伝送機器等の電子装置では、多機能化とともに高速処理及び省電力駆動の要求があり、それに伴って、これらの電子装置に搭載するLSI(集積回路)にも高速化・省電力化が求められている。このような高速化の要求に応えるため、LSIにおいて、シングルエンド信号で駆動する回路(シングルエンド回路)に代えて、差動信号で駆動する回路(差動回路)を用いた回路設計が行われている。これは、差動回路がシングルエンド回路よりも高速で動作可能であり、入力信号間のスキューを減らすことができるからである。
【0003】
そこで、外部からの制御信号により、電圧駆動型シングルエンド伝送と電流駆動型差動伝送とを選択的に切り替えることのできるインタフェース回路(ドライバ回路)が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−110317号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
差動回路はシングルエンド回路よりも電力消費が大きいので、省電力化の要求に応えるための方策が必要となる。例えば、集積回路(LSI)の動作速度が可変で、そのLSIに内蔵した差動回路が低速で動作する場合、差動回路が高速で動作可能であることが、そのLSIで求められている仕様を超えた過剰仕様(いわゆる、オーバースペック)となる。その結果、LSIが本来必要とする電力以上の電力を無駄に消費するという問題がある。
【0006】
上述したような動作回路を適宜、高速動作/低速動作に切り替えることのできる集積回路(LSI)は、差動ラッチ回路を駆動中はシングルエンドラッチ回路が不要となり、逆にシングルエンドラッチ回路を駆動中は差動ラッチ回路が不要となる。つまり、従来の集積回路では、本来の動作上において不要な回路を付加することになり、集積回路において回路面積が増大するという問題がある。さらに、上述した従来のLSIは、動作上、不要な回路が常時動作しているため電力の消費が大きく、LSI全体としての省電力化を図ることができない、という問題がある。
【0007】
一つの側面では、本発明は、低速動作時のラッチ回路の省電力化を図ることを目的とする。
【課題を解決するための手段】
【0008】
一の案では、ラッチ回路は、第1の入力端子より入力信号を受け第1の出力信号を出力する第1の論理回路を備える。このラッチ回路は、第2の入力端子より前記入力信号を論理反転させた反転入力信号を受け第2の出力信号を出力する第2の論理回路を備える。このラッチ回路は、前記第1の出力信号と第4の出力信号とを取り込んで第3の出力信号を出力する第3の論理回路を備える。また、このラッチ回路は、前記第2の出力信号と前記第3の出力信号とを取り込んで前記第4の出力信号を出力する第4の論理回路を備える。このラッチ回路は、入力された選択信号の論理レベルに応じて、前記第1の論理回路、前記第2の論理回路、前記第3の論理回路、及び前記第4の論理回路を含む差動動作回路による差動動作とシングルエンド動作回路によるシングルエンド動作とを切り替える。このラッチ回路は、入力されたクロック信号及び該クロック信号を論理反転させた反転クロック信号の論理レベルにより、以下のように動作する。すなわち、このラッチ回路は、前記差動動作において前記入力信号及び前記反転入力信号それぞれを当該ラッチ回路の第1の出力端子及び第2の出力端子よりスルー状態で出力する動作と、該入力信号及び該反転入力信号をホールド状態にする動作とを行う。また、このラッチ回路は、前記シングルエンド動作において前記入力信号を前記第1の出力端子よりスルー状態で出力する動作と、該入力信号をホールド状態にする動作とを行う。
【発明の効果】
【0009】
一態様によれば、低速動作時のラッチ回路の省電力化を図ることができる。
【図面の簡単な説明】
【0010】
【図1】実施形態に係るラッチ回路の概略構成を示すブロック図である。
【図2】実施形態に係るラッチ回路の詳細構成を示す回路図である。
【図3】実施形態に係るラッチ回路の第1の差動動作モードに対応する信号の流れを示す回路図である。
【図4】実施形態に係るラッチ回路の第2の差動動作モードに対応する信号の流れを示す回路図である。
【図5】実施形態に係るラッチ回路の第1のシングルエンド動作モードに対応する信号の流れを示す回路図である。
【図6】実施形態に係るラッチ回路の第2のシングルエンド動作モードに対応する信号の流れを示す回路図である。
【図7】実施形態に係るラッチ回路の真理値表である。
【図8】実施形態に係るラッチ回路の差動動作時における動作タイミングを示すタイミングチャートである。
【図9】実施形態に係るラッチ回路のシングルエンド動作時における動作タイミングを示すタイミングチャートである。
【図10】実施形態に係るラッチ回路により構成したフリップフロップ回路の例を示す図である。
【図11】実施形態に係るラッチ回路により構成した分周器の例を示す図である。
【図12】実施形態に係るラッチ回路のシングルエンド動作時にデータ入力端子DN(N側)を使用した構成例を示す図である。
【図13】差動ラッチ回路とシングルエンドラッチ回路に対してクロック分配回路とセレクタを付加した比較例を示す図である。
【発明を実施するための形態】
【0011】
集積回路(LSI)を高速に動作させるとともに、低速動作時において省電力化を達成するための構成として、例えば、以下の構成が考えられる。すなわち、LSIに高速動作用の差動回路と、低速動作用のシングルエンド回路とを1つずつ用意し、高速動作時に差動回路を選択し、低速動作時にはシングルエンド回路を選択する。より具体的には、図13に示すように、LSIに差動ラッチ回路501とシングルエンドラッチ回路503とを個別に設ける。そして、クロック分配回路505とセレクタ507をLSIに付加して、差動ラッチ回路501とシングルエンドラッチ回路503を適宜、切り替える構成が考えられる。
【0012】
図13に示す構成では、高速動作時にクロック分配回路505から差動ラッチ回路501にのみクロックを供給し、セレクタ507によって、差動ラッチ回路501からの出力を選択する。また、低速時には、シングルエンドラッチ回路503にのみクロックを供給して差動ラッチ回路501の動作を停止し、セレクタ507によって、低消費駆動のシングルエンドラッチ回路503の出力を選択する。また、図13の構成では、差動ラッチ回路501とシングルエンドラッチ回路503とで共通に用いられるクロック分配回路505とセレクタ507をLSIに設ける必要がある。そのため、LSIの回路面積が増大する。また、クロック分配回路505は、常時動作しているため電力の消費が大きく、LSI全体としての省電力化を図ることは難しい。
【0013】
さらに、図13の構成では、差動データ入力端子DP,DNのうちDPが、差動ラッチ回路501とシングルエンドラッチ回路503の双方の入力端に接続されている。そのため、DPとDNとでファンアウト数が異なり、負荷がアンバランスになる。一方、このような入力端のアンバランスを解消するには、バランスをとるための負荷調整手段が用いられる。
【0014】
そこで、以下に述べるラッチ回路により、回路面積の増大を最小限に抑えつつ、低速動作時の省電力化を実現する。以下、実施形態について、図面を参照しながら詳細に説明する。
【0015】
図1は、本実施形態に係るラッチ回路の概略構成を示すブロック図である。図2は、本実施形態に係るラッチ回路の詳細構成を示す回路図である。また、図3〜図6は、本実施形態に係るラッチ回路の動作モードに対応した信号の流れ等を示す回路図である。
【0016】
本実施形態に係るラッチ回路1は、例えば、所定の機能を有する集積回路(LSI)等に内蔵される。そして、図1に示すように1ビット幅の選択信号SELを制御信号とすることで、ラッチ回路1を差動回路として動作させるか、あるいはシングルエンド回路として動作させるかの切り替えができる。具体的には、ラッチ回路1に高速クロックを供給して高速動作させる場合、外部からの制御により選択信号SELを論理“L”レベル(適宜、SEL=“0”とも表記する)にして、ラッチ回路1を差動回路として動作させる。この差動動作では、差動クロック入力CKP,CKNの値に応じて、差動データ入力DP,DNをそのまま差動データ出力QP,QNとして出力し、あるいは入力されたデータDP,DNの状態を保持(ホールド)する。なお、クロック入力CKPとクロック入力CKNは、相互に論理反転した関係にある(以降において、クロック入力CKNを反転クロック入力ともいう)。また、データ入力DPとデータ入力DNも、相互に論理反転した関係にあり(データ入力DNを反転データ入力ともいう)、データ出力QPとデータ出力QNも、相互に論理反転した関係にある(データ出力QNを反転データ出力ともいう)。
【0017】
一方、ラッチ回路1を低速クロックで動作させる場合、選択信号SELを論理“H”レベル(適宜、SEL=“1”とも表記する)にして、ラッチ回路1をシングルエンド回路として動作させる。この場合、クロック入力CKPの論理値に応じて、データ入力DPをそのままシングルエンドのデータ出力QPとして出力し、あるいはデータ入力DPの状態を保持(ホールド)する。
【0018】
なお、ラッチ回路1を差動回路、あるいはシングルエンド回路として動作させる選択信号SELの論理は、上記の論理に限定されず、上記と逆の論理であってもよい。
【0019】
図2に示すように、本実施形態に係るラッチ回路1は、4個の論理回路11,13,15,17と、NORゲート回路21,23と、スイッチ回路(トランスファーゲートともいう)25,27とを備える。各論理回路11,13,15,17は、P型(Pチャンネル)MOSトランジスタのドレイン電極を、その下段に位置するP型MOSトランジスタのソース電極に接続する等によって、P型MOSトランジスタを3段に直列接続する。さらに、N型(Nチャンネル)MOSトランジスタのソース電極を、その下段に位置するN型MOSトランジスタのドレイン電極に接続することで、N型MOSトランジスタを3段に直列接続する。そして、これら3段に接続されたP型MOSトランジスタと、3段に接続されたN型MOSトランジスタとを、さらに直列に接続した構成を有する。また、スイッチ回路(トランスファーゲート)25,27は、P型MOSトランジスタとN型MOSトランジスタとを並列に接続した構成を有する。
【0020】
なお、以降において、論理回路11を第1の論理回路、論理回路13を第2の論理回路、論理回路15を第3の論理回路、論理回路17を第4の論理回路と呼ぶ。また、これら第1〜第4の論理回路11,13,15,17を構成する個々のMOSトランジスタを、電源側からグラウンド(GND)側へ順に第1〜第6トランジスタと呼ぶ。例えば、第1の論理回路11では、第1トランジスタTr11−1、第2トランジスタTr11−2、第3トランジスタTr11−3、第4トランジスタTr11−4、第5トランジスタTr11−5、第6トランジスタTr11−6と呼ぶ。
【0021】
同様に、第2の論理回路13では、第1トランジスタTr13−1、第2トランジスタTr13−2、第3トランジスタTr13−3、第4トランジスタTr13−4、第5トランジスタTr13−5、第6トランジスタTr13−6と呼ぶ。また、第3の論理回路15では、第1トランジスタTr15−1、第2トランジスタTr15−2、第3トランジスタTr15−3、第4トランジスタTr15−4、第5トランジスタTr15−5、第6トランジスタTr15−6と呼ぶ。さらに、第4の論理回路17では、第1トランジスタTr17−1、第2トランジスタTr17−2、第3トランジスタTr17−3、第4トランジスタTr17−4、第5トランジスタTr17−5、第6トランジスタTr17−6と呼ぶ。
【0022】
第1の論理回路11の第1トランジスタTr11−1の入力は、論理“L”レベルに固定され、第6トランジスタTr11−6の入力は、論理“H”レベルに固定されており、トランジスタTr11−1とTr11−6は、常時ON状態になっている。第2トランジスタTr11−2と第5トランジスタTr11−5には、データ入力DPが入力され、第3トランジスタTr11−3には、反転クロック入力CKNが入力され、第4トランジスタTr11−4には、クロック入力CKPが入力され。また、第2の論理回路13の第1トランジスタTr13−1には、選択信号SELが入力され、第6トランジスタTr13−6には、反転選択信号/SELが入力される(ここで、信号名に付した符号/は、論理反転を意味する)。第2トランジスタTr13−2と第5トランジスタTr13−5には、反転データ入力DNが入力され、第3トランジスタTr13−3には、反転クロック入力CKNが入力され、第4トランジスタTr13−4には、クロック入力CKPが入力される。
【0023】
第3の論理回路15の第1トランジスタTr15−1には、選択信号SELが入力され、第6トランジスタTr15−6には、反転選択信号/SELが入力される。第2トランジスタTr15−2と第5トランジスタTr15−5には、第1の論理回路11の出力信号と第4の論理回路17の出力信号とが入力される。第3トランジスタTr15−3には、クロック入力CKPが入力され、第4トランジスタTr15−4には、反転クロック入力CKNが入力される。また、第4の論理回路17の第1トランジスタTr17−1の入力は、論理“L”レベルに固定され、第6トランジスタTr17−6の入力は、論理“H”レベルに固定され、Tr17−1とTr17−6は、常時ON状態になっている。第2トランジスタTr17−2と第5トランジスタTr17−5には、第2の論理回路13の出力信号と第3の論理回路15の出力信号とが入力される。第3トランジスタTr17−3には、クロック入力CKPが入力され、第4トランジスタTr17−4には、反転クロック入力CKNが入力される。
【0024】
なお、図2に示すように、NORゲート回路21の2入力端子のうち1入力端子は、論理“L”レベルに固定され、NORゲート回路23の2入力端子のうち1入力端子には、選択信号SELが入力される。
【0025】
次に、図2に示すラッチ回路の動作について詳細に説明する。図2に示すラッチ回路1は、外部から供給される動作クロックの周波数に依存する動作速度で動作するとともに、選択信号の論理値に応じて差動回路又はシングルエンド回路に切り替えられて動作する。また、差動回路における差動動作及びシングルエンド回路によるシングルエンド動作それぞれにおいて、入力データをそのまま出力するトランスペアレント(パススルー)モードと、データ入力の状態を維持するホールド(ラッチ)モードとで動作する。
【0026】
<第1の差動動作モード>
図2に示すラッチ回路1における差動動作のうち、差動入力データをそのまま出力する第1の差動動作モードについて説明する。ラッチ回路1に高速クロック(例えば、10GHz)を供給してラッチ回路1を高速動作させる場合、選択信号SELを“0”にして、ラッチ回路1を差動動作モードに切り替える。論理“0”レベルの選択信号SELは、第2の論理回路13の第1トランジスタTr13−1のゲート電極、及び第3の論理回路15の第1トランジスタTr15−1のゲート電極、及びNORゲート回路23の2入力端子のうち1入力端子にそれぞれ入力される。また、第2の論理回路13のトランジスタTr13−6のゲート電極、及び第3の論理回路15の第6トランジスタTr15−6のゲート電極には、選択信号SEL=“0”を論理反転させた反転選択信号(/SEL=“1”)が入力される。
【0027】
上記のように選択信号SELが論理設定されたラッチ回路1は、クロック入力CKPが“1”で、反転クロック入力CKNが“0”、データ入力DPが“0”で、反転データ入力DNが“1”のとき、以下のように動作する。すなわち、この場合には第1の論理回路11の第1〜第3トランジスタTr11−1〜Tr11−3がすべてON(導通)となって第1の論理回路11が作動状態となる。そして、第1の論理回路11の出力端から論理“1”の信号が出力される。
【0028】
同様に、第2の論理回路13の第4〜第6トランジスタTr13−4〜Tr13−6がすべてONとなって、第2の論理回路13から論理“0”が出力される。そして、2入力のNORゲート回路21,23は、インバータとして機能する。そのため、NORゲート回路21は、第1の論理回路11からの出力“1”を受けて“0”を出力し、NORゲート回路23は、第2の論理回路13からの出力“0”を受けて“1”を出力する。その結果、ラッチ回路1のデータ出力QPは、データ入力DPと同じ“0”となり、反転データ出力QNは、反転データ入力DNと同じ“1”となる。
【0029】
一方、第1の論理回路11は、上記と同じクロック入力状態(クロック入力CKP=“1”、かつ反転クロック入力CKN=“0”)にあるときに、データ入力DPが“1”で、反転データ入力DNが“0”となった場合には、以下のように動作する。すなわち、第1の論理回路11の第4〜第6トランジスタTr11−4〜Tr11−6がすべてONとなり、第1の論理回路11の出力は“0”となる。また、第2の論理回路13の第1〜第3トランジスタTr13−1〜Tr13−3がすべてONとなり、第2の論理回路13の出力は“1”となる。そして、NORゲート回路21は、第1の論理回路11の出力“0”を受けて“1”を出力し、NORゲート回路23は、第2の論理回路13の出力“1”を受けて“0”を出力する。よって、ラッチ回路1のデータ出力QPは、データ入力DPと同じ“1”となり、反転データ出力QNは、反転データ入力DNと同じ“0”となる。
【0030】
上記のクロック入力状態(クロック入力CKPの論理レベル=“1”、反転クロック入力CKNの論理レベル=“0”)のとき、第3の論理回路15は、以下のように動作する。すなわち、第3の論理回路15の第3トランジスタTr15−3がCKP=“1”を受けてOFFとなり、第4トランジスタTr15−4がCKN=“0”を受けてOFFとなる。そのため、第1の論理回路11から第3の論理回路15への入力が、“0”,“1”のいずれであっても、第3の論理回路15はOFF(非導通)となり、不作動状態を維持する。
【0031】
同様に、第4の論理回路17の第3トランジスタTr17−3がCKP=“1”を受けてOFFとなり、第4トランジスタTr17−4がCKN=“0”を受けてOFFとなる。そのため、第2の論理回路13から第4の論理回路17への入力が“0”,“1”のいずれであっても、第4の論理回路17は不作動状態を維持する。また、スイッチ回路(トランスファーゲート)25,27もOFF状態を維持する。
【0032】
図3は、第1の差動動作モードで動作しているラッチ回路1における信号の流れを示している。図3に示すようにラッチ回路1は、第3の論理回路15と第4の論理回路17がOFF状態となり、第1の論理回路11と第2の論理回路13が同時にON状態となって差動回路として動作する。そして、図3において二点差線で示すように、入力データDP,DNがラッチ回路1をスルーして、そのまま出力データQP,QNとして出力されるパススルーで動作していることが分かる。
【0033】
図7は、ラッチ回路1の動作を示す真理値表である。上述したように選択信号SEL=“0”のとき、ラッチ回路1が差動回路として動作し、クロック入力CKPが“1”で反転クロック入力CKNが“0”の場合、ラッチ回路1の動作は、図7の真理値表の(1),(2)に示すようになる。つまり、データ入力DP,DNの値がそのままデータ出力QP,QNとして出力される(すなわち、入力値をそのまま出力するパススルー動作)。
【0034】
図8は、ラッチ回路1が差動回路として動作しているときのタイミングチャートである。図8において、選択信号SEL=“0”、CKP=“1”でCKN=“0”のとき、つまり、タイミングt1〜t2,t3〜t4,t5〜t6において、データ入力DP,DNの値それぞれが、そのままデータ出力QP,QNとして出力される。これは、ラッチ回路1におけるパススルーの差動動作である。
【0035】
<第2の差動動作モード>
次に、図2に示すラッチ回路1における差動動作のうち、差動入力データをラッチする第2の差動動作モードについて説明する。ラッチ回路1を差動動作させる場合、上述した第1の差動動作モードと同様、選択信号SEL=“0”とする。そして、クロック入力CKPが“0”で、反転クロック入力CKNが“1”のときは、データ入力DP,DNが、それぞれ“0”,“1”、あるいは“1”,“0”のいずれであっても、ラッチ回路1は以下のように動作する。すなわち、この場合、図2のラッチ回路1の第1の論理回路11の第1〜第3トランジスタTr11−1〜Tr11−3がすべてONとなる論理入力の組み合わせが生じない。また、第2の論理回路13の第4〜第6トランジスタTr13−4〜Tr13−6がすべてONとなる論理入力の組み合わせも生じない。よって、この場合には、第1の論理回路11、及び第2の論理回路13はいずれもOFF状態となる。
【0036】
また、図2に示すように、ラッチ回路1では、第3の論理回路15の出力が第4の論理回路17の入力に接続され、第4の論理回路17の出力が第3の論理回路15の入力に接続された、たすきがけのフィードバック構成となっている。つまり、第3の論理回路15から第4の論理回路17への帰還信号があり、第4の論理回路17から第3の論理回路15への帰還信号がある。ここでは、図8のタイミングt2〜t3に示すように、クロック入力CKPが“0”で、反転クロック入力CKNが“1”となる直前のデータ入力DP,DNが、DP=“1”,DN=“0”であれば、ラッチ回路1は、以下のように動作する。すなわち、第3の論理回路15の第3トランジスタTr15−3に“0”が入力されて、第3の論理回路15の第1〜第3トランジスタTr15−1〜Tr15−3がすべてONとなり、第3の論理回路15がONとなって“1”を出力する。同様に、第4の論理回路17の第5トランジスタTr17−5に“1”が入力されて、第4の論理回路17の第4〜第6トランジスタTr17−4〜Tr17−6がすべてONとなり、第4の論理回路17がONとなって“0”を出力する。
【0037】
その結果、上述したたすきがけのフィードバック構成を有し、同時にONとなっている第3の論理回路15と第4の論理回路17とによって、第3の論理回路15の入力が“0”で、出力が“1”となる。また、これにより第4の論理回路17の入力が“1”で、出力が“0”となった状態が維持され、データ出力QP,QNの値もそれぞれ“1”,“0”となる。すなわち、ラッチ回路1において、クロック入力CKP=“0”で、反転クロック入力CKN=“1”となる直前のデータ入力DP,DNの値が保持(ホールド)される、ラッチ状態となる。
【0038】
図4は、第2の差動動作モードで動作しているラッチ回路1における信号の流れを示している。図4に示すように、ホールド状態にあるラッチ回路1では、たすきがけ接続された第3の論理回路15と第4の論理回路17がON状態となって、図中の二点差線で示すように信号が流れる。よって、ラッチ回路1は、ラッチ回路1で保持した入力値がそのまま出力されるように動作する。
【0039】
第2の差動動作モードにおける、図8のタイミングt4〜t5についても、上記のタイミングt2〜t3と同様である。すなわち、選択信号SEL=“0”、クロック入力CKPが“0”で、反転クロック入力CKNが“1”となったとき、データ入力DP(=“0”),DN(=“1”)の状態がラッチ回路1で保持され、データ出力もQP=“0”,QN=“1”のままとなる。なお、図8に示すように、タイミングt4〜t5の途中において、データ入力DP,DNの論理レベルが変化しても、ラッチ回路1のホールド機能により、すでに保持された論理レベルがタイミングt4〜t5の期間中、そのまま維持される。
【0040】
このように、差動動作をするラッチ回路1へのクロック入力CKPが“0”で、反転クロック入力CKNが“1”となったデータホールド時、ラッチ回路1は、図7の真理値表の(5)に示すように動作する。つまり、入力データDP,DNの値にかかわらず(すなわち、don't care)、そのときの入力データがラッチ回路1に保持され、その入力データに対応するデータ出力QP,QNがそのまま維持される。そして、差動動作時におけるラッチ回路1のデータホールド状態は、次にクロック入力CKPが“1”で、反転クロック入力CKNが“0”となるまで持続される。
【0041】
<第1のシングルエンド動作モード>
次に、図2に示すラッチ回路1におけるシングルエンド動作のうち、入力データをそのまま出力する第1のシングルエンド動作モードについて説明する。ラッチ回路1に低速クロックを供給して低速動作をさせる場合、選択信号SEL=“1”にしてラッチ回路1をシングルエンド動作モードに切り替える。この選択信号SEL=“1”は、第2の論理回路13の第1トランジスタTr13−1のゲート電極、第3の論理回路15の第1トランジスタTr15−1のゲート電極、及びNORゲート回路23の2入力端子のうち1入力端子それぞれに入力される。また、第2の論理回路13の第6トランジスタTr13−6のゲート電極、及び第3の論理回路15の第6トランジスタTr15−6のゲート電極に、選択信号SEL=“1”の反転選択信号(/SEL=“0”)が入力される。
【0042】
上記のように選択信号SELが論理設定されたラッチ回路1は、クロック入力CKPの論理レベルが“1”で、反転クロック入力CKNの論理レベルが“0”、データ入力DPの論理レベルが“0” となった場合、以下のように動作する。すなわち、この場合には、データ入力DNの状態にかかわらず(don't care)、ラッチ回路1の第1の論理回路11の第1〜第3トランジスタTr11−1〜Tr11−3がすべてONとなり、第1の論理回路11の出力が“1”となる。一方、この場合、第2の論理回路13と第3の論理回路15それぞれの第1トランジスタTr13−1,Tr15−1は、SEL=“1”を受けてOFFとなる。また、第2の論理回路13と第3の論理回路15それぞれの第6トランジスタTr13−6,Tr15−6は、/SEL=“0”を受けてOFFとなる。そのため、第2の論理回路13と第3の論理回路15それぞれにおいて、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなる論理入力の組み合わせが発生しない。
【0043】
第4の論理回路17では、第3トランジスタTr17−3が、クロック入力CKP=“1”を受けてOFFとなり、第4トランジスタTr17−4が反転クロック入力CKN=“0”を受けてOFFとなる。そのため、第4の論理回路17においても、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなる論理入力の組み合わせが発生しない。よって、第1のシングルエンド動作モードにおいて、ラッチ回路1の第2の論理回路13、第3の論理回路15、及び第4の論理回路17は、いずれもOFF状態となる。
【0044】
図5は、第1のシングルエンド動作モードにおけるラッチ回路1の論理回路の状態と、信号の流れ(二点鎖線)を示している。図5に示すように、ラッチ回路1において低速動作時(シングルエンド動作時)には、シングルエンド動作に関係しない論理回路(第2〜第4の論理回路)をOFF状態にして、必要最小限の論理回路(第1の論理回路)のみをON状態にする。こうすることで、ラッチ回路1の省電力化、あるいはラッチ回路1を内蔵する集積回路(LSI)において省電力化を実現できる。
【0045】
第1のシングルエンド動作モードにおいて、図7の真理値表の(3),(4)に示すように、クロック入力CKPが“1”で、反転クロック入力CKNが“0”であり、データ入力DPの論理レベルが“0”の場合、ラッチ回路1は、以下のように動作する。すなわち、ラッチ回路1は、データ入力DNの値とは無関係に(don't care)、第1の論理回路11の出力“1”を受けたNORゲート回路21が“0”を出力する。また、データ入力DPの論理レベルが“1” の場合も同様であり、入力データDNの値にかかわらず(don't care)、NORゲート回路21は“1”を出力する。つまり、ラッチ回路1は、第1のシングルエンド動作において、データ入力DPの値をそのままデータ出力QPとして出力する動作(パススルー)をする。
【0046】
図9は、第1のシングルエンド動作時におけるラッチ回路1の動作タイミングを示すタイミングチャートである。図9に示すように、選択信号SEL=“1”、CKP=“1”でCKN=“0”のとき、すなわち、タイミングt1’〜t2’,t3’〜t4’,t5’〜t6’において、ラッチ回路1は、データ入力DPをそのままデータ出力QPとして出力する。これは、ラッチ回路1におけるパススルーのシングルエンド動作である。
【0047】
なお、ラッチ回路1では、図7の真理値表の(3),(4)に示すように、第1のシングルエンド動作モードにおいて、データ出力QNを論理“0”で固定する。こうすることで、シングルエンド動作しているラッチ回路1の次段の差動回路の入力端がハイインピーダンスになり、LSI等が誤作動を起こすという不具合を確実に防止できる。
【0048】
<第2のシングルエンド動作モード>
次に、図2に示すラッチ回路1におけるシングルエンド動作のうち、入力データをラッチする第2のシングルエンド動作モードについて説明する。ラッチ回路1をシングルエンドでラッチ動作させる場合、上述した第1のシングルエンド動作モードの場合と同様、選択信号SEL=“1”にする。このとき、クロック入力CKPが“0”で、反転クロック入力CKNが“1”であって、入力データDP,DNが“0”,“1”、あるいは“1”,“0”のいずれであっても(don't care)、ラッチ回路1は、以下のように動作する。
【0049】
すなわち、図2のラッチ回路1の第1の論理回路11の第3トランジスタTr11−3がCKN=“1”を受けてOFFとなり、第4トランジスタTr11−4がCKP=“0”を受けてOFFとなる。また、第2の論理回路13と第3の論理回路15それぞれの第1トランジスタTr13−1,Tr15−1は、SEL=“1”を受けてOFFとなる。さらに、第2の論理回路13と第3の論理回路15それぞれの第6トランジスタTr13−6,Tr15−6は、/SEL=“0”を受けてOFF状態になる。つまり、第1の論理回路11、第2の論理回路13、及び第3の論理回路15において、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなる論理入力の組み合わせが生じない。よって、図6に示すように、第1の論理回路11、第2の論理回路13、及び第3の論理回路15はいずれもOFF状態となる。
【0050】
一方、第4の論理回路17は、上述したように第1トランジスタTr17−1と第6トランジスタTr17−6は、常時ON状態となる。また、第4の論理回路17の第3トランジスタTr17−3は、CKP=“0”を受けてONとなり、第4トランジスタTr17−4は、CKN=“1”を受けてONとなる。その結果、第4の論理回路17は、入力データの値に応じて、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなり、それによって第4の論理回路17もON状態となる。
【0051】
上述したように、図2のラッチ回路1では、第3の論理回路15と第4の論理回路17とが、互いの出力端子をそれぞれの入力端子に接続した構成となっている。第2のシングルエンド動作モードでは、第3の論理回路をOFF状態とし、選択信号SEL=“1”によりスイッチ回路(トランスファーゲート)25をON状態にする。そして、NORゲート回路21の出力を、スイッチ回路25を介して第4の論理回路17へ入力し、第4の論理回路17の出力がNORゲート回路21の入力に接続された、たすきがけのフィードバック構成としている。つまり、ラッチ回路1の出力端から第4の論理回路17への帰還信号がある。そのため、CKPが“0”で、CKNが“1”となる直前のNORゲート回路21の出力(出力QP)が、例えば“0”であれば、第4の論理回路17の第2トランジスタTr17−2と第5トランジスタTr17−5への入力が“0”となる。よって、第4の論理回路17の第1〜第3トランジスタがONとなり、第4の論理回路17の出力が“1”となる。
【0052】
その結果、図6において二点差線で示すように、NORゲート回路21の入力が“1”、NORゲート回路21の出力(出力QP)が“0”、第4の論理回路17の入力が“0”、第4の論理回路17の出力が“1”となった状態が維持される。すなわち、ラッチ回路1において入力されたDPの値が保持(ホールド)され、その入力DPと同じ値が出力QPとして出力された状態となる。
【0053】
図7の真理値表の(6)は、ラッチ回路1のシングルエンド動作時にクロック入力CKPが“0”で、反転クロック入力CKNが“1”となってデータホールド動作をする場合を示している。この場合、入力データDP,DNの値にかかわらず(don't care)、上記クロック状態(CKP=“0”、CKN=“1”)となる直前の入力データが、ラッチ回路1内に保持され、その入力データに対応するデータ出力QPがそのまま維持される。
【0054】
図9は、第2のシングルエンド動作モードにおけるラッチ回路1の動作タイミングチャートを示す。図9に示すように、CKP=“0”、かつCKN=“1”のとき、タイミングt2’〜t3’,t4’〜t5’において、ラッチ回路1は、入力データをそのまま保持するホールド動作をする。そして、このホールドモードでは、入力データ値が、次にクロック入力CKPが“1”、クロックCKNが“0”となるまで、そのままラッチ回路1に保持(ホールド)される。
【0055】
また、第1のシングルエンド動作モードと同様、第2のシングルエンド動作モードにおいても、図7の真理値表の(6)に示すように、データ出力QNを論理“0”に固定する。これにより、シングルエンド動作しているラッチ回路の次段の差動回路の入力端がハイインピーダンスになるのを防止している。
【0056】
なお、本実施形態に係るラッチ回路1は、図7の真理値表の(7),(8)に示すように、入力データDP,DNが同時に“0”又は“1”となる状態(入力値の組み合わせ)を禁止している。さらに、ラッチ回路1は、図7の真理値表の(9),(10)に示すように、クロック入力CKP,CKNが同時に“0”又は“1”となる状態(クロックの組み合わせ)を禁止している。
【0057】
次に、本実施形態に係るラッチ回路の適用例について説明する。図10は、本実施形態に係るラッチ回路により構成したフリップフロップ回路100の例を示している。図10のフリップフロップ回路100では、ラッチ回路101の差動データ出力端子QPと、ラッチ回路201の差動データ入力端子DPとを接続する。フリップフロップ回路100では、さらにラッチ回路101の差動データ出力端子QNと、ラッチ回路201の差動データ入力端子DNとを接続する。ラッチ回路101,201の双方に選択信号SELと、クロック入力CKP,CKNとを供給する。このように2個のラッチ回路101,201を縦列接続し、初段のラッチ回路101がクロック入力CKP,CKNの論理レベルの変化(エッジトリガー動作)によりデータ入力DP,DNを取り込んで記憶する。また、後段のラッチ回路201も、同じくクロック入力CKP,CKNの論理レベルの変化(エッジトリガー動作)により、ラッチ回路101より出力されたデータ(QP,QN)を取り込んで記憶する。そして、ラッチ回路101,201を縦列接続して構成したフリップフロップ回路100において入力データが一定期間、保持された後、出力される。
【0058】
また、図11は、本実施形態に係るラッチ回路により構成した分周器300の例を示している。ここでは、2個のラッチ回路301,401を縦列接続する。図11の分周器300では、ラッチ回路301の差動データ出力端子QPと、ラッチ回路401の差動データ入力端子DPとを接続し、ラッチ回路301の差動データ出力端子QNと、ラッチ回路401の差動データ入力端子DNとを接続する。ラッチ回路101,201の双方に選択信号SELと、クロック入力CKP,CKNとを供給する。さらに、ラッチ回路401の出力端子QPと、ラッチ回路301の入力端子DPとがインバータ313を介して帰還(フィードバック)接続される。また、ラッチ回路401の出力端子QNと、ラッチ回路301の入力端子DNとがインバータ311を介して帰還接続されている。図11に示す分周器300では、後段のラッチ回路401の出力QP,QNが論理反転されて、前段のラッチ回路301へ入力されるため、クロック入力端CKP,CKNに入力された周波数fの信号が、周波数f/2の信号に変換(分周)される。
【0059】
なお、図10に示すフリップフロップ回路100、及び図11に示す分周器300のいずれにおいても、高速動作させる場合は、それぞれのラッチ回路を差動回路として動作させ、低速動作の場合には、シングルエンド回路として動作させることで、省電力化できる。
【0060】
以上説明したように本実施形態では、選択信号の論理レベルに応じて、ラッチ回路が差動回路又はシングルエンド回路として動作するように切り替える。それとともに、ラッチ回路を構成する複数の論理回路への論理入力に応じて、個々の論理回路をON状態又はOFF状態にする。こうすることで、1つのラッチ回路に差動動作とシングルエンド動作に対する個別の動作回路を設ける必要がなくなる。さらに、図13に示すようなクロック分配回路や出力セレクタといった付加回路が不要となる。その結果、ラッチ回路の回路面積の増大を大幅に抑えることができ、ラッチ回路を集積回路に内蔵した場合、その集積度を上げることができる。
【0061】
また、低速動作時(シングルエンド動作時)において、そのシングルエンド動作に関係しない論理回路をOFF状態とし、必要最小限の論理回路のみをON状態にする。こうすることで、ラッチ回路自体及びラッチ回路を内蔵する集積回路(LSI)において省電力化を実現できる。すなわち、図13に示すように個別に設けた高速動作回路/低速動作回路の切り替えをして、回路の低速動作時においても高速動作回路に信号等を供給することによる無駄な電力消費をなくすことができる。
【0062】
さらに、差動データ入力の一方の入力端子DPが、第1の論理回路の所定数のトランジスタゲート電極に接続され、差動データ入力の他方の入力端子DNが、第2の論理回路の上記所定数と同数のトランジスタゲート電極に接続される。このような構成としているので、入力端子DPとDNとでファンアウト数が同じになる。そのため、入力負荷がアンバランスになるという問題も生じない。よって、入力負荷が等しいので、入力端のアンバランスを解消するための負荷調整手段も不要となる。
【0063】
なお、上記実施形態に係るラッチ回路では、図12(a)に示すようにシングルエンド動作時にデータ入力端子DP(P側)を使用する場合を例に挙げたが、シングルエンド動作に使用する端子は、これに限定されない。例えば、データ入力端子DN(N側)を使用してシングルエンド動作させる構成としてもよい。この場合、図12(b)に示すように、入出力端におけるP側信号とN側信号の入れ替えをする。すなわち、ラッチ回路1の入出力端において、ラッチ回路1の外部(図12(b)において点線外を意味する)のP側信号をラッチ回路1のN側信号に接続し、外部のN側信号をラッチ回路1のP側信号に接続する。
【0064】
図12(b)に示す構成においても、上述した実施形態におけるシングルエンド動作時の場合と同様、データ出力QPを論理“0”に固定して、次段の差動回路の入力端がハイインピーダンスになるのを防止する。
【0065】
また、上記実施の形態では、高速動作時にラッチ回路を差動動作させ、低速動作に対してシングルエンド動作をさせるよう切り替えているが、これに限定されない。例えば、ラッチ回路の動作速度が一定の場合、電力消費を抑制したいときにシングルエンド動作に切り替え、それ以外の場合には差動で動作するように切り替えてもよい。
【0066】
また、上記実施の形態に係るラッチ回路の第1の論理回路11と第4の論理回路17において、ゲート電極が所定の論理レベルに固定されたトランジスタを省略してもよい。具体的には、ゲート電極が論理“L”に固定された第1トランジスタTr11−1,Tr17−1と、ゲート電極が論理“H”に固定された第6トランジスタTr11−6,Tr17−6とを省略した構成としてもよい。こうすることで、これらのトランジスタが常時ON状態となることによる無駄な電力の消費を回避できる。また、省略したトランジスタの分だけ、ラッチ回路の面積を小さくできる。ただし、トランジスタを省略することで差動入力信号間の負荷のバランスが崩れる可能性があり、特に高速動作時の性能に影響が出ないか注意を要する。
【0067】
本明細書に記載されたすべての文献、特許出願、及び技術規格は、個々の文献、特許出願、及び技術規格が参照により取り込まれることが具体的かつ個々に記載された場合と同程度に、本明細書中に参照により取り込まれる。
【符号の説明】
【0068】
1,101,201,301,401 ラッチ回路
11 第1の論理回路
13 第2の論理回路
15 第3の論理回路
17 第4の論理回路
21,23 NORゲート回路
25,27 スイッチ回路(トランスファーゲート)
31,311,313 インバータ
100 フリップフロップ回路
300 分周器
【技術分野】
【0001】
本発明は、ラッチ回路に関する。
【背景技術】
【0002】
デジタル計算機や伝送機器等の電子装置では、多機能化とともに高速処理及び省電力駆動の要求があり、それに伴って、これらの電子装置に搭載するLSI(集積回路)にも高速化・省電力化が求められている。このような高速化の要求に応えるため、LSIにおいて、シングルエンド信号で駆動する回路(シングルエンド回路)に代えて、差動信号で駆動する回路(差動回路)を用いた回路設計が行われている。これは、差動回路がシングルエンド回路よりも高速で動作可能であり、入力信号間のスキューを減らすことができるからである。
【0003】
そこで、外部からの制御信号により、電圧駆動型シングルエンド伝送と電流駆動型差動伝送とを選択的に切り替えることのできるインタフェース回路(ドライバ回路)が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−110317号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
差動回路はシングルエンド回路よりも電力消費が大きいので、省電力化の要求に応えるための方策が必要となる。例えば、集積回路(LSI)の動作速度が可変で、そのLSIに内蔵した差動回路が低速で動作する場合、差動回路が高速で動作可能であることが、そのLSIで求められている仕様を超えた過剰仕様(いわゆる、オーバースペック)となる。その結果、LSIが本来必要とする電力以上の電力を無駄に消費するという問題がある。
【0006】
上述したような動作回路を適宜、高速動作/低速動作に切り替えることのできる集積回路(LSI)は、差動ラッチ回路を駆動中はシングルエンドラッチ回路が不要となり、逆にシングルエンドラッチ回路を駆動中は差動ラッチ回路が不要となる。つまり、従来の集積回路では、本来の動作上において不要な回路を付加することになり、集積回路において回路面積が増大するという問題がある。さらに、上述した従来のLSIは、動作上、不要な回路が常時動作しているため電力の消費が大きく、LSI全体としての省電力化を図ることができない、という問題がある。
【0007】
一つの側面では、本発明は、低速動作時のラッチ回路の省電力化を図ることを目的とする。
【課題を解決するための手段】
【0008】
一の案では、ラッチ回路は、第1の入力端子より入力信号を受け第1の出力信号を出力する第1の論理回路を備える。このラッチ回路は、第2の入力端子より前記入力信号を論理反転させた反転入力信号を受け第2の出力信号を出力する第2の論理回路を備える。このラッチ回路は、前記第1の出力信号と第4の出力信号とを取り込んで第3の出力信号を出力する第3の論理回路を備える。また、このラッチ回路は、前記第2の出力信号と前記第3の出力信号とを取り込んで前記第4の出力信号を出力する第4の論理回路を備える。このラッチ回路は、入力された選択信号の論理レベルに応じて、前記第1の論理回路、前記第2の論理回路、前記第3の論理回路、及び前記第4の論理回路を含む差動動作回路による差動動作とシングルエンド動作回路によるシングルエンド動作とを切り替える。このラッチ回路は、入力されたクロック信号及び該クロック信号を論理反転させた反転クロック信号の論理レベルにより、以下のように動作する。すなわち、このラッチ回路は、前記差動動作において前記入力信号及び前記反転入力信号それぞれを当該ラッチ回路の第1の出力端子及び第2の出力端子よりスルー状態で出力する動作と、該入力信号及び該反転入力信号をホールド状態にする動作とを行う。また、このラッチ回路は、前記シングルエンド動作において前記入力信号を前記第1の出力端子よりスルー状態で出力する動作と、該入力信号をホールド状態にする動作とを行う。
【発明の効果】
【0009】
一態様によれば、低速動作時のラッチ回路の省電力化を図ることができる。
【図面の簡単な説明】
【0010】
【図1】実施形態に係るラッチ回路の概略構成を示すブロック図である。
【図2】実施形態に係るラッチ回路の詳細構成を示す回路図である。
【図3】実施形態に係るラッチ回路の第1の差動動作モードに対応する信号の流れを示す回路図である。
【図4】実施形態に係るラッチ回路の第2の差動動作モードに対応する信号の流れを示す回路図である。
【図5】実施形態に係るラッチ回路の第1のシングルエンド動作モードに対応する信号の流れを示す回路図である。
【図6】実施形態に係るラッチ回路の第2のシングルエンド動作モードに対応する信号の流れを示す回路図である。
【図7】実施形態に係るラッチ回路の真理値表である。
【図8】実施形態に係るラッチ回路の差動動作時における動作タイミングを示すタイミングチャートである。
【図9】実施形態に係るラッチ回路のシングルエンド動作時における動作タイミングを示すタイミングチャートである。
【図10】実施形態に係るラッチ回路により構成したフリップフロップ回路の例を示す図である。
【図11】実施形態に係るラッチ回路により構成した分周器の例を示す図である。
【図12】実施形態に係るラッチ回路のシングルエンド動作時にデータ入力端子DN(N側)を使用した構成例を示す図である。
【図13】差動ラッチ回路とシングルエンドラッチ回路に対してクロック分配回路とセレクタを付加した比較例を示す図である。
【発明を実施するための形態】
【0011】
集積回路(LSI)を高速に動作させるとともに、低速動作時において省電力化を達成するための構成として、例えば、以下の構成が考えられる。すなわち、LSIに高速動作用の差動回路と、低速動作用のシングルエンド回路とを1つずつ用意し、高速動作時に差動回路を選択し、低速動作時にはシングルエンド回路を選択する。より具体的には、図13に示すように、LSIに差動ラッチ回路501とシングルエンドラッチ回路503とを個別に設ける。そして、クロック分配回路505とセレクタ507をLSIに付加して、差動ラッチ回路501とシングルエンドラッチ回路503を適宜、切り替える構成が考えられる。
【0012】
図13に示す構成では、高速動作時にクロック分配回路505から差動ラッチ回路501にのみクロックを供給し、セレクタ507によって、差動ラッチ回路501からの出力を選択する。また、低速時には、シングルエンドラッチ回路503にのみクロックを供給して差動ラッチ回路501の動作を停止し、セレクタ507によって、低消費駆動のシングルエンドラッチ回路503の出力を選択する。また、図13の構成では、差動ラッチ回路501とシングルエンドラッチ回路503とで共通に用いられるクロック分配回路505とセレクタ507をLSIに設ける必要がある。そのため、LSIの回路面積が増大する。また、クロック分配回路505は、常時動作しているため電力の消費が大きく、LSI全体としての省電力化を図ることは難しい。
【0013】
さらに、図13の構成では、差動データ入力端子DP,DNのうちDPが、差動ラッチ回路501とシングルエンドラッチ回路503の双方の入力端に接続されている。そのため、DPとDNとでファンアウト数が異なり、負荷がアンバランスになる。一方、このような入力端のアンバランスを解消するには、バランスをとるための負荷調整手段が用いられる。
【0014】
そこで、以下に述べるラッチ回路により、回路面積の増大を最小限に抑えつつ、低速動作時の省電力化を実現する。以下、実施形態について、図面を参照しながら詳細に説明する。
【0015】
図1は、本実施形態に係るラッチ回路の概略構成を示すブロック図である。図2は、本実施形態に係るラッチ回路の詳細構成を示す回路図である。また、図3〜図6は、本実施形態に係るラッチ回路の動作モードに対応した信号の流れ等を示す回路図である。
【0016】
本実施形態に係るラッチ回路1は、例えば、所定の機能を有する集積回路(LSI)等に内蔵される。そして、図1に示すように1ビット幅の選択信号SELを制御信号とすることで、ラッチ回路1を差動回路として動作させるか、あるいはシングルエンド回路として動作させるかの切り替えができる。具体的には、ラッチ回路1に高速クロックを供給して高速動作させる場合、外部からの制御により選択信号SELを論理“L”レベル(適宜、SEL=“0”とも表記する)にして、ラッチ回路1を差動回路として動作させる。この差動動作では、差動クロック入力CKP,CKNの値に応じて、差動データ入力DP,DNをそのまま差動データ出力QP,QNとして出力し、あるいは入力されたデータDP,DNの状態を保持(ホールド)する。なお、クロック入力CKPとクロック入力CKNは、相互に論理反転した関係にある(以降において、クロック入力CKNを反転クロック入力ともいう)。また、データ入力DPとデータ入力DNも、相互に論理反転した関係にあり(データ入力DNを反転データ入力ともいう)、データ出力QPとデータ出力QNも、相互に論理反転した関係にある(データ出力QNを反転データ出力ともいう)。
【0017】
一方、ラッチ回路1を低速クロックで動作させる場合、選択信号SELを論理“H”レベル(適宜、SEL=“1”とも表記する)にして、ラッチ回路1をシングルエンド回路として動作させる。この場合、クロック入力CKPの論理値に応じて、データ入力DPをそのままシングルエンドのデータ出力QPとして出力し、あるいはデータ入力DPの状態を保持(ホールド)する。
【0018】
なお、ラッチ回路1を差動回路、あるいはシングルエンド回路として動作させる選択信号SELの論理は、上記の論理に限定されず、上記と逆の論理であってもよい。
【0019】
図2に示すように、本実施形態に係るラッチ回路1は、4個の論理回路11,13,15,17と、NORゲート回路21,23と、スイッチ回路(トランスファーゲートともいう)25,27とを備える。各論理回路11,13,15,17は、P型(Pチャンネル)MOSトランジスタのドレイン電極を、その下段に位置するP型MOSトランジスタのソース電極に接続する等によって、P型MOSトランジスタを3段に直列接続する。さらに、N型(Nチャンネル)MOSトランジスタのソース電極を、その下段に位置するN型MOSトランジスタのドレイン電極に接続することで、N型MOSトランジスタを3段に直列接続する。そして、これら3段に接続されたP型MOSトランジスタと、3段に接続されたN型MOSトランジスタとを、さらに直列に接続した構成を有する。また、スイッチ回路(トランスファーゲート)25,27は、P型MOSトランジスタとN型MOSトランジスタとを並列に接続した構成を有する。
【0020】
なお、以降において、論理回路11を第1の論理回路、論理回路13を第2の論理回路、論理回路15を第3の論理回路、論理回路17を第4の論理回路と呼ぶ。また、これら第1〜第4の論理回路11,13,15,17を構成する個々のMOSトランジスタを、電源側からグラウンド(GND)側へ順に第1〜第6トランジスタと呼ぶ。例えば、第1の論理回路11では、第1トランジスタTr11−1、第2トランジスタTr11−2、第3トランジスタTr11−3、第4トランジスタTr11−4、第5トランジスタTr11−5、第6トランジスタTr11−6と呼ぶ。
【0021】
同様に、第2の論理回路13では、第1トランジスタTr13−1、第2トランジスタTr13−2、第3トランジスタTr13−3、第4トランジスタTr13−4、第5トランジスタTr13−5、第6トランジスタTr13−6と呼ぶ。また、第3の論理回路15では、第1トランジスタTr15−1、第2トランジスタTr15−2、第3トランジスタTr15−3、第4トランジスタTr15−4、第5トランジスタTr15−5、第6トランジスタTr15−6と呼ぶ。さらに、第4の論理回路17では、第1トランジスタTr17−1、第2トランジスタTr17−2、第3トランジスタTr17−3、第4トランジスタTr17−4、第5トランジスタTr17−5、第6トランジスタTr17−6と呼ぶ。
【0022】
第1の論理回路11の第1トランジスタTr11−1の入力は、論理“L”レベルに固定され、第6トランジスタTr11−6の入力は、論理“H”レベルに固定されており、トランジスタTr11−1とTr11−6は、常時ON状態になっている。第2トランジスタTr11−2と第5トランジスタTr11−5には、データ入力DPが入力され、第3トランジスタTr11−3には、反転クロック入力CKNが入力され、第4トランジスタTr11−4には、クロック入力CKPが入力され。また、第2の論理回路13の第1トランジスタTr13−1には、選択信号SELが入力され、第6トランジスタTr13−6には、反転選択信号/SELが入力される(ここで、信号名に付した符号/は、論理反転を意味する)。第2トランジスタTr13−2と第5トランジスタTr13−5には、反転データ入力DNが入力され、第3トランジスタTr13−3には、反転クロック入力CKNが入力され、第4トランジスタTr13−4には、クロック入力CKPが入力される。
【0023】
第3の論理回路15の第1トランジスタTr15−1には、選択信号SELが入力され、第6トランジスタTr15−6には、反転選択信号/SELが入力される。第2トランジスタTr15−2と第5トランジスタTr15−5には、第1の論理回路11の出力信号と第4の論理回路17の出力信号とが入力される。第3トランジスタTr15−3には、クロック入力CKPが入力され、第4トランジスタTr15−4には、反転クロック入力CKNが入力される。また、第4の論理回路17の第1トランジスタTr17−1の入力は、論理“L”レベルに固定され、第6トランジスタTr17−6の入力は、論理“H”レベルに固定され、Tr17−1とTr17−6は、常時ON状態になっている。第2トランジスタTr17−2と第5トランジスタTr17−5には、第2の論理回路13の出力信号と第3の論理回路15の出力信号とが入力される。第3トランジスタTr17−3には、クロック入力CKPが入力され、第4トランジスタTr17−4には、反転クロック入力CKNが入力される。
【0024】
なお、図2に示すように、NORゲート回路21の2入力端子のうち1入力端子は、論理“L”レベルに固定され、NORゲート回路23の2入力端子のうち1入力端子には、選択信号SELが入力される。
【0025】
次に、図2に示すラッチ回路の動作について詳細に説明する。図2に示すラッチ回路1は、外部から供給される動作クロックの周波数に依存する動作速度で動作するとともに、選択信号の論理値に応じて差動回路又はシングルエンド回路に切り替えられて動作する。また、差動回路における差動動作及びシングルエンド回路によるシングルエンド動作それぞれにおいて、入力データをそのまま出力するトランスペアレント(パススルー)モードと、データ入力の状態を維持するホールド(ラッチ)モードとで動作する。
【0026】
<第1の差動動作モード>
図2に示すラッチ回路1における差動動作のうち、差動入力データをそのまま出力する第1の差動動作モードについて説明する。ラッチ回路1に高速クロック(例えば、10GHz)を供給してラッチ回路1を高速動作させる場合、選択信号SELを“0”にして、ラッチ回路1を差動動作モードに切り替える。論理“0”レベルの選択信号SELは、第2の論理回路13の第1トランジスタTr13−1のゲート電極、及び第3の論理回路15の第1トランジスタTr15−1のゲート電極、及びNORゲート回路23の2入力端子のうち1入力端子にそれぞれ入力される。また、第2の論理回路13のトランジスタTr13−6のゲート電極、及び第3の論理回路15の第6トランジスタTr15−6のゲート電極には、選択信号SEL=“0”を論理反転させた反転選択信号(/SEL=“1”)が入力される。
【0027】
上記のように選択信号SELが論理設定されたラッチ回路1は、クロック入力CKPが“1”で、反転クロック入力CKNが“0”、データ入力DPが“0”で、反転データ入力DNが“1”のとき、以下のように動作する。すなわち、この場合には第1の論理回路11の第1〜第3トランジスタTr11−1〜Tr11−3がすべてON(導通)となって第1の論理回路11が作動状態となる。そして、第1の論理回路11の出力端から論理“1”の信号が出力される。
【0028】
同様に、第2の論理回路13の第4〜第6トランジスタTr13−4〜Tr13−6がすべてONとなって、第2の論理回路13から論理“0”が出力される。そして、2入力のNORゲート回路21,23は、インバータとして機能する。そのため、NORゲート回路21は、第1の論理回路11からの出力“1”を受けて“0”を出力し、NORゲート回路23は、第2の論理回路13からの出力“0”を受けて“1”を出力する。その結果、ラッチ回路1のデータ出力QPは、データ入力DPと同じ“0”となり、反転データ出力QNは、反転データ入力DNと同じ“1”となる。
【0029】
一方、第1の論理回路11は、上記と同じクロック入力状態(クロック入力CKP=“1”、かつ反転クロック入力CKN=“0”)にあるときに、データ入力DPが“1”で、反転データ入力DNが“0”となった場合には、以下のように動作する。すなわち、第1の論理回路11の第4〜第6トランジスタTr11−4〜Tr11−6がすべてONとなり、第1の論理回路11の出力は“0”となる。また、第2の論理回路13の第1〜第3トランジスタTr13−1〜Tr13−3がすべてONとなり、第2の論理回路13の出力は“1”となる。そして、NORゲート回路21は、第1の論理回路11の出力“0”を受けて“1”を出力し、NORゲート回路23は、第2の論理回路13の出力“1”を受けて“0”を出力する。よって、ラッチ回路1のデータ出力QPは、データ入力DPと同じ“1”となり、反転データ出力QNは、反転データ入力DNと同じ“0”となる。
【0030】
上記のクロック入力状態(クロック入力CKPの論理レベル=“1”、反転クロック入力CKNの論理レベル=“0”)のとき、第3の論理回路15は、以下のように動作する。すなわち、第3の論理回路15の第3トランジスタTr15−3がCKP=“1”を受けてOFFとなり、第4トランジスタTr15−4がCKN=“0”を受けてOFFとなる。そのため、第1の論理回路11から第3の論理回路15への入力が、“0”,“1”のいずれであっても、第3の論理回路15はOFF(非導通)となり、不作動状態を維持する。
【0031】
同様に、第4の論理回路17の第3トランジスタTr17−3がCKP=“1”を受けてOFFとなり、第4トランジスタTr17−4がCKN=“0”を受けてOFFとなる。そのため、第2の論理回路13から第4の論理回路17への入力が“0”,“1”のいずれであっても、第4の論理回路17は不作動状態を維持する。また、スイッチ回路(トランスファーゲート)25,27もOFF状態を維持する。
【0032】
図3は、第1の差動動作モードで動作しているラッチ回路1における信号の流れを示している。図3に示すようにラッチ回路1は、第3の論理回路15と第4の論理回路17がOFF状態となり、第1の論理回路11と第2の論理回路13が同時にON状態となって差動回路として動作する。そして、図3において二点差線で示すように、入力データDP,DNがラッチ回路1をスルーして、そのまま出力データQP,QNとして出力されるパススルーで動作していることが分かる。
【0033】
図7は、ラッチ回路1の動作を示す真理値表である。上述したように選択信号SEL=“0”のとき、ラッチ回路1が差動回路として動作し、クロック入力CKPが“1”で反転クロック入力CKNが“0”の場合、ラッチ回路1の動作は、図7の真理値表の(1),(2)に示すようになる。つまり、データ入力DP,DNの値がそのままデータ出力QP,QNとして出力される(すなわち、入力値をそのまま出力するパススルー動作)。
【0034】
図8は、ラッチ回路1が差動回路として動作しているときのタイミングチャートである。図8において、選択信号SEL=“0”、CKP=“1”でCKN=“0”のとき、つまり、タイミングt1〜t2,t3〜t4,t5〜t6において、データ入力DP,DNの値それぞれが、そのままデータ出力QP,QNとして出力される。これは、ラッチ回路1におけるパススルーの差動動作である。
【0035】
<第2の差動動作モード>
次に、図2に示すラッチ回路1における差動動作のうち、差動入力データをラッチする第2の差動動作モードについて説明する。ラッチ回路1を差動動作させる場合、上述した第1の差動動作モードと同様、選択信号SEL=“0”とする。そして、クロック入力CKPが“0”で、反転クロック入力CKNが“1”のときは、データ入力DP,DNが、それぞれ“0”,“1”、あるいは“1”,“0”のいずれであっても、ラッチ回路1は以下のように動作する。すなわち、この場合、図2のラッチ回路1の第1の論理回路11の第1〜第3トランジスタTr11−1〜Tr11−3がすべてONとなる論理入力の組み合わせが生じない。また、第2の論理回路13の第4〜第6トランジスタTr13−4〜Tr13−6がすべてONとなる論理入力の組み合わせも生じない。よって、この場合には、第1の論理回路11、及び第2の論理回路13はいずれもOFF状態となる。
【0036】
また、図2に示すように、ラッチ回路1では、第3の論理回路15の出力が第4の論理回路17の入力に接続され、第4の論理回路17の出力が第3の論理回路15の入力に接続された、たすきがけのフィードバック構成となっている。つまり、第3の論理回路15から第4の論理回路17への帰還信号があり、第4の論理回路17から第3の論理回路15への帰還信号がある。ここでは、図8のタイミングt2〜t3に示すように、クロック入力CKPが“0”で、反転クロック入力CKNが“1”となる直前のデータ入力DP,DNが、DP=“1”,DN=“0”であれば、ラッチ回路1は、以下のように動作する。すなわち、第3の論理回路15の第3トランジスタTr15−3に“0”が入力されて、第3の論理回路15の第1〜第3トランジスタTr15−1〜Tr15−3がすべてONとなり、第3の論理回路15がONとなって“1”を出力する。同様に、第4の論理回路17の第5トランジスタTr17−5に“1”が入力されて、第4の論理回路17の第4〜第6トランジスタTr17−4〜Tr17−6がすべてONとなり、第4の論理回路17がONとなって“0”を出力する。
【0037】
その結果、上述したたすきがけのフィードバック構成を有し、同時にONとなっている第3の論理回路15と第4の論理回路17とによって、第3の論理回路15の入力が“0”で、出力が“1”となる。また、これにより第4の論理回路17の入力が“1”で、出力が“0”となった状態が維持され、データ出力QP,QNの値もそれぞれ“1”,“0”となる。すなわち、ラッチ回路1において、クロック入力CKP=“0”で、反転クロック入力CKN=“1”となる直前のデータ入力DP,DNの値が保持(ホールド)される、ラッチ状態となる。
【0038】
図4は、第2の差動動作モードで動作しているラッチ回路1における信号の流れを示している。図4に示すように、ホールド状態にあるラッチ回路1では、たすきがけ接続された第3の論理回路15と第4の論理回路17がON状態となって、図中の二点差線で示すように信号が流れる。よって、ラッチ回路1は、ラッチ回路1で保持した入力値がそのまま出力されるように動作する。
【0039】
第2の差動動作モードにおける、図8のタイミングt4〜t5についても、上記のタイミングt2〜t3と同様である。すなわち、選択信号SEL=“0”、クロック入力CKPが“0”で、反転クロック入力CKNが“1”となったとき、データ入力DP(=“0”),DN(=“1”)の状態がラッチ回路1で保持され、データ出力もQP=“0”,QN=“1”のままとなる。なお、図8に示すように、タイミングt4〜t5の途中において、データ入力DP,DNの論理レベルが変化しても、ラッチ回路1のホールド機能により、すでに保持された論理レベルがタイミングt4〜t5の期間中、そのまま維持される。
【0040】
このように、差動動作をするラッチ回路1へのクロック入力CKPが“0”で、反転クロック入力CKNが“1”となったデータホールド時、ラッチ回路1は、図7の真理値表の(5)に示すように動作する。つまり、入力データDP,DNの値にかかわらず(すなわち、don't care)、そのときの入力データがラッチ回路1に保持され、その入力データに対応するデータ出力QP,QNがそのまま維持される。そして、差動動作時におけるラッチ回路1のデータホールド状態は、次にクロック入力CKPが“1”で、反転クロック入力CKNが“0”となるまで持続される。
【0041】
<第1のシングルエンド動作モード>
次に、図2に示すラッチ回路1におけるシングルエンド動作のうち、入力データをそのまま出力する第1のシングルエンド動作モードについて説明する。ラッチ回路1に低速クロックを供給して低速動作をさせる場合、選択信号SEL=“1”にしてラッチ回路1をシングルエンド動作モードに切り替える。この選択信号SEL=“1”は、第2の論理回路13の第1トランジスタTr13−1のゲート電極、第3の論理回路15の第1トランジスタTr15−1のゲート電極、及びNORゲート回路23の2入力端子のうち1入力端子それぞれに入力される。また、第2の論理回路13の第6トランジスタTr13−6のゲート電極、及び第3の論理回路15の第6トランジスタTr15−6のゲート電極に、選択信号SEL=“1”の反転選択信号(/SEL=“0”)が入力される。
【0042】
上記のように選択信号SELが論理設定されたラッチ回路1は、クロック入力CKPの論理レベルが“1”で、反転クロック入力CKNの論理レベルが“0”、データ入力DPの論理レベルが“0” となった場合、以下のように動作する。すなわち、この場合には、データ入力DNの状態にかかわらず(don't care)、ラッチ回路1の第1の論理回路11の第1〜第3トランジスタTr11−1〜Tr11−3がすべてONとなり、第1の論理回路11の出力が“1”となる。一方、この場合、第2の論理回路13と第3の論理回路15それぞれの第1トランジスタTr13−1,Tr15−1は、SEL=“1”を受けてOFFとなる。また、第2の論理回路13と第3の論理回路15それぞれの第6トランジスタTr13−6,Tr15−6は、/SEL=“0”を受けてOFFとなる。そのため、第2の論理回路13と第3の論理回路15それぞれにおいて、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなる論理入力の組み合わせが発生しない。
【0043】
第4の論理回路17では、第3トランジスタTr17−3が、クロック入力CKP=“1”を受けてOFFとなり、第4トランジスタTr17−4が反転クロック入力CKN=“0”を受けてOFFとなる。そのため、第4の論理回路17においても、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなる論理入力の組み合わせが発生しない。よって、第1のシングルエンド動作モードにおいて、ラッチ回路1の第2の論理回路13、第3の論理回路15、及び第4の論理回路17は、いずれもOFF状態となる。
【0044】
図5は、第1のシングルエンド動作モードにおけるラッチ回路1の論理回路の状態と、信号の流れ(二点鎖線)を示している。図5に示すように、ラッチ回路1において低速動作時(シングルエンド動作時)には、シングルエンド動作に関係しない論理回路(第2〜第4の論理回路)をOFF状態にして、必要最小限の論理回路(第1の論理回路)のみをON状態にする。こうすることで、ラッチ回路1の省電力化、あるいはラッチ回路1を内蔵する集積回路(LSI)において省電力化を実現できる。
【0045】
第1のシングルエンド動作モードにおいて、図7の真理値表の(3),(4)に示すように、クロック入力CKPが“1”で、反転クロック入力CKNが“0”であり、データ入力DPの論理レベルが“0”の場合、ラッチ回路1は、以下のように動作する。すなわち、ラッチ回路1は、データ入力DNの値とは無関係に(don't care)、第1の論理回路11の出力“1”を受けたNORゲート回路21が“0”を出力する。また、データ入力DPの論理レベルが“1” の場合も同様であり、入力データDNの値にかかわらず(don't care)、NORゲート回路21は“1”を出力する。つまり、ラッチ回路1は、第1のシングルエンド動作において、データ入力DPの値をそのままデータ出力QPとして出力する動作(パススルー)をする。
【0046】
図9は、第1のシングルエンド動作時におけるラッチ回路1の動作タイミングを示すタイミングチャートである。図9に示すように、選択信号SEL=“1”、CKP=“1”でCKN=“0”のとき、すなわち、タイミングt1’〜t2’,t3’〜t4’,t5’〜t6’において、ラッチ回路1は、データ入力DPをそのままデータ出力QPとして出力する。これは、ラッチ回路1におけるパススルーのシングルエンド動作である。
【0047】
なお、ラッチ回路1では、図7の真理値表の(3),(4)に示すように、第1のシングルエンド動作モードにおいて、データ出力QNを論理“0”で固定する。こうすることで、シングルエンド動作しているラッチ回路1の次段の差動回路の入力端がハイインピーダンスになり、LSI等が誤作動を起こすという不具合を確実に防止できる。
【0048】
<第2のシングルエンド動作モード>
次に、図2に示すラッチ回路1におけるシングルエンド動作のうち、入力データをラッチする第2のシングルエンド動作モードについて説明する。ラッチ回路1をシングルエンドでラッチ動作させる場合、上述した第1のシングルエンド動作モードの場合と同様、選択信号SEL=“1”にする。このとき、クロック入力CKPが“0”で、反転クロック入力CKNが“1”であって、入力データDP,DNが“0”,“1”、あるいは“1”,“0”のいずれであっても(don't care)、ラッチ回路1は、以下のように動作する。
【0049】
すなわち、図2のラッチ回路1の第1の論理回路11の第3トランジスタTr11−3がCKN=“1”を受けてOFFとなり、第4トランジスタTr11−4がCKP=“0”を受けてOFFとなる。また、第2の論理回路13と第3の論理回路15それぞれの第1トランジスタTr13−1,Tr15−1は、SEL=“1”を受けてOFFとなる。さらに、第2の論理回路13と第3の論理回路15それぞれの第6トランジスタTr13−6,Tr15−6は、/SEL=“0”を受けてOFF状態になる。つまり、第1の論理回路11、第2の論理回路13、及び第3の論理回路15において、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなる論理入力の組み合わせが生じない。よって、図6に示すように、第1の論理回路11、第2の論理回路13、及び第3の論理回路15はいずれもOFF状態となる。
【0050】
一方、第4の論理回路17は、上述したように第1トランジスタTr17−1と第6トランジスタTr17−6は、常時ON状態となる。また、第4の論理回路17の第3トランジスタTr17−3は、CKP=“0”を受けてONとなり、第4トランジスタTr17−4は、CKN=“1”を受けてONとなる。その結果、第4の論理回路17は、入力データの値に応じて、第1〜第3トランジスタすべてがON、あるいは第4〜第6トランジスタすべてがONとなり、それによって第4の論理回路17もON状態となる。
【0051】
上述したように、図2のラッチ回路1では、第3の論理回路15と第4の論理回路17とが、互いの出力端子をそれぞれの入力端子に接続した構成となっている。第2のシングルエンド動作モードでは、第3の論理回路をOFF状態とし、選択信号SEL=“1”によりスイッチ回路(トランスファーゲート)25をON状態にする。そして、NORゲート回路21の出力を、スイッチ回路25を介して第4の論理回路17へ入力し、第4の論理回路17の出力がNORゲート回路21の入力に接続された、たすきがけのフィードバック構成としている。つまり、ラッチ回路1の出力端から第4の論理回路17への帰還信号がある。そのため、CKPが“0”で、CKNが“1”となる直前のNORゲート回路21の出力(出力QP)が、例えば“0”であれば、第4の論理回路17の第2トランジスタTr17−2と第5トランジスタTr17−5への入力が“0”となる。よって、第4の論理回路17の第1〜第3トランジスタがONとなり、第4の論理回路17の出力が“1”となる。
【0052】
その結果、図6において二点差線で示すように、NORゲート回路21の入力が“1”、NORゲート回路21の出力(出力QP)が“0”、第4の論理回路17の入力が“0”、第4の論理回路17の出力が“1”となった状態が維持される。すなわち、ラッチ回路1において入力されたDPの値が保持(ホールド)され、その入力DPと同じ値が出力QPとして出力された状態となる。
【0053】
図7の真理値表の(6)は、ラッチ回路1のシングルエンド動作時にクロック入力CKPが“0”で、反転クロック入力CKNが“1”となってデータホールド動作をする場合を示している。この場合、入力データDP,DNの値にかかわらず(don't care)、上記クロック状態(CKP=“0”、CKN=“1”)となる直前の入力データが、ラッチ回路1内に保持され、その入力データに対応するデータ出力QPがそのまま維持される。
【0054】
図9は、第2のシングルエンド動作モードにおけるラッチ回路1の動作タイミングチャートを示す。図9に示すように、CKP=“0”、かつCKN=“1”のとき、タイミングt2’〜t3’,t4’〜t5’において、ラッチ回路1は、入力データをそのまま保持するホールド動作をする。そして、このホールドモードでは、入力データ値が、次にクロック入力CKPが“1”、クロックCKNが“0”となるまで、そのままラッチ回路1に保持(ホールド)される。
【0055】
また、第1のシングルエンド動作モードと同様、第2のシングルエンド動作モードにおいても、図7の真理値表の(6)に示すように、データ出力QNを論理“0”に固定する。これにより、シングルエンド動作しているラッチ回路の次段の差動回路の入力端がハイインピーダンスになるのを防止している。
【0056】
なお、本実施形態に係るラッチ回路1は、図7の真理値表の(7),(8)に示すように、入力データDP,DNが同時に“0”又は“1”となる状態(入力値の組み合わせ)を禁止している。さらに、ラッチ回路1は、図7の真理値表の(9),(10)に示すように、クロック入力CKP,CKNが同時に“0”又は“1”となる状態(クロックの組み合わせ)を禁止している。
【0057】
次に、本実施形態に係るラッチ回路の適用例について説明する。図10は、本実施形態に係るラッチ回路により構成したフリップフロップ回路100の例を示している。図10のフリップフロップ回路100では、ラッチ回路101の差動データ出力端子QPと、ラッチ回路201の差動データ入力端子DPとを接続する。フリップフロップ回路100では、さらにラッチ回路101の差動データ出力端子QNと、ラッチ回路201の差動データ入力端子DNとを接続する。ラッチ回路101,201の双方に選択信号SELと、クロック入力CKP,CKNとを供給する。このように2個のラッチ回路101,201を縦列接続し、初段のラッチ回路101がクロック入力CKP,CKNの論理レベルの変化(エッジトリガー動作)によりデータ入力DP,DNを取り込んで記憶する。また、後段のラッチ回路201も、同じくクロック入力CKP,CKNの論理レベルの変化(エッジトリガー動作)により、ラッチ回路101より出力されたデータ(QP,QN)を取り込んで記憶する。そして、ラッチ回路101,201を縦列接続して構成したフリップフロップ回路100において入力データが一定期間、保持された後、出力される。
【0058】
また、図11は、本実施形態に係るラッチ回路により構成した分周器300の例を示している。ここでは、2個のラッチ回路301,401を縦列接続する。図11の分周器300では、ラッチ回路301の差動データ出力端子QPと、ラッチ回路401の差動データ入力端子DPとを接続し、ラッチ回路301の差動データ出力端子QNと、ラッチ回路401の差動データ入力端子DNとを接続する。ラッチ回路101,201の双方に選択信号SELと、クロック入力CKP,CKNとを供給する。さらに、ラッチ回路401の出力端子QPと、ラッチ回路301の入力端子DPとがインバータ313を介して帰還(フィードバック)接続される。また、ラッチ回路401の出力端子QNと、ラッチ回路301の入力端子DNとがインバータ311を介して帰還接続されている。図11に示す分周器300では、後段のラッチ回路401の出力QP,QNが論理反転されて、前段のラッチ回路301へ入力されるため、クロック入力端CKP,CKNに入力された周波数fの信号が、周波数f/2の信号に変換(分周)される。
【0059】
なお、図10に示すフリップフロップ回路100、及び図11に示す分周器300のいずれにおいても、高速動作させる場合は、それぞれのラッチ回路を差動回路として動作させ、低速動作の場合には、シングルエンド回路として動作させることで、省電力化できる。
【0060】
以上説明したように本実施形態では、選択信号の論理レベルに応じて、ラッチ回路が差動回路又はシングルエンド回路として動作するように切り替える。それとともに、ラッチ回路を構成する複数の論理回路への論理入力に応じて、個々の論理回路をON状態又はOFF状態にする。こうすることで、1つのラッチ回路に差動動作とシングルエンド動作に対する個別の動作回路を設ける必要がなくなる。さらに、図13に示すようなクロック分配回路や出力セレクタといった付加回路が不要となる。その結果、ラッチ回路の回路面積の増大を大幅に抑えることができ、ラッチ回路を集積回路に内蔵した場合、その集積度を上げることができる。
【0061】
また、低速動作時(シングルエンド動作時)において、そのシングルエンド動作に関係しない論理回路をOFF状態とし、必要最小限の論理回路のみをON状態にする。こうすることで、ラッチ回路自体及びラッチ回路を内蔵する集積回路(LSI)において省電力化を実現できる。すなわち、図13に示すように個別に設けた高速動作回路/低速動作回路の切り替えをして、回路の低速動作時においても高速動作回路に信号等を供給することによる無駄な電力消費をなくすことができる。
【0062】
さらに、差動データ入力の一方の入力端子DPが、第1の論理回路の所定数のトランジスタゲート電極に接続され、差動データ入力の他方の入力端子DNが、第2の論理回路の上記所定数と同数のトランジスタゲート電極に接続される。このような構成としているので、入力端子DPとDNとでファンアウト数が同じになる。そのため、入力負荷がアンバランスになるという問題も生じない。よって、入力負荷が等しいので、入力端のアンバランスを解消するための負荷調整手段も不要となる。
【0063】
なお、上記実施形態に係るラッチ回路では、図12(a)に示すようにシングルエンド動作時にデータ入力端子DP(P側)を使用する場合を例に挙げたが、シングルエンド動作に使用する端子は、これに限定されない。例えば、データ入力端子DN(N側)を使用してシングルエンド動作させる構成としてもよい。この場合、図12(b)に示すように、入出力端におけるP側信号とN側信号の入れ替えをする。すなわち、ラッチ回路1の入出力端において、ラッチ回路1の外部(図12(b)において点線外を意味する)のP側信号をラッチ回路1のN側信号に接続し、外部のN側信号をラッチ回路1のP側信号に接続する。
【0064】
図12(b)に示す構成においても、上述した実施形態におけるシングルエンド動作時の場合と同様、データ出力QPを論理“0”に固定して、次段の差動回路の入力端がハイインピーダンスになるのを防止する。
【0065】
また、上記実施の形態では、高速動作時にラッチ回路を差動動作させ、低速動作に対してシングルエンド動作をさせるよう切り替えているが、これに限定されない。例えば、ラッチ回路の動作速度が一定の場合、電力消費を抑制したいときにシングルエンド動作に切り替え、それ以外の場合には差動で動作するように切り替えてもよい。
【0066】
また、上記実施の形態に係るラッチ回路の第1の論理回路11と第4の論理回路17において、ゲート電極が所定の論理レベルに固定されたトランジスタを省略してもよい。具体的には、ゲート電極が論理“L”に固定された第1トランジスタTr11−1,Tr17−1と、ゲート電極が論理“H”に固定された第6トランジスタTr11−6,Tr17−6とを省略した構成としてもよい。こうすることで、これらのトランジスタが常時ON状態となることによる無駄な電力の消費を回避できる。また、省略したトランジスタの分だけ、ラッチ回路の面積を小さくできる。ただし、トランジスタを省略することで差動入力信号間の負荷のバランスが崩れる可能性があり、特に高速動作時の性能に影響が出ないか注意を要する。
【0067】
本明細書に記載されたすべての文献、特許出願、及び技術規格は、個々の文献、特許出願、及び技術規格が参照により取り込まれることが具体的かつ個々に記載された場合と同程度に、本明細書中に参照により取り込まれる。
【符号の説明】
【0068】
1,101,201,301,401 ラッチ回路
11 第1の論理回路
13 第2の論理回路
15 第3の論理回路
17 第4の論理回路
21,23 NORゲート回路
25,27 スイッチ回路(トランスファーゲート)
31,311,313 インバータ
100 フリップフロップ回路
300 分周器
【特許請求の範囲】
【請求項1】
第1の入力端子より入力信号を受け第1の出力信号を出力する第1の論理回路と、
第2の入力端子より前記入力信号を論理反転させた反転入力信号を受け第2の出力信号を出力する第2の論理回路と、
前記第1の出力信号と第4の出力信号とを取り込んで第3の出力信号を出力する第3の論理回路と、
前記第2の出力信号と前記第3の出力信号とを取り込んで前記第4の出力信号を出力する第4の論理回路と、を備え
入力された選択信号の論理レベルに応じて、前記第1の論理回路、前記第2の論理回路、前記第3の論理回路、及び前記第4の論理回路を含む差動動作回路による差動動作とシングルエンド動作回路によるシングルエンド動作とを切り替えるとともに、入力されたクロック信号及び該クロック信号を論理反転させた反転クロック信号の論理レベルにより、前記差動動作において前記入力信号及び前記反転入力信号それぞれを当該ラッチ回路の第1の出力端子及び第2の出力端子よりスルー状態で出力する動作と、該入力信号及び該反転入力信号をホールド状態にする動作とを行い、前記シングルエンド動作において前記入力信号を前記第1の出力端子よりスルー状態で出力する動作と、該入力信号をホールド状態にする動作とを行うことを特徴とするラッチ回路。
【請求項2】
前記選択信号を第1の論理レベルにするとともに、前記クロック信号が第2の論理レベルで、かつ前記反転クロック信号が第1の論理レベルのとき、前記第1の論理回路と前記第2の論理回路とが作動状態になり、前記第3の論理回路と前記第4の論理回路とが不作動状態となって前記差動動作回路を構成し、前記入力信号及び前記反転入力信号それぞれの論理値がスルー状態で前記第1の出力端子及び前記第2の出力端子より出力されることを特徴とする請求項1記載のラッチ回路。
【請求項3】
前記選択信号を第1の論理レベルにするとともに、前記クロック信号が第1の論理レベルで、かつ前記反転クロック信号が第2の論理レベルのとき、前記第1の論理回路と前記第2の論理回路とが不作動状態になり、前記第3の論理回路と前記第4の論理回路とが作動状態となって前記差動動作回路を構成し、前記クロック信号が第1の論理レベルとなり前記反転クロック信号が第2の論理レベルとなる直前の前記入力信号及び前記反転入力信号の論理値が保持されることを特徴とする請求項1記載のラッチ回路。
【請求項4】
前記選択信号を第2の論理レベルにするとともに、前記クロック信号が第2の論理レベルで、かつ前記反転クロック信号が第1の論理レベルのとき、前記第1の論理回路が作動状態になり、前記第2の論理回路と前記第3の論理回路と前記第4の論理回路とが不作動状態となって前記シングルエンド動作回路を構成し、前記入力信号の論理値がそのまま前記第1の出力端子より出力されることを特徴とする請求項1記載のラッチ回路。
【請求項5】
前記選択信号を第2の論理レベルにするとともに、前記クロック信号が第1の論理レベルで、かつ前記反転クロック信号が第2の論理レベルのとき、前記第1の論理回路と前記第2の論理回路と前記第3の論理回路とが不作動状態になり、前記第4の論理回路が作動状態となって前記シングルエンド動作回路を構成し、前記クロック信号が第1の論理レベルとなり前記反転クロック信号が第2の論理レベルとなる直前の前記入力信号の論理値が保持されることを特徴とする請求項1記載のラッチ回路。
【請求項6】
前記シングルエンド動作において前記第2の出力端子の出力を第1の論理レベルに固定することを特徴とする請求項4または5に記載のラッチ回路。
【請求項7】
前記第1の論理回路、前記第2の論理回路、前記第3の論理回路、及び前記第4の論理回路の各々は、P型MOSの第1トランジスタとP型MOSの第2トランジスタとを直列接続し、さらに該第2トランジスタとP型MOSの第3トランジスタとを直列接続するとともに、該第3トランジスタとN型MOSの第4トランジスタとを直列接続し、該第4トランジスタとN型MOSの第5トランジスタとを直列接続し、さらに該第5トランジスタとN型MOSの第6トランジスタとを直列接続した6個のトランジスタを備える
請求項1乃至6のいずれか1項に記載のラッチ回路。
【請求項8】
前記第1の論理回路の前記第1トランジスタに第1の論理レベルの信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記入力信号が入力され、前記第3トランジスタに前記反転クロック信号が入力され、前記第4トランジスタに前記クロック信号が入力され、前記第6トランジスタに第2の論理レベルの信号が入力され、
前記第2の論理回路の前記第1トランジスタに前記選択信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記反転入力信号が入力され、前記第3トランジスタに前記反転クロック信号が入力され、前記第4トランジスタに前記クロック信号が入力され、前記第6トランジスタに前記反転選択信号が入力され、
前記第3の論理回路の前記第1トランジスタに前記選択信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記第1の出力信号及び前記第4の出力信号が入力され、前記第3トランジスタに前記クロック信号が入力され、前記第4トランジスタに前記反転クロック信号が入力され、前記第6トランジスタに前記反転選択信号が入力され、
前記第4の論理回路の前記第1トランジスタに第1の論理レベルの信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記第2の出力信号及び前記第3の出力信号が入力され、前記第3トランジスタに前記クロック信号が入力され、前記第4トランジスタに前記反転クロック信号が入力され、前記第6トランジスタに第2の論理レベルの信号が入力される
請求項7に記載のラッチ回路。
【請求項9】
請求項1乃至8のいずれか1項に記載のラッチ回路を2個縦列接続して構成されたフリップフロップ回路。
【請求項10】
請求項1乃至8のいずれか1項に記載のラッチ回路を2個縦列接続するとともに、出力端をインバータを介して入力端に帰還接続して構成された分周器。
【請求項11】
請求項1乃至8のいずれか1項に記載のラッチ回路を内蔵する半導体集積回路。
【請求項1】
第1の入力端子より入力信号を受け第1の出力信号を出力する第1の論理回路と、
第2の入力端子より前記入力信号を論理反転させた反転入力信号を受け第2の出力信号を出力する第2の論理回路と、
前記第1の出力信号と第4の出力信号とを取り込んで第3の出力信号を出力する第3の論理回路と、
前記第2の出力信号と前記第3の出力信号とを取り込んで前記第4の出力信号を出力する第4の論理回路と、を備え
入力された選択信号の論理レベルに応じて、前記第1の論理回路、前記第2の論理回路、前記第3の論理回路、及び前記第4の論理回路を含む差動動作回路による差動動作とシングルエンド動作回路によるシングルエンド動作とを切り替えるとともに、入力されたクロック信号及び該クロック信号を論理反転させた反転クロック信号の論理レベルにより、前記差動動作において前記入力信号及び前記反転入力信号それぞれを当該ラッチ回路の第1の出力端子及び第2の出力端子よりスルー状態で出力する動作と、該入力信号及び該反転入力信号をホールド状態にする動作とを行い、前記シングルエンド動作において前記入力信号を前記第1の出力端子よりスルー状態で出力する動作と、該入力信号をホールド状態にする動作とを行うことを特徴とするラッチ回路。
【請求項2】
前記選択信号を第1の論理レベルにするとともに、前記クロック信号が第2の論理レベルで、かつ前記反転クロック信号が第1の論理レベルのとき、前記第1の論理回路と前記第2の論理回路とが作動状態になり、前記第3の論理回路と前記第4の論理回路とが不作動状態となって前記差動動作回路を構成し、前記入力信号及び前記反転入力信号それぞれの論理値がスルー状態で前記第1の出力端子及び前記第2の出力端子より出力されることを特徴とする請求項1記載のラッチ回路。
【請求項3】
前記選択信号を第1の論理レベルにするとともに、前記クロック信号が第1の論理レベルで、かつ前記反転クロック信号が第2の論理レベルのとき、前記第1の論理回路と前記第2の論理回路とが不作動状態になり、前記第3の論理回路と前記第4の論理回路とが作動状態となって前記差動動作回路を構成し、前記クロック信号が第1の論理レベルとなり前記反転クロック信号が第2の論理レベルとなる直前の前記入力信号及び前記反転入力信号の論理値が保持されることを特徴とする請求項1記載のラッチ回路。
【請求項4】
前記選択信号を第2の論理レベルにするとともに、前記クロック信号が第2の論理レベルで、かつ前記反転クロック信号が第1の論理レベルのとき、前記第1の論理回路が作動状態になり、前記第2の論理回路と前記第3の論理回路と前記第4の論理回路とが不作動状態となって前記シングルエンド動作回路を構成し、前記入力信号の論理値がそのまま前記第1の出力端子より出力されることを特徴とする請求項1記載のラッチ回路。
【請求項5】
前記選択信号を第2の論理レベルにするとともに、前記クロック信号が第1の論理レベルで、かつ前記反転クロック信号が第2の論理レベルのとき、前記第1の論理回路と前記第2の論理回路と前記第3の論理回路とが不作動状態になり、前記第4の論理回路が作動状態となって前記シングルエンド動作回路を構成し、前記クロック信号が第1の論理レベルとなり前記反転クロック信号が第2の論理レベルとなる直前の前記入力信号の論理値が保持されることを特徴とする請求項1記載のラッチ回路。
【請求項6】
前記シングルエンド動作において前記第2の出力端子の出力を第1の論理レベルに固定することを特徴とする請求項4または5に記載のラッチ回路。
【請求項7】
前記第1の論理回路、前記第2の論理回路、前記第3の論理回路、及び前記第4の論理回路の各々は、P型MOSの第1トランジスタとP型MOSの第2トランジスタとを直列接続し、さらに該第2トランジスタとP型MOSの第3トランジスタとを直列接続するとともに、該第3トランジスタとN型MOSの第4トランジスタとを直列接続し、該第4トランジスタとN型MOSの第5トランジスタとを直列接続し、さらに該第5トランジスタとN型MOSの第6トランジスタとを直列接続した6個のトランジスタを備える
請求項1乃至6のいずれか1項に記載のラッチ回路。
【請求項8】
前記第1の論理回路の前記第1トランジスタに第1の論理レベルの信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記入力信号が入力され、前記第3トランジスタに前記反転クロック信号が入力され、前記第4トランジスタに前記クロック信号が入力され、前記第6トランジスタに第2の論理レベルの信号が入力され、
前記第2の論理回路の前記第1トランジスタに前記選択信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記反転入力信号が入力され、前記第3トランジスタに前記反転クロック信号が入力され、前記第4トランジスタに前記クロック信号が入力され、前記第6トランジスタに前記反転選択信号が入力され、
前記第3の論理回路の前記第1トランジスタに前記選択信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記第1の出力信号及び前記第4の出力信号が入力され、前記第3トランジスタに前記クロック信号が入力され、前記第4トランジスタに前記反転クロック信号が入力され、前記第6トランジスタに前記反転選択信号が入力され、
前記第4の論理回路の前記第1トランジスタに第1の論理レベルの信号が入力され、前記第2トランジスタと前記第5トランジスタとに前記第2の出力信号及び前記第3の出力信号が入力され、前記第3トランジスタに前記クロック信号が入力され、前記第4トランジスタに前記反転クロック信号が入力され、前記第6トランジスタに第2の論理レベルの信号が入力される
請求項7に記載のラッチ回路。
【請求項9】
請求項1乃至8のいずれか1項に記載のラッチ回路を2個縦列接続して構成されたフリップフロップ回路。
【請求項10】
請求項1乃至8のいずれか1項に記載のラッチ回路を2個縦列接続するとともに、出力端をインバータを介して入力端に帰還接続して構成された分周器。
【請求項11】
請求項1乃至8のいずれか1項に記載のラッチ回路を内蔵する半導体集積回路。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−85101(P2013−85101A)
【公開日】平成25年5月9日(2013.5.9)
【国際特許分類】
【出願番号】特願2011−223279(P2011−223279)
【出願日】平成23年10月7日(2011.10.7)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成25年5月9日(2013.5.9)
【国際特許分類】
【出願日】平成23年10月7日(2011.10.7)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]