Cours VHDL FPGA 10
Cours VHDL FPGA 10
Cours VHDL FPGA 10
systèmes matériel/logiciel
Méthodologie et outil
Jean-Paul CALVEZ
Equipe de Recherche
« Modélisation et Conception des Systèmes Electroniques »
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 1
Plan
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 2
Concevoir : c’est quoi?
Carte ou
Système
sur
silicium
Comment
faire ?
Logiciel Matériel
embarqué (bas-niveau)
Coût Delai
Performances
• Conception des circuits
• Conception des systèmes à microprocesseurs
Compétences • Maîtrise des domaines (électronique, signal…)
• Logiciels temps-réel
• Méthodologie de conception
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 3
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 4
Quelques définitions (2/2)
• Méthode:
– technique de résolution de problème caractérisée par un ensemble de
règles bien définies qui conduisent à une solution correcte
• Méthodologie:
– un ensemble structuré et cohérent de modèles, méthodes, guides et outils
permettant de déduire la manière de résoudre un problème
• Modèle:
– une représentation d'un aspect partiel et cohérent du « monde » réel
– précède toute décision ou formulation d’une opinion
– est élaboré pour répondre à la question qui conduit au développement du
modèle
– n’est donc pas une fin en soi
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 5
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 6
Modèle de cycle de développement en V
Besoin Produit
Validation, certification
Cahier des charges Test opérationnel
Conception Tests
Conception détaillée unitaires
Réalisation
Corrections Réalisation
par retours
constituants
arrière
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 7
Capacité
Complexité des circuits de conception
Conception de
niveau système
Platform-based travail- collaboratif
Complexité des circuits et multi-disciplinaire
Synthèse RTL
Démarche RTL
vers layout
94 95 96 97 98 99 2000
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 8
Evolution des méthodologies coté circuits
SRAM
uP core
ROM
Systèmes Embarqués
Traditionnel
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 10
Développer les systèmes différemment (2/2)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 11
Fabrication
Hardware/Software Co-Design
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 12
Démarche de CoDesign
Spécification de
niveau système
Spécifications fonctionnelles et contraintes
Interactif
Architecture Partitionnement Hw/Sw Moyens
générique et allocation d'estimations
Librairies Librairies
Synthèse logicielle
Drivers Synthèse matérielle
Drivers + RTOS IPs
RTOS (Software Targetting) (Hardware Targetting)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 13
Plan
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 14
Niveaux d’abstraction d’une plate-forme
API Services
pour un domaine L4 - CORBA-RT, HTTP, JINI, J2ME-CLDC
=>UTF (UnTimed Functional)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 15
- TLM
Transactions
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 16
Intégration des 2 points de vue
Approche descendante dirigée par l’application
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 17
Mémoire
M1 M2 M3 M4 M5 M6 M7
Ci
Ci D1 Dk
L3
Primitives OS Adaptation Niveaux Adaptation
L2
Noyau temps-réel
de la
L1 plate-forme
Adaptation (HAL) Communication bas-niveau
Solution
AdaptationVCI complète
Contrôleur mémoire spécifique
CPU Mémoire E/S DSP Mémoire E/S Contrôleur bus optimisée
L0
Adaptation bus Adaptation bus Adaptation bus
Réseau
Arbitrage Passerelle inter-bus d’interconnexion
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 18
Modèle en Y
Architecture fonctionnelle Architecture physique
P0 Réseau de
MsQ2 Communication
F2
N0
F1
V1 Ev N1
MsQ1 P2
V3 P1
F0 F31 F32
F3 M Mémoire
(a) (b)
Mapping
Modèle Architectural (c)
Interfaces et réseau de Communication
P0 P1 P2
MsQ2 MsQ2
F2
MsQ1 N0 MsQ1 N1 IntP2
F0 IntP0 F1 IntP1 Ev
IntP01 V1 V1
V3
F31 F32
F3
V1 M
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 19
Flot de conception
Besoin client
Spécification Système
Spécifications fonctionnelles & non-fonctionnelles
Solution fonctionnelle
(Macro-)Architecture physique
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 20
Plan
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 21
Besoin
Client
Document CdCF
FONCTIONS Performances
principales Exigences Techniques
(Requirements) Economiques
Dérivées
Concepteurs
Fonctionnel
Architecture
+ Tests Physique
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 22
Catégories d’exigences non-fonctionnelles
• Performances
• performances temporelles: durée, latence, débit, …..
• Ressources nécessaires: énergie, mémoire, puissance de calcul ...
• Capacité de traitement, de communication
• Sûreté de fonctionnement
• Fiabilité, Sécurité, innocuité, maintenabilité, disponibilité
• Ergonomie
• Qualité des échanges
• Compétences d’exploitation
• Contraintes
• Physiques: dimensionnement, masse, environnement, …..
• Electriques, conformité à des normes, …..
• Evolutivité, coût et delai, livraison, qualification, ….
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 23
Etape 1 - (Co-)Spécification
• Modèles de spécification
– Une grande variété de modèles de spécification
• (Statechart, SDL, SpecChart, MatLab, MatriXx, C, VHDL, SystemC…….;
– Modèle unique (Lequel?) ou modèle hétérogène multi-langage
(Lesquels et couplages?)
– Difficultés d'exprimer tous les points de vue et
les spécifications non-fonctionnelles (contraintes)
• Techniques de vérification
– Simulation homogène: nécessité d'un simulateur ou conversion en un langage
donné
• StateMate, MCSE, SystemC….
– Simulation hétérogène:
• Ptolemy: encapsulation de modèles "d'univers différents" (Classes C++)
• Couplage de simulateurs par protocole TCP/IP ou sockets (VCI)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 24
Le système à spécifier et son environnement
Entité 2
Interactions
Point de vue
Observations Client Actions
Entité 1 Entité N
Système
Point de vue
concepteur Environnement
Entité k
Application
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 25
1
Comment ?
Objet Activités
ou
Système
Quoi ?
SYSTEM-LEVEL MODELING ?
Objets / Données /Evénements Informations
- Modèle hiérarchique de composition de données Notion de TEMPS essentiel pour les systèmes RT
- Modèle Entité/association
- Modèlel Objet (OMT, OOA)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 26
Analyse fonctionnelle
• Modèle SADT (Ross-77)
– Actigramme
– Datagramme A0
Global
Contrôle(s)
A1
A2
Flux entrant Flux sortant
Activité
Détaillé
Ressource(s)
Mécanismes
Limiter la décomposition
Outil SADT ou IDEF0 à 5 à 7 éléments
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 27
I2 O2
A3
StateChart
Méthode:
- diagramme de contexte
A3
- décomposition DFD
- introduction Statechart raffinement
- spécification activités ou
Difficultés Spécification textuelle
critère d’arrêt décomposition
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 28
Spécification du comportement (états discrets)
• Automate à états finis (FSM)
• GRAFCET
Description hiérarchique
• StateChart
• Réseau de Petri
A11
A21
Reset Réinitialisation
de A1 et A2
Arrêt en A11 et A21
A121
A22 Reset
Défaut
A122
Sortie de A1 et A2 et
retour en Arrêt A1 Activation parallèle A2
A
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 29
MAck
Ack Close
Process 12 St1
St1
St2
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 30
Specification: Approche Orientée Objet
Cas d’utilisation (Use cases) Sequence Charts (scénarios)
U1 F1 F2
U1 F1 D1
F3
U2
F2
Rhapsody (Ilogix)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 32
Matlab-Simulink et Matrixx
10
Géné s+10 +
Gain + 1 1 Modèle
- s s
-
Animation
2*Ki
StateFlow
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 33
Order
Run 2
Order
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 34
Spécification des performances
Quantification des propriétés d’un système selon des critères d ’observation
Performance
Performance
Exigences sur
le comportement
Statique
Statique Dynamique du système
Dynamique
Externe Interne
Interne
Externe
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 35
Plan
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 36
Méthode globale de conception
Modélisation
Analyse des spécifications de la
plate-forme
Création du modèle fonctionnel
(Structure et macro-comportements) Analyse de la plate-forme
Ajout des
Création du modèle
Modélisation propriétés temporelles
fonctionnelle
de plate-forme
Allocation Fonctions->processeurs
(Analyse performances & sélection processeurs)
Exploration
d ’architecture
Etude des communications
& (Analyse communications & sélection des liens physiques)
Etude des
performances
Résultats
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 37
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 38
Exemple de modèle fonctionnel
Functional Block Diagram (FBD)
Problème:
Sémantique des
F1 F2 liens de couplage
F3
F4 F5
F1
automate F3 F4
Procédure
modèle C ou VHDL
Mini Spec
Fi Fn
F1 F2
L V
F1 F2
Shar-Var
Transfert de données
limité
et Fi Fn
sémantique implicite Pt
F1 F2
Difficultés des liens multi-points Message
queue (port)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 40
Exemples de modèles fonctionnels
B1 Architecture fonctionnelle
V1
F1 (Fonction)
Canal de communication
C1 MsQ2 F2
Variable V2 Init
File de
message *
MsQ1 Ev (événement)
B2 B3
F0 Traitement V1
V3
C2 F31 F32
Macro-comportement F3
Variable partagée
Comportements parallèles B1 et B2
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 41
Opération
Canal
Fonction de
élémentaire communication
Boucle
inconditionnelle
Attente d’un
événement
Variable
partagée
Contrôle
quantification
Image Coded
courante + MB VLC & Tx
DCT Quant Transmit
framing Buffer Canal de
- transmission
Décisions d ’encodage
MC Partie Décodage pour
l’estimation de mouvement MC: Motion Compensation
+ DCT: Discrete Cosinus Transform
Précédent + Quant: Quantization
Courant IDCT IQuant VLC: Variable Length Coding
Mémoire Tx Frame IDCT: Inverse DCT
VLD: Variable Length Decoding
ME: Motion Estimation
ME Iquant: Inverse Quantization
Vecteur Tx Motion
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 43
PutSeq()
IDCTinit
PutPic *
*
InMB Prec
IQuant OutMB
Blocs itransform
idct Cur IDCTexec
Pred Add_pred Cur
Add_pred
16x16
Header
Parallélisme (Style pipeline)
Y0 Y2 Cr
C) Format du MacroBloc
Y1 Y3 Cb
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 44
Exemple: partie codage et estimation
Partie codage
Quantization
Control
Image d’entrée
ligne Coded
par ligne MBbis
provenant de
la caméra
Réseau de
transmission
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 46
Paramétrage temporel du modèle
Attribut de la condition
(3)(Valeurs par défaut) Attribut de l’opération
(1) GetTime
PutTime
GetTime OpDuration
F Attribut du port
*
(2) WriteTime
MsQ
OpN
V
(2) GetTime
Attributs de la relation
Attribut du port Attribut de l’action
(3)(Valeurs par défaut)
(1) WriteTime WriteTime
ReadTime
Get Time
MsQ
OpDuration Time
F
V
Write Time
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 47
• Constante, Min/Nom/Max
• Toute expression mathématique (exprimable en C/C++)
• Valeurs en …Sec ou en cycles (t = NbCy x CyclePeriod)
• Mots clés prédéfinis pour les communications:
• DATASIZE,
• FCTCOMPUTETIME (méthode définie par l’utilisateur)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 48
Vérification par simulation: exemple de résultats
Image source Image en LoopMB (image 2 en différence)
Après DCT et quantification
Zoom sur l’exécution pipeline
Déroulement temporel détaillé
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 49
Copie PreviousFrame
Traitement de 11 macroblocs
Image 1 en Inter
Bords d’image Image 1 en Intra
Estimation de mouvement
pour Image 2 en Inter
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 50
Conception fonctionnelle : Méthode
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 51
Plan
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 52
Problèmes de la conception architecturale
• Types d'architectures
• Architecture imposée ou à déterminer
• Architecture simple (CPU + Asic) ou architecture hétérogène
distribuée, maître/esclave ou multi-maître
• Niveaux de granularité
• Tâche ou process ou fonction
• Bloc
• Instruction
• Difficultés du problème
• Partitionnement Hw/Sw
• Sélection d'architecture(s)
• Sélection de composants
• Estimation des propriétés (What-If-Analysis)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 53
Allocation Fonctions->processeurs
(Analyse performances & sélection processeurs)
Exploration
d ’architecture
Etude des communications
& (Analyse communications & sélection des liens physiques)
Etude des
performances
Résultats
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 55
Bus1
Int
Noeud de
communication Signal
- SetTime
Link1 -ResetTime
uContrôleur SendTime
ReceiveTime
Mem Periph Proc3
RTK locale local
ProcessorType = Software SchedulingPolicy = PSP
Concurrency = 1 OverHead = 10 us
RelativeSpeed = SwSpeed
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 56
Modèle d’interconnexion physique
Pt1-to-Pt2
P0 P1 P2 Memory P0 P1 P2 P3 P4 Memory
Bus1
Pt1-to-Pt2 Bus1
Node 3
Bridge Node 1
Router 1 Router 1
Bus2 Node 2 Bridge
Node 4
Bus2
Interconnection Network
P3 P4 Behavior &
timing properties
(a) (b)
Proc
Bridge Node
V1 Bus
F2
E/S du processeur
SendTime
SchedulingPolicy = PSP
OverHead = 10 us Priority = 20
Priority = 5
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 58
Comportement pour un processeur logiciel
Commutation de tâche
Overhead OpDuration dans F1
F1 Fin d’exécution de F1
Activation de F2
Ev
Set time Reset time Overhead
F2
Préemption du processeur pour F2 par F1
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 59
Carte
F1
Mapping
(allocation) N
P1 P2
V Pt
F31
Ev
F2
V3
F32
Coût de la communication
F3
et des interfaces
Performances résultantes
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 60
Analyse des contraintes de temps
• Pour chaque action temporaire:
• Fréquence maximale d’activation FAi = 1/TAi
• Temps d’exécution maximum TEi
• Taux d’occupation processeur: Tocc max = Σ FAi * TEi
• Pour tâche de fond: TEmax = TE / (1 - Tocc max)
TA 1 Tocc = TE1/TA1
Tâche 1
TE 1
TA 2
Tâche 2
TE 2
Priorité Contrainte logicielle : Tocc = TE1/TA1 + TA2/TE 2 < 1
Ev1 Ev2 Ev1
Tâche 1
Tâche 2
T Deadline
Background
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 61
Grabbing DCT
TxMBinfo
VLCframing
TxSlice
Caméra Quant
TxBuffPtr LinkT
ErrorPrediction CodedMBbis
TxIQuant MuxSend
LinkC
LoopMBinfo Txpacket
Compensation
Quant
TxBuffer
Bus
- TxBuffer
Architecture
- PreviousFrame de la plate-forme
SharedMem
- PredictedFrame
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 62
Résultats de performances attendus
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 63
RelativeSpeed = 1
V
V V
N
PAck PAck
NIntIn NIntOut
P1 P2
N
P1 P2
Attributs
Attributs des relations
Concurrency = 1 des interfaces
Concurrency = 1
SendTime = DataSize * 20 us SendTime = DataSize * 20 us
ReceiveTime = 20 us ReceiveTime = 20 us
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 65
Interfaces pour
CodingProc
Mémoire
Bus
spécifications
Fonctionnelles et non-fonctionnelles
Co-vérification: fonctionnel + performances
Prototype
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 67
Co-Vérification
• Co-Simulation
• Vérification de la conception fonctionnelle puis architecturale
• Simulation du matériel et du logiciel, avant et/ou après la co-synthèse
• Importance des modèles pour le matériel et pour le logiciel:
Compromis: précision /temps de simulation
• Difficulté de l'estimation de performances
puis de la vérification/validation
• Prototype virtuel
• Mono-langage ou multi-langages
• Logiciel seul ou logiciel/matériel
• Emulation
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 68
Niveaux de CoSimulation et Prototypage virtuel
Seamless
VHDL niveau RTL Modèle du processeur Assembleur
CVE (Mentor)
EagleI
CoSimulation niveau Cycle Prototype virtuel détaillé
(Synopsys) Cycle-accurate
Réalisation du
VHDL niveau portes Code binaire
processeur
Prototype réel
gate-accurate
Matériel Processeur Mémoire
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 69
Plan
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 70
Un outil pour la conception système - Objectif
Conception
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 71
Point de vue
• Niveau du «langage»: Apte à l’expression du fonctionnel
– Favorise les solutions de qualité et technologie-independant
– Permet la vérification fonctionnelle et l ’étude des performances
– Facilite la génération des prototypes
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 72
Function - Architecture CoDesign (VCC Cadence)
Static Discrete
C/C++ SDL/other
Dataflow event
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 73
Mess C
F3
Structure P1
Mapping
Attributs fonctionnels des constituants Attributs exécutifs
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 74
Cœur d’outils pour les 3 niveaux de conception
modèle de modèle
Trace événementielle
description simulable
Analyse du Résultats
Editeurs Comportement
Générateur Simulateur
Interactifs &
Performances
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 75
Capture Etape 1
structure & algorithmes Exigences & Spécifications &
et ses propriétés Etape 2
Simulation fonctionnelle
Etape 3 Capture
architecture technique
et ses propriétés
Conception fonctionnelle
Architecture technique
Timeline
Simulation fonctionnelle Etape 4
timée Mapping
Profiling
Co-simulation
Etude Performances
Conception Architecturale Analyses "What-if"
(Partitionnement - Mapping)
Solution matérielle
Solution logicielle
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 76
Caractéristiques de MCSE ToolBox
• Outil interactif simple d’utilisation
• Description séparée des 2 types d’architectures
• Partitionnement et allocation en interactif
• Simulation, observation, des propriétés fonctionnelles et
architecturales
• Capture de différentes architectures pour l’exploration de l’espace
de solutions
• Description à divers niveaux d’abstraction
• Evaluation des performances globales
• Génération de codes source C, SystemC, VHDL
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 77
Plan
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 78
Conclusions (1/3)
• Beaucoup d'évolutions attendues dans les 10 ans à venir
– technologies, outils, méthodes, organisations
• Approche système inévitable
– approche par l’application
– pas de séparation culturelle entre Hw et Sw
– changement de technologies simple
– réutilisation world-wide indispensable
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 79
Conclusions (2/3)
• Problèmes de méthodologie :
• Séparation des compétences (Spécif. / Design / Hw /Sw)
• Spécifications ne provenant pas (uniquement) des exigences client
• Manque d’interaction ou mélange entre étapes
• Manque d’utilisation d’outils durant la conception, surtout pour les
premières étapes (spécification et conception trop textuelle)
• Vérification des performances trop tardivement sur le prototype
• Très peu d’exploration de l’espace des solutions
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 80
Conclusions (3/3)
• Changement: du physique vers le fonctionnel
– Penser à des niveaux plus conceptuels
• Difficultés
– « Not enough time » (résistance au changement), est un alibi
– Nécessité d’un « Coaching » pour favoriser le changement
– Investissement de long terme (on-the-job training)
Ecole polytechnique
de l'université de NANTES
ARCHI 03 Roscoff - 4 Avril 2003 - Jean-Paul CALVEZ 81