(57)【特許請求の範囲】
【請求項１】
周期的クロック信号を受け取る第１の入力端子、低電力信号を受け取る第２の入力端子、及びゲーテッド・クロック信号を与える出力端子を有する発生回路を備え、
前記発生回路は、前記低電力信号が第１の論理状態にある場合前記周期的クロック信号を前記発生回路の前記出力端子に与え、
前記発生回路は、前記低電力信号が第２の論理状態にある場合前記ゲーテッド・クロック信号を所定の論理状態で与え、
ラッチの入力信号を受け取るデータ入力端子、前記発生回路の前記出力端子に結合された制御入力端子、及び出力端子を有する第１のゲーテッド・インバータと、
前記第１のゲーテッド・インバータの前記出力端子に結合された入力端子、及び前記ラッチの出力信号を与えるための出力端子を有する第２のインバータと、前記第２のインバータの前記出力端子に結合されたデータ入力端子、前記低電力信号を受け取る制御入力端子、及び前記第２のインバータの前記入力端子に結合された出力端子を有する第３のゲーテッド・インバータと、を更に備え、
前記低電力信号が前記第１の論理状態にあるとき、前記第３のゲーテッド・インバータは、当該第３のゲーテッド・インバータの前記データ入力端子での入力信号の相補形であるべき出力信号を前記第３のゲーテッド・インバータの前記出力端子に与え、
前記低電力信号が前記第２の論理状態にあるとき、前記第３のゲーテッド・インバータは、前記出力信号を高インピーダンス状態で与え、
前記低電力信号が前記第１の論理状態にあるとき、前記ラッチがダイナミック・ラッチとして機能し、
前記低電力信号が前記第２の論理状態にあるとき、前記ラッチがスタティック・ラッチとして機能する、ラッチ。
【請求項２】
入力信号を受け取るデータ入力端子、制御入力端子、及び出力端子を有する第１のゲーテッド・インバータと、
前記第１のゲーテッド・インバータの前記出力端子に結合された入力端子、及びラッチの出力信号を与える出力端子を有する第２のインバータと、
前記第２のインバータの前記出力端子に結合されたデータ入力端子、制御入力端子、及び前記第２のインバータの前記入力端子に結合された出力端子を有する第３のゲーテッド・インバータと、を備える前記ラッチにおいて、
周期的クロック信号を受け取る第１の入力端子、低電力信号を受け取る第２の入力端子、及び前記第１のゲーテッド・インバータの前記制御入力端子に結合され、ゲーテッド・クロック信号を与える出力端子を有する発生回路を更に備え、前記発生回路は、前記低電力信号が第１の論理状態にある場合前記周期的クロック信号を前記発生回路の前記出力端子に与え、
前記発生回路は、前記低電力信号が第２の論理状態にある場合前記ゲーテッド・クロック信号を所定の論理状態で与え、
前記第３のゲーテッド・インバータは更に、当該第３のゲーテッド・インバータの前記制御入力端子で前記低電力信号を受け取り、
前記低電力信号が前記第１の論理状態にあるとき、前記第３のゲーテッド・インバータは、当該第３のゲーテッド・インバータの前記データ入力端子での入力信号の相補形であるべき出力信号を前記第３のゲーテッド・インバータの前記出力端子に与え、
前記低電力信号が前記第２の論理状態にあるとき、前記第３のゲーテッド・インバータは、前記出力信号を高インピーダンス状態で与える、ラッチ。
【請求項３】
ラッチの入力信号を受け取る入力端子、及び出力端子を有する第１のゲーテッド・インバータと、
前記第１のゲーテッド・インバータの出力端子に結合された入力端子、及び前記ラッチの出力を与える出力端子を有する第２のインバータと、
前記第２のインバータの前記出力端子に結合されたデータ入力端子、及び前記第２のインバータの前記入力端子に結合された出力端子を有する第３のゲーテッド・インバータと、を備える前記ラッチを動作させる方法において、
通常動作モードにおいて周期的クロック入力信号を用いて前記第１のゲーテッド・インバータをクロックするステップと、
前記通常動作モードにおいて前記第３のゲーテッド・インバータを使用不能にするステップと、
低電力モードにおいて前記第１のゲーテッド・インバータを使用不能にするステップと、
前記低電力モードに入ることに応答して前記第３のゲーテッド・インバータを使用可能にするステップと、を備え、
前記ラッチは、前記通常動作モードにおいて前記第１のゲーテッド・インバータ及び前記第２のインバータを用いてダイナミック・ラッチとして機能し、且つ前記低電力モードにおいて前記第２のインバータ及び前記第３のゲーテッド・インバータを用いてスタティック・ラッチとして機能する、方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、一般的にフィードバック・ラッチに関し、更に特定すれば、低電力データ・プロセッサに用いるためのフィードバック・ラッチに関するものである。
【０００２】
【従来の技術】
ラッチは、データ処理用途において、データを記憶するために一般的に用いられている。ラッチにはスタティックなラッチ機能を行うものや、ダイナミックなラッチ機能を行うものがある。典型的に、ダイナミック・ラッチは、スタティック・ラッチよりも、少ない論理回路および少ない時間でデータ値をラッチすることができる。更に、ダイナミック・ラッチはスタティック・ラッチよりも回路が少なくて済むので、ダイナミック・ラッチは必要な電力も少なく、クロックの負荷も少なく、更に内部容量も低い。ダイナミック・ラッチは、大量の電力節約１３ができ、スタティック・ラッチ動作よりも少ない回路で済むが、ダイナミック・ラッチに記憶された電荷は漏れによって消散するため、ある時間の後にはダイナミック・ラッチの状態は変化してしまう。ダイナミック・ラッチの一例を図１に示す。
【０００３】
対照的に、スタティック・ラッチに記憶された値の状態は、時間が経っても変化しない。典型的に、スタティック・ラッチは、ラッチの出力とラッチの入力との間に活性フィードバック経路(active feedback path)を設け、これが漏れ電流を補償し、ラッチの状態が変化するのを防止する。フィードバック経路は、一定フィードバック経路(constant feedback path)、またはクロックド・フィードバック経路(clocked feedback path)のいずれかである。クロックド・フィードバック経路を有するスタティック・フィードバック・ラッチの一例を図３に示す。
【０００４】
２つのタイプのスタティック・ラッチ間の回路領域および電力の差は、どちらタイプのスタティック・ラッチが現行の設計により適しているかを、データ処理システムの設計者が判断するために評価しなければならないパラメータである。クロックド・フィードバック経路を有するスタティック・ラッチは、ラッチ動作が速くしかもラッチの内部ノード上で競合が発生しないので、一定フィードバック経路を有するスタティック・ラッチよりも好ましい。一定フィードバック経路を有するスタティック・ラッチは、新しい値がラッチに記憶されるときに、一定フィードバック・ラッチの内部ノードで競合が発生するために、クロックド・フィードバック・ラッチよりも消費電力が多い。一定フィードバック・ラッチの電力消費を低減するには、弱いフィードバック素子（通常弱い反転器）がデータ値をかろうじて記憶できる程度にそのサイズを縮小し、漏れやデータ値の意図しない変更が起きないようにすればよい。しかしながら、フィードバック素子は、通常、当該フィードバック素子を形成するトランジスタの長さを延長することによって弱くなる。このように長さの延長は、更に広い回路領域を消費し、一定フィードバック・ラッチの内部ノード上の負荷を増大させる結果となり得る。
【０００５】
対照的に、クロックド・フィードバック・ラッチがそのフィードバック機能を行うには、定常的にはイネーブルされないが、フィードフォーワード機能に用いられるクロック位相とは反対のクロック位相を用いてそのフィードバック機能を行う、フィードバック素子を用いる。例えば、図３を参照する。図３において、フィードバック・トランジスタ（１６）は、Clock信号がニゲートされている時、「out」信号をラッチ１４の入力に供給する。
【０００６】
【発明が解決しようとする課題】
クロックド・フィードバック・ラッチは一定フィードバック・ラッチよりも競合が少ないが、新たな値をラッチにロードする間フィードバック経路を切断するために、２つの素子、即ち、トランジスタ２つを余分に必要とする。素子を２つ余計に取り付けるために、回路領域が増大し、更にClock信号を供給する線上の負荷も増大する結果となる。したがって、クロックド・フィードバック・ラッチの一定フィードバック・ラッチに対する長所を得るには、一定フィードバック・ラッチの弱いフィードバック素子によって消費される電力および領域、およびクロックド・フィードバック・ラッチのフィードバック・ゲート素子によって消費される電力および領域の釣り合いを取らなければならない。
【０００７】
ここに記載したダイナミック・ラッチおよびスタティック・ラッチの構造はいずれも、データ値を不特定に記憶するというラッチ機能を、効果的に低電力で実施できるものではない。上述の各実施形態は利点も欠点もあり、設計者はこれらの重要性を付加し、データ処理システム全体に与える悪影響を最少に抑え得る実施形態を決定しなければならない。
【０００８】
【課題を解決するための手段】
前述の必要性は本発明によって満たされる。即ち、第１形態では、ラッチが提供される。このラッチは、第１クロック信号を受信する第１入力と、第２クロック信号を受信する第２入力と、入力信号を受信する第３入力とを有する第１反転器を含む。第１反転器は、第１クロック信号が第１論理状態にありかつ第２クロック信号が第２論理状態にあるとき、反転入力信号を選択的に発生する出力を有する。第２反転器は、第１反転器の出力に接続され、反転入力信号を受信する入力を有する。第２反転器は出力信号を発生する出力を有する。第３反転器は、第３クロック信号を受信する第１入力と、第４クロック信号を受信する第２入力と、第２反転器の出力に接続されその出力を受信する第３入力とを有する。第３反転器は、第３クロック信号が第３論理状態にありかつ第４クロック信号が第４論理状態にあるとき、選択的に反転出力信号を第２反転器の入力に供給する。
【０００９】
第２形態では、本発明はフィードバック動作を行う方法を提供する。この方法は、第１クロック信号をアサートする段階、第２クロック信号をアサートする段階、および入力信号をアサートする段階を含む。第１クロックが第１論理状態にありかつ第２クロック信号が第２論理状態にあるとき、第１反転器を用いて入力信号を選択的に反転し、反転入力信号を発生する。第２反転器を用いて、反転入力信号を反転し、出力信号を発生する。同様に、本方法は、第３クロック信号をアサートする段階と、第４クロック信号をアサートする段階とを含む。第３クロック信号が第３論理状態にありかつ第４クロック信号が第４論理状態にあるとき、第３反転器を用いて出力信号を選択的に反転し、反転出力信号を発生する。反転出力は、第２反転器の入力に供給される。
【００１０】
これらおよびその他の特徴ならびに利点は、添付図面に関連付けて記載された以下の詳細な説明から、より明確に理解されよう。但し、図面は本発明の唯一の形状を表わすことを意図するものではないことを注記しておくことは重要である。
【００１１】
【実施例】
以下に記載する本発明の実施形態では、「アサート(assert)」および「ニゲート(negate)」、ならびにその種々の文法的形状を用いて、「アクティブ高」および「アクティブ低」論理信号が混在する場合を扱う際の混乱を回避することとする。「アサート」は、論理信号またはレジスタ・ビットをそのアクティブな状態即ち論理真の状態にすることを意味する。また、「ニゲート」は、論理信号またはレジスタ・ビットをそのインアクティブな状態即ち論理虚の状態にすることを意味する。
【００１２】
本発明は、使用電力の低減を図りつつスタティック・ラッチ機能を行う、クロックド・フィードバック経路を有するラッチを提供するものである。本発明では、フィードバック素子は、選択的にラッチのフィード・フォーワード部分から切断される。大抵の場合ラッチにクロックが入力され駆動(clocked)されている通常動作モードでは、ラッチのフィードバック素子はイネーブルされておらず、ラッチは事実上ダイナミック・ラッチとして機能する。ラッチが長期間にわたってインアクティブになっていると、フィードバック素子は再びイネーブルされ、ラッチはデータ値を不特定に記憶することができる。長期間とは、その間にダイナミック・ラッチ状態を失う程度の時間と定義する。多くの場合漏れによる状態の損失を防ぐためにラッチにクロックを入力し駆動している期間では、フィードバック素子は不要であり切断してもよいことを認識することによって、クロックド・フィードバック・スタティック・ラッチの従来技術の実施形態で必要とされるクロック切り替え動作(activity)が少なくなるので、電力消費の低減を図ることができる。更に、フィードバック素子が切断されるので、クロック信号への負荷が少なくなり、消費電力も少なくなる。実際、本発明のこの実施例は、通常動作の間はダイナミック・ラッチの電力消費とほぼ等しく、内部ノードへの負荷が僅かに多い程度のラッチを提供するものである。
【００１３】
しかしながら、従来技術のダイナミック・ラッチとは異なり、本発明は、ラッチに長期間クロックが入力されず駆動されていないときでも、データ値を不特定に記憶することができる。前述のように、本発明は、かなり長い不動作(inactivity)期間にわたってラッチにクロックが入力されず駆動されていないとき、クロックド・フィードバック・ラッチと同様に機能するラッチを提供する。本発明において開示されるラッチは、ダイナミック状態で通常に動作していないときでも、他のクロックド・フィードバック・ラッチよりも消費電力が少ない。その理由は、素子のフィードフォーワード部分の出力は、ラッチをイネーブルしてデータ値を不特定に記憶するために、フィードバック素子を駆動する必要がないからである。代わりに、低電力動作モードのようなクロックがない時にラッチが動作していることを指示する、低電力クロック信号が供給され、フィードバック素子を駆動する。低電力クロック信号は、データ処理システムにおいて他の目的のために発生されるものなので、この信号を本発明のフィードバック素子に供給しても、大量の電力が消費されることはない。
【００１４】
加えて、本発明は、従来技術のダイナミック・ラッチよりはわずかに遅いだけであり、一定フィードバック・スタティック・ラッチよりは速いという有利な速度で動作する。本発明では、ラッチのフィードバック素子とフィードフォーワード部分との間の競合が殆ど起こらない。ラッチの内部ノードで競合がないので、本発明は、従来技術の一定フィードバック・スタティック・ラッチよりも素早くデータ値を供給することができる。フィードバック素子の負荷が最少に抑えられるので、本発明のラッチは、ダイナミック・ラッチよりもわずかに遅いだけである。
【００１５】
本発明は、従来技術のダイナミックおよびスタティック・ラッチ双方の利点を有するフィードバック・ラッチを提供する。また、本発明は、ラッチのフィードバック素子に別個のクロックを供給することによって、素早くデータをラッチし、データを不特定に記憶し、電力消費量を最少に抑える素子を提供する。
【００１６】
本発明のこの実施例を、図４に更に詳細に示す。図４は、反転器４２、反転器４４および反転器４６から成るフィードバック・ラッチ４０を図示する。反転器４２は第１入力でClock信号を、第２入力でInput信号を、そして第３入力で反転Clock信号を受信する。反転器４２の出力は、反転器４４の第１入力に結合されている。「Output」と表記された反転器４４の出力を、反転器４６の入力に供給する。Low Power信号が反転器４６の第２入力に供給され、Low Power信号の反転、即ち反転Low Power信号が反転器４６の第３入力に供給される。反転器４６の出力は反転器４４の入力に結合されている。フィードバック・ラッチ４０のフィードフォーワード部分は、反転器４２と反転器４４とを含むことを注記しておく。一方、フィードバック・ラッチ４０のフィードバック部分は反転器４６を含む。
【００１７】
動作において、Clockおよび反転Clock信号がアサートされると、反転器４２は反転Input信号を反転器４４に供給する。続いて、反転器４４はOutput信号を発生する。Clockおよび反転Clock信号がアサートされないときは、反転器４２は反転Input信号を発生しない。Low Powerおよび反転Low Poer信号がアサートされていないために反転器４６がアクティブでないと仮定すると、Clockおよび反転Clock信号が規則的にアサートされたとき、反転器４２および反転器４４はダイナミック・ラッチと同様に機能する。Clockおよび反転Clock信号が、Low Powerおよび反転Low Power信号と同時にアサートされることはない。
【００１８】
しかしながら、Clockおよび反転Clock信号が規則的に供給されないとき、フィードバック・ラッチ４０は反転器４６をイネーブルし、ラッチ機能の間Input信号によって指示されたデータ値が変更されないように、フィードバック素子として機能させなければならない。反転器４６は、Low Powerおよび反転Low Power信号が供給されると、イネーブルされフィードバック機能を行う。反転器４６はイネーブルされると、Output信号を反転しそれを反転器４４に入力として供給し、フィードバック機能を与える。
【００１９】
Low Powerおよび反転Low Power信号は、長い不動作期間があると供給される。かかる長い不動作期間は電力管理回路によって検出され、電力管理回路はいつデータ・プロセッサの部分をオフにして電力消費を保存するかを選択的に判断する。電力管理回路はデータ処理技術では公知であり、これ以上ここでは論じないことにする。
【００２０】
更に、指摘すべきは、反転器４６はLow Powerおよび反転Low Power信号を用いる能動素子であるので、そのサイズを最少に抑えられることである。ラッチ４０のフィードフォーワードおよびフィードバック部分をそれぞれ独立に駆動(clocking)するClockおよびLow Power信号があるので、Clock信号への負荷を減らし、クロック駆動部（ここでは示さない）のサイズも小さくし、Clock信号が用いられるデータ処理システム全体において、Clock信号への負荷を少なくすることができる。Clock信号への負荷が少ない程、ClockおよびLow Power信号双方のエッジ・レート(edge rate)の高速化に容易に対応できるため、動作の高速化が可能となる。
【００２１】
図５は、ラッチ動作の間ラッチ４０に供給されるInput信号を発生する発生回路５０の一実施例を示す。発生回路５０は、反転器５２と、ＡＮＤゲート５４と、反転器５６とを含む。System Clock信号がＡＮＤゲート５４の第１入力に供給される。System Clock信号は、外部クリスタル発振器またはデータ処理技術では公知の他の信号源によって供給されるクロック信号である。同様に、Low Power信号が電力管理回路（ここでは図示しない）によって発生される。電力管理回路は、アイドルまたはスリープ動作モードの場合に、データ処理システムへのクロック発生を部分的に制御する。Low Power信号は反転器５２の入力に供給される。反転器５２の出力は反転Low Power信号を発生し、ＡＮＤゲート５４の第２入力に結合されている。ＡＮＤゲート５４の出力はClock信号である。ＡＮＤゲート５４の出力は、反転器５６の入力に結合されている。反転器５４の出力は反転Clock信号である。
【００２２】
動作の間、ＡＮＤゲート５４はSystem Clock信号とLow Power信号の「ＡＮＤ」を取るので、System Clock信号がアサートされLow Power信号がニゲートされているとき、Clock信号のみが供給される。したがって、System Clock信号とLow Power信号は相互に排他的であり、同時にクロック信号(clocking signal)が供給されることはない。
【００２３】
図６は本発明の回路図を示す。図６が示すのは、複数のトランジスタ６２−８０を含むトランジスタ回路６０である。反転Clock信号がトランジスタ６２の反転制御電極に供給される。トランジスタ６２の第１端子は電源電圧に結合されている。Input信号が、トランジスタ６４の反転制御電極と、トランジスタ６６の制御電極とに供給される。トランジスタ６４の第１端子はトランジスタ６２の第２端子に結合されている。トランジスタ６４の第２端子はトランジスタ６６の第１端子に結合されている。Clock信号はトランジスタ６８の制御電極に供給される。トランジスタ６８の第１端子はトランジスタ６６の第２端子に結合され、トランジスタ６８の第２端子は基準接地電圧に結合されている。
【００２４】
トランジスタ６４の第２端子はトランジスタ７０の反転制御電極とトランジスタ７２の制御電極とに結合されている。トランジスタ７０の第１端子は電源電圧に結合され、トランジスタ７０の第２端子はOutput信号を発生する。トランジスタ７２の第１端子はトランジスタ７０の第２端子に結合され、トランジスタ７２の第２端子は基準接地電圧に結合されている。
【００２５】
また、トランジスタ７２の第１端子は、トランジスタ７６の反転制御電極とトランジスタ７８の制御電極とに結合されている。トランジスタ７６の第１端子はトランジスタ７４の第１端子に結合されている。トランジスタ７４の制御電極は反転Low Power信号に結合され、トランジスタ７４の第２端子は電源電圧に結合されている。トランジスタ７２の第２端子はトランジスタ６４の第２端子とトランジスタ７８の第１端子とに結合されている。トランジスタ７８の第２端子はトランジスタ８０の第１端子に結合されている。トランジスタ８０の制御電極はLow Power信号に結合され、トランジスタ８０の第２端子は基準接地電圧に結合されている。
【００２６】
ラッチ６０の動作の間、Clockおよび反転Clock信号は選択的にトランジスタ６２，６４，６６，６８をイネーブルし、Input信号を反転してそれをトランジスタ７０，７２で形成された反転器に供給する。トランジスタ７０，７２は反転Input信号を反転させ(complement)、Output信号を発生する。Low Powerおよび反転Low Power信号は、トランジスタ７４，７６，７８，８０を選択的にイネーブルし、Output信号を反転して、それをトランジスタ７０，７２で形成された反転器に供給する。
【００２７】
本発明は、従来技術のダイナミックおよびスタティック・ラッチ双方の利点を有するフィードバック・ラッチを提供するものである。また、本発明は、ラッチのフィードバック素子に別個のクロックを供給することによって、素早くデータをラッチし、データを不特定に記憶し、更に消費電力量を最少に抑える素子を提供する。ラッチのフィードフォーワード部分からフィードバック部分を選択的に切断することによって、電力を節約し、データ・ラッチの高速化を図ることができる。電力消費が増々重要なパラメータとなりつつある産業界では、本発明によって得られる電力節約は、有意義でしかも重要な付加価値を技術に与えることを示すものである。
【００２８】
ここに記載した本発明の実施形態は一例として示したに過ぎない。しかしながら、個々に記載した機能を実行する多くの様々な実施形態も存在し得るであろう。例えば、本発明は、ＣＭＯＳやバイポーラを含むあらゆる種類の技術を用いて実施することもできる。加えて、ここに開示した２つ以上のラッチは、他の素子を構築するためのブロックとして用いることもできる。かかる素子の一例はフリップ・フロップである。同様に、本発明で用いられた反転器は、ＣＭＯＳパス・ゲート、ｎ−型ゲート、またはｐ−型パス・ゲートで置き換えることもできる。また、本発明の上述の実施例に記載された反転器の代わりに、多数の入力と多数のゲート・クロック(gated clock)を有するマルチプレクサ・ラッチを用いることもできる。同様に、走査ラッチ(scan latch)やアール・ラッチ(Earle latch)も、本発明で用いることができる。
【００２９】
以上本発明の原理について説明してきたが、この説明は一例として記載されただけであって、本発明の範囲に対する限定としてなされたのではないことは、当業者には明確に理解されよう。したがって、本発明の精神および範囲に該当する本発明のあらゆる変更は、特許請求の範囲に含まれることを意図するものである。
【図面の簡単な説明】
【図１】従来技術のダイナミック・ラッチをブロック図形式で示す図。
【図２】一定フィードバック経路を有する従来技術のスタティック・ラッチをブロック図形式で示す図。
【図３】クロックド・フィードバック経路を有する従来技術のスタティック・ラッチをブロック図形式で示す図。
【図４】本発明による低電力ラッチをブロック図形式で示す図。
【図５】図４の低電力ラッチに複数の入力信号を発生する回路をブロック図形式で示す図。
【図６】図４の低電力ラッチを回路図形式で示す図。
【符号の説明】
４０  フィードバック・ラッチ
４２，４４，４６  反転器
５０  発生回路
５２，５６  反転器
５４  ＡＮＤゲート
６２−８０  トランジスタ
【図１】
0003670738.tif 000002
【図２】
0003670738.tif 000003
【図３】
0003670738.tif 000004
【図４】
0003670738.tif 000005
【図５】
0003670738.tif 000006
【図６】
0003670738.tif 000007