JPH03100725A - キャリーチェインの増分器/減分器回路 - Google Patents

キャリーチェインの増分器/減分器回路

Info

Publication number
JPH03100725A
JPH03100725A JP2217976A JP21797690A JPH03100725A JP H03100725 A JPH03100725 A JP H03100725A JP 2217976 A JP2217976 A JP 2217976A JP 21797690 A JP21797690 A JP 21797690A JP H03100725 A JPH03100725 A JP H03100725A
Authority
JP
Japan
Prior art keywords
bit
carry
chain
bits
lowest
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.)
Pending
Application number
JP2217976A
Other languages
English (en)
Inventor
Monte J Dalrymple
モンテ ジェイ.ダルリンプル
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.)
Zilog Inc
Original Assignee
Zilog Inc
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 Zilog Inc filed Critical Zilog Inc
Publication of JPH03100725A publication Critical patent/JPH03100725A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は一般にディジタル電子計数技術に関し。
特に増分器/減分器の回路に関する。
(従来の技術) 成る時にひとつのバイナリ数を上方に計数(増分)する
とともに、成る時にひとつのバイナリ数を下方に計数(
減分)するためにカウンタが備えられているような実例
が、ディジタル電子計算機設計において多く存在する。
斯かる増分器/減分器を広範囲に使用するものには、成
る時にひとつの割合で複数の順次メモリアドレスをステ
ップさせることにより電算機メモリをアクセスするため
のものがある。
特定の応用や電算機システムの大きさに応じて。
例えば8ビツト、 16ビツト、32ビツト、64ビツ
トあるいはそれ以上のビット数の電算機システムのアド
レスバスの幅に等しいビット数が通常メモリアドレスに
は含まれている。
例えば、マイクロコンピュータのダイレクトメモリアク
セス(DMA)用集積回路チップにおいて、これが実施
されている。DMA内の増分器/減分器の回路は電算機
システムのマイクロプロセサによる出発アドレス、なら
びにメモリがこの出発アドレスの上(増分)のアドレス
空間内でアクセスされるべきであるかあるいは下(減分
)のアドレス空間内でアクセスされるべきであるかの命
令と共に備えられている。
そこで、DMAの増分器/減分器は出発アドレスを電算
機システムのアドレスバス上に出力し。
そのアドレスを成る時にひとつの2進数の割合で2進カ
カウントすることにより増分、あるいは減分する。
斯くして、データをこれらのメモリ位置から読むか、あ
るいはこれらのメモリ位置に書くため。
指定されたアドレス空間内のすべてのアドレスが順次、
アクセスされる。
斯かる増分器/減分器の回路は本質的に、新しいアドレ
スを得るために現在のアドレスに対して2進値の“1”
を加えたり、あるいは減じたりするカウンタである。
排他的OR(XOR)ゲートがアドレス語の各ビットに
対して代表的に与えられており、入力としてその関連ア
ドレスビットの現在値と、現在のビットに近接した低位
ビットの加算からのキャリーインとを受領する。
キャリインビットの値は、アドレスの各ビットに対応す
る回路ステージを有するキャリーチェインによって代表
的には与えられている。
複数のキャリーチェインステージは直列に接続され1代
表的には前のステージからのキャリーイン信号、ならび
に当該ステージが関連しているアドレスビットの現在値
を入力するような単一ANDゲートから成り立つ。斯く
して、アドレスの最高位ビットに関連したステージを通
り、最低位アドレスビットに関連した最初のステージか
らのチェインをキャリービットは上に進む。
勿論1時には各キャリービットがチェインを進んで行く
ことの要求されることがあり、斯かる増分器/減分器の
速度に制限を与えている。
しかしながら、他の増分器/減分器の論理構成では通常
、きわめて多数の論理ゲートを必要とし。
集積回路チップ上で大きな面積を占めるので、キャリー
チェインが好ましい。
斯かる論理ゲートを構成するための重要、かつ−船釣な
技術は、相補対称形金属−酸化物一半導体(CMOS)
集積回路(IC)の使用である。
CMOS技術は単一ゲートの形でAND論理機能をはだ
すことはできないので、NANDゲートとインバータと
を直列に組合せて共通に作成される。
かくして、各ステージが2つの斯かるゲートを有する増
分器/減分器の一部として、キャリーチェインを備える
ことができる。勿論、各ゲートには実際に遅延があるの
で、チェインに沿ってキャリービットを完全に進めるの
に必要な最小時間はゲートの数の増加とともに増加する
。これは回路の動作速度を制限する可能性があり、特に
アドレスが16ビツト、32ビツトあるいはそれ以上の
ビット数のときには、それぞれ32あるいは64のゲー
トがキャリーチェインに必要なため9回路を利用すると
きに電算機システムの全体の動作速度を制限する可能性
がある。
(発明が解決しようとする課題) それゆえ1本発明の第1の目的は、構成に必要とされる
集積回路面積量が最小であって、かつ設計および製造が
容易な高速動作形キャリー機能を有する増分器/減分器
の技術を提供することにある。
本発明の第2の目的は、CMOS技術によって構成した
回路の斯かる技術を提供することにある。
(課題を解決するための手段) これらの目的2、およびさらにその他の目的は。
本発明の種々の様相によって達成され、その基本的様相
によれば、アドレスビットのブロック内で各ビットの現
在値は通常のキャリーチェインの動作とは反対方向へ最
高位ビットから最低位ビットへと走査される。アドレス
ビットの当該ブロック上で完全に達成されるべきキャリ
ー機能を待つことなく、加算プロセスの一部として成る
動作を実行することができるように、キャリー動作にお
いてはビット値の“ルックアペット”技術がしばしば使
われている。
本発明の基本的様相を実施するために、キャリーチェイ
ンは少なくとも2つのセグメントに分割されている。ひ
とつのセグメントは最低位アドレスビットのブロックに
対応するものであり、他の少なくともひとつのセグメン
トは他の位のアドレスビットのブロックに対応するもの
である。最低位よりも上位のブロックに対するキャリー
信号が最低位ブロックから与えられるよりも、最低位よ
りも上位のチェインセグメントに対して入力キャリーイ
ン信号を与えるためには個別に分割されたルックアヘッ
ドチェインが活用されている。ルックアヘッドチェイン
はキャリーチェインと同様の構成のものであるが、最低
位アドレスビットブロックの最上位ビットからキャリー
値を増分させるものである。
結果は、上位をみる能力である。最低位よりも上位のチ
ェインセグメントが変化していて、キャリー動作に一種
の並列性をもたせ、それによって動作速度を増加させる
ようなアドレスカウントであるときには、この結果が期
待される。
実施例の構成において、キャリーチェインとルックアヘ
ッドチェインのそれぞれは、基本的に単位ステージあた
りひとつのゲートのみで構成されている。これはNAN
DゲートとNORゲートとを直列接続したCMOSなど
で置き換えることができる。単位チェインステージあた
りひとつのゲートのみを使用すれば2回路の動作速度を
あげるのに役立たせることもできる。2つの異なった種
類のゲートを使ったゲートを使用した斯かるチェインを
実際に構成するに際して困難な点は、2つの非連続アド
レスビットに関連した加算、キャリーチェイン、ならび
にルックアヘッドチェインの機能を実現する論理セルを
含む繰返し使用可能な集積回路セルを備えることにより
解決される。アドレスは回路で使用されるが、このアド
レス内のビット数によって要求されるチェインステージ
と加算器との数だけ、当該セルが繰返して集積回路内で
使用される。
本発明の種々の様相のその他の目的、特徴、ならびに利
点は、添付図面に関連して以下に記載された実施例の記
述から明らかになるであろう。
(実施例) 最初に第1図を参照すると1本発明の種々の様相を使用
した増分器/減分器の実施としての応用を図示するため
に、コンピュータシステムを一般的に記載しである。マ
イクロプロセサCPU13゜システムランダムアクセス
半導体メモリ15.ディスクメモリ17.ならびに種々
の入出力装置190間で、システムとアドレスデータバ
ス11とは通信をしている。加えて9本実施例において
ダイレクトメモリアクセス(DMA)回路21もシステ
ムバス11に接続されている。本実施例においては、D
MA21の目的はシステムメモリ15のシステムメモリ
15のアドレスに順次データの読出しあるいは書込みが
できるように、システムメモリ15のアドレスを順次ア
クセスすることである。アドレス指定機能を達成させる
DMA21の一部分のみが第1図に示されている。
通常のバッファ回路25を通してシステムバス11に接
続されたアドレスレジスタ23が。
DMA21には備えられている。回路27はアドレスレ
ジスタ23の内部に貯えられたアドレスビットの現在値
を受領し、アドレスビットの新しい値を計算し、新しい
値をレジスタ23に戻して書込むものである。
本実施例に対して、バス11上で輸送されるシステムア
ドレスの幅、ならびにアドレスレジスタ23の大きさは
16ビツトである。
記載すべき構成回路が16ビツト幅アドレスに対応する
ものであるとはいえ2本発明の技術は特定のアドレス幅
に限定されるものではなく、8ビツト、32ビツト、6
4ビツトあるいはその他のビット数の幅のアドレスでも
使用できるものである。
32ビツトのシステムアドレスバス幅は、現存する新し
いマイクロコンピュータシステム設計法において極めて
一般に使用されるものである。
第2図は、16進数F5から始まり、104へと進んで
いる連続アドレス値をいくつか示したものである。シス
テムメモリ15内のこれらアドレスにおけるデータがア
クセスされたときには、DMA21は成る時にひとつの
割合でこれらのカウントをステップしていき、順次、シ
ステムバス11上のアドレスを表す。
これらのアドレスを増分することが望まれるならば、ま
ず数F5を表す16ビツトの数が含まれるように、マイ
クロプロセサ13によりアドレスレジスタ23をプログ
ラムする。
カウント動作を104で停止させることは、DMA21
でも言明されよう。処理の停止時間にカウント104の
パターンが到来するまで、第2図に示すそれぞれの16
ビツトパターンは、順次、ある時にひとつの割合で、シ
ステムバス11に加えられる。
代わりに、最大数から最小数までメモリ15内で、これ
らのアドレスを走査することが望まれるならば、マイク
ロプロセサ13によって開始カウント104が最初にア
ドレスレジスタ23内へ書き込まれ、104から下方へ
終了点F5までDMA21はカウントを減分させる。も
ちろん、通常、本技術の実際の応用には、さらに大きな
アドレスカウントをステップすることも含まれるが、シ
ステム動作を説明するため、限られた数のシーケンシア
ルアドレスが第2図には示されている。
本発明の特定実施例に加えて、その−船釣技術を説明す
るため、ひとつのアドレスからいまひとつのアドレスへ
とアドレスを増分させるときには、その都度、2進数の
“1″がカウントで加算されるようにして、順次アドレ
スの増加することが、第1図の回路の一部分として第3
図に示しである。
最低位ビットが“0”、最高位ビットが15であるよう
な16ビツト幅のアドレスの実例が採用されている。こ
こで使用されている記号″BO”″“81″・・・は、
それぞれアドレスビットO,アドレスビット1.・・・
の現在値を示し、記号“BO#“B1#”はそれぞれア
ドレスビット0.アドレスビットド・・の現在値の逆数
を示している。
最後に、記号“BNO”、”BNI’″・・・は、それ
ぞれ第3図の回路によって計算されている。これらのビ
ットの新しい次の値を表している。
2進数の“1”を現在のアドレス値へ加算するために、
加算回路29には16個のXORゲート31〜46が備
えられている。ここで、それぞれのXORゲートは各ビ
ットに対応するものである。
ゲート31〜46のそれぞれからの出力は、アドレスビ
ットのひとつの新しい値である。XORゲート31〜4
6のそれぞれには、2つの入力がある。最初のものは当
該ゲートのアドレスビットの現在値、あるいはその逆数
である。例えば、xORゲート33にはビット2に対応
する現在のアドレス値、すなわち“B2”が含まれ、ゲ
ート34にはビット3に対応する現在値の逆数、すなわ
ち“B3#”が含まれ、以下、同様である。ゲート31
〜46のそれぞれの他の入力は、近接した低位ビットの
加算動作からのキャリービットがあれば、これを受領す
る。
本発明によればキャリーチェインは少なくとも2つのセ
グメン)47.49に分割されているが、このキャリー
チェインによって一般にキャリービットが発生する。セ
グメント49は直列に接続されたゲート51〜58を備
え、キャリーチェインの各ステージに対応してひとつの
ゲートが備えられ、チェインの中央にインバータ59が
配置されている。チェイン内の各ゲートの出力は次のゲ
ートの入力になり、最低位ビットOから開始され、中間
位のビット7へと進んでいく。これらのゲート51〜5
8のそれぞれの第2の入力は、第3図に示すように、関
連したアドレスビット、あるいはその反転の現在値であ
る。ゲート51〜58は交互に置かれたNORゲートと
NANDゲートで構成され、CMOS技術で実際に構成
することができるが、単位キャリーチェインステージあ
たりひとつのゲートのみが基本的には必要とされる。
第3図に示すように、特定の論理回路を使用するために
、NORゲート51.53,56.58のそれぞれは関
連する現在ビット値の逆数を受領し、一方ではNAND
ゲー)52,54.55.57は関連するアドレスビッ
トの現在値を受領する。
第2のキャリーステージ49は同一の構造を有し、アド
レスビット8−15の最高位ブロックで使われている。
このステージ49は直列接続されたゲート61〜68と
、ゲート64.65間に接続されたインバータ69とを
備えたものである。
通常のキャリーチェインの構成では、ゲート61の入力
にゲート58の出力を接続することにより2つのセグメ
ン)47.49を相互接続させている。ここで、インバ
ータが両セグメント47゜49のちょうど中間に置かれ
ている。しかしながら、キャリー値がキャリーチェイン
の第2のセグメント49に加えられる前にゲート51〜
58のそれぞれに沿ってキャリー値がリップルするのを
待たせる必要性を避けるため、本発明では最低位のアド
レスビット0−7を監視し、ゲート51〜58の全てを
キャリービットが進むのに必要とされるよりもはるかに
短い時間で、ゲート61に対してキャリービットが加え
られるときを予言する。
直列接続されたゲート71〜78から成立ち、ゲー)7
4.75の間のシリアルチェインの中央にインバータ7
9を備えたルックアヘッドチェイン70により、上記動
作が行なわれる。ゲート71.73,76.78はNA
NDゲートであり、それぞれ関連する最低位ピッ)?、
  5. 2. 0の現在状態を入力するものである。
