S02 Fuhrman slides

Views:
 
Category: Entertainment
     
 

Presentation Description

No description available.

Comments

By: spicemaan (65 month(s) ago)

pl make the presentation available to download. Thanks.

Presentation Transcript

The Role of Embedded Software in the Automobile Industry: 

The Role of Embedded Software in the Automobile Industry Tom Fuhrman General Motors April 11, 2002

Outline: 

Outline Importance of embedded automotive software Automotive computing environment Software development process Software architecture and related architectures Software architecture patterns & their models in UML Summary

Outline: 

Outline Importance of embedded automotive software Automotive computing environment Software development process Software architecture and related architectures Software architecture patterns & their models in UML Summary

Importance of Embedded Automotive Software: 

Importance of Embedded Automotive Software 90% of future innovation in the auto industry will be driven by electronics and software — Volkswagen 80% of the car electronics in the future will be software-based. — BMW 80% of our development time is spent on software. — JPL Vehicle functionality and performance are increasingly determined by software Software is a differentiator, while computing hardware is a commodity (compare desktop computing)

Case Study: Distributor in Ignition System: 

Case Study: Distributor in Ignition System Mechanical Distributor Advance timing as function of load and engine speed Vacuum advance — vacuum from intake manifold draws against a diaphram under heavy loads Centrifugal advance — weights swing out as engine speed increases Analog Computer Mimic same control laws as mechanical system Digital Computer Equations Look-up tables with interpolation Digital filtering

Case Study: Steam Locomotive: 

Case Study: Steam Locomotive Steam locomotive: “The most complex mechanical device ever built by man” (or ever will be!) Complexity shifting from mechanical to electronics and software

Case Study: Autonomy concept car: 

Case Study: Autonomy concept car Fusion of two key technologies: Fuel Cells, and X-By-Wire, where X = {throttle, brake, steer}

Case Study: Autonomy concept car: 

Case Study: Autonomy concept car Some X-By-Wire advantages Weight reduction (e.g. no tie rods) Environmental (e.g. no hydraulic brake fluid, master cylinder) Packaging flexibility (e.g. Autonomy skateboard) Control flexibility (e.g. enabler for crash avoidance features) Some X-By-Wire challenges Design of fault tolerant systems Cost

Slide9: 

Features and Trends 1970 1990 2010 Electronics Functionality Index % Vehicle Cost Electronics Infancy Product Proliferation Integration & Systems Functionality % Vehicle Cost 100 1000 10000 0% 30% 15% Electronics Cost & Functionality Per Vehicle 1980 2000

Growth in Embedded Vehicle Software : 

Growth in Embedded Vehicle Software 500 1000 1500 2000 1990 1995 1996 1997 1998 1999 2000 2001 2002 0 MEMORY UTILIZATION - (K-BYTES) MMM TELEMATICS TURN BY TURN NAVIGATION SECURITY SIR BODY/CHASSIS (ABS/TCS) AUDIO (UP LEVEL RADIO) I/P HVAC (PROGRAMMER) POWERTRAIN (PCM/VCM)

Slide11: 

Software Vehicle Value Chain Revenue Market Share Satisfaction Aftermarket Sales Vehicle Engineering Purchasing Manufacturing & Service Dealer Customer Efficiency Speed Flexibility Economy

Outline: 

Outline Importance of embedded automotive software Automotive computing environment Software development process Software architecture and related architectures Software architecture patterns Modeling of software architecture in UML Summary

Slide13: 

Video Audio Tactile Body Control Chassis Control Powertrain Control Vehicle Electrical Architecture OEM Bus(s) Reconfigurable User-machine Interface Communication Entertainment PDA/PC Navigation Entertainment Auxiliary User Interface Outside World Infotainment Bus(es) AMI Gateway The gateway protects the vehicle, controls access to vehicle resources and translates the messages

Automotive Computing Environment: 

