JPH0319568B2 - - Google Patents

Info

Publication number
JPH0319568B2
JPH0319568B2 JP59169319A JP16931984A JPH0319568B2 JP H0319568 B2 JPH0319568 B2 JP H0319568B2 JP 59169319 A JP59169319 A JP 59169319A JP 16931984 A JP16931984 A JP 16931984A JP H0319568 B2 JPH0319568 B2 JP H0319568B2
Authority
JP
Japan
Prior art keywords
adder
zero
output
carry
input
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 - Lifetime
Application number
JP59169319A
Other languages
English (en)
Other versions
JPS6148038A (ja
Inventor
Suketaka Ishikawa
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP59169319A priority Critical patent/JPS6148038A/ja
Publication of JPS6148038A publication Critical patent/JPS6148038A/ja
Publication of JPH0319568B2 publication Critical patent/JPH0319568B2/ja
Granted legal-status Critical Current

Links

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

Landscapes

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は2入力加算器における高速零検出方式
に関する。
〔発明の背景〕
従来、加算器の演算結果が零であるか否かを高
速に検出する方法に、加算器の中間結果から零検
出信号を作成する方式がある(例えば特開昭55−
87243号)。これは、加算結果が零であることは、
加数および被加数が共に零であることを検出する
ことにより得、減算結果が零であることは、各ビ
ツトのすべてにおいて減数と被減数が等しくなる
ことを検出することにより得るという方式であ
り、加減算結果の最終出力が確定する時点とほぼ
同時に零検出ができるというものである。
しかしながら、上記従来方式には次のような欠
点がある。例えば、(+1)+(−1)=0を4ビツ
トの加算器で行う場合、第2図に示すように、加
算器の先頭ビツトからキヤリイが出て加算器出力
が零になる。このような場合、上記従来方式で
は、演算を加算とみなせば、加数、被加数が共に
零でないので零を検出することはできないことに
なる。このため、零を検出しようとすれば、加数
(−1)を減数(+1)とみなして、(+1)−(+
1)=0とすることが必要になる。加数(−1)
を減数(+1)にすることは、加数(−1)の2
の補数をとる動作が必要で、この動作の後でない
と零を検出する信号を作成できないことになる。
一般的に2の補数をとる動作は、データを反転
し、最下位ビツトに1を加えることで実現され
る。最下位ビツトからのキヤリイは、最上位ビツ
トまで伝搬することがあり、この場合のキヤリ
イ・ルツクアヘツド回路の伝搬遅延は、2入力加
算器のキヤリイ・ルツクアヘツド回路ほどはゲー
ト数を費やさないが、ゲート段数的には、ほぼ同
等もしくは1〜2段少なくなる程度であるため、
この補数が得られるまでの遅延時間は、2入力加
算器の出力よりもゲート段数で高々1〜2段早め
の結果が得られる程度である。
このように、上記従来方式は、減算時の零検出
が遅く、加算器出力とほぼ同時にしか得られな
い。
ところで、加算器の零検出の高速化は、高速処
理を実現するうえでは益々重要になつてきてい
る。例えば、ある命令を実行し、その結果の零検
出結果でコンデイシヨン・コードを作成し、その
コンデイシヨン・コードに基づいて次の分岐命令
が分岐するか否かを決定するような、一般的な命
令の並びのケースにおいて、このコンデイシヨ
ン・コードをできうる限り早い時点に決定できる
ことが、次の分岐命令の分岐判定の高速化を実現
することになる。このため、加算器の零検出には
可能な限り高速化が要求される。このように、加
算器出力が確定する以前に加算器の零検出が要求
されるような高速処理には、前述の従来方式は適
用できない。
〔発明の目的〕
本発明の目的は、加算器の出力が確定する時点
よりも早い時点で加算器の零検出を行える2進加
算器の零検出方式を提供することにある。
〔発明の概要〕
この発明の特徴とすることは、2入力2進加算
器において、2つの入力データが互いに1の補数
の関係にあることを検出する第1の検出手段と、
2つの入力データが互いに2の補数の関係にある
かまたは共に零であることを検出する第2の検出
手段とを設け、加算器が加動作なのか減算動作で
あるのかを意識することなく、イニシヤル・キヤ
リイがあるときには第1の検出手段、イニシヤ
ル・キヤリイがないときには第2の検出手段によ
つて、加算器出力が零になるか否かを検出するよ
うにしたものである。
〔発明の実施例〕
第1図は本発明の一実示例のブロツク図であ
る。第1図において、2入力2進加算器2は、そ
れぞれの入力に入力制御部1−a,1−bを有
し、さらに一方の入力最下位ビツトへはイニシヤ
ル・キヤリイが与えられるようになつている。こ
のイニシヤル・キヤリイは、イニシヤル・キヤリ
イ制御線14と、2入力2進加算器2の最上位ビ
ツトからのキヤリイを保持しているレジスタ3
(CAR)の出力とがオアゲート6でオアされてい
る。このオアゲート6のオア出力は零検出回路
(A)4の出力とアンドゲート7でアンドされ、
オアゲート6の反転出力は零検出回路(B)5の
出力とアンドゲート8でアンドゲートされてい
る。零検出回路(A)4は、入力制御部1−aお
よび1−bの出力が互いに1の補数関係にあるこ
とを検出する回路である。零検出回路(B)は、
入力制御部1−aおよび1−bの出力が互いに2
の補数関係にあることを検出する回路である。ア
ンドゲート7および8の出力はオアゲート9でオ
アされ零検出を得る。
以下、第1図の動作を説明する。加算動作にお
いては、入力制御部1−aおよび1−bは入力デ
ータ線10,11の入力データAおよびBをその
まま2入力2進加算器(以下、単に加算器とい
う)2へ与え、減算動作においては、入力制御部
1−aは入力データAをそのまま加算器2へ与
え、入力制御部1−bは入力データBを反転(1
の補数)して与える共にイニシヤル・キヤリイを
加算器2の最下位ビツトへ与える。加算器2は入
力制御部1−aと1−bの出力、およびオアゲー
ト6のオア出力の加算を行い、加算結果を出力デ
ータ線12に出力し、最上位ビツトからのキヤリ
イはCAR3に与える。
このように、加算器2は常に加算のみを行い、
加算/減算動作の制御は、入力制御部1−a,1
−bおよびイニシヤル・キヤリイによつてなされ
る。しかし、入力データの加算動作であつても、
入力データ巾が加算器2のデータ巾よりも大きい
場合、例えば、8バイト巾の加算器で16バイトの
入力データの加算を行うときには、下位8バイト
の加算時に生じた加算器2の最上位ビツトからの
キヤリイ(CAR出力)を上位8バイト加算時の
イニシヤル・キヤリイとして与えるため、加算動
作であつてもイニシヤル・キヤリイが必要な場合
もある。
同様に減算においても、下位8バイトの減算を
したとき、加算器2の最下位ビツトからのキヤリ
イ(CAR出力)がないと、続く上位8バイトの
減算は、入力データBの反転データを入力データ
Aとイニシヤル・キヤリイなしで加算することに
なるため、減算動作であつてもイニシヤル・キヤ
リイがない場合もある。
このため、加算器2の出力が零になるか否かを
検出するには、入力データの加算/減算という動
作の種類によつて検出方法を区別するのではな
く、イニシヤル・キヤリイがあるかないかによつ
て検出方法を分ける必要が生じることになる。
イニシヤル・キヤリイがある場合は、入力制御
部1−a,1−bの出力が互いに1の補数の関係
になることを検出する零検出回路(A)4の出力
がアンド・ゲート7でアンドされて、オアゲート
9を通し零検出線13に加算器2の出力が零にな
るか否かが検出される。例えば第3図aの例の場
合、入力制御部1−aの出力(10101010)と1−
bの出力(01010101)とは互いに1の補数の関係
にあり、これらにイニシヤル・キヤリイを加える
と、加算器2の出力は零になる。したがつて、イ
ニシヤル・キヤリイがあるときには、入力制御部
1−aと1−bの出力が1の補数の関係にあるこ
とを検出すれば、加算器2の出力が零になること
を検出できる。
イニシヤル・キヤリイがない場合、入力制御部
1−a,1−bの出力が互いに2の補数の関係に
なることを検出する零検出回路(B)5の出力が
アンド・ゲート8でアンドされて、オアゲート9
を通し零検出線13に加算器2の出力が零になる
か否かが検出される。例えば第3図bの場合、入
力制御部1−aの出力(10101010)と1−bの出
力(01010110)とは互いに2の補数関係にあり、
これらにイニシヤル・キヤリイの値0を加える
と、加算器2の出力は零になる。したがつて、イ
ニシヤル・キヤリイがないときには、入力制御部
1−aと1−bの出力が互いに2の補数の関係に
あることを検出すれば、加算器2の出力が零にな
ることを検出できる。
入力制御部1−a,1−bの出力が互いに1の
補数であることを検出する零検出回路(A)4
は、データ巾8バイト(ビツト巾64ビツト)と
し、入力制御部1−aの出力をa0,a1,…a63
入力制御部1−bの出力をb0,…b63とした場合、 Aout=(a0b0)・(a1b1)・(a2b2)・…・
(a63b63) 但し、aibiはaiとbiの排他的論理和、(aib)・
(ajbj)は(aibi)と(ajbj)の論理積 の論理式を満足する回路で実現できる。同様に、
入力制御部1−a,1−bが互いに2の補数であ
ることを検出する零検出回路(B)5は、 Bout=(00)・(11)・(22)・…

(a63+b63) +(a0+b0)・(11)・(22)・…・
(a63+b63) +(a0b0)・(a1+b1)・(22)・…・
(a63+b63) +(a0b0)・(a1b1)・(a2+b2)・(3
b3)・…・(6363) 〓 +(a0b0)・(a1b1)・(a2b2・…・(a62
b62)・(a63・b63) 但し、(ii)はaiとbiの否定論理和(aj・aj
はajとbjの論理積 の論理式を満足する回路で実現できる。
2入力2進加算器2を8バイト巾の加算器とし
た場合、零検出回路4および5は3入力および6
入力のオア/ノアの両出力を得る一般的なECL
ゲートで作成すると、ゲート段数が4〜5段とな
り、キヤリイ・ルツクアヘツド回路で作成される
キヤリイと同じ段数となり、その遅延時間もほぼ
同じになる。したがつて、加算器2の零検出がキ
ヤリイと同じ時点で検出されることになる。加算
器2の最終出力はこのキヤリイから1〜2段後に
得られるため、加算器の最終出力よりも早い時点
で零か否かを検出することができる。
〔発明の効果〕
本発明によれば、加算器の出力が確定する時点
よりも早い時点で加算器の出力が零になるか否か
を検出できるため、加算器の動作が終了する以前
に次のステツプの動作を起動することができ、よ
り高速な処理を行うことが可能になり、計算機の
処理性能の向上がもたらされる。
【図面の簡単な説明】
第1図は本発明の一実施例の構成図、第2図は
加算器の先頭ビツトからキヤリイが出て、加算器
出力が零になる例を示す図、第3図a及びbは第
1図による零検出の一例を示す図である。 1−a,1−b…入力制御部、2…2入力2進
加算器、3…キヤリイ保持レジスタ、4,5…零
検出回路。

Claims (1)

    【特許請求の範囲】
  1. 1 2入力加算器の演算結果が零であるか否かを
    検出する方式において、前記加算器の2つの入力
    データが互いに1の補数の関係にあることを検出
    する第1の検出手段と、2つの入力データが互い
    に2の補数の関係にあることを検出する第2の検
    出手段とを設け、前記加算器の演算においてイニ
    シヤル・キヤリイがあるときには前記第1の検出
    手段により、前記イニシヤル・キヤリイがないと
    きには前記第2の検出手段によつて、それぞれ演
    算結果が零であるか否かを検出することを特徴と
    する加算器の零検出方式。
JP59169319A 1984-08-15 1984-08-15 加算器の零検出方式 Granted JPS6148038A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59169319A JPS6148038A (ja) 1984-08-15 1984-08-15 加算器の零検出方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59169319A JPS6148038A (ja) 1984-08-15 1984-08-15 加算器の零検出方式

Publications (2)

Publication Number Publication Date
JPS6148038A JPS6148038A (ja) 1986-03-08
JPH0319568B2 true JPH0319568B2 (ja) 1991-03-15

Family

ID=15884334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59169319A Granted JPS6148038A (ja) 1984-08-15 1984-08-15 加算器の零検出方式

Country Status (1)

Country Link
JP (1) JPS6148038A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0478731A4 (en) * 1990-04-04 1993-09-22 International Business Machines Corporation Early scism alu status determination apparatus
US5586069A (en) * 1994-09-30 1996-12-17 Vlsi Technology, Inc. Arithmetic logic unit with zero sum prediction
GB2354091B (en) 1999-09-09 2003-08-27 Advanced Risc Mach Ltd Zero result prediction

Also Published As

Publication number Publication date
JPS6148038A (ja) 1986-03-08

Similar Documents

Publication Publication Date Title
US5862065A (en) Method and circuit for fast generation of zero flag condition code in a microprocessor-based computer
US5508950A (en) Circuit and method for detecting if a sum of two multibit numbers equals a third multibit constant number prior to availability of the sum
JP3076046B2 (ja) 例外検出回路
JPH0479013B2 (ja)
US4761760A (en) Digital adder-subtracter with tentative result correction circuit
US5136536A (en) Floating-point ALU with parallel paths
JPH01211119A (ja) 条件コードの予測装置
JPH0544046B2 (ja)
CA1286779C (en) Apparatus and method for an extended arithmetic logic unit for expediting selected floating point operations
US5506800A (en) Self-checking complementary adder unit
US6061707A (en) Method and apparatus for generating an end-around carry in a floating-point pipeline within a computer system
JPS6227412B2 (ja)
JPH0319568B2 (ja)
JPH0511980A (ja) 桁あふれ検出方式とその回路
US20060066460A1 (en) Arithmetic unit
JPH0362124A (ja) 加算回路
US7444366B2 (en) Faster shift value calculation using modified carry-lookahead adder
JPH0479014B2 (ja)
JP3370688B2 (ja) 加算器のフラグ生成回路
JP2532083B2 (ja) フラグ発生回路
JPH0367328A (ja) 浮動小数点演算装置
JP2506891B2 (ja) 浮動小数点演算装置
JPH0528407B2 (ja)
JP3298119B2 (ja) 零フラグ生成加減算器
JPH08123662A (ja) 加算方法および加算器

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term