sb09q3ss01-mtl
DESCRIPTION
Systems Engineering of GM’s Global EE / SW Product Line. Dr. Joseph D’Ambrosio. ECS Process, Methods , & Tools GLOBAL RESEARCH & DEVELOPMENT. SB09Q3ss01-MTL. Outline. Introduction Embedded Systems Development at GM Product Line Engineering Additional Topics. - PowerPoint PPT PresentationTRANSCRIPT
Dr. Joseph D’AmbrosioECS Process, Methods, & ToolsGLOBAL RESEARCH &DEVELOPMENT
Systems Engineering of GM’s Global EE / SW Product Line
¶ Introduction¶ Embedded Systems Development at GM¶ Product Line Engineering¶ Additional Topics
Outline
¶ Automotive Industry 25+ years– GM, Delphi– Research, Advance
Development, Product Development
– Model-Based Sys. & SW Development, Safety-Critical Systems, Cyber Security, By-Wire Systems, Vehicle Control Systems, VLSI Design & Tools, Testing
– ISO Technical Expert – ISO 26262 Automotive Functional Safety Standard
¶ PhD University of Michigan – EE Design Methods / Optimization
¶ 50+ publications, 7 patents
About Me – Dr. Joseph D’Ambrosio
Warren, MI SHANGHAI, CHINA
PALO ALTO, CA HERZLIYA, ISRAEL
There Has Never Been A Better Time
To Be An AUTOMOTIVE EMBEDDED
SYSTEM ENGINEER
BIG THINGS ARE COMING…
AND WE HAVE A FRONT ROW SEAT!
CURRENT DNA
Powered Mechanically by Internal
Combustion EngineControlled
Mechanically
Energized by Petroleum
Stand-alone
Powered Electrically by Electric Motors
ControlledElectronically
Energized by Biofuels,
Electricity, and Hydrogen
“Connected”
NEW DNA
Totally Dependence on the Driver
Semi/Full Autonomous
DrivingVehicle Sized for Max Use – People
and Cargo
Vehicle Tailored to Specific Use
CADILLAC DRIVER ASSISTANCE / ACTIVE SAFETY
Package 2 – “Driver Assist Package”
Package 1 plus: Full Speed-Range ACC (Stop w/Go Notifier) Auto Collision Preparation (includes
Collision Imminent Braking) Low-Speed Front/Rear Automatic Braking
(Emergency Braking to Avoid Contact)
Cadillac ATSCadillac XTSCadillac SRX
Package 1 – “Driver Awareness Package”
Lane Departure Warning Forward Collision Alert Side Blind-Zone Alert Rear Cross-Traffic Alert Haptic Safety Alert Seat FeedbackAlso includes: Rear Vision Camera Front & Rear Park Assist
Cadillac ATSCadillac XTSCadillac SRX
Front Camera
Rear Camera
Ultrasonic SensorsShort Range Radars
Safety Alert Seat Short Range Radar
Long/Mid Range Radar
Short Range Radars
Front Camera
Ultrasonic SensorsShort Range Radars
Rear Camera
7 7
+ “Warning”
“Warning”
Improving Safety with V2V/V2X COMMUNICATIONS
AUTONOMOUS DRIVING
Rear Vision System– Object detection– Far IR Capability
Short-Range
SensorsLong-RangeScanningSensor
Forward Vision System– Lane tracking– Object detection– Far IR Capability
Short-Range
SensorsLong-Range
Sensors
EnhancedDigital Map
System
UltrasonicSensors
UltrasonicSensors
Dedicated Short-RangeCommunication + GPS (V2V)
Forward Vision System
EN-V VIDEO
¶ Introduction¶ Embedded Systems Development at GM¶ Product Line Engineering¶ Additional Topics
Outline
OUR CONTRIBUTION…
History of GM Automotive Computing• First Embedded Controllers
• 1977 – First GM production automotive microcontroller• Electronic spark timing
• 1981 – All GM North American vehicles use microcontroller-based engine controls
• 3.9M vehicles total, 22K ECMs per day manufacturing rate• 50,000 lines of assembly code, MC6800 – 8-bit 2 Mhz, • Comparison against PC industry
• Today • 40-70 microcontrollers per vehicle• 400K Lines of C Code for an engine control application• 64Mb flash file system for infotainment application
PC Sales(in 1000s)
LDAA #ACPRESURJSR ADCONSTAA ACPRESBRCLR INPUTS,IACREQ,ACPR050 BRESET DIAGMW3,M66DET,ACPR050BRCLR INPUTS,INOAC,ACPR060
ACPR050 BCLR TBIMW,ACPRESHIJMP IMNRO060
. . .
GM Embedded Software History
20001985 1990 1995 2010
Model-basedDevelopment
DEFINITION MODULE Buffer; VAR nonempty, nonfull:BOOLEAN; PROCEDURE put (x:INTEGER); PROCEDURE get (VAR x:INTEGER);END Buffer.
IMPLEMENTATION MODULE Buffer; CONST N=num_lines; VAR in, out: [0..N-1]; n: [0..N];
PROCEDURE put (x:INTEGER);BEGIN IF n<N THEN buf[n]:=x; . . .
ANSI CModula-GM(Ada-like)
AssemblyLanguage
#include <stdio.h>
struct vehicle{ char make[15]; long miles; float operating_costs;};
void show_vehicle(struct vehicle *);
void main(){ struct vehicle car[] = {“Chevrolet: 100000L, 3456.78, Ford, 11000L, 5000.00}; show_vehicle (car)}
void show_vehicle(struct vehicle *vehicle_ptr){ . . .
file.mat
Variable
Calibration
Calibration
Variable
Variable
13
13Variable
Calibration
Cal_File
2005
Classes of Embedded Systems• Deeply Embedded
• Real Time, Possibly Safety Critical• Examples: Electronic Power Steering, Electronic Brake Controls,
Powertrain, Active safety• Development Tools: Simulink/Stateflow• Future SW Architecture: AUTOSAR
• Moderately Embedded• Loosely Real Time• Example: Body Control, Instrument Panel, Heating/Cooling• Development Tools: e.g., Rhapsody• Future SW Architecture: AUTOSAR
• Lightly Embedded• Non Real Time, but may include data streaming; Security is
important• Example: Infotainment Systems• Future SW Architecture: e.g., QNX/Linux, ANDROID, …
Classes of Embedded Systems• Closed-Loop Control Systems
• Based upon control system theory (e.g., PID control)• Examples: Steering systems, braking systems,
propulsion systems• GM Tools: Simulink/Stateflow
• State-Based Systems• Based upon state transition diagrams• Example: Body control• GM Tools: Rhapsody
Classes of Embedded Systems
• Non Safety Critical – no potential to cause harm
• Detect fault, save diagnostic trouble code, possibly alert driver
• Tools: DFMEA, Requirements-Based Testing, …• Safety Critical – potential to cause harm;
timing properties are important• Fail Safe – detect fault, shut down within required fault
response time, warn driver• Fail Operational – detect fault, continue to operate,
possibly in a degraded mode, warn driver• Tools: Preliminary Hazard Analysis, Safety Concept, DFMEA,
Fault Tree Analysis, Requirements Analysis, … Safety Case
¶ Algorithms: Simulink / Stateflow, Rhapsody¶ Plant modeling: Simulink, Saber, GT Power,
AmeSim, CarSim, …¶ Non Functional System Properties
– Timing / Utilization: SymtaS¶ Electrical: Design Architect, Siemens NX¶ DOORS, Gears, Rhapsody, RTC, Synergy
Model-Based Development Environment
¶ Introduction¶ Embedded Systems Development at GM¶ Product Line Engineering¶ Additional Topics
Outline
20
General Motors Electrical, Controls and Software
¶ GM has one of the most complex systems and software product line engineering challenges in the world– 3000 contributing engineers– 300 hierarchical subsystems– Thousands of variant features– Millions of product instances per year– Tens-of-thousands of unique product
variants– Dramatic increase in variation due to
new propulsion systems and active safety
– Global diversity in legislative regulations– Extreme economic and competitive
pressures– Product line and feature set evolves
annually– 15 concurrent development streams20
Build Times 2004-2008Q1
0
20
40
60
80
100
120
2004-Q1
2004-Q2
2004-Q3
2004-Q4
2005-Q1
2005-Q2
2005-Q3
2005-Q4
2006-Q1
2006-Q2
2006-Q3
2006-Q4
2007-Q1
2007-Q2
2007-Q3
2007-Q4
2008-Q1
Quarters
Min
utes
ECMTCMLinear (ECM)Linear (TCM)
System Design Motivation
21
Cost Quality Speed
Volume
Standardization Understanding
Growing Complexity
Global Footprint
0
20
40
60
80
100
120
140
160
180
200
99 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14
Reuse
Safety and Security
GM Enables massive Reuse through Software Product Lines
¶ A Product Line is a set of systems sharing a common, managed set of features that are developed from a common set of core assets in a prescribed way
¶Why Product Line over Products for GM Embedded Software?
– As much as an 85% reduction in effort for a second (third, fourth, etc.) application
– As much as a 70% reduction in field claims overall
R &D / Advanced
Macro Engineering MethodA System of Systems of Systems
Cloud of Standard Solutions
(The Product Line)
Standardized Set of Deployments Each Deployment
Applied to Multiple Vehicles
Best Fit Selection
Change dialog to expand
product line to fill gaps
23
Vehicle Control System Development
24
ACCLDW
LXCCTD
KLEVRP
EngCycIMC
DFI
ACC-v1ACC-
v1ACC-v1ACC-v1ACC-v1LDW-v1
ACC-v1ACC-
v1LXC-v1
ACC-v1ACC-
v1CTD-v1
ACC-v1ACC-v1KLEC-v1
ACC-v1ACC-
v1VRP-v1
ACC-v1ACC-v1EngC-v1
ACC-v1ACC-v1IMC-v1
ACC-v1ACC-
v1DFI-v1
ACC-v1 LXC-
v3
KLEC-v2
VRP-v2EngC-v1DFI-v5
ACC-v3 LXC-
v3
KLEC-v5
VRP-v1EngC-v1DFI-v3
Chevrolet BuickCTD-v1
Controller
Assembly
Requirements
SW Components
Vehicle
Vehicle
Decreasing level of abstraction
Increasing level of integration
Software Product Line - Single Vehicle View
Subsystems – Chassis Engine, etc.
Subsystems – Chassis Engine, etc.
Controllers 1-n
Assembly
Requirements
SW Component
Vehicles
Software Product Line - Single Component View
Decreasing level of abstraction
Increasing level of integration
Represents all builds in the Product Line
Represents all components in the Product Line
Represent all vehicles supported by the Product Line
Software Product Line - Components X Vehicles
¶ Introduction¶ Embedded Systems Development at GM¶ Product Line Engineering¶ Additional Topics
Outline
Additional Topics• AUTOSAR• Multicore systems• Cyber Physical System
• Virtual Development• Multi Domain Models• System Optimization
• Safety-Critical Systems• SysML, AADL, East ADL, SystemC
Thank You!