Unformatted text preview: INTRODUCTION TO DIGITAL SYSTEMS Outline Description and design of digital systems Formal basis: switching algebra Implementation aspects: modules (ICs) and networks of modules Implementation of algorithms in \hardware" Course emphasis: concepts and methods Followon courses: { Digital Lab { Computer Architecture { Computer Architecture Lab { Digital Design  Advanced Topics
Introduction to Digital Systems 1 1 { Introduction INTRODUCTION Summary What is a digital system? How it di ers from an analog system? Why are digital systems important? Basic types of digital systems: combinational and sequential Speci cation and implementation of digital systems Analysis and design of digital systems Design process and CAD tools 2 Introduction to Digital Systems 1 { Introduction WHAT IS DIGITAL DIGITAL SYSTEMS { inputs and outputs: nite number of discrete values ANALOG SYSTEMS { inputs and output values from a continuous (in nite) set Example: digital vs. analog scale for measuring weights MAIN USE OF DIGITAL SYSTEMS: Information processing Transmission (communication) Storage Many forms of \information"
Introduction to Digital Systems 3 1 { Introduction System and signals
x,z x 4 S z z(t) x(t) (a) (b) t x,z
7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 t z(t) x(t) t x(t) z(t)
0 2 5 1 3 4 2 2 7 3 5 7 4 4 6 5 5 6 6 3 2 7 3 4 (c) (d) Figure 1.1: System S: a) Block diagram. b) Analog I/O signals. c) Digital I/O signals. d) I/O sequence pair. Introduction to Digital Systems 1 { Introduction WHY DIGITAL 5 1. Well suited for both numerical and nonnumerical information processing 2. Information processing can use a generalpurpose system (a computer) 3. Digital representation: { vector of signals with just two values (binary signals) Example: { All signals binary { Simple devices to process binary signals: (just switches with two states: open and closed).
Introduction to Digital Systems 1 { Introduction digit 0 1 2 3 4 5 6 7 8 9 vector 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 WHY DIGITAL (cont.) 6 4. Digital signals quite insensitive to variations of component parameter values
Signal Value
2 1 0 Time Figure 1.2: Separation of digital signal values. Introduction to Digital Systems 1 { Introduction WHY DIGITAL (cont.) 7 5. Numerical digital systems can be made more accurate by simply increasing the number of digits used in the representation. 6. Phenomenal advances of microelectronics technology: Possible to fabricate extremely complex digital systems, which are small, fast, and cheap Digital systems built as integrated circuits composed of a large number of very simple devices Introduction to Digital Systems 1 { Introduction WHY DIGITAL (cont.) 8 7. Di erent implementations of systems which tradeo speed and amount of hardware Example: { add two integers represented by six decimal digits
X5 Y5 X4 Y4 X3 Y3 X2 Y2 X1 Y1 X0 Y0 X5 Y5 X4 Y4 X3 Y3 X2 Y2 X1 Y1 X0 Y0 6Digit Adder OneDigit Adder (carry storage inside) Z5 Z4 Z3 (a) Z2 Z1 Z0 Z5 Z4 Z3 Z2 (b) Z1 Z0 Figure 1.3: Sixdigit adder: a) Parallel implementation. b) Serial implementation. Introduction to Digital Systems 1 { Introduction SUMMARY Digital representation and processing methods widely used Extraordinary progress in digital technology and use Indispensable in modern society New applications fueled by the development of computer technology 9 Knowledge about the design and use of digital systems required in a large variety of human activities. Introduction to Digital Systems 1 { Introduction Mixed analog/digital systems
Microphone AnalogtoDigital Converter ADC Signal Processing & Storage DigitaltoAnalog Converter DAC Speaker 10 ... 110110 110111 010110 101101... ... 011000 110101 110101 101101... Digital signals Analog signal (not too good)
(a) (Much better analog signal) Signal value Analog Digital
11 10 01 00 Time
00 01 01 10 01 11 11 11 11 10 01 Sequence of digital signals (b) Figure 1.4: a) A system with analog and digital signals. b) Analogtodigital conversion. Introduction to Digital Systems
1 { Introduction Combinational and sequential systems Digital systems  two classes: 11 Combinational systems z (t) = F (x(t)) { no memory, the output does not depend on previous inputs Sequential systems
x(0 t) z (t) = F (x(0 t)) : input sequence from time 0 to time t { z (t) depends also on previous inputs  the system has memory Introduction to Digital Systems 1 { Introduction Combinational and sequential system 12 x z
Time x z
Time t
(a) t
(b) Figure 1.5: Inputoutput functions for: a) Combinational system b) Sequential system. Introduction to Digital Systems 1 { Introduction Example 1.1: Sequential System Input x with values 0,1, or 2 Output z with values 0 or 1 13 8 > 1 if (x(0) x(1) : : : x(t)) > > < z (t) = > even 2 s and odd 1 s > 0 otherwise :
0 0 has An inputoutput pair:
t x z 0 1 2 3 4 5 6 7 8 9 10 11 1 2 2 0 1 2 0 0 0 2 1 1 1 0 1 1 0 0 0 0 0 0 1 0 Introduction to Digital Systems 1 { Introduction Example 1.2: Combinational System Input x(t) with values from the set of letters (upper and lower case) Input y(t) with values 0 and 1 The function: { change x(t) to opposite case when y(t) = 1 { leave it unchanged when y(t) = 0 An inputoutput pair:
t x y z 14 0 E 0 E 1 X 1 x 2 A 0 A 3 M 0 M 4 P 0 P 5 L 1 l 6 E 0 E Introduction to Digital Systems 1 { Introduction Speci cation and implementation. Analysis and design.
Specification (Function and other characteristics) 15 Analysis Design Implementation (Network of modules)
Figure 1.6: Relationship among system speci cation and implementation. Introduction to Digital Systems 1 { Introduction Speci cation and implementation (cont.) 16 The speci cation of a system describes its function. Objective: to use the system as a component in more complex systems and to serve as the basis for the implementation of the system by a network of simpler components. Introduction to Digital Systems 1 { Introduction Speci cation Levels highlevel binarylevel algorithmiclevel Spec. of combinational systems: Chapter 2 Spec. of sequential systems: Chapter 7 Spec. of algorithmic systems: Chapter 13 17 Introduction to Digital Systems 1 { Introduction Implementation 18 As a digital network { interconnection of modules Several levels depending on the complexity of the primitive modules { from very simple gates to complex processors Need for hierarchical implementation Physical level: interconnection of electronic elements such as transistors, resistors, and so on (Chapter 3). Implementation of combinational systems { at the gate level: Chapters 5 and 6 { at the module level: Chapters 9, 10, and 12 Implementation of sequential systems { elementary: Chapter 8 { more complex: Chapters 11 and 12 Implementation of algorithmic systems: Chapters 1315
Introduction to Digital Systems 1 { Introduction 19 Level: System Top level Modules Gates and flipflops Transistors
A B C D Bottom level A B C D (a) (b) Figure 1.7: Hierarchical implementation: a) Topdown approach. b) Bottomup approach. Introduction to Digital Systems 1 { Introduction Structured analysis and design 20 Analysis: * get speci cation from an implementation Design: * obtain an implementation that satis es the speci cation Use of multilevel approach necessary The topdown and bottomup approaches A combination of the two approaches Introduction to Digital Systems 1 { Introduction Levels of an implementation: module, logical, physical Example:
Z (t) 21 = Pt
i =0 X (i)
Logical (gate and flipflop) level Module level Input X(i) Clock
clk xin Clock FlipFlop Registers RX
xreg RY
yreg Gates Adder ADD
addout z Output Z (a) +5V (b) Physical (transistor) level Transistor
(c) Figure 1.8: Digital system: a) module level b) logical level and c) physical level. Introduction to Digital Systems 1 { Introduction ComputerAided Design Tools Design of digital systems an involved and laborious process Various computeraided design (CAD) tools available Main types of CAD tools support the main phases of digital design: (i) description (speci cation), 22 (ii) design (synthesis) including various optimizations to reduce cost and improve performance, and (iii) checking of the design with respect to its speci cation. The design phases typically require several passes Introduction to Digital Systems 1 { Introduction CAD (cont.) 23 Description of digital systems for design purposes
{ At a highlevel, use hardwaredescription language (HDL) { At the binary level, use HDLs to describe the system structure { Editors used to produce HDL programs { Graphical forms  logic diagrams also used for structure Introduction to Digital Systems 1 { Introduction vhdl description 24 USE WORK.ALL ENTITY sample_system IS PORT (xin: IN BIT_VECTOR z : OUT BIT_VECTOR clk: IN BIT ) END sample_system ARCHITECTURE structural OF sample_system IS SIGNAL xreg, yreg, addout: BIT_VECTOR(7 DOWNTO 0) BEGIN RX: ENTITY BitReg8 PORT MAP(xin,xreg,clk) RY: ENTITY BitReg8 PORT MAP(addout,yreg,clk) ADD: ENTITY Adder PORT MAP(xreg,yreg,addout) z <= addout END structural Figure 1.9: vhdlbased description of a system. Introduction to Digital Systems 1 { Introduction CAD (cont.) 25 Synthesis and optimization { Semiautomated Simulation tools generate behavior of a system for given input
{ Logic simulation { Timing simulation Introduction to Digital Systems 1 { Introduction ...
View
Full Document
 Fall '07
 ERCEGOVAC
 Digital Signal Processing, Algorithms

Click to edit the document details