Professional Documents
Culture Documents
3 - Modeling of Digital Systems
3 - Modeling of Digital Systems
3 - Modeling of Digital Systems
Dr Cesar Ortega-Sanchez
Problem
Idea
Specification
Implementation
What is a model?
Give me some definitions
Description
Formal (no
ambiguity)
Understandable
Natural
Abstraction
Blocks and
relationships
Representation
Easy to use
Complete (describes
the entire system)
Tool for designers
Simplification of
something complex
Easy to
modify
Drawings:
Plans, Schematics
State machines
Moore
Mealy
11/Out5
11
10
10
11
S1
Out 1
01
10/Out2
S2
Out 2
S1
10/Out6
11/Out3
10
01
11
S3
Out 3
S3
01
01/Out4
S2
Equations
Graphs
Programs
Virtual machines
Models in Electronics
Behavioural Models
Behavioural models give little detail and concentrate
more on the overall function of the system.
Consist of code that represents the behaviour of the
HW without respect to its actual implementation.
Dont include timing numbers.
Behavioural models can be
product
Structural Models
Give details of the actual
HW implementation.
Consist of objects that
represent specific pieces of
hardware.
Can take the form of
schematic diagrams or HDL
programs.
Can give details at Register
Transfer Level (RTL), Gate
Level or Switch Level.
if (b[count]) begin
product <= (product << 1) + a;
end
else begin
product <= product << 1;
end
Pseudo code
Summarising
Algorithmic
According to
the level of
implementation
detail they
provide models
can be
Behavioural
Architectural
Gate level
Switch level
State 2
Action 1
Action 2
Transition
Controller Architecture
Is a straightforward implementation of the FSM model.
Clock
Inputs
Next
state
logic
State
Register
State signals
Output
logic
Outputs
x a b
2
b
t1
square
square
t3
t4
t2
add
sqrt
Dataflow Graphs
Asynchrony principle: All operations are executed
when and only when the required operands are
available.
Functionality principle: All operations behave as
functions which do not have any side effects, i.e.
any two operations can be executed in either order
or concurrently.
Real systems usually feature control and
computation, hence dataflow graphs are combined
with FSM to represent them.
Datapath Architecture
Can be used for implementing DFGs.
Useful when a fixed computation must be performed
repeatedly on different sets of data (DSP systems).
Consists of high-speed arithmetic units, connected in
parallel and heavily pipelined in order to achieve a high
throughput.
A computation is divided into pipeline stages of equal
length and the values between the stages are stored in
registers controlled by a common clock.
FIR filter
For N = 4
x(i)
x(i-1)
b(0)
x(i-2)
b(1)
b(2)
*
+
x(i-3)
b(3)
*
registers
+
y(i)
*
+
Pipeline
stages
FIR filter
x(i)
x(i-1)
b(0)
x(i-2)
b(1)
x(i-3)
b(2)
b(3)
Question:
Pipeline stages
y(i)
In real life
We design using a top-down approach starting with a
general view of the system (block diagram) and going
down to the details.
Suggested Activities
Think of your own definitions for model and architecture
and be ready to defend them.