2.2 Hierarchical Temporal Memory Theory
2.2.3 Core Principles
2.2.3.2 Sparse Distributed Representations
CIT344 INTRODUCTION TO COMPUTER DESIGN
UNIT 2 TYPICAL COMBINATIONAL LOGIC CIRCUIT I
3.0 Main Content
3.1 Typical Combinational Logic Circuit I 3.1.1 Adders
We have two types of adder: Half-adder and Full-adder
3.1.1.1 Half-adder
A single bit binary adder circuit basically adds two bits. The output of the single bit adder circuit generates a sum bit. An adder circuit that only has two bit input representing the two single bit numbers A and B and does not have the carry bit input from the least significant digit is regarded as a half-adder. The block diagram below represents a half- adder.
Fig. 1: Block Representation of Half-Adder
A half-adder can be fully described in terms of its function table and the circuit implementation.
3.1.1.2 Half-Adder Function Table
The half-adder has a 2-bit input and a 2-bit output. The function table of the half-adder has two input columns representing the two single bit numbers A and B. The function table also has two output columns representing the sum bit and carry out bit.
CIT344 INTRODUCTION TO COMPUTER DESIGN
Fig. 2: Half-Adder Function Table and Circuit Implementation
3.1.1.3 Half-adder Sum & Carry Out Boolean Expression
The sum and carry out expressions of the half-adder can be determined from the function table. The half-adder sum and carry out outputs are defined by the expressions:Sum = AB + AB = A B Carry out = AB
3.1.1.4 Full-Adder
An adder circuit which has three inputs, one representing single bit number A, the other representing the single bit number B and the third bit represents the single bit carry is referred to as a full-adder. The single bit binary adder has two bit output. One bit represents the Sum between numbers A and B. The other bit represents the carry bit generated due to addition. The diagram below represents the block diagram of a full- adder.
3.1.1.5 Full-adder Function Table
The full-adder has a 3-bit input and a 2-bit output. The function table of the full-adder has three input columns representing the two single bit numbers A, B and the carry in bit. The function table also has two output columns representing the sum bit and carry out bit.
Fig. 4: Full-adder Function Table and Circuit Implementation
3.1.1.6 Full-adder Sum & Carry out Boolean Expression
The sum and carry out expressions of the full-adder can be determined from the function table. The full-adder sum and carry out outputs are defined by the expressions:Sum = A B C + ABC + ABC + ABC Sum = A(BC +BC) + A(BC +BC) Sum = A(B C) + A(B C) Sum = A B C
CarryOut = ABC + ABC + ABC + ABC CarryOut = C(AB + AB) + AB(C + C) CarryOut = C(A B) + AB
3.1.1.7 Forming a Full-Adder using Half-adders
A 1-bit full-adder can be implemented by combining together two half- adders.
CIT344 INTRODUCTION TO COMPUTER DESIGN
Fig. 5: Implementing a Full-Adder using Two Half-Adders
The sum output of the first half-adder is (A ⊕ B) The carry out of the first half-adder is AB
The sum output of the second half-adder is (A B) Cin = (A B Cin) The carry out of the second half-adder is (A B) ⊕Cin
The output of the OR gate is in AB + (A ⊕ B) ⊕ Cin
3.1.1.8 Parallel Binary Adders
Single bit full or half-adders do not perform any useful function. To add two 4-bit numbers a 4-bit adder is required. Four single bit full-adders are connected together to form a 4-bit parallel adder capable of adding two 4-bit binary numbers. A 4-bit binary adder can be formed with four full-adders as follows:
Fig. 6: A 4-Bit Binary Adder
The connection diagram and logic symbols are shown below:
Connection Diagram Logic Symbol
Fig.7: Connection Diagram and Logic Symbol of a 4-Bit Binary Adder
4.0
Self-Assessment Exercise(s)1. Explain with the aid of diagrams how you can form a full-adder from half-adders.
2. Write short notes with diagrams where necessary on the following:
half-adder, its function table and sum & carry out Boolean expression.
full-adder, its function table and sum & carry out Boolean expression.
5.0 Conclusion
An adder circuit that only has two-bit input representing the two single bit numbers A and B and does not have the carry bit input from the least significant digit is regarded as a half-adder. An adder circuit which has three inputs, one representing single bit number A, the other representing the single bit number B and the third bit represents the single bit carry is referred to as a full-adder.
6.0 Summary
In this unit we talked about types of adder, half-adder, half-adder function table, half-adder sum and carry out Boolean expression, full- adder, full-adder function table, full-adder sum and carry out Boolean expression.
CIT344 INTRODUCTION TO COMPUTER DESIGN
7.0 Further Readings
Mano M.M (2017). Digital Logic and Computer Design. Pearson India Education Services Pvt.
Ltd
Yasin M.,Rajendran J. (JV) and Sinanoglu O. (2020). Trustworthy Hardware Design:
Combinational Logic Locking TechniquesSpringer Nature
Ndjountche T. (2016). Digital Electronics 1: Combinational Logic Circuits. Wiley
Elahi A (2018). Computer System: Digital Design, Fundamentals of Computer Architecture and Assembly Language. Springer Nature
Patt Y. N (2019). Introduction to Computing Systems – From Bits and Gates to C and Beyond (Online Version). Mc-Graw-Hill.
Verma A.K, Shama G and Singh K (2016). Wiley Acing The Gate: Computer Science and Information Technology. Wiley India Pvt. Ltd.
Mano M.M, Kime C.R and Martin T (2015). Logic & Computer Design Fundamentals (5th edition). Pearson. Pg283
Faroughi N (2015). Digital Logic Design & Computer Organization: With Computer Architecture for Security. McGraw-Hill Education.
Patterson D. A and Hennessy J.L (2016). Computer Organization & Design ARM Edition:
The Hardware Software Interface. Morgan Kaufmann.
Unsalan C and Tar B (2017). Digital System Design with FPGA Implementation Using Verilog and VHDL. McGraw-Hill Education.
Null L and Lobur J (2016). The Essentials of Computer Organization and Architecture (4th edition). Jones & Barlett Learning.
Rafiquzzaman M (2014). Fundamentals of Digital Logic and Microcontrollers. John Wiley &
Sons.
Roth, H. C. Jr & Kinney, L. L. (2014). Fundamentals of LogicDesign (7th edition). Cengage Learning.
Tanenbaum, Andrew S. (2013). Structured Computer Organization.Prentice Hall (6th ed).