Memory Abstraction Interface (MemIf)
Abstracts underlying Flash and EEPROM memory drivers.
Funktionen — Übersicht
void MemIf_SetMode (MemIf_ModeType Mode);Invokes the "Set Mode" functions of all underlying memory abstraction modules.Std_ReturnType MemIf_Read (uint8 DeviceIndex, uint16 BlockNumber, uint16 BlockOffset, uint8* DataBufferPtr, uint16 Length);Invokes the "Read" function of the underlying memory abstraction module selected by the parameter Device Index.Std_ReturnType MemIf_Write (uint8 DeviceIndex, uint16 BlockNumber, const uint8* DataBufferPtr);Invokes the "Write" function of the underlying memory abstraction module selected by the parameter Device Index.void MemIf_Cancel (uint8 DeviceIndex);Invokes the "Cancel" function of the underlying memory abstraction module selected by the parameter Device Index.MemIf_StatusType MemIf_GetStatus (uint8 DeviceIndex);Invokes the "Get Status" function of the underlying memory abstraction module selected by the parameter Device Index.MemIf_JobResultType MemIf_GetJobResult (uint8 DeviceIndex);Invokes the "Get Job Result" function of the underlying memory abstraction module selected by the parameter Device Index.Std_ReturnType MemIf_InvalidateBlock (uint8 DeviceIndex, uint16 BlockNumber);Invokes the "Invalidate Block" function of the underlying memory abstraction modulevoid MemIf_GetVersionInfo (Std_VersionInfoType* VersionInfoPtr);Returns version information.Std_ReturnType MemIf_EraseImmediateBlock (uint8 DeviceIndex, uint16 BlockNumber);Invokes the "Erase Immediate Block" function of the underlying memory abstraction module selected by the parameter Device Index.
Typen — Übersicht
enum MemIf_StatusTypeDenotes the current status of the underlying abstraction module and device drive.enum MemIf_JobResultTypeDenotes the result of the last job.enum MemIf_ModeTypeDenotes the operation mode of the underlying abstraction mod ules and device drivers.
Funktionen & Typen — Detailansicht
functie MemIf_SetMode [SWS_MemIf_00038] 📄 PDF
void MemIf_SetMode (MemIf_ModeType Mode);
Invokes the "Set Mode" functions of all underlying memory abstraction modules.
De functie MemIf_SetMode dient voor het synchroon omschakelen van de bedrijfsmodus via de geheugeninterface [SWS_MemIf_00038]. Bij aanroep stuurt deze de vereiste modus door naar de individuele „Set Mode”-functies van alle onderliggende geheugenabstractiemodules [SWS_MemIf_00038]. Als parameter wordt de doelmodus Mode meegegeven, terwijl de functie geen retourwaarde oplevert [SWS_MemIf_00038]. De interface is met het service-ID 0x01 gedefinieerd in de header MemIf.h [SWS_MemIf_00038].
Wat betreft de gelijktijdigheid is MemIf_SetMode gespecificeerd als niet-reentrant (Non Reentrant) [SWS_MemIf_00038]. Interpretatie: Aanroepers mogen de functie vermoedelijk niet gelijktijdig of onderbrekend vanuit meerdere taken of interrupt service routines aanroepen, waardoor gelijktijdige toegang desgewenst via externe beveiligingsmechanismen moet worden gecoördineerd. Vraag Q-02b14e9cb4b05dc9 (open)
Vanwege de synchrone uitvoeringssemantiek keert de aanroep pas na het doorsturen van het verzoek naar de geheugenabstractiemodules terug naar de aanroeper [SWS_MemIf_00038]. Specifieke retourwaarden voor foutindicatie of afzonderlijke DET- of DEM-foutmeldingen zijn voor deze functie niet voorzien in de elementspecificatie [SWS_MemIf_00038].
Deze gebruiksinstructie is automatisch gegenereerd en is uitsluitend gebaseerd op de gegevens van de specificatie AUTOSAR R20-11.
Implementer's Guide volgt (complexiteit I1)
functie MemIf_Read [SWS_MemIf_00039] 📄 PDF
Std_ReturnType MemIf_Read (uint8 DeviceIndex, uint16 BlockNumber, uint16 BlockOffset, uint8* DataBufferPtr, uint16 Length);
Invokes the "Read" function of the underlying memory abstraction module selected by the parameter Device Index.
De functie MemIf_Read stuurt een leesverzoek synchroon door naar de via parameter DeviceIndex geselecteerde onderliggende geheugenabstractiemodule [SWS_MemIf_00039]. Deze is gedeclareerd in header MemIf.h en dient voor het uitlezen van gegevens van een logisch geheugenblok.
Parameters en interface
De aanroep van MemIf_Read omvat de volgende in- en uitvoerparameters [SWS_MemIf_00039]:
DeviceIndex: Index van het doelapparaat voor de selectie van de doelmodule.BlockNumber: Logisch bloknummer van het te lezen geheugenblok.BlockOffset: Byte-offset binnen het logische blok vanaf waar wordt gelezen.DataBufferPtr: Pointer naar de buffer voor de opslag van de gelezen gegevens.Length: Aantal te lezen databytes.
Foutafhandeling en retourwaarden
Wanneer de detectie van ontwikkelingsfouten (Development Error Detection) actief is en een ontwikkelingsfout wordt gedetecteerd, retourneert de functie E_NOT_OK [SWS_MemIf_00039]. Anders wordt de retourwaarde van de aangeroepen leesfunctie van de onderliggende module doorgegeven als Std_ReturnType [SWS_MemIf_00039].
Gelijktijdigheid en beperkingen
De functie is gespecificeerd als synchroon en niet-re-entrant (Non Reentrant) [SWS_MemIf_00039]. Een aanroep zal daarom typisch plaatsvinden in taskcontext; parallelle of geneste aanroepen moeten door de aanroeper worden vermeden resp. geserialiseerd. Vraag Q-b774bf07a69e28af (open)
Deze gebruiksinstructie is gegenereerd door een AI en gebaseerd op de AUTOSAR-specificatie R20-11.
functie MemIf_Write [SWS_MemIf_00040] 📄 PDF
Std_ReturnType MemIf_Write (uint8 DeviceIndex, uint16 BlockNumber, const uint8* DataBufferPtr);
Invokes the "Write" function of the underlying memory abstraction module selected by the parameter Device Index.
Gebruik en aanroepcontext
De interfacefunctie MemIf_Write dient als abstractielaag en roept de Write-functie aan van de onderliggende geheugenabstractiemodule, die via parameter DeviceIndex wordt geselecteerd [SWS_MemIf_00040]. Bij de synchrone aanroep worden drie ingangsparameters meegegeven: de apparaatindex DeviceIndex voor de selectie van de doeldriver, het logische bloknummer BlockNumber en de pointer DataBufferPtr naar de buffer met de te schrijven gegevens [SWS_MemIf_00040]. De functie is gespecificeerd onder service-ID 0x03 en beschikbaar via het headerbestand MemIf.h [SWS_MemIf_00040].
Foutafhandeling en retourwaarden
De retourwaarde is van het type Std_ReturnType [SWS_MemIf_00040]. Indien de detectie van ontwikkelingsfouten (Development Error Detection) voor de Memory Abstraction Interface actief is en een ontwikkelingsfout conform [SWS_MemIf_00022] wordt vastgesteld, levert MemIf_Write de foutcode E_NOT_OK terug [SWS_MemIf_00040]. Is er geen sprake van een fout, dan stuurt de functie de retourwaarde van de aangeroepen onderliggende module ongewijzigd door naar de aanroeper [SWS_MemIf_00040].
Gelijktijdigheid en randvoorwaarden
Wat het concurrencygedrag betreft, is MemIf_Write gedefinieerd als synchroon en niet-re-entrant (Non Reentrant) [SWS_MemIf_00040].
Deze gebruiksinstructie is gegenereerd door een AI op basis van de specificatie AUTOSAR Classic R20-11.
functie MemIf_Cancel [SWS_MemIf_00041] 📄 PDF
void MemIf_Cancel (uint8 DeviceIndex);
Invokes the "Cancel" function of the underlying memory abstraction module selected by the parameter Device Index.
De synchrone functie MemIf_Cancel dient ertoe de Cancel-functie van de onderliggende geheugenabstractiemodule aan te roepen die via parameter Device Index wordt geselecteerd [SWS_MemIf_00041]. De dienst heeft geen retourwaarde en stuurt de afbreekopdracht direct door naar de geadresseerde abstractie-instantie [SWS_MemIf_00041].
Voor de aanroep en de integratie gelden de volgende technische eigenschappen:
- Aanroepcontext en concurrency: De functie is gedefinieerd als niet-re-entrant (
Non Reentrant) [SWS_MemIf_00041]. Aanroepers moeten ervoor zorgen dat de uitvoering niet gelijktijdig of onderbrekend door andere contexten plaatsvindt. - Signatuur en identificatie: De interface
void MemIf_Cancel (uint8 Device Index)heeft het service-ID0x04en wordt beschikbaar gesteld via het headerbestandMemIf.h[SWS_MemIf_00041]. - Parameters: De ingangsparameter
Device Index(typeuint8) selecteert de doelmodule; in-/uitvoer- of retourparameters zijn niet aanwezig [SWS_MemIf_00041]. - Foutafhandeling: De specificatie beschrijft voor deze functie geen specifieke foutcodes, retourwaarden of DET-meldingen [SWS_MemIf_00041] (interpretatie: een controle op ongeldige apparaatindices is vermoedelijk overgelaten aan de bovenliggende systeemarchitectuur of de onderliggende module). Vraag Q-4a5d989ce611ba89 (open)
Deze gebruiksinstructie is opgesteld door een AI op basis van de AUTOSAR-specificatie R20-11.
functie MemIf_GetStatus [SWS_MemIf_00042] 📄 PDF
MemIf_StatusType MemIf_GetStatus (uint8 DeviceIndex);
Invokes the "Get Status" function of the underlying memory abstraction module selected by the parameter Device Index.
functie MemIf_GetJobResult [SWS_MemIf_00043] 📄 PDF
MemIf_JobResultType MemIf_GetJobResult (uint8 DeviceIndex);
Invokes the "Get Job Result" function of the underlying memory abstraction module selected by the parameter Device Index. Available v ia Mem If.h
functie MemIf_InvalidateBlock [SWS_MemIf_00044] 📄 PDF
Std_ReturnType MemIf_InvalidateBlock (uint8 DeviceIndex, uint16 BlockNumber);
Invokes the "Invalidate Block" function of the underlying memory abstraction module AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_MemoryAbstractionInterface selected by the parameter Device Index.
De synchrone functie MemIf_InvalidateBlock leidt de opdracht tot ongeldigverklaring van een logisch blok door naar de via de parameter DeviceIndex geselecteerde onderliggende geheugenabstractiemodule [SWS_MemIf_00044]. De interface wordt beschikbaar gesteld via de header MemIf.h en voert het service-ID 0x07 [SWS_MemIf_00044].
Gebruik en parameters
De aanroep geschiedt synchroon en draagt de volgende invoerparameters over aan het adresseringsdoel [SWS_MemIf_00044]:
DeviceIndex: Numerieke index van de onderliggende geheugenabstractiemodule [SWS_MemIf_00044].BlockNumber: Eenduidige identificatie van het te invalideren geheugenblok [SWS_MemIf_00044].
Foutafhandeling en retourwaarden
De functie retourneert een statuswaarde van het type Std_ReturnType [SWS_MemIf_00044]:
- Indien de detectie van ontwikkelingsfouten (Development Error Detection) voor het Memory Abstraction Interface is geactiveerd en er een fout conform
SWS_MemIf_00022optreedt, retourneert de functieE_NOT_OK[SWS_MemIf_00044]. - Indien er geen ontwikkelingsfout wordt vastgesteld, retourneert de interface het resultaat van de aangeroepen functie van de onderliggende module [SWS_MemIf_00044].
Concurrency
De functie is gespecificeerd als niet-reentrant (Non Reentrant) [SWS_MemIf_00044].
Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR Classic Release R20-11.
functie MemIf_GetVersionInfo [SWS_MemIf_00045] 📄 PDF
void MemIf_GetVersionInfo (Std_VersionInfoType* VersionInfoPtr);
Returns version information.
functie MemIf_EraseImmediateBlock [SWS_MemIf_00046] 📄 PDF
Std_ReturnType MemIf_EraseImmediateBlock (uint8 DeviceIndex, uint16 BlockNumber);
Invokes the "Erase Immediate Block" function of the underlying memory abstraction module selected by the parameter Device Index.
Gebruik
De synchrone functie MemIf_EraseImmediateBlock initieert het wissen van een als onmiddellijk geclassificeerd blok in de onderliggende geheugenabstractiemodule [SWS_MemIf_00046]. De aanroep wordt beschikbaar gesteld via de header MemIf.h en voert het service-ID 0x09 [SWS_MemIf_00046]. Als invoerparameters dienen DeviceIndex voor het adresseren van het specifieke geheugenapparaat respectievelijk de abstractiemodule, evenals BlockNumber voor de identificatie van het doelblok [SWS_MemIf_00046]. Aanvullende inout- of out-parameters bestaan niet [SWS_MemIf_00046].
Retourwaarden en foutafhandeling
De functie retourneert een statuswaarde van het type Std_ReturnType [SWS_MemIf_00046]. Wanneer de detectie van ontwikkelingsfouten voor het Memory Abstraction Interface is geactiveerd en een desbetreffende fout conform [SWS_MemIf_00022] wordt vastgesteld, levert de aanroep de vaste retourwaarde E_NOT_OK op [SWS_MemIf_00046]. Treedt er geen dergelijke fout op, dan wordt het directe resultaat van de aangeroepen functie van de onderliggende module doorgegeven aan de aanroeper [SWS_MemIf_00046].
Gelijktijdigheid en beperkingen
De uitvoering van MemIf_EraseImmediateBlock vindt synchroon plaats en is gespecificeerd als niet-reentrant (Non Reentrant) [SWS_MemIf_00046]. Interpretatie: Aangezien parallelle aanroepen van de interface ontoelaatbaar zijn, mag de functie in het totale systeem vermoedelijk alleen worden aangeroepen vanuit een gesynchroniseerde context op taakniveau, om data-inconsistenties in de onderliggende geheugendrivers te voorkomen. Vraag Q-4fce518bab0115db (open)
Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR CP R20-11.
type MemIf_StatusType [SWS_MemIf_00064] 📄 PDF
Denotes the current status of the underlying abstraction module and device drive. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_MemoryAbstractionInterface
Het opsommingstype MemIf_StatusType markeert de actuele bedrijfs- en uitvoeringsstatus van de onderliggende geheugenabstractiemodule evenals de bijbehorende apparaatdriver conform [SWS_MemIf_00064]. Dit type is gedefinieerd in het Memory Abstraction Interface en staat via het headerbestand MemIf.h ter beschikking van aanroepers [SWS_MemIf_00064].
De enumeratie omvat vier afzonderlijke toestanden voor het weergeven van de bedrijfsgereedheid [SWS_MemIf_00064]:
MEMIF_UNINIT: De onderliggende abstractiemodule of de bijbehorende apparaatdriver is (nog) niet geïnitialiseerd [SWS_MemIf_00064].MEMIF_IDLE: De abstractiemodule of de apparaatdriver is bedrijfsklaar en voert momenteel geen opdrachten uit [SWS_MemIf_00064].MEMIF_BUSY: De onderliggende module of de apparaatdriver verwerkt momenteel een operatie [SWS_MemIf_00064].MEMIF_BUSY_INTERNAL: De abstractiemodule handelt interne beheeroperaties af, terwijl de driver vrij of bezig kan zijn [SWS_MemIf_00064].
Aanroepende lagen gebruiken deze status om voorafgaand aan het toekennen van opdrachten synchroon vast te stellen of de geheugenlagen bedrijfsklaar zijn dan wel of er interne beheerprocessen lopen [SWS_MemIf_00064]. Aangezien MemIf_StatusType een zuivere gegevenstypedefinitie is, zijn functionele aspecten zoals DET- of DEM-meldingen, reentrantieregels of aanroepcontexten niet afzonderlijk vermeld in het specificatie-element.
Deze tekst is gegenereerd door een AI op basis van de AUTOSAR-specificatie.
Implementer's Guide volgt (complexiteit I1)
type MemIf_JobResultType [SWS_MemIf_00065] 📄 PDF
Denotes the result of the last job.
Het opsommingstype MemIf_JobResultType beschrijft het resultaat van de laatst verwerkte opdracht aan de geheugeninterface en wordt beschikbaar gesteld via het headerbestand MemIf.h [SWS_MemIf_00065].
De enumeratie definieert toestanden voor de uitvoering alsmede specifieke fout- en bloktoestanden [SWS_MemIf_00065]:
MEMIF_JOB_OK: De aangevraagde opdracht is succesvol voltooid [SWS_MemIf_00065].MEMIF_JOB_PENDING: De opdracht is nog niet afgerond [SWS_MemIf_00065]. Interpretatie: Dit duidt erop dat opdrachten asynchroon worden verwerkt en dat de aanroeper de voltooiing via deze tussentoestand vaststelt. Vraag Q-31078cf25506334e (open)MEMIF_JOB_FAILED: De opdracht is niet succesvol afgerond [SWS_MemIf_00065].MEMIF_JOB_CANCELED: De opdracht is geannuleerd [SWS_MemIf_00065].MEMIF_BLOCK_INCONSISTENT: Het opgevraagde blok is inconsistent, bevat mogelijk beschadigde gegevens of is niet gevonden [SWS_MemIf_00065].MEMIF_BLOCK_INVALID: Het opgevraagde blok is als ongeldig gemarkeerd, zodat de gewenste bewerking niet kan worden uitgevoerd [SWS_MemIf_00065].
Bij de evaluatie van het opdrachtresultaat dient het type voor het differentiëren tussen algemene uitvoeringsfouten (MEMIF_JOB_FAILED) en blokgerelateerde problemen (MEMIF_BLOCK_INCONSISTENT, MEMIF_BLOCK_INVALID) [SWS_MemIf_00065].
Deze tekst is gegenereerd door een AI en dient ter oriëntatie.
type MemIf_ModeType [SWS_MemIf_00066] 📄 PDF
Denotes the operation mode of the underlying abstraction mod ules and device drivers.
Het opsommingstype MemIf_ModeType definieert de bedrijfsmodus van de onderliggende geheugenabstractiemodules en apparaatstuurprogramma's [SWS_MemIf_00066]. Het wordt beschikbaar gesteld via het headerbestand MemIf.h en dient voor de besturing van het snelheids- en bedrijfsgedrag van de geheugentoegangen [SWS_MemIf_00066].
Het waardebereik omvat conform [SWS_MemIf_00066] twee toestanden:
MEMIF_MODE_SLOW: De onderliggende abstractiemodules en apparaatstuurprogramma's werken in de langzame modus (Slow Mode) [SWS_MemIf_00066].MEMIF_MODE_FAST: De onderliggende abstractiemodules en apparaatstuurprogramma's werken in de snelle modus (Fast Mode) [SWS_MemIf_00066].
Wat betreft foutafhandeling, re-entrantie of specifieke aanroepcontexten bevat de specificatie van het type geen afzonderlijke bepalingen; de overdracht en evaluatie van de modus vindt synchroon plaats via de bijbehorende interfaces van de geheugeninterface respectievelijk de onderliggende stuurprogramma's [SWS_MemIf_00066].
Deze tekst is gegenereerd door een AI en dient voor technische oriëntatie.
Implementer's Guide volgt (complexiteit I1)
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_MemIf- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_MemIf@rel:R20-11#a7d6d84a- Content hash
a7d6d84a- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_MemoryAbstractionInterface.pdf#nameddest=SWS_MemIf_00038
gemini-3.8-flash-low· 2026-10-13 · Duits origineel