Article View: sci.electronics
Article #14536Re: Logic Addition
From: John Haddy
Date: Sun, 15 Nov 1992 23:47
Date: Sun, 15 Nov 1992 23:47
60 lines
2718 bytes
2718 bytes
In article <#-t1l#n@rpi.edu>, wilusd@cary115.its.rpi.edu (David John Wilusz) writes:
|>
|> Perhaps sci.electronics is not the place for this, but where is?
|> Could someone give me the configuration of gates that allows binary
|> numbers to be correctly added?
|> Thanks for any help...
|>
|> Dave
|>
The best way for many applications is to use an ALU chip, such as a 74381; or a
27283 full adder.
Otherwise, an adder may be implemented in a bit slice fashion, with a series of
1 bit adders strung together. This leads to problems with ripple carry times if
your application requires high speed, so you'll have to design an N bit full
adder from the ground up if your timing is critical, or use a look-ahead carry
generator (also standard TTL).
However, assuming that the bit-slice implementation fills your needs:
Carry Carry
In | Inp A | Inp B || Out | Output
Ci | A | B || |
=========================================
0 | 0 | 0 || 0 | 0
0 | 0 | 1 || 0 | 1
0 | 1 | 0 || 0 | 1
0 | 1 | 1 || 1 | 0
1 | 0 | 0 || 0 | 1
1 | 0 | 1 || 1 | 0
1 | 1 | 0 || 1 | 0
1 | 1 | 1 || 1 | 1
The carry out from bit N feeds to the adder for bit N+1. Obviously, in bit
position 0, there is no carry in, so the adder can be reduced to what is known as
a half adder.
Half Adder: Out = A xor B
Carry = A and B
Full Adder: Out = (A xor B) xor Ci
Carry = (A and B) or (A and Ci) or (B and Ci)
Gate level implementation depends on what you have around. Refer to Horowitz and
Hill for examples of implementations of the XOR function.
JohnH
----------------------------------------------------------------------------
| _ |_ _ |_| _ _| _| Electronics Department
|_| (_) | | | | | | (_| (_| (_| \/ School of MPCE
---------------------------------/- Macquarie University
Sydney, AUSTRALIA 2109
Email: johnh@mpce.mq.edu.au, Ph: +61 2 805 8959, Fax: +61 2 805 8983
----------------------------------------------------------------------------
Technical Details
Message-ID:
<1992Nov15.234707.9734@mailhost.ocs.mq.edu.au>Path:
arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!mel.dit.csiro.au!mineng.dmpe.CSIRO.AU!dmssyd.syd.dms.CSIRO.AU!metro!sunb!macadam!johnhReferences:
<#-t1l#n@rpi.edu>Show Full Headers
Complete Article Headers
Newsgroups: sci.electronics Path: arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!mel.dit.csiro.au!mineng.dmpe.CSIRO.AU!dmssyd.syd.dms.CSIRO.AU!metro!sunb!macadam!johnh From: johnh@macadam.mpce.mq.edu.au (John Haddy) Subject: Re: Logic Addition Message-ID: <1992Nov15.234707.9734@mailhost.ocs.mq.edu.au> Sender: johnh@macadam (John Haddy) Nntp-Posting-Host: macadam.mpce.mq.edu.au Organization: Macquarie University, Sydney References: <#-t1l#n@rpi.edu> Date: Sun, 15 Nov 1992 23:47:07 GMT Lines: 60