JPH06348454A - 算術または論理演算の計算結果の検出方法 - Google Patents
算術または論理演算の計算結果の検出方法Info
- Publication number
- JPH06348454A JPH06348454A JP5190598A JP19059893A JPH06348454A JP H06348454 A JPH06348454 A JP H06348454A JP 5190598 A JP5190598 A JP 5190598A JP 19059893 A JP19059893 A JP 19059893A JP H06348454 A JPH06348454 A JP H06348454A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- signal
- zero
- cell
- alu
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30094—Condition code generation, e.g. Carry, Zero flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49905—Exception handling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Logic Circuits (AREA)
- Executing Machine-Instructions (AREA)
Abstract
は、従来はALU=0の計算結果によって決定していた
が、処理遅れを安定的に少なくするために、計算結果が
出る前に、ゼロ条件が成立したときに決定するようにす
る。 【構成】 算術または論理計算の結果の検出回路(6
0)は、第1演算数Aと第2演算数BとCinを受け、1
組の1ビット・ゼロ信号Zを発生する1組の1ビット・
ゼロのセル(62)を備える。組み合わせ回路(64)
が前記1ビット・ゼロ信号の組を受け、前記1ビット・
ゼロ信号の既知の関数である選択された出力を出す。望
ましい実施態様では、組合わせ回路(64)は論理積機
能であって、全ての前記1ビット・ゼロ信号が1になる
条件を検出する。望ましい各種の実施態様において、前
記1ビット・ゼロ信号は加算、減算、論理演算などの演
算の算術ゼロ条件を検出する。
Description
算術論理演算装置に関し、より詳細には算術または論理
計算の結果を検出する方法に関する。
の分岐の決定は、その前の計算結果に基づいて行われる
ことが多い。一般のコンピュータは算術論理演算装置
(ALU)を備え、2つ以上の「N」ビットの演算数(o
perand) に数学的演算を行う。ただし、「N」は、各演
算数のビット総数を表す。また「n」番目のビットを参
照する場合もある。ただし「n」は指標(index) 値で、
その値は0からN−1までである。
LU=0であると分岐を決定する。多くの場合、計算結
果がゼロであれば分岐を行い、ゼロでなければプログラ
ムは次の命令を引き続き実行する、またはその逆であ
る。これまでこの分野では、算術計算の結果のテストは
実際の計算結果に頼っている。
(ALU=0)信号のタイミングの方が計算結果自体よ
りも一層厳密であると考える。この発明の望ましい実施
態様では、算術または論理条件信号を、実際の計算結果
が出る前に計算する。
の各ビットに対する信号(ここでは1ビット・ゼロ信号
と呼ぶ)を生成するが、この算術または論理条件信号は
計算結果とは独立に計算してよい。
1ビット・ゼロ信号は各演算数のn番目および(n−
1)番目のビットにだけ依存することが望ましい。最下
位(ゼロ番目)の1ビット・ゼロ検出器は、各演算数の
ゼロ番目のビットとけた上げ入力(carry-in)信号Cinだ
けに依存する。というのは、最下位の1ビット・ゼロ検
出器にとっては(n−1)番目のビットはないからであ
る。
1ビット・ゼロ信号の論理積をとり、計算結果とは独立
に全体のALU=0信号を生成する。ここに説明する新
規な考え方は、加算器設計、減算器設計、ALU設計に
取り入れてよい。
他においても、ここに説明する新規な考えは、計算結果
が「0」すなわち全てのビットがゼロ、計算結果が
「1」すなわち全てのビットが1、SUBFIELD=
「0」または「1」を含む演算条件を検出するのに用い
てよい。この論理を拡張すると、任意の選択された論理
結果を既知の値と比較して、前記論理結果が前記既知の
値と等しいかどうかをすぐ決定することができる。
ゼロ検出回路を説明する。この回路は、1組の1ビット
・ゼロのセルを備え、第1演算数A、第2演算数B、お
よびCinを入力とし、1組の1ビット・ゼロ信号Zを発
生する。組合わせ回路がこの1組の1ビット・ゼロ信号
を受けて、この1ビット・ゼロ信号の既知の関数である
選択された出力を出す。
理積機能であり、全ての1ビット・ゼロ信号が1になる
(positively asserted) 条件を検出する。この発明の各
種の望ましい実施態様において、1ビット・ゼロ信号は
加算、減算または論理演算の操作のゼロ条件を検出して
よい。その他の装置、システム、方法も開示する。
略図を示す。このALU=0回路20は、ALU22の
結果の出力であるR0 からRN-1 を受ける。ALU22
は、その演算数A0 からAN-1 とB0 からBN-1 に特定
の算術演算を行う。これらの演算は、加算や減算などの
算術演算でも、論理積または論理和などの特定の論理演
算でもよい。
ら成り、この論理回路をNビットの論理的NORゲート
24で示す。否定論理和機能の定義により、このNOR
ゲート24のALU=0出力は、NORゲート24の全
ての入力がゼロ(従って計算結果がゼロ)の場合だけ1
になる。
は、より小さいが同じ機能を持つゲート網で実現するこ
とができる。この構造の難点は、ALU=0条件の決定
を行う前に算術または論理計算を完了して、ALU22
から出力を出しておかなければならないということであ
る。
路30の略図であって、米国特許番号4,815,01
9でボスハート(Bosshart)が開示したものである。この
ALU=0回路30は、実際にはALU≠0を計算し、
ALUの各部分32はけた上げ入力信号が入る前にそれ
ぞれの予備的ALU≠0信号を得ることによって、けた
上げ選択先取りALUで動作する。この予備的ALU≠
0出力は、ORゲート34の出力である。
32の最下位ビットと、関連するALUの部分32から
のR≠0信号と、もしあればその前の部分のORゲート
34からのALU≠0を受ける。従ってけた上げ信号が
ALUの部分32全体でリプル(ripple)状態になるとA
LU≠0はORゲート34を通してALU全体でリプル
状態になる。けた上げ入力信号が入ると、その部分の最
下位ビットと最終的な比較を行い、最終のALU≠0信
号を発生する。
算は、その部分のALUの結果が完了した後、1ゲート
遅れて完了する。最終のALU≠0計算は、けた上げ選
択先取りALUの計算が完了した後、1ゲート遅れて完
了する。必要があればALU≠0信号を反転すればAL
U=0信号が得られることは、この分野の技術者には明
かである。
ルの略図である。各セルのけた上げ出力(carry-out) C
n が次の最上位の隣接セルのけた上げ入力になるように
接続して、N個のセルで全体を構成する。最上位(N−
1番目)のセルのCn はCou t 信号で、Nビットより大
きい演算数の、更に上位のビットで動作する他の加算器
で用いる。
信号で、Nビットより大きい演算数の、更に下位のビッ
トで動作する追加の加算器からのCout 信号が入る。回
路40は、1ビット演算数An およびBn と、下位の1
ビット・セルからのけた上げ入力信号Cn-1 とによって
1ビット和Sn を計算する。最下位1ビット・セルの場
合はCn-1 はCinである。
生」信号と呼ぶGn と、「伝播」信号と呼ぶPn の、2
つの内部信号を発生する。伝播セル42は論理的な排他
的ORゲートで、その機能は式
能の定義により、An ,Bn =0,0または1,1であ
ればPn =0であり、An ,Bn =0,1または1,0
であればPn =1である。
その機能は式Gn =An ・Bn で表される。ただし、・
は論理積機能の符号である。論理積機能の定義により、
An,Bn =0,0または0,1または1,0であれば
Gn =0、またAn ,Bn =1,1であればGn =1で
ある。1ビットの和Sn は別の排他的ORゲート46か
らの出力で、
50の出力を入力とするORゲート48の出力と定義さ
れる。ANDゲート50の入力は、Pn とCn-1 であ
る。出力Cn は、Cn-1 とPn とGn からCn =Gn +
Pn ・Cn-1 で定義される。ただし、「+」は論理和を
表す符号である。言い換えると、発生信号(Gn )の発
生と、伝播信号(Pn )の発生とけた上げ入力
(Cn-1 )の存在との論理積と、の論理和でけた上げが
発生する。
態様の略図を示す。図4は入力A0からAN-1 と、B0
からBN-1 とを受けるNビットALU=0回路60を示
す。ただし、nは0からN−1までである。N個の各1
ビット・ゼロのセル62の入力は、An 、Bn 、Kn-1
である。ただし、nは0からN−1である。Kn は「キ
ル(kill)」信号で、以下に説明する。
ト・ゼロ信号Zn と、次の最上位(n+1)セルに入力
する「キル」信号Kn とを出力する。図4にNビットの
ANDゲート64で示す組合わせ回路は、n=0からN
−1までのZn が全て1になるとALU=0信号を1つ
出力する。
Nビットより少ないゲート網で動作する。これはディジ
タル論理回路設計の技術者には明かである。この構造の
利点は、組合わせ論理ゲート遅れの数段階以内でALU
=0信号を発生できることである。
1ゲート遅れを掛けた程度であるが、従来のALU=0
検出回路で発生する遅れの大きさは計算遅れであって、
これはALU=0の計算結果をデコードするのに必要な
論理ゲート遅れ(log2 N)に加えて、ほぼ1+lo
g2 Nから2Nの値に1ゲート遅れを掛けた値だけ変動
する。
は、もしあればALUの既存の伝播および発生回路を、
新しい1ビット・ゼロとキルと組合わせALU=0と共
に用いて、ALU内でALU=0信号を発生するのに用
いることができる。
れのPGKZ(伝播、発生、キル、ゼロ)回路を用いて
個別の装置で実現し、A0 からAN-1 とB0 からBN-1
とC inを受け、独立のALU=0回路を形成することが
できる。
回路を含んだ望ましい実施態様の回路70を高水準の略
図で示す。この回路70は、n=0からN−1に対する
入力An とBn とけた上げ入力信号Cinとを受け、それ
から生じるn=0からN−1に対するRn とALU=0
とを出力する。入力An とBn はPGKの部分72に入
力し、そこからn=0からN−1までに対する伝播信号
Pn 、発生信号Gn 、キル信号Kn を発生する。Pn 、
Gn 、Kn 信号は次のように定義される。
形で実現することができ、ディジタル回路設計の技術者
にはよく知られている。1ビット・ゼロのセル配列74
はPGK信号を受け、Pn およびKn-1 に基づいてゼロ
信号Zn を発生する。1ビット・ゼロの配列74の最下
位ビットでは、Kin(以下に説明する)はKn-1 であ
る。Zn 信号は式
ならばZn =0であり、Pn ,Kn-1 =0,1または
1,0であればZn =1である。1ビット・ゼロのセル
配列74はPGZ(伝播、発生、ゼロ)信号を通す。1
ビット・ゼロのANDトリー(tree)76はゼロ信号を受
け、n=0からN−1までに対して全てZn=1であれ
ばALU=0信号を1として出力する。
ることが望ましく、PG信号をそのまま通す。作図の便
宜上、PG信号は1ビット・ゼロのANDトリーを単に
通すように示しているが、これらの信号をANDトリー
76の中や近くを通す必要はない。
信号を受け、この技術でよく知られている方法でn=0
からN−1までに対する演算結果Rn を発生する。例え
ばこの加算器78は、ボスハートが米国特許番号4,8
15,019で説明しているけた上げ選択先取り加算器
であってよい。
ルけた上げ加算器(ripple carry adder)であってよく、
この場合排他的ORゲート46はCn-1 とPn からSn
を計算し、ORゲート48とANDゲート50はPn と
Gn からCn を計算する(nは0からN−1まで)。加
算器回路78は実際は算術/論理回路として動作し、P
GK発生装置72からPn およびGn を発生するのに用
いた方法に応じて加算、減算、論理演算の結果を発生し
てよい。
算器回路78の動作は実行中の演算には依存しない。望
ましい実施態様では、全ての演算特有の機能はPGK発
生装置72内で行われる。
は、下位の算術および論理回路からCin信号を受け、P
GK発生装置72と1ビット・ゼロのセル配列74でK
inとして用いる信号を反転するためのインバータ80を
備える。
のけた上げトリー(carry tree)76を示す。けた上げト
リー76のこの実施態様ではNを32ビットとしたが、
Nはどんな数でもよい。この実施態様のけた上げトリー
76は、N個の1ビット・ゼロ信号Zn からALU=0
信号を出す32ビットの論理積機能である。
ト90を1個と、8入力ANDゲート92を4個備え
る。この技術でよく知られているように、この8入力A
NDゲート92は、2個の4入力NANDゲート96と
その出力を受ける1個の2入力NORゲート94で形成
することができる。この分野の一般的技術を用いれば、
32ビットの論理積の機能は多くの回路で実現すること
ができる。
回路72の実施態様の一例と、共に用いる1ビット・ゼ
ロのセル74の実施態様の一例を部分的に示す。図7の
実施態様は、PGK発生回路72のn番目のビットと1
ビット・ゼロのセル配列74のn番目のビットに用いる
1ビットPGKZセル100である。
他的ORゲート102,104と、ANDゲート106
と、NORゲート108と、入力An 、Bn 、Kn-1 と
を備える。このPGKZセル100の出力はPn 、
Gn 、Kn 、Zn である。最下位ビット(すなわちn=
0)では、KinはKn-1 である。図に概略を示すよう
に、このセルの機能は次のように表される。
回路72の実施態様の一例と、共に用いる1ビット・ゼ
ロのセル74の実施態様の一例を部分的に示す。図8の
実施態様は、PGK発生回路72のn番目のビットと、
1ビット・ゼロのセル配列74のn番目のビットに用い
る1ビットPGKZセル110である。
112と、排他的NORゲート114と、第1および第
2NORゲート116,118と、第1および第2イン
バータ120,122とを備える。PGKZセル110
の入力はAn 、Bn 、Kn-1である。このPGKZセル
110の出力はPn 、Gn 、Kn 、Zn である。最下位
ビット(すなわちn=0)では、kinはKn-1 である。
図に概略を示すように、このセルの機能は次のように表
される。
発生回路72の実施態様の一例と、共に用いる1ビット
・ゼロのセル74の実施態様の一例を部分的に示す。図
9の実施態様は、PGK発生回路72のn番目のビット
と1ビット・ゼロのセル配列74のn番目のビットに用
いる1ビットPGKZセル130である。
132と、3入力ANDゲート134と、NANDゲー
ト136と、ORゲート138と、第1および第2イン
バータ140,142と、第1および第2および第3A
ND・OR・インバータ・ゲート144,146,14
8とを備える。各AND・OR・インバータ・ゲート
は、否定論理和機能150と1対の論理積機能152で
機能的に示している。PGKZセル130の入力は、A
n 、Bn 、Kn-1 および特殊ALU制御信号のC0、C
1、C2、C3、ARITHである。
n 、Kn 、Zn である。最下位ビット(すなわちn=
0)では、KinはKn-1 である。図に概略を示すよう
に、このセルの機能は次のように表される。
式と図9とをよく見ると、信号ARITHは算術演算と
論理演算のどちらかを選ぶ働きをしていることが分か
る。K n を検討すると、ARITHが0であればKn が
他の信号入力に関わらず1であることが分かる。
能の逆なので、Kが1ということは論理演算中はけた上
げが起こらないということである。この機能は、よく知
られている論理設計の機能の原則と一致する。
る加算器のALU=1回路の別の実施態様のPGK1セ
ル160の概略を示す。この別の実施態様のPGK1
は、伝播信号と、次の下位ビット(n−1番目)からけ
た上がり入力した発生信号とを用いて、1ビット1信号
Zn ’を決定(assert)する。
2排他的ORゲート162,164と、NORゲート1
66と、ANDゲート168とを備える。PGK1セル
160の入力はAn 、Bn 、Gn-1 である。このPGK
1セル160の出力はPn 、Gn 、Kn 、Zn ’であ
る。最下位ビット(すなわちn=0)では、Gn-1 はゼ
ロである。図に概略を示すように、このセルの機能は次
のように表される。
するSUBFIELD=0回路170を示すが、サブフ
ィールドの最下位ビットの和(Sn 、この場合n=4)
と、NANDゲート174の出力であるSUBALU=
0を2入力NORゲート172に受ける。NANDゲー
ト174はサブフィールドの残りの1ビット・ゼロ信号
(Zn 、ただしこの場合n=5,6,7)の否定的論理
積を行う。
フィールドの最下位ビット以外の全ての1ビット・ゼロ
のセルの出力の否定的論理積を行い、次にその結果とサ
ブフィールドのALU出力との否定論理和をとることに
よって実現できる。SUBFIELD=1は同様にして
実現することができる。
出するには、望ましい実施態様の回路をごくわずかに変
更するだけでよい。例えば、加算器のALU=0の実施
態様では、1ビット・ゼロ信号は
トがゼロであれば、n番目のビットのゼロ検出は、ビッ
ト(ビットn)の伝播出力と次の下位(n−1)ビット
のキル出力との排他的論理和で行われる。
ビット・ゼロ信号の補数はビットnで1を検出する。こ
の論理は式
し、
するのに用いることができる。
る。任意の所望の一定出力の検出器において、1ビット
・ゼロのセルに相当するものを作ってビットnで所要の
出力を検出するには、探索するパターンは全部で4つあ
る。これはnビットで可能な値が2つあり、ビットn−
1で可能な値が2つあるからである。4条件の式は次の
表に要約される。
はビットn=0とビットn−1=0のときの
2はビットn=0とビットn−1=1のときので
3はビットn=1とビットn−1=0のときの
4はビットn=1とビットn−1=1のときの
図7の部分と同じまたは同等であるが、異なるところは
1ビット・ゼロのセル配列274の実現方法が、入力P
n とGn-1 との排他的NORゲートを用いてその論理式
に対応している点である。図13の論理回路のPG|K
の部分72は図7の部分と同じまたは同等であるが、異
なるところは1ビット・ゼロのセル配列374の実現方
法が、排他的NORゲートを用いてその論理式に対応し
ている点である。
図7の部分と同じまたは同等であるが、異なるところは
1ビット・ゼロのセル配列474の実現方法が、入力P
n とGn-1 との排他的ORゲートを用いてその論理式に
対応している点である。
するには、フィールドの最下位ビット以外の全てのビッ
トが上記のセルのどれかであることが必要である。その
出力全ての論理積を実行し、更にこれとフィールドの最
下位ビットが必要な値を持つという条件とで論理積を実
行する。
検出器回路と同等であるが、異なるところは1ビット・
ゼロのセルを上の表の中のセルに置き換え、最下位ビッ
トはゼロではなくて1でよいという点である。
を示す。
に説明した。この発明の範囲は、上に説明したものとは
異なっていても、特許請求の範囲に含まれる実施態様は
含むものである。ここで含むというのは、この発明の範
囲を網羅したものではないという意味である。
て説明したが、この説明は制限的に解釈してはならな
い。図示の実施態様の各種の変形や組合わせや、この発
明の他の実施態様は、この説明を参照すればこの分野に
精通した人には明かである。
MOS、ECL、Bi−CMOS、BIPOLARおよ
びその他の多くの任意の論理回路を想定している。ここ
に想定した回路は、より大きな集積回路設計の一部とし
て含まれる場合もあるし、また単一の集積回路設計とし
て独立した場合もある。従って特許請求の範囲は、その
ような変形や実施態様を全て含むものである。
る。 (1) 算術または論理演算の結果の(n−1)番目の
ビットが論理的1であるときに、前記結果のn番目のビ
ットが論理的ゼロであるかどうかを、計算結果に依存せ
ずに検出する法であって、 a) 少なくとも2ビットの演算数長さを持つ第1演算
数Aを1ビット・セルのグループで受け、 b) 少なくとも2ビットの演算数長さを持つ第2演算
数Bを前記1ビット・セルのグループで受け、 c) 前記第1演算数An-1 の(n−1)番目のビット
からと、前記第2演算数Bn-1 の(n−1)番目のビッ
トから、発生信号Gn-1 を前記1ビット・セルのグルー
プの(n−1)番目のセルで計算し、 d) 前記発生信号Gn-1 を前記1ビット・セルのグル
ープのn番目のセルで受け、 e) 前記第1演算数An のn番目のビットからと、前
記第2演算数Bn のn番目のビットからと、前記Gn-1
から、1ビット・ゼロ信号Zn を前記1ビット・セルの
グループのn番目のセルで計算し、前記1ビット・ゼロ
信号は
らと、前記1ビット・セルのグループの(n−2)番目
のセルからのキル信号Kn-2 から、1ビット1信号Z
n-1 ’を前記1ビット・セルのグループの前記(n−
1)番目のセルで計算する段階を更に含み、前記1ビッ
ト1信号は
らと、前記1ビット・セルのグループの(n−2)番目
のセルからの発生信号Gn-2 から、1ビット1信号Z
n-1 ’を前記1ビット・セルのグループの前記(n−
1)番目のセルで計算する段階を更に含み、前記1ビッ
ト1信号は
−1)番目のビットが論理的ゼロであるときに、前記結
果のn番目のビットが論理的1であるかどうかを、計算
結果に依存せずに検出する方法であって、 a) 少なくとも2ビットの演算数長さを持つ第1演算
数Aを1ビット・セルのグループで受け、 b) 少なくとも2ビットの演算数長さを持つ第2演算
数Bを前記1ビット・セルのグループで受け、 c) 前記第1演算数An-1 の(n−1)番目のビット
からと、前記第2演算数 Bn-1 の(n−1)番目のビ
ットから、キル信号Kn-1 を前記1ビット・セルのグル
ープの(n−1)番目のセルで計算し、 d) 前記キル信号Kn-1 を前記1ビット・セルのグル
ープのn番目のセルで受け、 e) 前記第1演算数An のn番目のビットからと、前
記第2演算数Bn のn番目のビットからと、前記Kn-1
から、1ビット・ゼロ信号Zn ’を前記1ビット・ゼロ
のグループのn番目のセルで計算し、前記1ビット1信
号は
らと、前記1ビット・セルのグループの(n−2)番目
のセルからのキル信号Kn -2から、1ビット・ゼロ信号
Zn-1を前記1ビット・セルのグループの前記(n−
1)番目のセルで計算する段階を更に含み、前記1ビッ
ト・ゼロ信号は
ビット1信号の論理積を実行してALU=CONSTA
NT信号を発生する段階を更に含む、第2項または第5
項のいずれかに記載の方法。
らと、前記1ビット・セルのグループの(n−2)番目
のセルからの発生信号Gn-2 から、1ビット・ゼロ信号
Zn-1を前記1ビット・セルのグループの前記(n−
1)番目のセルで計算する段階を更に含み、前記1ビッ
ト1信号は
ビット1信号の論理積を実行してALU=CONSTA
NT信号を発生する段階を更に含む、第3項または第7
項のいずれかに記載の方法。
・セルのグループへのけた上げ入力の論理的反転であ
る、第4項記載の方法。
(n−1)番目のビットが論理的1であるときに、前記
結果のn番目のビットが論理的1であるかどうかを、計
算結果に依存せずに検出する方法であって、 a) 少なくとも2ビットの演算数長さを持つ第1演算
数Aを1ビット・セルのグループで受け、 b) 少なくとも2ビットの演算数長さを持つ第2演算
数Bを前記1ビット・セルのグループで受け、 c) 前記第1演算数An-1 の(n−1)番目のビット
からと、前記第2演算数 Bn-1 の(n−1)番目のビ
ットから、発生信号Gn-1 を前記1ビット・セルのグル
ープの(n−1)番目のセルで計算し、 d) 前記発生信号Gn-1 を前記1ビット・セルのグル
ープのn番目のセルで受け、 e) 前記第1演算数An のn番目のビットからと、前
記第2演算数Bn のn番目のビットからと、前記Gn-1
から、1ビット1信号Zn ’を前記1ビット・セルのグ
ループのn番目のセルで計算し、前記1ビット1信号は
からと、前記1ビット・セルのグループの(n−2)番
目のセルからのキル信号Kn-2 から、1ビット1信号Z
n-1 ’を前記1ビット・セルのグループの前記(n−
1)番目のセルで計算する段階を更に含み、前記1ビッ
ト1信号は
記1ビット1信号Zn-1 ’の論理積を実行してALU=
CONSTANT信号を発生する段階を更に含む、第1
1項記載の方法。
からと、前記1ビット・セルのグループの(n−2)番
目のセルからの発生信号Gn-2 から、1ビット1信号Z
n-1 ’を前記1ビット・セルのグループの前記(n−
1)番目のセルで計算する段階を更に含み、前記1ビッ
ト1信号は
記1ビット1信号Zn-1 ’の論理積を実行してALU=
CONSTANT信号を発生する段階を更に含む、第1
3項記載の方法。
ト・セルのグループへのけた上げ入力である、第4項記
載の方法。
は、Nビットの長さの第1演算数A0− AN-1 を受け
る、第1項、第4項、第10項のいずれかに記載の方
法。
は、Nビットの長さの第2演算数B0− BN-1 を受け
る、第1項、第4項、第10項のいずれかに記載の方
法。
果のサブフィールドR0 −RN-1 の選択された条件を検
出する方法であって、 a) 少なくとも2ビットの演算数長さを持つ第1演算
数Aを1ビット・セルのグループで受け、 b) 少なくとも2ビットの演算数長さを持つ第2演算
数Bを前記1ビット・セルのグループで受け、 c) 第1信号Xn-1 を前記1ビット・セルのグループ
の1つで受け、 d) 前記第1演算数An のn番目のビットと、前記第
2演算数Bn のn番目のビットから、前記An およびB
n の関数である第2信号Xn を計算し、 e) 前記第2信号Xn を前記1ビット・セルのグルー
プの別の1つで受け、 f) 前記An と前記Bn と前記Xn-1 から、第1の1
ビット結果信号Yn を前記1ビット・セルのグループの
前記1つで計算し、 g) 前記第1演算数An+1 の(n+1)番目のビット
からと、前記第2演算数 Bn+1 の(n+1)番目のビ
ットからと、前記Xn から、第2の1ビット結果信号
Yn+1 を前記1ビット・セルのグループの前記別の1つ
で計算し、 h) 前記第1の1ビット結果信号Yn を第1の組合わ
せ回路で受け、 i) 前記第2の1ビット結果信号Yn+1 を前記第1の
組合わせ回路で受け、 j) 前記第1の1ビット結果信号Yn と前記第2の1
ビット結果信号Yn+1からSUBALU=0信号を前記
第1の組合わせ回路で計算し、 k) 前記SUBALU=0信号を第2の組合わせ論理
回路で受け、 l) サブフィールドの最下位ビットの結果Rn-1 を前
記第2の組合わせ論理回路で受け、 m) 前記第1の1ビット結果信号Yn と前記第2の1
ビット結果信号Yn+1からSUBFIELD=CONS
TANT信号を前記第2の組合わせ回路で計算する、段
階を含む方法。
出回路(60)について説明する。前記回路は、第1演
算数Aと第2演算数BとCinを受け、1組の1ビット・
ゼロ信号Zを発生する1組の1ビット・ゼロのセル(6
2)を備える。組み合わせ回路(64)が前記1ビット
・ゼロ信号の組を受け、前記1ビット・ゼロ信号の既知
の関数である選択された出力を出す。望ましい実施態様
では、組合わせ回路(64)は論理積機能であって、全
ての前記1ビット・ゼロ信号が1になる条件を検出す
る。望ましい各種の実施態様において、前記1ビット・
ゼロ信号は加算、減算、論理演算などの演算の算術ゼロ
条件を検出する。その他の装置、システム、方法も開示
する。
よび発生回路の部分的略図。
器の高水準略図。
ロのセルの略図。
ロのセルの略図。
LUに含む1ビット・ゼロのセルの略図。
の略図。
の1ビット・ゼロのセルの略図。
の1ビット・ゼロのセルの略図。
の1ビット・ゼロのセルの略図。異なる図の対応する数
字および符号は、別に説明のない限り対応する部分を指
す。
Claims (1)
- 【請求項1】 算術または論理演算の結果の(n−1)
番目のビットが論理的1であるときに、前記結果のn番
目のビットが論理的ゼロであるかどうかを、計算結果に
依存せずに検出する法であって、 a) 少なくとも2ビットの演算数(operand) 長さを持
つ第1演算数Aを1ビット・セルのグループで受け、 b) 少なくとも2ビットの演算数長さを持つ第2演算
数Bを前記1ビット・セルのグループで受け、 c) 前記第1演算数An-1 の(n−1)番目のビット
からと、前記第2演算数Bn-1 の(n−1)番目のビッ
トから、発生信号Gn-1 を前記1ビット・セルのグルー
プの(n−1)番目のセルで計算し、 d) 前記発生信号Gn-1 を前記1ビット・セルのグル
ープのn番目のセルで受け、 e) 前記第1演算数An のn番目のビットからと、前
記第2演算数Bn のn番目のビットからと、前記Gn-1
から、1ビット・ゼロ信号Zn を前記1ビット・セルの
グループのn番目のセルで計算し、前記1ビット・ゼロ
信号は 【数1】 で定義される、段階を含む方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/922,926 US5270955A (en) | 1992-07-31 | 1992-07-31 | Method of detecting arithmetic or logical computation result |
US922926 | 1992-07-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06348454A true JPH06348454A (ja) | 1994-12-22 |
JP3560623B2 JP3560623B2 (ja) | 2004-09-02 |
Family
ID=25447805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19059893A Expired - Fee Related JP3560623B2 (ja) | 1992-07-31 | 1993-07-30 | 算術または論理演算の計算結果の検出方法 |
Country Status (4)
Country | Link |
---|---|
US (3) | US5270955A (ja) |
EP (1) | EP0585619B1 (ja) |
JP (1) | JP3560623B2 (ja) |
DE (1) | DE69327996T2 (ja) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5469377A (en) * | 1992-08-18 | 1995-11-21 | Nec Corporation | Floating point computing device for simplifying procedures accompanying addition or subtraction by detecting whether all of the bits of the digits of the mantissa are 0 or 1 |
US5598514A (en) * | 1993-08-09 | 1997-01-28 | C-Cube Microsystems | Structure and method for a multistandard video encoder/decoder |
US5487025A (en) * | 1993-11-15 | 1996-01-23 | Intergraph Corporation | Carry chain adder using regenerative push-pull differential logic |
US5367477A (en) * | 1993-11-29 | 1994-11-22 | Motorola, Inc. | Method and apparatus for performing parallel zero detection in a data processing system |
GB9404377D0 (en) * | 1994-03-07 | 1994-04-20 | Texas Instruments Ltd | Improvements in or relating to a comparator scheme |
US5638312A (en) * | 1995-03-03 | 1997-06-10 | Hal Computer Systems, Inc. | Method and apparatus for generating a zero bit status flag in a microprocessor |
US5910909A (en) * | 1995-08-28 | 1999-06-08 | C-Cube Microsystems, Inc. | Non-linear digital filters for interlaced video signals and method thereof |
US5978826A (en) * | 1995-12-01 | 1999-11-02 | Lucent Techologies Inc. | Adder with even/odd 1-bit adder cells |
US5798958A (en) * | 1996-06-05 | 1998-08-25 | Samsung Electronics Co., Ltd. | Zero detect for binary sum |
US5875121A (en) * | 1996-08-06 | 1999-02-23 | Hewlett-Packard Company | Register selection system and method |
US6018757A (en) * | 1996-08-08 | 2000-01-25 | Samsung Electronics Company, Ltd. | Zero detect for binary difference |
US6161164A (en) * | 1996-09-16 | 2000-12-12 | International Business Machines Corp. | Content addressable memory accessed by the sum of two operands |
US6114945A (en) * | 1997-05-08 | 2000-09-05 | Texas Instruments Incorporated | Apparatus and method for programmable fast comparison of a result of a logic operation with an selected result |
US5975749A (en) * | 1997-07-11 | 1999-11-02 | International Business Machines Corporation | Zero and one detection chain for a carry select adder |
US5978825A (en) * | 1997-11-14 | 1999-11-02 | Crystal Semiconductor Corp. | Zero detection circuitry and methods |
US6272514B1 (en) * | 1997-11-18 | 2001-08-07 | Intrinsity, Inc. | Method and apparatus for interruption of carry propagation on partition boundaries |
US6301600B1 (en) * | 1997-11-18 | 2001-10-09 | Intrinsity, Inc. | Method and apparatus for dynamic partitionable saturating adder/subtractor |
US6269387B1 (en) * | 1997-12-11 | 2001-07-31 | Intrinsity, Inc. | Method and apparatus for 3-stage 32-bit adder/subtractor |
US6088763A (en) * | 1998-03-16 | 2000-07-11 | International Business Machines Corporation | Method and apparatus for translating an effective address to a real address within a cache memory |
FR2776407B1 (fr) * | 1998-03-20 | 2001-06-08 | Gemplus Card Int | Systeme et procede pour realiser des fonctions particulieres dans des etiquettes sans contact |
US6065969A (en) | 1998-08-10 | 2000-05-23 | Mattel, Inc. | Computer game for designing and printing nail coverings |
US6963965B1 (en) | 1999-11-30 | 2005-11-08 | Texas Instruments Incorporated | Instruction-programmable processor with instruction loop cache |
US7231414B1 (en) * | 2000-02-09 | 2007-06-12 | Hewlett-Packard Development Company, L.P. | Apparatus and method for performing addition of PKG recoded numbers |
US6539413B1 (en) * | 2000-03-15 | 2003-03-25 | Agere Systems Inc. | Prefix tree adder with efficient sum generation |
US7028069B1 (en) * | 2000-05-01 | 2006-04-11 | Raza Microelectronics Inc. | Dynamic circuit using exclusive states |
US6598066B1 (en) * | 2000-05-23 | 2003-07-22 | Sun Microsystems, Inc. | Fast carry-out generation |
US6912560B2 (en) * | 2000-12-08 | 2005-06-28 | Agere Systems, Inc. | Adder with improved overflow flag generation |
US7290027B2 (en) * | 2002-01-30 | 2007-10-30 | International Business Machines Corporation | Circuit suitable for use in a carry lookahead adder |
US7739324B1 (en) | 2006-03-22 | 2010-06-15 | Cadence Design Systems, Inc. | Timing driven synthesis of sum-of-product functional blocks |
US8707225B1 (en) * | 2006-04-07 | 2014-04-22 | Cadence Design Systems, Inc. | Synthesis of area-efficient subtractor and divider functional blocks |
US8015230B2 (en) * | 2007-06-08 | 2011-09-06 | Apple Inc. | Fast modular zero sum and ones sum determination |
RU2445680C1 (ru) * | 2010-11-03 | 2012-03-20 | Лев Петрович Петренко | ФУНКЦИОНАЛЬНАЯ СТРУКТУРА СКВОЗНОГО ПЕРЕНОСА f1(←←)i+1 И f2(←←)i УСЛОВНО "i+1" И УСЛОВНО "i" РАЗРЯДОВ "k" ГРУППЫ АРГУМЕНТОВ МНОЖИМОГО [ni]f(2n) ПРЕДВАРИТЕЛЬНОГО СУММАТОРА fΣ([ni]&[ni,0]) ПАРАЛЛЕЛЬНО-ПОСЛЕДОВАТЕЛЬНОГО УМНОЖИТЕЛЯ fΣ(Σ) (ВАРИАНТЫ) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3983382A (en) * | 1975-06-02 | 1976-09-28 | International Business Machines Corporation | Adder with fast detection of sum equal to zeroes or radix minus one |
US4764887A (en) * | 1985-08-02 | 1988-08-16 | Advanced Micro Devices, Inc. | Carry-bypass arithmetic logic unit |
JP2610417B2 (ja) * | 1985-12-23 | 1997-05-14 | 日本テキサス・インスツルメンツ株式会社 | アドレス信号生成方法及びその回路 |
US4815019A (en) * | 1987-02-26 | 1989-03-21 | Texas Instruments Incorporated | Fast ALU equals zero circuit |
US4924422A (en) * | 1988-02-17 | 1990-05-08 | International Business Machines Corporation | Method and apparatus for modified carry-save determination of arithmetic/logic zero results |
JPH01277931A (ja) * | 1988-04-29 | 1989-11-08 | Nec Ic Microcomput Syst Ltd | 零検出回路 |
US4926369A (en) * | 1988-10-07 | 1990-05-15 | International Business Machines Corporation | Leading 0/1 anticipator (LZA) |
US5095458A (en) * | 1990-04-02 | 1992-03-10 | Advanced Micro Devices, Inc. | Radix 4 carry lookahead tree and redundant cell therefor |
-
1992
- 1992-07-31 US US07/922,926 patent/US5270955A/en not_active Expired - Lifetime
-
1993
- 1993-07-30 EP EP93112254A patent/EP0585619B1/en not_active Expired - Lifetime
- 1993-07-30 DE DE69327996T patent/DE69327996T2/de not_active Expired - Fee Related
- 1993-07-30 JP JP19059893A patent/JP3560623B2/ja not_active Expired - Fee Related
- 1993-12-13 US US08/166,370 patent/US5508950A/en not_active Expired - Lifetime
-
1995
- 1995-06-07 US US08/478,145 patent/US5600583A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5270955A (en) | 1993-12-14 |
US5600583A (en) | 1997-02-04 |
EP0585619A3 (en) | 1994-08-10 |
US5508950A (en) | 1996-04-16 |
JP3560623B2 (ja) | 2004-09-02 |
EP0585619A2 (en) | 1994-03-09 |
DE69327996T2 (de) | 2000-10-26 |
EP0585619B1 (en) | 2000-03-08 |
DE69327996D1 (de) | 2000-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH06348454A (ja) | 算術または論理演算の計算結果の検出方法 | |
Ebrahimi-Azandaryani et al. | Block-based carry speculative approximate adder for energy-efficient applications | |
Parmar et al. | Design of high speed hybrid carry select adder | |
US5862065A (en) | Method and circuit for fast generation of zero flag condition code in a microprocessor-based computer | |
JP2002108606A (ja) | スティッキービット生成回路及び乗算器 | |
US9146707B2 (en) | Generating a fast 3x multiplicand term for radix-8 booth multiplication | |
JP3813127B2 (ja) | 3つのゲートのクリティカル・パスを有するワイド加算器 | |
US4618956A (en) | Method of operating enhanced alu test hardware | |
Bindal | Fundamentals of computer architecture and design | |
US8429213B2 (en) | Method of forcing 1's and inverting sum in an adder without incurring timing delay | |
US7139789B2 (en) | Adder increment circuit | |
JP3537378B2 (ja) | 加算器および集積回路 | |
EP1008033B1 (en) | Digital adder circuit | |
Lutz et al. | The half-adder form and early branch condition resolution | |
US7069290B2 (en) | Power efficient booth recoded multiplier and method of multiplication | |
US7206802B2 (en) | Hybrid carry look ahead/carry select adder including carry logic generating complementary hot carry signals, and method for producing the carry logic | |
JPH09114641A (ja) | 最上位デジットを決定するための装置と方法 | |
Joshi et al. | NCL Implementation of Dual-Rail 2 s Complement 8× 8 Booth2 Multiplier using Static and Semi-Static Primitives | |
US6470373B1 (en) | Sum interval detector | |
JPH08123668A (ja) | 固定小数点除算装置および除算方法 | |
US6631393B1 (en) | Method and apparatus for speculative addition using a limited carry | |
US20060242219A1 (en) | Asynchronous multiplier | |
US6934733B1 (en) | Optimization of adder based circuit architecture | |
He et al. | Multiply-add fused float point unit with on-fly denormalized number processing | |
Vazquez et al. | A Sum Error Detection Scheme for Decimal Arithmetic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20031209 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20031212 |
|
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: 20040511 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040526 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090604 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090604 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100604 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100604 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110604 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120604 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |