Document Title: Requirements On Memory Hardware Abstraction Layer
Document Title: Requirements On Memory Hardware Abstraction Layer
Document Title: Requirements On Memory Hardware Abstraction Layer
Abstraction Layer
V1.0.5
R4.0 Rev 1
This specification and the material contained in it, as released by AUTOSAR, is for
the purpose of information only. AUTOSAR and the companies that have contributed
to it shall not be liable for any use of the specification.
The material contained in this specification is protected by copyright and other types
of Intellectual Property Rights. The commercial exploitation of the material contained
in this specification requires a license to such Intellectual Property Rights.
This specification may be utilized or reproduced without any modification, in any form
or by any means, for informational purposes only.
For any other purpose, no part of the specification may be utilized or reproduced, in
any form or by any means, without permission in writing from the publisher.
The AUTOSAR specifications have been developed for automotive applications only.
They have neither been developed, nor tested for non-automotive applications.
The word AUTOSAR and the AUTOSAR logo are registered trademarks.
Any such exemplary items are contained in the specifications for illustration purposes
only, and they themselves are not part of the AUTOSAR Standard. Neither their
presence in such specifications, nor any later documentation of AUTOSAR
conformance of products actually implementing such exemplary items, imply that
intellectual property rights covering such exemplary items are licensed under the
same rules as applicable to the AUTOSAR Standard.
Table of Content
id Component Model
NVRAM Manager
Memory Memory
Hardw are Hardw are
Abstraction:: Abstraction::
Flash EEPROM EEPROM
Emulation Abstraction
The EEPROM Abstraction (EA) module shall abstract from the addressing scheme of
the underlying EEPROM driver and provide a uniform addressing scheme. Also it
shall allow for a configurable, “virtually unlimited” number of erase-write-cycles. Thus
the upper layer (the NVRAM manager) needs not be changed if the underlying
EEPROM driver and device is changed.
The Flash EEPROM Emulation (FEE) module shall also abstract from the addressing
scheme of the underlying flash driver and provide a uniform addressing scheme and
a configurable, “virtually unlimited” number of erase-write-cycles. Thus the upper
layer (the NVRAM manager) needs not be changed if the underlying flash driver and
device is changed.
5 of 28 Document ID 116: AUTOSAR_SRS_MemoryHWAbstractionLayer
- AUTOSAR confidential -
Requirements on Memory Hardware
Abstraction Layer
V1.0.5
R4.0 Rev 1
The driver interface layers (EEPROM and flash interface) have to be skipped in order
to allow for an efficient implementation of the memory abstraction modules (FEE and
EA modules). The FEE and EA have to directly interface to the underlying memory
drivers. The requirements set forth for those interface layers shall instead apply to
the memory abstraction interface.
The Memory Abstraction Interface (MemIf) shall replace the driver interface layers
(EEPROM and flash interface) and allow the NVRAM manager to access several
memory abstraction modules (FEE and EA modules).
In requirements, the following specific semantics are used (taken from Request for
Comment RFC 2119 from the Internet Engineering Task Force IETF)
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119. Note that the requirement
level of the document in which they are used modifies the force of these words.
MUST: This word, or the terms "REQUIRED" or "SHALL", mean that the
definition is an absolute requirement of the specification.
MUST NOT: This phrase, or the phrase „SHALL NOT“, means that the
definition is an absolute prohibition of the specification.
SHOULD: This word, or the adjective "RECOMMENDED", mean that there
may exist valid reasons in particular circumstances to ignore a particular item,
but the full implications must be understood and carefully weighed before
choosing a different course.
SHOULD NOT: This phrase, or the phrase "NOT RECOMMENDED" mean
that there may exist valid reasons in particular circumstances when the
particular behavior is acceptable or even useful, but the full implications
should be understood and the case carefully weighed before implementing
any behavior described with this label.
MAY: This word, or the adjective „OPTIONAL“, means that an item is truly
optional. One vendor may choose to include the item because a particular
marketplace requires it or because the vendor feels that it enhances the
product while another vendor may omit the same item. An implementation,
which does not include a particular option, MUST be prepared to interoperate
with another implementation, which does include the option, though perhaps
with reduced functionality. In the same vein an implementation, which does
include a particular option, MUST be prepared to interoperate with another
implementation, which does not include the option (except, of course, for the
feature the option provides.)
Each module specific chapter contains a short functional description of the Basic
Software Module. Requirements of the same kind within each chapter are grouped
under the following headlines (where applicable):
Functional Requirements:
- Configuration (which elements of the module need to be configurable)
- Initialization
- Normal Operation
- Shutdown Operation
- Fault Operation
- ...
Non-Functional Requirements:
- Timing Requirements
- Resource Usage
- Usability
- Output for other WPs (e.g. Description Templates, Tooling,...)
- ...
Acronyms / Description:
abbreviations
(Logical) Block Continuous area of memory that can be individually addressed by the module user
(i.e. for read / write / erase / compare operations). The block size is statically
configurable (pre-compile time).
Page Smallest amount of memory that can be written in one pass.
Sector Smallest amount of memory that can be erased in one pass.
FEE Flash EEPROM Emulation
EA EEPROM Abstraction Layer
MemIf Memory Abstraction Interface
As this is a document from professionals for professionals, all other terms are
expected to be known.
The EEPROM Abstraction Layer (EA) shall extend the EEPROM driver such that it
provides upper layers with a virtual segmentation on a linear address space and a
“virtually limitless” number of erase / write cycles. Apart from that it shall provide the
same functionality as an EEPROM driver.
The Flash EEPROM Emulation (FEE) shall emulate the behavior of the EEPROM
Abstraction Layer on flash memory technology. Thus it shall have the same
functional scope and API as the EEPROM Abstraction Layer and allow for a similar
configuration based on that of the underlying flash driver and flash device.
The Memory Abstraction Interface (MemIf) shall abstract from the number of
underlying FEE or EA modules and provide upper layers with a virtual segmentation
on a uniform linear address space.
4.2.1.1 Configuration
Initiator: DC
Date: 12.08.2005
Short Description: Configuration of address alignment
Type: Changed (reformulated after discussion in WP SPAL)
Importance: High
Description: The FEE and EA modules shall allow the configuration of the alignment of
the start and end addresses of logical blocks.
Initiator: DC
Date: 12.08.2005
Short Description: Configuration of number of required write cycles
Type: Changed
Importance: High
Description: The FEE and EA modules shall allow the configuration of a required number
of write cycles for each logical block.
Rationale: Abstract from hardware properties of underlying physical devices.
Use Case: An external flash device is specified for 10.000 erase cycles per erase unit.
A logical block is configured that requires 50.000 erase cycles.
The FEE has to make sure that this logical block can be written 50.000 times
while at the same time no flash cell must be erased more than 10.000 times.
Dependencies: [BSW14012] Spreading of write access
Conflicts: --
Initiator: NEC
Date: 16.08.2005
Short Description: Configuration of maximum blocking time
Type: New
Importance: High
Description: The EA and FEE modules shall allow the configuration of the maximum
amount of time that the module shall be blocked by internal management
operations.
If these internal management operations take longer than the configured
maximum blocking time they have to be split up into several parts.
Rationale: Limit delay / unavailability time of the module.
Use Case: E.g. the FEE needs a couple of hundred milliseconds to reorganize the
currently stored blocks when using the two-sector concept but the
application must not be denied access to non-volatile memory for more than
50 milliseconds.
Dependencies: The blocking time also depends on the scheduling of the module’s main
function.
Conflicts: --
Supporting Material: --
Initiator: DC
Date: 16.08.2005
Short Description: Configuration of “immediate” data blocks
Type: New
Importance: High
Description: The FEE and EA modules shall allow the configuration of logical blocks for
“immediate” data. The number and size of these blocks shall only be limited
by the memory available on the respective hardware device.
Rationale: Certain data takes precedence over other data.
Use Case: Configuration of special memory areas for so called “crash data” which has
special requirements for writing.
Dependencies: [BSW14013] Writing of “immediate” data must not be delayed
Conflicts: --
Supporting Material: --
Initiator: DC
Date: 02.09.2005
Short Description: Don’t use certain block numbers
Type: New
Importance: High
Description: The block numbers 0x0000 and 0xFFFF shall not be used by the memory
12 of 28 Document ID 116: AUTOSAR_SRS_MemoryHWAbstractionLayer
- AUTOSAR confidential -
Requirements on Memory Hardware
Abstraction Layer
V1.0.5
R4.0 Rev 1
abstraction module / generated by the configuration tool.
Rationale: These numbers can not be distinguished from the erased value of a flash or
EEPROM device.
Use Case: The implementation stores the block number in non-volatile memory e.g. to
mark the start or end of a logical block. When these numbers would be used,
that marker could not be found / distinguished from an empty EEPROM or
flash memory.
Dependencies: --
Conflicts: --
Supporting Material: --
4.2.1.1.6 BSW14027 Publish overhead for internal management data per block
Initiator: DC
Date: 02.09.2005
Short Description: Publish overhead for internal management data per block
Type: New
Importance: High
Description: The FEE and EA modules shall publish their internal management overhead
per logical block.
Rationale: Allow the configuration tool to correctly determine the next free block start
address and the correct amount of physical memory used.
Use Case: The configuration tool shall check whether all the configured logical blocks
will fit on a physical device and how much physical memory is needed for the
emulation.
Dependencies: --
Conflicts: --
Supporting Material: --
4.2.1.1.7 BSW14033 Publish overhead for internal management data per page
Initiator: DC
Date: 30.11.2005
Short Description: Publish overhead for internal management data per page
Type: New
Importance: High
Description: The FEE and EA modules shall publish their internal management overhead
per page or zero if there is no overhead for managing pages.
Rationale: Depending on the implementation, management information might have to
be stored for each (physical) page to associate it with the right logical block.
Use Case: The configuration tool shall check whether all the configured logical blocks
will fit on a physical device and how much physical memory is needed for the
emulation.
Dependencies: --
Conflicts: --
Supporting Material: --
Initiator: DC
Date: 10.08.2005
Short Description: Virtual linear address space and segmentation
Type: New
Importance: High
Description: The Flash EEPROM Emulation (FEE) and EEPROM Abstraction (EA) shall
provide upper layers with a virtual 32bit address space.
These 32 bit virtual (logical) addresses shall consist of a 16 bit logical block
identifier and a 16 bit address offset within this logical block. Thus the
memory abstraction layer shall support a (theoretical) number of 65534
logical (distinguishable) blocks per underlying physical device. Each block
can have a (theoretical) size of 64 KBytes.
Rationale: Abstract from hardware properties that would require changing the NVRAM
manager if the underlying devices / drivers change.
Use Case: 1) Support systems with a high number of small blocks
2) Support systems with a few big blocks like e.g. MMI systems (fonts,
speech) or navigation (maps, routes).
3) Allow NVRAM manager to encode block management information (e.g.
block type) in the logical block identifier (by making it big enough)
Dependencies: [BSW14026] Don’t use certain block numbers
Conflicts: --
Supporting Material: Figure 2: Virtual vs. physical address space
100 Bytes
Block 2
38 Bytes
Block 3
Initiator: DC
Date: 10.08.2005
Short Description: Alignment of block erase / write addresses
Type: New
Importance: High
Description: The start address for a block erase or write operation shall always be aligned
to the virtual 64K boundary.
In other words: The offset shall be ignored for block erase / write requests,
every block erase / write request starts at address offset zero.
Rationale: Allow optimized erase / write operations in underlying emulation modules
and drivers if virtual 64K boundaries are mapped to physical sector / page
boundaries.
Use Case: Optimization of FEE and EA, simplify configuration and implementation.
Dependencies: --
Conflicts: --
Supporting Material: Just to make this clear: you can not erase or write only parts of the
configured block, it’s either all or nothing.
Initiator: DC
Date: 10.08.2005
Short Description: Alignment of block read address and read length
Type: New
Importance: High
Description: The start address and length for reading a block shall not be limited to a
certain alignment, i.e. it shall be possible to read one byte starting from any
memory address.
Rationale: Byte-wise reading of flash / EEPROM.
Use Case: CRC calculation in the NVRAM manager.
Dependencies: --
Conflicts: --
Supporting Material: This allows reading a logical block in several passes, e.g. needed for CRC
calculation.
Note 1: If there are certain hardware properties that require an alignment of
the read address, e.g. only 32bit aligned read possible, this shall be handled
by the underlying driver.
Note 2: This requirement shall allow the NVRAM manager to do a byte-wise
read access on a logical block, it does not require the NVRAM manager to
do so.
Initiator: DC
Date: 10.08.2005
Short Description: Checking block read addresses
Type: New
Importance: High
Description: The FEE and EA modules shall not check the address offset for a read
operation. It is the responsibility of the caller to provide valid parameters.
Rationale: Simplify implementation of EA and FEE modules.
Use Case: --
Dependencies: --
Conflicts: --
Supporting Material: --
Initiator: DC
Date: 24.06.2005
Short Description: Conversion of logical to memory addresses
Type: New
Importance: High
Description: The FEE and EA modules shall provide an unambiguous conversion
between the logical linear addresses and the addresses used to access the
underlying flash memory or EEPROM.
Rationale: The physical device and the start address of a logical block shall be derived
from the logical block identifier.
Use Case: Transparent mapping of logical blocks to several physical non-volatile
17 of 28 Document ID 116: AUTOSAR_SRS_MemoryHWAbstractionLayer
- AUTOSAR confidential -
Requirements on Memory Hardware
Abstraction Layer
V1.0.5
R4.0 Rev 1
memory devices.
Dependencies: --
Conflicts: --
Supporting Material: The memory addresses obtained by that conversion are address offsets to a
device specific base address as described in the flash and EEPROM driver
specifications.
Initiator: DC
Date: 12.08.2005
Short Description: Block-wise write service
Type: New
Importance: High
Description: The FEE and EA modules shall provide a write service that operates only on
complete configured logical blocks.
Rationale: Decouple the upper layer from driver internals.
Use Case: The upper layer shall only make one call to the Memory Abstraction Interface
to write a logical block to non-volatile memory. If there are several passes
needed to write all of the addressed memory area, this shall be handled
internally in the FEE or EA modules or the underlying device drivers.
Dependencies: --
Conflicts: --
Supporting Material: --
Initiator: DC
Date: 30.09.2005
Short Description: Block-wise read service
Type: New
Importance: High
Description: The FEE and EA modules shall provide a read service that allows reading all
or part of a logical block.
Rationale: Allow for reading of NV memory.
Use Case: Read functionality of the NVRAM manager.
Dependencies: --
Conflicts: --
Supporting Material: --
Initiator: DC
Date: 30.09.2005
Short Description: Service to cancel an ongoing asynchronous operation
Type: New
Importance: High
Description: The FEE and EA modules shall provide a service that allows canceling an
ongoing asynchronous operation like e.g. a read, write, erase or compare
18 of 28 Document ID 116: AUTOSAR_SRS_MemoryHWAbstractionLayer
- AUTOSAR confidential -
Requirements on Memory Hardware
Abstraction Layer
V1.0.5
R4.0 Rev 1
operation.
Rationale: Needed for writing “immediate” data.
Use Case: Immediate data (crash data) has to be written, while a read operation is
currently in process.
Dependencies: [BSW14013] Writing of “immediate” data must not be delayed
Conflicts: --
Supporting Material: --
Initiator: DC
Date: 12.08.2005
Short Description: Service to invalidate a memory block
Type: New
Importance: High
Description: The FEE and EA modules shall provide a service to invalidate a logical
block. This shall be done by setting the module internal block management
data appropriately.
Initiator: DC
Date: 12.08.2005
Short Description: Spreading of write access
Type: New (derived from MemSvc BSW032)
Importance: High
Description: If the configured number of write cycles for a logical block exceeds the
number provided by the underlying physical device, the FEE or EA module
has to provide sufficient mechanisms to spread the write requests for that
logical block over a bigger memory area.
Rationale: Allow for “unlimited” number of write cycles while simultaneously preventing
memory cells from being erased more often than specified by the hardware
vendor.
Use Case: An external flash device is specified for 10.000 erase cycles per erase unit.
A logical block is configured that requires 50.000 write cycles.
The FEE has to make sure that this logical block can be written 50.000 times
while at the same time no flash cell must be erased more than 10.000 times.
Dependencies: [BSW14002] Configuration of number of required write cycles
Conflicts: --
Supporting Material: This requirement replaces [BSW032] Spreading of write access and
[BSW08530] NVRAM block type – walking from MemSvc SRS.
Initiator: DC
Date: 16.08.2005
Short Description: Writing of “immediate” data must not be delayed
Type: New
Importance: High
Description: Writing of immediate data must not be delayed by internal management
operations nor by erasing the memory area to be written to.
If internal management operations are under way when immediate data has
to be written, they have to be interrupted until the data has been written to
non-volatile memory.
Initiator: DC
Date: 09.11.2005
Short Description: Block-wise erase service for immediate data
Type: New
Importance: High
Description: The FEE and EA modules shall provide an erase service that operates only
on complete logical blocks containing immediate data.
Rationale: BSW14013 requires pre-erased memory, therefore this memory areas have
to be somehow erasable.
Use Case: --
Dependencies: [BSW14013] Writing of “immediate” data must not be delayed
Conflicts: --
Supporting Material: - This service should only be called by a special application like e.g.
diagnostics.
- A possible implementation would be to invalidate the block containing
immediate data and subsequently force a re-organization of blocks.
During this re-organization invalidated blocks shall not be copied to the
new memory location, thus the memory area for the immediate data will
be (left) erased.
The modules of the Memory Abstraction Layer don’t need any shutdown capabilities
(also there are no shutdown capabilities in the flash or EEPROM driver).
Initiator: DC
Date: 12.08.2005
Short Description: Detection of data inconsistencies
Type: New
Importance: High
Description: The FEE and EA modules shall detect possible data inconsistencies due to
aborted / interrupted write operations.
Rationale: The “user” shall not work on inconsistent data therefore it has to be
recognized.
Use Case: 1) A write operation is interrupted by a loss of power, after power-on-reset
the possible inconsistency of data shall be detected upon the next read
access to the affected memory area.
2) A write operation is cancelled by the upper layer. Upon next read access
to the affected memory area the possible data inconsistency shall be
detected.
Dependencies: --
Conflicts: --
Supporting Material: Depending on the implementation, the physical device and the point in the
write operation at which the interrupt occurs the FEE or EA module might be
able to determine that the operation has failed but not which was the block
that should have been written.
Initiator: DC
Date: 12.08.2005
Short Description: Reporting of data inconsistencies
Type: New
Importance: High
Description: The FEE and EA modules shall report possible data inconsistencies due to
aborted / interrupted write operations to the DEM exactly once. After that the
inconsistent memory area has to be marked such that no further errors are
reported for that block.
Rationale: Avoid “endless loops” in error reporting on every block read operation.
Use Case: A write operation is interrupted or cancelled, the inconsistency is detected
and reported upon the next read access to the affected memory area.
Dependencies: [BSW14014] Detection of data inconsistencies
Conflicts: --
Supporting Material: Depending on the implementation and the point in the write operation at
which the interrupt occurs the FEE or EA module might be able to determine
that the operation has failed but not which was the block that should have
been written.
Initiator: DC
Date: 02.09.2005
Short Description: Don’t return inconsistent data to the caller
Type: New
Importance: High
Description: The FEE and EA modules shall not return inconsistent data to the caller.
Rationale: The “user” shall not work on inconsistent data.
Use Case: A write operation is interrupted or cancelled, the data of that block thus is
inconsistent. This inconsistency is detected on the next read access to that
block, the data shall then not be returned to the caller.
Dependencies: [BSW14014] Detection of data inconsistencies
Conflicts: --
Supporting Material: Depending on the implementation and the point in the write operation at
which the interrupt occurs the FEE or EA module might be able to determine
that the operation has failed but not which was the block that should have
been written.
In this case a read operation on that block might return old (outdated) data to
the caller if such data is available. If this is not desired from the application,
the block has to be explicitly invalidated before it is overwritten.
Providing default data for an inconsistent block is the job of the NVRAM
manager.
Initiator: DC
Date: 12.08.2005
Short Description: Scope of EEPROM Abstraction Layer
Type: Changed (EA extends scope, deleted statement about EEPROM driver
requirements)
Importance: High
Description: The EEPROM Abstraction Layer (EA) shall extend the functional scope of an
EEPROM driver. In addition to the properties of an EEPROM driver, the EA
shall work on a virtual 32bit address space and it shall abstract completely
from the limitation of erase / write cycles given by the underlying device.
Rationale: Uniform handling of all EEPROM devices.
Use Case: The NVRAM manager shall not need to be changed if the underlying
EEPROM drivers and devices change.
Dependencies: --
Conflicts: --
Supporting Material: AUTOSAR SRS EEPROM driver
Initiator: DC
Date: 24.06.2005
Short Description: Scope of Flash EEPROM Emulation
Type: Changed (FEE extends scope, deleted statement about flash driver
requirements)
Importance: High
Description: The Flash EEPROM Emulation (FEE) shall extend the functional scope of
and internal flash driver. It shall have the same functional scope and API as
an EA module.
Rationale: Uniform handling of all flash devices.
Use Case: The NVRAM manager shall not need to be changed if the underlying flash
drivers and devices change.
Dependencies: [BSW14017] Scope of EEPROM Abstraction Layer
Conflicts: --
Supporting Material: AUTOSAR SRS EEPROM driver
AUTOSAR SRS Flash driver
The following requirements have been taken over from the SPAL SRS on Memory
Abstraction and have been adapted (in wording only) to the architectural concept
shown in Figure 1.
4.3.1.1 General
Initiator: DC
Date: 02.09.2005
Short Description: Provide uniform access to underlying memory abstraction modules
Type: New (derived from BSW12172)
Importance: High
Description: The Memory Abstraction Interface shall provide uniform access to those API
services of the underlying memory abstraction modules that are required for
usage within the NVRAM manager.
Further comments:
The initialization routines and the job processing functions are not mapped
by the memory abstraction interface.
Rationale: Allow usage of memory abstraction modules by one uniform interface.
Use Case: Allow the upper layer access to internal and external memory devices
without any difference.
Dependencies: --
Conflicts: --
Supporting Material: This requirement shall replace [BSW12172].
Initiator: DC
Date: 02.09.2005
Short Description: Selection of underlying memory abstraction modules
Type: New (derived from BSW12173)
Importance: High
Description: The Memory Abstraction Interface shall allow the selection of an underlying
memory abstraction module (FEE or EA module) by using a device index.
Rationale: Requirement of the NVRAM Manager
Use Case: The NVRAM Manager uses a device index for selecting the appropriate
memory abstraction module.
Dependencies: --
Conflicts: --
Supporting Material: SWS NVRAM Manager
This requirement shall replace [BSW12173].
Initiator: DC
Date: 02.09.2005
Short Description: Number of underlying memory abstraction modules
Type: New (derived from BSW12174)
Importance: High
Description: The Memory Abstraction Interface shall allow the pre-compile time
configuration of the number of underlying memory abstraction modules.
Rationale: Flexibility
Use Case: One ECU only uses internal EEPROM (thus needing one EA module),
another ECU uses both internal plus external EEPROM (thus needing two
EA modules).
Dependencies: --
Conflicts: --
Supporting Material: WP Architecture
This requirement shall replace [BSW12174].
Initiator: DC
Date: 02.09.2005
Short Description: Preserving of functionality
Type: New (derived from BSW12175)
Importance: High
Description: The Memory Abstraction Interface shall preserve the functionality of the
underlying memory abstraction module. It shall not provide additional
functionality.
Rationale: Simplicity, efficiency
Use Case: The memory abstraction modules abstract from all hardware properties, the
Memory Abstraction Interface does not need to add anything (it only is
needed to access more than one memory abstraction module).
Dependencies: --
Conflicts: --
Supporting Material: This requirement shall replace [BSW12175].
Initiator: DC
Date: 02.09.2005
Short Description: Parameter checking
Type: New (derived from BSW12176)
Importance: High
Description: The Memory Abstraction Interface shall only check those parameters that
25 of 28 Document ID 116: AUTOSAR_SRS_MemoryHWAbstractionLayer
- AUTOSAR confidential -
Requirements on Memory Hardware
Abstraction Layer
V1.0.5
R4.0 Rev 1
are used within the interface itself and that are not passed to the underlying
memory abstraction modules.
Rationale: Simplicity, efficiency: avoid double checking of parameters.
Use Case: The device index may be checked (depending on the setting of the
development error detection switch). The block address shall not be
checked.
Dependencies: --
Conflicts: --
Supporting Material: This requirement shall replace [BSW12176].
Initiator: DC
Date: 02.09.2005
Short Description: Preserving of timing behavior
Type: New (derived from BSW12177)
Importance: High
Description: The Memory Abstraction Interface shall preserve the timing behavior of the
underlying memory abstraction modules and their APIs by 1:1 mapping of
the Memory Abstraction Interface API to the memory abstraction modules’
API
Rationale: Simplicity, efficiency
Use Case: Example:
The write service of the Memory Abstraction Interface is directly mapped to
the write service of an underlying memory abstraction module (FEE or EA).
Dependencies: --
Conflicts: --
Supporting Material: WP Architecture
This requirement shall replace [BSW12177].
Initiator: DC
Date: 02.09.2005
Short Description: Efficient implementation
Type: New (derived from BSW12178)
Importance: High
Description: The Memory Abstraction Interface shall be implemented in a way that almost
no memory and runtime overhead is caused by the implementation of this
layer.
For the Onboard Device Abstraction the same requirements like for the Memory
Hardware Abstraction apply. One member of the Onboard Device Abstraction is the
Watchdog Interface.
5 References
5.1 Deliverables of AUTOSAR
[1] List of Basic Software Modules
AUTOSAR_TR_BSWModuleList.pdf
None