Вы находитесь на странице: 1из 36

EDA Introduction

Professor: Sci.D., Prof.


Vazgen Melikyan

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
1 Developed By: Vazgen Melikyan
Course Overview

 Introduction
 1 lecture
 IC Design Data Formats and Tools
 4 lectures
 Electronic Design Methodology
 4 lectures
 IC Synthesis
 2 lectures
 Databases for EDA
 3 lectures
 IC Design Approaches and Flows
 3 lectures
 EDA Tools
 3 lectures
 Overview of Synopsys EDA Tools
 3 lectures

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
2 Developed By: Vazgen Melikyan
Electronic Design
Methodology

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
3 Developed By: Vazgen Melikyan
Design Levels
IC as a large system
IC (system)
M - level
Block 1

Functional
IP
RAM
(M-1) - level
devices
Block 2
Block 3
Blocks
(M-2) - level
Functional
nodes
(M-3) - level
Elements
(transistor)
0 - level

ί –th level(ί+1) level


2-Input NAND Gate
ί-th level (ί-1) level
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
4 Developed By: Vazgen Melikyan
Design Levels (2)

System

Add
Accumulator Register-Transfer
Input
Command Register
+1
Command Counter

& &
1
Gate
J TT
C
K

Circuit

Device
n+

p
n +

n
+
p

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
5 Developed By: Vazgen Melikyan
Design Levels (3)

Example of Modeling Mathematical


Level Modeling Object
Object Apparatus

System Structural circuit RAM bus CPU Queuing theory

Add
Accumulator
Functional circuits on
Input
Register-Transfer the level of multibit
Command Register
devices
+1
Command Counter Boolean algebra

Circuit on the level of


Gate
gates and flip-flops J

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
6 Developed By: Vazgen Melikyan
Design Levels (4)

Example of Modeling Mathematical


Level Modeling Object
Object Apparatus

System of differential
Circuit Electrical circuit
equations

n+

p+ System of differential
Device IC components n equations with partial
n+ derivative
p

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
7 Developed By: Vazgen Melikyan
Problems Solved in One Level of
Design
Transition into less detailed circuit design

Structural Synthesis
Structural
optimization
Parametrical Synthesis
Parametrical
optimization
Simulation

no
Are the operational
conditions met?

yes
Transition into more detailed circuit design

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
8 Developed By: Vazgen Melikyan
Overview of IC Simulation

Description of
circuit

Simulation
program Results

Simulation deck

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
9 Developed By: Vazgen Melikyan
Strategy of Design Process
1. Linear
Start 1st phase 2nd phase Nth phase End

Dependent Independent

2. Cyclic 3. Independent
2
1 2 i N
1 3 5

4
 The result of some i-th phase does
not meet the requirements and there More than one design problem
is need to return to the previous phases

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
10 Developed By: Vazgen Melikyan
Strategy of Design Process (2)
4. Adaptive
What to do What to do
1st phase 2nd phase
in the 1st phase? in the 2nd phase?

 The action of each subsequent phase is planned from the outcome of the previous
phase.
5. Strategy of increases

Result estimation Small increase Result change

 Cautious strategy
6. Random search
Selection of random
Result estimation
“points”

 Convenient for designs with large uncertainty.

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
11 Developed By: Vazgen Melikyan
Design as a Synthesis Problem

a1
A
Worse parameters can be
obtained from A structure
b1
which is better than B.
a2
B

b2

Conceptual Structural Parametrical


synthesis synthesis synthesis

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
12 Developed By: Vazgen Melikyan
Synthesis
b-view s-view
Architectural Level

PC = PC + 1; // increment the Program Counter
FETCH(PC); // fetch next instruction
DECODE(INST); // decode the instruction

Logic Level

Technology mapping

Geometrical Level

Physical design

p-view
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
13 Developed By: Vazgen Melikyan
Optimization

 Area (extensive)
 Performance (intensive)
 Power
 Delay
 Cycle-time
 …

Example: Optimize circuit area under delay constrains.

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
14 Developed By: Vazgen Melikyan
Design Phases and Automation
Problems
T,V
V-amount of design works
(data amount)

T-degree of design solution effects on


technical-economic characteristic of the
T designed object

Spec Initial Technical Working Design phases


project project project

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
15 Developed By: Vazgen Melikyan
IC as a Design Object
X1 Internal parameters - X 1 x 1i ; i  1, n 1 
3 External parameters - Z z ;i i  1, k 
x1max
Output parameters - Y i i  1, m  y ;
1 Input parameters - X  X1  Z
x1pmax Mathematical model
x1o

x1pmin
2 Y  FX  ; X x ;
i i  1, n 
y 1  f 1 x 1 ,  , x n  
y 2  f 2 x 1 ,  , x n  

x1min
 
 
y m  f m x 1 ,  , x n 
X2

x2min x2pmin x2o x2pmax x2max
Efficiency function
y   extr
1. Set of possible variants
Optimization criteria
Fx10 , x 20   extr
2. Set of permissible variants
3. Optimal variant
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
16 Developed By: Vazgen Melikyan
Design Hierarchy
U1
A
1 2 U3
B  Block-hierarchic approach of
V1
V2
design is based on the hierarchy
3 V5
U2
V3
Z1
of mathematical models.
V4
4 5

Z2
C  Model classification according to
description depth:
Full mathematical model of block A  Micromodel
f1(U1, V1)=0;  Macromodel
f2(U3, V5)=0;  Metamodel
F(UA,ZA,VA)=0

f5(V4, V5, Z1)=0.


 Concept of “system” and “element”
Full mathematical model of a system
is used in each level.
F(U,Z)=0
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
17 Developed By: Vazgen Melikyan
Classification of EDA Mathematical
Models
 A mathematical model of a technical object is a
