(57)【特許請求の範囲】
【請求項１】
クロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる第一のレベルラッチと、
前記クロック信号と前記第一のレベルラッチの出力信号を入力し、前記クロック信号が前記第一の位相である期間は０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は前記第一のレベルラッチからの入力信号の値を出力する第一のデコード回路と、
前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第一のノードをプリチャージする第二のトランジスタと
からなることを特徴とする演算器。
【請求項２】
請求項１記載の演算器であって、
クロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる第二のレベルラッチと、
前記クロック信号と前記第二のレベルラッチの出力信号を入力し、前記クロック信号が前記第一の位相である期間は０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は前記第二のレベルラッチからの入力信号の値を出力する第二のデコード回路と、
前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、
クロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる第三のレベルラッチと、
前記クロック信号と前記第三のレベルラッチの出力信号を入力し、前記クロック信号が前記第一の位相である期間は０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は前記第三のレベルラッチからの入力信号の値を出力する第三のデコード回路と、
前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタと
からなることを特徴とする演算器。
【請求項３】
請求項１または２記載の演算器であって、
前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、
前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、
上位桁への桁上げ信号を出力することを特徴とする演算器。
【請求項４】
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる複数の第一のレベルラッチと、
前記第一のレベルラッチの数と同数のデータ入力端子および任意の複数の出力端子を有し、前記クロック信号と前記複数の第一のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記各出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、前記各出力端子がそれぞれ前記複数の第一のレベルラッチからの各入力信号の値のそれぞれ異なる論理演算結果を出力する第一のデコード回路と、
前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第一のノードをプリチャージする第二のトランジスタと
からなることを特徴とする演算器。
【請求項５】
請求項４記載の演算器であって、
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる複数の第二のレベルラッチと、
前記第二のレベルラッチの数と同数のデータ入力端子および任意の複数の出力端子を有し、前記クロック信号と前記複数の第二のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記各出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、前記各出力端子がそれぞれ前記複数の第二のレベルラッチからの各入力信号の値のそれぞれ異なる論理演算結果を出力する第二のデコード回路と、
前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる複数の第三のレベルラッチと、
前記第三のレベルラッチの数と同数のデータ入力端子および任意の複数の出力端子を有し、前記クロック信号と前記複数の第三のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記各出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、前記各出力端子がそれぞれ前記複数の第三のレベルラッチからの各入力信号の値のそれぞれ異なる論理演算結果を出力する第三のデコード回路と、
前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタと
からなることを特徴とする演算器。
【請求項６】
請求項４または５記載の演算器であって、
前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、
前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、
上位桁への桁上げ信号を出力することを特徴とする演算器。
【請求項７】
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第一のレベルラッチと、
前記２つの第一のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と２つの出力端子を有し、前記クロック信号と前記２つの第一のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第一のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第一のレベルラッチからの入力信号の論理和を出力する第一のデコード回路と、
前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第一のノードをプリチャージする第二のトランジスタと
からなることを特徴とする演算器。
【請求項８】
請求項７記載の演算器であって、
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第二のレベルラッチと、
前記２つの第二のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と２つの出力端子を有し、前記クロック信号と前記２つの第二のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第二のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第二のレベルラッチからの入力信号の論理和を出力する第二のデコード回路と、
前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第三のレベルラッチと、
前記２つの第三のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と２つの出力端子を有し、前記クロック信号と前記２つの第三のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第三のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第三のレベルラッチからの入力信号の論理和を出力する第三のデコード回路と、
前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタと
からなることを特徴とする演算器。
【請求項９】
請求項７または８記載の演算器であって、
前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、
前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、
上位桁への桁上げ信号を出力することを特徴とする演算器。
【請求項１０】
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第一のレベルラッチと、
前記２つの第一のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と前記各出力信号の反転信号をそれぞれ入力する２つの反転信号入力端子と２つの出力端子を有し、前記クロック信号と前記各出力信号と前記各反転信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第一のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第一のレベルラッチからの入力信号の排他的論理和を出力する第一のデコード回路と、
前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第一のノードをプリチャージする第二のトランジスタと
からなることを特徴とする演算器。
【請求項１１】
請求項１０記載の演算器であって、
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第二のレベルラッチと、
前記２つの第二のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と前記各出力信号の反転信号をそれぞれ入力する２つの反転信号入力端子と２つの出力端子を有し、前記クロック信号と前記各出力信号と前記各反転信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第二のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第二のレベルラッチからの入力信号の排他的論理和を出力する第二のデコード回路と、
前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、
前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、
各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第三のレベルラッチと、
前記２つの第三のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と前記各出力信号の反転信号をそれぞれ入力する２つの反転信号入力端子と２つの出力端子を有し、前記クロック信号と前記各出力信号と前記各反転信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第三のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第三のレベルラッチからの入力信号の排他的論理和を出力する第三のデコード回路と、
前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタと
からなることを特徴とする演算器。
【請求項１２】
請求項１０または１１記載の演算器であって、
前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、
前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、
上位桁への桁上げ信号を出力することを特徴とする演算器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、主に半導体集積回路で実現される、ラッチ回路、フリップフロップ回路等のデータ一時記憶装置を有する演算器に関するものである。
【０００２】
【従来の技術】
近年、半導体集積回路の進展はめざましく、より高集積で、より高速動作で、より低消費電力でというように、さらなる高性能化への開発が進められている。より高速に動作する回路を開発するという観点からも、様々な方式の回路が工夫され、検討されている。
【０００３】
現在、高速動作する半導体集積回路のほとんど全ては、クロック信号に同期して動作するクロック同期型の回路構成になっており、例えばマイコン等に搭載されているクロックに同期して動作するデータ処理装置等は、論理演算回路をフリップフロップ（以下Ｆ．Ｆ．）等の、クロック信号に同期してデータの書き込み／保持を行なうデータ一時記憶装置で挟み込んで、このデータ一時記憶装置にクロック信号を供給することによって、クロック信号に同期して動作するという構成にしたものが広く用いられている。
【０００４】
このような構成のデータ処理装置の動作速度を上げるには、論理演算回路の動作時間を短くし、より短いクロック周期の期間内に論理回路での演算を完了するようにして、データ一時記憶装置に供給するクロック信号の周波数を高めることによって実現されている。
【０００５】
動作周波数を上げるに向けて論理演算回路の動作時間を短くするために、スタティックな回路構成でなく、ドミノ論理回路のようなダイナミック動作を行なう回路構成の論理回路を用いる手法も知られている。
【０００６】
このような従来技術の一例として、丸善株式会社発行の「ＣＭＯＳ ＶＬＳＩ設計の原理−システムの視点から」の２８１ページに記載されているマンチェスタ桁上げ加算器がある。このマンチェスタ桁上げ加算器は、ドミノ論理回路の一種で、ダイナミック動作を行なう回路構成をとることによって、高速に桁上げ信号を伝搬していく回路である。
【０００７】
以下、図面を参照しながら、上記のマンチェスタ桁上げ加算器について説明する。図７は、従来のドミノ論理回路の一種であるマンチェスタ桁上げ加算器の桁上げ連鎖部の一例を示す回路図である。
【０００８】
図７において、１０１５〜１０１９はゲートがクロック信号ＣＫに接続されたＰチャンネルトランジスタ（以下Ｐ−Ｔｒ）であって、クロック信号ＣＫが０の時オンになり、ノードＸ０〜Ｘ４がプリチャージされる。１０１０〜１０１４はゲートがクロック信号ＣＫに接続されたＮチャンネルトランジスタ（以下Ｎ−Ｔｒ）であって、クロック信号ＣＫが１の時オンになる。１００１〜１００９はＮ−Ｔｒであって、それぞれ、ゲート信号が１の時オンになる。
【０００９】
このマンチェスタ桁上げ加算器の桁上げ連鎖部は、４ビットの桁上げ伝搬信号（プロパゲーション信号）Ｐ１〜Ｐ４と、４ビットの桁上げ発生信号（ジェネレーション信号）Ｇ１〜Ｇ４と、下位桁からの桁上げ信号Ｃ０の信号とを用いて、上位桁への桁上げ信号Ｃ４を発生する回路である。
【００１０】
その動作は、まず、クロック信号ＣＫが０の期間に、Ｐ−Ｔｒ１０１５〜１０１９がオンになり、Ｘ０〜Ｘ４のノードがプリチャージされる。次に、クロック信号ＣＫが１の期間に、Ｎ−Ｔｒ１０１０〜１０１４がオンになり、Ｎ−Ｔｒ１００１〜１００９のオン，オフの状態により、Ｘ０〜Ｘ４のノードのうち、グラウンドへの経路が開いているノードに関してはディスチャージが行なわれ、グラウンドへの経路が開いていないノードに関してはディスチャージが行なわれない。この時、もしＸ４のノードがディスチャージされていれば、上位桁への桁上げ信号Ｃ４が１となり、ディスチャージされていなければ０となる。
【００１１】
例えば、１ビット目の桁上げ発生信号Ｇ１と２ビット目〜４ビット目の桁上げ伝搬信号Ｐ２〜Ｐ４が１の場合には、クロック信号ＣＫが１になると、ノードＸ４は、Ｎ−Ｔｒ１００４，１００３，１００２，１００６，１０１１の経路を通って、ディスチャージされる。Ｘ４が０になると、桁上げ信号Ｃ４は１となり、上位桁への桁上げ信号が発生する。同様にして、クロック信号ＣＫが１になった時に、入力信号Ｐ１〜Ｐ４，Ｇ１〜Ｇ４，Ｃ０の組合せによって、Ｃ４は０か１に決定される。
【００１２】
この回路において、上位桁への桁上げ信号Ｃ４が０から１へ変化する場合のうち、最も遅延時間が遅くなる場合は、下位桁からの桁上げ信号Ｃ０と、１ビット目〜４ビット目の桁上げ伝搬信号Ｐ１〜Ｐ４のみが１で、その他の桁上げ発生信号Ｇ１〜Ｇ４が０の時であって、この状態でＣＫが０から１に変化した時に、プリチャージされていたノードＸ４が、Ｎ−Ｔｒ１００４，１００３，１００２，１００１，１００５，１０１０の６つのトランジスタを直列接続した経路を通してグラウンドへディスチャージする場合となっている。
【００１３】
このように、上記した従来のマンチェスタ桁上げ加算器の桁上げ連鎖部の回路を用いると４ビットプロパゲーション信号Ｐ１〜Ｐ４と４ビットのジェネレーション信号Ｇ１〜Ｇ４と、下位桁からの桁上げ信号Ｃ０を用いて上位桁への桁上げ信号Ｃ４を発生する場合、最悪遅延時間は、直列に接続された６つのＮ−Ｔｒ１００４，１００３，１００２，１００１，１００５，１０１０を通ってノードＸ４をディスチャージし、Ｐ−Ｔｒ１０２１とＮ−Ｔｒ１０２０で構成されたインバータでノードＸ４の反転信号を作成するまでの遅延時間となっていた。
【００１４】
また、上記したドミノ論理型ダイナミック回路の前後に配置して、クロック信号に同期して動作するようにするデータ一時記憶装置に関していえば、クロック信号の立ち上がりもしくは立ち下がりエッジでデータを取り込み、その他の期間はデータを保持するというＦ．Ｆ．回路が広く用いられている。
【００１５】
以下、図面を参照しながら、上記したＦ．Ｆ．回路について説明する。図８は従来のＦ．Ｆ．回路の一種であるレベルラッチを直列に接続した、クロックの立ち上がりエッジでデータを取り込むタイプのＦ．Ｆ．回路を示したものである。
【００１６】
図８において、１１０１はクロック信号ＣＫが０の時データ書き込み、１のときデータ保持となるレベルラッチであって、１１０２はクロック信号ＣＫが１の時データ書き込み、０のときデータ保持となるレベルラッチであって、レベルラッチ１１０１の出力がレベルラッチ１１０２に入力される。
【００１７】
このため、クロック信号ＣＫが０の期間はレベルラッチ１１０１にＤＩＮの値が書き込まれるが、レベルラッチ１１０２はデータ保持期間であるため、レベルラッチ１１０２の出力は変化しない。
【００１８】
クロック信号ＣＫが０から１に変化する時（立ち上がりエッジの時）はクロック信号ＣＫの立ち上がりエッジの直前のＤＩＮの値がレベルラッチ１１０１に格納され、ＣＫの立ち上がりエッジの直後にレベルラッチ１１０１の出力がレベルラッチ１１０２に書き込まれ出力される。
【００１９】
クロック信号ＣＫが１の期間は、レベルラッチ１１０１はデータ保持期間であるため、レベルラッチ１１０２の入力データは変化しないので、レベルラッチ１１０２の出力は変化しない。またクロック信号ＣＫが１から０に変化する時（立ち下がりエッジの時）もクロック信号ＣＫが１の期間と同様にレベルラッチ１１０２の出力は変化しない。
【００２０】
このような動作を行なうため、図８のＦ．Ｆ．はＣＫの立ち上がりエッジのタイミングで、ＤＩＮのデータを書き込み、その他の期間はデータを保持するというＦ．Ｆ．回路動作を行なう。図９に上記した従来のＦ．Ｆ．回路の動作タイミングチャートを示す。
【００２１】
また、上記した従来のＦ．Ｆ．回路に格納されている加数、被加数から、上記した従来のマンチェスタ桁上げ加算器の桁上げ連鎖部の入力信号である各ビットの桁上げ発生信号と、各ビットの桁上げ伝搬信号を生成するには、それぞれ、各ビットの加数と被加数の論理積回路、各ビットの加数と被加数の排他的論理和回路で作成されていた。図１０は従来の論理積回路の一例、図１１は排他的論理和回路の一例をそれぞれ示したものである。
【００２２】
【発明が解決しようとする課題】
しかしながら、上記のような構成の従来のＦ．Ｆ．に格納された加数、被加数に対して、上記した論理積回路と排他的論理和回路を用いて作成した各ビットごとの桁上げ発生信号と、各ビットごとの桁上げ伝搬信号を入力とする上記構成のマンチェスタ桁上げ加算器の桁上げ連鎖部の動作を考えると、図７において、クロック信号ＣＫが０の期間に各ノードＸ０〜Ｘ４をプリチャージしているが、この期間中にグラウンドへのディスチャージ経路が通じてしまうと、プリチャージ状態が破壊してしまうために、クロック信号ＣＫが０の期間にオフになるＮ−Ｔｒ１０１０〜１０１４を図７の位置に配置する必要があった。
【００２３】
このため、上位桁への桁上げ信号の反転信号となっているノードＸ４をディスチャージする経路には、必ずＮ−Ｔｒ１０１０〜１０１４のうちのいずれかのＮ−Ｔｒを通る必要があり、上記した最も動作が遅くなる経路では、本質的に必要である５つの信号Ｐ１〜Ｐ４、Ｃ０を入力とする５つのＮ−Ｔｒに加えて、ＣＫを入力とする６つ目のＮ−Ｔｒ１０１０を通る必要があり、最悪動作時間が、本質的に必要な５つのＮ−Ｔｒを通る遅延時間よりも、１つ多い６つのＮ−Ｔｒを通る分の遅延時間になってしまうという問題があった。
【００２４】
従って本発明は、上記問題点に鑑み、上記したような構成のマンチェスタ桁上げ加算器の桁上げ連鎖部に代表されるドミノ論理回路において必要であった、クロック信号が０の期間にオフになりプリチャージノードのプリチャージ状態を破壊してしまわないためのＮ−Ｔｒを排除し、ドミノ論理回路の動作遅延時間を向上するようにしたデータ一時記憶装置を有する演算器を提供することを目的とする。
【００２５】
【課題を解決するための手段】
上記目的を達成するために、請求項１〜３に記載のデータ一時記憶装置を有する演算器は、クロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる第一のレベルラッチと、前記クロック信号と前記第一のレベルラッチの出力信号を入力し、前記クロック信号が前記第一の位相である期間は０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は前記第一のレベルラッチからの入力信号の値を出力する第一のデコード回路と、前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタとからなること、
さらに、クロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる第二のレベルラッチと、前記クロック信号と前記第二のレベルラッチの出力信号を入力し、前記クロック信号が前記第一の位相である期間は０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は前記第二のレベルラッチからの入力信号の値を出力する第二のデコード回路と、前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、クロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる第三のレベルラッチと、前記クロック信号と前記第三のレベルラッチの出力信号を入力し、前記クロック信号が前記第一の位相である期間は０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は前記第三のレベルラッチからの入力信号の値を出力する第三のデコード回路と、前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタとからなること、
また、前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、上位桁への桁上げ信号を出力することを特徴とするものである。
【００２６】
この演算器のデータ一時記憶装置によれば、クロック信号が第一の位相である期間から第一の位相と逆位相である期間に移り変わるタイミングで、データ信号の値を書き込み、クロック信号が第一の位相と逆位相である期間は、書き込まれた値をデータ出力端子から出力し、クロック信号が第一の位相である期間は０を出力することができ、これにより、従来のマンチェスタ桁上げ加算器の桁上げ連鎖部に代表されるドミノ論理回路で必要であった、クロック信号が０の期間にオフになりプリチャージノードのプリチャージ状態を破壊してしまわないためのＮ−Ｔｒを排除し、ドミノ論理回路の動作遅延時間を向上することができる。
【００２７】
また、本発明の請求項４〜６に記載のデータ一時記憶装置を有する演算器は、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる複数の第一のレベルラッチと、前記第一のレベルラッチの数と同数のデータ入力端子および任意の複数の出力端子を有し、前記クロック信号と前記複数の第一のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記各出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、前記各出力端子がそれぞれ前記複数の第一のレベルラッチからの各入力信号の値のそれぞれ異なる論理演算結果を出力する第一のデコード回路と、前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタと、前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第一のノードをプリチャージする第二のトランジスタとからなること、
さらに、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる複数の第二のレベルラッチと、前記第二のレベルラッチの数と同数のデータ入力端子および任意の複数の出力端子を有し、前記クロック信号と前記複数の第二のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記各出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、前記各出力端子がそれぞれ前記複数の第二のレベルラッチからの各入力信号の値のそれぞれ異なる論理演算結果を出力する第二のデコード回路と、前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる複数の第三のレベルラッチと、前記第三のレベルラッチの数と同数のデータ入力端子および任意の複数の出力端子を有し、前記クロック信号と前記複数の第三のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記各出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、前記各出力端子がそれぞれ前記複数の第三のレベルラッチからの各入力信号の値のそれぞれ異なる論理演算結果を出力する第三のデコード回路と、前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタとからなること、
また、前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、上位桁への桁上げ信号を出力することを特徴とする。
【００２８】
上記演算器のデータ一時記憶装置によれば、クロック信号が第一の位相である期間から第一の位相と逆位相である期間に移り変わるタイミングで、複数のデータ信号の値を書き込み、クロック信号が第一の位相と逆位相である期間は、書き込まれた複数の値のそれぞれ異なる論理演算結果を任意の複数のデータ出力端子からそれぞれ出力し、クロック信号が第一の位相である期間は、複数のデータ出力端子はいずれも０を出力することができ、これにより、従来のマンチェスタ桁上げ加算器の桁上げ連鎖部に代表されるドミノ論理回路で必要であった、クロック信号が０の期間にオフになりプリチャージノードのプリチャージ状態を破壊してしまわないためのＮ−Ｔｒを排除し、ドミノ論理回路の動作遅延時間を向上することができる。
【００２９】
さらに、具体的な構成として、本発明の請求項７〜９に記載のデータ一時記憶装置を有する演算器は、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第一のレベルラッチと、前記２つの第一のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と２つの出力端子を有し、前記クロック信号と前記２つの第一のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第一のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第一のレベルラッチからの入力信号の論理和を出力する第一のデコード回路と、前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタと、前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第一のノードをプリチャージする第二のトランジスタとからなること、
さらに、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第二のレベルラッチと、前記２つの第二のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と２つの出力端子を有し、前記クロック信号と前記２つの第二のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第二のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第二のレベルラッチからの入力信号の論理和を出力する第二のデコード回路と、前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第三のレベルラッチと、前記２つの第三のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と２つの出力端子を有し、前記クロック信号と前記２つの第三のレベルラッチの各出力信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第三のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第三のレベルラッチからの入力信号の論理和を出力する第三のデコード回路と、前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタとからなること、
また、前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、上位桁への桁上げ信号を出力することを特徴とするものである。
【００３０】
上記演算器のデータ一時記憶装置によれば、クロック信号が第一の位相である期間から第一の位相と逆位相である期間に移り変わるタイミングで、２つのデータ信号の値を書き込み、クロック信号が第一の位相と逆位相である期間は、２つのデータ出力端子のうち一方の出力端子は、書き込まれた２つの値の論理積を出力するとともに他方の出力端子は論理和を出力し、クロック信号が第一の位相である期間は、２つのデータ出力端子はいずれも０を出力することができ、これにより、従来のマンチェスタ桁上げ加算器の桁上げ連鎖部に代表されるドミノ論理回路で必要であった、クロック信号が０の期間にオフになりプリチャージノードのプリチャージ状態を破壊してしまわないためのＮ−Ｔｒを排除し、ドミノ論理回路の動作遅延時間を向上することができる。
【００３１】
また、請求項１０〜１２に記載のデータ一時記憶装置を有する演算器は、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第一のレベルラッチと、前記２つの第一のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と前記各出力信号の反転信号をそれぞれ入力する２つの反転信号入力端子と２つの出力端子を有し、前記クロック信号と前記各出力信号と前記各反転信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第一のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第一のレベルラッチからの入力信号の排他的論理和を出力する第一のデコード回路と、前記第一のデコード回路の出力信号を入力し、第一のノードおよびグラウンドに接続されている第一のトランジスタと、前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第一のノードをプリチャージする第二のトランジスタとからなること、
さらに、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第二のレベルラッチと、前記２つの第二のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と前記各出力信号の反転信号をそれぞれ入力する２つの反転信号入力端子と２つの出力端子を有し、前記クロック信号と前記各出力信号と前記各反転信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第二のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第二のレベルラッチからの入力信号の排他的論理和を出力する第二のデコード回路と、前記第二のデコード回路の出力信号を入力し、第二のノードおよびグラウンドに接続されている第三のトランジスタと、前記クロック信号を入力し、前記クロック信号が第一の位相である期間は前記第二のノードをプリチャージする第四のトランジスタと、各々がクロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となる２つの第三のレベルラッチと、前記２つの第三のレベルラッチの各出力信号をそれぞれ入力する２つのデータ入力端子と前記各出力信号の反転信号をそれぞれ入力する２つの反転信号入力端子と２つの出力端子を有し、前記クロック信号と前記各出力信号と前記各反転信号を入力して、前記クロック信号が前記第一の位相である期間は、前記２つの出力端子がそれぞれ０を出力し、前記クロック信号が前記第一の位相と逆位相である期間は、一方の出力端子が前記２つの第三のレベルラッチからの入力信号の論理積を出力し、他方の出力端子が前記２つの第三のレベルラッチからの入力信号の排他的論理和を出力する第三のデコード回路と、前記第三のデコード回路の出力信号を入力し、前記第一のノードおよび前記第二のノードに接続されている第五のトランジスタとからなること、
また、前記第一のトランジスタの入力、および前記第三のトランジスタの入力は、マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げを発生させる信号であり、前記第五のトランジスタの入力は、前記マンチェスタ桁上げ加算器の桁上げ連鎖部の桁上げ信号を伝搬させる信号であり、上位桁への桁上げ信号を出力することを特徴とするものである。
【００３２】
上記演算器のデータ一時記憶装置によれば、クロック信号が第一の位相である期間から第一の位相と逆位相である期間に移り変わるタイミングで、２つのデータ信号の値を書き込み、クロック信号が第一の位相と逆位相である期間は、２つのデータ出力端子のうち一方の出力端子は、書き込まれた２つの値の論理積を出力するとともに他方の出力端子は排他的論理和を出力し、クロック信号が第一の位相である期間は、２つのデータ出力端子はいずれも０を出力することができ、これにより、従来のマンチェスタ桁上げ加算器の桁上げ連鎖部に代表されるドミノ論理回路で必要であった、クロック信号が０の期間にオフになりプリチャージノードのプリチャージ状態を破壊してしまわないためのＮ−Ｔｒを排除し、ドミノ論理回路の動作遅延時間を向上することができる。
【００３３】
【発明の実施の形態】
以下本発明の実施の形態について、図面を参照しながら詳細に説明する。
【００３４】
（実施の形態１）
図１は、本発明の実施の形態１におけるデータ一時記憶装置の構成を示したものである。図１において、１０１はトライステートインバータであって、制御信号としてクロック信号ＣＫが入力され、ＣＫ＝１の時に出力がハイインピーダンス状態となり、ＣＫ＝０の時にインバータ動作をする。
【００３５】
１０３はトライステートインバータであって、制御信号としてＣＫが入力されており、ＣＫ＝０の時に出力がハイインピーダンス状態となり、ＣＫ＝１の時にインバータ動作をする。１０２はインバータである。
【００３６】
トライステートインバータ１０１とインバータ１０２とトライステートインバータ１０３を図のように接続することにより、ＣＫ＝０の時にデータ書き込み、ＣＫ＝１の時にデータ保持となるレベルラッチ１０８を構成している。このレベルラッチ１０８は、請求項１に記載のレベルラッチに対応している。
【００３７】
１０４はＰチャンネンルトランジスタ（以下Ｐ−Ｔｒ）であって、クロック信号ＣＫがそのゲートに入力されている。１０５，１０６はＮチャンネルトランジスタ（以下Ｎ−Ｔｒ）であって、Ｎ−Ｔｒ１０５のゲートにはレベルラッチ１０８の出力が、Ｎ−Ｔｒ１０６のゲートにはクロック信号ＣＫがそれぞれ入力される。１０７はインバータであって、Ｐ−Ｔｒ１０４，Ｎ−Ｔｒ１０５，Ｎ−Ｔｒ１０６と共に、デコード回路１０９を構成している。このデコード回路１０９は、請求項１に記載のデコード回路に対応している。
【００３８】
以下、実施の形態１におけるデータ一時記憶装置の動作について説明する。レベルラッチ１０８は、ＣＫ＝０の期間（請求項１記載の第一の位相の期間に対応する）は、入力端子ＤＩＮの値をインバータ１０２から出力し、ＣＫ＝１の期間（請求項１記載の第一の位相と逆位相の期間）は、ＣＫ＝０からＣＫ＝１に変化する直前の値をインバータ１０２から出力する。
【００３９】
デコード回路１０９は、ＣＫ＝０の期間は、Ｐ−Ｔｒ１０４がオンとなり、インバータ１０７が０を出力し、ＣＫ＝１の期間は、Ｎ−Ｔｒ１０６がオンとなりインバータ１０２の出力、すなわちレベルラッチ１０８の出力が１であれば、Ｎ−Ｔｒ１０５がオンとなって、インバータ１０７の入力ゲートの電荷がＮ−Ｔｒ１０５、１０６を通ってディスチャージされて０になるので、インバータ１０７が１を出力し、インバータ１０２の出力すなわちレベルラッチ１０８の出力が０であれば、Ｎ−Ｔｒ１０５がオフとなり、インバータ１０７の入力ゲートの電荷はディスチャージされずに１のままとなるので、インバータ１０７は０を出力する。
【００４０】
すなわち、本発明の実施の形態１におけるデータ一時記憶装置の動作は、クロック信号ＣＫ＝１の期間は、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮの値をＤＯＵＴから出力し、クロック信号ＣＫ＝０の期間は、０を出力することとなる。図２は、その動作タイミングチャートを示したものである。
【００４１】
以上のように構成された本実施の形態１におけるデータ一時記憶装置は、上記構成のレベルラッチ１０８と上記構成のデコード回路１０９を図１のように配置接続することによって、クロック信号ＣＫ＝１の期間は、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮの値をＤＯＵＴから出力し、クロック信号ＣＫ＝０の期間は、０を出力することができる。
【００４２】
なお、レベルラッチおよびデコード回路は、上記した回路構成以外の構成であっても構わない。
【００４３】
（実施の形態２）
図３は、本発明の実施の形態２におけるデータ一時記憶装置の回路を示したものであり、図３において、３０１はトライステートインバータであって、制御信号としてクロック信号ＣＫが入力されており、ＣＫ＝１の時に出力がハイインピーダンス状態となり、ＣＫ＝０の時にインバータ動作をする。３０３はトライステートインバータであって、制御信号としてＣＫが入力されており、ＣＫ＝０の時に出力がハイインピーダンス状態となり、ＣＫ＝１の時にインバータ動作をする。３０２はインバータである。
【００４４】
トライステートインバータ３０１とインバータ３０２とトライステートインバータ３０３を図のように接続することにより、ＣＫ＝０の時にデータ書き込み、ＣＫ＝１の時にデータ保持となるレベルラッチ３１７を構成している。
【００４５】
３０５はトライステートインバータであって、制御信号としてクロック信号ＣＫが入力されており、ＣＫ＝１の時に出力がハイインピーダンス状態となり、ＣＫ＝０の時にインバータ動作をする。３０７はトライステートインバータであって、制御信号としてＣＫが入力されており、ＣＫ＝０の時に出力がハイインピーダンス状態となり、ＣＫ＝１の時にインバータ動作をする。３０６はインバータである。
【００４６】
トライステートインバータ３０５とインバータ３０６とトライステートインバータ３０７を図のように接続することにより、ＣＫ＝０の時にデータ書き込み、ＣＫ＝１の時にデータ保持となるレベルラッチ３１８を構成している。
【００４７】
レベルラッチ３１７とレベルラッチ３１８は請求項７に記載の２つのレベルラッチに対応している。
【００４８】
３０９はＰチャンネンルトランジスタ（以下Ｐ−Ｔｒ）であって、クロック信号ＣＫがゲートに入力されている。３１０，３１１，３１２はＮチャンネルトランジスタ（以下Ｎ−Ｔｒ）であって、Ｎ−Ｔｒ３１０にはレベルラッチ３１７の出力が、Ｎ−Ｔｒ３１１にはレベルラッチ３１８の出力が、Ｎ−Ｔｒ３１２にはクロック信号ＣＫがそれぞれゲートに入力される。
【００４９】
３１３はＰ−Ｔｒであって、クロック信号ＣＫがゲートに入力されている。３１４，３１５，３１６はＮ−Ｔｒであって、Ｎ−Ｔｒ３１５にはレベルラッチ３１７の出力が、Ｎ−Ｔｒ３１４にはレベルラッチ３１８の出力が、Ｎ−Ｔｒ３１６にはクロック信号ＣＫがそれぞれゲートに入力される。
【００５０】
３０４，３０８はインバータであって、Ｐ−Ｔｒ３０９，３１３、Ｎ−Ｔｒ３１０，３１１，３１２，３１４，３１５，３１６と共に、デコード回路３１９を構成している。このデコード回路３１９は請求項７に記載のデコード回路に対応している。
【００５１】
以下、実施の形態２におけるデータ一時記憶装置の動作について説明する。レベルラッチ３１７は、ＣＫ＝０の期間、すなわち請求項７に記載の第一の位相に対応する期間は、入力端子ＤＩＮ１の値をインバータ３０２から出力し、ＣＫ＝１の期間、すなわち請求項７に記載の第一の位相と逆位相の期間は、ＣＫ＝０からＣＫ＝１に変化する直前の値をインバータ３０２から出力する。
【００５２】
レベルラッチ３１８は、レベルラッチ３１７と同様に、ＣＫ＝０の期間は、入力端子ＤＩＮ２の値をインバータ３０６から出力し、ＣＫ＝１の期間は、ＣＫ＝０からＣＫ＝１に変化する直前の値をインバータ３０６から出力する。
【００５３】
デコード回路３１９は、ＣＫ＝０の期間は、Ｐ−Ｔｒ３０９がオンとなりインバータ３０４が０を出力し、Ｐ−Ｔｒ３１３がオンとなりインバータ３０８が０を出力する。
【００５４】
ＣＫ＝１の期間は、Ｎ−Ｔｒ３１２，３１６がオンとなり、インバータ３０２の出力すなわちレベルラッチ３１７の出力が１であって、かつ、インバータ３０６の出力すなわちレベルラッチ３１８の出力が１であれば、Ｎ−Ｔｒ３１０，Ｔｒ３１１がオンとなり、インバータ３０４の入力ゲートの電荷がＮ−Ｔｒ３１０，３１１，３１２を通ってディスチャージされて０になるので、インバータ３０４が１を出力し、インバータ３０４の出力すなわちレベルラッチ３１７の出力もしくは、インバータ３０６の出力すなわちレベルラッチ３１８の出力が０であれば、Ｎ−Ｔｒ３１０もしくはＮ−Ｔｒ３１１がオフとなり、インバータ３０４の入力ゲートの電荷はディスチャージされずに１のままとなるので、インバータ３０４は０を出力する。
【００５５】
一方、インバータ３０２の出力すなわちレベルラッチ３１７の出力もしくは、インバータ３０６の出力すなわちレベルラッチ３１８の出力が１であれば、Ｎ−Ｔｒ３１４もしくはＮ−Ｔｒ３１５がオンとなり、インバータ３０８の入力ゲートの電荷がＮ−Ｔｒ３１４もしくはＮ−Ｔｒ３１５、およびＮ−Ｔｒ３１６を通ってディスチャージされて０になるのでインバータ３０８が１を出力し、インバータ３０２の出力すなわちレベルラッチ３１７の出力が０であって、かつ、インバータ３０６の出力すなわちレベルラッチ３１８の出力が０であれば、Ｎ−Ｔｒ３１４，３１５がオフとなり、インバータ３０８の入力ゲートの電荷はディスチャージされずに１のままとなるので、インバータ３０８は０を出力する。
【００５６】
すなわち、本発明の実施の形態２におけるデータ一時記憶装置の動作は、クロック信号ＣＫ＝１の期間は、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮ１の値とＤＩＮ２の値の論理積信号をＧＯＵＴから出力し、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮ１の値とＤＩＮ２の値の論理和信号をＰＯＵＴから出力し、クロック信号ＣＫ＝０の期間は、ＧＯＵＴから０、ＰＯＵＴから０を出力することとなる。
【００５７】
図４は、上記した本実施の形態２におけるデータ一時記憶装置の動作タイミングチャートを示したものである。
【００５８】
以上のように構成された本実施の形態２におけるデータ一時記憶装置は、上記構成のレベルラッチ３１７とレベルラッチ３１８とデコード回路３１９を図３のように配置接続することによって、クロック信号ＣＫ＝１の期間は、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮ１とＤＩＮ２の値の論理積をＧＯＵＴから出力し、論理和をＰＯＵＴから出力し、クロック信号ＣＫ＝０の期間は、ＧＯＵＴ，ＰＯＵＴ共に０を出力することができる。
【００５９】
なお、レベルラッチ３１７，レベルラッチ３１８，デコード回路３１９は、上記した回路構成以外の構成であっても構わない。また、実施の形態２では、レベルラッチの数が２個の場合を例として示したが、２個以外の場合であってもよい。また、ＣＫ＝１の期間に入力端子の論理積信号と論理和信号を出力する構成について説明したが、これ以外の論理演算結果を出力する構成であっても構わない。
【００６０】
（実施の形態３）
図５は、本発明の実施の形態３におけるデータ一時記憶装置の回路を示したものである。図５において、５０１はトライステートインバータであって、制御信号としてクロック信号ＣＫが入力されており、ＣＫ＝１の時に出力がハイインピーダンス状態となり、ＣＫ＝０の時にインバータ動作をする。５０３はトライステートインバータであって、制御信号としてＣＫが入力されており、ＣＫ＝０の時に出力がハイインピーダンス状態となり、ＣＫ＝１の時にインバータ動作をする。５０２はインバータである。
【００６１】
トライステートインバータ５０１とインバータ５０２とトライステートインバータ５０３を図のように接続することにより、ＣＫ＝０の時にデータ書き込み、ＣＫ＝１の時にデータ保持となるレベルラッチ５１９を構成している。
【００６２】
５０５はトライステートインバータであって、制御信号としてクロック信号ＣＫが入力されており、ＣＫ＝１の時に出力がハイインピーダンス状態となり、ＣＫ＝０の時にインバータ動作をする。５０７はトライステートインバータであって、制御信号としてＣＫが入力されており、ＣＫ＝０の時に出力がハイインピーダンス状態となり、ＣＫ＝１の時にインバータ動作をする。５０６はインバータである。
【００６３】
トライステートインバータ５０５とインバータ５０６とトライステートインバータ５０７を図のように接続することにより、ＣＫ＝０の時にデータ書き込み、ＣＫ＝１の時にデータ保持となるレベルラッチ５２０を構成している。
【００６４】
レベルラッチ５１９とレベルラッチ５２０は請求項１０に記載の２つのレベルラッチに対応している。
【００６５】
５０９はＰチャンネンルトランジスタ（以下Ｐ−Ｔｒ）であって、クロック信号ＣＫがゲートに入力されている。５１０，５１１，５１２はＮチャンネルトランジスタ（以下Ｎ−Ｔｒ）であって、Ｎ−Ｔｒ５１０にはレベルラッチ５１９の出力が、Ｎ−Ｔｒ５１１にはレベルラッチ５２０の出力が、Ｎ−Ｔｒ５１２にはクロック信号ＣＫがそれぞれゲートに入力される。
【００６６】
５１３はＰ−Ｔｒであって、クロック信号ＣＫがゲートに入力されている。５１４，５１５，５１６，５１７，５１８はＮ−Ｔｒであって、Ｎ−Ｔｒ５１４にはレベルラッチ５１９の出力が、Ｎ−Ｔｒ５１５にはトライステートインバータ５０５の出力すなわちレベルラッチ５２０の出力の反転信号が、Ｎ−Ｔｒ５１６にはレベルラッチ５２０の出力が、Ｎ−Ｔｒ５１７にはトライステートインバータ５０１の出力すなわちレベルラッチ５１９の出力の反転信号が、Ｎ−Ｔｒ５１８にはクロック信号ＣＫがそれぞれゲートに入力される。
【００６７】
５０４、５０８はインバータであって、Ｐ−Ｔｒ５０９，５１３、Ｎ−Ｔｒ５１０，５１１，５１２，５１４，５１５，５１６，５１７，５１８と共に、デコード回路５２１を構成している。このデコード回路５２１は請求項１０に記載のデコード回路に対応している。
【００６８】
以下、実施の形態３におけるデータ一時記憶装置の動作について説明する。レベルラッチ５１９は、ＣＫ＝０の期間、すなわち請求項１０に記載の第一の位相に対応する期間は、入力端子ＤＩＮ１の値をインバータ５０２から出力し、ＣＫ＝１の期間、すなわち請求項１０に記載の第一の位相と逆位相の期間は、ＣＫ＝０からＣＫ＝１に変化する直前の値をインバータ５０２から出力する。
【００６９】
レベルラッチ５２０は、レベルラッチ５１９と同様に、ＣＫ＝０の期間は、入力端子ＤＩＮ２の値をインバータ５０６から出力し、ＣＫ＝１の期間は、ＣＫ＝０からＣＫ＝１に変化する直前の値をインバータ５０６から出力する。
【００７０】
デコード回路５２１は、ＣＫ＝０の期間は、Ｐ−Ｔｒ５０９がオンとなりインバータ５０４が０を出力し、Ｐ−Ｔｒ５１３がオンとなりインバータ５０８が０を出力する。
【００７１】
ＣＫ＝１の期間は、Ｎ−Ｔｒ５１２、５１８がオンとなり、インバータ５０２の出力すなわちレベルラッチ５１９の出力が１であって、かつ、インバータ５０６の出力すなわちレベルラッチ５２０の出力が１であれば、Ｎ−Ｔｒ５１０，５１１がオンとなり、インバータ５０４の入力ゲートの電荷がＮ−Ｔｒ５１０，５１１，５１２を通ってディスチャージされて０になるので、インバータ５０４が１を出力し、インバータ５０４の出力すなわちレベルラッチ５１９の出力もしくは、インバータ５０６の出力すなわちレベルラッチ５２０の出力が０であれば、Ｎ−Ｔｒ５１０もしくはＮ−Ｔｒ５１１がオフとなり、インバータ５０４の入力ゲートの電荷はディスチャージされずに１のままとなるので、インバータ５０４は０を出力する。
【００７２】
一方、インバータ５０２の出力すなわちレベルラッチ５１９の出力が１であって、かつ、トライステートインバータ５０５の出力すなわちレベルラッチ５２０の出力の反転信号が１である場合、もしくは、インバータ５０６の出力すなわちレベルラッチ５２０の出力が１であって、かつ、トライステートインバータ５０１の出力すなわちレベルラッチ５２０の出力の反転信号が１である場合は、Ｎ−Ｔｒ５１４，５１５もしくはＮ−Ｔｒ５１６，５１７がオンとなり、インバータ５０８の入力ゲートの電荷がＮ−Ｔｒ５１４，５１５，５１８もしくはＮ−Ｔｒ５１６，５１７，５１８を通ってディスチャージされて０になるのでインバータ５０８が１を出力する。インバータ５０２の出力すなわちレベルラッチ５１９の出力が０、もしくはトライステートインバータ５０５の出力すなわちレベルラッチ５２０の出力の反転信号が０である場合、かつ、インバータ５０６の出力すなわちレベルラッチ５２０の出力が０、もしくはトライステートインバータ５０１の出力すなわちレベルラッチ５１９の出力の反転信号が０である場合であれば、インバータ５０８の入力ゲートからグラウンドへの経路がオフになるので、インバータ５０８の入力ゲートの電荷はディスチャージされずに１のままとなり、したがって、インバータ５０８は０を出力する。
【００７３】
すなわち、本発明の実施の形態３におけるデータ一時記憶装置の動作は、クロック信号ＣＫ＝１の期間は、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮ１の値とＤＩＮ２の値の論理積信号をＧＯＵＴから出力し、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮ１の値とＤＩＮ２の値の排他的論理和信号をＰＯＵＴから出力し、クロック信号ＣＫ＝０の期間は、ＧＯＵＴから０、ＰＯＵＴから０を出力することとなる。
【００７４】
図６は、上記した本実施の形態３におけるデータ一時記憶装置の動作タイミングチャートを示したものである。
【００７５】
以上のように構成された本実施の形態３におけるデータ一時記憶装置は、上記構成のレベルラッチ５１９とレベルラッチ５２０とデコード回路５２１を図５のように配置接続することによって、クロック信号ＣＫ＝１の期間は、クロック信号ＣＫの立ち上がりエッジのタイミングのＤＩＮ１とＤＩＮ２の値の論理積をＧＯＵＴから出力し、排他的論理和をＰＯＵＴから出力し、クロック信号ＣＫ＝０の期間は、ＧＯＵＴ，ＰＯＵＴ共に０を出力することができる。
【００７６】
なお、レベルラッチ５１９，レベルラッチ５２０，デコード回路５２１は、上記した回路構成以外の構成であっても構わない。また、実施の形態３では、レベルラッチの数が２個の場合を例として示したが、２個以外の場合であってもよい。また、ＣＫ＝１の期間に入力端子の論理積信号と排他的論理和信号を出力する構成について説明したが、これ以外の論理演算結果を出力する構成であっても構わない。
【００７７】
また、一般的に、デコード回路のデータ出力端子はレベルラッチの数と同数である必要はない。例えば、レベルラッチを２つ持ち、デコード回路として、図３中の論理積，論理和を取り出す回路および図５中の排他的論理和を取り出す回路の３つのデータ出力端子を持つデコード回路を構成することも可能である。
【００７８】
【発明の効果】
以上説明したように、本発明の演算器に有するデータ一時記憶装置は、
（１）クロック信号とデータ信号を入力し、前記クロック信号が第一の位相である期間はデータ書き込みとなり、前記クロック信号が前記第一の位相と逆位相である期間はデータ保持となるレベルラッチと、クロック信号とレベルラッチの出力信号を入力し、クロック信号が第一の位相である期間は０を出力し、クロック信号が第一の位相と逆位相である期間はレベルラッチからの入力信号の値を出力するデコード回路とから構成され、また、
（２）各々がクロック信号とデータ信号を入力し、クロック信号が第一の位相である期間はデータ書き込みとなり、クロック信号が第一の位相と逆位相である期間はデータ保持となる複数のレベルラッチと、レベルラッチの数と同数のデータ入力端子および任意の複数の出力端子を有し、クロック信号と複数のレベルラッチの各出力信号を入力して、クロック信号が第一の位相である期間は、各出力端子がそれぞれ０を出力し、クロック信号が第一の位相と逆位相である期間は、各出力端子がそれぞれ複数のレベルラッチからの各入力信号の値のそれぞれ異なる論理演算結果を出力するデコード回路とから構成される。
【００７９】
これにより、本発明の演算器は、従来の技術において、マンチェスタ桁上げ加算器の桁上げ連鎖部に代表されるドミノ論理回路で必要であった、クロック信号が０の期間にオフになりプリチャージノードのプリチャージ状態を破壊してしまわないためのＮ−Ｔｒを排除し、ドミノ論理回路の動作遅延時間を向上することができるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施の形態１におけるデータ一時記憶装置の回路図
【図２】本発明の実施の形態１におけるデータ一時記憶装置の動作タイミングチャート
【図３】本発明の実施の形態２におけるデータ一時記憶装置の回路図
【図４】本発明の実施の形態２におけるデータ一時記憶装置の動作タイミングチャート
【図５】本発明の実施の形態３におけるデータ一時記憶装置の回路図
【図６】本発明の実施の形態３におけるデータ一時記憶装置の動作タイミングチャート
【図７】従来からあるドミノ論理回路の一種である、マンチェスタ桁上げ加算器の桁上げ連鎖部の一例の回路図
【図８】従来のデータ一時記憶装置の一例である、フリップフロップの回路図
【図９】従来のデータ一時記憶装置の一例である、フリップフロップの動作タイミングチャート
【図１０】従来からある論理積回路の一例の回路図
【図１１】従来からある排他的論理和回路の一例の回路図
【符号の説明】
１０１，１０３，３０１，３０３，３０５，３０７，５０１，５０３，５０５，５０７ トライステートインバータ
１０２，１０７，３０２，３０４，３０６，３０８，５０２，５０４，５０６，５０８ インバータ
１０４，３０９，３１３，５０９，５１３ Ｐチャンネルトランジスタ
１０５，１０６，３１０，３１１，３１２，３１４，３１５，３１６，５１０，５１１，５１２，５１４，５１５，５１６，５１７，５１８ Ｎチャンネルトランジスタ
１０８，３１７，３１８，５１９，５２０ レベルラッチ
１０９，３１９，５２１ デコード回路
【図１】
0003923672.tif 000002
【図２】
0003923672.tif 000003
【図３】
0003923672.tif 000004
【図４】
0003923672.tif 000005
【図５】
0003923672.tif 000006
【図６】
0003923672.tif 000007
【図７】
0003923672.tif 000008
【図８】
0003923672.tif 000009
【図９】
0003923672.tif 000010
【図１０】
0003923672.tif 000011
【図１１】
0003923672.tif 000012