EEPROM Abstraction (Ea)
Provides uniform access to external and internal EEPROM devices.
Funktionen — Übersicht
void Ea_Init (const Ea_ConfigType* ConfigPtr);Initializes the EEPROM abstraction module.void Ea_SetMode (MemIf_ModeType Mode);Function to switch the mode of the underlying EEPROM DriverStd_ReturnType Ea_Read (uint16 BlockNumber, uint16 BlockOffset, uint8* DataBufferPtr, uint16 Length);Reads Length bytes of block Blocknumber at offset Block Offset into the buffer Data Buffer Ptr.Std_ReturnType Ea_Write (uint16 BlockNumber, const uint8* DataBufferPtr);Writes the contents of the Data Buffer Ptr to the block Block Number.void Ea_Cancel (void);Cancels the ongoing asynchronous operation.MemIf_StatusType Ea_GetStatus (void);Service to return the Status.MemIf_JobResultType Ea_GetJobResult (void);Service to return the Job Result.Std_ReturnType Ea_InvalidateBlock (uint16 BlockNumber);Invalidates the block Block Number.void Ea_GetVersionInfo (Std_VersionInfoType* VersionInfoPtr);Service to get the version information of this module.Std_ReturnType Ea_EraseImmediateBlock (uint16 BlockNumber);Erases the block Block Number.void Ea_JobEndNotification (void);Service to report to this module the successful end of an asynchronous operation.void Ea_JobErrorNotification (void);Service to report to this module the failure of an asynchronous operation.void Ea_MainFunction (void);Service to handle the requested jobs and the internal management operations.void NvM_JobEndNotification (void);Function to be used by the underlying memory abstraction to signal end of job without error.void NvM_JobErrorNotification (void);Function to be used by the underlying memory abstraction to signal end of job with error.
Typen — Übersicht
struct Ea_ConfigTypeConfiguration data structure of the Ea module.
Funktionen & Typen — Detailansicht
função Ea_Init [SWS_Ea_00084] 📄 PDF
void Ea_Init (const Ea_ConfigType* ConfigPtr);
Initializes the EEPROM abstraction module.
A função Ea_Init serve para a inicialização do módulo EEPROM Abstraction ([SWS_Ea_00084]). Ela é disponibilizada por meio do arquivo de cabeçalho Ea.h e coloca o módulo em estado operacional ([SWS_Ea_00084]).
De acordo com a especificação de interface em [SWS_Ea_00084], aplicam-se à chamada as seguintes propriedades e condições de contorno:
- Semântica e Service-ID: A chamada ocorre de forma síncrona. O Service-ID
0x00está atribuído ao serviço. - Reentrância: A função é especificada como não reentrante (Non Reentrant) e, portanto, não deve ser executada de forma concorrente.
- Parâmetros: Como parâmetro de entrada atua
ConfigPtr(tipoconst Ea_ConfigType*), que aponta para o conjunto de dados de configuração selecionado. Não existem parâmetros de entrada/saída nem de saída. - Valor de retorno: A função não fornece qualquer valor de retorno (
void).
Em relação ao contexto de chamada, o presente registro não contém determinações explícitas; a inicialização provavelmente deve ocorrer de forma centralizada na fase de inicialização da ECU, antes que outras funções do módulo sejam executadas. Pergunta Q-b2b40930e5fd0ee7 (aberta) Códigos de erro específicos, reações em caso de erro ou mensagens para DET e DEM não são listados em [SWS_Ea_00084].
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função Ea_SetMode [SWS_Ea_00085] 📄 PDF
void Ea_SetMode (MemIf_ModeType Mode);
Function to switch the mode of the underlying EEPROM Driver
Utilização e semântica
A função Ea_SetMode serve para comutar o modo de operação do driver de EEPROM subjacente ([SWS_Ea_00085]). Ela aceita como parâmetro de entrada o modo desejado Mode do tipo MemIf_ModeType ([SWS_Ea_00085]). A função não possui valor de retorno (void) e está disponível com o Service-ID 0x01 por meio do arquivo de cabeçalho Ea.h ([SWS_Ea_00085]).
A execução ocorre de forma assíncrona (Asynchronous), de modo que a comutação efetiva do driver continua a ser processada em segundo plano após a chamada ([SWS_Ea_00085]).
Simultaneidade e restrições
-
Reentrância: A função é especificada como não reentrante (
Non Reentrant) ([SWS_Ea_00085]). Chamadas paralelas a partir de diferentes tarefas ou contextos devem ser evitadas pelo chamador. -
Contexto de chamada e parâmetros: Não devem ser passados parâmetros de entrada/saída ou puramente de saída; prevê-se exclusivamente o parâmetro de entrada
Mode([SWS_Ea_00085]).
Este texto foi criado por uma IA com base na especificação AUTOSAR.
Guia do implementador em breve (complexidade I1)
função Ea_Read [SWS_Ea_00086] 📄 PDF
Std_ReturnType Ea_Read (uint16 BlockNumber, uint16 BlockOffset, uint8* DataBufferPtr, uint16 Length);
Reads Length bytes of block Blocknumber at offset Block Offset into the buffer Data Buffer Ptr.
Utilização e semântica
A função Ea_Read serve para a leitura de dados úteis de um bloco lógico de EEPROM especificado por meio do cabeçalho Ea.h [SWS_Ea_00086]. Por meio do parâmetro Block Number, endereça-se o bloco lógico, o qual determina simultaneamente o seu endereço inicial na EEPROM [SWS_Ea_00086]. O parâmetro Block Offset define o deslocamento relativo de leitura dentro do bloco, enquanto Length define a quantidade de bytes a serem lidos [SWS_Ea_00086]. Os dados de destino são gravados no buffer referenciado por Data Buffer Ptr [SWS_Ea_00086].
A chamada comporta-se de forma assíncrona (Asynchronous): o valor de retorno E_OK sinaliza exclusivamente que o módulo Ea aceitou a solicitação da tarefa, ao passo que E_NOT_OK indica uma rejeição da tarefa [SWS_Ea_00086]. Interpretação: como a transferência de dados ocorre de forma assíncrona em segundo plano, é provável que o buffer referenciado deva ser mantido inalterado e válido até a conclusão total da tarefa. Pergunta Q-34c9b29f373bd6cf (aberta)
Simultaneidade e restrições
A interface é especificada como não reentrante (Non Reentrant) [SWS_Ea_00086]. Chamadas paralelas a partir de diferentes contextos de execução não são, consequentemente, permitidas e devem ser sincronizadas pelo chamador.
Esta nota de uso foi gerada automaticamente com base na especificação R20-11.
função Ea_Write [SWS_Ea_00087] 📄 PDF
Std_ReturnType Ea_Write (uint16 BlockNumber, const uint8* DataBufferPtr);
Writes the contents of the Data Buffer Ptr to the block Block Number.
A função Ea_Write inicia a gravação assíncrona de dados de um buffer em um bloco lógico de EEPROM [SWS_Ea_00087]. Ela é declarada por meio do arquivo de cabeçalho Ea.h e possui o ID de serviço 0x03 [SWS_Ea_00087].
Parâmetros e valor de retorno
BlockNumber(entrada,uint16): designa o número do bloco lógico e representa simultaneamente o seu endereço inicial na EEPROM [SWS_Ea_00087].DataBufferPtr(entrada,const uint8*): ponteiro para o buffer que contém os dados a serem gravados [SWS_Ea_00087].- Valor de retorno (
Std_ReturnType):E_OKsinaliza que a tarefa de gravação foi aceita para execução pelo módulo Ea;E_NOT_OKsignifica que a solicitação foi rejeitada [SWS_Ea_00087].
Simultaneidade e restrições
A função é especificada como não reentrante (Non Reentrant) [SWS_Ea_00087]. Portanto, chamadas concorrentes provavelmente não devem ocorrer de forma descoordenada sem sincronização externa prévia. Pergunta Q-a52fbcca6963c760 (aberta) Como o processo de gravação é executado de forma assíncrona (Asynchronous) [SWS_Ea_00087], o chamador provavelmente deve manter o buffer fornecido DataBufferPtr inalterado na memória até a conclusão total da tarefa. Códigos de erro específicos de DET ou DEM não são mencionados no excerto da especificação da função.
Esta nota de uso foi gerada por uma IA com base na especificação do AUTOSAR Release R20-11.
função Ea_Cancel [SWS_Ea_00088] 📄 PDF
void Ea_Cancel (void);
Cancels the ongoing asynchronous operation.
A função Ea_Cancel interrompe um procedimento assíncrono atualmente em execução do módulo EEPROM Abstraction ([SWS_Ea_00088]). O serviço é disponibilizado por meio do arquivo de cabeçalho Ea.h e possui o Service-ID 0x04 ([SWS_Ea_00088]).
Em relação ao comportamento de chamada e à definição de interface, aplicam-se as seguintes características ([SWS_Ea_00088]):
- Semântica: A chamada em si ocorre de forma síncrona (
Synchronous), embora interrompa uma operação assíncrona em execução ([SWS_Ea_00088]). - Parâmetros e retorno: A assinatura é
void Ea_Cancel(void). A função não espera parâmetros de entrada, de saída ou de passagem e não possui valor de retorno ([SWS_Ea_00088]). - Reentrância: A interface é definida como não reentrante (
Non Reentrant) ([SWS_Ea_00088]). Consequentemente, ela não pode ser chamada de forma concorrente a partir de múltiplos contextos de execução ou tarefas que causem interrupção.
Como Ea_Cancel não recebe identificadores de tarefas ou de blocos, a interrupção refere-se diretamente ao procedimento global assíncrono atualmente em processamento ([SWS_Ea_00088]). Códigos de erro específicos ou retornos para mecanismos de detecção não estão contidos nos dados de especificação. Presumivelmente, a chamada ocorre tipicamente por camadas superiores, como a Memory Abstraction Interface (MemIf), para encerrar prematura e especificamente procedimentos demorados de leitura, gravação ou apagamento. Pergunta Q-e441cbf6a5097568 (aberta)
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
função Ea_GetStatus [SWS_Ea_00089] 📄 PDF
MemIf_StatusType Ea_GetStatus (void);
Service to return the Status.
função Ea_GetJobResult [SWS_Ea_00090] 📄 PDF
MemIf_JobResultType Ea_GetJobResult (void);
Service to return the Job Result.
função Ea_InvalidateBlock [SWS_Ea_00091] 📄 PDF
Std_ReturnType Ea_InvalidateBlock (uint16 BlockNumber);
Invalidates the block Block Number.
usar
A função Ea_InvalidateBlock serve para invalidar um bloco indicado pelo número de bloco lógico [SWS_Ea_00091]. Ela possui o Service-ID 0x07 e é disponibilizada por meio do arquivo de cabeçalho Ea.h [SWS_Ea_00091]. Como parâmetro de entrada, ela recebe Block Number do tipo uint16; este designa o número de bloco lógico e indica ao mesmo tempo o endereço inicial do respectivo bloco na EEPROM [SWS_Ea_00091]. Parâmetros de entrada/saída ou puramente de saída não estão definidos para este serviço [SWS_Ea_00091].
A chamada é executada como uma operação assíncrona (Asynchronous) [SWS_Ea_00091]. Um valor de retorno E_OK do tipo Std_ReturnType confirma ao chamador que o módulo EA aceitou a solicitação da tarefa para posterior processamento [SWS_Ea_00091].
Tratamento de erros
Se o módulo EA não tiver conseguido aceitar a tarefa solicitada, é retornado o valor de erro E_NOT_OK [SWS_Ea_00091]. Segundo a especificação, esse retorno de E_NOT_OK ocorre, no entanto, exclusivamente quando o DET está ativado [SWS_Ea_00091].
Simultaneidade e restrições
A interface é especificada como não reentrante (Non Reentrant) [SWS_Ea_00091]. Interpretação: Consequentemente, os chamadores provavelmente não devem chamar a função em paralelo ou com interrupções, uma vez que não é garantida reentrância por parte do módulo [SWS_Ea_00091]. Pergunta Q-81d805517d2eac88 (aberta)
Esta nota de uso foi criada automaticamente com base na especificação do AUTOSAR Classic R20-11.
função Ea_GetVersionInfo [SWS_Ea_00092] 📄 PDF
void Ea_GetVersionInfo (Std_VersionInfoType* VersionInfoPtr);
Service to get the version information of this module.
função Ea_EraseImmediateBlock [SWS_Ea_00093] 📄 PDF
Std_ReturnType Ea_EraseImmediateBlock (uint16 BlockNumber);
Erases the block Block Number.
A função Ea_EraseImmediateBlock serve para apagar um bloco lógico na EEPROM de acordo com [SWS_Ea_00093].
- Uso e semântica: A chamada ocorre de forma assíncrona ([SWS_Ea_00093]). Por meio do parâmetro de entrada
Block Numberé passado o número do bloco lógico, o qual designa ao mesmo tempo o endereço inicial deste bloco na EEPROM ([SWS_Ea_00093]). O valor de retorno é do tipoStd_ReturnType:E_OKsinaliza que a tarefa solicitada foi aceita pelo módulo ([SWS_Ea_00093]). - Tratamento de erros: Caso o Default Error Tracer (DET) esteja ativado, a função retorna
E_NOT_OKse a tarefa não pôde ser aceita pelo módulo EA ([SWS_Ea_00093]). Se o DET não estiver ativado, de acordo com o texto da especificação, nenhumE_NOT_OKdeve ser retornado em caso de erro. Pergunta Q-5015a2135dbd4723 (aberta) - Concorrência e restrições: A função é especificada como não reentrante (Non Reentrant) ([SWS_Ea_00093]). Os chamadores devem, portanto, assegurar que chamadas paralelas ou sobrepostas sejam evitadas. A declaração está disponível por meio do arquivo de cabeçalho
Ea.h, e o Service-ID é0x09([SWS_Ea_00093]).
Este texto foi criado por uma IA com base na especificação AUTOSAR.
função Ea_JobEndNotification [SWS_Ea_00094] 📄 PDF
void Ea_JobEndNotification (void);
Service to report to this module the successful end of an asynchronous operation.
A função Ea_JobEndNotification serve para comunicar ao módulo Ea a conclusão bem-sucedida de uma operação assíncrona iniciada anteriormente [SWS_Ea_00094]. A interface é disponibilizada por meio do cabeçalho Ea.h e possui o Service-ID 0x10 [SWS_Ea_00094].
Em relação à semântica e à definição de interface, aplicam-se as seguintes propriedades de acordo com [SWS_Ea_00094]:
- Assinatura e parâmetros: A função não espera parâmetros de passagem (
void) e não fornece valor de retorno (void). - Sincronicidade: A chamada é processada de forma síncrona.
- Tratamento de erros: A interface notifica exclusivamente a conclusão bem-sucedida; códigos de erro ou mensagens de erro específicos não estão definidos para esta notificação no elemento.
Em relação à concorrência, Ea_JobEndNotification é especificada como não reentrante (Non Reentrant) [SWS_Ea_00094]. Os chamadores devem, portanto, assegurar que não ocorram chamadas paralelas ou aninhadas. Interpretação: A função deve ser chamada tipicamente por um driver subjacente assim que o seu processamento assíncrono for concluído, cabendo presumivelmente ao contexto chamador garantir a sequência sequencial sem preempção mútua. Pergunta Q-296b61b743e7c9b8 (aberta)
Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR R20-11.
função Ea_JobErrorNotification [SWS_Ea_00095] 📄 PDF
void Ea_JobErrorNotification (void);
Service to report to this module the failure of an asynchronous operation.
A função Ea_JobErrorNotification serve como interface de notificação para relatar ao módulo Ea o erro de uma operação assíncrona iniciada anteriormente [SWS_Ea_00095]. Ela está disponível por meio do arquivo de cabeçalho Ea.h e possui o ID de serviço 0x11 [SWS_Ea_00095].
Em relação à especificação da interface e ao uso, aplicam-se as seguintes propriedades:
- Parâmetros e valor de retorno: A função não possui parâmetros de passagem (nem in, out ou inout) nem valor de retorno (assinatura
void Ea_JobErrorNotification(void)) [SWS_Ea_00095]. - Comportamento de execução e reentrância: A chamada é processada de forma síncrona, mas é especificada como não reentrante (Non Reentrant) [SWS_Ea_00095]. Os chamadores devem, portanto, assegurar que as chamadas ocorram sequencialmente e não se sobreponham por contextos paralelos.
- Interação: Como a função sinaliza a falha de uma tarefa assíncrona, a chamada provavelmente deve ser efetuada tipicamente por um módulo de abstração de hardware subjacente ou por um driver de memória, assim que uma tarefa falhar (interpretação). Pergunta Q-810e76dee987a5a1 (aberta)
Códigos de erro específicos, erros de desenvolvimento (DET) ou erros de produção (DEM) não estão definidos para este serviço; um comportamento de erro separado para a própria chamada não é especificado no elemento.
Este texto foi gerado por uma IA. Todas as declarações técnicas baseiam-se exclusivamente nos dados de especificação do AUTOSAR R20-11.
função Ea_MainFunction [SWS_Ea_00096] 📄 PDF
void Ea_MainFunction (void);
Service to handle the requested jobs and the internal management operations.
usar
A função Ea_MainFunction serve para o processamento de ordens solicitadas, bem como para a execução de operações internas de administração dentro do módulo EEPROM Abstraction [SWS_Ea_00096]. De acordo com a definição de interface void Ea_MainFunction(void), a função não recebe parâmetros de passagem e não retorna valor de retorno ao chamador [SWS_Ea_00096].
Contexto de chamada e concorrência
A interface possui o Service-ID 0x12 e é declarada por meio do arquivo de cabeçalho SchM_Ea.h [SWS_Ea_00096]. Interpretação: Devido à disponibilização por meio de SchM_Ea.h, a chamada deve ocorrer tipicamente de forma cíclica pelo Schedule Manager (BSW Scheduler) no contexto de tarefa, a fim de continuar continuamente em segundo plano o processamento assíncrono de ordens de memória. Pergunta Q-23f33a40a1e08c34 (aberta)
Tratamento de erros
Como Ea_MainFunction não fornece valor de retorno, estados de erro ou o progresso da ordem não são transmitidos diretamente por meio da chamada de função [SWS_Ea_00096]. Códigos de erro específicos, bem como requisitos para notificação ao módulo de interface de desenvolvimento (DET) ou ao módulo de diagnóstico (DEM), não estão definidos para este serviço no presente trecho de especificação.
Este texto foi gerado automaticamente. Todas as informações baseiam-se exclusivamente nos dados de especificação do release R20-11.
função NvM_JobEndNotification [SWS_Ea_00099] 📄 PDF
void NvM_JobEndNotification (void);
Function to be used by the underlying memory abstraction to signal end of job without error.
Utilização e semântica
A função de callback NvM_JobEndNotification serve, de acordo com [SWS_Ea_00099], à abstração de memória subjacente para sinalizar o término bem-sucedido de uma ordem sem erros aos módulos superiores. O serviço possui a assinatura void NvM_JobEndNotification(void); não espera parâmetros de entrada nem de entrada/saída e não retorna nenhum valor [SWS_Ea_00099]. A execução é especificada como síncrona, e a interface é disponibilizada por meio do arquivo de cabeçalho NvM_MemIf.h [SWS_Ea_00099].
Simultaneidade e condições de chamada
Em relação ao comportamento em tempo de execução, NvM_JobEndNotification é classificada como não reentrante (Non Reentrant) [SWS_Ea_00099]. As instâncias chamadoras devem, portanto, assegurar que a notificação não seja chamada com interrupções ou em paralelo a partir de múltiplos contextos. Interpretação: A camada de abstração de memória deve tipicamente executar a função no âmbito de sua função principal cíclica ou após a conclusão de uma ordem de driver assíncrona, assim que for constatado que a operação foi concluída sem erros. Pergunta Q-adabc07be0a3e7d2 (aberta)
Tratamento de erros e interação
Para esta função de notificação não estão definidos em [SWS_Ea_00099] códigos de erro específicos nem erros de desenvolvimento (DET) ou erros de produção (DEM). Isso se justifica pelo fato de a chamada indicar exclusivamente a conclusão livre de erros de uma ordem [SWS_Ea_00099]. Se ocorrer um erro durante uma ordem de memória, esta notificação não é chamada.
Este texto foi gerado por uma IA com base na especificação.
função NvM_JobErrorNotification [SWS_Ea_00100] 📄 PDF
void NvM_JobErrorNotification (void);
Function to be used by the underlying memory abstraction to signal end of job with error.
A função de notificação NvM_JobErrorNotification é utilizada pela abstração de memória subjacente (Memory Abstraction) para relatar a conclusão com falha de uma ordem ao NVRAM Manager [SWS_Ea_00100]. A declaração desta interface é disponibilizada por meio do arquivo de cabeçalho NvM_MemIf.h [SWS_Ea_00100].
Para a chamada e a integração da interface aplicam-se as seguintes propriedades, de acordo com a especificação [SWS_Ea_00100]:
-
Assinatura e sintaxe: A função possui a assinatura
void NvM_JobErrorNotification (void)[SWS_Ea_00100]. -
Parâmetros e valores de retorno: A função não possui parâmetros de entrada (
Parameters (in): None), parâmetros de entrada/saída (Parameters (inout): None) nem parâmetros de saída (Parameters (out): None) e não retorna nenhum valor (Return value: None) [SWS_Ea_00100]. -
Sincronicidade: A chamada é especificada como síncrona (
Synchronous) [SWS_Ea_00100]. -
Concorrência: A função é estabelecida como não reentrante (
Non Reentrant) [SWS_Ea_00100]. As chamadas correspondentes a partir da abstração de memória não podem, portanto, ocorrer de forma concorrente ou sobreposta.
Códigos de erro específicos, parâmetros para diferenciação de erros ou requisitos de notificações para o módulo Default Error Tracer (DET) ou Diagnostic Event Manager (DEM) não estão contidos na definição [SWS_Ea_00100]. A função serve exclusivamente como simples mensagem de status sobre o resultado do job concluído com erro [SWS_Ea_00100].
Esta nota de uso foi gerada de forma automatizada e baseia-se exclusivamente na especificação do AUTOSAR Classic R20-11.
tipo Ea_ConfigType [SWS_Ea_00190] 📄 PDF
Configuration data structure of the Ea module.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_Ea- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_Ea@rel:R20-11#60e9ea7c- Content hash
60e9ea7c- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_EEPROMAbstraction.pdf#nameddest=SWS_Ea_00084
gemini-3.8-flash-low· 2026-10-13 · Original em alemão