Automotive Computing Environment ALSO: Infotainment bus IDB-C, MOST, Bluetooth, IntelliBus, USB, 1394, …

Vehicle Electrical Architecture #1: 

Vehicle Electrical Architecture #1 S S A S A A S A S S A low speed bus gateway high speed bus S A A S A S A A F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 S A F1 Sensor Actuator Software Function Processor Hardware Communication Bus

Vehicle Electrical Architecture #2: 

Vehicle Electrical Architecture #2 S S A S A A low speed bus gateway high speed bus S A A F1 F2 F3 F4 F5 F6 F7 F9 S A F1 Sensor Actuator Software Function Processor Hardware Communication Bus S S S A F13 F11 F12

Outline: 

Outline Importance of embedded automotive software Automotive computing environment Software development process Software architecture and related architectures Software architecture patterns Modeling of software architecture in UML Summary

Software Development Process Objectives: 

Software Development Process Objectives Reduce lifecycle cost Improve quality Increase speed of introduction of innovative features Retain control over intellectual property Software reuse strategy Product line approach (vs. individual product)

Approach: 

Approach Develop a library of software components that can be reused across multiple vehicle programs and across multiple model years, with independence from changes in Processor hardware Motorola vs. Siemens vs. XYZ processors Allocation across electrical architecture Number of processors Types of buses (CAN, LIN, etc.) Network topology Sensing/actuating devices Presence of new features

Software Engineering Institute (SEI) Case Study CelsiusTech†: 

Software Engineering Institute (SEI) Case Study CelsiusTech† A Case Study in Successful Product Line Development, SEI, 1996. http://www.sei.cmu.edu/pub/documents/96.reports/pdf/tr016.96.pdf †(now SaabTech)

Reduction in Development Time: 

Reduction in Development Time

Factors that Enabled Success: 

Factors that Enabled Success Technical — software architecture Organizational structure Management commitment Education and training

Introduction to 3 Tiered Process: 

Introduction to 3 Tiered Process Strategic Asset Development Strategic Asset Library Implementation Asset Development Implementation Asset Library Vehicle Program Development

Introduction to 3 Tiered Process: 

Introduction to 3 Tiered Process Software Architecture Communication Strategies and Architectures Feature Architectures Strategic Asset Development Implementation Asset Development Vehicle Program Development Features Communication Kernels Real Time Operating Systems Software Component Selection Middleware Configuration Integration and Test

Slide26: 

Design Specification Detailed feature design & Code Verification Feature Level Integration and Verification Feature requirements Unit level verification Feature Development Feature Modeling, Simulation and Prototyping Partitioned Feature Modeling (focus on reuse / location independence - conforms to architecture) Interface Specification Product integration verification and deployment Interface Verification

Slide27: 

Design Specification Analysis design Detailed feature design Verification Subsystem level integration and verification Feature Level integration and verification for each architecture Vehicle Requirements Unit level verification Feature Deployment in Vehicle Program Feature Modeling, Simulation and Prototyping Executable feature specification (Vehicle Architecture selection) Vehicle interface selections Product integration, verification and deployment Code generation Feature functional analysis Integration and Calibration

Slide28: 

V-Model Instantiations over Time Time Event- based (Body) Continuous (Powertrain and Chassis) Fail- Operational (ByWire) Update of Event-based Entry Control Exterior Lighting ABS HVAC Update of Entry Control New Feature

Outline: 

Outline Importance of embedded automotive software Automotive computing environment Software development process Software architecture and related architectures Software architecture patterns & their models in UML Summary

What is Architecture: 

What is Architecture Definition The purposeful arrangement of components into a system that meets stated objectives

IEEE Definitions of Architecture: 

IEEE Definitions of Architecture The fundamental organization of a system, embodied in its components, their relationships to each other and to the environment, and the principles governing its design and evolution. The structure and relationships among the components of a system. The system architecture may also include the system’s interface with its operational environment.

Alternate Architecture for Power Tools: 

