fzi forschungszentrum informatik -...
Post on 04-Jun-2018
214 Views
Preview:
TRANSCRIPT
Copyright © 2006 FZI Karlsruhe kmg
HLSLA‘07, 14-January-2007
„Supporting system level design of distributed electronic control units
for automotive applications“
Prof. Dr.-Ing. Klaus D. Müller-GlaserUniversität Karlsruhe, Institut für Technik der Informationsverarbeitung (ITIV)
Dr.-Ing. Clemens Reichmann, Markus KuehlAquintos GmbH
FZI Forschungszentrum Informatikan der Universität Karlsruhe
Copyright © 2006 FZI Karlsruhe kmg
HydraulicBrake System
Benz
Characteristics: distributed, mechatronic, hard real time
76 ECUs> 100 el. Motors> 2000 m wires
ECU’s are part ofmechatronic systems formeasurement and control
Softwareis part ofECU
Copyright © 2006 FZI Karlsruhe kmg
Complex Communication (e.g. Audi A8)
Courtesy Volkswagen/Audi
4 application domains for ECUs:
Power train: mainly closed loop control functionsChassis control: mainly closed loop control functionsBody electronics: mainly reactive, event driven functionsnfotainment: mainly reactive, event driven functions
software intensive >>100k LOC
Copyright © 2006 FZI Karlsruhe kmg
Electrics/Electronics in a car
Sternpunkt
Batterie
SAM/B mitSRB/B
SAM/F mitSRB/F
Fond-KLA(SA)
+ -
Tür-SG hintenrechts
Tür-SG vornerechts
Sitz-SG vornerechts mitMemory
Sitz SG vornelinks mit Memory
Tür-SG vornelinks
Tür-SG hintenlinks
ME 2.0 / CR
EGS
ASR/ESP
Tel/S/EArthur
(1) Bedien- und Anzeigeteil für Radio/OMS (SA)
ART (SA)
KL30 ges.
geschalteteVerbraucher
Signale
KL30 ges.
geschalteteVerbraucher
Signale DBE
Sitz-SGhinten (SA)
Sound-system
CD
PTS (SA)
Kom
bi
KL87 ges.(KL15)
Innenraum-CAN (Class B)
ZV-Pumpe
KLAOBF
LF/ ABC (SA)
AAG (SA)
Motor-CAN (Class C)
KL15KL15R
Mantelrohr-modul
EZS
EWM
KIN
KL15
KL15R
MSS (SA)
KeylessGo (SA)
diskrete Leitungen(eine oder mehrere)
Klemme 30 ungesichert
BlinkerSchlußlichtRückfahrlichtBremslicht
SchlußlichtBremslichtNebelschl.RückfahrlichtBlinker
Türkontakthinten links
FH-Motormit ÜKBM
Ausstiegsleuchte
FH-Schalter
Heckdeckel-kontakt
EDW-Koffer-raumkontakt
Kennzeichen-beleuchtung
3. Bremsleuchte
EDW-Neigungs-schalter
Heizbare Heck-Scheibe
KSA rechts
KSA mitte
KSA links
Heckrollo
Tank
fülls
tand
sgeb
er
Türkontakthinten rechts
FH-Schalter
FH-Motormit ÜKB
M
EDW
-Tan
kdec
kelk
ont.
BBV
AusstiegsleuchteTürkontaktvorne rechts
Ausstiegsleuchte
Türkontaktvorne links
Ausstiegsleuchte
Diagnosedose(OBD II-Connector)
Bremslicht-schalter
Lenkwinkel-sensor
Lichtdrehsch.
Mantelrohrverstellungmit Memory
Tempomatsch.
M
MFL
HAS
Lenkstocksch.
UBF
Innenbeleuchtung
Innenraum-schutz (2x)
Innen-temperatur
EDW-Handschuh-kastenkontakt
SHD-Motor M
Regensensor
Funkempfänger
- Sitzverstell- schalter Sitz vorne links- SH-Schalter, SBlft-Schalter
Spiegel-verstellungmit Memory Sitzverstellschalter
Sitz hinten linksSBlft-Schalter
SH-SchalterFH-Motormit ÜKB
MM
- FH-Schalter (4-fach) mit KiSi u. HFE- Spiegelverstellschalter
FH-Motormit ÜKB
- SH-Schalter, SBlft-Schalter- Sitzverstellschalter Sitz vorne rechts
Sitzverstellschalter Sitz hinten rechtsu. vorne rechts
SH-Schalter
Spiegel-verstellungmit Memory
M M
FH-Schalter
seitl. Blinkleuchte
Zusatzwas-serpumpe
Bremsfl.-Stand
M
seitl. Blinkleuchte
DUO-Taktventil
Wischer
Ventilleiste
Innengebläse
BBV
BBV
Scheinwerferlinks:ABL, FL, PL,NSW, BL
Scheinwerferrechts:ABL, FL, PL,NSW, BL
M
M
M
M
Starterrelais
EDW-Horn/EDW-Sirene
EDW-Motor-haubenkontakt
Motordrehzahl
Kühlwassertemp.
MagnetventilRückförderpumpe
Waschwasserstand
Kältemitteldruck
Kältemitteltemperatur
SRA
Kühlwasserstand
Außentemperatur
SLP
Signalhorn
MagnetkupplungKältekompressor
Waschwasserpumpe
Waschwasserheizung
Klemme 61
KompressorLuftfederung
Gutschloßvorne rechts
Gutschloßvorne links
Gurtschloßhinten rechts
Gurtschloßhinten mitte
Gurtschloßhinten links
M
E-Sauglüfter SG
DVL
M
Innenspiegel
- Schloßnußtaster SN1 u. SN2- IR-Empfänger- Antriebssperr- klinkenschalter- Magnetventil Zuziehhilfe
- Magnetventil Zuziehhilfe- Antriebssperrklinkenschalter- Schloßnußtas- ter SN1 u. SN2- IR-Empfänger - Magnetventil Zuziehhilfe
- Antriebssperrklinkenschalter
- Magnetventil Zuziehhilfe- Antriebssperrklinkenschalter
SchloßnußtasterSN1 u. SN2
Heckdeckel-öffnungstaster
M
Sitzheizung
Sitzbelüftung
Verstellmotoren für:Höhe vorne, Höhe hinten,Längspos., Sitzkissentiefe,Lehne, Kopfstütze
Verstellmotoren für:Höhe vorne,Höhe hinten,Längspos., Sitzkissentiefe,Lehne, Kopfstütze
MSitzheizung
Sitz-belüftung
Verstellmotoren für:Längspos., Höhe,Kopfstütze (je 2x) M
Sitzhei-zung
Anhänger-erkennung
SBS
Wischer-ablagen-heizung
Getriebeöl-kühler
MKLvl (SA)
MKL vr (SA)LWR
SBlft-Schalter
Magnetventil/Zuziehhilfe
Antriebssperr-klinkenschalter
TSA (SA)
RDK (SA)
Sitz-belüftung
Sternpunkt
Deckenleuchteneinheit Fond
Display PTS (SA)
Serielle Schnittstelle
MKLhinten (SA)
KL30 ges.
SAM
/H m
it SR
B/H
Signale
geschalteteVerbraucher
(1)
Copyright © 2006 FZI Karlsruhe kmg
Hierarchical Organization of Design Processes
SystemSpecification
SystemSimulation
Development ofHW /SW
Specification
PrototypeDevelopment
CalibrationVehicle
Validation
Release toManufacturing Manufacturing
FunctionalTest Service
HWDesign
HWSimulation
PrototypeAssembly
DesignVerification
Release toManufacturing Manufacturing
FunctionalTest
AutocodePrototyping
SWCoding
Static andDynamic Test
Development ofControl Algorithms
and OnboardDiagnostics
Car programrequirements
Emission lawsStrategic
requirements
10s + 10s+5+-
+
Specification and Design Manufacturing Service
MechatronicVehicleSystem
ElectronicControlUnit (HW)
EmbeddedRealtimeSoftware
void main(){...}void initialization(){...}static void control (input, states, output){...}
Copyright © 2006 FZI Karlsruhe kmg
Hierarchical Organization of Design Processes
SystemSpecification
SystemSimulation
Development ofHW /SW
Specification
PrototypeDevelopment
CalibrationVehicle
Validation
Release toManufacturing Manufacturing
FunctionalTest Service
HWDesign
HWSimulation
PrototypeAssembly
DesignVerification
Release toManufacturing Manufacturing
FunctionalTest
AutocodePrototyping
SWCoding
Static andDynamic Test
Development ofControl Algorithms
and OnboardDiagnostics
Car programrequirements
Emission lawsStrategic
requirements
10s + 10s+5+-
+
Specification and Design Manufacturing Service
MechatronicVehicleSystem
ElectronicControlUnit (HW)
EmbeddedRealtimeSoftware
void main(){...}void initialization(){...}static void control (input, states, output){...}
multipleinterleaving design processes
Concurrent Engineeringdistributed between OEM and supplier
requiresstrictly controlled design methodology
supporting computer aided design toolsmodel based design
Copyright © 2006 FZI Karlsruhe kmg
Model Based Design - graphical descriptions preferred
Closed Loop Control
Reactive Systems
Performance Analysis
Copyright © 2006 FZI Karlsruhe kmg
System IntegrationCalibration, ApplicationTransition to Utilization
Typical Design Flow
Rapid PrototypingHardware PlatformCode Generation
Real Time Operating Systemconfigurable Interfaces
HW/SW-ImplementationIntegration
W-Modules, Data Dictionary, SW-CompHW-Component, HW-ModuleHW-Realization Documents
&
&
&&
Detailed HW/SW-DesignSW-Design, Data Dictionary
HW-DrawingsHW-Analysis Report
PROCESS (schlupf, state)BEGIN
CASE state ISWHEN freilauf =>
IF schlupf > 0 THENnext_state <=
bremsen;ELSE
HW/SW-Requirements AnalysisPreliminary HW/SW-Design
HW-Architecture, SW-ArchitectureInterface Description
FreiFrei
BremsenBremsen
Rad 1 Rad 1
ASR KontrolleASR Kontrolle
Rad 1
Bremsen
Frei
Rad 2
Bremsen
Frei
Idea System-Analysisexecutable SpecsSystem Design
model basedCustomer Requirements Technical RequirementsReal Time Requirements
System ArchitectureSimulation, Verification
Copyright © 2006 FZI Karlsruhe kmg
MiL, SiL, RP, HiL, Test
MiL Model-in-the-Loop SiL Software-in-the-loopRP Rapid PrototypingHiL Hardware-in-the-LoopTest
SimulatedECU
SimulatedECU
SimulatedEnvironmentSimulated
Environment
RealECURealECU
RealEnvironment
RealEnvironment
Simulation
Real Applicat.
RapidPrototyping
Hardware-in-the-LoopTest-
patternTest-
patternMeas.-data
Meas.-data
ModelValidation
Test
Modeling
ImplementationValidation
Copyright © 2006 FZI Karlsruhe kmg
Modeling
Modeling for complete system including system environment(ECU, car, driver, road, weather conditions)
Domain specific models for Subsystems and Components(closed loop control, reactive systems, software intensive systems)
Different abstraction levels, Parameter variation and boundaries(functional and non-functional data for early design space exploration)
Use of characterized libraries (reuse, variant design)
Macro modeling
Model verification through extensive testing
Model characterization
Model documentation
Meta modeling
Copyright © 2006 FZI Karlsruhe kmg
Challenges for Modeling
Domain Specific Modeling LanguagesModel SynthesisModel ValidationModel TransformationExecutable ModelsAutomatic Generation of Product Artefacts
Meta-ModelingTools on Meta-Model-LevelIntegration of Domain Specific Toolson Meta-Level
Generic Modeling-Platforms
Copyright © 2006 FZI Karlsruhe kmg
Modeling for heterogeneous electronic embedded systems
Architecture and SoftwareModeling with UML
Rhapsody in C++ (i-Logix) Statemate (i-Logix)Stateflow (The MathWorks)ASCET (ETAS)
Event drivenModeling with state charts
Buffer::Buffer SocketListItem1 *
outputBuffer 1
ProcessorBuffer
BatchController
SocketListItem
inputBuffer
1 *
1
Idle Sending Waiting_For_Repeat
Waiting_For_Ack
evRepeat[myCondition]
evBusyevAck /Action1()
Idle Sending Waiting_For_Repeat
Waiting_For_Ack evBusy/Action1()
MATLAB/Simulink (The MathWorks)MATRIXx (National Instruments)ASCET (ETAS)
Signal flow orientedModeling with block diagrams
Real-time Studio (ARTiSAN)Rhapsody in C++ (i-Logix)Rose (Rational Software, IBM)Together (Borland)Poseidon (Gentleware)MagicDraw (NoMagic)Ameos (Aonix)TAU2 (Telelogic)
Heterogeneous modeling requires integration platforme.g. ETAS Integrio, Vector DaVinci
Copyright © 2006 FZI Karlsruhe kmg
Compiler / Linker / Make
Matlab/WrapperGenerator
JAVA
C
Matlab/WrapperGenerator
JAVA
MatlabAutomation
JAVA
MatlabEmbedded Coder
DCOM
Target platforms (RTOS)
ITIV/FZI Tool integration platform (model transformation)
GeneralStore CASE-Tool Integration Platform
TemplateUML Coder
XMI
C++
...generator
other commercial
code generators
XMI2XX
C/C
++
CG-Adaptor
Rhapsody in MicroC
automation
JAVA
MicroC
XMI
C
JAVA
Target-MonitoringModel Debugging
Test
Matlab/WrapperGenerator
JAVA
Matlab/WrapperGenerator
JAVA
Matlab WrapperGenerator
JAVA
Statemate WrapperGenerator
JAVA
Model DataMySQL, ORACLE
SQL
MATLABSimulink
MDL
MATLABSimulink
MDL
MATLABStateflow
MDL XMI 1.0, XMI 1.1, XMI 1.2
Rhapsody
Poseidon
MagicDraw
Together
Rose
ARTiSAN
AONIX
Statemate
new challenge
Copyright © 2006 FZI Karlsruhe kmg
Meta-Modeling 4 Abstraction Layers (OMG standard)
real
abstract M3 layer MOF
M2 layer UML 1.4 UML 1.5 MATLAB Simulink
Statechart(D. Harel)
M1 layer UMLModel
Statechart Model
Simulink Model
M0 layer Objects Data Source code
Real artefacts
Copyright © 2006 FZI Karlsruhe kmg
Model Transformation: M2M Engines Architecture
Rule4Rule3
Rule2
Importer Transformator Exporter
Rule-ModelUML
Source ModelTool A
Target-ModelTool B
<<metamodel>>Source-Metamodel
<<metamodel>>Target-MetamodelRule1
LHS RHS
Instance of Instance of
Copyright © 2006 FZI Karlsruhe kmg
R121_AssociationClassRealization Elements
LHSRealization Elements
source : AssociationClass
ae2 : AssociationEndisNavigable = =true
ae1 : AssociationEndisNavigable = =false
sender : Class
receiver : Class
RHSRealization Elements
sender : SLSystem
x_Outport : SLBlockname = ae1.name+"_Out"blockType = >Outport
receiver : SLSystem
x_Inport : SLBlockname = ae2.name+"_In"blockType = >Inpor t
: SLBlock
: SLBlock
root : SLSystem
demux : SLBlockblockType = >Demuxname = source.name
x_Line : MDLElement, SLLinedstPort = Utility::countInports2(receiver)srcPort = Utility::countOutpor ts2(sender )elementIDelementName = sender.name+"_to_"+receiver.name
mux : SLBlockblockType = >Muxname = source.name
rPorts : MDLElement, MDLStringvalue = " [1, "+Utility::getAllAtt ributesSize(source)+" ]"elementName = >PortselementID
sPorts : MDLElement, MDLStringvalue = " ["+Utility::getAllAtt ributesSize(source)+" , 1]"elementName = >Por tselementID
sShowName : MDLElement, MDLStringvalue = >onelementName = >ShowNameelementID
rShowName : MDLElement, MDLStringvalue = >onelementName = >ShowNameelementID
inDemux : MDLElement, SLLinesrcPor t = >1dstPort = >1elementName = source.nameelementID
muxOut : MDLElement, SLLinesrcPort = >1dstPort = >1elementName = source.nameelementID
outPortPos : MDLElement, MDLStringvalue = Utility::getPositionOfOutport(sender, ae1, 700, 60)elementName = >PositionelementID
inPortPos : MDLElement, MDLStringvalue = Utility::getPosit ionOfInport(receiver, ae2, 50, 60)elementName = >PositionelementID
posMux : MDLElement, MDLStringvalue = Utility::getPositionOfOutportMux(sender, ae1, 620, 60, Utility::getAllAttributesSize(source))elementName = >PositionelementID
posDemux : MDLElement, MDLStringvalue = Ut ility::getPositionOfInpor tDemux(receiver , ae2, 160, 60, Utility::getAllAttr ibutesSize(source))elementName = >PositionelementID
AssociationClass{javax.jmi.substituteName=UmlAssociationClass}
+r121a_AssCls()+r121_AssociationClass()
con necti on-associ ati on
parti c i pant-assoc iat ion bl ock-blockElementsrcBlock-srcBlockLine
block-bl ockElement
system-systemElement
system-system Element
dstBloc kLi ne-d stBlock
system-systemElement
owner-attri bute
o wner-attribu te
owner-attri bute
owner-a ttri bute
srcBlo ck-srcBloc kLi ne
dstBl ockL ine-dstBlo ck
system-systemEle men t
dstBlock-d stBlockLine
srcBlockLine -srcBlocksyste m-syste mElement
syste m-syste mEl ement
owner-attri bute
own er-attribute
o wner-attribu te
owner-attri bute
system-systemElement
assoc i at ion-conne cti on
associ at ion-parti c i pant
system-systemEl eme nt
Transformation Rules UML -> Simulink
Copyright © 2006 FZI Karlsruhe kmg
Tools Chains used at ITIV/FZI
VHDL / Verilog
Mentor Graphics u.a.
ALTERA Quartus-II
XilinxISE 5.2
ALTERAStratix
XilinxVirtex-2/Pro
Mentor Graphic, Protel DXP u.a.
MATLAB/Simulink
ALTERADSP-Builder
XilinxSystem
Generator
dSPACETargetLink
MPC555TriCore
OSEK/VDX
Statemate
R-in-uC
MPC555TriCore
OSEK/VDX
UML-Tools
CG
MPC555AT91
uC/OS
C-Code VHDL-Code VHDL-Code C-Code C/C++-Code
Copyright © 2006 FZI Karlsruhe kmg
Tools used for ECU design
specification support (Doors, QFD/Capture) reactive systems (SDL, Stateflow, Statemate)
closed loop control systems (ASCET-SD, Matlab/Simulink, MatrixX)
software systems (Real-time Studio, Rhapsody in C++,Rose, Together, Poseidon, MagicDraw,Ameos TAU2)
performance analysis (SES/Workbench, Foresight)
ASIC Design (Cadence, Mentor, Synopsys)
rapid prototyping, HiL (dSPACE, ETAS, IPG, Quickturn)
tolerance analysis (Rodon)
application, test, diagnosis (ETAS, Hitex, Vector, RA)
C-Verifier (PolySpace)
Copyright © 2006 FZI Karlsruhe kmg
Distributed ECU’s in cars - design challenges
Still increasing complexity (more comfort and safety functions coming)
number of ECU’s must not increase, should decrease!less, but more powerful HW platforms (8, 16, 32-bit µC)eventually new, more flexible architectures(e.g. dynamically reconfigurable?!)
requires redistribution (mapping) of software onto fewer hardware platforms
Today’s E/E architecture in a car is characterized by an assembly of (too) many locally optimized subsystems
Only OEM can go for global optimum
new system level design exploration tools are required
Copyright © 2006 FZI Karlsruhe kmg
Requirements for new system level tools
Model based design as a basis.Is accepted in research and predevelopment, not yet standardin ECU development
Design space exploration meansdistribution of hardware and software under consideration ofsensor/actuator locationscomputation performance as well as communication performanceCo-design not only for hardware and software but alsofunction, safety, security
Metrics and parameters used are domain specifictherefore, domain specific system level tools are requiredinterfacing seamlessly with component specific tools (meet in the middle).
A lot of model transformations are required
Copyright © 2006 FZI Karlsruhe kmg
Abstraction Layers
Feature Function Network
List of Features
Functions Network
Components and Networking
Topology
FL
FFN
FN
KN
TOP
Top-
Dow
n-D
esig
n
Bot
tom
-Up-
Des
ign
Which features?
Detailed Specification of Functions architecture
Comp. ArchitectureNetwork InfrastructurePower Distribution
Topologywiring harness
What is the concept behind the features?How do they interact?
Copyright © 2006 FZI Karlsruhe kmg
Abstraction Layers
Typical domain specific views
Features
Functions
Components
Component locations and wiring
Design space explorationneeds domain specific metricsand parameters
Copyright © 2006 FZI Karlsruhe kmg
EE-Architecture Concept Tool (www.aquintos.com)
Tool-Framework for Development using Eclipse-Basis
ExtendabilityOpen API
Supports Model ExplorationModel Management
Multi-User (Database)Single-User (File-based)
Variant ManagementKernel based onpure:systems Technology
Export / Import FiltersDBC FIBEXKBLMATLAB/SimulinkUML ARTiSAN Studio
Report GenerationBIRT TechnologyUser Configurable Reports
Metric-InterfacePython, alternative Java API
Graphical EditorsVariants Management
MySQL® Oracle®
Model-Data Backbone
E³.cable
Microsoft EXCEL
Telelogic Doors
Open API & M2M
DocumentationAnalysis, Metrics
Excel
Word
Mulit-User (DBMS) / Single-User (XML-File)
Simulink u.w.
Copyright © 2006 FZI Karlsruhe kmg
• What system level tools should provideDocumentation (readable for men, specific for application domain)Data exchange between all designers across company boundariesData exchange between computer aided tools supporting distributed databasesIntellectual Property, reusable in librariesParameterized for variant designSupporting standards and guidelines (e.g. HIS, Autosar)Testable (Fault models, automatic Model validation), quality assured(automatic generation of test pattern and test bench) and documented (what is modeled, but also what is not modeled)Seamless in design flow (Analysis, Design, Verification, Integration, Validation, Test, Application, Diagnosis)Reviews, Rule Checking, Simulation, Formal Verification, Model Checking Synthesis, automatic, interactive optimizing (e.g. RP-Code, Production Code)allow access for automatic parameter-extraction
Conclusion (1)
Copyright © 2006 FZI Karlsruhe kmg
Conclusion (2)Design studies show:• Model based methodologies and tools are well performing and promising • Seamless design flow only partially given (e.g. digital hardware, software).• Interfaces for Modeling, Simulation, Characterization mostly manual• hard problem for design of embedded systems
Cross sensitivity of Components (insufficient characterization)Safety, Security, Function-CodesignAccording modeling is really time and cost consumingMixed-Mode, Multi-Level-Simulation requiredFormal Verification und Validation not possible?!
• Non functional requirements• Time-, frequency- und parameter-domain
Module / System-Integration und –TestCross-sensitivities, EMC, Certification
Copyright © 2006 FZI Karlsruhe kmg
Conclusion (3)
Model based system design is possible and very promising,tools like Matlab/Simulink/Stateflow are essential
however, there are many design and analysis steps still missing,especially in early system design phases:
design space explorationheterogenous system level modeling and simulationmodel checking, abstract interpretationcode generation for RP and for productiontest program generationconnection to 3D mechanical design (mechatronic)connection to life cycle product data management systems
top related