group of mathematical objects (numbers,
variables, sets, matrixes, etc) and the relation
between them which adequately reflects those
properties of an object the designer is interested
in. EDA mathematical methods are classified
according to:
 Description depth
 Presentation form
 Description level
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
18 Developed By: Vazgen Melikyan
Classification of EDA Mathematical
Models (2)
 According to description depth:
 Micromodel
 Describes physical processes in solid environment
 Equations of mathematical physics are used with partial derivative
differential equations (electrical potential field and thermal field in a
semiconductor crystal, etc.)
 Macromodel
 Describes physical processes in solid environment
 Common differential equations and algebraic equations are used
 Metamodel
 Describes information processes occurring in the designed object
 Mathematical logic theory, mass service theory, etc. are used
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
19 Developed By: Vazgen Melikyan
Classification of EDA Mathematical
Models (3)
 According to presentation form:
 Analytical
 The connection of I/O parameters is presented in the form of
absolute analytical function
 Algorithmical and imitational
 Presented in the form of a solution algorithm
 Graphical
 Presented in schematic graphical form

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
20 Developed By: Vazgen Melikyan
Classification of EDA Mathematical
Models (4)
 According to description level:
 Functional (conceptual)
 Describe functioning processes of an object
 Represent equations system
 Structural
 Describe object structure
 Parametrical
 Describe parametrical values of structural elements of an
object

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
21 Developed By: Vazgen Melikyan
Requirements to EDA Mathematical
Models
 Adequacy
 Ability to describe object properties by permissible accuracy
 Universality
 Form and number of considered parameters
 Economic management
 Necessary expenses for use

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
22 Developed By: Vazgen Melikyan
Accuracy of Mathematical Models

 Defined by the value of coincidence degree of object-


model parameters.

( y j ) absolute deviation of output parameter y j  ~


yj  yj

~y yj 
(~ j 
j
y j ) relative deviation of output parameter
yj
m
Model accuracy for m parameter  M  max  j or  M   2
j
j1
j1, m

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
23 Developed By: Vazgen Melikyan
Abstraction Levels

Tool examples

Architecture System Studio


& Behavioral
Register Transfer VCS
– Verilog/VHDL

Logic Design Compiler

Switch Level HSPICE

Circuit (Transistors) HSPICE

Layout and Test Patterns IC Compiler / IC Compiler II

Fabrication Line Proteus

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
24 Developed By: Vazgen Melikyan
Decomposition

 Conventionally, decompose into phases


 Scheduling, assignment - RTL
 Retiming, sequential optimization - logic equations
 Logic optimization, covering - gates
 Placement - placed gates
 Routing - mapped design
 Good abstraction, manage complexity

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
25 Developed By: Vazgen Melikyan
Decomposition (2)

 Easier to solve
 Only worry about one problem at a time
 Less computational work
 Smaller problem size
 Abstraction hides important objectives
 Solving 2 problems optimally in a sequence often does not give
optimal result of simultaneous solution
 Two important things to get back to
 Disentangling problems
 Coping with NP-hardness
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
26 Developed By: Vazgen Melikyan
Decomposition (3)

 Scheduling
 Logic optimization
 Covering / gate-mapping
 Partitioning
 Placement
 Routing
 Selection of composition
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
27 Developed By: Vazgen Melikyan
Costs

 Once semantics is obtained (preserved), try to


minimize the implementation cost
 Otherwise this would be trivial
 None of the problems would be NP-hard
 EDA typical costs
 Energy
 Delay
 Area
 Future: add yield (robustness) to defects/faults

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
28 Developed By: Vazgen Melikyan
Costs (2)

 Behave differently under transformations


 Lead to tradeoffs among them
 Different optimality/hardness
 E.g. optimally solve delay covering in poly time, but
not area mapping

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
29 Developed By: Vazgen Melikyan
Costs (3)

 Cannot solve a problem of independent costs


 Costs define what is “optimal”
 e.g.
(A+B)+C vs. A+(B+C)
[cost=pob. gate output is high]
A,B,C independent
P(A)=P(B)=0.5,P(C)=0.01
P(A)=0.1, P(B)=P(C)=0.5

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
30 Developed By: Vazgen Melikyan
Costs Simplify Problem

 Often one cost dominates


 Allows/supports decomposition
 Cost of other affects negligible
 Total solution cannot be far from optimal
 e.g. delay (area) in gates, delay (area) in wires
 Require: formulate problem around relative costs
 Simplify problem at cost of generality

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
31 Developed By: Vazgen Melikyan
Coping with NP-Hard Problems

 Simpler sub-problem based on dominate cost


or special problem structure
 Problems exhibit structure
 Optimal solutions found in reasonable time in practice
 Approximation algorithms
 Heuristic solutions
 High density of good/reasonable solutions

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
32 Developed By: Vazgen Melikyan
Not a Solved Problem

 NP-hard problems
 Almost always solved in suboptimal manner
 For particular special cases
 Decomposed in suboptimal ways
 Quality of solution changes as dominant costs
change
 And relative costs are changing.
 New effects and mapping problems crop up with
new architectures, substrates
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
33 Developed By: Vazgen Melikyan
Big Challenge

 Rich, challenging, exciting space


 Great value
 Practical
 Theoretical
 Worth vigorous study
 Fundamental/academic
 Pragmatic/commercial

Synopsys University Courseware


Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
34 Developed By: Vazgen Melikyan
Toolkit

 Dynamic programming
 Linear programming (LP, ILP)
 Graph algorithms
 Greedy algorithms
 Randomization
 Search
 Heuristics
 Approximation algorithms
Synopsys University Courseware
Copyright © 2017 Synopsys, Inc. All rights reserved.
EDA Introduction
Lecture - 3
35 Developed By: Vazgen Melikyan

Вам также может понравиться