一方、ゲート72、 74. 75. 77はNORゲ
ートであり、それぞれの現在アドレスビット値の逆数を
入力するものである。キャリービットは、最低位ビット
0−7のブロックの最高位ビット7に関連したゲート7
1から最低位ビット0へと、下方へルックアヘッドチェ
イン70内を走行する。得られたチェイン70のキャリ
ービット出力は一対のインバータ81.83を介して第
2のキャリーチェインステージ49の入力へ加えられて
いる。インバータはバッファとして使用され、最低位か
ら最高位までの長さで使用されている導体の損失を補償
する増幅の用に供されている。
アドレスカウントのF5から104への範囲をし増分す
るときに、第3図の回路の動作は第2図に関して説明さ
れている。これは増分機能であるため、発生しているか
9発生すべきビットパターンは前方へ進むことが知られ
ている。
ルックアヘッドチェイン70を動作させるのは、この知
識である。キャリーチェインセグメント47がそのキャ
リービットを当該アドレスブロックの最低位ビット0か
ら最高位ビット7へ伝達して行なっている間、ルックア
ヘッドチェイン70はそのキャリービットを反対方向へ
伝達している。
かくして、カウントF5に対してルックアヘッドチェイ
ン70の最初の4ステージ71〜74のそれぞれは“1
”の状態に保たれていることが、第2図かられかる。カ
ラン)FBに進むのに伴って、第5ステージ、ゲート7
5も“l”の状態になる。
カウントFCにおいて、ゲート76により監視されてい
る他のビットが1”の状態になり、カウントFEにおい
て、ゲート77により監視されている第7ビツトが“1
”の状態になる。
かくして、これらのカウントのそれぞれの点において、
ひとつのカウントから他へと進むに際して状態が変化し
ない多数の直列接続ゲートが存在する。
かくして、ゲートはその出力状態を変化させていないた
め、これらのゲートにはゲート遅延が存在しない。それ
ゆえ、例えば、カラン)FEのとき、ゲートステージ7
1〜77のそれぞれは次のカウントFF増分するときに
同じ値に保たれている。
このカウントに対しては、最後のゲート78のみの状態
が変化している。かくして、これら2つのカウント間で
状態が進行しているチェイン70においては、ひとつの
ゲート遅延のみが存在する。
しかしながら、増分キャリーチェインセグメント47に
おいては、カウントFEとカウントFFとの間のアドレ
スの′″0”のビットの値は最初に変化するので、8個
のゲートはそれぞれ状態を変化させなければならない。
そこで、キャリービットをチェイン47に沿って伝達さ
せるのに伴って増分キャリーチェインセグメント47は
8個のゲートの遅延を含むことになる。
したがって、ビットパターンで前方をみることにより、
カウントがFFから100へと前進するのに伴って、ル
ックアヘッドチェイン70は単位ゲート遅延を有し、第
2のキャリーチェインセグメント49に対して入力を与
えることができる。第2図に示すようにカウントがFF
から100へと増分したとき、アドレスのビット8の値
は最初に“0”から“1”へと変化する。カウント10
0から後は、キャリーチェインの第2のセグメント49
が動作を開始する前に第1のセグメント47における多
数のステージの遅延を通してキャリービットがリップル
するのを、キャリーチェインの第2のセグメント49は
待つ必要がない。キャリーが“1”のときに即刻、ルッ
クアヘッドチェイン70はその入力をセットする。第1
のキャリー信号が最低位ビットのキャリーチェイン47
に進むと同時に、上記キャリー信号は第2のセグメント
49を下方へ前進していく。結果的には、ひとつのカウ
ント値から他へと増分するのに要する時間は、きわめて
短い。
第2図のカウント104からカウントF5へと前進する
ようなカウントの減分が生ずるときには、第3図に関連
して記載されているのと同様な原理が採用される。増分
状態を説明するのに記載した方法と同様にして、減分状
態で第3゛図の回路を動作させると、増分チェインセグ
メント47.49およびルックアヘッドチェイン70の
ゲートのそれぞれに加えられるアドレスビットの現在値
が反転している期間に、加算器29は同様な状態に保た
れている。例えば、ゲート53の入力はB2#からB2
へ変化し、隣接ゲート54の入力はB3からB3#へ変
化する期間が上記に該当する。
16ビツトのアドレスを増分、および減分するために、
第3図の回路を使用したシステムを第4図に示す。集積
回路上の空間を有効に使用するため、ならびに第3図の
チェインおよび加算器を容易に設計するために、同一の
回路構造で繰り返し使用可能なセルが相互に接続されて
いる。セル89−92が相互接続され、かつ、ピッ)8
−15の最高位ブロックと共に使用されているが、セル
85−88はアドレスビット0−7の最低位ブロックに
対応して第4図のシステム内に備えられている。セルは
それぞれ同一の構成で、必要なチェインと加算器とを形
成するため、−緒に接続されるように適合したものであ
る。第5図は、セル85の回路図である。チェインセグ
メント47,49.70のそれぞれの隣接ゲートは相異
なっているとは云え、2つの非連続ビットに対応して各
セルにチェインゲートを備えさせることにより繰り返す
ことができるようにセル構造には工夫がしである。すな
わち、例えば、第4図ふよび第5図の両方に示すように
、セル85にはアドレスビット0とアドレスビット4と
に関連したチェイン論理要素、ならびに加算器論理要素
が備えられている。
同様に、セル85の一方の側面上に接続された同様なセ
ル86はアドレスビット1とアドレスビット5とに関連
し、セル87はビット2とビット6とに関連し、セル8
8はビット3とビット7とに関連している。
同様にして、高位ビットに対応してセル89はビット8
とビット12との現在値を受領するように接続され、こ
れらのビットに対応した新しい値を計算し、セル90は
ビット9とビット13とに対応し、セル91はビット9
とビット10とに対応し、セル92はビット11とビッ
ト15とに対応している。線路95のこれらの回路への
制御信号は、回路がアドレスを増分して動作しているか
、あるいは減分して動作しているかを指定するものであ
る。
バッファとして、ならびに−時記憶をするために、各ア
ドレスビットに対応してフリップフロップ回路が備えら
れ、アドレスレジスタ23の当該ビットと当該ビットで
使用しているセルとの間にフリップフロップ回路が挿入
されている。
例えば、アドレスレジスタ23のビット0と、現在値を
アドレスレジスタ23の当該位置から読み出すためと、
新しい値をアドレスレジスタ23の当該位置へ書き込む
ためとの両目的のためにビット0に接続されているセル
850線路との間にフリップフロップ回路103が接続
されている。同様に、フリップフロップ105はセル8
5とアドレスレジスタ230ビツト4の記憶位置との間
で、ビット4の現在値と新しい値とを授受している。
第5図を参照すると、当該回路のゲートが接続されてい
るビット0とビット4とに対応して、第3図のルックア
ヘッド検出チェイン70からのゲ−)74.78がそれ
ぞれ備えられている点は注目されよう。したがって、回
路が減分モードで使用されているときには、ゲート10
7.109はそれぞれ同様のルックアヘッド機能を備え
ている。
第5図の左側および右側への端末線路は、最隣接位置に
おいて繰返して使用される同一セルの反対側で該当する
線路を接続するのに適合したものである。この結果、増
分あるいは減分の場合に対応して完全なルックアヘッド
チェインが形成される。
第5図で図示するために選択された特定セルでは。
その右側のリードが追加セル以外の回路要素にも接続さ
れている。よって、減分の場合には該当するルックアヘ
ッド検出チェインの端末に出力線路99が接続されてい
るが、ルックアヘッドチェイン70の端末には出力線路
97が接続されている。
第4図のスイッチ101は、インバータ81.83を通
ったこれら2本の線路のひとつをセル89−92に実装
されている増分キャリーチェイン490入カへ接続する
ように動作している。システムのマイクロプロセサ13
から出ている線路上の制御信号に応答して、スイッチ1
01が動作する。
増分および減分の場合に対応して二重化されたキャリー
チェインを備えるよりも、アドレスカウントを増分、な
らびに減分させている期間に第5図の回路においては、
増分キャリーチェイン47のゲー)51.55が使用さ
れる。線路95上の制御信号に応答して、2つの位置の
間でスイッチ111.113が動作している。増分して
いるときには、ゲート51はビット線BO#に接続され
ている。減分しているときには、ゲート51の入力は入
力ビツト線BOに接続されている。
同様に、増分しているときにはゲート55はビット線B
4に接続され、減分しているときにはビット線B4#に
接続されている。
第3図の検討から、ピッ)8−15の高位ブロックに対
応してルックアヘッド検出チェインは存在しないことが
注目されよう。
しかしながら、上記チェインのゲートおよび相互接続が
使用されていないとは云え、第4図および第5図の構成
ではこれらのゲートおよび相互接続が備えられている。
よって、繰り返して第5図の繰り返し可能なセルを使用
するならば、第5図の繰り返し可能なセルは同一のもの
であり、最低位ビットブロックおよび最高位ビットブロ
ックに対応して異なった2種類のセルを取り扱わなけれ
ばならないよりも、回路設計を簡易化できると云う特長
がある。ゲー)58.68は不必要であるが、これらの
ゲートを除去するために、これらのビットのうちの2つ
に対応してセル設計を変更するよりも、繰り返して使用
できるセルの設計法を使用できると云う利権において、
ゲート58.68はきわめて容易に備えられることも第
3図から注目される。
第3図から容易にわかるように、チェイン47゜49・
、70のそれぞれの単位ステージには、ひとつのゲート
のみが存在することも、この構造から結論づけられる。
CMOSプロセスで作ることができる単一ゲートを使用
することの欠点、すなわちチェイン内に2つの異なった
種類のゲートを使用することの必要性は、第5図の一様
セル設計によって取り除くことができる。第5図におい
て、2つの非連続ビットに対応するチェインのゲートは
同一セルへと組み合わせられている。これによって必要
とされるゲート数が最初になり、これらの目的で専用さ
れなければならない集積回路上の空間は最小になる。さ
らに、キャリービットがチェインの長さ方向に走行する
のに必要な時間が最小になる。第3図のチェイン47.
49.70のそれぞれは単位ビットあたりひとつのゲー
トのみを使用し、さらに第4図および第5図に記載した
特定セルの構成に必要なチェインの中央にインノく一夕
を使用している。他の回路レイアウトでは、これらのイ
ンバータを必要としないものも可能である。これらのチ
ェインのそれぞれの後半では、使用されているゲートの
種類が変更されている。
記載されている特定実例の2つのブロックよりも多くの
ブロックでアドレス語が分割されている実施例において
、本発明の技術を採用することもできる。それは、2つ
よりも多くのキャリーチェインセグメントが存在し、ア
ドレスを分割するビットの各ブロックに対応してひとつ
のキャリーチェインセグメントが存在するものである。
動作しているルックアヘッドチェインの数は、キャリー
チェインセグメントの数よりも小さい数である。
斯かるアドレスの分割によれば並列度をあげることがで
き、さらに高速動作が可能である。
本発明の種々の様相は実施例に関して記載されていると
は云え、特許請求の範囲の全てに記載の範囲内で本発明
がすべて保護されるものと理解されよう。
【図面の簡単な説明】
第1図は、本発明の種々の様相を活用したコンピュータ
システムの一例を示す説明図である。 第2図は、本発明の詳細な説明するためのバイナリカウ
ントの値を示す図である。 第3図は、本発明の基本的様相を採用した増分器の実例
を示す論理回路図である。 第4図は、第3図の論理を使用した増分器/減分器の回
路構成実施例のブロック図である。 第5図は、第4図の増分器/減分器において繰り返し使
用可能なセルの論理回路図である。 11・・・システムアドレス/データバス13・・・マ
イクロプロセサ 15・・・システムメモリ 17・・・ディスクメモリ 19・・・各種入出力装置 21・・・DMA 23・・・アドレスレジスタ 25・・・バッファ 27・・・新アドレス計算 29・・・加算器 3 t 〜46・ EXOR/7’−)47.49.7
0・・・キャリーチェイン51〜58.61〜68. 
71. 78・・・伝達ゲート 59.89,79.81.83 ・・・インバータ 95.97.99・・・線路 101.113・・・スイッチ

