Automakers that write software directly against vendor-specific APIs become hostages to semiconductor lead times. When factory allocations dry up, the OEM cannot switch suppliers without discarding tens of millions of dollars in software investment. Modern SDV software engineering builds on clean abstraction layers (HALs) that decouple business logic from underlying silicon architectures.
A robust automotive HAL isolates hardware interactions behind C++ abstract interfaces and pure virtual classes. The trajectory controller calls `ISteeringActuator::SetSteeringAngle(degrees, rate_limit)` without knowing whether the underlying communication occurs over CAN-FD via an NXP FlexCAN peripheral, or over SOME/IP via an Ethernet TSN switch. Silicon vendor BSPs implement the driver plugin; the safety control loop remains 100% portable.