Digital Design Fundamentals
CHAPTER 1
The electronic circuits divided to:
1-Analog (quantities with continuous values).
Example/ the sine wave
2-Digital (quantities with a set of discrete values).
Example/ pulses
The Number System
We have four numbers systems as such:
1-Decimal system ( 0,1,2,3,4,5,6,7,8,9).
2-Binary system (0,1).
3-Octal system (0,1,2,3,4,5,6,7).
4-Hexadecimal system (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F).
Decimal system:
We can analyses decimal number (8593.21) to following ranker:
8593.21
8*1000 5*100 9*10 3*1 2*1/10 1*1/100
8*103 5*102 9*101 3*100 2*10-1 1*10-2
Binary system:
We can analyses a binary number (100.11)2 to the following ranker:
(100.11)2=1*22+0*21+0*20+1*2-1+1*2-2
Note: 2-1=0.5 , 2-2=0.25 , 2-3=0.125
Octal system:
We can analyses a octal number (502.65)8 to the following ranker:
(502.65)8=5*82+0*81+2*80+6*8-1+5*8-2
Hexadecimal system:
We can analyses a hexadecimal number (2D6.F3)16 to the following ranker:
(2D6.F3)16=2*162+13*161+6*160+15*16-1+3*16-2
Note: upon hexadecimal symbols compare with decimal symbols,the symbols
(A,B,C,D,E,F) is equal in decimal (10,11,12,13,14,15).
Conversion (Decimal to Binary):
For conversion (decimal number to binary number) we will divide decimal
number by 2
for example/ Convert (13.125)10 to binary number ?
13/ 2= 6 1 0.125 * 2= 0.25
6/2=3 0 0.25 * 2 = 0.5
3/2=1 1 0.5 * 2 = 1.0
1/2=0 1
(1 1 0 1)2 (0.0 0 1)2
Total result = (1101.001)2
Conversion (Decimal to Octal):
For conversion (decimal number to octal number) we will divide decimal
number by 8
for example/ Convert (145.45)10 to octal number ?
145 / 8=18 1 0.45* 8= 3.6
18 / 8=2 2 0.6* 8= 4.8
2 / 8=0 2 0.8* 8= 6.4
0.4* 8= 3.2
0.2* 8= 1.6
(2 2 1) (0.34631)
Total result = (221.34631)8
Conversion (Decimal to Hexadecimal):
For conversion (decimal number to hexadecimal number) we will divide
decimal number by 16
for example/ Convert (394.36)10 to hexadecimal number ?
Sol/
394 / 16=24 10(A) 0.36*16= 5.76
24 / 16=1 8 0.76*16= 12.16
1/ 16=0 1 0.16*16= 2.56
0.56*16= 8.96
(1 8 A)16 (0.5C28)16
Total result =(18A.5C28)16
Conversion (non-decimal systems) to decimal system:
For conversion any number system to decimal system must be the number
analyses to ranker it depend on fundament that system as the following
examples:
1- (1101)2=1*23+1*22+0*21+1*20
=1*8+1*4+0*2+1*1 =8+4+0+1 =(13)10
2- (125)8 =1*82+2*81+5*80
=1*64+2*8+5*1 =64+16+5 =(85)10
3- (A15)10 =10*162*+1*161+5*160
=10*256+1*16+5*1 =2560+16+5 =(2581)10
Conversion from binary system to octal system and octal
system to binary system:
For conversion binary system to octal system, divide the binary number to
sub-divisions from three ranker. And if the limbs end of a few ranker, must be
dictating of zeros for it. And converting each group to octal system.
Ex/ convert the number (11010111.1101)2 to octal system?
Sol/
011 010 111 . 110 100
3 2 7 6 4
(11010111.1101)2=(327.64)8
Look at the conversion table:
Octal Binary
0 0 0 0
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1
And conversion any number from octal system to binary system it is the method inverting
we used above.
Ex/ convert the number (162.54)8 to binary system?
1 6 2 . 5 4
001 110 010.101 100
(162.54)8=(1110010.1011)2
Conversion from binary system to hexadecimal system and
hexadecimal system to binary system:
Conversion between binary system and hexadecimal it is the same conversion
method binary to octal but the difference is the binary number sub-divisions in
conversion it is four ranker.
Look at the conversion table:
Hexadecimal Binary
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
A 1 0 1 0
B 1 0 1 1
C 1 1 0 0
D 1 1 0 1
E 1 1 1 0
F 1 1 1 1
Ex/ Convert the number (1100111.101101)2 to hexadecimal system?
Sol/
0110 0111 . 1011 0100
6 7 B 4
(1100111.101101)2=(67.B4)16
Ex/ Convert the number (FE.23)16 to binary system?
Sol/ F E . 2 3
1111 1110. 0010 0011
(FE.23)16=(11111110.00100011)2
Conversion from octal system to hexadecimal system and
hexadecimal system to octal system:
For conversion between octal system to hexadecimal system must be
conversion from octal system to binary system and after then to hexadecimal system
and the inverting is correct.
2
8 16
2
Ex/ Convert the number (670.25)8 to hexadecimal system?
Sol/ 6 7 0 . 2 5
0001 1011 1000 . 0101 0100
1 B 8 . 5 4
(670.25)8=(1B8.54)16
Home work/////
-Convert the number (721.624)8 to binary system?
- Convert the number (5555.4444)8 to binary system?
- Convert the number (111001100101.011010)2 to octal system?
- Convert the number (1101010011)2 to octal system?
- Convert the number (1101101)2 to decimal system?
- Convert the number (96)10 to binary system?
- Convert the number (2CE.3B)16 to octal system?
- Convert the number (FFF)16 to binary system?
- Find the value of X for:
1- (100101010.1101)2=(X)16
2- (FD19)16=(X)10
3- (FD19)16=(X)2
4- (1110110001101011.011001011)2=(X)16
5- (1110110001101011.011001011)2=(X)8
Binary Code Decimal (BCD):
We use this code for coding decimal number to binary number. and inverting is
correct.
For example/ convert the decimal number(185)10 to (DCB)?
Sol/ 1 8 5
0001 1000 0101
Total result= (110000101)2
Ex/ Convert the (10000110)BCD to decimal number?
Sol/ 1000 0110
8 6
Total result=(86)10
Binary Arithmetic
1-Addition:
0+0=0
0+1=1
1+0=1
1+1=10 or 1+1=0 carry 1
Ex/ 10110
+ 1011
100001
2-Subtraction:
0-0=0
0-1=1 borrow 1
1-0=1
1-1=0
Ex/ 101
- 011
010
3- Multiplication:
0*0=0
0*1=0
1*0=0
1*1=1
Ex/ 101
* 11
101
+ 101
1111
4- Division:
0/0=?
0/1=0
1/0=?
1/1=1
Ex/
(10010)2/(110)2 =11 11
110 10010
110
0110
110
000
Complement
There are two types from complement:
1- 1's complement: It is the number invert . ( digit one is zero and digit zero is one)
2- 2's complement: It is a complement for 1's additive 1.
1-1's complement:
The solution method:
1 - The number ranker Completion number the fewer of the ranker.
2 - Find the 1's complement for subtractive number.
3 - The 1's complement for subtractive number add up with subtractive from it.
4 - We see result the addition for step 3:
-If there is state excrescent is one we shall add up with the number survivor, and the
result is positive.
- Except that we take 1's complement for result and the result is negative.
Ex/ By use 1's complement find (1010)2 – (110)2?
Sol/
1010
- 110
Step 1 0110
Step 2 1001
Step 3 1001
+ 1010
10011
Step 4 1
0100
Result=(100)2
Ex/ By use 1's complement find (1011)2 – (10101)2?
Sol/
01011
10101
Step 1 01010
Step 2 + 01011
?10101
Step 3 - 01010
Result=(- 1010)2
2-2's complement:
The solution method:
1 - The number ranker Completion number the fewer of the ranker.
2 - Find the 2's complement for subtractive number.
3 - The 2's complement for subtractive number add up with subtractive from it.
4 - We see result the addition for step 3:
- If there is state excrescent is one, we must be delete it and the result is positive.
- Except that we take 2's complement for result and the result is negative.
Ex/ By use 2's complement find (1010)2 – (110)2?
Sol/
1010
- 0110
Step 1 1001
+ 1
Step 2 1010
1010
Step 3 10100
Delete this state
Result =(100)2
Ex/ By use 2's complement find (1011)2 – (10101)2?
Sol/
01011
- 10101
Step 1 01010
+ 1
Step 2 01011
Step 3 + 01011
?10110
Step 4 01001
+ 1
01010
Result=(-1010)2
Home work///
- Ex/ By use 2's complement, find (1010110)2 – (101001)2?
- Ex/ By use 2's complement, find (101101)2 – (1011011)2?
- Ex/ By use 1's complement, find (10110)2 – (1100101)2?
CHAPTER 2
Logic Gates
AND gate:
The electric circuit for AND gate is:
The logic symbol for AND gate is:
The truth table for AND gate is:
I/P O/P
B A Y
0 0 0
0 1 0
1 0 0
1 1 1
The Boolean expression for AND gate is: A.B=Y
Laws AND gate is: A.0=0
A.1=A
A.A=A
A.A=0
OR gate:
The electric circuit for OR gate is:
The logic symbol for OR gate is:
The truth table for OR gate is:
I/P O/P
B A Y
0 0 0
0 1 1
1 0 1
1 1 1
The Boolean expression for OR gate is: A+B=Y
Laws OR gate is: A+0=A
A+1=1
A+A=A
A + A =1
NOT gate:
The electric circuit for NOT gate is:
The logic symbol for NOT gate is:
The truth table for NOT gate is: I/P O/P
A Y
0 1
1 0
The Boolean expression for NOT gate is: Y=A
So that A=A
NAND gate:
The logic symbol for NAND gate is :
The truth table for NAND gate is:
I/P O/P
B A Y
0 0 1
0 1 1
The Boolean expression for NAND gate is: 1 0 1
1 1 0
Y= A . B
NOR gate:
The logic symbol for NOR gate is :
The truth table for NOR gate is:
I/P O/P
B A Y
0 0 1
0 1 0
1 0 0
1 1 0
The Boolean expression for NOR gate is:
Y= A + B
EXOR gate (Exclusive OR gate):
The logic symbol for EXOR gate is :
The Boolean expression for EXOR gate is:
Y= AB+AB or Y= A B
The truth table for NOR gate is:
I/P O/P
B A Y
0 0 0
0 1 1
1 0 1
1 1 0
In the following below we can represent EXOR gate by gates(AND,OR,NOT):
EXNOR gate (Exclusive NOR gate):
The logic symbol for EXNOR gate is :
The Boolean expression for EXNOR gate is:
Y= AB+AB or Y= A B
or Y=A B
The truth table for EXNOR gate is:
I/P O/P
B A Y
0 0 1
0 1 0
1 0 0
1 1 1
Implementation of a Logic Circuit Using a Boolean Expression
Ex/ Draw the logic circuit for represent logical equation Y=AB+CD+E ?
Sol/
Ex/ Draw the logic circuit for represent logical equation Y=ABC+ABC+ABC ?
Sol/
Ex/ Draw the logic circuit for represent logical equation Y=AB+BC ?
Sol/
Ex/ Draw the logic circuit for represent logical equation Y=ABCD+AC ?
Sol/
Implementation of a Logic Circuit via a Truth Table
From truth table we take the input which be the output is1and write the Boolean
expression for truth table.
Ex/ Write the Boolean expression for the following truth table and draw the logic circuit ?
I/P O/P
A B C Y
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 0
Sol/ Y=010+110
Y=ABC+ABC
Home Work////
Write the Boolean expression for the following truth table and draw the logic circuit ?
I/P O/P
A B C Y
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 0
Converting a Boolean expression to a Truth Table
For work truth table from Boolean expression we start of converting the symbols to
numbers and we inditing 1 in the output (Y) for each bound in the Boolean expression,
and inditing 0 in the bounds remenant.
Ex/ convert the following Boolean expression to truth table Y=ABC+ABC+ABC+ABC ?
Sol/ Y=ABC+ABC+ABC+ABC
Y=000 + 010 + 110 +111
I/P O/P
A B C Y
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1
Rules of Boolean Algebra
1- A+0=A 9- A=A
2- A+1=1 10- A+AB=A(1+B)=A
3- A .0=0 11- A+AB=A+B
4- A .1=A 12-(A+B)(A+C)=A+BC
5- A+A=A AA+AC+AB+BC=
6- A+A=1 A+AC+AB+BC=
7- A .A=A A(1+C)+AB+BC=
8- A .A=0 A+AB+BC=
A(1+B)+BC=A+BC
Demorgan's Theorems
The first Demorgan's theorem: A+B=A . B
The second Demorgan's theorem: A . B=A + B
Ex/ Simplify the following expression: Y=(A+B).(C) ?
Sol/
Y= (A+B)+C
Y=A . B +C
Y=A .B +C
Ex/ Simplify the following expression: Y=(A+B+C).(A+B+C)?
Sol/
Y=(A+B+C)+(A+B+C)
Y=A.B.C + A.B. C
Y=A.B.C + A. B. C
Ex/ If Y=AB+BC , find Y?
Sol/
Y=AB +BC
Y=AB + BC
=(A.B).(B.C)
=(A+B).(B+C)
=A.B+A.C+B.B+B.C
=A.B+A.C+0+B.C
=A.B+A.C+B.C
Ex/ Using Boolean Algebra techniques to simplify this expression:
Y=AB +A(B+C)+B(B+C) , then draw the logic after simplification?
Sol/ Y=AB+A(B+C)+B(B+C)
=AB+AB+AC+BB+BC
=AB+AC+B+BC
=AB+AC+B(1+C)
=AB+AC+B
=B(1+A)+AC
=B+AC
Ex/ Using Boolean Algebra techniques to simplify this expression:
Y=(A B C +A B C)+(ABC+ABC) , then draw the logic after simplification?
Sol/
Y=A B(C+C)+BC(A+A)
Y=A B.1+B C .1
Y=A B+B C
Standard Forms of Boolean Expression
There are two standard forms of Boolean expression is:
1- The Sum-of-Products (SOP) form.
2- The Product-of-Sums (POS) form.
Conversion standard form (SOP) to standard form (POS):
1- We limit the binary number for product bounds.
2- We limit each binary number are nonexistent in binary number table.
3- We write the sum bounds equivalent for each binary number from step 2,
then we write this the bounds on standard form (POS).
Ex/ Convert the following expression: Y=ABC+ABC+ABC+ABC+ABC from (SPO)
to(POS)?
Sol/
Y= ABC+ABC+ABC+ABC+ABC A B C Y
0 0 0 0
Step 1 Y=001+011+110+111+100 0 0 1 1
Step 2 from binary table 0 1 0 0
Y=000+010+101 0 1 1 1
1 0 0 1
Step 3 Y=(A+B+C).(A+B+C).(A+B+C) 1 0 1 0
1 1 0 1
1 1 1 1
Conversion standard form (POS) to standard form (SOP):
1- We limit the binary number for sum bounds.
2- We limit each binary number are nonexistent in binary number table.
3- We write the product bounds equivalent for each binary number from
step 2, then we write this the bounds on standard form (SPO).
Ex/ Convert the following expression from (SPO) to(POS)?
Sol/
Step 1 Y =(001).(000).(011).(101).(110) A B C Y
Step 2 from binary truth table 0 0 0 1
Y=010+100+111 0 0 1 1
Step 3 0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 0
Ex/ Write the binary truth table for standard expression(SOP):
Sol/
Y=001+100+111
A B C Y
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
Ex/ Write the binary truth table for standard expression(POS):
Sol/
Y=(0+0+0).(0+1+0).(1+0+0) A B C Y
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 0
Home Work////
1- Write the binary truth table for standard expression(SOP):
2- Write the binary truth table for standard expression(POS):
NAND gate as a Universal Logic Element
NOR gate as a Universal Logic Element
Karnaugh Map
We using Karnaugh map for Boolean expression simplification, and might using
Karnaugh map of Boolean expression hers two, three, four and five variables.
1-The Karnaugh map for two variables identity:
2-The Karnaugh map for three variables identity:
3-The Karnaugh map for four variables identity:
Karnaugh map (SOP) minimization:
The solution method:
1- We write the Boolean expression from truth table.
2- We determine number of variables and draw Karnaugh map.
3- We put one in equivalent cell for Boolean expression on Karnaugh map.
4- We simplify the Boolean expression by using complements rule
and write the final Boolean expression and draw the logic after simplification.
Ex/ Write the Boolean expression from truth table ? Simplify the Boolean expression by
use Karnaugh map? And draw the logic circuit after simplification?
A B Y
0 0 0
0 1 0
1 0 1
1 1 1
Sol/
Ex/ Design the logic circuit for truth table on form( SOP) ? (by using Karnaugh map).
A B C Y
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 0
Sol/
Ex/ Write the Boolean expression from truth table ? Simplify the Boolean expression by
use Karnaugh map? And draw the logic circuit after simplification?
A B C D Y
0 0 0 0 0
0 0 0 1 1
0 0 1 0 0
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
1 0 1 1 1
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
1 1 1 1 1
Sol/
Ex/ Write the Boolean expression from truth table ? Simplify the Boolean expression by
use Karnaugh map? And draw the logic circuit after simplification?
A B C D Y
0 0 0 0 1
0 0 0 1 1
0 0 1 0 1
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 1
1 0 0 1 1
1 0 1 0 1
1 0 1 1 1
1 1 0 0 0
1 1 0 1 1
1 1 1 0 0
1 1 1 1 1
Sol/
Digital Circuits
) ( First Part
من أعداد
ســــــالم حنا عيســــى