Claims (7)

    【特許請求の範囲】
  1. (1)事実上、2進語を構成する与えられたビット数に
    等しい数の複数に直列接続された論理要素ステージおよ
    びこれに並列接続された加算論理要素から成り、かつ、
    少なくとも第1および第2の直列接続された非接続ステ
    ージグループに分割され、第1のグループは前記2進語
    のビットの最低位グループに関連しているとともに第2
    のグループは上位ビットの相互に排他的なグループに関
    連しているキャリーチェインと、 事実上、前記第1のグループのビット数に等しい数の複
    数に直列接続され、前記第2のチェイングループの入力
    に接続された出力を備えたルックアヘッドチェインと を具備し、前記与えられた数のビット数より成る2進語
    の増分器/減分器。
  2. (2)最低位ビットを使用することによりステップを開
    始し、中間位ビットの使用にまでステップアップする一
    連のステップでキャリーを計算するために語ビットの現
    在の状態に応答可能な第1の手段と、 中間位ビットからステップを開始し、最低位ビットの使
    用にまでステップダウンする一連のステップでキャリー
    を計算するために語ビットの現在の状態に応答可能で、
    これによって出力キャリー信号を発生するための第2の
    手段と、 前記中間位ビットの近傍のビットを使用してステップを
    開始し、最高位ビットにまでステップアップする一連の
    ステップでキャリーを計算するために語ビットおよび出
    力キャリー信号の現在の状態に応答可能な第3の手段と を備え、 最低位ビットから最高位ビットにまで延長し、与えられ
    た数のビット数から成る2進語の少なくとも一部分で増
    分/減分するための電子回路において、加算/減算に使
    用されるキャリーを決定するための回路。
  3. (3)与えられた数の複数のビットの現在値を一時的に
    記憶するための手段と、 最低位ビットグループのそれぞれの現在値を受領するた
    めの前記記憶手段に接続された個々のステージ、ならび
    にキャリービットを受領するとともに、前記最低位ビッ
    トグループの最低位に関連したステージにキャリーを加
    えるために接続された入力を有する複数の直列接続論理
    要素ステージから成る第1のキャリーチェインと、 上位ビットグループのそれぞれの現在値を受領するため
    の前記記憶手段に接続され、前記上位ビットグループの
    最低位に関連して当該ステージに接続された入力を有す
    る複数の直列接続論理要素ステージから成る第2のキャ
    リーチェインと、前記第1および第2のキャリーチェイ
    ンの個々のステージ、ならびに前記記憶手段に接続され
    た入力を有するとともに、前記アドレス語の与えられた
    数の複数のビットの新しい値を与える出力を有する複数
    の加算論理要素と、 最低位ビットグループにおいて複数のビットの現在値を
    受領するための前記記憶手段に接続され、キャリービッ
    トを受領するとともに、前記最低位ビットの最高位に関
    連した当該ステージにキャリーを印加するために接続さ
    れた入力、ならびに前記最低位ビットの最低位に関連し
    た当該ステージから得られ、前記第2のチェインの入力
    に接続された出力を有する複数の直列接続論理要素ステ
    ージから成るルックアヘッドチェインと を備え、語内の該当位置の位に関して照合され、与えら
    れた数のビット数の2進語の増分器/減分器。
  4. (4)請求項3記載の組合せにおいて、 それぞれのチェインの論理要素ステージはNAND論理
    ゲートとNOR論理ゲートとが交互に配置され、単位ス
    テージあたり斯かるゲートをひとつ使用するだけの複数
    の直列接続されたステージを備えた2進語の増分器/減
    分器。
  5. (5)請求項4記載の組合せにおいて、 前記チェインはCMOS集積回路構造により形成された
    2進語の増分器/減分器。
  6. (6)請求項5記載の組合せにおいて、 繰り返し可能な状態で相互接続されたセルで構成された
    前記論理要素で少なくとも前記第1のキャリーチェイン
    と前記ルックアヘッドチェインとが形成され、かつ、各
    セルは前記第1のキャリーチェインと前記ルックアヘッ
    ドチェインとをそれぞれ近接しない位置に置いて構成し
    たステージから成るNAND論理ゲートとNOR論理ゲ
    ートとを備えた2進語の増分器/減分器。
  7. (7)最低位グループと上位グループとから成り、相互
    に排他的な連続ビットの少なくとも2グループへと2進
    語を分割するためのステップと、それぞれ独特な最低位
    グループの現在値を受領する複数の直列接続ステージ、
    および出力を有する第1のルックアヘッドチェインに沿
    ったキャリービットを伝達させ、かつ、前記最低位グル
    ープの最高位ビットから最低位ビットに至る関連したス
    テージからキャリービットの伝達を発生させるためのス
    テップと、 それぞれ独特な最低位グループの現在値を受領する複数
    の直列接続ステージを有する第1のキャリーチェインに
    沿ってキャリービットを伝達させ、かつ前記最低位グル
    ープの最低位ビットから最高位ビットに至る関連したス
    テージからキャリービットの伝達を発生させるためのス
    テップと、それぞれ独特な上位グループの現在値を受領
    する複数の直列接続ステージを有する第2のキャリーチ
    ェインに沿ってルックアヘッドチェインの出力を伝達さ
    せ、かつ、前記最低位グループの最低位ビットから最高
    位ビットに至る関連したステージからキャリービットの
    伝達を発生させるためのステップと、 第1および第2のルックアヘッドチェインの両方の複数
    のステージの状態、ならびに現在のビット値を論理和回
    路へ印加し、これによって新しいビット値を決定するた
    めのステップと を備え、与えられた数の幅のビット数の現在の2進値を
    1つだけ新しい値に変える方法。
