VHDL Ams
VHDL Ams
Made by :
Amani Mtawaa
&
Islem Hedhli
1
INTRODUCTION
Structuring in libraries
conclusion
2
INTRODUCTION
• VHDL-AMS is a language that was developed as an extension
of the VHDL language to allow modeling and simulation of
analog and mixed (logic-analog) circuits and systems.
• Why Needed?
• Many of today’s designs include at least some continuous
characteristics:
– System design
• Mixed-signal electrical designs (Cell phones, …)
• Mixed electrical/non-electrical designs (Music players,
Digital Cameras, Samand)
• Modeling design environment (Temperature, humidity,
…)
3
INTRODUCTION (2)
– Why Needed?
– Analog design
• Analog behavioral modeling and simulation
4
Overview
• IEEE Std. 1076.1-1999:
– Extension to VHDL to support the description and
simulation of analog and mixed-signal circuits and
systems
5
INTRODUCTION
Structuring in libraries
conclusion
6
General structure of a model
Entity Interfacing / netlist
Déf. connexions (port) signal: digital
terminal: analog, kirchoff
quantity: analog, signal flow
Architecture
Déclaration
Body
Inst.concurrentes
Inst.simultanées Vue interne du modèle
Instanciations
discret-event
continuous time
structurel/hiérarchie
Entity
Architecture
7
General structure of a model: Example
ENTITY exemple IS
port (signal sig_ext:in real; terminal vp,vm : electrical);
END exemple;
LIBRARY ressource_lib;
Entity
Sim anal. Sim num.
Architecture
Tsim
CS1 SS
CS1 CS : concurrent statement
CS2 1
CS2 SS : simultaneous statement
SS
E+A : Entity + Architecture
2
SS
3
... 9
INTRODUCTION
Structuring in libraries
10
Structuring in libraries
• No long description
• Small and hierarchical units
• Compilable part = Design
• unit Complex system = team Need for rigorous
methodology
• A compilation that results Updating a working library
(WORK)
• Resource library (project, supplier, test, ...)
LIBRARY ressource_lib;
USE ressource_lib.pack_lib.ALL;
11
Library structuring: Design units
•
Model: ENTITY (UC) + ARCHITECTURE (UC)
several ARCHITECTURE possible by ENTITY
•
Effective association of an instance and a compiled
model: CONFIGURATION (UC)
• Libraries contain CUs Method: One file = One Design
Unit
12
INTRODUCTION
Structuring in libraries
conclusion
13
Identifiers
Object names: identifiers
14
Typing
16
Typing: Subtypes
subtype_declaration ::=
SUBTYPE subtype_name IS type_names [constraints];
• Predefined subtypes
• natural SUBTYPE natural IS integer RANGE 0 to integer’high;
– positive SUBTYPE positive IS integer RANGE 1 to integer’high;
• Dynamique
SUBTYPE mot IS bit_vector (1 to max) ;(MAX variable)
17
Typing: Initialization of objects
• In VHDL-AMS all objects are initialized implicitly or
explicitly
• An object takes the leftmost value of its type
signal A : bit ; -- A vaut ‘0’
signal A : bit := ‘1’; -- A vaut ‘1’
variable B : boolean ; -- B vaut false
quantity Q : real ; -- Q vaut 0.0
• A type can be incompletely defined
TYPE cell ; -- type incomplètement défini
TYPE link IS ACCESS cell ;
TYPE cell is record -- définitions récursive de type
value : index ;
succ : link ;
END RECORD ;
18
Les 6 classes d’objets
• The object classes (information transport)
• CONSTANT: (fixed value known during processing)
VARIABLE (sequential / dynamic): modified by
assignment (: =)
• SIGNAL: (concurrent / static) modified by assignment
(<=)
• TERMINAL: allows branch / free analog connections
QUANTITY: participates in simult.stat. (==) is always
of a type from real
• FILE
19
Object classes: Constants
• Allows you to store constant values
20
Object classes: Variables
21
Object classes: Signal
signal_declaration ::=
SIGNAL signal_name : [fonc_resolution] type [contraintes]
[REGISTER|BUS] [:= init_value];
• Nature vector
•
NATURE elec_vec IS ARRAY(natural RANGE <>) of electrical ;
• Nature record
23
Object classes: Quantity
• Implicit Quantity
24
Quantities in Various Natures
• Electrical
– voltage: across
– current: through
• Translational
– position: across
– force: through
• Thermal
– temperature: across
– power (or heat-flow): through
• Fluidic
– pressure: across
– flow-rate: through
25
Object classes: Terminal / Quantity: examples
26
CONCLUSION:
Highlights of VHDL-AMS
27
28