JP3608970B2 - 論理回路 - Google Patents

論理回路 Download PDF

Info

Publication number
JP3608970B2
JP3608970B2 JP07058099A JP7058099A JP3608970B2 JP 3608970 B2 JP3608970 B2 JP 3608970B2 JP 07058099 A JP07058099 A JP 07058099A JP 7058099 A JP7058099 A JP 7058099A JP 3608970 B2 JP3608970 B2 JP 3608970B2
Authority
JP
Japan
Prior art keywords
input signal
bit
carry
circuit
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP07058099A
Other languages
English (en)
Other versions
JP2000269805A (ja
Inventor
洋 片倉
康彦 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP07058099A priority Critical patent/JP3608970B2/ja
Priority to US09/522,470 priority patent/US7203714B1/en
Publication of JP2000269805A publication Critical patent/JP2000269805A/ja
Application granted granted Critical
Publication of JP3608970B2 publication Critical patent/JP3608970B2/ja
Priority to US11/115,149 priority patent/US20050193051A1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • G06F7/026Magnitude comparison, i.e. determining the relative order of operands based on their numerical value, e.g. window comparator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/5055Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination in which one operand is a constant, i.e. incrementers or decrementers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/51Electronic switching or gating, i.e. not by contact-making and –breaking characterised by the components used
    • H03K17/56Electronic switching or gating, i.e. not by contact-making and –breaking characterised by the components used by the use, as active elements, of semiconductor devices
    • H03K17/687Electronic switching or gating, i.e. not by contact-making and –breaking characterised by the components used by the use, as active elements, of semiconductor devices the devices being field-effect transistors
    • H03K17/693Switching arrangements with several input- or output-terminals, e.g. multiplexers, distributors

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Logic Circuits (AREA)

Description

(目次)
発明の属する技術分野
従来の技術(図26〜図30)
発明が解決しようとする課題
課題を解決するための手段
発明の実施の形態
・本発明の一実施形態の説明(図1〜図25)
・その他の開示事項
発明の効果
【0001】
【発明の属する技術分野】
本発明は、大小比較回路、キャリー生成回路、全加算回路、インクリメント回路に用いて好適な、論理回路に関する。
【0002】
【従来の技術】
大小比較回路、キャリー生成回路、全加算回路及びインクリメント回路は、基本回路として、プロセッサに数多く使用されている。プロセッサは、演算命令で、加算及び減算を行なうために、多くの基本回路が必要としている。例えば大小比較回路は、浮動小数点演算のために使用される。すなわち、この浮動小数点演算を行なうに際して、1つの数が有する指数部と仮数部の2つの部分の位置合わせがなされなければならない。そこで、この位置合わせの際に、1つの数のどちらが、指数部なのか仮数部なのかを知るために、比較する必要がある場合に用いられる。また加算回路は、ロードストアを行なうためのアドレス計算を行なうために、2,3種類のオペランドを足してアドレスを求めて、メモリからロードしてくるために使用される。そして、キャリー生成回路は、この加算回路でビット長が大きい場合に、高速に演算できるように使用されている。さらに、インクリメント回路は、主として命令レジスタに用いられるものであって、下数桁の増分がランダムに変動するものである。この点で、普通のカウンタ回路とは異なる。すなわち、インクリメント回路は、64ビット長の長いものが使用されている。そのため、レジスタ等の通常のカウンタは用いられない。また、カウンタ回路は、増分が1つづつであるのに対して、このインクリメント回路は、増分が2,4,8,16等その変動量が変動するものである。
【0003】
これらの基本回路の動作速度は、プロセッサの処理速度を決定するため、高速に動作する回路を構成しなければならない。ところが一般に、使用する場所に応じてこれらの回路のビット幅は異なるため、多くの種類の大小比較回路、キャリー生成回路、加算回路及びインクリメント回路を開発しなければならない。テクノロジが年々進歩するにつれ、これらの回路であって異なるビット幅を有する高速なものを効率良く開発することが要求されている。このため、少ないリーフセルを用いて高速な回路を構成する必要がある。
【0004】
このリーフセル(機能セルともいう)とは、トランジスタレベルでレイアウトをしなければならない階層のセルをいい、機能を発揮するモジュールの最下層のセルをいう。例えば64ビット加算機能を有する回路の下の階層のモジュールは、16ビット加算回路であり、その16ビット加算機能を有する回路の下の階層のモジュールは、4ビット加算回路となる。そして、この4ビット加算機能を有する回路より下の階層のモジュールがない場合、この4ビット加算回路は、最下層であるリーフセルより構成されていることになる。
【0005】
次に、従来の加算回路の例を図26〜図29を用いて説明し、従来のインクリメント回路を図30を用いて説明する。
まず、従来の加算回路では、完全桁上げ先見加算回路(Look-Ahead Carry Full Adder)が用いられているので、多くの部品点数が必要とされていた。この完全桁上げ先見加算回路とは、4ビットごとに1グループを作成して、4グループで1ブロックを形成し、このブロック単位に桁上げ発生関数Gと、桁上げ伝播関数Pとを用いて演算を行なう回路をいう。また、このような完全桁上げ先見加算回路を用いる理由は、桁上げ伝播加算回路では、高速に処理できないからである。すなわち、桁上げ伝播加算回路は、単純に加算を行なって、その桁上げ信号(キャリー)を最下位の桁から最上位の桁まで伝播させる方式であるが、その加算時間がかかり過ぎる。これに対してキャリーの処理を高速に行なえるように完全桁上げ先見加算回路が用いられる。この点を、図26〜図29を使って説明する。
【0006】
図26は、従来の8ビット完全桁上げ先見加算回路の機能ブロックの一例を示す図である。この図26に示す8ビット完全桁上げ先見加算回路90は、桁上げ生成/伝播ユニット91と、8ビット長CLA(桁上げ先見)ユニット92と、和ユニット93とをそなえて構成されている。
そして、この桁上げ生成/伝播ユニット91において、8ビットからなるA〔A〕と8ビットからなるB〔B〕とが入力され、8ビット長CLAユニット92において、各ビット番号n毎のキャリーが次式に沿って出力される。
【0007】
n+1 =C・P+G
ここで、Cは桁上げ信号,Pは桁上げ伝播関数,Gは桁上げ発生関数をそれぞれ表す。さらに、この演算結果は、和ユニット93において、これら複数のキャリーから加算結果が出力されるようになっている。
これらの各ユニットを拡大したものは次のようになる。図27は、この桁上げ生成/伝播ユニット91の詳細な構成を示すブロック図であり、図28は、4ビット長CLAユニットの概略構成を示すブロック図であり、また、図29は、和ユニットの詳細を示す図である。これら図27〜29に示すように、各ユニット内には、多くの論理ゲートが存在している。
【0008】
同様に、図30は、従来の多入力ANDゲートを用いた16ビット長のインクリメント回路の構成を示すブロック図である。この図30に示すように、ゲート94にて、第n桁(n:0≦n<16)の各桁における半加算演算結果と、その桁より下位の桁からのキャリー信号との排他的論理和が取られて、その結果が全加算演算結果として出力される。そして、「その桁より下位の桁からのキャリー信号」とは、例えばこの図30におけるC<1>と付した信号であって、このC<1>は、第0桁(A<0>)より下位の、A<1>,A<2>,A<3>,…,A<15>の15ビット全てのAND値によって求められる。同様に、ゲート94にて、第1桁(A<1>)における半加算演算結果と、A<2>,A<3>,…,A<15>の14ビット全てのAND値から求められるキャリー信号C<2>との排他的論理和が取られる。また、第12桁における、その桁より下位の桁からのキャリー信号C<13>は、A<13>,A<14>,A<15>の3ビットのAND値であり、第13桁における、その桁より下位の桁からのキャリー信号C<14>は、A<14>,A<15>の2ビットのAND値であり、第14桁における、その桁より下位の桁からのキャリー信号C<15>は、第15ビット値そのものとなる。従って、各桁のAND値を取るためのANDゲートが多数必要となる。
【0009】
【発明が解決しようとする課題】
しかしながら、このような従来の加算回路やインクリメント回路は、多くの種類の基本回路を必要とし、複雑な構造となっているため、処理スピードがかかるという課題がある。例えば、図28の4ビット長CLAユニットは、複雑な構造となっており、多くの種類のリーフセルを必要としている。すなわち、図28の点線で囲った枠内に示すように、このユニットは、10個のANDゲートと、4個のORゲートとから構成されており、多入力のゲート回路では、NOR等でOR出力を反転すると、1クロック遅れる等の理由で、スピードが遅くなる。この理由は、P型MOS(P-channel Metal Oxide Semiconductor )のFET(Field Effect Transistor )が2個連続しているからである。さらに、図30に示すように、インクリメント回路も、多くの基本部品を使用しており、配線の繰り返し性が少なく、複雑な構造となっているため、各ゲート等のレイアウト(配置)に多くの工数を要する。
【0010】
一方、回路全体のスピードを高めるために、多くの提案がなされている。特開平6-187129号公報(以下、公知文献1と称する)には、高速および回路規模の小さい全加算器等の論理回路を集積した半導体装置を提供することを目的とし、N型MOSトランジスタの4素子より成る論理生成部とP型MOSトランジスタの2素子より成るラッチ回路を組み合わせることにより、高速かつ素子数の少ない論理回路を基本回路として用い、その基本回路を組み合わせることにより、全加算器等の機能回路を構成するようにした技術が開示されている。しかし、この公知文献1には、各機能回路を拡張する技術は、開示されていない。
【0011】
また、使用素子数の低減や動作速度の向上のために、特開平9-162722号公報(以下、公知文献2と称する)には、パストランジスタ論理回路に関する技術が開示されている。この公知文献2の目的とするところは、次のようになる。すなわち、プルアップ回路を用いることなくHレベルを改善し、同時に、低電源電圧での動作を可能とし、前段の出力回路の負荷を軽減することで、動作速度向上や次段への信号未伝達防止やノイズ耐性向上を図り、又、パストランジスタのみで構成される論理回路の論理演算系統のトランジスタ段数をより抑えることで、動作速度を向上させながら、一方、比較的複雑な論理も実現可能とし、特に従来のパストランジスタのみで構成される論理回路では苦手な論理も、より容易に実現可能とし、又、従来からのCMOS(Complementary Metal Oxide Semiconductor )論理回路で構成した場合に比べても、必要な素子数がより少なく演算速度もより高速な論理回路を実現することができるパストランジスタ論理回路を提供することを目的としている。しかし、この公知文献2では、入力の論理値に応じて出力がオンオフするパストランジスタを、複数、直列あるいは並列に接続することで、論理積演算や論理和演算等を行なう回路を構成し、所望の論理回路を得るようになっており、やはり構成が複雑となり拡張性に欠けている。
【0012】
またさらに、パストランジスタに関する技術としては、アメリカ合衆国特許4,566,064 号公報(以下、公知文献3と称する)、特開昭59-226号公報(以下、公知文献4と称する)及びアメリカ合衆国特許4,622,648 号公報(以下、公知文献5と称する)のそれぞれに、開示されている。これら公知文献3〜5に記載された技術は、新規な論理回路の構成方法を提供することを目的とし、この発明によれば、パストランジスタを使用して論理回路を構成するものであって、そうすることにより結果として得られる論理回路の規則性を最大限に増加させるものであり、その発明を使用して得られる論理回路は、組み合わせ回路を構成するために使用された場合においては、従来の論理回路の場合と比較して構成上、電力上、動作速度上の点において著しく向上されたものとなっている。しかし、これらの公知文献3〜5には、加算回路、大小比較回路、インクリメント回路等の機能回路等の技術は開示されていない。
【0013】
一方、EXOR或いはEXNOR回路を構成するトランジスタの数を減少させる技術に関しては、特開昭59-201527 号公報(以下、公知文献6と称する)及びこの公知文献6が主張する優先権の基礎となる出願を共通とするアメリカ合衆国特許4,621,338 号公報(以下、公知文献7と称する)に開示されている。しかし、この公知文献6,7では、従来技術による装置に比較して必要なトランジスタの数が少なくてすむEXORまたはEXNORを提供することであり、また、そのようなEXORおよびEXNORを使用したCMOS全加算器段を提供することであって、高速性や拡張性に関する技術は開示されていない。
【0014】
また、これらの各公知文献には、各部品をチューニング(調整)するための手間を省くための技術がなんら開示されていない。すなわち、部品点数が多いと、各部品をチューニングするために大変な手間がかかるという課題がある。その上、64ビット長の加算回路と4ビット長の加算回路を用いたような、ビット長の異なる加算回路を用いて構成されたインクリメント回路では、ビット長の異なる加算回路を構成しようとした場合には、回路配置に大きな変更が必要となる。このため、新しいテクノロジに対応した回路を評価する場合に、多くのリーフセル等の基本部品を再評価し、結線しなければならず、開発効率が悪いという課題がある。
【0015】
本発明は、このような課題に鑑み創案されたもので、基本部品の種類を5種類に抑えて、高速動作する回路を設計できるようにするとともに、配線の繰り返し性を多くすることにより、回路規模をシンプルとした拡張性の高い回路を設計できるようにし、また、各部品をチューニングする手間を大幅に減少させることにより、レイアウト工数が大幅に短縮されて開発工数が大幅に削減され、さらに、同一の基本部品を使用することで、歩留りの向上を図ることができて製造面においても価格の低廉化が促進できる論理回路を提供することを目的とする。
【0016】
【課題を解決するための手段】
このため、本発明の論理回路は、第1の入力信号を反転出力する第1反転部と、第2の入力信号を反転出力する第2反転部と、第1の入力信号と第2の入力信号との1ビットの大小関係を判定し、複数の状態信号を用いて出力しうる伝送部とをそなえ、この伝送部が、第1の入力信号が第2の入力信号以上か否かを表示する第1ゲート部と、第1の入力信号が第2の入力信号より大か否かを表示する第2ゲート部と、第1の入力信号が第2の入力信号以下か否かを表示する第3ゲート部と、第1の入力信号が第2の入力信号より小か否かを表示する第4ゲート部とをそなえて構成されたことを特徴としている。
【0018】
また、本発明の論理回路は、n(nは2のm乗なる整数,ここでmは2以上の偶数)ビットの第1の入力信号とnビットの第2の入力信号とが入力され、第1の入力信号の所定数ビットと第2の入力信号の所定数ビットとの大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p比較結果,第p比較結果,第p比較結果,第p比較結果として出力する第1比較部と、第p比較結果,第p比較結果から第1の入力信号の所定数ビットの2倍のビット数と第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p比較結果として出力するとともに、第p比較結果,第p比較結果から第1の入力信号の所定数ビットの2倍のビット数と第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p比較結果として出力する第2比較部と、第p比較結果及び第p比較結果から第1の入力信号のnビットと第2の入力信号nビットとの大小比較を行ない、当該nビットの比較結果を複数の状態信号を用いて出力する第3比較部とをそなえて構成されたことを特徴としている。
【0019】
また、本発明の論理回路は、第1の入力信号を反転出力する第1反転部と、第2の入力信号を反転出力する第2反転部と、第1の入力信号と第2の入力信号との1ビットの大小関係を判定し、複数の状態信号を用いて出力しうる伝送部とをそなえ、これらの複数の状態信号、第1の入力信号が第2の入力信号以上か否かを表示する第1ゲート信号が出力され、第1の入力信号が第2の入力信号より大か否かを表示する第2ゲート信号が出力され、第1の入力信号が第2の入力信号以下か否かを表示する第3ゲート信号が出力され、第1の入力信号が第2の入力信号より小か否かを表示する第4ゲート信号が出力されるように構成されたことを特徴としている
さらに、本発明の論理回路は、n 1 (n 1 は2のm 1 乗なる整数,ここでm 1 は2以上の偶数)ビットの第1の入力信号とn 1 ビットの第2の入力信号とが入力され、第1の入力信号の所定数ビットと第2の入力信号の所定数ビットとの大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p 1 比較結果,第p 2 比較結果,第p 3 比較結果,第p 4 比較結果として出力する第1比較部と、第p 1 比較結果,第p 2 比較結果から第1の入力信号の所定数ビットの2倍のビット数と第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p 5 比較結果として出力するとともに、第p 3 比較結果,第p 4 比較結果から第1の入力信号の所定数ビットの2倍のビット数と第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p 6 比較結果として出力する第2比較部と、第p 5 比較結果及び第p 6 比較結果から第1の入力信号のn 1 ビットと第2の入力信号n 1 ビットとの大小比較を行ない、当該n 1 ビットの比較結果を複数の状態信号を用いて出力する第3比較部とをそなえ、これらの複数の状態信号は、第1の入力信号が第2の入力信号以上か否かを表示する第1ゲート信号が出力され、第1の入力信号が第2の入力信号より大か否かを表示する第2ゲート信号が出力され、第1の入力信号が第2の入力信号以下か否かを表示する第3ゲート信号が出力され、第1の入力信号が第2の入力信号より小か否かを表示する第4ゲート信号が出力されるように構成されたことを特徴としている。
【0020】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
(A)本発明の一実施形態の説明
図1に本発明の一実施形態にかかる第1のリーフセルのブロック構成を示す。この図1に示すセルLEORは、第1反転部1aと、第2反転部1bと、伝送部1cとをそなえて構成されたCMOS論理回路である。また、A,XS,S,XA及びXはそれぞれ端子名を表す。
【0021】
この第1反転部1aは、正論理及び負論理のうちの一方の論理を有する第1の入力信号を反転出力するものであり、2系統のCMOSロジック1aaと1abとが並列に設けられている。そして、端子Aから入力された信号は、これら2系統のCMOSロジック1aaと1abのトランジスタゲートとのそれぞれに、入力されるようになっている。すなわち、端子Aからの入力信号が1のとき、ゲートT1はオフで、ゲートT2はオンになり、信号線P100はアース電位となる一方、端子Aからの入力信号が0のとき、ゲートT1はオンで、ゲートT2はオフになり、信号線P100はハイバイアスとなる。そして、この信号線P100は、入力信号が反転された論理で出力されるようになっており、これら2系統のCMOSロジック1aaと1abとが、ダブルインバータ回路として機能している。なお、ゲートT1の○印は、反転動作を表す、また、以下の説明中でT1,T2等をペアトランジスタと称することもある。
【0022】
また、第2反転部1bは、正論理及び負論理のうちの他方の論理を有する第2の入力信号を反転出力するものであり、2系統のCMOSロジックが並列に設けられ、ダブルインバータ回路として機能している。さらに、伝送部1cは、外部から制御しうる選択信号とその反転信号とに応じた論理値により、第1反転部1aの出力又は第2反転部1bの出力のいずれかを選択して出力するものであって、ペアトランジスタT3,T4及びT7,T8から構成されている。
【0023】
これにより、入力信号は、この第1反転部1aの端子Aから2系統のCMOSロジックに入力されて反転出力される。また、この入力信号の反転信号は、第2反転部1bの端子XAから2系統のCMOSロジックに入力され、反転出力される。そして、伝送部1cにおいて、端子Sからの選択信号が1かつ、端子XSからのその反転信号が0のときは、ペアトランジスタT3,T4はオンで、ペアトランジスタT7,T8はオフとなり、伝送部1c内の信号線P100における入力反転信号は出力端子Xから出力される。逆に、端子Sからの選択信号が0かつ、端子XSからのその反転信号が1のときは、ペアトランジスタT3,T4はオフで、ペアトランジスタT7,T8はオンとなり、伝送部1c内の信号線P101における入力反転信号は出力端子Xから出力されるようになっている。従って、このセルLEORは、2つの入力信号のうちの一方が、制御信号により選択されて出力されるセレクタ回路として機能している。また、伝送部1cは、論理0又は1を出力するドライバとして機能している。
【0024】
このように、セルLEORは、ダブルインバータがCMOSロジックで構成されているので、高速に動作する利点がある。また、ダブルインバータを有しているので、伝送部1c以降の回路と、このセルLEOR以前の回路とのアイソレーション(逆流防止)が強化される。さらに、このセルLEOR以前の回路にて、インバータ回路を設ける必要がなくなるので、回路構成をシンプルにすることができる利点がある。
【0025】
図2に本発明の一実施形態にかかる第2のリーフセルのブロック構成を示す。この図2に示すセルLSEL2は、第1反転部2aと、第2反転部2bと、伝送部2cとをそなえて構成されたCMOS論理回路である。また、S1,A1,XS1,S2,A2,XS2及びX1,X2は端子名又は信号名を表す。
ここで、第1反転部2aは、第1の入力信号A1を反転したXA1を出力するものであって、2系統のCMOSロジックが並列に設けられている。また、第2反転部2bは、第2の入力信号A2を反転したXA2を出力するものであって、2系統のCMOSロジックが並列に設けられている。そして、これら第1反転部2a,第2反転部2bは、ダブルインバータ回路として機能している。さらに、第1出力部2cは、外部から制御しうる第1の選択信号S1とその反転信号XS1とに応じた論理値により第1反転部2aの出力XA1又は第2反転部2bの出力XA2のいずれかを選択して出力するものであり、第2出力部2dは、外部から制御しうる第2の選択信号S2とその反転信号XS2とに応じた論理値により第1反転部2aの出力XA1又は第2反転部2bの出力XA2のいずれかを選択して出力するものである。
【0026】
そして、第1の選択信号S1が0かつ、その反転信号XS1が1のときに、ゲートT11,T12はオンで、ゲートT13,T14はオフとなり、第1出力部2cの出力端子X1に入力信号A1の反転信号XA1が出力される。また、第1の選択信号S1が1かつ、その反転信号XS1が0のときに、ゲートT11,T12はオフで、ゲートT13,T14はオンとなり、第1出力部2cの出力端子X1に入力信号A2の反転信号XA2が出力されるようになっている。
【0027】
同様に、第2の選択信号S2が0かつ、その反転信号XS2が1のときに、ゲートT17,T18はオフで、ゲートT19,T20はオンとなり、第2出力部2dの出力端子X2に入力信号A2の反転信号XA2が出力される。また、第2の選択信号S2が1かつ、その反転信号XS2が0のときに、ゲートT17,T18はオンで、ゲートT19,T20はオフとなり、第2出力部2dの出力端子X2に入力信号A1の反転信号XA1が出力されるようになっている。従って、このセルLSEL2は、2入力信号A1,A2のそれぞれが、第1の制御信号S1,第2の制御信号S2により、これらの反転信号XA1,XA2のうちのいずれかを、選択して出力するセレクタとして機能している。
【0028】
このように、セルLSEL2の第1出力部2c,第2出力部2dはそれぞれ、反転信号を得るためのダブルインバータ回路を共通化しており、回路規模を小さくすることができる。また、第1出力部2c,第2出力部2dより前段の回路において、複雑な回路構成をとらずに小さな負荷で済むので、シンプルな回路構成にすることができる。
【0029】
図3は、本発明の一実施形態にかかる第3のリーフセルのブロック構成を示す図である。この図3に示すセルLGENは、第1反転部3aと、第2反転部3bと、伝送部3cとをそなえて構成されたCMOS論理回路である。また、A1,A2は入力端子名であり、GE,GT,LE,LTは出力端子名であるが、以下の説明の中で、これらA1,A2,GE,GT,LE,LTを信号名として使用することがある。
【0030】
ここで、第1反転部3aは、第1の入力信号A(端子Aからの信号)を反転出力するものであり、また、第2反転部3bは、第2の入力信号B(端子Bからの信号)を反転出力するものであり、それぞれ、ダブルインバータ回路として機能している。さらに、伝送部3cは、第1の入力信号Aと第2の入力信号Bとの1ビットの大小関係を判定し、4種類の状態信号を用いて出力しうるものであり、第1ゲート部3d,第2ゲート部3e,第3ゲート部3f,第4ゲート部3gをそなえて構成されている。この4種類の状態信号とは、1ビット大小関係の判定結果を表す4種類の状態信号であって、GE(Greater or Equal) 、GT(Greater Than)、LE(Less or Equal)、LT(Less Than)の4種類の状態信号である。例えばビットJとビットJを大小比較判定する場合において、J=1,J=0が与えられたときには、J≧Jであるので、GE信号のみ1となり、その他のGT,LE,LTの各信号は0となる。そして、GE信号はGT信号は第2ゲート部3eから、LE信号は第3ゲート部3fから、LT信号は第4ゲート部3gからそれぞれ出力されるようになっている。
【0031】
すなわち、第1ゲート部3dは、入力信号Aが入力信号B以上(A≧B)か否かを表示するものであり、例えば、Aが1でBが0の場合や、Aが1でBが1の場合或いはAが0でBが0の場合のときに、1を出力する。第2ゲート部3eは、入力信号Aが入力信号Bより大か(A>B)否かを表示するものであり、例えばAが1でBが0の場合のときに、1を出力する。さらに、第3ゲート部3fは、入力信号Aが入力信号B以下(A≦B)か否かを表示するものであり、例えばAが0でBが1の場合や、Aが1でBが1の場合或いはAが0でBが0の場合のときに、1を出力する。第4ゲート部3gは、入力信号Aが入力信号Bより小か(A<B)否かを表示するものであり、例えばAが0でBが1の場合のときに、1を出力する。
【0032】
図4は、このセルLGENの論理値を示す図である。この図4に示す論理値表を用いて信号A,Bの大小比較結果と、論理演算との関係を説明する。この図4に示すAは第1の入力信号の論理,XAはその反転論理であり、Bは第2の入力信号の論理,XBはその反転論理である。そして、OR(GE),AND(GT),NAND(LE),NOR(LT)はそれぞれ、第1ゲート部3d,第2ゲート部3e,第3ゲート部3f,第4ゲート部3gの出力論理である。この図4のOR(GE)と表示された欄は、AがBより大きいか又は等しいときに1が立つ欄であって、これは、Aと、XBとのOR演算を行なった結果と一致している。また、この図4のAND(GT)と表示された欄は、AがBより大きいときに1が立つ欄であって、これは、Aと、XBとのAND演算を行なった結果と一致している。さらに、図4のNAND(LE)と表示された欄は、AがBより小さいか又は等しいときに1が立つ欄であって、これは、Aと、XBとのNAND演算を行なった結果と一致している。図4のNOR(LT)と表示された欄は、AがBより小さいときに1が立つ欄であって、これは、Aと、XBとのNOR演算を行なった結果と一致しており、1ビットの大小比較結果が、AとXBとの論理演算結果によって表されている。すなわち、このセルLGENは、入力信号Aと入力信号Bとの大小比較をAと、Bの反転XBとによって行なう、大小比較回路として機能している。
【0033】
また、このように4種類の状態信号を用いることによって、回路が高速になる利点のほか、各セルどうしの連結がし易くなる利点がある。すなわち、出力信号が同一の状態信号を使用することによって、各セル間の連結性が高まり、これから、回路の拡張性が高まる。そして、回路の階層を深くすることができるようになる。
【0034】
図3に戻って、入力信号Aが1で入力信号Bが0の場合の各ゲートの論理動作は、次のようになる。この図3に示す信号線P102は、0となるので、このP102に直結しているゲートの論理は、ゲートT23がオン,ゲートT24がオフ,ゲートT25がオン,ゲートT26がオフ,ゲートT29がオン,ゲートT30がオフとなる。また、ゲートT27は、ゲートT23がオンになって、信号線P104がハイバイアスとなる結果オフになり、ゲートT28はオンになる。従って、第1ゲート部3dには、ゲートT25を介したハイバイアスがかかり、“1”が出力される。また、第2ゲート部3eには、ゲートT28,T29がそれぞれオンとなるので、信号線P103の“1”が出力される。
【0035】
またさらに、図3に示す信号線P103は、1となるので、このP103に直結しているゲートの論理は、ゲートT33がオフ,ゲートT34がオン,ゲートT35がオフ,ゲートT36がオン,ゲートT39がオフ,ゲートT40がオンとなる。また、ゲートT37は、ゲートT33がオフでゲートT34がオンになってアースされる結果オンになり、ゲートT38はオフになる。従って、第3ゲート部3fには、ゲートT36,T37がそれぞれオンとなるので、信号線P102の“0”が出力される。また、第4ゲート部3gには、ゲートT40がアースされる結果、“0”が出力される。
【0036】
これ以外のビットA,Bの組み合わせに関しては、異なった論理が各ゲートに入力される点が相違することを除き、各ゲートは、上述した場合と同様に論理動作するので、その詳細な説明を省略する。
このように、セルLGENにおいては、信号線P102,P103における論理が伝送部3cに入力され、この伝送部3cにおいて、その論理と反転論理とがそれぞれ対となって用いられているので、正相信号を再度反転させるための反転処理が不要となって、処理スピードが向上する利点がある。さらに、第1反転部,第2反転部の出力はそれぞれ、上側と下側のブロックとで、共用化されているので、回路規模を縮小できる利点がある。またさらに、この図3のゲート部T21,T22,T31,T32があることで、入力側と出力側のアイソレーションが極めて高くなり、入力側に出力側の信号がリークすることがなくなる。
【0037】
次に、これら3種類のリーフセルを用いた演算回路として、大小比較回路の説明を行なう。
図5は、本発明の一実施形態にかかる4ビット大小比較回路のブロック構成を示す図である。この図5に示す4ビット大小比較回路(ICMP4)13は、4ビットの大小を比較してGE,GT,LE,LTの4種類の状態信号を出力するCMOS論理回路であって、第1キャリー発生部14と、第2キャリー発生部15と、第3キャリー発生部16とをそなえて構成されている。ここで、A<0:3>とB<0:3>とは、それぞれ別々の4ビットの入力信号名を表し、GT,GE,LE,LTはそれぞれ出力信号名を表す。また、<0>,<1>,<2>,<3>はそれぞれ、信号名を表す。
【0038】
この第1キャリー発生部14は、4ビットの入力信号A<0:3>と4ビットの入力信号B<0:3>とが入力され、1ビットごとの大小比較を行なって当該各ビットの比較結果を4種類の状態信号を用いて第1比較結果,第2比較結果,第3比較結果,第4比較結果として出力するものである。また、この第1キャリー発生部14は、4個の大小判定回路14a,14b,14c,14dを有し、これら4個の大小判定回路14a,14b,14c,14dの各々が、上記のセルLGENから構成されている。そして、A,B2種類の信号(図5では<0><0>,<1><1>,<2><2>,<3><3>と表示されている)がそれぞれ、大小判定回路14a,14b,14c,14dの端子A,Bに、入力されるようになっている。
【0039】
さらに、第2キャリー発生部15は、第1比較結果,第2比較結果から第1の入力信号の上位2ビットA<0:1>と、第2の入力信号の上位2ビットB<0:1>との大小比較を行なって、当該2ビットの比較結果を4種類の状態信号を用いて第5比較結果として出力するとともに、第3比較結果,第4比較結果から第1の入力信号の下位2ビットA<2:3>と第2の入力信号の下位2ビットB<2:3>との大小比較を行なって、当該2ビットの比較結果を4種類の状態信号を用いて第6比較結果として出力するものである。また、この第2キャリー発生部15は、4個のセレクタ回路15a,15b,15c,15dを有し、これら4個のセレクタ回路の各々が、上記のセルLSEL2から構成されている。なお、この上位2ビット比較機能は、セレクタ回路15a,15bの2組によって発揮され、下位2ビット比較機能は、セレクタ回路15c,15dの2組によって発揮されるようになっている。
【0040】
そして、第3キャリー発生部16は、第5比較結果,第6比較結果から第1の入力信号の4ビットA<0:3>と第2の入力信号の4ビットB<0:3>との大小比較を行ない、当該4ビットの比較結果を4種類の状態信号を用いて出力するものである。また、この第3キャリー発生部16は、2個のセレクタ回路16a,16bを有し、これら2個のセレクタ回路の各々が、上記のセルLSEL2から構成されている。
【0041】
これにより、入力信号A<0:3>と入力信号B<0:3>とが、第1キャリー発生部14に入力される。そして、この大小判定回路14aにおいて、ビットA<0>とビットB<0>との大小比較判定がなされて、第1比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力される(図5の*A部参照)。同様に、大小判定回路14bにおいて、ビットA<1>とビットB<1>との大小比較判定がなされて、第2比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力され、大小判定回路14cにおいても、ビットA<2>とビットB<2>との大小比較判定がなされて、第3比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力され、大小判定回路14dにおいて、ビットA<3>とビットB<3>との大小比較判定がなされて、第4比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力されるようになっている。
【0042】
次に、第1キャリー発生部14の出力信号の接続先を説明するが、以下の説明の便宜のため、第2キャリー発生部15内のセルLSEL2の信号端子名を次のように定義しておく。すなわち、A1,A2,S1,XS1,S2,XS2をそれぞれ、第1入力端子,第2入力端子,第1選択信号端子,第1選択信号反転端子,第2選択信号端子,第2選択信号反転端子と称することとする。
【0043】
第1キャリー発生部14内のセルLGEN14aからのGT信号はセレクタ回路15bの第1入力端子A1に入力され、GE信号はセレクタ回路15bの第2入力端子A2に入力され、LE信号はセレクタ回路15aの第1入力端子A1に入力され、LT信号はセレクタ回路15aの第2入力端子A2に入力されるようになっている。また、第1キャリー発生部14内のセルLGEN14bからの第2比較結果の接続先は次のようになる。GT信号はセレクタ回路15aの第1選択信号端子S1とセレクタ回路15bの第1選択信号端子S1とに入力され、GE信号はセレクタ回路15aの第2選択信号反転端子XS2とセレクタ回路15bの第2選択信号反転端子XS2とに入力され、LE信号はセレクタ回路15aの第1選択信号反転端子XS1とセレクタ回路15bの第1選択信号反転端子XS1とに入力され、LT信号はセレクタ回路15aの第2選択信号端子S2とセレクタ回路15bの第2選択信号端子S2とに入力されるようになっている。
【0044】
そして、これらセレクタ回路15a,15bとは協働して、第1の入力信号の上位2ビットA<0:1>と第2の入力信号の上位2ビットB<0:1>との大小比較判定を行なって、当該2ビットの比較結果が、4種類の状態信号を用いて第5比較結果として、セレクタ回路15aの出力端子X1,X2及びセレクタ回路15bの出力端子X1,X2から出力される(図5の*B部参照)。
【0045】
下位2ビットA<2:3>についても同様である。すなわち、図5に示すように、第2キャリー発生部15内のセレクタ回路15c,15dの入力端子には、第3比較結果と第4比較結果の4種類の状態信号がそれぞれ、所定の端子から入力される。そして、セレクタ回路15c,15dの2組において、第1の入力信号の下位2ビットA<2:3>と第2の入力信号の下位2ビットB<2:3>との大小比較判定が行なわれて、当該2ビットの比較結果が4種類の状態信号を用いて第6比較結果として、セレクタ回路15cの出力端子X1,X2及びセレクタ回路15dの出力端子X1,X2から出力される。
【0046】
さらに、これら第5比較結果の4種類の状態信号はそれぞれ、第3キャリー発生部16内のセレクタ回路16a,16bの所定の端子に入力されるようになっている。すなわち、セレクタ回路15aの出力端子X1はセレクタ回路16bの第1入力端子A1に入力され、セレクタ回路15aの出力端子X2はセレクタ回路16bの第2入力端子A2に入力され、セレクタ回路15bの出力端子X1はセレクタ回路16aの第1入力端子A1に入力され、セレクタ回路15bの出力端子X2はセレクタ回路16aの第2入力端子A2に入力される。また、第6比較結果の4種類の状態信号も同様である。すなわち、セレクタ回路15cの出力端子X1はそれぞれ、セレクタ回路16a,16bの第1選択信号端子S1に入力され、セレクタ回路15cの出力端子X2はそれぞれ、セレクタ回路16a,16bの第2選択信号反転端子XA2に入力され、セレクタ回路15dの出力端子X1はそれぞれ、セレクタ回路16a,16bの第1選択信号反転端子XS1に入力され、セレクタ回路15dの出力端子X2はそれぞれ、セレクタ回路16a,16bの第2選択信号端子S2に入力されるようになっている。
【0047】
そして、第3キャリー発生部16において、第5比較結果,第6比較結果から入力信号A<0:3>と入力信号B<0:3>との大小比較判定が行なわれ、当該4ビットの比較結果が4種類の状態信号(GE,GT,LE,LT)を用いて出力されるのである(図5の*C部参照)。
このように、この4ビット大小比較回路13は、セルLGEN,LSEL2によって構成され、これらのセル内では、上述したように、正相,反転相の2種類の信号が常に造り出されて使用されているので、高速な回路動作となる利点がある。また、このようなセルLGEN,LSEL2を用いているので、シンプルな回路構成となっている。
【0048】
なお、他の回路表現にすることも可能である。図6に本発明の一実施形態にかかる連結セレクタ回路のブロック構成を示す。この図6に示す連結セレクタ回路(LSEL2×2)6は、図2に示したセルLSEL2を2つ連結させたものであって、第1分岐部6a,第2分岐部6b,第3分岐部6c,第4分岐部6dと、セレクタ回路6e,6fとをそなえて構成されている。
【0049】
ここで、第1分岐部6aは、2種類の比較結果情報を4種数の状態信号(GE0,GT0,LE0,LT0とGE1,GT1,LE1,LT1)を用いて入力され、GT1を分岐するものであり、第2分岐部6bは、GE1信号を分岐するものであり、第3分岐部6cは、LE1信号を分岐するものであり、第4分岐部6dは、LT1信号を分岐するものである。また、セレクタ回路6eは、第1分岐部6a,第2分岐部6b,第3分岐部6c,第4分岐部6dから出力される各信号と、LE0信号とLT0信号とが入力されるものであり、セレクタ回路6fは、第1分岐部6a,第2分岐部6b,第3分岐部6c,第4分岐部6dから出力される各信号とGT0信号とGE0信号とが入力されるものである。そして、これらセレクタ6a及びセレクタ回路6bのそれぞれは、上記のセルLSEL2から構成されている。
【0050】
この連結セレクタ回路6を用いて図5を書き改めると、図7のようになる。図7は、本発明の一実施形態にかかる4ビット大小比較回路(ICMP4)13のブロック構成を示す図である。この図7に示す第2キャリー発生部17は、図5に示す第2キャリー発生部15に相当し、また、第3キャリー発生部18は、図5に示す第3キャリー発生部16に相当する。すなわち、第2キャリー発生部17が、第1比較結果及び第2比較結果を入力信号とし第5比較結果を出力する連結セレクタ回路17aと、第3比較結果及び第4比較結果を入力信号とし第6比較結果を出力する連結セレクタ回路17bとをそなえて構成されるとともに、第3キャリー発生部18が、第5比較結果及び第6比較結果を入力信号とし当該4ビットの比較結果を出力する連結セレクタ回路18aから構成されていることになる。なお、その他のもので、上述したものと同一の符号を有するものは、上述したものと同一或いは同等な機能を有するものであるので、さらなる説明を省略する。そして、この連結セレクタ回路6を用いることによって、拡張性の高い回路設計が行なえるようになる。
【0051】
次に、16ビットの大小比較を行なう回路について、図8,図9を用いて説明する。
図8に、本発明の一実施形態にかかる16ビット大小比較回路のブロック構成を示す。この図8に示す16ビット大小比較回路(ICMP16)20は、16ビットの大小を比較してGE,GT,LE,LTの4種類の状態信号を出力するものであって、第1比較部21と、第2比較部22と、第3比較部23とをそなえて構成されている。また、A<0:15>は16ビットの入力信号名を表し、B<0:15>は16ビットの他の入力信号名を表し、この図8で使用されるGT,GE,LE,LTはそれぞれ出力信号名を表す。なお、同一の符号について、信号端子名として使用する場合もある。そして、これらのA<0:15>,B<0:15>の入力信号はそれぞれ、第1比較部21内において、4ビットのA<0:3>,B<0:3>と、4ビットのA<4:7>,B<4:7>と、4ビットのA<8:11>,B<8:11>と、4ビットのA<12:15>,B<12:15>とに分割されるようになっている。
【0052】
ここで、第1比較部21は、16ビットの入力信号A<0:15>と16ビットの入力信号B<0:15>とが入力され、入力信号の上位4ビットA<0:3>と入力信号の上位4ビットB<0:3>との大小比較を行ない、当該4ビットの比較結果を4種類の状態信号を用いて第1比較結果,第2比較結果,第3比較結果,第4比較結果として出力するものである。また、この第1比較部21は、4種類の4ビット大小比較回路21a,21b,21c,21dを有し、これら4個の4ビット大小比較回路21a,21b,21c,21dの各々が、上記の4ビット大小比較回路13(図5又は図7参照)から構成されている。
【0053】
また、第2比較部22は、第1比較結果,第2比較結果から入力信号A<0:15>の上位8ビットA<0:7>と入力信号B<0:15>の上位8ビットB<0:7>との大小比較を行ない、当該上位8ビットの比較結果を4種類の状態信号を用いて第5比較結果として出力するとともに、第3比較結果,第4比較結果から入力信号A<0:15>の下位8ビットA<8:15>と入力信号B<0:15>の下位8ビットB<8:15>との大小比較を行ない、当該下位8ビットの比較結果を4種類の状態信号を用いて第6比較結果として出力するものである。そして、この第2比較部22は、上記の4個のセルLSEL2から構成されている。さらに、第3比較部23は、第5比較結果及び第6比較結果から入力信号A<0:15>の16ビットと入力信号B<0:15>の16ビットとの大小比較を行ない、当該16ビットの比較結果を4種類の状態信号を用いて出力するものであり、この第3比較部23は、2個のセルLSEL2から構成されている。
【0054】
これにより、この図8の*A部にて、上記図5で説明したような4ビットの大小関係が求まり、*B部にて、8ビットの大小関係が求まり、*C部にて、16ビットの大小関係がそれぞれ求まる。
また、図6に示す連結セレクタ回路6を用いてこの図8を書き改めると、図9のようになる。図9は、本発明の一実施形態にかかる16ビット大小比較回路(ICMP16)20のブロック構成を示す図である。この図9に示す第2比較部24は、図8に示す第2比較部22に相当し、また、第3比較部25は、図8に示す第3比較部23に相当する。すなわち、第2比較部24が、第1比較結果及び第2比較結果を入力信号とし第5比較結果を出力する連結セレクタ回路24aと、第3比較結果及び第4比較結果を入力信号とし第6比較結果を出力する連結セレクタ回路24bとをそなえて構成されるとともに、第3比較部25が、第5比較結果及び第6比較結果を入力信号とし当該16ビットの比較結果を出力する連結セレクタ回路25から構成されていることになる。なお、その他のもので、上述したものと同一の符号を有するものは、上述したものと同一或いは同等な機能を有するものであるので、さらなる説明を省略する。
【0055】
信号の流れを図9を用いて説明すると、次のようになる。すなわち、入力信号A<0:15>と入力信号B<0:15>とが、第1比較部21に入力される。そして、4ビット大小判定回路(ICMP4)21aにおいて、A<0:3>とB<0:3>との大小比較判定がなされて、第1比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力される。同様に、4ビット大小判定回路21bにおいて、A<4:7>とB<4:7>との大小比較判定がなされて、第2比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力されるとともに、4ビット大小判定回路21cにおいて、A<8:11>とB<8:11>との大小比較判定がなされて、第3比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力され、4ビット大小判定回路21dにおいて、A<12:15>とB<12:15>との大小比較判定がなされて、第4比較結果が、GE,GT,LE,LTの4種類の状態信号を用いて出力される。
【0056】
また、第1比較結果と第2比較結果とはそれぞれ、連結セレクタ回路24aに入力され、この連結セレクタ回路24aにおいて、A<0:7>とB<0:7>との大小比較判定がなされて、当該8ビットの比較結果が、4種類の状態信号を用いて第5比較結果として出力される。同様に、第3比較結果と第4比較結果とはそれぞれ、連結セレクタ回路24bに入力され、この連結セレクタ回路24bにおいて、A<8:15>とB<8:15>との大小比較判定がなされて、当該8ビットの比較結果が、4種類の状態信号を用いて第6比較結果として出力される。
【0057】
そして、第3比較部25において、第5比較結果,第6比較結果からA<0:15>とB<0:15>との大小比較判定が行なわれ、当該16ビットの比較結果が4種類の状態信号(GE,GT,LE,LT)を用いて出力されるようになっている。
このように、この16ビット大小比較回路20は、4ビット大小比較回路21a,21b,21c,21d及び連結セレクタ回路24a,24b,25cの基本構成を変えないまま構築されており、かつ配線の繰り返し性を多く利用しているので、シンプルな回路構成にできる利点がある。これによって、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、拡張性の高い回路設計を行なうことができるようになる。さらに、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。さらに、4ビット大小比較回路21a,21b,21c,21d及び連結セレクタ回路24a,24b,25cのそれぞれが、セルLGEN,LSEL2からなり、これらのリーフセルは、上述したように、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある。
【0058】
この構成を一般のnビットに拡張した場合を、n=64の場合を例に説明する。このnは、4,16,64,256,…,2のm乗(mは2以上の偶数)を表すものであるが、例えば200ビットのような場合も、256ビットの所定のビットを使用するようにして、任意のビット数に拡張可能となる。図10は、本発明の一実施形態にかかるn(n=64)ビット大小比較回路のブロック構成を示す図である。この図10に示す64ビット大小比較回路26は、64ビットの大小を比較してGE,GT,LE,LTの4種類の状態信号を出力するものであって、第1比較部27と、第2比較部24と、第3比較部25とをそなえて構成されている。また、A<0:63>は64ビットの入力信号名を表し、B<0:63>は64ビットの他の入力信号名を表し、この図10で使用されるGT,GE,LE,LTはそれぞれ出力信号名を表す。なお、同一の符号について、信号端子名として使用する場合もある。
【0059】
ここで、第1比較部27は、64ビットの入力信号A<0:63>と64ビットの入力信号B<0:63>とが入力され、入力信号の16ビットA<0:15>と入力信号の16ビットB<0:15>との大小比較を行なうとともに、A<16:31>とB<16:31>、A<32:47>とB<32:47>並びに、A<48:63>とB<48:63>との大小比較を行ない、当該64ビットの比較結果を4種類の状態信号を用いて第p比較結果,第p比較結果,第p比較結果,第p比較結果として出力するものである。また、この第1比較部27は、4個の16ビット大小比較回路27a,27b,27c,27dを有し、これらの各々が、上記の16ビット大小比較回路20(図8又は図9参照)から構成されている。
【0060】
また、第2比較部24は、第p比較結果,第p比較結果から入力信号の16ビットA<0:15>の2倍のビット数のビットA<0:31>と入力信号の16ビットB<0:15>の2倍のビット数のビットB<0:31>との大小比較を行ない、当該32ビットの比較結果を4種類の状態信号を用いて第p比較結果として出力するとともに、第p比較結果,第p比較結果から入力信号の16ビットA<32:47>の2倍のビット数のビットA<32:63>と入力信号B<32:47>の16ビットの2倍のビット数のビットB<32:63>との大小比較を行ない、当該16ビットの比較結果を4種類の状態信号を用いて第p比較結果として出力するものである。また、この機能も、上記の連結セレクタ回路24a,24bによって発揮されている。
【0061】
さらに、第3比較部25は、第p比較結果及び第p比較結果から入力信号A<0:63>の64ビットと入力信号B<0:63>の64ビットとの大小比較を行ない、当該64ビットの比較結果を4種類の状態信号を用いて出力するものであり、この機能も、上記の連結セレクタ回路25によって発揮されている。 これにより、入力信号A<0:63>の64ビットと入力信号B<0:63>の64ビットとは、第1比較部27において、4分岐されて各々の16ビット大小比較回路27a,27b,27c,27dにて大小比較判定がなされて、各16ビット大小比較回路27a,27b,27c,27dから、4種類の状態信号を用いて第p比較結果,第p比較結果,第p比較結果,第p比較結果出力される。そして、第p比較結果と第p比較結果はそれぞれ、連結セレクタ回路24aに入力され、この連結セレクタ回路24aにおいて、A<0:31>とB<0:31>との大小比較判定がなされて、当該32ビットの比較結果が、4種類の状態信号を用いて第p比較結果として出力される。同様に、第p比較結果と第p比較結果はそれぞれ、連結セレクタ回路24bに入力され、この連結セレクタ回路24bにおいて、A<32:63>とB<32:63>との大小比較判定がなされて、当該32ビットの比較結果が、4種類の状態信号を用いて第p比較結果として出力される。さらに、第3比較部25において、第p比較結果,第p比較結果からA<0:63>とB<0:63>との大小比較判定が行なわれ、当該64ビットの比較結果が4種類の状態信号(GE,GT,LE,LT)を用いて出力されるようになっている。
【0062】
このように、一般にnビットどうしの大小比較回路が、16ビット大小比較回路(ICMP16),セルLSEL2によって構成されるので、シンプルな回路構成となり、かつ、配線の繰り返し性を多く利用できるようになる。また、拡張性の高い回路構成ができるようになる上、異なるビット幅の大小比較回路が簡単かつ効率よく設計できるようになる。これによって、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、拡張性の高い回路設計を行なうことができるようになり、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。また、同一のリーフセルを使用することできるので、歩留り等の製造面の向上に寄与する利点がある。さらに、これらのリーフセルは、上述したように、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある。
【0063】
次に、上記の3種類のリーフセルを用いた機能回路として、加算回路の説明を行なう。図11は、本発明の一実施形態にかかる4ビット全加算回路のブロック構成を示す図であり、図5に示した4ビット大小比較回路と比較して、3段目のブロック構成中に別の回路が付加されている点が異なっている。また、A<0:3>は入力端子名或いは入力信号名を表し、XB<0:3>は入力端子名或いは入力信号の反転信号名を表す。
【0064】
この図11に示す4ビット全加算回路(IADD4)30は、4ビットの全加算演算を行なってGE,GT,LE,LTの4種類の状態信号を出力するCMOS論理回路であって、第1キャリー発生部31と、第2キャリー発生部32と、第3キャリー発生部33と、第4キャリー発生部34とをそなえて構成されている。
【0065】
ここで、第1キャリー発生部31は、4ビットからなる入力信号A<0:3>と4ビットからなる入力信号の反転信号XB<0:3>とが入力され、1ビットごとの大小比較を行なって当該各ビットの比較結果を複数の状態信号を用いて第1キャリー,第2キャリー,第3キャリー,第4キャリーとして出力するものである。また、この第1キャリー発生部31は、4個の大小判定回路31a,31b,31c,31dを有し、これらが、上記のセルLGENから構成されている。
【0066】
図12は、このセルLGENの論理値を示す図であって、1ビットの全加算回路として着目したときのものである。キャリーが出力されるのは、入力信号が(A,B)=(1,1)のときに限られるので、この組み合わせのときのみ1が出力されて、それ以外の組み合わせにおいては、0が出力される演算が必要である。そこで、この論理と同一なGT信号が用いられる。
【0067】
また、図11に戻って、第2キャリー発生部32は、第1キャリーと第2キャリーの論理積情報を4種類の状態信号を用いて第5キャリーとして出力するとともに、第3キャリーと第4キャリーの論理積情報を4種類の状態信号を用いて第6キャリーとして出力するものである。この第2キャリー発生部32は、4個のセレクタ回路32a,32b,32c,32dを有し、これら4個のセレクタ回路の各々が、上記のセルLSEL2から構成されている。なお、これら4個のセレクタ回路32a,32b,32c,32dの入力端子名及び出力端子名(図11においては、省略されている)は、それぞれ、図5に記載したものと同様に、入力端子S1,XS1,A1及び入力端子S2,XS2,A2を有し、出力端子X1,X2を有する。そして、2個のセレクタ回路32a,32bは協働して、これら第1キャリーと第2キャリーとから第1の入力信号と第2の入力信号との上位2ビットにおける、それぞれの全加算演算結果の論理積を行ない第5キャリーとして出力する。同様に、2個のセレクタ回路32c,32dは協働して、これら第3キャリーと第4キャリーとから第1の入力信号と第2の入力信号との下位2ビットにおける、それぞれの全加算演算結果の論理積を行ない第6キャリーとして出力する。
【0068】
さらに、第3キャリー発生部33は、第5キャリー,第6キャリーから第1キャリー,第2キャリー,第3キャリー,第4キャリーの論理積情報を4種類の状態信号を用いて第7キャリーとして出力するとともに、第2キャリー,第6キャリーから第2キャリー,第3キャリー,第4キャリーの論理積情報を4種類の状態信号を用いて第8キャリーとして出力するものであり、4個のセレクタ回路33a,33b,33c,33dをそなえて構成されている。また、これらのセレクタ回路33a,33b,33c,33dはそれぞれ、上記のセルLSEL2から構成されている。この論理積情報とは、論理積値を意味する。そして、この4ビット全加算回路30は、第4キャリー,第6キャリー,第7キャリー,第8キャリーを4種類の状態信号GE<0:3>,GT<0:3>,LE<0:3>,LT<0:3>を用いて出力するようになっている。
【0069】
図6に示す連結セレクタ回路6を用いてこの図11を書き改めると、図13のようになる。図13は、本発明の一実施形態にかかる4ビット全加算回路(IADD4)のブロック構成を示す図である。この図13に示す第2キャリー発生部35は、図11に示す第2キャリー発生部32に相当し、また、第3キャリー発生部36は、図11に示す第3キャリー発生部33に相当する。すなわち、第2キャリー発生部35が、第1キャリー及び第2キャリーを入力信号とし第5キャリーを出力する連結セレクタ回路35aと、第3キャリー及び第4キャリーを入力信号とし第6キャリーを出力する連結セレクタ回路35bとをそなえて構成されるとともに、第3キャリー発生部36が、第5キャリー,第6キャリーを入力信号とし第7キャリーを出力する連結セレクタ回路36aと、第2キャリー,第6キャリーを入力信号とし第8キャリーを出力する連結セレクタ回路36bとから構成されていることになる。なお、その他のもので、上述したものと同一の符号を有するものは、上述したものと同一或いは同等な機能を有するものであるので、さらなる説明を省略する。
【0070】
入力信号A<0:3>と入力信号B<0:3>との全加算演算を行なう場合の信号の流れを図13を用いて説明すると、次のようになる。すなわち、入力信号A<0:3>と入力信号の反転信号XB<0:3>とが、第1キャリー発生部31に入力される。そして、大小比較判定回路31aにおいて、A<0>とXB<0>との大小比較判定がなされることによって、A<0>とB<0>との全加算演算が行なわれる。そのキャリーの有無は、第1キャリーとして、GE,GT,LE,LTの4種類の状態信号を用いて出力される。同様に、大小比較判定回路31bにおいて、A<1>とXB<1>との大小比較判定がなされることによって、A<1>とB<1>との全加算演算がなされて、そのキャリーの有無が第2キャリーとして、GE,GT,LE,LTの4種類の状態信号を用いて出力される。大小比較判定回路31cにおいて、A<2>とXB<2>との大小比較判定がなされることによって、A<2>とB<2>との全加算演算がなされて、そのキャリーの有無が第3キャリーとして、GE,GT,LE,LTの4種類の状態信号を用いて出力され、大小比較判定回路31dにおいても、A<3>とXB<3>との大小比較判定がなされることによって、A<3>とB<3>との全加算演算がなされて、そのキャリーの有無が第4キャリーとして、GE,GT,LE,LTの4種類の状態信号を用いて出力されるようになっている。
【0071】
また、第1キャリーと第2キャリーとはそれぞれ、連結セレクタ回路35aに入力され、この連結セレクタ回路35aにおいて、A<0>とB<0>とのキャリー及びA<1>とB<1>とのキャリーの論理積がとられ、この論理積結果が4種類の状態信号を用いて第5キャリーとして出力される。同様に、第3キャリーと第4キャリーはそれぞれ、連結セレクタ回路35bに入力され、この連結セレクタ回路35bにおいて、A<2>とB<2>とのキャリー及びA<3>とB<3>とのキャリーとの論理積がとられ、この論理積結果が4種類の状態信号を用いて第6キャリーとして出力される。
【0072】
さらに、第3キャリー発生部36内の連結セレクタ回路36aにおいて、第5キャリー,第6キャリーを用いて、A<0>とB<0>とのキャリー,A<1>とB<1>とのキャリー,A<2>とB<2>とのキャリー,A<3>とB<3>とのキャリーの4つのキャリー全ての論理積がとられ、この論理積結果が4ビットの状態信号を用いて第7キャリーとして出力されるとともに、第3キャリー発生部36内の連結セレクタ回路36bにおいても、第2キャリー,第6キャリーを用いて、A<1>とB<1>とのキャリー,A<2>とB<2>とのキャリー,A<3>とB<3>とのキャリーの3つのキャリーの論理積がとられ、この論理積結果が4ビットの状態信号を用いて第8キャリーとして出力されるようになっている。
【0073】
そして、GT<0>には、A<0>とB<0>とのキャリー,A<1>とB<1>とのキャリー,A<2>とB<2>とのキャリー,A<3>とB<3>とのキャリーの4ビットの論理積結果が出力される。GT<1>には、A<1>とB<1>とのキャリー,A<2>とB<2>とのキャリー,A<3>とB<3>とのキャリーの3ビットの論理積結果が出力される。GT<2>には、A<2>とB<2>とのキャリー,A<3>とB<3>とのキャリーの2ビットの論理積結果が出力される。GT<3>には、A<3>とB<3>とのキャリーが出力される。
【0074】
このように、この4ビット全加算回路30(IADD4)は、入力信号A<0:3>と反転信号B<0:3>との論理積演算結果が各段ごとにマージされていき、最終段において、全4ビットの全加算演算結果が出力される。
こうして、4ビット全加算回路30は、セルLGEN,LSEL2によって構成され、これらのセル内では、上述したように、正相,反転相の2種類の信号が常に造り出されて使用されているので、高速な回路動作となる利点がある。また、このようなセルLGEN,LSEL2を用いているので、シンプルな回路構成となっている。
【0075】
次に、16ビットの全加算演算を行なう回路について、図14,図15を用いて説明する。図14に、本発明の一実施形態にかかる16ビット全加算演算回路のブロック構成を示す。この図14に示す16ビット全加算演算回路(IADD16)37は、16ビットの全加算演算を行なうCMOS論理回路であって、半加算演算部38と、第1演算部39と、第2演算部40と、第3演算部41と、第4演算部42とをそなえて構成されている。また、A<0:16>は入力端子名或いは入力信号名を表し、XB<0:16>は入力端子名或いは入力信号の反転信号名を表す。
【0076】
ここで、半加算演算部38は、16ビットからなる第1の入力信号A<0:15>と16ビットからなる第2の入力信号の反転信号XB<0:15>とが入力され、A<0:15>とXB<0:15>との半加算演算を行なうものであり、第1反転部38aと、第2反転部38bと、半加算処理部38cとをそなえて構成されている。この第1反転部38aは、A<0:15>の反転論理を出力するものであり、通常のインバータから構成される。第2反転部38bは、反転信号XB<0:15>を反転したB<0:15>を出力するものであり、通常のインバータから構成される。また、半加算処理部38cは、第1反転部38aの出力XA<0:15>と第2反転部の出力B<0:15>との半加算演算を行なうものであって、上述したセルLEORから構成されている。
【0077】
また、第1演算部39は、A<0:15>とXB<0:15>とを4ビットごとに区切って全加算演算を行ない、それら4ビットごとの全加算演算結果を4種類の状態信号を用いて第1キャリー,第2キャリー,第3キャリー,第4キャリーとして出力するものである。この第1演算部39は、4個の4ビット全加算回路39a,39b,39c,39dからなり、これら4個の4ビット全加算回路39a,39b,39c,39dが、上述した4ビット全加算回路(IADD4)から構成されている。そして、第2演算部40は、第1キャリーと第2キャリーとの論理積情報を4種類の状態信号を用いて第5キャリーとして出力するとともに、第3キャリーと第4キャリーとの論理積情報を4種類の状態信号を用いて第6キャリーとして出力するものである。第3演算部41は、少なくとも、第5キャリー,第6キャリーから16ビットの全てのキャリーの論理積情報を4種類の状態信号を用いて第7キャリーとして出力するものである。
【0078】
なお、これら第2演算部40及び第3演算部41内のセレクタ回路(LSEL2)の入力端子名及び出力端子名は、それぞれ、図5に記載したものと同様に、入力端子S1,XS1,A1及び入力端子S2,XS2,A2を有し、出力端子X1,X2を有する。
さらに、第4演算部42は、半加算演算部38の出力と、第7キャリーとの排他的論理和を行ない全加算演算結果を出力するものであり、反転部42aと、全加算演算出力部42bとをそなえて構成されている。この反転部42aは、入力信号の反転論理を出力するものであり、例えば回路設計ツールに装備されている標準ライブラリの中から選択したようなインバータから構成される。全加算演算出力部42bは、反転部42aの出力と第3演算部41の出力との全加算演算を行なうものである。また、全加算演算出力部42bは、上述したセルLEORから構成されている。
【0079】
なお、この図14に示す第1演算部39,第2演算部40,第3演算部41を、図6に示す連結セレクタ回路6を用いて書き改めると、図15のようになる。図15は、本発明の一実施形態にかかる16ビット全加算回路(IADD16)の第1演算部39,第2演算部40,第3演算部41のブロック構成を示す図である。この図15に示す第2演算部43は、図14に示す第2演算部40に相当し、また、第3演算部44は、図14に示す第3演算部41に相当する。すなわち、第2演算部43が、第1キャリー及び第2キャリーを入力信号とし第5キャリーを出力する連結セレクタ回路43aと、第3キャリー及び第4キャリーを入力信号とし第6キャリーを出力する連結セレクタ回路43bとをそなえて構成されるとともに、第3演算部44が、第5キャリー及び第6キャリーを入力信号とし第7キャリーを出力する連結セレクタ回路44aと、第2キャリー及び第6キャリーを入力信号とし第8キャリーを出力する連結セレクタ回路44bとから構成されていることになる。なお、その他のもので、上述したものと同一の符号を有するものは、上述したものと同一或いは同等な機能を有するものであるので、さらなる説明を省略する。
【0080】
信号の流れを図14を用いて説明すると、次のようになる。すなわち、第1の入力信号A<0:15>と、第2の入力信号B<0:15>の反転信号XB<0:15>とが、第1演算部39に入力される。そして、4ビット全加算回路39aにてA<0:3>とB<0:3>との全加算がされ、少なくともA<0>〜B<0>の論理積情報を含む信号が、第1キャリーとして出力され(図14の*A部参照)、4ビット全加算回路39bにてA<4:7>とB<4:7>との全加算がされ、少なくともA<4>〜B<4>の論理積情報を含む信号が、第2キャリーとして出力され、4ビット全加算回路39cにてA<8:11>とB<8:11>との全加算がされ、少なくともA<8>〜B<8>の論理積情報を含む信号が、第3キャリーとして出力され、4ビット全加算回路39dにてA<12:15>とB<12:15>との全加算がされ、少なくともA<12>〜B<12>の論理積情報を含む信号が、第4キャリーとして出力される。
【0081】
また、第1キャリーと第2キャリーとはそれぞれ、第2演算部40に入力され、A<0:3>とB<0:3>とのキャリー及びA<4:7>とB<4:7>のキャリーとの論理積がとられ、A<0:7>とB<0:7>とのキャリー情報を有する第5キャリーとして4種類の状態信号を用いて出力される(図14の*B部参照)。同様に、第3キャリーと第4キャリーはそれぞれ、第2演算部40に入力され、A<8:11>とB<8:11>とのキャリー及びA<12:15>とB<12:15>とのキャリーとの論理積がとられ、A<8:15>とB<8:15>とのキャリー情報を有する第6キャリーとして4種類の状態信号を用いて出力される。さらに、第3演算部41において、第5キャリー,第6キャリーから、A<0:15>とB<0:15>とのキャリー情報を有する第7キャリーが出力される(図14の*C部参照)。
【0082】
一方、第1の入力信号A<0:15>と、第2の入力信号B<0:15>の反転信号XB<0:15>とはそれぞれ、半加算演算部38に入力されて、半加算処理部38cにおいて、A<0:15>とB<0:15>とが半加算演算されて出力され、第4演算部42において、この半加算出力と、第3演算部41からの第7キャリーとの排他的論理和が行なわれて全加算演算結果が出力される(図14の*D部参照)。
【0083】
このように、この16ビット全加算回路37は、4ビット全加算回路,セルLSEL2,セルLEORによって構成されるので、配線の繰り返し性を多く利用して、シンプルな回路構成ができるようになる利点がある。また、入力信号を最小限の入力構成にするようにもできるようになるうえ、1ビットの比較から16ビットの比較まで各階層に対応できる構成にすることができる。これによって、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、拡張性の高い回路設計を行なうことができるようになり、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。すなわち、この16ビット全加算回路37は、数種類に限定された部品のチューニングのみを行なえばよくなり、開発において、トランジスタレイアウトを配置(グラフパターン)する際の工数が、大幅に減る。また、同一のリーフセルを使用することできるので、歩留り等の製造面の向上に寄与する利点がある。そして、これらのリーフセルは、上述したように、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある。
【0084】
この構成を一般のnビットに拡張した場合を、n=64の場合を例に説明する。このnは、4,16,64,256,…,2のm乗(mは2以上の偶数)を表すものであるが、例えば200ビットのような場合も、256ビットの所定のビットを使用するようにして、任意のビット数に拡張可能となる。図16は、本発明の一実施形態にかかるn(n=64)ビット全加算回路のブロック構成を示す図である。この図16に示す64ビット全加算回路45は、64ビットの全加算演算を行なうCMOS論理回路であって、半加算演算部46と、第1演算部47と、第2演算部48と、第3演算部49と、第4演算部50とをそなえて構成されている。ここで、A<0:63>は入力端子名或いは入力信号名を表し、XB<0:63>は入力端子名或いは入力信号の反転信号名を表す。
【0085】
半加算演算部46は、64ビットからなる第1の入力信号A<0:63>と64ビットからなる第2の入力信号の反転信号XB<0:63>とが入力され、これらのA<0:63>とB<0:63>との半加算演算を行なうものである。
第1演算部47は、A<0:63>とXB<0:63>とを16ビットごとに区切って全加算演算を行ない、その結果を4種類の状態信号を用いて第qキャリー,第qキャリー,第qキャリー,第qキャリーとして出力するものであって、4個の16ビット全加算回路47a,47b,47c,47dをそなえて構成されている。また、第2演算部48は、第qキャリーと第qキャリーとの論理積情報を4種類の状態信号を用いて第qキャリーとして出力するとともに、第qキャリーと第qキャリーとの論理積情報を4種類の状態信号を用いて第qキャリーとして出力するものであって、連結セレクタ回路48a,48bをそなえて構成されている。さらに、第3演算部49は、少なくとも、第qキャリーと第qキャリーとから64ビット全てのキャリーの論理積情報を4種類の状態信号を用いて第qキャリーとして出力するものである。第4演算部50は、半加算演算部46の出力と、第qキャリーとの排他的論理和を行ない全加算演算結果を出力するものであって、連結セレクタ回路49a,49bをそなえて構成されている。
【0086】
信号の流れを図16を用いて説明すると、次のようになる。すなわち、第1の入力信号A<0:63>と、第2の入力信号B<0:63>の反転信号XB<0:63>とが、第1演算部47に入力される。そして、16ビット全加算回路47a,47b,47c,47dのそれぞれにおいて、16ビットごとの全加算がされ、そのキャリーが16ビットの第qキャリー,第qキャリー,第qキャリー,第qキャリーとしてそれぞれ出力される。これらの第qキャリーと第qキャリーとはそれぞれ、第2演算部48に入力され、A<0:15>とB<0:15>とのキャリー及びA<16:31>とB<16:31>とのキャリーとの論理積がとられ、この論理積結果が16ビットからなる第qキャリーとして出力される。また、第qキャリーと第qキャリーとはそれぞれ、第2演算部48に入力され、A<32:47>とB<32:47>とのキャリー及びA<48:63>とB<48:63>とのキャリーとの論理積がとられ、この論理積結果が16ビットからなる第qキャリーとして出力される。さらに、第3演算部49において、第qキャリー,第qキャリーから、少なくともA<0:63>とB<0:63>とのキャリー情報を有する第qキャリーが出力される。
【0087】
一方、第1の入力信号A<0:63>と、第2の入力信号B<0:63>の反転信号XB<0:63>とが、半加算演算部46に入力されて、A<0:63>とB<0:63>とが半加算演算されて出力され、第4演算部50において、この半加算出力と、第3演算部49からの第qキャリーとの排他的論理和が行なわれて全加算演算結果が出力される。
【0088】
このようにして、nビットの全加算回路は、16ビット全加算回路(IADD16),セルLSEL2,セルLEORを用いて構成されているので、異なるビット幅の加算回路及び大小比較回路が簡単かつ効率よく得られ、しかも高速に動作する回路を設計することができる。また、同一のリーフセルが使用されるので、歩留り等が向上して製造面の向上にもつながる。さらに、リーフセルの種類を抑えられるので、リーフセルの開発工数が大幅に削減されるうえ、回路規模が全体的に小さくなるので、配線の繰り返し性を多くしたレイアウトを設計することができ、工数の大幅な短縮につながる。
【0089】
さて次に、本発明を適用される、インクリメント回路について説明する。このインクリメント回路とは、主としてプロセッサ内の命令レジスタ等に用いられる回路であって、例えば64ビット長のものが使用されている。また、このインクリメント回路は、増分が2,4,8,16等と変動量が変化して、カウントアップされるものであって、この点で、増分が1つづつであるレジスタ等からなるカウンタ回路とは相違している。このインクリメント回路は、キャリー生成回路と全加算回路とから構成される。その詳細について、まず、図17から図21を用いてキャリー生成回路を構成するリーフセルについて説明を行ない、図22,図23を用いてキャリー生成回路について説明を行ない、さらに、図24,図25を用いて、実際のインクリメント回路について説明する。
【0090】
図17は、本発明の一実施形態にかかる第4のリーフセルのブロック構成を示す図である。この図17に示すセルA001は、以下に示す論理を実現するCMOS論理回路であって、第1反転部4aと、第2反転部4bと、第1出力部4cと、第2出力部4dとをそなえて構成されている。ここで、この図17に示すA1,S,XS,A2はそれぞれ、端子名を表す。そして、入力信号は、A<0:1>の2ビットからなる第1の信号と、その反転信号であるXA<0:1>の2ビットからなる第2の信号とである。
【0091】
この第1反転部4aは、第1の入力信号A<0>を反転出力するものであり、第2反転部4bは、第1の入力信号の反転信号XA<0>を反転出力するものである。また、第1出力部4cは、第1反転部4aの出力と第2の入力信号とのNAND演算を行なって出力するものであり、第2出力部4dは、第2反転部4bの出力と第2の入力信号の反転信号とのNAND演算を行なって出力するものである。そして、第1出力部4cと第2出力部4dがそれぞれ、第2の入力信号A<1>と第2の入力信号の反転信号XA<1>とにより切り換わるように構成されている。なお、出力側のX1,X2はそれぞれ端子名を表す。
【0092】
ここで、図18(a)にセルA001の入力側端子S,XS,A1と、出力側端子X1との論理値を示す。また、図18(b)にセルA001の入力側端子S,XS,A2と、出力側端子X2との論理値を示す。このセルA001において、端子Sと端子XSとに同一論理値を入力することは禁止している。また、このセルA001の入力側端子のA2にA<0>、A1にXA<0>、XSにA<1>、SにXA<1>をそれぞれ与えた場合の論理値を図19に示す。図19はこのセルA001の論理値を示す図である。この図19に示すように、出力側端子X1には、A<0>とA<1>とのAND演算結果が出力される。同様に出力側端子X2には、A<0>とA<1>とのNAND演算結果が出力される。
【0093】
これにより、適切に入力信号を与えることにより、セルA001は、入力された2ビットA<0>とA<1>との正論理及び負論理の値をもとに、A<0>とA<1>とのAND値及びAND値の反転値を高速に出力することができる。また、このように、セルA001は、ダブルインバータがCMOSロジックで構成されているので、高速に動作する上、出力側の回路と、このセルA001以前の回路とのアイソレーションが強化される。さらに、このセルA001以前の回路にて、インバータ回路を設ける必要がなくなるので、前段の回路での負担を軽減させることができ、回路構成をシンプルにすることができる利点がある。
【0094】
図20は、本発明の一実施形態にかかる第5のリーフセルのブロック構成を示す図である。この図20に示すセルA002は、以下に示す論理を実現するCMOS論理回路であって、第1切換部5aと、第2切換部5bと、伝送部5cとをそなえて構成されている。なおここで、XA,S,XS,A,I,XIはそれぞれ、端子名を表すが、以下の説明中で、信号名として使用することもある。
【0095】
この第1切換部5aは、伝送部5c内の第1反転部1aの入力側に設けられて第1の入力信号XAを通過させるか阻止するかの切り換えを外部からの制御信号I,XIにより行ないうるものであり、ペアトランジスタから構成されている。そして、第2切換部5bは、伝送部5c内の第2反転部1bの入力側に設けられて第2の入力信号Aを通過させるか阻止するかの切り換えを外部からの制御信号I,XIにより行ないうるものであり、ペアトランジスタから構成されている。また、伝送部5cは、外部から制御しうる選択信号Sとその反転信号XSとに応じた論理値により、これら第1切換部5a,第2切換部5bの出力のいずれかを選択して出力するのであって、上述したセルLEORから構成されている。次に、このセルA002の動作を論理値表を用いて説明する。
【0096】
図21は、セルA002の論理値を示す図であり、ここで、I=0かつXI=1の場合、Xには、Aが出力される一方、I=1かつXI=0の場合、Xには、AとSの排他的論理和が出力されるようになっている。なお、セルA001と同様に、セルA002においても、IとXI,AとXA,SとXSのそれぞれについて、同一論理値を入力することは禁止している。
【0097】
このように、セルA002は、ダブルインバータがCMOSロジックで構成されているので、高速に動作する利点がある。また、ダブルインバータを有しているので、伝送部5c以降の回路と、このセルA002以前の回路とのアイソレーションが強化される。さらに、このセルA002以前の回路にて、インバータ回路を設ける必要がなくなるので、回路構成をシンプルにすることができる利点がある。
【0098】
図22は、本発明の一実施形態にかかる4ビットキャリー生成回路のブロック構成を示す図である。この図22に示す4ビットキャリー生成回路(CARRY001)51は、4ビットの信号A<0:3>及びその反転信号であるXA<0:3>を入力とし、インクリメントにともなう下位ビットからのキャリーGE<0:3>及びその反転であるLT<0:3>を出力するCMOS論理回路であって、第1論理積発生部51aと、第2論理積発生部51bと、第3論理積発生部51cと、第4論理積発生部51dとをそなえて構成されている。また、この図22に示す、A<0:3>とXA<0:3>及び<0>,<1>,<2>,<3>はそれぞれ、信号名を表しており、X1,X2及びGE<0:3>とLT<0:3>はそれぞれ、端子名を表している。
【0099】
第1論理積発生部51aは、A<0:3>のうちの上位2ビットA<0:1>と、XA<0:3>のうちの上位2ビットXA<0:1>とが入力され、A<0:3>の上位2ビットの論理積結果として第1論理積結果(A<0>とA<1>とのAND値)及び第1論理積反転結果(A<0>とA<1>とのNAND値)を出力するものであって、この機能はセルA001によって発揮される。同様に、第2論理積発生部51bは、A<0:3>の下位2ビットA<2:3>と反転信号XA<0:3>の下位2ビットXA<2:3>とが入力され、A<0:3>の下位2ビットの論理積結果として第2論理積結果(A<2>とA<3>とのAND値)及び第2論理積反転結果(A<2>とA<3>とのNAND値)を出力するものであって、この機能もセルA001によって発揮される。
【0100】
第3論理積発生部51cは、第1論理積結果並びに第1論理積反転結果及び第2論理積結果並びに第2論理積反転結果が入力され、A<0:3>の4ビットの論理積結果として第3論理積結果(A<0>〜A<3>の4ビットのAND値)及び第3論理積反転結果(A<0>〜A<3>の4ビットのNAND値)を出力するものであって、この機能はセルA001によって発揮される。第4論理積発生部51dは、A<1>並びにXA<1>及び第3論理積結果並びに第3論理積反転結果とが入力され、A<0:3>の上位3ビットの論理積結果として第4論理積結果(A<1>〜A<3>の3ビットのAND値)及び第4論理積反転結果(A<1>〜A<3>の3ビットのNAND値)を出力するものであって、この機能はセルA001によって発揮される。そして、第3論理積結果(A<0>〜A<3>の4ビットのAND値),第4論理積結果(A<1>〜A<3>の3ビットのAND値),第2論理積結果(A<2>とA<3>とのAND値),A<3>の4ビットからなる第1ゲート信号として出力するとともに、第3論理積反転結果(A<0>〜A<3>の4ビットのNAND値),第4論理積反転結果(A<1>〜A<3>の3ビットのNAND値),第2論理積反転結果(A<2>とA<3>とのNAND値),XA<3>の4ビットからなる第2ゲート信号として出力するように構成されている。
【0101】
信号の流れを図22を用いて説明すると、次のようになる。第1論理積発生部51aにおいて、ビットA<0>とビットA<1>とのAND値が行なわれてその結果が端子X1に出力されるとともに、X1の反転値が端子X2に出力される(図19の論理値表参照)。そして、第2論理積発生部51bにおいて、ビットA<2>とビットA<3>とのAND値がX1に出力されるとともに、そのX1の反転値がX2に出力される。さらに、第3論理積発生部51cにおいて、第1論理積発生部51aの端子X1における論理と第2論理積発生部51bの端子X1における論理とのAND値がX1に出力されて、ビットA<0>,ビットA<1>,ビットA<2>,ビットA<3>の4ビットのAND値がX1に出力され、また同時に、X1の反転値がX2に出力される。第4論理積発生部51dにおいて、ビットA<1>の論理と、第2論理積発生部51bの端子X1における論理とのAND値がX1に出力されて、ビットA<1>,ビットA<2>,ビットA<3>の3ビットのAND値がX1に出力される。この時、X1の反転値がX2に出力される。従って、この4ビットキャリー生成回路51の出力信号GE<0:3>及び出力信号LT<0:3>の論理は次のようになる。
【0102】
GE<0>にA<0:3>の全4ビットのAND値、GE<1>にA<1:3>の3ビットのAND値、GE<2>にA<2:3>の2ビットのAND値、GE<3>にA<3>の値が出力される。また、LT<0>にA<0:3>の全4ビットのAND値の反転値、LT<1>にA<1:3>の3ビットのAND値の反転値、LT<2>にA<2:3>の2ビットのAND値の反転値、LT<3>にA<3>の値の反転値が出力される。
【0103】
このような構成によって、4ビットの信号A<0:3>のAND値とNAND値とが高速に生成されて、それぞれの結果が、GE<0:3>,LE<0:3>に出力される。従って、カウントアップに必要なキャリー(A<0>〜A<3>のAND値)が高速に次段へと渡されるので、例えば4ビットより長いインクリメント回路において、下位4ビットの加算結果出るキャリーを高速に生成することができるようになる。また、この回路構成を拡張することによって、Nビット長のキャリー生成回路を構成することができる。
【0104】
図23は、本発明の一実施形態にかかる16ビットキャリー生成回路のブロック構成を示す図である。この図23に示す16ビットキャリー生成回路(CARRY002)52は、16ビットの信号A<0:15>及びその反転信号であるXA<0:15>を入力とし、インクリメントにともなう下位ビットからのキャリーGE<0:15>及びその反転であるLT<0:15>を出力するCMOS論理回路であって、第1キャリー発生部52a,第2キャリー発生部52b,第3キャリー発生部52c,第4キャリー発生部52dとをそなえるほか、第1論理積発生部53a,第2論理積発生部53b,第3論理積発生部54a,第4論理積発生部54bをそなえて構成されている。また、この図23に示す、A<0:15>とXA<0:15>及び<0:3>,<4;7>,<8:11>,<12:15>はそれぞれ、信号名(又は端子名)を表している。また、CARRY001内のA<0:3>,XA<0:3>,GE<0:3>,LT<0:3>と、セルA001内のA1,XS,S,A2,X1,X2と、16ビットキャリー生成回路52の出力であるGE<0:15>とLT<0:15>はそれぞれ、端子名(又は信号名)を表している。
【0105】
ここで、第1キャリー発生部52aは、16ビットの第1の入力信号A<0:15>と16ビットの第1の入力信号の反転信号XA<0:15>とが入力され、少なくともA<0>〜A<3>のAND値とその反転値(NAND値)とをそれぞれ第1論理積結果及び第1論理積反転結果として出力するものであり、第2キャリー発生部52bは、少なくともA<4>〜A<7>のAND値とその反転値とをそれぞれ第2論理積結果及び第2論理積反転結果として出力するものである。また、第3キャリー発生部52cは、少なくともA<8>〜A<11>のAND値とその反転値とをそれぞれ第3論理積結果及び第3論理積反転結果として出力するものであり、第4キャリー発生部52dは、少なくともA<12>〜A<15>のAND値とその反転値とをそれぞれ第4論理積結果及び第4論理積反転結果として出力するものである。これら第1キャリー発生部52a,第2キャリー発生部52b,第3キャリー発生部52c,第4キャリー発生部52dはそれぞれ、上述したセルCARRY001から構成されている。
【0106】
そして、第1論理積発生部53aは、第1論理積結果と第2論理積結果とから少なくともA<0>〜A<7>のAND値の結果として第5論理積結果及び第5論理積反転結果を出力するものであり、4個のセルA001から構成されている。第2論理積発生部53bは、第3論理積結果と第4論理積結果とから少なくともA<8>〜A<15>のAND値の結果として第6論理積結果及び第6論理積反転結果を出力するものであり、4個のセルA001から構成されている。さらに、第3論理積発生部54aは、第5論理積結果,第5論理積反転結果,第6論理積結果,第6論理積反転結果とから少なくともA<0>〜A<15>のAND値の結果として第7論理積結果及び第7論理積反転結果を出力するものであり、4個のセルA001から構成されている。第4論理積発生部54bは、第2論理積結果,第2論理積反転結果,第6論理積結果,第6論理積反転結果とから少なくともA<4>〜A<15>のAND値の結果として第8論理積結果及び第8論理積反転結果を出力するものであり、4個のセルA001から構成されている。
【0107】
また、第7論理積結果,第8論理積結果,第6論理積結果,第4論理積結果が16ビットからなる第1ゲート信号として出力されるとともに、第7論理積反転結果,第8論理積反転結果,第6論理積反転結果,第4論理積結果が16ビットからなる第2ゲート信号として出力されるように構成されている。
信号の流れを図23を用いて説明すると、次のようになる。第1キャリー発生部52aにおいて、GE<0>にはA<0:3>の全4ビットのAND値、GE<1>にはA<1:3>の3ビットのAND値、GE<2>にはA<2:3>の2ビットのAND値、GE<3>にA<3>の値が出力される。第2キャリー発生部52bにおいて、GE<0>にはA<4:7>の全4ビットのAND値、GE<1>にはA<5:7>の3ビットのAND値、GE<2>にはA<6:7>の2ビットのAND値、GE<3>にA<7>の値が出力される。同様に、第3キャリー発生部52cにおいて、GE<0>にはA<8:11>の全4ビットのAND値、GE<1>にはA<9:11>の3ビットのAND値、GE<2>にはA<10:11>の2ビットのAND値、GE<3>にA<11>の値が出力される。第4キャリー発生部52dにおいて、GE<0>にはA<12:15>の全4ビットのAND値、GE<1>にはA<13:15>の3ビットのAND値、GE<2>にはA<14:15>の2ビットのAND値、GE<3>にA<15>の値が出力される。
【0108】
さらに、第1論理積発生部53aは、第1キャリー発生部52aのGE<0>〜GE<3>と第2キャリー発生部52bからのGE<4>とが入力される。ここで、GE<4>は、A<4>〜A<7>のAND値である。従って、第1論理積発生部53aの4個のセルA001にはそれぞれ、A<0>〜A<7>のAND値,A<1>〜A<7>のAND値,A<2>〜A<7>のAND値,A<3>〜A<7>のAND値の4種類の論理値が、X1に出力される。同様にして、第2論理積発生部53bは、第3キャリー発生部52cのGE<0>〜GE<3>と、第4キャリー発生部52dからのGE<12>とが入力される。ここで、GE<12>は、A<12>〜A<15>のAND値である。従って、第2論理積発生部53bの4個のセルA001にはそれぞれ、A<8>〜A<15>のAND値,A<9>〜A<15>のAND値,A<10>〜A<15>のAND値,A<11>〜A<15>のAND値の4種類の論理値が、X1に出力される。
【0109】
さらに、第3論理積発生部54aは、端子A2にはA<0>〜A<7>のAND値が入力され、端子XSにはGE<8>が入力される。ここで、GE<8>は、A<8>〜A<15>のAND値である。従って、第3論理積発生部54aの4個のセルA001にはそれぞれ、A<0>〜A<15>のAND値,A<1>〜A<15>のAND値,A<2>〜A<15>のAND値,A<3>〜A<15>のAND値の4種類の論理値が、X1に出力される。そして、第4論理積発生部54bは、端子A2にはA<4>〜A<7>のAND値が入力され、端子XSにはGE<8>が入力される。ここで、GE<8>は、A<8>〜A<15>のAND値である。従って、第4論理積発生部54bの4個のセルA001にはそれぞれ、A<4>〜A<15>のAND値,A<5>〜A<15>のAND値,A<6>〜A<15>のAND値,A<7>〜A<15>のAND値の4種類の論理値がX1に出力される。
【0110】
これから、この16ビットキャリー生成回路52の出力端子GE<0:15>,LT<0:15>における論理は次のようになる。すなわち、GE<0>はA<0:15>の全16ビットのAND値で、LT<0>はA<0:15>の全16ビットのAND値の反転値である。GE<1>はA<1:15>の15ビットのAND値で、LT<1>はA<1:15>の15ビットのAND値の反転値である。…、GE<14>はA<14:15>の2ビットのAND値で、LT<14>はA<14:15>の2ビットのAND値の反転値である。GE<15>はA<15>の値で、LT<15>はA<15>の値の反転値である。
【0111】
このような構成によって、16ビットの信号A<0:15>のAND値とNAND値とが高速に生成されて、それぞれの結果が、GE<0:15>,LE<0:15>に出力される。従って、カウントアップに必要なキャリー(A<0>〜A<15>のAND値)が、下位ビットからのキャリーとして、高速に次段へと渡されるので、例えば16ビットより長いインクリメント回路において、下位16ビットの加算結果出るキャリーを高速に生成することができるようになる。
【0112】
このように、この16ビットキャリー生成回路52は、4ビットキャリー生成回路(52a,52b,52c,52d)とセルA001(53a,53b,54a,54b)とだけから構成されており、配線パターンの繰り返し性を高めることができ、拡張性を高めることができる。すなわち、Nビット長のキャリー生成回路に拡張することができ、回路設計のための工数が大幅に短縮される利点がある。
【0113】
そして、これら16ビットキャリー生成回路(CARRY002),セルA001,セルA002を用いて、インクリメント回路を構成することができる。なお、一般的なビット長nのキャリー生成回路を構成することができる。このビット数nは2のm 乗なる整数(ここでmは2以上の偶数)であって、例えばn=64の場合を次に説明する。
【0114】
図24は、本発明の一実施形態にかかる64ビットインクリメント回路のブロック構成を示す図である。この図24に示す64ビットインクリメント回路55は、例えばプロセッサの命令レジスタ等に用いられるCMOS論理回路であって、インバータ61a,61b,第1キャリー発生部56a,第2キャリー発生部56b,第3キャリー発生部56c,第4キャリー発生部56d,第1論理積発生部57,第2論理積発生部58,第3論理積発生部59,第4論理積発生部60をそなえるほか、全加算演算部62とをそなえて構成されている。
【0115】
また、この図24に示す入力側のA<0:63>は信号名,インバータ61a,61bのA,Xは端子名を表し、インバータ61a,61bの出力に接続されているXA<0:63>及びXXA<0:63>並びに<0:15>,<16;31>,<32:47>,<48:63>はそれぞれ、信号名を表している。また、CARRY002内のA<0:15>,XA<0:15>,GE<0:15>,LT<0:15>と、セルA001内のA1,XS,S,A2,X1,X2と、16ビットキャリー生成回路52の出力であるGE<0:15>とLT<0:15>はそれぞれ、端子名を表している。なお、第1論理積発生部57,第2論理積発生部58,第3論理積発生部59,第4論理積発生部60の入力側の、<16>,GE16−31<16:31>,<48>,<32>及び、全加算演算部62の入力側の<0:62>,<1:63>,<63>はそれぞれ信号名を表す。また、全加算演算部62内のXA,S,XS,A,I,XI及びXはそれぞれ、端子名であり、それらの出力側にある<0:62>,<63>はそれぞれ、信号名である。
【0116】
このインバータ61a,61bはそれぞれ、入力された論理の反転論理を出力するものであり、例えば回路設計ツールに装備されている標準ライブラリの中から選択したようなインバータから構成されている。また、第1キャリー発生部56aは、64ビットの第1の入力信号A<0:63>と64ビットの第1の入力信号の反転信号XA<0:63>とが入力され、A<0:15>とXA<0:15>とにより少なくともA<0>〜A<15>の論理積結果として第1論理積結果と第1論理積反転結果とを出力するものであって、図23に示した16ビットキャリー生成回路(CARRY002)から構成されている。同様に、第2キャリー発生部56bは、A<16:31>とXA<16:31>とにより少なくともA<16>〜A<31>の論理積結果として第2論理積結果と第2論理積反転結果とを出力するものであり、第3キャリー発生部56cは、A<32:47>とXA<32:47>とにより少なくともA<32>〜A<47>の論理積結果として第3論理積結果と第3論理積反転結果とを出力するものであり、第4キャリー発生部56dは、A<48:63>とXA<48:63>とにより少なくともA<48>〜A<63>の論理積結果として第4論理積結果と第4論理積反転結果とを出力するものである。そして、これら、第1キャリー発生部56a,56b,56cはそれぞれ、16ビットキャリー生成回路(CARRY002)から構成されている。
【0117】
また、第1論理積発生部57は、第1論理積結果並びに第1論理積反転結果及び第2論理積結果並びに第2論理積反転結果が入力され、少なくともA<0>〜A<31>の論理積結果として第5論理積結果と第5論理積反転結果とを出力するものであり、16個のセルA001(符号57−1〜57−16)から構成されている。同様に、第2論理積発生部58は、第3論理積結果並びに第3論理積反転結果及び第4論理積結果並びに第4論理積反転結果が入力され、少なくともA<32>〜A<47>の論理積結果として第6論理積結果と第6論理積反転結果とを出力するものであり、16個のセルA001(符号58−1〜58−16)から構成されている。第3論理積発生部59は、第5論理積結果並びに第5論理積反転結果及び第6論理積結果並びに第6論理積反転結果とから、少なくともA<0>〜A<63>の論理積結果として第7論理積結果と第7論理積反転結果とを出力するものであり、16個のセルA001(符号59−1〜59−16)から構成されている。第4論理積発生部60は、第2論理積結果並びに第2論理積反転結果及び第6論理積結果並びに第6論理積反転結果とから、少なくともA<16>〜A<63>の論理積結果として第8論理積結果と第8論理積反転結果とを出力するものであり、16個のセルA001(符号60−1〜60−16)から構成されている。
【0118】
そして、全加算演算部62は、第7論理積結果,第8論理積結果,第6論理積結果,第4論理積結果からなる64ビットの第1ゲート信号と、第7論理積反転結果,第8論理積反転結果,第6論理積反転結果,第4論理積結果からなる64ビットの第2ゲート信号とから64ビットの全加算演算結果を出力するものであり、63個のセルA002(符号62−1〜62−63)から構成されている。
【0119】
これにより、入力信号A<0:63>は、インバータ61aにて反転信号XA<0:63>が作成される一方、インバータ61bにて再度反転されて、XXA<0:63>(すなわち、A<0:63>)が得られ、これらA<0:63>とXA<0:63>とのうち、A<0:15>とXA<0:15>とが、第1キャリー発生部56aに入力される。同様に、A<16:31>とXA<16:31>とが、第2キャリー発生部56bに入力され、A<32:47>とXA<32:47>とが、第3キャリー発生部56cに入力され、A<48:63>とXA<48:63>とが、第4キャリー発生部56dに入力される。そして、第1キャリー発生部56aの出力において、GE<0>にはA<0:15>の16ビットのAND値、GE<1>にはA<1:15>の15ビットのAND値がそれぞれ現れて、…、GE<14>にはA<14:15>の2ビットのAND値、GE<15>にA<15>のビット値が出力される。同様に、第2キャリー発生部56bの出力において、GE<0>にはA<16:31>の16ビットのAND値、GE<1>にはA<17:31>の15ビットのAND値、…、GE<14>にはA<30:31>の2ビットのAND値、GE<15>にA<31>のビット値が出力される。第3キャリー発生部56cの出力において、GE<0>にはA<32:47>の16ビットのAND値、GE<1>にはA<33:47>の15ビットのAND値、…、GE<14>にはA<46:47>の2ビットのAND値、GE<15>にA<47>のビット値が出力される。第4キャリー発生部56dの出力において、GE<0>にはA<48:63>の16ビットのAND値、GE<1>にはA<49:63>の15ビットのAND値、…、GE<14>にはA<62:63>の2ビットのAND値、GE<15>にA<63>のビット値が出力される。
【0120】
次に、第1論理積発生部57(セル57−1〜セル57−16),第2論理積発生部58(セル58−1〜セル58−16)のそれぞれにおいて、第1キャリー発生部56aの出力と第2キャリー発生部56bの出力とがマージされ、セルA001(符号57−1)の出力X1にはA<0:31>の32ビットのAND値、セルA001(符号57−2)の出力X1にはA<1:31>の31ビットのAND値、…セルA001(符号57−16)の出力X1にはA<15:31>の17ビットのAND値が出力される。また、セルA001(符号58−1)の出力X1にはA<32:63>の32ビットのAND値、セルA001(符号58−2)の出力X1にはA<33:63>の31ビットのAND値、…セルA001(符号58−16)の出力X1にはA<47:63>の17ビットのAND値が出力される。
【0121】
さらに、第3論理積発生部59(セル59−1〜セル59−16),第4論理積発生部60(セル60−1〜セル60−16)のそれぞれにおいて、第2論理積発生部57の出力と第3論理積発生部58の出力とがマージされ、セルA001(符号59−1)の出力X1にはA<0:63>の64ビットのAND値、セルA001(符号59−2)の出力X1にはA<1:63>の63ビットのAND値、…、セルA001(符号59−16)の出力X1にはA<15:63>の49ビットのAND値が出力される。セルA001(符号60−1)の出力X1にはA<16:63>の48ビットのAND値、セルA001(符号60−2)の出力X1にはA<17:63>の47ビットのAND値、…、セルA001(符号60−16)の出力X1にはA<31:63>の33ビットのAND値が出力される。こうして、GE<0>はA<0:63>の全64ビットのAND値、LT<0>はA<0:63>の全64ビットのAND値の反転値。GE<1>はA<1:63>の全63ビットのAND値、LT<1>はA<1:63>の全63ビットのAND値の反転値。…、GE<14>はA<62:63>の全2ビットのAND値、LT<14>はA<62:63>の全2ビットのAND値の反転値。GE<15>はA<63>の値、LT<15>はA<63>の値の反転値となっている。
【0122】
これら下位ビットのキャリーがマージされた信号は、全加算演算部62において、元データたるA<0:62>とキャリーGE<1:63>との排他的論理和がとられる。すなわちセルA002(符号62−1)において、最上位ビットA<0>とその1つ手前の桁からのキャリーGE<1>との排他的論理和がとられて、全加算演算された結果が出力されるようになっている。ここで、セルA002の端子Iには論理1、端子XIには論理0が入力されて、このセルA002が入力信号Sと入力信号Aとの排他的論理和演算が行なわれるようになっている(図21の論理値表参照)。同様に、セルA002(符号62−2)において、A<1>とその1つ手前の桁からのキャリーGE<2>との排他的論理和がとられて全加算演算出力され、…、セルA002(符号62−63)において、A<62>と最下位桁からのキャリーGE<63>との排他的論理和がとられて全加算演算出力される。なお、最下位桁の演算処理はセルA002(符号62a)において行なわれる。こうして、全加算演算部62の出力のX<0:63>に、A<0:63>をインクリメントした結果が出力されるのである。
【0123】
このような構成によって、インクリメント動作が行なわれる。すなわち、インクリメント回路の入力をA<0:63>、出力をX<0:63>、ビット0を最上位ビット、ビット63を最下位ビットとした場合、出力XのビットK(0≦K<63)の値であるX<K>は、インクリメントにともなって下位ビットから上がってくるキャリーGE<K+1>とA<K>との排他的論理和で求められる。ここで、GE<K+1>は、A<K+1:63>の全てのビットのANDである。
【0124】
このように、この64ビットインクリメント回路55は、16ビットキャリー生成回路(CARRY002),セルA001,セルA002のリーフセルだけによって構成されているので、拡張性を利用している。また、シンプルな回路構成となるので、設計者は、簡単かつ効率のよい回路を設計できるようになる。これによって、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。また、同一のリーフセルを使用することできるので、歩留り等の製造面の向上に寄与する利点がある。そして、これらのリーフセルは、上述したように、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある。
【0125】
さらに、64ビットインクリメント回路55に別の加算回路を付加して、68+4ビット長の加算回路を構成することができる。この「68+4ビット長の加算回路」とは、入力が68ビットの信号と4ビットの信号との2種類を有し、そのうち下位4ビットの加算演算を行なう回路を意味し、下位4ビットには、命令オペランドに相当する値が入力されて、その値は、常に変動している。
【0126】
図25は本発明の一実施形態にかかる68ビット+4ビット加算回路のブロック構成を示す図である。この図25に示す68ビット+4ビット加算回路(68bit+4bit ADDER)63は、68(64+4)ビットからなる入力信号A<0:67>と4ビットからなる入力信号B<64:67>との全加算演算を行なう加算回路であって、64ビットインクリメント回路55と、インバータ61cと、4ビット全加算回路65とをそなえて構成されている。
【0127】
また、この図25に示す、A<0:63>,A<64:67>,B<64:67>はそれぞれ、信号名を表し、インバータ61cのA,Xはそれぞれ、入出力端子を表す。また、4ビット全加算回路65のA<0:3>,XB<0:3>,C<0>,XC<0>,S<0:3>はそれぞれ、信号名(又は端子名)を表している。なお、64ビットインクリメント回路55については、上述したことと同様なので、さらなる説明を省略する。
【0128】
このインバータ61cは、入力信号B<64:67>の反転出力を行なうものであり、例えば回路設計ツールに装備されている標準ライブラリの中から選択したようなインバータから構成されている。また、4ビット全加算回路65は、A<0:67>の下位4ビットとインバータ61cからの4ビットとの全加算演算を行なって、そのキャリー生成信号C<0>を64ビットインクリメント回路55の全加算演算部62に入力するものであり、上述した4ビット全加算回路(IADD4)から構成されている。そして、このキャリー生成信号C<0>は、全加算演算部62内の63個のセルA002(符号62−1〜62−63)の入力端子I及びセルA002(符号62a)の入力端子Iに入力されるようになっている。また、キャリー生成信号C<0>の反転信号XC<0>も同様に、各セルA002の入力端子XIに入力されるようになっている。なお、4ビット全加算回路65は、例えば回路設計ツールに装備されている標準ライブラリの中から選択したような加算回路を使用することも可能である。
【0129】
これにより、入力信号A<64:67>とB<64:67>との流れを図25を用いて説明する。まず、A<64:67>と、インバータ61cにて反転されたXB<64:67>とが、4ビット全加算回路65にて全加算演算が行なわれ、この4ビット全加算回路65で発生するキャリー生成信号C<0>が、全加算演算部62内のセルA002(符号62−63)に入力される。ここで、4ビット全加算回路65からのキャリーが0である場合は、セルA002の端子Iは0、端子XIは1となり、セルA002の出力端子X<0:63>に、A<0:63>がそのまま出力される。一方、4ビット全加算回路65からのキャリーが1である場合は、セルA002の端子Iは1、端子XIは0となり、セルA002の出力端子X<0:63>に、A<0:63>に1を加えた値が出力される。
【0130】
このような構成によって、信号A<0:67>のうち、下位4桁A<64:67>とB<64:67>との加算結果であるキャリーC<0>が、A<0:63>のうち最下位A<63>に渡される一方、下位4桁A<64:67>とB<64:67>との加算結果が得られる。また、全加算演算部62内の各セルA002においては、上位64桁の各桁にて、各半加算演算結果と、それより下位から上がってくるキャリーとの排他的論理和演算が実行され、上位64桁の全加算演算結果が出力される。そして、この68ビット+4ビット加算回路63は、64ビットインクリメント回路55の出力が上位64桁の値として出力するとともに、4ビット全加算回路65の出力が下位4桁の値として出力する。
【0131】
このように、64+4ビットの全加算回路が、64ビットインクリメント回路55,4ビット全加算回路65からなり、この4ビット全加算回路65のキャリー生成信号端子が64ビットインクリメント回路55内のセルA002の端子Iに接続され、同様にキャリー生成信号の反転端子がセルA002の端子XIに接続される構成となっている。そして、配線の繰り返し性が多くなっているので、回路構成がシンプルとなり、開発時におけるレイアウトのための工数が大幅に短縮されて、開発期間が大幅に削減される利点がある。さらに、部品点数を抑えることができ、拡張性が高くなるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される利点もある。また、これらの各部分回路が、リーフセルA001,A002から構成されており、上述したように、正相,反転相の2種類の信号が常に生成されているため、高速な回路動作が行なえる利点がある。
【0132】
また、このようにして、ビット数を拡張できるので、nビット長のインクリメント回路を構成できるとともに、一般的な(N+M)ビット+Mビット加算回路(N,Mは、自然数)を構成することが可能となる。
なお、上述した各セル及び各回路並びに論理値表における論理値の正負は、1例であって、これらの反転論理を用いることもできる。
(B)以上の説明に関してさらに以下の(1)から(6)の各項を開示する。
(1)本CMOS論理回路は、4ビットの第1の入力信号と4ビットの第2の入力信号とが入力され、1ビットごとの大小比較を行なって当該各ビットの比較結果を複数の状態信号を用いて第1比較結果,第2比較結果,第3比較結果,第4比較結果として出力する第1キャリー発生部と、第1比較結果,第2比較結果から第1の入力信号の上位2ビットと第2の入力信号の上位2ビットとの大小比較を行なって、当該2ビットの比較結果を複数の状態信号を用いて第5比較結果として出力するとともに、第3比較結果,第4比較結果から第1の入力信号の下位2ビットと第2の入力信号の下位2ビットとの大小比較を行なって、当該2ビットの比較結果を複数の状態信号を用いて第6比較結果として出力する第2キャリー発生部と、第5比較結果,第6比較結果から第1の入力信号の4ビットと第2の入力信号の4ビットとの大小比較を行ない、当該4ビットの比較結果を複数の状態信号を用いて出力する第3キャリー発生部とをそなえて構成されたことを特徴としている。
【0133】
ここで、第1キャリー発生部は、複数の大小判定回路を有し、複数の大小判定回路の各々が、第1の入力信号を反転出力する第1反転部と、第2の入力信号を反転出力する第2反転部と、これらの第1の入力信号と第2の入力信号との1ビットの大小関係を判定し、複数の状態信号を用いて出力しうる伝送部とをそなえて構成されてもよい。
【0134】
従って、本CMOS論理回路は、4ビット大小比較回路が、セルLGEN,LSEL2によって構成されているので、これらのセル内では、上述したように、正相,反転相の2種類の信号が常に造り出されて使用されているので、高速な回路動作となる利点がある。また、このようなセルLGEN,LSEL2を用いているので、シンプルな回路構成にできる利点がある。
【0135】
そして、また、第2キャリー発生部は、第1比較結果及び第2比較結果を入力信号とし第5比較結果を出力する第1の連結セレクタ回路と、第3比較結果及び第4比較結果を入力信号とし第6比較結果を出力する第2の連結セレクタ回路とをそなえて構成されるとともに、第3キャリー発生部が、第5比較結果及び第6比較結果を入力信号とし当該4ビットの比較結果を出力する第3の連結セレクタ回路から構成されてもよい。
【0136】
さらに、第1の連結セレクタ回路,第2の連結セレクタ回路,第3の連結セレクタ回路がそれぞれ、2種類の比較結果情報を複数の状態信号を用いて入力され、2種類の比較結果情報のいずれか一方のうち、その第1の信号を分岐する第1分岐部と、その第2の信号を分岐する第2分岐部と、その第3の信号を分岐する第3分岐部と、その第4の信号を分岐する第4分岐部とをそなえるとともに、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と、2種類の比較結果情報の他方のうち、その第3の信号とその第4の信号とが入力される第1のセレクタ回路と、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と2種類の比較結果情報の他方のうち、その第1の信号とその第2の信号とが入力される第2のセレクタ回路とをそなえ、第1のセレクタ回路及び第2のセレクタ回路がセルLSEL2から構成されてもよい。
【0137】
従って、連結セレクタ回路を用いることによって、拡張性の高い回路設計が行なえるようになる。
(2)さらに、本CMOS論理回路は、16ビットの第1の入力信号と16ビットの第2の入力信号とが入力され、第1の入力信号の上位4ビットと第2の入力信号の上位4ビットとの大小比較を行ない、当該4ビットの比較結果を複数の状態信号を用いて第1比較結果,第2比較結果,第3比較結果,第4比較結果として出力する第1比較部と、第1比較結果,第2比較結果から第1の入力信号の上位8ビットと第2の入力信号の上位8ビットとの大小比較を行ない、当該上位8ビットの比較結果を複数の状態信号を用いて第5比較結果として出力するとともに、第3比較結果,第4比較結果から第1の入力信号の下位8ビットと第2の入力信号の下位8ビットとの大小比較を行ない、当該下位8ビットの比較結果を複数の状態信号を用いて第6比較結果として出力する第2比較部と、第5比較結果及び第6比較結果から第1の入力信号の16ビットと第2の入力信号の16ビットとの大小比較を行ない、当該16ビットの比較結果を複数の状態信号を用いて出力する第3比較部とをそなえて構成されたことを特徴としている。
【0138】
ここで、第1比較部が、複数の4ビット大小比較回路を有し、複数の4ビット大小比較回路の各々が、上記のセルICMP4から構成されてもよい。
本CMOS論理回路は、16ビット大小比較回路が、4ビット大小比較回路及び連結セレクタ回路の基本構成を変えないまま構築されており、かつ配線の繰り返し性を多く利用しているので、シンプルな回路構成にできる利点がある。また、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、拡張性の高い回路設計を行なうことができるようになる。さらに、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。さらに、4ビット大小比較回路及び連結セレクタ回路のそれぞれが、セルLGEN,LSEL2からなり、これらのリーフセルは、上述したように、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある。
【0139】
また、第2比較部が、第1比較結果及び第2比較結果を入力信号とし第5比較結果を出力する第1の連結セレクタ回路と、第3比較結果及び第4比較結果を入力信号とし第6比較結果を出力する第2の連結セレクタ回路とをそなえて構成されるとともに、第3比較部が、第5比較結果及び第6比較結果を入力信号とし当該16ビットの比較結果を出力する第3の連結セレクタ回路から構成されてもよい。
【0140】
さらに、第1の連結セレクタ回路,第2の連結セレクタ回路,第3の連結セレクタ回路がそれぞれ、2種類の比較結果情報を複数の状態信号を用いて入力され、2種類の比較結果情報のいずれか一方のうち、その第1の信号を分岐する第1分岐部と、その第2の信号を分岐する第2分岐部と、その第3の信号を分岐する第3分岐部と、その第4の信号を分岐する第4分岐部とをそなえるとともに、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と、2種類の比較結果情報の他方のうち、その第3の信号とその第4の信号とが入力される第1のセレクタ回路と、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と2種類の比較結果情報の他方のうち、その第1の信号とその第2の信号とが入力される第2のセレクタ回路とをそなえ、第1のセレクタ回路及び第2のセレクタ回路がセルLSEL2から構成されてもよい。
【0141】
従って、連結セレクタ回路を用いることによって、拡張性の高い回路設計が行なえるようになる。
(3)加えて、本CMOS論理回路は、4ビットからなる第1の入力信号と4ビットからなる第2の入力信号の反転信号とが入力され、1ビットごとの大小比較を行なって当該各ビットの比較結果を複数の状態信号を用いて第1キャリー,第2キャリー,第3キャリー,第4キャリーとして出力する第1キャリー発生部と、第1キャリーと第2キャリーの論理積情報を複数の状態信号を用いて第5キャリーとして出力するとともに、第3キャリーと第4キャリーの論理積情報を複数の状態信号を用いて第6キャリーとして出力する第2キャリー発生部と、第5キャリー,第6キャリーから第1キャリー,第2キャリー,第3キャリー,第4キャリーの論理積情報を複数の状態信号を用いて第7キャリーとして出力するとともに、第2キャリー,第6キャリーから第2キャリー,第3キャリー,第4キャリーの論理積情報を複数の状態信号を用いて第8キャリーとして出力する第3キャリー発生部とをそなえ、第4キャリー,第6キャリー,第7キャリー,第8キャリーを複数の状態信号を用いて出力するように構成されたことを特徴としている。
【0142】
ここで、第1キャリー発生部が、複数の大小判定回路を有し、複数の大小判定回路の各々が、セルLGENから構成されてもよい。
本CMOS論理回路は、4ビット全加算回路が、セルLGEN,LSEL2によって構成され、これらのセル内では、正相,反転相の2種類の信号が常に造り出されて使用されているので、高速な回路動作となる利点があり、シンプルな回路構成とできる利点がある。
【0143】
また、第2キャリー発生部が、第1キャリー及び第2キャリーを入力信号とし第5キャリーを出力する第1の連結セレクタ回路と、第3キャリー及び第4キャリーを入力信号とし第6キャリーを出力する第2の連結セレクタ回路とをそなえて構成されるとともに、第3キャリー発生部が、第5キャリー,第6キャリーを入力信号とし第7キャリーを出力する第3の連結セレクタ回路と、第2キャリー,第6キャリーを入力信号とし第8キャリーを出力する第4の連結セレクタ回路とから構成されてもよい。
【0144】
さらに、第1の連結セレクタ回路,第2の連結セレクタ回路,第3の連結セレクタ回路,第4の連結セレクタ回路がそれぞれ、2種類の比較結果情報を複数の状態信号を用いて入力され、2種類の比較結果情報のいずれか一方のうち、その第1の信号を分岐する第1分岐部と、その第2の信号を分岐する第2分岐部と、その第3の信号を分岐する第3分岐部と、その第4の信号を分岐する第4分岐部とをそなえるとともに、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と、2種類の比較結果情報の他方のうち、その第3の信号とその第4の信号とが入力される第1のセレクタ回路と、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と2種類の比較結果情報の他方のうち、その第1の信号とその第2の信号とが入力される第2のセレクタ回路とをそなえ、第1のセレクタ回路及び第2のセレクタ回路がセルLSEL2から構成されてもよい。
【0145】
従って、連結セレクタ回路を用いることによって、拡張性の高い回路設計が行なえるようになる。
(4)さらに、本CMOS論理回路は、16ビットからなる第1の入力信号と16ビットからなる第2の入力信号の反転信号とが入力され、第1の入力信号と第2の入力信号の反転信号との半加算演算を行なう半加算演算部と、第1の入力信号と第2の入力信号の反転信号とを4ビットごとに区切って全加算演算を行ない、それら4ビットごとの全加算演算結果を複数の状態信号を用いて第1キャリー,第2キャリー,第3キャリー,第4キャリーとして出力する第1演算部と、第1キャリーと第2キャリーとの論理積情報を複数の状態信号を用いて第5キャリーとして出力するとともに、第3キャリーと第4キャリーとの論理積情報を複数の状態信号を用いて第6キャリーとして出力する第2演算部と、少なくとも、第5キャリー,第6キャリーから16ビットの全てのキャリーの論理積情報を複数の状態信号を用いた第7キャリーを出力する第3演算部と、半加算演算部の出力と、第7キャリーとの排他的論理和を行ない全加算演算結果を出力する第4演算部とをそなえて構成されたことを特徴としている。
【0146】
ここで、第1演算部は、複数の4ビット全加算回路からなり、複数の4ビット全加算回路が、IADD4から構成されてもよく、この第2演算部が、第1キャリー及び第2キャリーを入力信号とし第5キャリーを出力する第1の連結セレクタ回路と、第3キャリー及び第4キャリーを入力信号とし第6キャリーを出力する第2の連結セレクタ回路とをそなえて構成されるとともに、第3演算部が、第5キャリー及び第6キャリーを入力信号とし第7キャリーを出力する第3の連結セレクタ回路と、第2キャリー及び第6キャリーを入力信号とし第8キャリーを出力する第4の連結セレクタ回路とから構成されてもよい。
【0147】
また、第1の連結セレクタ回路,第2の連結セレクタ回路,第3の連結セレクタ回路,第4の連結セレクタ回路がそれぞれ、2種類の比較結果情報が複数の状態信号を用いて入力され、2種類の比較結果情報のいずれか一方のうち、その第1の信号を分岐する第1分岐部と、その第2の信号を分岐する第2分岐部と、その第3の信号を分岐する第3分岐部と、その第4の信号を分岐する第4分岐部とをそなえるとともに、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と、2種類の比較結果情報の他方のうち、その第3の信号とその第4の信号とが入力される第1のセレクタ回路と、第1分岐部,第2分岐部,第3分岐部,第4分岐部から出力される各信号と2種類の比較結果情報の他方のうち、その第1の信号とその第2の信号とが入力される第2のセレクタ回路とをそなえ、第1のセレクタ回路及び第2のセレクタ回路がセルLSEL2から構成されてもよい。
【0148】
そして、また、半加算演算部が、第1の入力信号の反転論理を出力する第1反転部と、第2の入力信号を出力する第2反転部と、第1反転部の出力と第2反転部の出力との半加算演算を行なう半加算処理部とをそなえ、半加算処理部が、セルLEORから構成されてもよく、第4演算部が、入力信号の反転論理を出力する反転部と、反転部の出力と第3演算部の出力との半加算演算を行なう半加算演算出力部とをそなえ、半加算演算出力部が、セルLEORから構成されてもよい。
【0149】
本CMOS論理回路は、16ビット全加算回路が、4ビット全加算回路IADD4,セルLSEL2,セルLEORによって構成され、配線の繰り返し性を多く利用して、シンプルな回路構成ができるようになる利点がある。また、入力信号を最小限の入力構成にするようにもできるようになるうえ、1ビットの比較から16ビットの比較まで各階層に対応できる。これによって、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、拡張性の高い回路設計を行なうことができるようになり、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。そして、開発において、トランジスタレイアウトを配置する際の工数が、大幅に減り、同一のリーフセルを使用することできるので、歩留り等の製造面の向上に寄与する利点がある。そして、これらのリーフセルは、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある、また、連結セレクタ回路を用いることによって、拡張性の高い回路設計が行なえるようになる。
(5)さらに、本CMOS論理回路は、4ビットの第1の入力信号のうちの上位2ビットと、4ビットの第1の入力信号の反転信号のうちの上位2ビットとが入力され、第1の入力信号の上位2ビットの論理積結果として第1論理積結果及び第1論理積反転結果を出力する第1論理積発生部と、第1の入力信号の下位2ビットと反転信号の下位2ビットとが入力され、第1の入力信号の下位2ビットの論理積結果として第2論理積結果及び第2論理積反転結果を出力する第2論理積発生部と、第1論理積結果並びに第1論理積反転結果及び第2論理積結果並びに第2論理積反転結果が入力され、第1の入力信号の4ビットの論理積結果として第3論理積結果及び第3論理積反転結果を出力する第3論理積発生部と、第1の入力信号の第2ビット並びに第2の入力信号の第2ビット及び第3論理積結果並びに第3論理積反転結果とが入力され、第1の入力信号の上位3ビットの論理積結果として第4論理積結果及び第4論理積反転結果を出力する第4論理積発生部とをそなえ、第3論理積結果,第4論理積結果,第2論理積結果,第1の入力信号の第4ビットの4ビットからなる第1ゲート信号として出力するとともに、第3論理積反転結果,第4論理積反転結果,第2論理積反転結果,第1の入力信号の第4ビットの反転信号の4ビットからなる第2ゲート信号として出力するように構成されたことを特徴としている。
【0150】
本CMOS論理回路は、4ビットキャリー生成回路CARRY001が、セルA001から構成されるとともに、カウントアップに必要なキャリーが高速に次段へと渡されるので、キャリーを高速に生成することができる利点がある。
また、本CMOS論理回路は、16ビットの第1の入力信号A<0:15>と16ビットの第1の入力信号の反転信号XA<0:15>とが入力され、少なくともA<0>〜A<3>の論理積値とその反転値とをそれぞれ第1論理積結果及び第1論理積反転結果として出力する第1キャリー発生部と、少なくともA<4>〜A<7>の論理積値とその反転値とをそれぞれ第2論理積結果及び第2論理積反転結果として出力する第2キャリー発生部と、少なくともA<8>〜A<11>の論理積値とその反転値とをそれぞれ第3論理積結果及び第3論理積反転結果として出力する第3キャリー発生部と、少なくともA<12>〜A<15>の論理積値とその反転値とをそれぞれ第4論理積結果及び第4論理積反転結果として出力する第4キャリー発生部とをそなえ、第1論理積結果と第2論理積結果とから少なくともA<0>〜A<7>の論理積結果として第5論理積結果及び第5論理積反転結果を出力する第1論理積発生部と、第3論理積結果と第4論理積結果とから少なくともA<8>〜A<15>の論理積結果として第6論理積結果及び第6論理積反転結果を出力する第2論理積発生部と、第5論理積結果,第5論理積反転結果,第6論理積結果,第6論理積反転結果とから少なくともA<0>〜A<15>の論理積結果として第7論理積結果及び第7論理積反転結果を出力する第3論理積発生部と、第2論理積結果,第2論理積反転結果,第6論理積結果,第6論理積反転結果とから少なくともA<4>〜A<15>の論理積結果として第8論理積結果及び第8論理積反転結果を出力する第4論理積発生部とをそなえ、第7論理積結果,第8論理積結果,第6論理積結果,第4論理積結果が16ビットからなる第1ゲート信号として出力されるとともに、第7論理積反転結果,第8論理積反転結果,第6論理積反転結果,第4論理積結果が16ビットからなる第2ゲート信号として出力されるように構成されたことを特徴としている。
【0151】
ここで、第1キャリー発生部,第2キャリー発生部,第3キャリー発生部,第4キャリー発生部がそれぞれ、4ビットキャリー生成回路CARRY001から構成されてもよい。
また、本CMOS論理回路は、16ビットキャリー生成回路CARRY002が、4ビットキャリー生成回路CARRY001,セルA001から構成されるとともに、カウントアップに必要なキャリーが、下位ビットからのキャリーとして、高速に次段へと渡されるので、キャリーを高速に生成することができる利点がある。また、配線パターンの繰り返し性を高めることができ、Nビット長のキャリー生成回路に拡張することができ、回路設計のための工数が大幅に短縮される利点がある。
(6)加えて、上述したインクリメント回路は、(n+m)ビット(nは2のm乗なる整数,ここでmは2以上の偶数,mは1以上の整数)からなる第1の入力信号とmビットからなる第2の入力信号との全加算演算を行なう加算回路において、nビット長インクリメント回路と、入力側に設けられて第2の入力信号の反転出力を行なう反転部と、第1の入力信号の下位mビットと反転部からのmビットとの全加算演算を行なってそのキャリー生成信号をnビット長インクリメント回路の全加算演算部に入力するmビット全加算回路とをそなえ、nビット長インクリメント回路の出力が上位nビットの値として出力されるとともに、mビット全加算回路の出力が下位mビットの値として出力されるように構成することもできる。
【0152】
そして、このmビット全加算回路が、4ビット全加算回路IADD4から構成されてもよい。
本CMOS論理回路は、64+4ビットの全加算回路が、64ビットインクリメント回路,4ビット全加算回路から構成されているので、配線の繰り返し性が多くなって回路構成がシンプルとなり、開発時におけるレイアウトのための工数が大幅に短縮されて、開発期間が大幅に削減される利点がある。さらに、部品点数を抑えることができ、拡張性が高くなるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される利点もある。また、これらの各部分回路が、リーフセルA001,A002から構成されており、正相,反転相の2種類の信号が常に生成されているため、高速な回路動作が行なえる利点がある。また、(n+m)ビット(mは1以上の整数)からなる第1の入力信号とmビットからなる全加算回路を構成できるようになる利点もある。
【0153】
また、本発明は上述した実施態様に限定されるものではなく、逸脱しない範囲で、種々変形して実施することができる。
【0155】
そして、この伝送部は、第1の入力信号が第2の入力信号以上か否かを表示する第1ゲート部と、第1の入力信号が第2の入力信号より大か否かを表示する第2ゲート部と、第1の入力信号が第2の入力信号以下か否かを表示する第3ゲート部と、第1の入力信号が第2の入力信号より小か否かを表示する第4ゲート部とをそなえて構成することもでき、従って、このようにすれば、ダブルインバータがCMOSロジックからなるので、高速な動作、アイソレーションの強化が行なえる利点がある。また、回路構成をシンプルにすることができる利点がある。
【0156】
また、本発明の論理回路は、n(nは2のm乗なる整数,ここでmは2以上の偶数)ビットどうしの大小比較回路が、16ビット大小比較回路,セルLSEL2によって構成されるので、シンプルな回路構成となり、かつ、配線の繰り返し性を多く利用できるようになる。また、拡張性の高い回路構成ができるようになる上、異なるビット幅の大小比較回路が簡単かつ効率よく設計できるようになる。これによって、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、拡張性の高い回路設計を行なうことができるようになり、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。また、同一のリーフセルを使用することできるので、歩留り等の製造面の向上に寄与する利点がある。さらに、これらのリーフセルは、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある。
【0157】
【発明の効果】
以上詳述したように、本発明の論理回路によれば、以下のような効果ないし効果が得られる。
(1)高速動作、アイソレーション強化及びシンプルな回路構成の実現ができる利点がある。
(2)ダブルインバータがCMOSロジックからなるので、高速な動作、アイソレーションの強化が行なえる利点がある。また、回路構成をシンプルにすることができる利点がある。
(3)シンプルな回路構成となり、かつ、配線の繰り返し性を多く利用できるようになる。また、拡張性の高い回路構成ができるようになる上、異なるビット幅の大小比較回路が簡単かつ効率よく設計できるようになる。これによって、開発時におけるレイアウト工数が大幅に短縮されて、開発工数が大幅に削減されるとともに、拡張性の高い回路設計を行なうことができるようになり、部品点数を抑えることができるので、多くの部品点数を有する回路に比べて、各部品をチューニングする手間が大幅に減少される。また、同一のリーフセルを使用することできるので、歩留り等の製造面の向上に寄与する利点がある。さらに、これらのリーフセルは、正相,反転相の2種類の信号が内部で常に生成されているので、全体回路が高速に動作する利点がある。
(4)回路が高速になる利点のほか、各セルどうしの連結がし易くなる利点がある。また、出力信号が同一の状態信号を使用することによって、各セル間の連結性が高まり、これから、回路の拡張性が高まる。そして、回路の階層を深くすることができるようになる。
【図面の簡単な説明】
【図1】本発明の一実施形態にかかる第1のリーフセルのブロック構成を示す図である。
【図2】本発明の一実施形態にかかる第2のリーフセルのブロック構成を示す図である。
【図3】本発明の一実施形態にかかる第3のリーフセルのブロック構成を示す図である。
【図4】セルLGENの論理値を示す図である。
【図5】本発明の一実施形態にかかる4ビット大小比較回路のブロック構成を示す図である。
【図6】本発明の一実施形態にかかる連結セレクタ回路のブロック構成を示す。
【図7】本発明の一実施形態にかかる4ビット大小比較回路のブロック構成を示す図である。
【図8】本発明の一実施形態にかかる16ビット大小比較回路のブロック構成を示す図である
【図9】本発明の一実施形態にかかる16ビット大小比較回路のブロック構成を示す図である。
【図10】本発明の一実施形態にかかるn(n=64)ビット大小比較回路のブロック構成を示す図である。
【図11】本発明の一実施形態にかかる4ビット全加算回路のブロック構成を示す図である。
【図12】セルLGENの論理値を示す図である。
【図13】本発明の一実施形態にかかる4ビット全加算回路のブロック構成を示す図である。
【図14】本発明の一実施形態にかかる16ビット全加算演算回路のブロック構成を示す図である。
【図15】本発明の一実施形態にかかる16ビット全加算回路の第1演算部,第2演算部,第3演算部のブロック構成を示す図である。
【図16】本発明の一実施形態にかかるn(n=64)ビット全加算回路のブロック構成を示す図である。
【図17】本発明の一実施形態にかかる第4のリーフセルのブロック構成を示す図である。
【図18】(a)はセルA001の入力側端子S,XS,A1と、出力側端子X1との論理値を示す図であり、(b)はセルA001の入力側端子S,XS,A2と、出力側端子X2との論理値を示す図である。
【図19】本発明の一実施形態にかかる第4のリーフセルの論理値を示す図である。
【図20】本発明の一実施形態にかかる第5のリーフセルのブロック構成を示す図である。
【図21】本発明の一実施形態にかかるセルA002の論理値を示す図である。
【図22】本発明の一実施形態にかかる4ビットキャリー生成回路のブロック構成を示す図である。
【図23】本発明の一実施形態にかかる16ビットキャリー生成回路のブロック構成を示す図である。
【図24】本発明の一実施形態にかかる64ビットインクリメント回路のブロック構成を示す図である。
【図25】本発明の一実施形態にかかる68ビット+4ビット加算回路のブロック構成を示す図である。
【図26】従来の8ビット完全桁上げ先見加算回路(Look-Ahead Carry Full Adder)の機能ブロックの一例を示す図である。
【図27】従来の桁上げ生成/伝播ユニットの詳細な構成を示すブロック図である。
【図28】4ビット長CLAユニットの概略構成を示すブロック図である。
【図29】和ユニットの詳細を示す図である。
【図30】従来の多入力ANDゲートを用いた16ビット長のインクリメント回路の構成を示すブロック図である。
【符号の説明】
1a,2a,3a,4a,38a 第1反転部
1b,2b,3b,4b,38b 第2反転部
1c,5c 伝送部
2c,4c 第1出力部
2d,4d 第2出力部
3d 第1ゲート部
3e 第2ゲート部
3f 第3ゲート部
3g 第4ゲート部
5a 第1切換部
5b 第2切換部
6,17a,17b,18a,24a,24b,25a,35a,35b,36a,36b,43a,43b,44a,44b,48a,48b,49a,49b 連結セレクタ回路
6a 第1分岐部
6b 第2分岐部
6c 第3分岐部
6d 第4分岐部
6e,6f,15a,15b,15c,15d,16a,16b,32a,32b,32c,32d,33a,33b,33c,33d セレクタ回路
13,21a,21b,21c,21d 4ビット大小比較回路
14,31,52a,56a 第1キャリー発生部
14a,14b,14c,14d,31a,31b,31c,31d 大小比較判定回路
15,17,32,35,52b,56b 第2キャリー発生部
16,18,33,36,52c,56c 第3キャリー発生部
20,27a,27b,27c,27d,47a,47b,47c,47d 16ビット大小比較回路
21,27 第1比較部
22,24 第2比較部
23,25 第3比較部
26 64ビット大小比較回路
30,39a,39b,39c,39d,65 4ビット全加算回路
34,52d,56d 第4キャリー発生部
37 16ビット全加算回路
38,46 半加算演算部
38c 半加算処理部
39,47 第1演算部
40,43,48 第2演算部
41,44,49 第3演算部
42,50 第4演算部
42a 反転部
42b 全加算演算出力部
45 64ビット全加算回路
51 4ビットキャリー生成回路
52 16ビットキャリー生成回路
51a,53a,57 第1論理積発生部
51b,53b,58 第2論理積発生部
51c,54a,59 第3論理積発生部
51e,54b,60 第4論理積発生部
55 64ビットインクリメント回路
61a,61b,61c インバータ
62 全加算演算部
62−1,62−2 セルA002
63 68ビット+4ビット加算回路
LEOR,LSEL2,LGEN,A001,A002 セル
CARRY001 4ビットキャリー生成回路
CARRY002 16ビットキャリー生成回路

Claims (4)

  1. 第1の入力信号を反転出力する第1反転部と、
    第2の入力信号を反転出力する第2反転部と、
    該第1の入力信号と該第2の入力信号との1ビットの大小関係を判定し、複数の状態信号を用いて出力しうる伝送部とをそなえ、
    該伝送部が、
    該第1の入力信号が該第2の入力信号以上か否かを表示する第1ゲート部と、
    該第1の入力信号が該第2の入力信号より大か否かを表示する第2ゲート部と、
    該第1の入力信号が該第2の入力信号以下か否かを表示する第3ゲート部と、
    該第1の入力信号が該第2の入力信号より小か否かを表示する第4ゲート部とをそなえて構成されたことを特徴とする論理回路。
  2. 1 (n1 は2のm1 乗なる整数,ここでm1 は2以上の偶数)ビットの第1の入力信号とn1 ビットの第2の入力信号とが入力され、該第1の入力信号の所定数ビットと該第2の入力信号の所定数ビットとの大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p1 比較結果,第p2 比較結果,第p3 比較結果,第p4 比較結果として出力する第1比較部と、
    該第p1 比較結果,該第p2 比較結果から該第1の入力信号の所定数ビットの2倍のビット数と該第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p5 比較結果として出力するとともに、該第p3 比較結果,該第p4 比較結果から該第1の入力信号の所定数ビットの2倍のビット数と該第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p6 比較結果として出力する第2比較部と、
    該第p5 比較結果及び該第p6 比較結果から該第1の入力信号のn1 ビットと該第2の入力信号n1 ビットとの大小比較を行ない、当該n1 ビットの比較結果を複数の状態信号を用いて出力する第3比較部とをそなえて構成されたことを特徴とする、論理回路。
  3. 第1の入力信号を反転出力する第1反転部と、
    第2の入力信号を反転出力する第2反転部と、
    該第1の入力信号と該第2の入力信号との1ビットの大小関係を判定し、複数の状態信号を用いて出力しうる伝送部とをそなえ、
    該複数の状態信号
    該第1の入力信号が該第2の入力信号以上か否かを表示する第1ゲート信号が出力され、
    該第1の入力信号が該第2の入力信号より大か否かを表示する第2ゲート信号が出力され、
    該第1の入力信号が該第2の入力信号以下か否かを表示する第3ゲート信号が出力され、
    該第1の入力信号が該第2の入力信号より小か否かを表示する第4ゲート信号が出力されるように構成されたことを特徴とする論理回路。
  4. 1 (n 1 は2のm 1 乗なる整数,ここでm 1 は2以上の偶数)ビットの第1の入力信号とn 1 ビットの第2の入力信号とが入力され、該第1の入力信号の所定数ビットと該第2の入力信号の所定数ビットとの大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p 1 比較結果,第p 2 比較結果,第p 3 比較結果,第p 4 比較結果として出力する第1比較部と、
    該第p 1 比較結果,該第p 2 比較結果から該第1の入力信号の所定数ビットの2倍のビット数と該第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p 5 比較結果として出力するとともに、該第p 3 比較結果,該第p 4 比較結果から該第1の入力信号の所定数ビットの2倍のビット数と該第2の入力信号の所定数ビットの2倍のビット数との大小比較を行ない、当該所定数ビットの比較結果を複数の状態信号を用いて第p 6 比較結果として出力する第2 比較部と、
    該第p 5 比較結果及び該第p 6 比較結果から該第1の入力信号のn 1 ビットと該第2の入力信号n 1 ビットとの大小比較を行ない、当該n 1 ビットの比較結果を複数の状態信号を用いて出力する第3比較部とをそなえ、
    該複数の状態信号は、
    該第1の入力信号が該第2の入力信号以上か否かを表示する第1ゲート信号が出力され、
    該第1の入力信号が該第2の入力信号より大か否かを表示する第2ゲート信号が出力され、
    該第1の入力信号が該第2の入力信号以下か否かを表示する第3ゲート信号が出力され、
    該第1の入力信号が該第2の入力信号より小か否かを表示する第4ゲート信号が出力されるように構成されたことを特徴とする、論理回路。
JP07058099A 1999-03-16 1999-03-16 論理回路 Expired - Fee Related JP3608970B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP07058099A JP3608970B2 (ja) 1999-03-16 1999-03-16 論理回路
US09/522,470 US7203714B1 (en) 1999-03-16 2000-03-09 Logic circuit
US11/115,149 US20050193051A1 (en) 1999-03-16 2005-04-27 Logic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07058099A JP3608970B2 (ja) 1999-03-16 1999-03-16 論理回路

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2004176140A Division JP3790534B2 (ja) 2004-06-14 2004-06-14 論理回路
JP2004176141A Division JP2004274795A (ja) 2004-06-14 2004-06-14 論理回路

Publications (2)

Publication Number Publication Date
JP2000269805A JP2000269805A (ja) 2000-09-29
JP3608970B2 true JP3608970B2 (ja) 2005-01-12

Family

ID=13435646

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07058099A Expired - Fee Related JP3608970B2 (ja) 1999-03-16 1999-03-16 論理回路

Country Status (2)

Country Link
US (2) US7203714B1 (ja)
JP (1) JP3608970B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3608970B2 (ja) * 1999-03-16 2005-01-12 富士通株式会社 論理回路
US9793894B1 (en) * 2016-11-18 2017-10-17 Via Alliance Semiconductor Co., Ltd. Data synchronizer for registering a data signal into a clock domain
US10401427B2 (en) 2016-11-18 2019-09-03 Via Alliance Semiconductor Co., Ltd. Scannable data synchronizer

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4491930A (en) * 1970-12-28 1985-01-01 Hyatt Gilbert P Memory system using filterable signals
US4064421A (en) * 1976-07-22 1977-12-20 Burroughs Corporation High speed modular arithmetic apparatus having a mask generator and a priority encoder
US4163211A (en) * 1978-04-17 1979-07-31 Fujitsu Limited Tree-type combinatorial logic circuit
US4225849A (en) * 1978-05-01 1980-09-30 Fujitsu Limited N-Bit magnitude comparator of free design
US4566064A (en) * 1982-05-10 1986-01-21 American Microsystems, Inc. Combinational logic structure using PASS transistors
US4622648A (en) 1982-05-10 1986-11-11 American Microsystems, Inc. Combinational logic structure using PASS transistors
US4541067A (en) 1982-05-10 1985-09-10 American Microsystems, Inc. Combinational logic structure using PASS transistors
DE3373566D1 (en) 1983-04-15 1987-10-15 Itt Ind Gmbh Deutsche Cmos - full binary adder
JPS6037822A (ja) 1983-08-10 1985-02-27 Mitsubishi Electric Corp Cmos論理回路
US4870302A (en) * 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
USRE34363E (en) * 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4700323A (en) * 1984-08-31 1987-10-13 Texas Instruments Incorporated Digital lattice filter with multiplexed full adder
US4740906A (en) * 1984-08-31 1988-04-26 Texas Instruments Incorporated Digital lattice filter with multiplexed fast adder/full adder for performing sequential multiplication and addition operations
US4849921A (en) * 1985-06-19 1989-07-18 Nec Corporation Arithmetic circuit for calculating the absolute value of the difference between a pair of input signals
US4792909A (en) * 1986-04-07 1988-12-20 Xerox Corporation Boolean logic layout generator
US4866655A (en) * 1986-07-18 1989-09-12 Matsushita Electric Industrial Co., Ltd. Arithmetic processor and divider using redundant signed digit
JPS6394713A (ja) 1986-10-08 1988-04-25 Fujitsu Ltd セレクタ回路
US4916627A (en) * 1987-12-02 1990-04-10 International Business Machines Corporation Logic path length reduction using boolean minimization
JP2600372B2 (ja) 1989-05-09 1997-04-16 日本電気株式会社 液晶駆動回路
US5040139A (en) * 1990-04-16 1991-08-13 Tran Dzung J Transmission gate multiplexer (TGM) logic circuits and multiplier architectures
US5272662A (en) * 1991-01-31 1993-12-21 The United States Of America As Represented By The Secretary Of The Air Force Carry multiplexed adder
JPH04340127A (ja) 1991-02-07 1992-11-26 Nec Corp 比較方法および比較器
US5122685A (en) * 1991-03-06 1992-06-16 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor
JPH04326617A (ja) 1991-04-26 1992-11-16 Nec Ic Microcomput Syst Ltd 信号切替回路
JPH06187129A (ja) 1992-12-21 1994-07-08 Hitachi Ltd 半導体装置
EP0647030A3 (en) 1993-09-30 1995-11-08 Texas Instruments Inc Integrated circuit device.
US5528177A (en) 1994-09-16 1996-06-18 Research Foundation Of State University Of New York Complementary field-effect transistor logic circuits for wave pipelining
US5450022A (en) * 1994-10-07 1995-09-12 Xilinx Inc. Structure and method for configuration of a field programmable gate array
US5523707A (en) * 1995-06-30 1996-06-04 International Business Machines Corporation Fast, low power exclusive or circuit
JP3618424B2 (ja) * 1995-09-07 2005-02-09 エイ・アイ・エル株式会社 低消費電力論理回路
JP3405864B2 (ja) * 1995-09-12 2003-05-12 富士通株式会社 演算装置、相関演算装置、動画像圧縮装置、ずれ検出方法およびずれ検出装置
JPH09162722A (ja) 1995-12-04 1997-06-20 Kawasaki Steel Corp パストランジスタ論理回路
JPH10229378A (ja) * 1996-04-02 1998-08-25 Sharp Corp マッチドフィルタ
KR100224278B1 (ko) * 1996-12-18 1999-10-15 윤종용 패스 트랜지스터 로직을 사용하는 조건 합 가산기 및 그것을 구비한 집적 회로
US6051031A (en) * 1997-02-05 2000-04-18 Virage Logic Corporation Module-based logic architecture and design flow for VLSI implementation
US5982198A (en) * 1997-03-19 1999-11-09 Honeywell Inc. Free inverter circuit
US6130559A (en) * 1997-04-04 2000-10-10 Board Of Regents Of The University Of Texas System QMOS digital logic circuits
JP3608970B2 (ja) * 1999-03-16 2005-01-12 富士通株式会社 論理回路

Also Published As

Publication number Publication date
JP2000269805A (ja) 2000-09-29
US20050193051A1 (en) 2005-09-01
US7203714B1 (en) 2007-04-10

Similar Documents

Publication Publication Date Title
US5724276A (en) Logic block structure optimized for sum generation
US5956265A (en) Boolean digital multiplier
EP1271474B1 (en) Function block
US7308470B2 (en) Smaller and lower power static mux circuitry in generating multiplier partial product signals
US4363107A (en) Binary multiplication cell circuit
EP0827069A2 (en) Arithmetic circuit and method
US9501260B2 (en) High speed and low power circuit structure for barrel shifter
US5805491A (en) Fast 4-2 carry save adder using multiplexer logic
Bindal Fundamentals of computer architecture and design
US7620677B2 (en) 4:2 Carry save adder and 4:2 carry save adding method
US7523153B2 (en) Method of forcing 1's and inverting sum in an adder without incurring timing delay
JP3225043B2 (ja) 絶対値算術演算ユニット及び差動マルチプレクサ
JP3608970B2 (ja) 論理回路
US4866655A (en) Arithmetic processor and divider using redundant signed digit
Castillo et al. A new area-efficient BCD-digit multiplier
JP3790534B2 (ja) 論理回路
US20220236950A1 (en) Full adder integrated circuit and 4-2 compressor integrated circuit based on the full adder integrated circuit
US5978826A (en) Adder with even/odd 1-bit adder cells
JP2004274795A (ja) 論理回路
US7797364B2 (en) Booth decoder apparatus and method
SalehiTabrizi et al. Designing Efficient Two-Level Reverse Converters for Moduli Set {2^ 2n+ 1-1, 2^ 2n, 2^ n-1\} 2 2 n+ 1-1, 2 2 n, 2 n-1
Geetha et al. Design of high speed error tolerant adder using gate diffusion input technique
US6571269B1 (en) Noise-tolerant digital adder circuit and method
Au et al. Unified Radix-4 Multiplier for GF (p) and GF (2^ n)
McAuley et al. Implementation of a 64-bit Jackson adder

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040720

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040827

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040921

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041012

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071022

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081022

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081022

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091022

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091022

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101022

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101022

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111022

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111022

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121022

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121022

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131022

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees