Visão geral do VSIDL e do middleware

A Linguagem de definição de interface de serviços de veículos (VSIDL, na sigla em inglês) é uma linguagem específica do domínio criada com base em buffers de protocolo. O VSIDL foi projetado para definir as interfaces e interações entre pacotes de serviços em um veículo definido por software (SDV, na sigla em inglês). Para informações sobre pacotes de serviços, consulte Unidades e pacotes de serviços.

O VSIDL fornece a interface para interagir com serviços de nível inferior no ecossistema de SDV. É possível usar o VSIDL para especificar unidades de serviço que se comunicam usando chamadas de procedimento remoto (RPCs), incluindo streaming unário, do cliente e do servidor , um túnel de dados ou mapeamentos de serviço SOME/IP para interoperar com unidades de controle eletrônico (ECUs) AUTOSAR e stacks SOME/IP (como COVESA vsomeip). O código gerado pelo VSIDLC processa o registro da unidade de serviço com a descoberta de serviços SDV.

Usando outros arquivos de configuração, o código que o VSIDLC gera para pacotes de serviço pode ser empacotado como APEXes, que podem ser controlados pelo Orchestrator e pelo SDV Lifecycle Manager.

Implementar serviços de SDV

Confira as etapas gerais para definir as interfaces e interações entre pacotes de serviços em uma SDV e criar pacotes APEX para implantação:

  1. Defina estruturas de dados em arquivos protobuf (arquivos com a extensão .proto). Use o protobuf para definir as estruturas de dados trocadas entre as unidades de serviço definidas pelo VSIDL.
  2. Defina a arquitetura de serviço em arquivos VSIDL (arquivos com as extensões .vsidl). O VSIDL é usado para definir pacotes e unidades de serviço. O VSIDL faz referência a tipos declarados pelo protobuf (etapa 1).
  3. Gere o middleware. O middleware oferece uma maneira padronizada para que os serviços se comuniquem e interajam entre si.
  4. Implemente uma lógica de negócios personalizada em Rust.
  5. Empacote seus pacotes de serviços, incluindo código de lógica de negócios gerado e personalizado, em um pacote APEX para implantação.
  6. Configure seu catálogo para atualizações automáticas e suporte do ambiente de desenvolvimento integrado.

O sistema de tipos do VSIDLC opera em dois níveis: Protobuf e VSIDL. O Protobuf é usado para definir estruturas de dados trocadas entre as unidades de serviço definidas pelo VSIDL. Nesta seção, explicamos como as estruturas de dados são definidas em VSIDL e protobuf.

A seguir

Leia os seguintes documentos: