(57)【要約】  【課題】  廉価な通常のＣＭＯＳプロセスで製造でき且つ低消費電力性を実現可能としたサインデジット数に対応するＣＭＯＳ加算器を提供すること。  【解決手段】  「＋１」、「０」、「−１」の３値のサインデジット数による２つの信号ＡとＢを入力して加算信号Ｓ１を出力する加算部１と、２つの信号ＡとＢを入力して桁上げ信号Ｃ１を出力する桁上げ部２とを具備する。信号Ｓ１は、信号Ａ，Ｂの一方が「＋１」で他方が「０」のとき「−１」、信号Ａ，Ｂの一方が「−１」で他方が「０」のとき「＋１」、それ以外のとき「０」となる。信号Ｃ１は、信号Ａ，Ｂがともに「＋１」又は一方が「＋１」で他方が「０」のとき「＋１」、信号Ａ，Ｂがともに「−１」又は一方が「−１」で他方が「０」のとき「−１」、それ以外のとき「０」となる。【選択図】  図１
2005078611.tif 000002
【特許請求の範囲】
【請求項１】
「＋１」、「０」、「−１」の３値のサインデジット数による２つの入力信号ＡとＢを入力して第１の加算信号Ｓ１を出力する第１の加算部と、前記２つの入力信号ＡとＢを入力して第１の桁上げ信号Ｃ１を出力する第１の桁上げ部とを具備するＣＭＯＳ加算器であって、
前記第１の加算信号Ｓ１は、前記入力信号Ａ，Ｂの一方が「＋１」で他方が「０」のとき「−１」、前記入力信号Ａ，Ｂの一方が「−１」で他方が「０」のとき「＋１」、それ以外のとき「０」となり、
前記第１の桁上げ部信号Ｃ１は、前記入力信号Ａ，Ｂがともに「＋１」又は一方が「＋１」で他方が「０」のとき「＋１」、前記入力信号Ａ，Ｂがともに「−１」又は一方が「−１」で他方が「０」のとき「−１」、それ以外のとき「０」となる、
ようにしたことを特徴とするＣＭＯＳ加算器。
【請求項２】
請求項１に記載のＣＭＯＳ加算器において、
前記信号Ｓ１と１ビット前の桁上げ信号Ｃi-1を入力して第２の加算信号Ｓｉを出力する第２の加算部と、前記信号Ｓ１と前記信号Ｃi-1を入力して第２の桁上げ信号Ｃ２を出力する第２の桁上げ部と、前記信号Ｃ１と前記信号Ｃ２を入力して第３の桁上げ信号Ｃｉを出力する第３の加算部とを具備し、
前記信号Ｓｉは、前記信号Ｓ１と前記信号Ｃi-1の一方が「＋１」で他方が「０」のとき「＋１」、前記信号Ｓ１と前記信号Ｃi-1の一方が「−１」で他方が「０」のとき「−１」、それ以外で「０」となり、
前記信号Ｃ２は、前記信号Ｓ１と前記信号Ｃi-1がともに「＋１」のとき「＋１」、前記信号Ｓ１と前記信号Ｃi-1がともに「−１」のとき「−１」、それ以外で「０」となり、
前記信号Ｃｉは、前記信号Ｃ１と前記信号Ｃ２の一方が「＋１」で他方が「０」のとき「＋１」、前記信号Ｃ１と前記信号Ｃ２の一方が「−１」で他方が「０」のとき「−１」、それ以外で「０」となる、
ようにしたことを特徴とするＣＭＯＳ加算器。
【請求項３】
請求項１に記載のＣＭＯＳ加算器において、前記第１の加算部は、
３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂを入力して前記信号Ｓ１を出力する加算部であって、
前記電圧ＶＤＤ２の端子と前記信号Ｓ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第１の直列回路と、
前記電圧ＶＤＤ２の端子と前記信号Ｓ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第２の直列回路と、
前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｓ１の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第３の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｓ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第４の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｓ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第５の直列回路と、
前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｓ１の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第６の直列回路と、を具備し、
前記第１の直列回路の各トランジスタのゲートには、前記信号Ａを反転した信号ＡＢを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡＢ２１、前記信号Ｂ、前記信号Ｂを反転した信号ＢＢがそれぞれ入力し、
前記第２の直列回路の各トランジスタのゲートには、前記信号ＢＢを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢＢ２１、前記信号Ａ、前記信号ＡＢがそれぞれ入力し、
前記第４の直列回路の各トランジスタのゲートには、前記信号ＡＢを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡＢ１０、前記信号Ｂ、前記信号ＢＢがそれぞれ入力し、
前記第５の直列回路の各トランジスタのゲートには、前記信号ＢＢを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢＢ１０、前記信号Ａ、前記信号ＡＢがそれぞれ入力する、
ようにしたことを特徴とするＣＭＯＳ加算器。
【請求項４】
請求項１に記載のＣＭＯＳ加算器において、前記第１の桁上げ部は、
３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂを入力して前記信号Ｃ１を出力する桁上げ部であって、
前記電圧ＶＤＤ２の端子と前記信号Ｃ１の端子との間に接続され２個のＰＭＯＳトランジスタの直列回路からなる第７の直列回路と、
前記電圧ＶＤＤ２の端子と前記信号Ｃ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第８の直列回路と、
前記電圧ＶＤＤ２の端子と前記信号Ｃ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第９の直列回路と、
前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｃ１の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第１０の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｃ１の端子との間に接続され２個のＮＭＯＳトランジスタの直列回路からなる第１１の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｃ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１２の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｃ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１３の直列回路と、
前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｃ１の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第１４の直列回路と、を具備し、
前記第７の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ２１、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１がそれぞれ入力し、
前記第８の直列回路の各トランジスタのゲートには、前記信号ＩＮＶＡ２１、前記信号Ｂ、前記信号Ｂを反転した信号ＢＢがそれぞれ入力し、
前記第９の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１、前記信号Ａ、前記信号Ａを反転した信号ＡＢがそれぞれ入力し、
前記第１１の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ１０、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０がそれぞれ入力し、
前記第１２の直列回路の各トランジスタのゲートには、前記信号ＩＮＶＡ１０、前記信号Ｂ、前記信号ＢＢがそれぞれ入力し、
前記第１３の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０、前記信号Ａ、前記信号ＡＢがそれぞれ入力する、
ようにしたことを特徴とするＣＭＯＳ加算器。
【請求項５】
請求項２に記載のＣＭＯＳ加算器において、前記第２又は第３の加算部は、
３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂ（但し、Ａは前記信号Ｓ１、Ｂは前記信号Ｃi-1、又はＡは前記信号Ｃ１、Ｂは前記信号Ｃ２）を入力して信号Ｓ２（前記信号Ｓｉ又は前記信号Ｃｉ）を出力する加算部であって、
前記電圧ＶＤＤ２の端子と前記信号Ｓ２の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第１５の直列回路と、
前記電圧ＶＤＤ２の端子と前記信号Ｓ２の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第１６の直列回路と、
前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｓ２の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第１７の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｓ２の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１８の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｓ２の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１９の直列回路と、
前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｓ２の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第２０の直列回路と、を具備し、
前記第１５の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ２１、前記信号Ｂ、前記信号Ｂを反転した信号ＢＢがそれぞれ入力し、
前記第１６の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１、前記信号Ａ、前記信号Ａを反転した信号ＡＢがそれぞれ入力し、
前記第１８の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ１０、前記信号Ｂ、前記信号ＢＢがそれぞれ入力し、
前記第１９の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０、前記信号Ａ、前記信号ＡＢがそれぞれ入力する、
ようにしたことを特徴とするＣＭＯＳ加算器。
【請求項６】
請求項２に記載のＣＭＯＳ加算器において、前記第２の桁上げ部は、
３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂ（但し、Ａは前記信号Ｓ１、Ｂは前記信号Ｃi-1）を入力して前記信号Ｃ２を出力する桁上げ部であって、
前記電圧ＶＤＤ２の端子と前記信号Ｃ２の端子との間に接続され２個のＰＭＯＳトランジスタの直列回路からなる第２１の直列回路と、
前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｃ２の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第２２の直列回路と、
前記電圧ＶＤＤ０の端子と前記信号Ｃ２の端子との間に接続され２個のＮＭＯＳトランジスタの直列回路からなる第２３の直列回路と、
前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｃ２の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第２４の直列回路と、を具備し、
前記第２１の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ２１、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１がそれぞれ入力し、
前記第２３の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ１０、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０がそれぞれ入力する、
ようにしたことを特徴とするＣＭＯＳ加算器。
【請求項７】
請求項３の第３の直列回路と第６の直列回路、請求項４の第１０の直列回路と第１４の直列回路、請求項５の第１７の直列回路と第２０の直列回路、又は請求項６の第２２の直列回路と第２４の直列回路において、
前記電流源用のＰＭＯＳトランジスタのゲートには前記ＶＤＤ１の端子又は前記２個のＮＭＯＳトランジスタの共通接続点が接続され、
前記電流源用のＮＭＯＳトランジスタのゲートには前記ＶＤＤ１の端子又は前記２個のＰＭＯＳトランジスタの共通接続点が接続されている、
ことを特徴とするＣＭＯＳ加算器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３値のサインデジット数のデータを入力して加算を行い３値のサインデジット数の加算信号と桁上げ信号を出力するＣＭＯＳ加算器に関するものである。
【背景技術】
【０００２】
多値のサインデジット数を用いたデジタル信号のＣＭＯＳ加算器の要部回路の従来の構成例として、それぞれ２つ以上のしきい値電圧を有するＮＭＯＳトランジスタやＰＭＯＳトランジスタを用いて構成した例、あるいは電流モード回路の構成例が知られている（非特許文献１，２）。
【非特許文献１】松本外２名著、「ＭＯＳトランジスタとキャパシタ・メモリを使った４値論理回路の設計」、電子情報通信学会論文誌、第Ｊ７０−Ｄ巻、第１号、５０−５９頁、１９８７年１月
【非特許文献２】亀山外２名著、「Signed-Digit数系に基づく双方向電流モード多値基本演算回路とその評価」、電子情報通信学会論文誌、第Ｊ７１−Ｄ巻、第７号、１１８９−１１９８頁、１９８８年７月
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、それぞれ２つ以上の多値しきい値電圧を有するＮＭＯＳトランジスタやＰＭＯＳトランジスタを用いたＣＭＯＳ加算器は、通常のＣＭＯＳプロセスでは製造できないため、製品コストが高価となる問題点があった。また、電流モード回路の構成例では、スタティックな動作電流が発生し、ＬＳＩに多数搭載しようとすると低消費電力が阻害される問題点があった。
【０００４】
本発明の目的は上記問題点を解消し廉価な通常のＣＭＯＳプロセスで製造でき且つ低消費電力性を実現可能としたサインデジット数に対応するＣＭＯＳ加算器を提供することである。
【課題を解決するための手段】
【０００５】
請求項１にかかる発明は、「＋１」、「０」、「−１」の３値のサインデジット数による２つの入力信号ＡとＢを入力して第１の加算信号Ｓ１を出力する第１の加算部と、前記２つの入力信号ＡとＢを入力して第１の桁上げ信号Ｃ１を出力する第１の桁上げ部とを具備するＣＭＯＳ加算器であって、前記第１の加算信号Ｓ１は、前記入力信号Ａ，Ｂの一方が「＋１」で他方が「０」のとき「−１」、前記入力信号Ａ，Ｂの一方が「−１」で他方が「０」のとき「＋１」、それ以外のとき「０」となり、前記第１の桁上げ部信号Ｃ１は、前記入力信号Ａ，Ｂがともに「＋１」又は一方が「＋１」で他方が「０」のとき「＋１」、前記入力信号Ａ，Ｂがともに「−１」又は一方が「−１」で他方が「０」のとき「−１」、それ以外のとき「０」となる、ようにしたことを特徴とする。
請求項２にかかる発明は、請求項１に記載のＣＭＯＳ加算器において、前記信号Ｓ１と１ビット前の桁上げ信号Ｃi-1を入力して第２の加算信号Ｓｉを出力する第２の加算部と、前記信号Ｓ１と前記信号Ｃi-1を入力して第２の桁上げ信号Ｃ２を出力する第２の桁上げ部と、前記信号Ｃ１と前記信号Ｃ２を入力して第３の桁上げ信号Ｃｉを出力する第３の加算部とを具備し、前記信号Ｓｉは、前記信号Ｓ１と前記信号Ｃi-1の一方が「＋１」で他方が「０」のとき「＋１」、前記信号Ｓ１と前記信号Ｃi-1の一方が「−１」で他方が「０」のとき「−１」、それ以外で「０」となり、前記信号Ｃ２は、前記信号Ｓ１と前記信号Ｃi-1がともに「＋１」のとき「＋１」、前記信号Ｓ１と前記信号Ｃi-1がともに「−１」のとき「−１」、それ以外で「０」となり、前記信号Ｃｉは、前記信号Ｃ１と前記信号Ｃ２の一方が「＋１」で他方が「０」のとき「＋１」、前記信号Ｃ１と前記信号Ｃ２の一方が「−１」で他方が「０」のとき「−１」、それ以外で「０」となる、ようにしたことを特徴とする。
請求項３にかかる発明は、請求項１に記載のＣＭＯＳ加算器において、前記第１の加算部は、３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂを入力して前記信号Ｓ１を出力する加算部であって、前記電圧ＶＤＤ２の端子と前記信号Ｓ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第１の直列回路と、前記電圧ＶＤＤ２の端子と前記信号Ｓ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第２の直列回路と、前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｓ１の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第３の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｓ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第４の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｓ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第５の直列回路と、前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｓ１の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第６の直列回路と、を具備し、前記第１の直列回路の各トランジスタのゲートには、前記信号Ａを反転した信号ＡＢを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡＢ２１、前記信号Ｂ、前記信号Ｂを反転した信号ＢＢがそれぞれ入力し、前記第２の直列回路の各トランジスタのゲートには、前記信号ＢＢを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢＢ２１、前記信号Ａ、前記信号ＡＢがそれぞれ入力し、前記第４の直列回路の各トランジスタのゲートには、前記信号ＡＢを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡＢ１０、前記信号Ｂ、前記信号ＢＢがそれぞれ入力し、前記第５の直列回路の各トランジスタのゲートには、前記信号ＢＢを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢＢ１０、前記信号Ａ、前記信号ＡＢがそれぞれ入力する、ようにしたことを特徴とする。
請求項４にかかる発明は、請求項１に記載のＣＭＯＳ加算器において、前記第１の桁上げ部は、３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂを入力して前記信号Ｃ１を出力する桁上げ部であって、前記電圧ＶＤＤ２の端子と前記信号Ｃ１の端子との間に接続され２個のＰＭＯＳトランジスタの直列回路からなる第７の直列回路と、前記電圧ＶＤＤ２の端子と前記信号Ｃ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第８の直列回路と、前記電圧ＶＤＤ２の端子と前記信号Ｃ１の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第９の直列回路と、前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｃ１の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第１０の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｃ１の端子との間に接続され２個のＮＭＯＳトランジスタの直列回路からなる第１１の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｃ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１２の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｃ１の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１３の直列回路と、前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｃ１の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第１４の直列回路と、を具備し、前記第７の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ２１、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１がそれぞれ入力し、前記第８の直列回路の各トランジスタのゲートには、前記信号ＩＮＶＡ２１、前記信号Ｂ、前記信号Ｂを反転した信号ＢＢがそれぞれ入力し、前記第９の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１、前記信号Ａ、前記信号Ａを反転した信号ＡＢがそれぞれ入力し、前記第１１の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ１０、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０がそれぞれ入力し、前記第１２の直列回路の各トランジスタのゲートには、前記信号ＩＮＶＡ１０、前記信号Ｂ、前記信号ＢＢがそれぞれ入力し、前記第１３の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０、前記信号Ａ、前記信号ＡＢがそれぞれ入力する、ようにしたことを特徴とする。
請求項５にかかる発明は、請求項２に記載のＣＭＯＳ加算器において、前記第２又は第３の加算部は、３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂ（但し、Ａは前記信号Ｓ１、Ｂは前記信号Ｃi-1、又はＡは前記信号Ｃ１、Ｂは前記信号Ｃ２）を入力して信号Ｓ２（前記信号Ｓｉ又は前記信号Ｃｉ）を出力する加算部であって、前記電圧ＶＤＤ２の端子と前記信号Ｓ２の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第１５の直列回路と、前記電圧ＶＤＤ２の端子と前記信号Ｓ２の端子との間に接続され３個のＰＭＯＳトランジスタの直列回路からなる第１６の直列回路と、前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｓ２の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第１７の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｓ２の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１８の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｓ２の端子との間に接続され３個のＮＭＯＳトランジスタの直列回路からなる第１９の直列回路と、前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｓ２の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第２０の直列回路と、を具備し、前記第１５の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ２１、前記信号Ｂ、前記信号Ｂを反転した信号ＢＢがそれぞれ入力し、前記第１６の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１、前記信号Ａ、前記信号Ａを反転した信号ＡＢがそれぞれ入力し、前記第１８の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ１０、前記信号Ｂ、前記信号ＢＢがそれぞれ入力し、前記第１９の直列回路の各トランジスタのゲートには、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０、前記信号Ａ、前記信号ＡＢがそれぞれ入力する、ようにしたことを特徴とする。
請求項６にかかる発明は、請求項２に記載のＣＭＯＳ加算器において、前記第２の桁上げ部は、３値のサインデジット数「−１」、「０」、「＋１」に対応する電圧ＶＤＤ０，ＶＤＤ１，ＶＤＤ２（ＶＤＤ０＜ＶＤＤ１＜ＶＤＤ２）のいずれかの２個の信号Ａ，Ｂ（但し、Ａは前記信号Ｓ１、Ｂは前記信号Ｃi-1）を入力して前記信号Ｃ２を出力する桁上げ部であって、前記電圧ＶＤＤ２の端子と前記信号Ｃ２の端子との間に接続され２個のＰＭＯＳトランジスタの直列回路からなる第２１の直列回路と、前記電圧ＶＤＤ２の端子に接続された電流源用のＰＭＯＳトランジスタと前記信号Ｃ２の端子に接続された電流源用のＰＭＯＳトランジスタとの直列回路からなる第２２の直列回路と、前記電圧ＶＤＤ０の端子と前記信号Ｃ２の端子との間に接続され２個のＮＭＯＳトランジスタの直列回路からなる第２３の直列回路と、前記電圧ＶＤＤ０の端子に接続された電流源用のＮＭＯＳトランジスタと前記信号Ｃ２の端子に接続された電流源用のＮＭＯＳトランジスタとの直列回路からなる第２４の直列回路と、を具備し、前記第２１の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ２１、前記信号Ｂを前記ＶＤＤ２とＶＤＤ１を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ２１がそれぞれ入力し、前記第２３の直列回路の各トランジスタのゲートには、前記信号Ａを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＡ１０、前記信号Ｂを前記ＶＤＤ１とＶＤＤ０を電源とするＣＭＯＳインバータで反転した信号ＩＮＶＢ１０がそれぞれ入力する、ようにしたことを特徴とする。
請求項７にかかる発明は、請求項３の第３の直列回路と第６の直列回路、請求項４の第１０の直列回路と第１４の直列回路、請求項５の第１７の直列回路と第２０の直列回路、又は請求項６の第２２の直列回路と第２４の直列回路において、前記電流源用のＰＭＯＳトランジスタのゲートには前記ＶＤＤ１の端子又は前記２個のＮＭＯＳトランジスタの共通接続点が接続され、前記電流源用のＮＭＯＳトランジスタのゲートには前記ＶＤＤ１の端子又は前記２個のＰＭＯＳトランジスタの共通接続点が接続されている、ことを特徴とする。
【発明の効果】
【０００６】
本発明のＣＭＯＳ加算器は、加算部と桁上げ部を具備し、３値のサインデジット数「＋１」、「０」、「−１」による入力信号Ａ，Ｂに対応して３値のサインデジット数「＋１」、「０」、「−１」による加算信号や桁上げ信号を出力し、これを実現する回路構成は各トランジスタが１つのしきい値をもつＭＯＳトランジスタですむので、廉価な通常のプロセスで製造できる。またスタティックな動作電流を少なくできるので消費電力が少なくて済み、しかも構成するＭＯＳトランジスタ数が少ないので、ＬＳＩに多数搭載する場合にそのＬＳＩのチップ面積、消費電力を増加させることがない。
【発明を実施するための最良の形態】
【０００７】
本発明のＣＭＯＳ加算器では、１つのしきい値を持つＭＯＳトランジスタを使用して、サインデジット数「＋１」、「０」、「−１」に対応する電圧ＶＤＤ２、ＶＤＤ１、ＶＤＤ０（ＶＤＤ２＞ＶＤＤ１＞ＶＤＤ０）のを２個の信号Ａ，Ｂを入力して演算し、その加算信号と桁上げ信号を出力する。ＶＤＤ１＝（ＶＤＤ２＋ＶＤＤ０）／２である。以下、詳しく説明する。なお、以下では、「ＭＰ」はＰＭＯＳトランジスタを表し、「ＭＮ」はＮＭＯＳトランジスタを表すものとする。
【実施例１】
【０００８】
図１(a)は実施例１の１ビット全加算器の構成を示すブロック図である。本実施例では３値のサインデジット数「＋１」、「０」、「−１」からなる２個の信号Ａ，Ｂを入力信号とする。Ａｉ，Ｂｉはｉビット目の３値のサインデジット数の入力信号、Ｃi-1は１ビット前の桁上げ入力信号、Ｃｉはｉビット目の桁上げ信号、Ｓｉはｉビット目の加算信号である。Ｓ１は中間加算信号、Ｍ１は中間桁上げ信号である。
【０００９】
また、１は信号ＡｉとＢｉを入力して加算信号Ｓ１を出力する第１の加算部（ＳＵＭ１）、２は信号ＡｉとＢｉを入力して桁上げ信号Ｃ１を出力する第１の桁上げ部（ＣＡ１）、３は信号Ｓ１と信号Ｃi-1を入力して加算信号Ｓｉを出力する第２の加算部（ＳＵＭ２）、４は信号Ｓ１と信号Ｃi-1を入力して桁上げ信号Ｃ２を出力する第２の桁上げ部（ＣＡ２）、５は信号Ｃ１とＣ２を入力して桁上げ信号Ｃｉを出力する第３の加算部（ＳＵＭ２）である。
【００１０】
図１(b)は図１(a)の１ビット全加算器の真理値を示す図である。この図１(b)から明らかなように、加算信号Ｓ１は、入力信号Ａ，Ｂの一方が「＋１」で他方が「０」のとき「−１」、入力信号Ａ，Ｂの一方が「−１」で他方が「０」のとき「＋１」となり、それ以外のとき「０」となる。桁上げ部信号Ｃ１は、入力信号Ａ，Ｂがともに「＋１」又は一方が「＋１」で他方が「０」のとき「＋１」、入力信号Ａ，Ｂがともに「−１」又は一方が「−１」で他方が「０」のとき「−１」となり、それ以外のとき「０」となる。
【００１１】
加算信号Ｓｉは、加算信号Ｓ１と桁上げ信号Ｃi-1の一方が「＋１」で他方が「０」のとき「＋１」、加算信号Ｓ１と桁上げ信号Ｃi-1の一方が「−１」で他方が「０」のとき「−１」となり、それ以外で「０」となる。桁上げ信号Ｃ２は、加算信号Ｓ１と桁上げ信号Ｃi-1がともに「＋１」のとき「＋１」、加算信号Ｓ１と加算信号Ｃi-1がともに「−１」のとき「−１」となり、それ以外で「０」となる。桁上げ信号Ｃｉは、桁上げ信号Ｃ１と桁上げ信号Ｃ２の一方が「＋１」で他方が「０」のとき「＋１」、桁上げ信号Ｃ１と桁上げ信号Ｃ２の一方が「−１」で他方が「０」のとき「−１」となり、それ以外で「０」となる。
【００１２】
このように、第２，第３の加算部３，５は第１の加算部１と異なる動作を行う。また、第２の桁上げ部４は第１の桁上げ部と異なる動作を行う。そして、図１(b)の第２の桁上げ部４の桁上げ信号Ｃ２に着目すると、上位桁へ伝搬する桁上げ信号Ｃｉは桁上げ信号Ｃ１で決まり、下位からの桁上げ信号Ｃi-1を伝搬させない。このため、図１(a)のように構成される全加算器を多段に接続して構成した場合、上位桁への桁上げ信号の伝搬を抑え、演算速度の高速化を実現できる。
【実施例２】
【００１３】
図２(a)は図１(a)における第１の加算部（ＳＵＭ１）１の構成を示す回路図である。３値のサインデジット数「＋１」、「０」、「−１」に対応する電源電圧ＶＤＤ２、ＶＤＤ１、ＶＤＤ０は、例えばＶＤＤ２＝１．８Ｖ、ＶＤＤ１＝０．９Ｖ、ＶＤＤ０＝０Ｖである。
【００１４】
加算信号Ｓ１の出力端子とＶＤＤ２の電源端子との間には、トランジスタＭＰ１〜ＭＰ３の直列回路、トランジスタＭＰ４〜ＭＰ６の直列回路、電流源トランジスタＭＰ７とダイオード接続のトランジスタＭＰ８の直列回路が、それぞれ接続されている。また、加算信号Ｓ１の出力端子とＶＤＤ０の電源端子との間には、トランジスタＭＮ１〜ＭＮ３の直列回路、トランジスタＭＮ４〜ＭＮ６の直列回路、電流源トランジスタＭＮ７とダイオード接続のトランジスタＭＮ８の直列回路が、それぞれ接続されている。
【００１５】
それぞれのトランジスタのゲートに印加される信号として、Ａは前記した信号、ＡＢは信号Ａの反転信号、Ｂは前記した信号、ＢＢは信号Ｂの反転信号である。また、ＩＮＶＡＢ２１は、ＶＤＤ２とＶＤＤ１を電圧電圧とする図６(a)に示す構成のトランジスタＭＰ１０１とＭＮ１０１からなるＣＭＯＳインバータにより、信号ＡＢを反転した信号である。ＩＮＶＢＢ２１も同様に信号ＢＢを反転した信号である。また、ＩＮＶＡＢ１０は、ＶＤＤ１とＶＤＤ０を電圧電圧とする図６(b)に示す構成のトランジスタＭＰ１０２とＭＮ１０２からなるＣＭＯＳインバータにより、信号ＡＢを反転した信号である。ＩＮＶＢＢ１０も同様に信号ＢＢを反転した信号である。
【００１６】
図２(b)は(a)の第１の加算部（ＳＵＭ１）１の動作の真理値を示す説明図である。入力信号Ａが「−１」でＢが「０」のときは、トランジスタＭＰ１〜ＭＰ３がいずれもオンとなり加算信号Ｓ１は「＋１」になる。また、入力信号Ａが「０」でＢが「−１」のときも、トランジスタＭＰ４〜ＭＰ６がいずれもオンとなり加算信号Ｓ１は「＋１」になる。
【００１７】
入力信号Ａが「＋１」でＢが「０」のときは、トランジスタＭＮ１〜ＭＮ３がいずれもオンとなり加算信号Ｓ１は「−１」になる。また、入力信号Ａが「０」でＢが「＋１」のときも、トランジスタＭＮ４〜ＭＮ６がいずれもオンとなり加算信号Ｓ１は「−１」になる。
【００１８】
入力信号ＡとＢの組み合わせがその他の場合は、トランジスタＭＰ１〜ＭＰ６，ＭＮ１〜ＭＮ６が全部オフになる。このときは、トランジスタＭＰ７，ＭＰ８，ＭＮ７，ＭＮ８の電流パスにより、加算信号Ｓ１をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する。すなわち、トランジスタＭＰ７，ＭＰ８，ＭＮ７，ＭＮ８の電流パスは、他に電流が流れるパスがない場合に、加算信号Ｓ１をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する機能がある。
【００１９】
他のパスで電流が供給され、加算信号Ｓ１がＶＤＤ２（「＋１」）に確定した場合は、トランジスタＭＮ８のダイオード動作により加算信号Ｓ１とＶＤＤ０の電源端子との間を保持することにより、その加算信号Ｓ１をＶＤＤ２の電圧に保持する。このとき、トランジスタＭＮ７はトランジスタＭＮ８に定電流を供給する機能を果たす。
【００２０】
他のパスで電流が供給され、逆に、加算信号Ｓ１がＶＤＤ０（「−１」）に確定した場合は、トランジスタＭＰ８のダイオード動作により加算信号Ｓ１とＶＤＤ２の電源端子との間を保持することにより、その加算信号Ｓ１をＶＤＤ０の電圧に保持する。このとき、トランジスタＭＰ７はトランジスタＭＰ８に定電流を供給する機能を果す。
【実施例３】
【００２１】
図３(a)は図１(a)における第１の桁上げ部（ＣＡ１）２の構成を示す回路図である。桁上げ信号Ｃ１の出力端子とＶＤＤ２の電源端子との間には、トランジスタＭＰ１１とトランジスタＭＰ１２の直列回路、トランジスタＭＰ１３〜ＭＰ１５の直列回路、トランジスタＭＰ１６〜ＭＰ１８の直列回路、電流源トランジスタＭＰ１９とダイオード接続のトランジスタＭＰ２０の直列回路が、それぞれ接続されている。
【００２２】
また、桁上げ信号Ｃ１の出力端子とＶＤＤ０の電源端子との間には、トランジスタＭＮ１とトランジスタＭＮ１２の直列回路、トランジスタＭＮ１３〜ＭＮ１５の直列回路、トランジスタＭＮ１６〜ＭＮ１８の直列回路、電流源トランジスタＭＮ１９とダイオード接続のトランジスタＭＮ２０の直列回路が、それぞれ接続されている。
【００２３】
それぞれのトランジスタのゲートに印加される信号として、Ａ，ＡＢ，Ｂ，ＢＢは前記した信号である。また、ＩＮＶＡ２１は、ＶＤＤ２とＶＤＤ１を電圧電圧とする図６(c)に示す構成のトランジスタＭＰ１０３とＭＮ１０３からなるＣＭＯＳインバータにより、信号Ａを反転した信号である。ＩＮＶＢ２１も同様に信号Ｂを反転した信号である。また、ＩＮＶＡ１０は、ＶＤＤ１とＶＤＤ０を電圧電圧とする図６(d)に示す構成のトランジスタＭＰ１０４とＭＮ１０４からなるＣＭＯＳインバータにより、信号Ａを反転した信号である。ＩＮＶＢ１０も同様に信号Ｂを反転した信号である。
【００２４】
図３(b)は(a)の第１の桁上げ部（ＣＡ１）２の動作の真理値を示す説明図である。入力信号ＡとＢが「＋１」のときは、トランジスタＭＰ１１とトランジスタＭＰ１２がいずれもオンとなり桁上げ信号Ｃ１は「＋１」になる。また、入力信号Ａが「＋１」でＢが「０」のときも、トランジスタＭＰ１３〜ＭＰ１５がいずれもオンとなり桁上げ信号Ｃ１は「＋１」になる。また、入力信号Ａが「０」でＢが「＋１」のときも、トランジスタＭＰ１７〜ＭＰ１８がいずれもオンとなり桁上げ信号Ｃ１は「＋１」になる。
【００２５】
入力信号Ａが「−１」でＢが「−１」のときは、トランジスタＭＮ１２とトランジスタＭＮ１３がいずれもオンとなり桁上げ信号Ｃ１は「−１」になる。また、入力信号Ａが「−１」でＢが「０」のときも、トランジスタＭＮ１３〜ＭＮ１５がいずれもオンとなり桁上げ信号Ｃ１は「−１」になる。また、入力信号Ａが「０」でＢが「−１」のときも、トランジスタＭＮ１６〜ＭＮ１８がいずれもオンとなり桁上げ信号Ｃ１は「−１」になる。
【００２６】
入力信号ＡとＢの組み合わせがともに「０」、又は「＋１」と「−１」の組み合わせの場合は、トランジスタＭＰ１１〜ＭＰ１８，ＭＮ１１〜ＭＮ８が全部オフになる。このときは、トランジスタＭＰ１９，ＭＰ２０，ＭＮ１９，ＭＮ２０の電流パスにより、桁上げ信号Ｃ１をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する。すなわち、トランジスタＭＰ１９，ＭＰ２０，ＭＮ１９，ＭＮ２０の電流パスは、他に電流が流れるパスがない場合に、桁上げ信号Ｃ１をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する機能がある。
【００２７】
他のパスで電流が供給され、桁上げ信号Ｃ１がＶＤＤ２（「＋１」）に確定した場合は、トランジスタＭＮ２０のダイオード動作により桁上げ信号Ｃ１とＶＤＤ０の電源端子との間を保持することにより、その桁上げ信号Ｃ１をＶＤＤ２の電圧に保持する。このとき、トランジスタＭＮ１９はトランジスタＭＮ２０に定電流を供給する機能を果たす。
【００２８】
他のパスで電流が供給され、逆に、桁上げ信号Ｃ１がＶＤＤ０（「−１」）に確定した場合は、トランジスタＭＰ２０のダイオード動作により桁上げ信号Ｃ１とＶＤＤ２の電源端子との間を保持することにより、その桁上げ信号Ｃ１をＶＤＤ０の電圧に保持する。このとき、トランジスタＭＰ１９はトランジスタＭＰ２０に定電流を供給する機能を果す。
【実施例４】
【００２９】
図４(a)は図１(a)における第２，第３の加算部（ＳＵＭ２）３，５の構成を示す回路図である。加算信号Ｓ２の出力端子とＶＤＤ２の電源端子との間には、トランジスタＭＰ２１〜ＭＰ２３の直列回路、トランジスタＭＰ２４〜ＭＰ２６の直列回路、電流源トランジスタＭＰ２７とダイオード接続のトランジスタＭＰ２８の直列回路が、それぞれ接続されている。また、加算信号Ｓ２の出力端子とＶＤＤ０の電源端子との間には、トランジスタＭＮ２１〜ＭＮ２３の直列回路、トランジスタＭＮ２４〜ＭＮ２６の直列回路、電流源トランジスタＭＮ２７とダイオード接続のトランジスタＭＮ２８の直列回路が、それぞれ接続されている。
【００３０】
それぞれのトランジスタのゲートに印加される信号として、Ａ、ＡＢ，Ｂ，ＢＢ，ＩＮＶＡ２１，ＩＮＶＢ２１，ＩＮＶＡ１０、ＩＮＶＢ１０は図３で説明した場合と同じである。ただし、ここにおける信号ＡとＢは、第２の加算部３の場合は図１(a)における信号Ｓ１と信号Ｃi-1に相当し、第３の加算部５の場合は信号Ｃ１と信号Ｃ２に相当する。
【００３１】
図４(b)は(a)の第２，第３の加算部（ＳＵＭ２）３，５の動作の真理値を示す説明図である。入力信号Ａが「＋１」でＢが「０」のときは、トランジスタＭＰ２１〜ＭＰ２３がいずれもオンとなり加算信号Ｓ２は「＋１」になる。また、入力信号Ａが「０」でＢが「＋１」のときも、トランジスタＭＰ２４〜ＭＰ２６がいずれもオンとなり加算信号Ｓ２は「＋１」になる。
【００３２】
入力信号Ａが「−１」でＢが「０」のときは、トランジスタＭＮ２１〜ＭＮ２３がいずれもオンとなり加算信号Ｓ２は「−１」になる。また、入力信号Ａが「０」でＢが「−１」のときも、トランジスタＭＮ２４〜ＭＮ２６がいずれもオンとなり加算信号Ｓ２は「−１」になる。
【００３３】
入力信号ＡとＢの組み合わせがその他の場合は、トランジスタＭＰ２１〜ＭＰ２６，ＭＮ２１〜ＭＮ２６が全部オフになる。このときは、トランジスタＭＰ２７，ＭＰ２８，ＭＮ２７，ＭＮ２８の電流パスにより、加算信号Ｓ２をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する。すなわち、トランジスタＭＰ２７，ＭＰ２８，ＭＮ２７，ＭＮ２８の電流パスは、他に電流が流れるパスがない場合に、加算信号Ｓ２をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する機能がある。
【００３４】
他のパスで電流が供給され、加算信号Ｓ２がＶＤＤ２（「＋１」）に確定した場合は、トランジスタＭＮ２８のダイオード動作により加算信号Ｓ２とＶＤＤ０の電源端子との間を保持することにより、その加算信号Ｓ２をＶＤＤ２の電圧に保持する。このとき、トランジスタＭＮ２７はトランジスタＭＮ２８に定電流を供給する機能を果たす。
【００３５】
他のパスで電流が供給され、逆に、加算信号Ｓ２がＶＤＤ０（「−１」）に確定した場合は、トランジスタＭＰ２８のダイオード動作により加算信号Ｓ２とＶＤＤ２の電源端子との間を保持することにより、その加算信号Ｓ２をＶＤＤ０の電圧に保持する。このとき、トランジスタＭＰ２７はトランジスタＭＰ２８に定電流を供給する機能を果す。
【実施例５】
【００３６】
図５(a)は図１(a)における桁上げ部（ＣＡ２）４の構成を示す回路図である。桁上げ信号Ｃ２の出力端子とＶＤＤ２の電源端子との間には、トランジスタＭＰ３１とＭＰ３２の直列回路、電流源トランジスタＭＰ３３とダイオード接続のトランジスタＭＰ３４の直列回路が、それぞれ接続されている。
【００３７】
また、加算信号Ｃ２の出力端子とＶＤＤ０の電源端子との間には、トランジスタＭＮ３１とトランジスタＭＮ３２の直列回路、電流源トランジスタＭＮ３３とダイオード接続のトランジスタＭＮ３４の直列回路が、それぞれ接続されている。
【００３８】
それぞれのトランジスタのゲートに印加される信号として、ＩＮＶＡ２１，ＩＮＶＢ２１，ＩＮＶＡ１０、ＩＮＶＢ１０は図２で説明した場合と同じである。ただし、ここにおける信号ＡとＢは、図１(a)における信号Ｓ１と信号Ｃi-1に相当する。
【００３９】
図５(b)は(a)の第２の桁上げ部（ＣＡ２）４の動作の真理値を示す説明図である。入力信号ＡとＢが「＋１」のときは、トランジスタＭＰ２１とＭＰ２２がいずれもオンとなり桁上げ信号Ｃ２は「＋１」になる。また、入力信号ＡとＢが「−１」のときは、トランジスタＭＮ３１とＭＮ３２がいずれもオンとなり桁上げ信号Ｃ２は「−１」になる。
【００４０】
入力信号ＡとＢの組み合わせがそれ以外のときは、トランジスタＭＰ３１、ＭＰ３２，ＭＮ３１，ＭＮ３２が全部オフになる。このときは、トランジスタＭＰ３３，ＭＰ３４，ＭＮ３３，ＭＮ３４の電流パスにより、桁上げ信号Ｃ２をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する。すなわち、トランジスタＭＰ３３，ＭＰ３４，ＭＮ３３，ＭＮ３４の電流パスは、他に電流が流れるパスがない場合に、加算信号Ｓ２をＶＤＤ２とＶＤＤ０の中間の電圧であるＶＤＤ１（「０」）の電圧に保持する機能がある。
【００４１】
他のパスで電流が供給され、桁上げ信号Ｃ２がＶＤＤ２（「＋１」）に確定した場合は、トランジスタＭＮ３４のダイオード動作により桁上げ信号Ｃ２とＶＤＤ０の電源端子との間を保持することにより、その桁上げ信号Ｃ２をＶＤＤ２の電圧に保持する。このとき、トランジスタＭＮ３３はトランジスタＭＮ３４に定電流を供給する機能を果たす。
【００４２】
他のパスで電流が供給され、逆に、桁上げ信号Ｃ２がＶＤＤ０（「−１」）に確定した場合は、トランジスタＭＰ３４のダイオード動作により桁上げ信号Ｃ２とＶＤＤ２の電源端子との間を保持することにより、その桁上げ信号Ｃ２をＶＤＤ０の電圧に保持する。このとき、トランジスタＭＰ３３はトランジスタＭＰ３４に定電流を供給する機能を果す。
【００４３】
なお、この第２の桁上げ部（ＣＡ２）４では、トランジスタＭＰ３３とトランジスタＭＮ３３のゲートにはＶＤＤ１の電源端子を接続せず、トランジスタＭＰ３３のゲートをトランジスタＭＮ３３とトランジスタＭＮ３４の共通接続点に接続し、トランジスタＭＮ３３のゲートをトランジスタＭＰ３３とトランジスタＭＰ３４の共通接続点に接続している。このようにすれば、電流源トランジスタＭＰ３３，ＭＮ３３の電流値が大きくなり、桁上げ信号Ｃ２がＶＤＤ１（「０」）からＶＤＤ２（「＋１」）にあるいはＶＤＤ０（「−１」）に変化する遷移時間を短縮することができる。これは、図２のトランジスタＭＰ７，ＭＰ８，ＭＮ７，ＭＮ８の接続形態や、図３のトランジスタＭＰ１９，ＭＰ２０，ＭＮ１９，ＭＮ２０の接続形態や、図４のトランジスタＭＰ２７，ＭＰ２８，ＭＮ２７，ＭＮ２８の接続形態についても同様に変更して、同様の作用効果を得ることができる。
【図面の簡単な説明】
【００４４】
【図１】(a)は実施例１のＣＭＯＳ加算器のブロック図、(b)はその動作時の真理値を示す説明図である。
【図２】(a)は実施例２の第１の加算部（ＳＵＭ１）１のブロック図、(b)はその動作時の真理値を示す説明図である。
【図３】(a)は実施例３の第１の桁上げ部（ＣＡ１）２のブロック図、(b)はその動作時の真理値を示す説明図である。
【図４】(a)は実施例４の第２，第３の加算部（ＳＵＭ２）３，５のブロック図、(b)はその動作時の真理値を示す説明図である。
【図５】(a)は実施例５の第２の桁上げ部（ＣＡ２）４のブロック図、(b)はその動作時の真理値を示す説明図である。
【図６】(a)〜(d)はＣＭＯＳインバータの回路図である。
【符号の説明】
【００４５】
１：第１の加算部（ＳＵＭ１）
２：第１の桁上げ部（ＣＡ１）
３：第２の加算部（ＳＵＭ２）
４：第２の桁上げ部（ＣＡ２）
５：第３の加算部（ＳＵＭ２）
【図１】
2005078611.tif 000003
【図２】
2005078611.tif 000004
【図３】
2005078611.tif 000005
【図４】
2005078611.tif 000006
【図５】
2005078611.tif 000007
【図６】
2005078611.tif 000008