JP2217976A 1989-09-08 1990-08-17 キャリーチェインの増分器/減分器回路 Pending JPH03100725A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/404,591 US5027310A (en) 1989-09-08 1989-09-08 Carry chain incrementer and/or decrementer circuit
US404591 1989-09-08

Publications (1)

Publication Number Publication Date
JPH03100725A true JPH03100725A (ja) 1991-04-25

Family

ID=23600225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2217976A Pending JPH03100725A (ja) 1989-09-08 1990-08-17 キャリーチェインの増分器/減分器回路

Country Status (2)

Country Link
US (1) US5027310A (ja)
JP (1) JPH03100725A (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339447A (en) * 1989-11-17 1994-08-16 Texas Instruments Incorporated Ones counting circuit, utilizing a matrix of interconnected half-adders, for counting the number of ones in a binary string of image data
US5198993A (en) * 1989-12-04 1993-03-30 Matsushita Electric Industrial Co., Ltd. Arithmetic device having a plurality of partitioned adders
US5384724A (en) * 1991-09-05 1995-01-24 Texas Instruments Incorporated Electronic circuit and method for half adder logic
US5251312A (en) * 1991-12-30 1993-10-05 Sun Microsystems, Inc. Method and apparatus for the prevention of race conditions during dynamic chaining operations
US5504698A (en) * 1994-05-17 1996-04-02 Silicon Graphics, Inc. Compact dual function adder
US5619441A (en) * 1994-10-14 1997-04-08 International Business Machines Corporation High speed dynamic binary incrementer
US5555517A (en) * 1995-01-04 1996-09-10 Intel Corporation Apparatus and method for efficient carry skip incrementation
US5563814A (en) * 1995-02-21 1996-10-08 Delco Electronics Corporation Reduced circuitry implementation for coverting two equal values to non-equal values
US5583453A (en) * 1995-05-26 1996-12-10 National Semiconductor Corporation Incrementor/decrementor
US6199090B1 (en) * 1998-06-19 2001-03-06 Ati International Srl Double incrementing, low overhead, adder
US6516335B1 (en) * 1998-09-03 2003-02-04 Agilent Technologies, Inc. Incrementer/decrementer having a reduced fanout architecture
US6678711B1 (en) * 2000-09-20 2004-01-13 Lsi Logic Corporation Incrementer/decrementer circuit
US20030097392A1 (en) * 2001-11-21 2003-05-22 Masteller Steven R. Four-rail NCL incrementor/decrementor
US6591286B1 (en) 2002-01-18 2003-07-08 Neomagic Corp. Pipelined carry-lookahead generation for a fast incrementer
JP2003283331A (ja) * 2002-03-25 2003-10-03 Oki Electric Ind Co Ltd グレイコード・カウンタ
US20040001505A1 (en) * 2002-06-27 2004-01-01 Sun Microsystems, Inc. Circuit for adding one to a binary number
US20040015534A1 (en) * 2002-07-17 2004-01-22 Sun Microsystems, Inc. Method for adding one to a binary number
US20090322961A1 (en) * 2008-06-27 2009-12-31 Limberg Allen Leroy System for digital television broadcasting using modified 2/3 trellis coding

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4153939A (en) * 1976-01-24 1979-05-08 Nippon Electric Co., Ltd. Incrementer circuit
US4417315A (en) * 1981-07-14 1983-11-22 Rockwell International Corporation Method and apparatus for incrementing a digital word
US4486851A (en) * 1982-07-01 1984-12-04 Rca Corporation Incrementing/decrementing circuit as for a FIR filter
JP2610417B2 (ja) * 1985-12-23 1997-05-14 日本テキサス・インスツルメンツ株式会社 アドレス信号生成方法及びその回路
US4885716A (en) * 1988-08-15 1989-12-05 Dallas Semiconductor Corporation High speed carry chain

Also Published As

Publication number Publication date
US5027310A (en) 1991-06-25

Similar Documents

Publication Publication Date Title
JPH03100725A (ja) キャリーチェインの増分器/減分器回路
Brent et al. A regular layout for parallel adders
EP0515165B1 (en) A Memory access device
US4525797A (en) N-bit carry select adder circuit having only one full adder per bit
JPH02138620A (ja) 数値量を計算する方法および数値データ処理装置
JPH0431411B2 (ja)
US4422143A (en) Microprocessor ALU with absolute value function
US3699326A (en) Rounding numbers expressed in 2{40 s complement notation
US4905178A (en) Fast shifter method and structure
US5129066A (en) Bit mask generator circuit using multiple logic units for generating a bit mask sequence
JPS63155336A (ja) デ−タ処理装置
JPS62157943A (ja) 3つのバイナリ・ワ−ドを加算する回路
EP0057096A2 (en) Information processing unit
US5126965A (en) Conditional-sum carry structure compiler
US4276608A (en) Fibonacci p-code parallel adder
GB1327575A (en) Shift register
US4742480A (en) Cycle counter/shifter for division
US3911405A (en) General purpose edit unit
US3430201A (en) Extending pulse rate multiplication capability of system that includes general purpose computer and hardwired pulse rate multiplier of limited capacity
JP2803788B2 (ja) パリテイ予測およびストリング制御を有する高速パイプライン・シフタ要素
WO1998029800A1 (en) Spatially pipelined arithmetic logic unit
US20040015534A1 (en) Method for adding one to a binary number
SU634276A1 (ru) Накапливающий сумматор
Guan et al. A simple and high speed CMOS carry chain adder architecture
US20040001505A1 (en) Circuit for adding one to a binary number