🚦 Evolution of Automotive Software: Layered → Domain Architecture
💠 1. Layered / ECU-Centric Architecture (The Beginning)
Think of early cars as cities with small independent shops.
🔹 Each function = its own ECU + its own full software stack.
▪️ ABS → dedicated ECU, with its own OS + drivers + application.
▪️ Airbag → separate ECU.
▪️ Power windows → separate ECU.
🔹 Communication = point-to-point CAN/LIN.
👉 Software inside each ECU:
🔹 Application (control logic)
🔹 Basic software (drivers, communication, diagnostics)
🔹 OS (OSEK / vendor-specific)
🔹 Hardware-specific (MCAL often custom)
⚠️ Problems:
🔹 Too many ECUs (80–100+ in premium cars).
🔹 Heavy wiring harness → cost + weight.
🔹 Same software (like diagnostics, comm stack) written again and again in every ECU.
🔹 Very hard to integrate → “software islands.”
💠 2. Domain-Based Architecture (Organized City)
Now imagine the city grouped into districts (domains):
🔹 Powertrain domain: Engine, Transmission, Emissions.
🔹 Chassis domain: ABS, Brakes, Steering.
🔹 Body domain: Lights, Windows, Climate control.
🔹 Infotainment domain: Audio, Navigation, Connectivity.
Each Domain Controller ECU runs software for multiple related functions.
👉 Software inside a Domain Controller:
🔹 Runs AUTOSAR Classic layered architecture.
🔹 Application software = Software Components (SWCs), each with its own interface.
🔹 RTE (Runtime Environment) = middleware, automatically connects SWCs.
🔹 BSW (Basic Software) = standardized modules (communication stack, diagnostics, memory).
🔹 MCAL = hardware abstraction, makes SW portable across MCUs.
🔹 OS = AUTOSAR OS, schedules tasks & events.
📖 Example : Imagine you want to control “brake lights when pressing the brake pedal”.
💠 Layered ECU (old):
🔹 Brake pedal ECU sends a raw CAN message to brake light ECU.
🔹 Brake light ECU has custom logic to read message switch lights ON.
💠 Domain ECU (new):
🔹 Both pedal input + brake lights are part of Chassis/Body Domain.
🔹 Application SWCs handle inputs/outputs.
🔹 RTE routes the signal between SWCs (no hardcoding).
🔹 AUTOSAR COM ensures standardized messaging.
🔹 Diagnostics & flashing → handled in the same standardized way.
👉 Easier integration, less code duplication, faster debugging.
✅ Essence
🔹 Layered ECU-Centric → Software = islands, tightly coupled to hardware, non-standard.
🔹 Domain Architecture → Software = standardized, modular, portable, built on AUTOSAR Classic.
🔹 This transition was the foundation for modern Software-Defined Vehicles (SDVs).
⚡ Next step after Domain = Zonal & Centralized Architectures, where AUTOSAR Adaptive, service-oriented communication (SOME/IP, DDS), HPCs, and OTA.
#AUTOSAR #SoftwareDefinedVehicle #AutomotiveEngineering #EmbeddedSystems #DomainArchitecture #ZonalArchitecture #SDV #AUTOSAREngineer #ConnectedCars #AutomotiveSoftware