Download Dept. of Electrical Engineering, Sogang University

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
Transcript
VLSI Algorithm &
Computing Structures
Chapter 1. Introduction to DSP Systems
Younglok Kim
Dept. of Electrical Engineering
Sogang University
Spring 2007
1
What will be covered in this course?




DSP architectures & structures for high
performance VLSI design
Methodologies needed to design custom or semicustom VLSI circuits
NOT actual VLSI circuit or layout design
Focus on design of efficient architectures for




Less area for smaller chip size
Less power consumption for longer battery lifetime
Higher speed for real time processing
Lower round-off noise
Dept. of Electrical Engineering, Sogang University
2
DSP Applications













Video compression
Digital set-top box
Cable modems
Portable video systems/computers
Digital audio/radio
Wireless communication
Digital still camera
Speech processing
GPS (global positioning systems)
Radar imaging
Acoustic beamformer
Biomedical signal processing
Etc
Dept. of Electrical Engineering, Sogang University
3
DSP Architecture Examples

For a speech applications,




Low sampling rate
Low speed requirement
Prefer time-multiplexed architecture
For a video applications,


10~100 giga operations per second
One-to-one mapping of algorithm operations and
processors
Dept. of Electrical Engineering, Sogang University
4
What to do for this class?

Understanding the topics covered in the
classroom



Read book, papers or other material if needed.
Solve the problems at the end of each chapter.
Verify the DSP algorithm




MatLab/C simulations
DSP
HDL
etc
Dept. of Electrical Engineering, Sogang University
5
Class Materials

Main Textbook
VLSI Digital Signal Processing Systems, Keshab K. Parhi,
John Wiley & Sons, Inc. 1999


Lecture notes
Papers and Materials will be recommended in the
class
Dept. of Electrical Engineering, Sogang University
6
Organization of Textbook

Part I: High-level architectural transformations

Part II: High-level algorithm transformations

Part III: VLSI architecture of arithmetic
operations
Dept. of Electrical Engineering, Sogang University
7
High-level architectural transformations

Iteration bound (ch.2)

Pipelining and Parallel Processing (ch.3)

Retiming techniques (ch4)

Unfolding (ch.5)

Folding (ch.6)

Systolic array design methodology (ch.7)
Dept. of Electrical Engineering, Sogang University
8
High-level algorithm transformations

Fast Convolution (ch.8)

Strength reduction (ch.9)

Look ahead and Relaxed look ahead (ch.10)

Scaling and round-off noise (ch.11)

Digital Lattice filter structures (ch.12)
Dept. of Electrical Engineering, Sogang University
9
VLSI architecture of arithmetic operations

Addition, multiplication and digital filters (ch.13)

Redundant arithmetic (ch.14)

Numerical strength reduction (ch.15)

Synchronous and Asynchronous pipelines (ch.16)

Low-power design (ch.17)

Architectures for programmable digital signal
processors (ch.18)
Dept. of Electrical Engineering, Sogang University
10
Chapter 1
Introduction to DSP Systems
11
What is Digital Signal?

A sequence of numbers having finite precision
Sampler
Analog
signal
Quantizer
Discrete-Time
signal
Dept. of Electrical Engineering, Sogang University
Coder
Binary
digital
signal
Quantized signal
Discrete-time
Discrete-valued signal
12
Performance Measurements of Digital Design

Amount of hardware circuitry and resources


Execution speed



Space or area
Depends on both throughput and clock rate
Amount of power dissipation
Finite word length performance for fixed-point
DSP systems

Quantization error or round-off noise
Dept. of Electrical Engineering, Sogang University
13
Features of Digital Signal Processing
over General Computations

Real time throughput requirement


Throughput needs to meet sample rate requirement
Data driven property

Enable the use of asynchronous systems
Dept. of Electrical Engineering, Sogang University
14
Overview of Typical DSP algorithms




Convolution
Correlation
Digital Filters
Adaptive Filters








LMS adaptive filters
Stochastic-Gradient adaptive lattice filter
Motion Estimation
Discrete Cosine Transform (DCT)
Vector Quantization
Viterbi Algorithm and Dynamic Programming
Decimator and Expander
Wavelets and Filter Banks
Dept. of Electrical Engineering, Sogang University
15
Some Definitions For DSP Algorithms

Non-terminating programs


Iteration


Execution of all the computations in the algorithm
once
Iteration period


Execute repetitively
Execution time of one iteration
Iteration rate

Reciprocal of the iteration period
Dept. of Electrical Engineering, Sogang University
16
Some Definitions For DSP Systems

Sampling rate


Path


Proportional to the computation time
Critical path for combinational logic circuit


Number of samples processed per second
Longest path between inputs and outputs
Critical path for sequential circuits

Longest path between any two storage (delay)
elements
Dept. of Electrical Engineering, Sogang University
17
Some Definitions For DSP Systems …

Critical path computation time determines


Minimum feasible clock period of DSP systems
Latency


Difference between the time an output generated and
the time at which its corresponding input was received
by the system
Latency representations
 Absolute time units, or the number of gate delays,
for combinational logic circuit systems.
 Number of clock cycle for the sequential systems.
Dept. of Electrical Engineering, Sogang University
18
3-Tap FIR Filter Example
y(n)  b0 x(n)  b1 x(n  1)  b2 x(n  2)
for

Each iteration generates one output sample with




n 1 
One input signal
3 multiplication operations (in parallel or serial)
2 addition operations
Latency dependent on the architectures
Dept. of Electrical Engineering, Sogang University
19
Various Representations of DSP Systems

