Documente Academic
Documente Profesional
Documente Cultură
Chapter 1: Introduction
1 2 3 4
2
digital
signal
analog
signal
Possible values: Possible values:
1.00, 1.01, 2.0000009, 4
value
value
0, 1, 2, 3, or 4.
... infinite possibilities 3 That’s it.
2
1
0
time time
Digital Design
Copyright © 2007 3
Frank Vahid
Digital Signals with Only Two Values: Binary
• Binary digital signal -- only two
possible values
value
– Typically represented as 0 and 1
– One binary digit is a bit
1
– We’ll only consider binary digital signals 0
– Binary is popular because time
• Transistors, the basic digital electric
component, operate using two voltages
(more in Chpt. 2)
• Storing/transmitting one of two values is
easier than three or more (e.g., loud beep
or quiet beep, reflection or no reflection)
Digital Design
Copyright © 2007 4
Frank Vahid
Example of Digitization Benefit
• Analog signal (e.g., audio)
lengthy transmission
Volts
lengthy transmission
particular rate, save
3
3 V: “11” but higher sampling
rate and more bits per 2
Digital Design
encoding brings closer. 1
Copyright © 2007 0 time 5
Frank Vahid
Digitized Audio: Compression Benefit
• Digitized audio can be Example compression scheme:
compressed 00 --> 0000000000
01 --> 1111111111
– e.g., MP3s 1X --> X
– A CD can hold about 20
songs uncompressed, 0000000000 0000000000 0000001111 1111111111
but about 200
compressed 00 00 10000001111 01
Question:
What does this ASCII bit sequence represent?
1010010 1000101 1010011 1010100
REST
Digital Design
Copyright © 2007 Note: small red “a” (a) in a slide indicates animation 8
Frank Vahid
How to Encode Numbers: Binary Numbers
• Each position represents a
quantity; symbol in position
means how many of that
quantity
5 2 3
– Base ten (decimal)
104 103 102 101 100
• Ten symbols: 0, 1, 2, ..., 8, and 9
• More than 9 -- next position
– So each position power of 10
• Nothing special about base 10 --
used because we have 10
fingers
1 0 1 Q: How much?
– Base two (binary)
• Two symbols: 0 and 1 24 23 22 21 20 + =
a
• More than 1 -- next position
– So each position power of 2 4+ 1= 5
Digital Design
Copyright © 2007 9
Frank Vahid
How to Encode Numbers: Binary Numbers
• Working with binary numbers
– In base ten, helps to know
powers of 10 29 28 27 26 25 24 23 22 21 20
• one, ten, hundred, thousand, ten
thousand, ... 512 256 128 64 32 16 8 4 2 1
– In base two, helps to know
powers of 2
• one, two, four, eight, sixteen,
thirty two, sixty four, one
hundred twenty eight
– (Note: unlike base ten, we don’t
have common names, like
“thousand,” for each position in
base ten -- so we use the base
ten name)
• Q: count up by powers of two 512 256 128 64 32 16 8 4 2 1 a
Digital Design
Copyright © 2007 10
Frank Vahid
Converting from Decimal to Binary Numbers:
Subtraction Method (Easy for Humans)
• Goal Desired decimal number: 12
– Get the binary weights to add up
to the decimal quantity 32 16 8 4 2 1
• Work from left to right 1 =32
too much
• (Right to left – may fill in 1s that 32 16 8 4 2 1
shouldn’t have been there – try it). =16
0 1
32 16 8 4 2 1 too much
a
0 0 1 =8
32 16 8 4 2 1 ok, keep going
0 0 1 1 =8+4=12
32 16 8 4 2 1 DONE
0 0 1 1 0 0 answer
32 16 8 4 2 1
Digital Design
Copyright © 2007 11
Frank Vahid
Converting from Decimal to Binary Numbers:
Subtraction Method (Easy for Humans)
• Subtraction method Remaining quantity: 12
– To make the job easier (especially
for big numbers), we can just 32 16 8 4 2 1
subtract a selected binary weight 1 32 is
from the (remaining) quantity too much
32 16 8 4 2 1
• Then, we have a new remaining 16 is
0 1
quantity, and we start again (from 32 16 8 4 2 1
too much
the present binary position) a
0 0 1 1 4-4=0
32 16 8 4 2 1 DONE
0 0 1 1 0 0 answer
32 16 8 4 2 1
Digital Design
Copyright © 2007 12
Frank Vahid
Converting from Decimal to Binary Numbers:
Subtraction Method Example
• Q: Convert the number “23” from decimal to binary
A: Remaining quantity Binary Number
23 0 0 0 0 0 0
32 16 8 4 2 1
23 0 1 0 0 0 0
-16 32 16 8 4 2 1
a
7
7 0 1 0 1 0 0
-4 32 16 8 4 2 1
3 8 is more than 7, can’t use
4 0 1 0 1 1 0
-2 32 16 8 4 2 1
1
1 0 1 0 1 1 1
-1 32 16 8 4 2 1
Digital Design 0
Copyright © 2007 Done! 23 in decimal is 10111 in binary. 13
Frank Vahid
Converting from Decimal to Binary Numbers:
Division Method (Good for Computers)
• Divide decimal number by 2 and insert remainder into new binary
number.
– Continue dividing quotient by 2 until the quotient is 0.
• Example: Convert decimal number 12 to binary
Decimal Number Binary Number
6
2 12 divide by 2 0
-12 1
0
insert remainder
Digital Design
Copyright © 2007 15
Frank Vahid
Base Sixteen: Another Base Sometimes Used by
Digital Designers
8 A F • Nice because each position
16 4 16 3 16 2 16 1 16 0 represents four base two positions
8 A F – Used as compact means to write
1000 1010 1111
binary numbers
Digital Design
Copyright © 2007 16
Frank Vahid
Implementing Digital Systems: Programming
1.3
I0 P0 void main() 1
ro I1 P1 { a
0
I2 P2 while (1) { 1
I3 P3 P0 = I0 && !I1; b
I4 P4 0
I5 P5 // F = a and !b, 1
} F
I6 P6 0
I7 P7 }
6:00 7:05 7:06 9:00 9:01 time
Digital Design
Copyright © 2007 17
Frank Vahid
Digital Design: When Microprocessors Aren’t Good
Enough
• With microprocessors so easy, Q: How long for each
cheap, and available, why Image Sensor Micro- implementation option?
processor
design a digital circuit?
– Microprocessor may be too (a) (Read,
Compress,
5+8+11
slow Memory and Store) =24 sec
– Or too big, power hungry, or
costly Image Sensor Read Compress
circuit circuit
.1+.5+.8
Sample digital camera task execution times (in seconds) on
a microprocessor versus a digital circuit: (b) =1.4 sec
Store a
Memory
circuit
Digital Design
Copyright © 2007 19
Frank Vahid