Documente Academic
Documente Profesional
Documente Cultură
com
www.jntuworld.com
www.jwjobs.net
1-1
www.jntuworld.com
Class Schedule
Monday May 17 Tuesday 18 Wednesday 19 - Class 1 Thursday 20 - Class 2 Friday 21
24 - Class 3
25
26 - Class 4 Quiz 1 2 - Class 5 Project defined 9 - Class 8 Quiz 2 16 - Class 11 Quiz 5 23 - Class 14 Quiz 4 30 - Class 17 Quiz 5
Copyright 2004 Stevens Institute of Technology All rights reserved
27 Commencement 3 - Class 6
28
www.jntuworld.com
June 1
10 - Class 9
11
14 - Class 10
15
17 - Class 12
18
21 - Class 13
22
25
28 - Class 16
29
7/2
www.jwjobs.net
1-2
www.jntuworld.com
Logistics: Instructor: Bruce McNair Office: Burchard 206 Phone: 201-216-5549 email: bmcnair@stevens-tech.edu Office hours: Class days ~9:30 - ~11 Web site: http://koala.ece.stevens-tech.edu/~bmcnair (course notes, solutions, etc. are here) Homework Must be typed or printed hardcopy, or electronic (i.e., not handwritten). email is OK with MS/Office (2000 or previous), or program (e.g., .c, .m, ...) attachments. Dont email me an executable or a macrovirus. pdf is OK. VERIFY THAT PROGRAMMING SUBMISSIONS INCLUDE ENOUGH ENVIRONMENT TO BE BUILT AND RUN (e.g., .h files, initialization, etc.) Include the problem statement with solution. Keep a copy of your hardcopy or electronic homework (it may not be returned) If you submit homework as an email attachment, make sure your name appears in the file. The file name must include your name (or login), course number, and assignment number, e.g.: bmcnair-CPE358-HW2.doc To ensure proper credit for the homework, indicate the due date on the homework Homework will be due at the second class after it is assigned. (E.g., Class 1 homework is due during Class 3) My goal is to grade it and post the solution within a week. Problem solutions will be posted on my web site I do not penalize late homework, but HOMEWORK WILL NOT BE ACCEPTED AFTER THE SOLUTION IS POSTED Grading All items are INDIVIDUAL effort Homework: 25% Project: 25% Weekly tests: 10% each (50%) Detailed grades and status will be posted on WebCT
Course Introduction
www.jntuworld.com
www.jwjobs.net
1-3
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
1-4
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
1-5
www.jntuworld.com
Topics
Fundamental concepts of digital systems Binary codes and number systems Boolean algebra Simplification of switching equations Digital device characteristics (e.g., TTL, CMOS) and design considerations Combinatoric logical design including LSI implementation Hazards, Races, and time related issues in digital design Flip-flops and state memory elements Sequential logic analysis and design Synchronous vs. asynchronous design Counters, shift register circuits Memory and Programmable logic Minimization of sequential systems Introduction to Finite Automata
www.jntuworld.com
www.jwjobs.net
1-6
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
1-7
www.jntuworld.com
Todays Material
Fundamental concepts of digital systems (Mano Chapter 1) Binary codes, number systems, and arithmetic (Ch 1) Boolean algebra (Ch 2) Simplification of switching equations (Ch 3) Digital device characteristics (e.g., TTL, CMOS)/design considerations (Ch 10) Combinatoric logical design including LSI implementation (Chapter 4) Hazards, Races, and time related issues in digital design (Ch 9) Flip-flops and state memory elements (Ch 5) Sequential logic analysis and design (Ch 5) Synchronous vs. asynchronous design (Ch 9) Counters, shift register circuits (Ch 6) Memory and Programmable logic (Ch 7) Minimization of sequential systems Introduction to Finite Automata
www.jntuworld.com
www.jwjobs.net
1-8
www.jntuworld.com
Why Digital?
Analog computers were the standard for simulation in the 1940s and 50s:
v(t)
G1
dv G1 dt G2
d 2v G2 2 dt
G1
www.jntuworld.com
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004
d 2v dv +v G2 2 + G1 dt dt
1
Issues: precision, stability, accuracy, aging, noise, Manufacturing and testing are labor intensive processes
www.jwjobs.net
Copyright 2004 Stevens Institute of Technology All rights reserved 1-9
www.jntuworld.com
Why Digital?
Digital circuits have become the standard for computing, control, and many other applications
D Q
D Q
D Q
www.jntuworld.com
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004
Functions can be created with a small set of functional elements Designs are stable and repeatable Costs and size are rapidly dropping while speed and functionality increase
www.jwjobs.net
Copyright 2004 Stevens Institute of Technology All rights reserved 1-10
www.jntuworld.com
www.jntuworld.com
AND
OR
NOT
www.jwjobs.net
1-11
www.jntuworld.com
Rational numbers:
www.jntuworld.com
In general:
www.jwjobs.net
1-12
www.jntuworld.com
Rational numbers:
www.jntuworld.com
3.14125 = 3 50 + 1 51 + 4 52 + 1 53 + 2 54 = 3.371210
In general:
(an a1a0 a1 a m ) r = an r n + + a1 r1 + a0 r 0 + a1 r 1 + + a m r m
Radix point
ai {0,1, , r 1}
www.jwjobs.net
1-13
www.jntuworld.com
10112 = 1 23 + 0 22 + 1 21 + 1 20 = 1110
Rational numbers:
www.jntuworld.com
101.0112 = 1 22 + 0 21 + 1 20 + 0 21 + 1 22 + 1 23 = 5.37510
In general:
(an a1a0 a1 a m ) 2 = an 2n + + a1 21 + a0 20 + a1 21 + + a m 2 m
binary point
ai {0,1}
www.jwjobs.net
1-14
www.jntuworld.com
Numbers to Remember
22 = 42 = 82 = 16 2 = 32 2 = 64 2 = 128 2 = 256 2 = 512 2 = 1024 2 = 2048 2 = 4096 2 = 8192 2 = 16384 2 = 32768 2 = 65535
www.jntuworld.com
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004
www.jwjobs.net
1-15
www.jntuworld.com
Basic Arithmetic
Addition: 101001 +011011 1000100 Subtraction: 101000 -010110 010010
+ 0 1 0 0 1 1 1 0*
* carry
x 0 1
0 0 0
1 0 1
www.jntuworld.com
www.jwjobs.net
1-16
www.jntuworld.com
10112 = 1 23 + 0 22 + 1 21 + 1 20 = 1 8 + 0 4 + 1 2 + 1 1 = 8 + 2 +1 = 1110
An easier way:
www.jntuworld.com
10112 = 1 23 + 0 22 + 1 21 + 1 20 = = 1110
( ( (1) 2 + 0) 2 + 1) 2 + 1
www.jwjobs.net
1-17
www.jntuworld.com
87 8710 = 2i + ( 87 mod 2 ) = 2i43 + 1 2 43 4310 = 2i + ( 43mod 2 ) = 2i21 + 1 2 21 2110 = 2i + ( 21mod 2 ) = 2i10 + 1 2 10 1010 = 2i + (10 mod 2 ) = 2i5 + 0 2 5 510 = 2i + ( 5mod 2 ) = 2i2 + 1 2 2 210 = 2i + ( 2 mod 2 ) = 2i1 + 0 2 1 110 = 2i + (1mod 2 ) = 0 + 1 2
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004 Copyright 2004 Stevens Institute of Technology All rights reserved
www.jntuworld.com
8710 = 1 0 1 0 1 1 1
1-18
www.jwjobs.net
www.jntuworld.com
0.76510 = 0.110000111
= (.765 .5 ) + 1 i1 = 1 i2i.265 + 1 i1 = 2 2 2
1 1 = (.53 .5 ) + 1 1 = 2 .03 + i i i i1 = 2 2 2 1 2
1 2
i1 (.53) + 1 2
www.jntuworld.com
i1 (.06 ) + 1 2
i0 (.24 ) + 1 2 .2410 = 1 .48 ) + 1 i0 2( 2 i0 .4810 = 1 .96 ) + 1 2( 2 i1 .9610 = 1 .92 ) + 1 2( 2 .9210 = 1 .84 ) + 1 i1 2( 2 i1 .8410 = 1 .68 ) + 1 2( 2 .1210 =
1 2
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004
= (.06 ) + 1 i0 = 1 i2i.06 + 1 i0 = 2 2 2
1 2
i0 (.12 ) + 1 2
www.jwjobs.net
1-19
www.jntuworld.com
0 1 2 3 4 5 6 7 8 9
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
www.jntuworld.com
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004
www.jwjobs.net
1-20
www.jntuworld.com
Octal
1 2 3 4 5 6 7
Binary-Octal mapping:
www.jntuworld.com
www.jwjobs.net
1-21
www.jntuworld.com
Hexadecimal
1 2 3 4 5 6 7 8 9 A B C D E F
Binary-Hexadecimal Mapping
www.jntuworld.com
www.jwjobs.net
1-22
www.jntuworld.com
Complements
Subtracting by adding:
A B = A + ( B)
How can we create -B ?
www.jntuworld.com www.jwjobs.net
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004 Copyright 2004 Stevens Institute of Technology All rights reserved 1-23
www.jntuworld.com
Complements
Subtracting by adding:
A B = A + ( B)
How can we create -B ? If B is an integer and B < rN
www.jntuworld.com
1-24
www.jntuworld.com
B = 31415910 B = 68584010
10s Complement
B + B = 99999910
www.jntuworld.com
B = 31415910 B = 68584110
Subtraction 31416 -2718 28698
B + B = 100000010
www.jwjobs.net
1-25
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
1-26
www.jntuworld.com
www.jntuworld.com
Add use the MSB to represent +/Useful for multiplication, but not addition/subtraction
Signed 1s Complement 110010 Complement the bits Not particularly useful for arithmetic Signed 2s Complement 110011 Complement the bits and add 1 Most widely used means of dealing with signed arithmetic
www.jwjobs.net
1-27
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
1-28
www.jntuworld.com
www.jntuworld.com
Intermediate overflows can be tolerated, as long as the final result is within the range that can be represented
www.jwjobs.net
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004 Copyright 2004 Stevens Institute of Technology All rights reserved
1-29
www.jntuworld.com
4-bit Representation 0111 0110 0101 0100 0011 0010 0001 0000 1111 1110 1101 1100 1011 1010 1001 1000
Copyright 2004 Stevens Institute of Technology All rights reserved
8-bit Representation 0111 1111 0111 1110 0111 1101 ... ... 0000 0010 0000 0001 0000 0000 1111 1111 1111 1110 ... ... 1000 0011 1000 0010 1000 0001 1000 0000
1-30
www.jntuworld.com
www.jwjobs.net
www.jntuworld.com
Binary Codes
Hexadecimal or binary numbers are not easily translated into humanunderstandable forms, e.g.: How old is a person born in (0111 1101 0011)2? Is it any easier to understand as (7E3)16?
www.jntuworld.com www.jwjobs.net
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004 Copyright 2004 Stevens Institute of Technology All rights reserved 1-31
www.jntuworld.com
Binary Codes
Hexadecimal or binary numbers are not easily translated into humanunderstandable forms, e.g.: How old is a person born in (0111 1101 0011)2? Is it any easier to understand as (7E3)16? How about: (0010 0000 0000 0011)BCD = (0010)2x103 + (0000)2102 + (0000)2101 + (0011)2100
www.jntuworld.com
www.jwjobs.net
1-32
www.jntuworld.com
Binary Codes
Typical binary counting order: 0 000 1 001 2 010 Transitions in multiple bits may create systems issues: 3 011 Extra bit errors on 4 100 communications links 5 101 Noise pulses in digital 6 110 systems 7 111 0 000
www.jntuworld.com
www.jwjobs.net
1-33
www.jntuworld.com
Binary Codes
Typical binary counting order: 0 000 1 001 2 010 Transitions in multiple bits may create systems issues: 3 011 Extra bit errors on 4 100 communications links 5 101 Noise pulses in digital 6 110 systems 7 111 0 000 Gray code order: 0 000 1 001 2 011 3 010 Adjacent code words 4 110 differ in only one bit 5 111 position 6 7 0 101 100 000
www.jntuworld.com
www.jwjobs.net
1-34
www.jntuworld.com
Binary Codes
Errors sometimes occur as data is being stored or transmitted. How can we design a system that is capable of responding to this possibility? Consider: Correct value: 0101 1001 0011 Result: 0111 1001 0011
www.jntuworld.com
www.jwjobs.net
1-35
www.jntuworld.com
Binary Codes
Errors sometimes occur as data is being stored or transmitted. How can we design a system that is capable of responding to this possibility? Consider: Correct value: 0101 1001 0011 Result: 0111 1001 0011 Add redundancy bits which convey no information, but protect other bits Correct value: 0101 1001 0011 0 Even Parity - even number of 1s sent Result: 0111 1001 0011 0 Parity Error odd number of 1s received Parity can be even or odd. Parity detect a single error in a protected block
www.jntuworld.com
www.jwjobs.net
1-36
www.jntuworld.com
Combinatorial logic
NOT
www.jntuworld.com
OR AND
www.jwjobs.net
1-37
www.jntuworld.com
www.jntuworld.com
write
output
www.jwjobs.net
1-38
www.jntuworld.com
www.jntuworld.com
write
output
www.jwjobs.net
1-39
www.jntuworld.com
Binary Logic
All possible combinatorial logic systems can be implemented with three functions:
A B 0 1 0 1 D 0 1 0 1 AoB 0 0 0 1 CpD 0 1 1 1
0 1
0 0 0
1 0 1
0 0 1 1 C
www.jntuworld.com
+ 0 1
0 0 1
1 1 1
0 0 1 1
Truth Tables
E
E 1 0
www.jwjobs.net
NOT(E)
0 1
1-40
www.jntuworld.com
Logic Levels
www.jntuworld.com
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004
input Vin
0
Vin
www.jwjobs.net
1-41
www.jntuworld.com
Summary
Fundamental concepts of digital systems Binary codes, number systems, and arithmetic Boolean algebra Simplification of switching equations Digital device characteristics (e.g., TTL, CMOS)/design considerations Combinatoric logical design including LSI implementation Hazards, Races, and time related issues in digital design Flip-flops and state memory elements Sequential logic analysis and design Synchronous vs. asynchronous design Counters, shift register circuits Memory and Programmable logic Minimization of sequential systems Introduction to Finite Automata
www.jntuworld.com
www.jwjobs.net
1-42
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
CpE358/CS381 Switching Theory and Logical Design Summer-1 2004 Copyright 2004 Stevens Institute of Technology All rights reserved 1-43