DSP Algorithm Descriptions

Behavioral Descriptions

Graphical Representations
Dept. of Electrical Engineering, Sogang University
20
DSP algorithm descriptions

Mathematical formulations



Specify functionality of DSP algorithm
Does not specify the order & structure of the internal
operations
Behavioral description languages or graphical
representations for architectural design
Dept. of Electrical Engineering, Sogang University
21
Behavioral Descriptions

Applicative languages



Prescriptive languages



A set of equations
Silage language
Specify the order of the assignment statements
Pascal, C or Fortran
Descriptive languages


Represents the structure of DSP system
Verilog HDL or VHDL
Dept. of Electrical Engineering, Sogang University
22
Graphical Representations

Efficient for investigating and analyzing data flow
properties

Efficient for exploiting the inherent parallelism
among different subtasks

Easy mapping DSP algorithm descriptions to
hardware structural implementations

Provide technology-independent architecture
Dept. of Electrical Engineering, Sogang University
23
Various graphical representations

Block Diagram

Signal Flow Graph

Data Flow Graph

Dependence Graph
Dept. of Electrical Engineering, Sogang University
24
Block Diagram


Captures the exact functionality of a system
Consist of



Functional block
Directed edges
 Represents data flow from its input block to output
block
 Contains non-negative delay element
Various block diagrams can be derived for the
same system with different realizations of the
same functionality
Dept. of Electrical Engineering, Sogang University
25
Block Diagram of 3-Tap FIR Filter
y(n)  b0 x(n)  b1 x(n  1)  b2 x(n  2)
x(n)
D
Unit Delay
D
x(n)
b0
b1
D
x(n-1)
b2
y(n)
Dept. of Electrical Engineering, Sogang University
26
Data-broadcast FIR filter
x(n)
b2
b1
D
Dept. of Electrical Engineering, Sogang University
b0
D
y(n)
27
Signal Flow Graph

Node




Directed edge


Computations of tasks, ex: multipliers or adders
Source node: node with no entering node
Sink node: node with only entering node
Denotes the linear transformation from the signal at
originating node to the signal at terminating node
Cannot be used to describe multi-rate DSP
systems
Dept. of Electrical Engineering, Sogang University
28
SFG of 3-Tap FIR Filter
y(n)  b0 x(n)  b1 x(n  1)  b2 x(n  2)
z-1
x(n)
source
node
b0
z-1
b1
b2
y(n)
sink node
Dept. of Electrical Engineering, Sogang University
29
Transposition of SFG
z-1
z-1
y(n)
b0
b1
b2
x(n)

SFG reversal (transposition) is only applicable to



Linear networks
Single input single output (SISO) systems
Multi-input multi-output (MIMO) systems described by
symmetric transformation matrices
Dept. of Electrical Engineering, Sogang University
30
Data-flow graphs (DFG)


Generally used for high-level synthesis to derive
concurrent implementations of DSP applications
onto parallel hardware
Node


Computation or Function
Directed edge


Data path, communication between nodes
Contains non-negative number of delays
Dept. of Electrical Engineering, Sogang University
31
BD & DFG Of Recursive Algorithm
y (n)  ay (n  1)  x(n)
x(n)
y(n)
D
a
1
(2)
D
A
1
1
B
1
A: addition
B: multiplication
(n): execution time in
terms of normalized time
unit (u.t.; units of time)
(4)
Dept. of Electrical Engineering, Sogang University
32
Data-Driven Property of DFG

Precedence constraint



Intra-precedence constraint


The edge has zero delay
Inter-precedence constraint


Node fires whenever all the input data are available
A node with multiple input edges can only fire after all
its precedent nodes have fired
The edge has one or more delays
Major concerns


Subtask scheduling
Resource allocation
Dept. of Electrical Engineering, Sogang University
33
Synchronous DFG (SDFG)


The number of data samples produced or
consumed by each node in each execution is
specified a priori
Single-rate SDFG example
1
(2)
D
A
1
1
B
1
Dept. of Electrical Engineering, Sogang University
(4)
34
SDFG of multi-rate DFGs
A0
B0
A1
A2
C0
Multi-rate
Non-Synchronous DFG
B1
C1
A3
B2
A4
Multi-rate DFG
1
A
3
Dept. of Electrical Engineering, Sogang University
5
B
2
3
C
2
35
Processing Rate of Multi-Rate SDFG
1


A
3
5
B
2
3
C
2
Frequency of each node
= number of invocations of each node per iteration
A, B, C are operated at different frequencies


A processes fA input samples per time unit
Produce 3fA output samples per time unit
3 f A  5 fB
fB  3 f A / 5
fC  2 f B / 3  2 f A / 5
Dept. of Electrical Engineering, Sogang University
36
Dependence Graph (DG)

Shows the dependence of the computations
Used for systolic array design

Node



Computation
Edge

Precedence constraint among nodes
Dept. of Electrical Engineering, Sogang University
37
2D DG OF FIR Filter
0
0
0
0
b2
0
Processing Element (PE)
b1
y
0
b0
x'
b
y0
x0
y1
x1
y2
x2
b'
b'=b
x'=x
y'=y+bx
y3
x3
Dept. of Electrical Engineering, Sogang University
x
y'
38
Differences between DFG & DG

DFG




Shows only one iteration
Contains delay elements
Iterations are executed repetitively
DG



Shows all iterations
No delay elements
A node is NEVER reused
Dept. of Electrical Engineering, Sogang University
39