digital electronics dr. pham ngoc nam
DESCRIPTION
Acknowledgement The main part of the slides was adopted and modified from the original slides of Prof. Rudy Lauwereins, Vice president of IMEC, Leuven, Belgium with his permission.TRANSCRIPT
![Page 1: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/1.jpg)
Digital ElectronicsDigital Electronics
Dr. Pham Ngoc Nam
![Page 2: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/2.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/2
AcknowledgementAcknowledgement• The main part of the slides was adopted and
modified from the original slides of Prof. Rudy Lauwereins, Vice president of IMEC, Leuven, Belgium with his permission.
![Page 3: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/3.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
Your instructor• Bộ môn kỹ thuật điện tử tin học
Office: C9-401 Email: [email protected]
• Research: FPGA, PSoC, hệ nhúng Trí tuệ nhân tạo
• Education: K37 điện tử-ĐHBK Hà nội (1997) Master về trí tuệ nhân tạo 1999, Đại học K.U. Leuven, vương
quốc BỉĐề tài: Nhận dạng chữ viết tay
Tiến sỹ kỹ thuật chuyên ngành điện tử-tin học, 9/ 2004, Đại học K.U. Leuven-IMEC, Vương Quốc BỉĐề tài: quản lý chất lượng dịch vụ trong các ứng
dụng đa phương tiện tiên tiến
![Page 4: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/4.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/4
Course contentsCourse contents• Digital design• Combinatorial circuits: without status• Sequential circuits: with status• FSMD design: hardwired processors• Language based HW design: VHDL
![Page 5: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/5.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/5
Course contentsCourse contentsDigital design• Combinatorial circuits: without status• Sequential circuits: with status• FSMD design: hardwired processors• Language based HW design: VHDL
![Page 6: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/6.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/6
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
![Page 7: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/7.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/7
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course
Course book Goal Exercises and laboratory sessions Exam
• Data representation• Boolean algebra• Logical gates
![Page 8: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/8.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/8
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course
Course book Goal Exercises and laboratory sessions Exam
• Data representation• Boolean algebra• Logical gates
![Page 9: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/9.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/9
Course booksCourse books• Mandatory:
“Principles of Digital Design”, Daniel D. Gajski, Prentice Hall, 1997, ISBN 0-13-301144-5
• References: Douglas L. Perry, VHDL: Programming by Examples,
McGraw-Hill, fourth Edition, 2002. “Logic and Computer Design Fundamentals”, M.
Morris Mano & Charles R. Kime, Prentice Hall, 2nd edition, 2000, ISBN 0-13-016176-4
TS. Nguyễn Nam Quân : “Toán logic và Kỹ thuật số”, Nhà xuất bản khoa học và kỹ thuật, 2006
![Page 10: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/10.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/10
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course
Course book Goal Exercises and laboratory sessions Exam
• Data representation• Boolean algebra• Logical gates
![Page 11: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/11.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/11
Goal of the courseGoal of the course• Give insight in the design of digital electronic
systems at the gate and register-transfer level
• Teach the use of modern design tools• Offer all building blocks needed to construct
complex digital circuits, including processors • Present the difference between functional
requirements (operation) and non-functional requirements (cost, speed, power, area)
• Introduce modern implementation platforms: PLA, PLD, FPGA
![Page 12: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/12.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/12
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course
Course book Goal Exercises and laboratory sessions Exam
• Data representation• Boolean algebra• Logical gates
![Page 13: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/13.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/13
Exercises and laboratory sessionsExercises and laboratory sessions• Bài 1: Các phần tử logic cơ bản – Bộ chọn dữ liệu
phân kênh• Bài 2: Các Trigơ RS, D, JK – Bộ đếm LED 7 thanh• Bài 3: Làm quen với phần mềm thí nghiệm thông
qua một ví dụ thiết kế đơn giản• Bài 4: Thiết kế bộ so sánh hai số 3 bit: Bài thí
nghiệm này giúp sinh viên luyện tập tối thiểu hóa bìa Karnaugh 6 biến và biết cách thiết kế mạch logic tổ hợp từ các phần tử logic cơ bản
• Bài 5: Thiết kế bộ phát hiện tổ hợp bit trong một chuỗi bit: Giúp sinh viên biết cách xây dựng máy trạng thái và thiết kế hệ thông số bằng máy trạng thái
• Bài 6: Thực hiện thuật toán FIR dùng cấu trúc FSMD
![Page 14: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/14.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/14
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course
Course book Goal Exercises and laboratory sessions Exam
• Data representation• Boolean algebra• Logical gates
![Page 15: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/15.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/15
ExamExam• Close book• Midterm exam: 30% • Final exam: 70%• Completing lab sessions is a must before
taking the exam
![Page 16: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/16.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/16
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation
Decimal, Binary, Octal, Hexadecimal Addition, subtraction, multiplication, division Negative numbers Integer, fixed point, fractional, floating point, BCD,
ASCII• Boolean algebra• Logical gates
![Page 17: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/17.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/17
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation
Decimal, Binary, Octal, Hexadecimal Addition, subtraction, multiplication, division Negative numbers Integer, fixed point, fractional, floating point, BCD,
ASCII• Boolean algebra• Logical gates
![Page 18: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/18.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/18
DecimalDecimal• 1234.56710=
1•1000+2•100+3•10+4•1+5•0.1+6•0.01+7•0.001
1•103+2•102+3•101+4•100+5•10-1+6•10-2+7•10-3
r = radix (r = 10), d=digit (0 d 9), m = #digits before radix point (decimal point), n = #digits after decimal point
1m
ni
ii rdD
![Page 19: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/19.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/19
BinaryBinary• 1011.0112=
1•8+0•4+1•2+1•1+0•0.5+1•0.25+1•0.125 1•23+0•22+1•21+1•20+0•2-1+1•2-2+1•2-3
r = radix (r = 2), d = digit (0 d 1), m = #digits before radix point (binary point), n = #digits after radix point
1
2m
ni
iidB
![Page 20: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/20.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/20
OctalOctal• 7654.328=
7•512+6•64+5•8+4•1+3•0.125+2•0.015625 7•83+6•82+5•81+4•80+3•8-1+2•8-2
r = radix (r = 8), d = digit (0 d 7), m = #digits before radix point (octal point), n = #digits after radix point
1
8m
ni
iidO
![Page 21: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/21.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/21
HexadecimalHexadecimal• FEDC.7616=
15•4096+14•256+13•16+12•1+7•1/16+6•1/256 15•163+14•162+13•161+12•160+7•16-1+6•16-2
r = radix (r = 16), d = digit (0 d F), m = #digits before radix point (hexadecimal point), n = #digits after radix point
1
16m
ni
iidH
![Page 22: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/22.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/22
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation
Decimal, Binary, Octal, Hexadecimal Addition, subtraction, multiplication, division Negative numbers Integer, fixed point, fractional, floating point, BCD,
ASCII• Boolean algebra• Logical gates
![Page 23: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/23.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/23
3 5
65
728 3
2
carry
x
y
sum 88
010
Binary additionBinary addition
• Binary addition
• Decimal addition
carry
x
y
sum
0
1
1
0
0
1
1
1
0
0
1
1
1
1
1
1
1
0
0
1
0
1
0
1
1
1
1
1
1
0
![Page 24: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/24.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/24
Binary subtractionBinary subtraction
x
y
borrow
result
1 1 1 0 1
1 1 1 1
1 1 1 0
0 1 1 1 0
![Page 25: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/25.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/25
Binary multiplicationBinary multiplication
1 1 1 0
1 1 0 1
1 1 1 00 0 0 0
1 1 1 01 1 1 0
1 0 1 1 0 1 1 0
• Multiplication by repeated add & shift: number of cycles = number of bits of multiplier
• Can be implemented in a faster way
![Page 26: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/26.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/26
Binary divisionBinary division
1 0 1 1 1 0 1 0
0 0 0 0
1 1 1 01 0 0 1 0 1 0
1 1 1 01 0 0 1 0
1 1 1 0
1 0 0 1 01 1 1 0
1 0 0
1 1 0 1
• Division by repeated subtract & shift: number of cycles = number of bits of result
• Mostly done this way
![Page 27: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/27.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/27
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation
Decimal, Binary, Octal, Hexadecimal Addition, subtraction, multiplication, division Negative numbers Integer, fixed point, fractional, floating point, BCD,
ASCII• Boolean algebra• Logical gates
![Page 28: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/28.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/28
Sign-Magnitude representationSign-Magnitude representation• Each number consists of two parts : sign and
magnitude• Decimal example: +12310 (by convention also
‘123’) and -12310
• Binary: sign represented by MSB; ‘0’ = positive, ‘1’ = negative
• Binary example: 011002 = +1210 en 111002 = -1210
• A sign-magnitude integer with n bits lies between -(2n-1-1) and +(2n-1-1) with two representations for 0: 000...0 en 100...0
• Generic representation of a sign-magnitude integer: B = <s,m>
![Page 29: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/29.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/29
Sign-Magnitude addition and Sign-Magnitude addition and subtractionsubtraction
Startaddition
Startsubtraction
s2=s’2
End
m1<m2
no m1>m2
no s1=s2
yes
mr=m2-m1sr=s2
mr=0sr=0
no
mr=m1+m2sr=s1
yes
mr=m1-m2sr=s1
yes
![Page 30: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/30.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/30
Sign-Magnitude addition and Sign-Magnitude addition and subtractionsubtraction
• Multiplication and division are repeated add/subtract & shift and can hence be carried out with such an adder/subtractor
• Sign-magnitude representation leads to slow, expensive adder/subtractor due to repeated comparison and test of sign and magnitude
• This is why we represent numbers mostly using two’s complement notation
![Page 31: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/31.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/31
Two’s complement notationTwo’s complement notation• Radix-complement of a number D with m
digits is D* = rm - D• eg. The 10-complement of 12310 is
103 - 12310 = 87710
• eg. The 2-complement of 11012 is24 - 1310 = 310 = 00112
• Call D’ the digit complement, then D*=D’+1 (proof in book); this offers us an easier way of determining the two’s complement:
• eg. The 2-complement of 11012 is00102 + 00012 = 00112
![Page 32: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/32.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/32
Two’s complement notationTwo’s complement notation• How do we negate a number D, i.o.w. how do
we obtain -D?• D* = rm - D D* + D = rm = 0 when we retain
only the m least significant digits D* = -D
• eg. D=00112 D*=11002+00012=11012D+D*=00112+11012=100002=24=0 when we retain only the m least significant bits; we may hence use D*=11012 for the binary representation of -D=-310
• What is the negation of D=00002? D*=11112+00012=100002=00002There is only 1 notation for ‘zero’
• A 2-complement integer with n bits lies between -(2n-1) and +(2n-1-1)
![Page 33: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/33.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/33
Decimal 2-complement Sign-magnitude-8 1000 --7 1001 1111-6 1010 1110-5 1011 1101-4 1100 1100-3 1101 1011-2 1110 1010-1 1111 10010 0000 1000 & 00001 0001 00012 0010 00103 0011 00114 0100 01005 0101 01016 0110 01107 0111 0111
Two’s complement notationTwo’s complement notation
Negating a 2-complement number requires many morebit-flips than negating a sign-magnitude number:
sign-magnitude is less power hungry than 2-complement
![Page 34: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/34.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/34
Two’s complement addition and Two’s complement addition and subtractionsubtraction
Startaddition
Br=B1+B2
End
Startsubtraction
B2=B’2+1
• The negation needed for the subtraction is done by taking the bit-complement of B2; the addition of the ‘1’ is done by putting the LSB carry-in of the next addition to 1.
![Page 35: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/35.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/35
Two’s complement addition and Two’s complement addition and subtractionsubtraction
0010 +20100 +4
000000110 +6
Addition
+
0010 +21100 - 4
000001110 - 2
+
1110 - 21100 - 4
110001010 - 6
+
0010 +21011 (+4)’
001111110 - 2
Subtraction
+
0010 +20011 (- 4)’
001110110 +6
+
1110 - 20011 (- 4)’
111110010 +2
+
0111 +70110 +6
011001101 - 3
Overflow
+
1001 - 71010 - 6
100000011 +3
+
![Page 36: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/36.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/36
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation
Decimal, Binary, Octal, Hexadecimal Addition, subtraction, multiplication, division Negative numbers Integer, fixed point, fractional, floating point, BCD,
ASCII• Boolean algebra• Logical gates
![Page 37: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/37.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/37
Integer, fixed point, fractional, floating Integer, fixed point, fractional, floating pointpoint
• Integer int<m>: 101011. m=6 int<m1>+int<m2> = int<m> and mmax(m1,m2)+1 int<m1>•int<m2> = int<m> and m=m1+m2
• Fixed point fix<i,f>: 1101.010 i = 4, f = 3 fix<i1,f1>+fix<i2,f2> = fix<i,f> and imax(i1,i2)+1 &
fmax(f1,f2) fix(i1,f1)•fix(i2,f2) = fix<i,f> and i=i1+i2 & f=f1+f2
15
01int
i
mHow many bits are needed for ? mm1+log216
15
01int
i
mHow many bits are needed for ? m=16•m1
15
011,fix
i
fiHow many bits are needed for: ? ii1+log216 &f=f1
![Page 38: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/38.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/38
Integer, fixed point, fractional, floating Integer, fixed point, fractional, floating pointpoint
• Fractional frac<f>: 0.01101 f = 5 frac<f1>+frac<f2> = fix<1,f> and fmax(f1,f2) frac<f1>•frac<f2> = frac<f> and f=f1+f2
• Floating point float<m,e>: 0.11010•2^101 m = 5, e = 3
15
01frac
i
fHow many bits are needed for ? ilog216 &f=f1
![Page 39: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/39.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/39
BCDBCD• Binary Coded Decimal number
Decimaldigit
BCD
0 00001 00012 00103 00114 01005 01016 01107 01118 10009 1001
![Page 40: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/40.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/40
ASCIIASCII• American Standard Code for Information Interchange (7-bit code)
b3b2b1b0 000 001 010 011 100 101 110 1110000 NUL DLE SP 0 @ P ‘ p0001 SOH DC1 ! 1 A Q a q0010 STX DC2 “ 2 B R b r0011 ETX DC3 # 3 C S c s0100 EOT DC4 $ 4 D T d t0101 ENQ NAK % 5 E U e u0110 ACK SY N & 6 F V f V0111 BEL ETB ‘ 7 G W g w1000 BS CAN ( 8 H X h x1001 HT EM ) 9 I Y i y1010 LF SUB * : J Z j z1011 VT ESC + ; K [ k {1100 FF FS , < L \ l |1101 CR GS - = M ] m }1110 SO RS . > N ^ n ~1111 SI US / ? O _ o DEL
![Page 41: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/41.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/41
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra
Axiomatic definition of Boolean algebra Theorems of Boolean algebra Boolean functions Canonical form Standard form The 16 functions of 2 variables
• Logical gates
![Page 42: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/42.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/42
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra
Axiomatic definition of Boolean algebra Theorems of Boolean algebra Boolean functions Canonical form Standard form The 16 functions of 2 variables
• Logical gates
![Page 43: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/43.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/43
Axiomatic definition of Boolean Axiomatic definition of Boolean algebraalgebra
• A1 (Closure): B is closed w.r.t. + (OR) B is closed w.r.t. • (AND)
• A2 (Identity element) B has an identity element w.r.t. +, designated by 0 B has an identity element w.r.t. •, designated by 1
• A3 (Commutativity) B is commutative w.r.t. +, i.o.w. x+y=y+x B is commutative w.r.t. •, i.o.w. x•y=y•x
![Page 44: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/44.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/44
Axiomatic definition of Boolean Axiomatic definition of Boolean algebraalgebra
• A4 (Distributivity) • is distributive w.r.t. +, i.o.w. x•(y+z)=(x•y)+(x•z) + is distributive w.r.t. •, i.o.w. x+
(y•z)=(x+y)•(x+z)• A5 (Complement element -- NOT operator)
xB, x’B: x+x’=1 xB, x’B: x•x’=0
• A6 (Cardinality bound) There exist at least two different elements in B
![Page 45: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/45.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/45
Axiomatic definition of Boolean Axiomatic definition of Boolean algebraalgebra
• Differences w.r.t. ordinary algebra In ordinary algebra + is not distributive w.r.t. •:
5+(2•4) (5+2) • (5+4) In boolean algebra, an inverse operation for the
addition (OR) does not exist, neither for the multiplication (AND); subtraction and division hence do not exist
In ordinary algebra it is not true that x + x’ = 1 and x • x’ = 0
Boolean algebra works with a finite set of elements, whereas ordinary algebra has an infinite set
![Page 46: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/46.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/46
Axiomatic definition of Boolean Axiomatic definition of Boolean algebraalgebra
• Two-valued Boolean algebra (defined by Shannon)
x y xy0 0 00 1 01 0 01 1 1
AND operatorx y x+y0 0 00 1 11 0 11 1 1
OR operator
x x’0 11 0
NOT operator
![Page 47: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/47.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/47
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra
Axiomatic definition of Boolean algebra Theorems of Boolean algebra Boolean functions Canonical form Standard form The 16 functions of 2 variables
• Logical gates
![Page 48: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/48.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/48
Theorems of Boolean algebraTheorems of Boolean algebra• Theorem 1: idempotency
x + x = x x • x = x (Note the duality!!)
• Theorem 2 x + 1 = 1 Dual: x • 0 = 0
• Theorem 3: absorption y • x + x = x (priority: • before +) Dual: (y + x) • x = x
• Theorem 4: involution (x’)’ = x
![Page 49: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/49.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/49
Theorems of Boolean algebraTheorems of Boolean algebra• Theorem 5: associativity
(x + y) + z = x + (y + z) Dual: (xy)z = x(yz)
• Theorem 6: De Morgan’s law (x+y)’ = x’y’ Dual: (xy)’ = x’+y’
• Proof: using axioms or truth table• Duality:
Replace each OR by AND and AND by OR Replace each 0 by 1 and x by x’
![Page 50: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/50.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/50
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra
Axiomatic definition of Boolean algebra Theorems of Boolean algebra Boolean functions Canonical form Standard form The 16 functions of 2 variables
• Logical gates
![Page 51: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/51.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/51
Boolean functionsBoolean functions• What: expression in binary variables and the
operators AND, OR, NOT• Priority:
parenthesis NOT AND OR
• Eg. F1=xy+xy’z+x’yz F1=1 when x=1 and y=1 or when x=1, y=0 and
z=1 or when x=0, y=1 and z=1; in all other cases F1=0
F1 consists of 3 AND-terms and 1 OR-term
![Page 52: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/52.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/52
Boolean functionsBoolean functions• Realisation of F1=xy+xy’z+x’yz
x y z
F1
![Page 53: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/53.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/53
Boolean functionsBoolean functions• Truth table for F1=xy+xy’z+x’yz
n variables 2n rows standard numbering
Row x y z F1
0 0 0 0 01 0 0 1 02 0 1 0 03 0 1 1 14 1 0 0 05 1 0 1 16 1 1 0 17 1 1 1 1
x y z
F1
Row x y z F1
0 0 0 0 01 0 0 1 02 0 1 0 03 0 1 1 14 1 0 0 05 1 0 1 16 1 1 0 17 1 1 1 1
x y z
F1
Row x y z F1
0 0 0 0 01 0 0 1 02 0 1 0 03 0 1 1 14 1 0 0 05 1 0 1 16 1 1 0 17 1 1 1 1
x y z
F1
Row x y z F1
0 0 0 0 01 0 0 1 02 0 1 0 03 0 1 1 14 1 0 0 05 1 0 1 16 1 1 0 17 1 1 1 1
x y z
F1
x y z
F1
Row x y z F1
0 0 0 0 01 0 0 1 02 0 1 0 03 0 1 1 14 1 0 0 05 1 0 1 16 1 1 0 17 1 1 1 1
![Page 54: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/54.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/54
Boolean functionsBoolean functions• Building up a truth table using standard
numbering:
X Y Z01010101
00110011
00001111
![Page 55: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/55.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/55
Boolean functionsBoolean functions• Truth table for F1=xy+xy’z+x’yz
numbering following the Gray code (two consecutive rows only differ in 1 variable)
x y z F1
0 0 0 00 0 1 00 1 1 10 1 0 01 1 0 11 1 1 11 0 1 11 0 0 0
![Page 56: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/56.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/56
Boolean functionsBoolean functions• Building up a truth table using the Gray code:
X Y Z01100110
00111100
00001111
![Page 57: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/57.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/57
Boolean functionsBoolean functions• Complement of a Boolean function
F1’ =(xy+xy’z+x’yz)’=(xy)’(xy’z)’(x’yz)’ (De Morgan)=(x’+y’)(x’+y+z’)(x+y’+z’) (De Morgan)
This gives us the opportunity to convert an AND-OR implementation in an OR-AND implementation (see next slide)
![Page 58: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/58.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/58
Boolean functionsBoolean functions• Realisation as AND-OR:
F1=xy+xy’z+x’yz• Realisation as OR-AND:
F1=((x’+y’) (x’+y+z’) (x+y’+z’))’
x y z
F1
x y z
F1
![Page 59: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/59.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/59
Boolean functionsBoolean functions• Algebraic manipulation
F1 =xy+xy’z+x’yz =xy+xyz+xy’z+x’yz (absorption)=xy+x(y+y’)z+x’yz (distributive)=xy+x1z+x’yz (complement)=xy+xz+x’yz (identity)=xy+xyz+xz+x’yz (absorption)=xy+xz+(x+x’)yz (distributive)=xy+xz+1yz (complement)=xy+xz+yz (identity)
This alternative form is cheaper (see next slide) There does not exist a fixed rule to combine theorems to
guarantee a cheaper result Further slides will present a non-algebraic method that
always leads to the cheapest solution
![Page 60: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/60.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/60
Boolean functionsBoolean functions• F1=xy+xz+yz• F1=xy+xy’z+x’yz
x y z
F1
x y z
F1
![Page 61: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/61.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/61
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra
Axiomatic definition of Boolean algebra Theorems of Boolean algebra Boolean functions Canonical form Standard form The 16 functions of 2 variables
• Logical gates
![Page 62: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/62.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/62
Canonical formCanonical form• How do we translate a truth table into a
Boolean expression?• Definition: a minterm is a Boolean function
that is true in 1 row of the truth table and false elsewhere
Row x y z minterm Notation0 0 0 0 x’y’z’ m01 0 0 1 x’y’z m12 0 1 0 x’yz’ m23 0 1 1 x’yz m34 1 0 0 xy’z’ m45 1 0 1 xy’z m56 1 1 0 xyz’ m67 1 1 1 xyz m7
![Page 63: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/63.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/63
Canonical formCanonical form• A 1-minterm is a minterm for which the function
equals 1; a 0-minterm is a minterm for which the function equals 0
• For F1=xy+xy’z+x’yz
• Each Boolean function can be expressed as the sum of its 1-minterms : F1=x’yz+xy’z+xyz’+xyz=m3+m5+m6+m7=(3,5,6,7)
Row x y z F1 1-minterm0 0 0 0 0 -1 0 0 1 0 -2 0 1 0 0 -3 0 1 1 1 m3=x’yz4 1 0 0 0 -5 1 0 1 1 m5=xy’z6 1 1 0 1 m6=xyz’7 1 1 1 1 m7=xyz
![Page 64: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/64.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/64
Canonical formCanonical form• Dual definition: a maxterm is a Boolean function that is
false in 1 row of the truth table and true elsewhere
Row x y z maxterm Notation0 0 0 0 x+y+z M01 0 0 1 x+y+z’ M12 0 1 0 x+y’+z M23 0 1 1 x+y’+z’ M34 1 0 0 x’+y+z M45 1 0 1 x’+y+z’ M56 1 1 0 x’+y’+z M67 1 1 1 x’+y’+z’ M7
![Page 65: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/65.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/65
Canonical formCanonical form• A 0-maxterm is a maxterm for which the function
equals 0; a 1-maxterm is a maxterm for which the function equals 1
• For F1=xy+xy’z+x’yz
• Each Boolean function can be expressed as the product of its 0-maxterms:F1 =(x+y+z)(x+y+z’)(x+y’+z)(x’+y+z)
=M0M1M2M4=(0,1,2,4)
Row x y z F1 0-maxterm0 0 0 0 0 M0=x+y+z1 0 0 1 0 M1=x+y+z’2 0 1 0 0 M2=x+y’+z3 0 1 1 1 -4 1 0 0 0 M4=x’+y+z5 1 0 1 1 -6 1 1 0 1 -7 1 1 1 1 -
![Page 66: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/66.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/66
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra
Axiomatic definition of Boolean algebra Theorems of Boolean algebra Boolean functions Canonical form Standard form The 16 functions of 2 variables
• Logical gates
![Page 67: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/67.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/67
Standard form -- minimal Standard form -- minimal implementation in two layersimplementation in two layers
• In the canonical form each function is a sum of 1-minterms or a product of 0-maxterms
• Each minterm or maxterm contains all variables => expensive implementation
• The standard form is a sum of product terms or a product of sum terms with the smallest number of variables
• A product term or sum term does not necessarily contain all variables => cheaper implementation
![Page 68: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/68.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/68
Standard form -- minimal Standard form -- minimal implementation in two layersimplementation in two layers
• Example 1F2 =xyz+xyz’+xy’z+xy’z’
=xy(z+z’)+xy’(z+z’)=xy+xy’=x(y+y’)=x
• Example 2F3 =xyz+xyz’+xy’z+x’yz+x’y’z’
=xyz+xyz’+xyz+xy’z+xyz+x’yz+x’y’z’=xy(z+z’)+x(y+y’)z+(x+x’)yz+x’y’z’=xy+xz+yz+x’y’z’
![Page 69: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/69.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/69
Standard form -- minimal Standard form -- minimal implementation in two layersimplementation in two layers
• The standard form is the cheapest implementation in two layers
• Eg. F2=xy+xz+yz
• A non-standard form in more than two layers may be cheaper
• Eg. F2=x(y+z)+yz
x zy
F2
Multiplier: O(en)
x zy
F2
Multiplier: O(n2)
![Page 70: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/70.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/70
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra
Axiomatic definition of Boolean algebra Theorems of Boolean algebra Boolean functions Canonical form Standard form The 16 functions of 2 variables
• Logical gates
![Page 71: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/71.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/71
The 16 functions of 2 variablesThe 16 functions of 2 variables• Why 16 functions?
x y F0 F1 F2 F15
0 0 0 0 0 10 1 0 0 0 11 0 0 0 1 11 1 0 1 0 1
There exist 4 possible combinations for x and y and each combination can have a different functional value. Each function F(x,y) is hence characterized by 4 bits, i.e. the 4 functional values for xy, xy’, x’y and x’y’. With 4 bits 24th different patterns for truth table are possible. Hence, there are 24=16 different functions F(x,y) possible, i.e. all possible combinations of 4 bits.
![Page 72: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/72.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/72
The 16 functions of 2 variablesThe 16 functions of 2 variablesFunctional value
for x,yName Symbol 00 01 10 11 ExpressionZero - 0 0 0 0 F0=0AND x·y 0 0 0 1 F1=xy
Inhibition x/y 0 0 1 0 F2=xy’Transfer - 0 0 1 1 F3=xInhibition y/x 0 1 0 0 F4=x’yTransfer - 0 1 0 1 F5=y
XOR xy 0 1 1 0 F6=xy’+x’yOR x+y 0 1 1 1 F7=x+y
NOR x y 1 0 0 0 F8=(x+y)’XNOR - 1 0 0 1 F9=xy+x’y’
Complement y’ 1 0 1 0 F10=y’Implication - 1 0 1 1 F11=x+y’
Complement x’ 1 1 0 0 F12=x’Implication - 1 1 0 1 F13=x’+y
NAND x y 1 1 1 0 F14=(xy)’One - 1 1 1 1 F15=1
![Page 73: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/73.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/73
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties Implementation technologies
![Page 74: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/74.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/74
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
GatesSwitching transistorBasic logical gatesGates with multiple inputs (fan-in)Multiple operators in a single gate
Non-functional properties Implementation technologies
![Page 75: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/75.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/75
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
GatesSwitching transistorBasic logical gatesGates with multiple inputs (fan-in)Multiple operators in a single gate
Non-functional properties Implementation technologies
![Page 76: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/76.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/76
Switching transistorSwitching transistor
pn+n+
GateSource Drain
MetalIsolator
n-MOS transistor
![Page 77: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/77.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/77
Switching transistorSwitching transistor
pn+n+
VssVss Vss
n-MOS transistor
Infinite numberof free electrons
Many freeelectrons
Many freeelectrons
Hardly anyfree electrons:
no conducting pathbetween Source
and DrainS=Vss
D=Vss
G=Vss
![Page 78: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/78.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/78
Switching transistorSwitching transistor
pn+n+
VssVss Vss
n-MOS transistor
Vcc
Many free electronsattracted by positive
gate voltage:conducting channel
between Sourceand DrainS=Vss
D=Vss
G=Vcc
![Page 79: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/79.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/79
Switching transistorSwitching transistorp-MOS transistor
Similar construction, but ‘p’ and ‘n’ doping reversed
S=Vss
D=Vss
G=Vss
Conducts whengate voltage = Vss
S=Vss
D=Vss
G=Vcc
Does not conduct whengate voltage = Vcc
![Page 80: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/80.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/80
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
GatesSwitching transistorBasic logical gatesGates with multiple inputs (fan-in)Multiple operators in a single gate
Non-functional properties Implementation technologies
![Page 81: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/81.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/81
Basic logical gatesBasic logical gates• Invertor
F=x’, 2 transistors, relative propagation delay: 1
x=0 F=1 x=0 F=1
Vcc
Vss
x F x F
Vcc
Vss
x F x F
Vcc
Vss
x=1 F=0 x=1 F=0
Vcc
Vss
![Page 82: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/82.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/82
Basic logical gatesBasic logical gates• Driver
F=x, 4 transistors, relative propagation-delay: 2; goal: higher power drive
x F x
Vcc
Vss
F
Vcc
Vss
x F x
Vcc
Vss
F
Vcc
Vss
x=1 F=1 x=1
Vcc
Vss
F=1
Vcc
Vss
x=0 F=0 x=0
Vcc
Vss
F=0
Vcc
Vss
![Page 83: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/83.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/83
Basic logical gatesBasic logical gates• NAND
F=(xy)’, 4 TOR, relative propagation-delay: 1.4
x F
y
Vcc
Vss
x y
x
yF
x F
y
Vcc
Vss
x y
x
yF
x=0 F=1
y=0
Vcc
Vss
y=0
x=0
y=0F=1
x=0
x=0 F=1
y=1
Vcc
Vss
x=0 y=1
x=0
y=1F=1
x=1 F=1
y=0
Vcc
Vss
x=1 y=0
x=1
y=0F=1
x=1 F=0
y=1
Vcc
Vss
x=1 y=1
x=1
y=1F=0
![Page 84: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/84.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/84
Basic logical gatesBasic logical gates• NOR
F=(x+y)’, 4 TOR, relative propagation-delay: 1.4
x F
y
Vcc
Vss
x y
x
y
Fx F
y
Vcc
Vss
x y
x
y
Fx=0 F=1
y=0
Vcc
Vss
x=0 y=0
x=0
y=0
F=1x=0 F=0
y=1
Vcc
Vss
x=0 y=1
x=0
y=1
F=0x=1 F=0
y=0
Vcc
Vss
x=1 y=0
x=1
y=0
F=0x=1 F=0
y=1
Vcc
Vss
x=1 y=1
x=1
y=1
F=0
![Page 85: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/85.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/85
Basic logical gatesBasic logical gates• AND
F=xy, 6 TOR, relative propagation-delay: 2.4
x F
y
Vcc
Vss
x y
x
y
F
Vcc
Vss
![Page 86: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/86.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/86
Basic logical gatesBasic logical gates• OR
F=x+y, 6 TOR, relative propagation-delay: 2.4
x F
y
Vcc
Vss
x y
x
y
F
Vcc
Vss
![Page 87: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/87.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/87
Basic logical gatesBasic logical gates• XNOR
F=(xy)’, 12 TOR,relativepropagation-delay: 3.2
x F
y
Vcc
Vss
x y
x
y
x’ y’
x’
y’
Fx’
Vcc
Vss
x
y’
Vcc
Vss
y
x y F0 0 10 1 01 0 01 1 1
x F
y
Vcc
Vss
x y
x
y
x’ y’
x’
y’
Fx’
Vcc
Vss
x
y’
Vcc
Vss
y
x y F0 0 10 1 01 0 01 1 1
x=0 F=1
y=0
x’=1
Vcc
Vss
x
y’=1
Vcc
Vss
y
x y F0 0 10 1 01 0 01 1 1
Vcc
Vss
x=0 y=0
x=0
y=0
x’=1 y’=1
x’=1
y’=1
F=1x=0 F=0
y=1
x’=1
Vcc
Vss
x
y’=0
Vcc
Vss
y
x y F0 0 10 1 01 0 01 1 1
Vcc
Vss
x=0 y=1
x=0
y=1
x’=1 y’=0
x’=1
y’=0
F=0x=1 F=0
y=0
x’=0
Vcc
Vss
x
y’=1
Vcc
Vss
y
x y F0 0 10 1 01 0 01 1 1
Vcc
Vss
x=1 y=0
x=1
y=0
x’=0 y’=1
x’=0
y’=1
F=0x=1 F=1
y=1
x’=0
Vcc
Vss
x
y’=0
Vcc
Vss
y
x y F0 0 10 1 01 0 01 1 1
Vcc
Vss
x=1 y=1
x=1
y=1
x’=0 y’=0
x’=0
y’=0
F=1
![Page 88: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/88.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/88
Basic logical gatesBasic logical gates• XOR
F=(xy), 12 TOR,relativepropagation-delay: 3.2
x F
y
Vcc
Vss
x y’
x
y’
x’ y
x’
y
Fx’
Vcc
Vss
x
y’
Vcc
Vss
y
x y F0 0 00 1 11 0 11 1 0
![Page 89: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/89.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/89
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
GatesSwitching transistorBasic logical gatesGates with multiple inputs (fan-in)Multiple operators in a single gate
Non-functional properties Implementation technologies
![Page 90: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/90.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/90
Gates with multiple inputs (fan-in)Gates with multiple inputs (fan-in)• 3-input NAND
F=(xyz)’, 6 TOR,relativepropagation-delay: 1.8
z
Fy
Vcc
Vss
x y
x
y
F
x
z
z
![Page 91: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/91.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/91
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
GatesSwitching transistorBasic logical gatesGates with multiple inputs (fan-in)Multiple operators in a single gate
Non-functional properties Implementation technologies
![Page 92: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/92.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/92
Multiple operators in a single gateMultiple operators in a single gate• 2-wide 2-input
AND-OR-Invert F=(xy + zw)’, 8 TOR,
relativepropagation-delay: 2.2
y
Vcc
Vss
x y
x
y
x
wz
z
w
z w
FF
![Page 93: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/93.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/93
Multiple operators in a single gateMultiple operators in a single gate• 2-wide 2-input
OR-AND-Invert F=((x+y)(z+w))’,
8 TOR,relativepropagation-delay: 2.2
y
Vcc
Vss
x y
x
y
x
wz
z
w
z wF
F
![Page 94: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/94.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/94
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties
Logical voltage levels and noise marginFan-outPower dissipationPropagation delay
Implementation technologies
![Page 95: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/95.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/95
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties
Logical voltage levels and noise marginFan-outPower dissipationPropagation delay
Implementation technologies
![Page 96: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/96.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/96
Logic voltage levels and noise marginLogic voltage levels and noise margin• For CMOS and TTL, 0V corresponds to the logical
‘0’ and 5V to ‘1’ (ideal and in steady state)• Realistically and during transition for TTL invertor:
Vout
Vin
High
Low
5
2.4
0.4
0 0 0.8 2.0 5Low High
Variation function of:- temperature- power supply voltage- manufacturing
![Page 97: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/97.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/97
Logic voltage levels and noise marginLogic voltage levels and noise margin• TTL guarantees a low output level between
0V and 0.4V (=VOL) and recognizes voltages between 0V and 0.8V (=VIL) as logic ‘0’
• Noise up to 0.4V peak between output and next input are interpreted correctly
• The noise margin is hence VIL-VOL=0.4V• TTL guarantees a high output level between
2.4V (=VOH) and 5V and recognizes voltages between 2.0V (=VIH) and 5V as logic ‘1’
• Noise up to 0.4V peak between output and next input are interpreted correctly
• The noise margin is hence VOH-VIH=0.4V
![Page 98: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/98.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/98
Logic voltage levels and noise marginLogic voltage levels and noise margin• Graphical representation of noise margin:
Low Low
HighHigh
Vss Vss
Vcc Vcc
Output Input
VOL
VOH
VIL
VIHMargin
Margin
![Page 99: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/99.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/99
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties
Logical voltage levels and noise marginFan-outPower dissipationPropagation delay
Implementation technologies
![Page 100: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/100.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/100
Fan-out: ‘current driven’ technologies Fan-out: ‘current driven’ technologies cf. TTL, ECL, ...cf. TTL, ECL, ...
• Fan-out: maximum number of inputs that may be connected to a single output
• Depends on the current that may be delivered by the driving gate (source) (IOH) w.r.t. the current consumed by the driven gate (IIH) and on the current sinked by the driving gate (sink) (IOL) w.r.t. the current delivered by the driven gate (IIL)
• Fan-out = min(IOH/IIH,IOL/IIL)
IOH
IIHIOL
IIL
![Page 101: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/101.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/101
Fan-out: ‘charge driven’ technologies Fan-out: ‘charge driven’ technologies cf. CMOScf. CMOS
• Fan-out: maximum number of inputs that may be connected to a single output
• Depends on the current that may be sourced resp. sinked by the driving gate (IOH resp. IOL) w.r.t. the capacity of the connected inputs and the connecting wire and to the switching time allowed
• I=dQ/dt=C.dV/dt=C.f.V => determines maximum switching frequency
• e.g. based on realistic values for Xilinx Virtex: 10 pF input capacity, 20 mA drive current, 0.8
pF/cm PCB connect, Vcc=3.3 V For fan-out=3 and 10 cm PCB connect:
C=3*10+0.8*10=38 pF and switching frequency = I/(C.V)=20 mA/(38 pF * 3.3 V)=160 MHz
![Page 102: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/102.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/102
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties
Logical voltage levels and noise marginFan-outPower dissipationPropagation delay
Implementation technologies
![Page 103: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/103.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/103
Power dissipationPower dissipation• TTL dissipates continuously
P=VCC*ICC10mW/gate 1 million gates: 10 KW!! Only used when high voltages or large currents are
needed (busdrivers, …)• CMOS dissipates only while switching
P=C.f.V2 since I=C.f.VC: proportional to chip area (trend: increase)f: trend: steep increase: 1MHz 1 GHzV: trend: steady decrease: 5 3.3 2.5 1.8 1.5
1.2 0.9Virtex example: P=38 pF*160 MHz*(3.3 V)2=
66 mW per switching pin; assuming 200 pins, half of which switch concurrently, gives 6.6 W for driving the external pins
Advanced microprocessors: 40W Cooling!!! Is currently the limiting design factor
![Page 104: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/104.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/104
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties
Logical voltage levels and noise marginFan-outPower dissipationPropagation delay
Implementation technologies
![Page 105: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/105.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/105
Propagation delayPropagation delay
90%
50%
10%
tPLH tPHL
Propagation delay:tP=(tPLH+tPHL)/2
90%
50%
10%
Risetime
Falltime
Rise time > Fall time
![Page 106: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/106.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/106
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties Implementation technologies
SSI, MSI, LSI, VLSICustom design, standard cell designGate arrayPLA, PLD, FPGA
![Page 107: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/107.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/107
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties Implementation technologies
SSI, MSI, LSI, VLSICustom design, standard cell designGate arrayPLA, PLD, FPGA
![Page 108: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/108.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/108
SSI, MSI, LSI, VLSI (I)SSI, MSI, LSI, VLSI (I)• SSI: Small Scale Integration
< 10 gates per package gates directly connected to package pins designed using transistor level design used using gate level design
• MSI: Medium Scale Integration 10 - 100 gates per package registers, adders, parity generators, … designed using gate level design used using RTL design
• LSI: Large Scale Integration 100 - 10K gates per package controllers, data paths designed using RTL design used using behavioral level design
![Page 109: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/109.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/109
SSI, MSI, LSI, VLSI (II)SSI, MSI, LSI, VLSI (II)• VLSI: Very Large Scale Integration
10K - 1M gates per package memory, microprocessor, microcontroller, FFT designed using behavioral level design used using system level design
• ULSI: Ultra Large Scale Integration??? 1M - ?? Gates per package 2 controllers, 20 DSP processors, 16 Mbyte
memory, 10 accelerators, 1 Mgate FPGA, Analog interface, RF
designed using system level design only one chip needed for complete application ??
![Page 110: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/110.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/110
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties Implementation technologies
SSI, MSI, LSI, VLSICustom design, standard cell designGate arrayPLA, PLD, FPGA
![Page 111: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/111.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/111
Custom designCustom design• Each transistor and each connection is
designed individually as a set of rectangles.• Excellent for optimal design of library
elements that are re-used multiple times• Companies design and sell such optimized
libraries • Has to be completely re-done each time
technology changes (every 18 months!)
![Page 112: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/112.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/112
Standard cell designStandard cell design• Library of standard cells
each cell is a gate standard height, variable width, interleaved by
routing channels all inputs at the top, all outputs at the bottom
• Faster design of more complex building blocks• Silicon foundries design and sell such
optimized libraries for their processing technology
Placement and routing
![Page 113: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/113.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/113
Standard cell designStandard cell design• Design Flow
Design entry
Placement
Routing
Simulation
Timing simulation
Fabrication: n masks Testing
![Page 114: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/114.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/114
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties Implementation technologies
SSI, MSI, LSI, VLSICustom design, standard cell designGate arrayPLA, PLD, FPGA
![Page 115: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/115.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/115
Gate array designGate array design• Two-dimensional grid of identical gates
each cell is for example a 3-input NAND gate standard height, standard width, interleaved by
routing channels all inputs at the top, all outputs at the bottom
• Cheaper: Only the last metallisation layer is project specific
![Page 116: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/116.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/116
Gate array designGate array design• Design Flow
Design entry
Placement
Routing
Simulation
Timing simulation
Fabrication: 1 mask Testing
Map all functions tothe available 3-input
NANDsTechnology mapping
![Page 117: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/117.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/117
Contents of “Digital Design”Contents of “Digital Design”• Introduction to the course• Data representation• Boolean algebra• Logical gates
Gates Non-functional properties Implementation technologies
SSI, MSI, LSI, VLSICustom design, standard cell designGate arrayPLA, PLD, FPGA
![Page 118: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/118.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/118
Field-programmable designField-programmable design• Fuse programmable
One time customer programmable by selectively blowing fuses
PLA: Programmable Logic Array PLD: Programmable Logic Device CPLD: Complex PLD
• SRAM based FPGA: Field Programmable Gate Array (see
laboratory sessions)• Properties:
Excellent for prototypes Excellent for medium volumes (<100K pieces/year) For SRAM based: reconfiguration (static or dynamic)
possible 2 Mgates @ 200 MHz (in 2000)
![Page 119: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/119.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/119
Field-programmable designField-programmable design• PLA
![Page 120: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/120.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/120
Field-programmable designField-programmable design• PLD
D D
![Page 121: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/121.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/121
Field-programmable designField-programmable design• CPLD
AND-ORPlane
O I/O
Switch matrix
I/O O
AND-ORPlane
AND-ORPlane
O I/O I/O
AND-ORPlane
O
![Page 122: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/122.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/122
Field-programmable designField-programmable design• XC95216
6 Functional blocks (36V18 each) Flash programmable
![Page 123: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/123.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/123
Field-programmable designField-programmable design• FPGA: XC40xx
CLBCLB
CLB CLB
CLB
CLB
Direct connectionsLong lines
SM SM SM SM
SM SM SM SM
SM SM SM SM
Routing via switching matrices
I/O I/O I/OI/O
I/OI/O
I/O
![Page 124: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/124.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/124
Field-programmable designField-programmable design
![Page 125: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/125.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/125
Field-programmable designField-programmable design• FPGA: Configurable Logic Block CLB
16x1LUT:
Bool-functionof 4
variables
16x1LUT:
Bool-functionof 4
variables
FFG
G
GQ
FFF
F
FQ
![Page 126: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/126.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/126
Field-programmable designField-programmable design
![Page 127: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/127.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/127
Field-programmable designField-programmable design• FPGA: Switching Matrix SM
PassTOR
![Page 128: Digital Electronics Dr. Pham Ngoc Nam](https://reader036.vdocuments.pub/reader036/viewer/2022062306/5a4d1aef7f8b9ab05997d33f/html5/thumbnails/128.jpg)
© R.LauwereinsImec 2001
Digitaldesign
Combina-torialcircuits
Sequentialcircuits
FSMDdesign
VHDL
1/128
Field programmable designField programmable design• Design Flow
Design entry
Placement
Routing
Simulation
Timing simulation
Downloading Testing
Technology mapping