Alternate Architecture for Power Tools Black & Decker ~ 1981 (still used) Drill Circular Saw Router Jigsaw See Lenherd, Alvin P, “Revitalizing the Manufacture and Design of Mature Global Products” In Bruce Guile and Harvey Brooks, eds, Technology ad Global Industries, Washington, National Acaedmy Press, 1987. © Daniel E Whitney

Layered Software Architecture: 

Layered Software Architecture

Well Defined Layers: 

Well Defined Layers Application Platform Virtual Hardware Posix RTOS Abstract Hardware Physical Hardware Java Virtual Machine Native Drivers Posix RTOS CPU Platform VEH BUS Public and Proprietary Java APIs Product Specific Applications other H/W AMIC and/or MMM APIs GSM Phone Analog Audio Mobile Phone JNI C or C++ “drivers” JNI C or C++ “engines” Java Sound Java AWT Audio Phone Control Radio Tuner Audio Control Phone Dialer Re- Usable (Java) Middle Ware Platform Custom Public Foundation for AMIC Reference Implementation

Slide35: 

software Made of hardware Devices Made of actuators are sensors power gnd, fuses comm Made of I/O Systems Engineering manages capacities properties Harness Architecture Has a Has a Communication Architecture Physical Electrical Architecture Made of wires Made of datalinks ECU Software Architecture Has a is ECU Hardware Architecture Has a Vehicle Electrical Architecture ECU Vehicle Electrical System Harnesses rom ram CPU Vehicle Systems and their Architectures Distributed Software Architecture Control Algorithm Architecture

Architecture Description Languages IEEE Std 1471-2000: 

Architecture Description Languages IEEE Std 1471-2000

Outline: 

Outline Importance of embedded automotive software Automotive computing environment Software development process Software architecture and related architectures Software architecture patterns & their models in UML Summary

Software Architecture Patterns: 

Software Architecture Patterns Evolution of Software Interfaces Façade Pattern Observer Pattern (a.k.a. Publish/Subscribe) Proxy Pattern

Evolution of Software Interfaces: 

Evolution of Software Interfaces Static API in source format (e.g. C header files) Language-independent Interface Definition Language (IDL) Design-by-contract with precondition/postcondition logic (cmp. Hoare’s triples {P}S{Q}) Dynamic interaction patterns, e.g. ROOM, RoseRT

UML Representation of Interface to Distributable Unit in RoseRT: 

«port» PortClassX «protocolRole» master «protocol» ProtocolA UML Representation of Interface to Distributable Unit in RoseRT Claimed Benefit: Captures rules for allowed interactions between Distributable Units, enabling formal analysis, leading to faster and easier integration

Façade Pattern: 

Façade Pattern ImplementationX 1 1..*

Example of Façade Pattern: 

Example of Façade Pattern

Observer (Publish/Subscribe) Pattern: 

Observer (Publish/Subscribe) Pattern 1: Subscribe 4: Callback 2: Subscribe 3: Register 5: Publish 6: Publish 8: Get 7: Get

Example of Observer Pattern: 

Example of Observer Pattern 1: Subscribe 2: Register 3: Callback 4: Publish (really Trigger) 5: Get Convention: PUSH for control flow PULL for data flow

Proxy Pattern: 

Proxy Pattern Put

Example of Proxy Pattern: 

Example of Proxy Pattern DP:Put( )

Outline: 

Outline Importance of embedded automotive software Automotive computing environment Software development process Software architecture and related architectures Software architecture patterns & their models in UML Summary

Summary: 

Summary Embedded software does have an important, and growing, role, in the automobile industry Embedded software is the source of much of the innovation in the automobile industry Vehicle information systems (infotainment, telematics) Vehicle control (X-By-Wire) The automobile industry is undergoing a metamorphasis from a mehanical-based industry to a computer-based industry There are many exciting career opportunites for electrical, computer, and software engineers and scientists in the automobile industry of the 21st century