Architektura SDV

SDV wyewoluował z Microdroida, czyli miniwersji systemu Android. SDV skraca czas uruchamiania i zmniejsza rozmiar wykorzystania pamięci, co jest kluczowe w przypadku SDV.

SDV szybko aktywuje pojazd, gdy użytkownik się do niego zbliża. W niektórych konfiguracjach SDV wyświetla też zawartość instrumentów klastra, gdy użytkownik zaczyna korzystać z pojazdu.

Integracja z systemem Android Infotainment (AAOS IVI)

SDV jest opracowywany z myślą o ścisłej integracji z systemem operacyjnym Android Automotive OS In-Vehicle Infotainment (AAOS IVI). Umożliwia to wbudowaną, bezpieczną i zaawansowaną komunikację między tymi dwoma systemami.

SDV działa jako maszyna wirtualna

Architektura jest zaprojektowana tak, aby działać jako system operacyjny uruchomiony na maszynie wirtualnej na hiperwizorze obsługującym VirtIO. Ułatwia to testowanie i integrację w chmurze. Architektura oferuje też wiele maszyn wirtualnych na tym samym procesorze, co zapewnia izolację, oraz niezależną od platformy konstrukcję, która obniża koszty integracji.

Standaryzacja stosu komunikacyjnego SDV

Jednym z celów inicjatywy SDV jest obniżenie kosztów integracji oprogramowania innych firm. Głównym elementem prac nad SDV jest standaryzacja wewnętrznego stosu komunikacyjnego na potrzeby komunikacji między procesami w maszynie wirtualnej i z innymi maszynami wirtualnymi.

SDV korzysta też z istniejących technologii komunikacyjnych Androida, w tym z Binder, gRPC i FMQ. Są one opakowane w nowy interfejs API, który zapewnia elastyczność i konstrukcję skupiającą się na wydajności w motoryzacji i modelach obiektów.

Komponenty motoryzacyjne opracowane przez Google

Aby testować przypadki użycia SDV w motoryzacji, zespół Google SDV opracowuje kilka typowych komponentów motoryzacyjnych. Obejmują one orkiestrację usług, zarządzanie trybem zasilania pojazdu, integrację SOME/IP i telemetrię.

Obsługa telemetrii

Spełnienie podstawowych wymagań producentów OEM wymaga dobrze zaprojektowanego systemu telemetrii, który umożliwia monitorowanie pojazdów, poprawę zachowania systemu i zarabianie na niektórych przypadkach użycia. Architektura SDV integruje się z telemetrią pojazdu. Głównym celem telemetrii jest zbieranie danych o pojeździe bez konieczności aktualizacji.

Telemetria definiuje nowy język zaprojektowany w protokole protobuf, który wyraża scenariusze zbierania danych. Ten język definiuje zbieranie danych z usług SOA, przetwarzanie danych na brzegu sieci i tworzenie raportów z danymi, które aplikacja telemetrii może przesłać. Telemetria obejmuje backend w chmurze, który generuje i weryfikuje konfiguracje danych przed wysłaniem ich do pojazdu.

Integracja z Google Cloud na potrzeby tworzenia oprogramowania

Jedną z zalet SDV jest to, że umożliwia symulowanie i tworzenie oprogramowania SDV bezpośrednio w chmurze, z użyciem specjalistycznego sprzętu lokalnego lub bez niego. SDV uses existing Google technologies, such as Cuttlefish. SDV współpracuje z innymi zespołami, aby sprawdzić, czy obsługuje specjalne potrzeby, takie jak topologia wielu maszyn wirtualnych.

Ta technologia obsługuje też tryb ciągłej integracji i tryb ciągłego dostarczania (CI/CD) w infrastrukturze Google Cloud przed wdrożeniem nowych aktualizacji oprogramowania w pojeździe.

Włączanie interfejsu instrumentów pojazdu

SDV włącza interfejs instrumentów klastra, uruchamiając się w około 1–2 sekundy. Display Safety udostępnia interfejs funkcji związanych z bezpieczeństwem. Na przykład instrumenty samochodowe, takie jak prędkość i lampki kontrolne.