aosteaoste reated july 2004 - irisa · ©reated july 2004. 2 robert de simone dr inria sophia...
TRANSCRIPT
AosteAosteAosteAosteModels and Models and MethodsMethods of of AnalysisAnalysis and and OptimizationOptimization
for Systems for Systems withwith Real-time and Embedded Real-time and EmbeddedConstraintsConstraints
©reated July 2004
2
Robert de SimoneRobert de SimoneDR INRIA SophiaDR INRIA Sophia
(Head)
Yves SorelYves SorelDR INRIA RocquencourtDR INRIA Rocquencourt
(Vice-Head)
Charles AndréCharles AndréProf UNSAProf UNSA
Frédéric Mallet
MdC UNSA
Dumitru Potop
CR INRIA Rocq.
Marie-Agnès Peraldi-Frati
MdC UNSA
AosteAosteAosteAoste
3
Research domain: Embedded Systems
Application domains: mobile phones and consumer electronics,automotive/avionics/transportation,mobile robotics…
• Heterogeneous applications– pipelined complex data/signal flow streaming computations– control flow modes and interfaces, protocols
• Heterogeneous execution platform architectures– reconfigurable, flexible HW– systems-on-Chip, Networks-on-Chip, Multicore processors
• Complex design flow– need to allocate application onto architectures– need to optimize resources– satisfying real-time contraints (from different sources)
Formal models to represent applications and architectures,and their optimized implementation
4
TI OMAP
Applications can be dispatched to the ARM11 general-purposeprocessor (GPP), or theTMS320 DSP, or a mix of both
7
General Scope
Large current trend: provide « software models » (programs) tosimulate the execution platform with the application
Our answer (with others): true Models of Computation (withsemantics), leading
from Concurrency Theory to Concurrency practice …
Includes optimized compilation mapping, involving– Spatial distribution– Temporal scheduling
To remain efficient and realistic, we stick to our former domainsof expertise
8
ConcurrencyConcurrency TheoryTheory
Models of Computation and Communication (Models of Computation and Communication (MoCCMoCC))
SchedulingScheduling TheoryTheory
Model-Model-DrivenDriven engineering engineering
Goal/Need: associate 3 domains
9
Our approach• Start with untimed/asynchronous (or loosely timed)
modeling (events partially ordered)
• Scheduling (dependence, period, preemption, cycleallocation decisions, pipelining, etc) seen as a
Time refinementleading to provable or correct-by-construction discretelogical-time specifications
• With this, solve and fix resource dimensioning(sequencers, memories, surface, buffers for latenciesand delays) and cycle allocations
Semantic correctness preservation ?
10
SynchronousSynchronous formalismsformalismsEsterel + extensionsEsterel + extensions(Verification/Compilation)
Platform-Platform-basedbased design designAAA/AAA/SynDExSynDEx
(Optimization/Scheduling)
High-High-LevelLevel modelingmodelingReal-Time UML/Real-Time UML/SyncChartsSyncCharts
(Modeling/Analysis)
Starting Point…
Common grounds:Common grounds:MathematicalMathematical semanticssemantics for forformalformal methodsmethods and models and models
11
Platform-based design
Comm & Control Data Computation
Application side
Architectural side
Allocations (operationsto resources)
«Meet-in-the-middle»
Esterel,SyncCharts
SCADE/Lustre,Signal, Scicos
HW/SW platform model
SynDEx
Formal models Model-Based Design
System-Level Design
Platform-Based Design
14
Current research topics:
1. High-level modeling• Time modeling
scientific focus available
• Execution platform and Allocation modeling¬ Inspired from SysML and other sources
• Models of Computation (MoCs)¬ « Towards a Synchronous UML profile? », STTT Journal 2006
¬ « MARTE… », UML for SoC design (DAC workshop), 2005 (RS, CA, Mehmood)starting PhD
• Model-driven Engineering¬ Translations towards Models and Tools
« From UML to Petri Nets… », IES 2006
« MARTE to SynDEx » , « from TLM to RTL »
¬ OMG MARTE profile standardization
15
Teaser: Examples of ClockConstraint
crkClk
camClk
1 2
1
3
32
4 5 6
(0.5) (1.0) (1.5) (2.0) (2.5)(0.0)
(0.0) (0.5) (1.0)
Coincidence
relation
Instant values
(° CRK)
Instant values
(° CAM )
<<clockConstraint >>
{ camClk = crkClk filteredBy 0b(10) }
currentTime ( ): Real
resolution : Real {readOnly}
<<clockType >>
{ nature = discrete , unitType = TimeUnitKind ,
resolAttr =resolution , getTime = currentTime }
Chronometric
resolution = 0.01
<<clock >>
{ unit = s, standard = UTC }
cc 1:Chronometric
resolution = 0.01
<<clock >>
{ unit = s, standard = UTC }
cc 2:Chronometric
<<clockConstraint >> { kind = required }
{ Clock c is idealClk discretizedBy 0.001;
cc 1 isPeriodicOn c withPeriod 10;
cc 2 isPeriodicOn c withPeriod 10;
cc 1 hasStability = 1E-5;
cc 2 hasStability = 1E-5;
cc 1,cc2 haveOffset in [0..5] ms on idealClk ;
}
<< clock >>
{ unit = s }
idealClk:IdealClock currentTime ( ): Real
<<clockType >>
{ nature = dense , unitType = TimeUnitKind ,
getTime = currentTime }
Ideal Clock
Imported from
MARTE ::TimeLibrary
<<timeDomain >>
ApplicationTimeDomain
16
Current research topics:
2. Synchronous and GALS formalisms
• Esterel and foundations¬ « The synchronous hypothesis and synchronous languages »,
Embedded Systems Handbook. CRC Press, 2005.¬ « L’approche Synchrone… », Encyclopédie de l’Informatique, Vuibert, 2006
¬ « The Esterel language », Dumitru Potop et al Kluwer ed., in press
¬ Olivier Tardieu’s PhD thesis on intermediate models for compilation
• Latency-Insensitive and multiclock designscientific focus available
¬ « Static scheduling of LID systems », EURASIP J. Embedded Systems
¬CIM PACA Sys2RTL collaborative project
• Endochrony and code distribution¬ « Concurrency in Synchronous systems », FMSD 2006
• Compositional model-checking¬ « Syntax-driven optimizations for Reachable State Space of Esterel programs ».
CAV 2005
17
Teaser: Latency-Insensitive Design in anutshell
• Hardware implementation ofTimed Event Graphs withcapacity-2 marked places
• In purple, Shell Wrappersprovide clock-gating for firingrule
• In red/green, Relay-stationsprovide a regular register andan emergency one to acceptan extra token when trafficstalled ahead
18
Current research topics:
3. Real-Time distribution and scheduling• Real-time scheduling with multiple constraints
¬ precedences, periods, and latencies in Annals of Operations Research 2006
¬ non-preemptive & preemptive RM with cost of preemption in ECRTS Conf. 2007
scientific focus available
• Multiprocessor real-time scheduling (same constraints)¬ distribution and scheduling: NP-hard problems¬ optimizations: time (latency, period), resources (processors, memory),¬ heuristics inspired from monoprocessor scheduling multiprocessor
scheduling with precedence periodicity and latency constraints in PMS Conf. 2006
• Generation of distributed real-time code¬ macro-processing: architecture independent in MEMOCODE Conf. 2003
• Hardware/software codesign in journal of Supercomputing 2004
• Timed Event-graph based cyclic scheduling
19
TEASER: AOSTE real-time model
Cij = Ci Ci
j+1 = Ci + 2α
Ti Ti
sij si
j+10
Operation i
sij: Start time of the jth instance
Ti: Period of the taskCi: Worst Case Execution Time (WCET): cost of the preemption not approximatedα: Cost of one preemption for a given processor
t
… …
A
B
C
D B cannot start its execution before A is completedB cannot preempt ATA < TBsD
j + - sAj < LADLAD
20
TEASER: Scheduling
• Necessary and sufficient schedulability condition takinginto account the exact cost of preemption
– for rate monotonic analysis (RMA)
– for systems with precedence and harmonic periodicityconstraints
• Corresponding scheduling algorithms
21
Non-permanent staff• PhD students (6 on the average)
Julien Boucaron [ STM contract, from oct. 2004]
Jean-Vivien Millo [ BDE CIM PACA with STM, from oct. 2005]
Fabrice Peix [ MENESR, until september 2004 ]
Olivier Tardieu [ Corps des Mines, until november 2004 ]
Eric Vecchié [ PACA regional scholarship, until october 2004 ]
François Lagarde [ co-directed with CEA-List, from nov. 2005 ]
Amir Mehmood [Pakistanese Gov. fellowship, from oct. 2006]
Patrick Meumeu Yomsi [ INRIA fellowship, from dec. 2005 ]
Omar Kermia [INRIA fellowship, from jan. 2006 ]
Nicolas Pernet [ INRIA fellowship, until july 2006]
Mickaël Raulet [ co-directed with INSA/Mitsubishi-Electric, until may 2006 ]
Liliana Cucu [ INRIA fellowship, until may 2004 ]
Hamoudi Kalla [ INRIA fellowship, until dec. 2004 ]
Linda Kahouane [ co-directed with ESiEE, until dec. 2004 ]
• Senior collaboratorsGérard Cristau [Thales, Invited Specialist, oct. 2005-oct 2006 ]
Alix Munier [ U. Paris 6, délégation, oct 2004-sept.2006 ]
• Temporary engineers+ 6 human-years on contracts (3 Rocq, 3 Sophia)
+ 1 soft development engineer (SynDEx) at INRIA Rocq.
22
Publications (since 2004)• 1 book• 2 book chapters• 8 PhD thesis defenses
• 9 international Journal papers+ 2 national,+ 5 others (Electronic Notes, …)
• 12 international conferences+ 7 international workshops+ 4 national workshops
23
CIM PACACIM PACA design design platformplatformEsterelEsterel (EDA vendors)
SynDExSynDEx usersusers(INRIA distribution)
OMG MARTEOMG MARTE UML profile UML profilePROTES CARROLL, System@ticPROTES CARROLL, System@tic
(UML tool editors)
Technology transfers and contracts…
24
Softwares• SynDEx V6 (in O-Caml)
– Growing user community– Interfaced with Polychrony, UML/MARTE/Eclipse/TopCased– The 3S Package: Scilab/Scicos/SynDEx– Optimized distribution & scheduling and distributed code
production
• MARTE profile implementation (XMI files)– Runs with Eclipse and proprietary tools (IBM RSA,
MagicDraw, Artisan)
• Esterel/SyncCharts contributions– Fast C prototype, rewritten at Esterel Tech.
• Kpassa tool– K-periodic scheduling of Timed Event Graphs and LID
25
Contractual CollaborationsCARROLL PROTES/CORTESS
Thales, CEA List, 3 INRIA teams
RNTL OpenEmbeDD Platform
Thales, FT, Airbus, CS, 5 INRIA teams, VERIMAG, LAAS
RNTL MemVatexSiemens VDO, Embelec, CEA List, UTC
System@tic OpenDevFactoryThales, FT, Airbus, CS, 5 INRIA teams, VERIMAG, LAAS
AAA/SynDEx users: MBDA, Mitsubishi-Electric, RobotSoft, PSA, IFP, …
CIM PACA Sys2RTL project in Design PlatfomSTM, TI, NXP, EsterelTech, Synopsys, ENST, LEAT
ST Micro ForComentTexas Instruments GrantINRIA HIDES associated team (with Columbia U.)
6th IST NoE ARTIST2
26
Main collaborations• Other INRIA teams
– Espresso (synchronous languages)– DaRT (Model-driven engineering for RT/E)– TRIO (RT scheduling)– Pop-Art (fault tolerance)– Metalau (Scilab/Scicos/SynDEx)– Vasy, Alchemy/Proval, S4, Mascotte, …
• CEA-List (OMG)• LIP6 (Operations Research, SoC design)
• ESIEE (Codesign)
• Columbia University, Karlsruhe U.
• Esterel community (Synchron, SLAP)+ Esterel Technologies
• Organizing IEEE/ACM MemoCode 2007
27
Teaching• Embedded System option of UNSA STIC Research
Master (strongly involved in creation)
• Research Master SETI Paris 11• Master1 EEA• Master2 Pro Info TIM• L3 Pro UNSA• Engineering schools (ESIEE, ENSTA, ISIA)
Various responsabilities• CIM PACA Scientific council and Design PF CA• Technical IEEE Esterel standardization Committee
28
Perspectives• Still at infancy, needs ROI2 (Return on Intellectual Investment),
mostly in prestigious publications
• Once the framework installed, we need to focus on specificresearch results (methodology is not the end of it)– Use time models and well-defined semantics in MDE
• Temporal operators, simulation = synthesis
• Integrated edition, transformation, analysis, backward traceability
– Semantics of MoCs• (periodically scheduled) combinations of Kahn PNs and SDF Event Graphs
• From TLM to RTL system-level in formal terms
– Real-time distributed scheduling• Multiple constraints (and multidimensional optimisations)
• Exact cost of preemption
Common belief expressed at DATE’07: scheduling is the mainissue in embedded system-level design