P2 batch translation: 49 PDFs (Memory + Safety + Crypto + ModeManagement + IO)
This commit is contained in:
@@ -0,0 +1,807 @@
|
||||
# 内存服务需求规范
|
||||
|
||||
> **文档标题**: Requirements on Memory Services
|
||||
> **AUTOSAR CP Release**: 4.4.0
|
||||
> **文档编号**: 007
|
||||
> **文档类型**: SRS (Software Requirements Specification)
|
||||
|
||||
---
|
||||
|
||||
## 文档标识
|
||||
|
||||
| 项目 | 内容 |
|
||||
|------|------|
|
||||
| Document Title | Requirements on Memory Services |
|
||||
| Document Owner | AUTOSAR |
|
||||
| Document Responsibility | AUTOSAR |
|
||||
| Document Identification No | 007 |
|
||||
| Document Status | Final |
|
||||
| Part of AUTOSAR Standard | Classic Platform |
|
||||
| Part of Standard Release | 4.4.0 |
|
||||
|
||||
---
|
||||
|
||||
## 文档变更历史
|
||||
|
||||
| 日期 | 版本 | 变更者 | 变更描述 |
|
||||
|------|------|--------|----------|
|
||||
| 2018-10-31 | 4.4.0 | AUTOSAR Release Management | 编辑性修订 |
|
||||
| 2017-12-08 | 4.3.1 | AUTOSAR Release Management | 编辑性修订 |
|
||||
| 2016-11-30 | 4.3.0 | AUTOSAR Release Management | 增加"需求追溯"章节 |
|
||||
| 2015-07-31 | 4.2.2 | AUTOSAR Release Management | 需求与 BSW 特性关联 |
|
||||
| 2014-10-31 | 4.2.1 | AUTOSAR Release Management | 需求与 BSW 特性关联 |
|
||||
| 2013-10-31 | 4.1.2 | AUTOSAR Release Management | 编辑性修订 |
|
||||
| 2013-03-15 | 4.1.1 | AUTOSAR Administration | 对需求追溯进行形式化重做;按 TPS_STDT_00078 重做需求;关联 BSW & RTE 特性 |
|
||||
| 2010-09-30 | 3.1.5 | AUTOSAR Administration | 增加 NVM 安全机制;增加调试和诊断支持;增加块共享;法律免责声明修订 |
|
||||
| 2008-08-13 | 3.1.1 | AUTOSAR Administration | 法律免责声明修订 |
|
||||
| 2007-12-21 | 3.0.1 | AUTOSAR Administration | 移除 CRC 库相关需求;文档元信息扩充;小幅排版调整 |
|
||||
| 2007-01-24 | 2.1.15 | AUTOSAR Administration | 移除关于符合性和强制需求的声明;法律免责声明修订;"用户须知"修订;增加"版本信息" |
|
||||
| 2006-05-16 | 2.0 | AUTOSAR Administration | 块管理类型需求变更;新增需求(RAM 块类型、错误检测、减少写负载、配置等);移除"写访问分散"和"不完整写入检测"需求 |
|
||||
| 2005-05-31 | 1.0 | AUTOSAR Administration | 初始发布 |
|
||||
|
||||
---
|
||||
|
||||
## 目录
|
||||
|
||||
1. [文档范围](#1-文档范围)
|
||||
2. [如何阅读本文档](#2-如何阅读本文档)
|
||||
3. [缩略语](#3-缩略语)
|
||||
4. [功能概述](#4-功能概述)
|
||||
5. [需求追溯](#5-需求追溯)
|
||||
6. [需求规范](#6-需求规范)
|
||||
- 6.1 [功能性需求](#61-功能性需求)
|
||||
- 6.2 [非功能性需求(质量)](#62-非功能性需求质量)
|
||||
7. [参考文献](#7-参考文献)
|
||||
|
||||
---
|
||||
|
||||
## 1 文档范围
|
||||
|
||||
本文档规定了以下软件层中基础软件模块的需求:
|
||||
- 服务层(Service Layer)
|
||||
|
||||
这些模块属于以下类型:
|
||||
- NVRAM 管理
|
||||
- 接口
|
||||
|
||||
模块的选择源自基础软件模块列表和 AUTOSAR 分层软件架构。涉及以下模块:
|
||||
- NVRAM Manager
|
||||
|
||||
需求按以下方式组织:
|
||||
- 基础软件模块的通用需求(其他文档)
|
||||
- 适用于 NVRAM 管理所有模块的通用需求
|
||||
- 模块特定需求
|
||||
|
||||
**约束**
|
||||
|
||||
基础软件模块需求规范的首要范围是非安全相关系统。因此安全需求被分配为中等优先级。
|
||||
|
||||
---
|
||||
|
||||
## 2 如何阅读本文档
|
||||
|
||||
每条需求都有一个以"BSW"为前缀的唯一标识符。
|
||||
|
||||
### 2.1 使用的约定
|
||||
|
||||
关键字 "MUST"、"MUST NOT"、"REQUIRED"、"SHALL"、"SHALL NOT"、"SHOULD"、"SHOULD NOT"、"RECOMMENDED"、"MAY" 和 "OPTIONAL" 按 IETF 风格解读。AUTOSAR 文档中需求的表示形式遵循 [TPS_STDT_00078] 中规定的表格格式。
|
||||
|
||||
### 2.2 需求结构
|
||||
|
||||
**功能性需求**:配置、初始化、正常运行、关机运行、故障运行、……
|
||||
**非功能性需求**:时序需求、资源使用、易用性、为其他工作包提供的输出、……
|
||||
|
||||
---
|
||||
|
||||
## 3 缩略语
|
||||
|
||||
| 缩略语 | 描述 |
|
||||
|--------|------|
|
||||
| Basic Storage Object(基础存储对象) | NVRAM 块的最小实体。多个"基础存储对象"可用于构建一个 NVRAM 块。"基础存储对象"可驻留在不同的存储位置(RAM/ROM/NV 存储器)。 |
|
||||
| NVRAM Block(NVRAM 块) | 管理并存储 NV 数据块所需的整个结构。 |
|
||||
| NV data(NV 数据) | 要存储于非易失存储器的数据。 |
|
||||
| Block Management Type(块管理类型) | NVRAM 块的类型,取决于(可配置的)由强制/可选基础存储对象不同块组成 NVRAM 块的个性化构成及对其的后续处理。 |
|
||||
| NV Block Header(NV 块头部) | 启用"静态块 ID"机制时 NV 块包含的附加信息。 |
|
||||
| RAM Block(RAM 块) | 基础存储对象。表示 NVRAM 块中驻留在 RAM 的部分。参见 [SRS_LIBS_08534] |
|
||||
| ROM Block(ROM 块) | 基础存储对象。表示 NVRAM 块中驻留在 ROM 的部分。"ROM 块"是 NVRAM 块的可选部分。 |
|
||||
| NV Block(NV 块) | 基础存储对象。表示 NVRAM 块中驻留在 NV 存储器的部分。"NV 块"是 NVRAM 块的强制部分。 |
|
||||
| Administrative Block(管理块) | 驻留在 RAM 中的基础存储对象。包含管理 NVRAM 块、执行其处理及交付状态信息所需的任何 RAM 数据。"管理块"是 NVRAM 块的强制部分。 |
|
||||
| MemHwA | Memory Hardware Abstraction,见 [AUTOSAR_SRS_MEMHW] |
|
||||
|
||||
---
|
||||
|
||||
## 4 功能概述
|
||||
|
||||
非易失 RAM 管理器(NVRAM Manager)管理所有类型非易失存储器中的数据存储。
|
||||
|
||||
NVRAM 管理器本身应是硬件无关的,所有直接访问硬件的功能(如内部或外部 EEPROM、内部或外部 Flash 中的仿真 EEPROM 等)封装在基础 SW 的较低层中。NVRAM 管理器处理对非易失数据的并发访问,并为单个数据元素提供如校验和保护等可靠性机制。为了在汽车系统所有领域都可用,NVRAM 管理器需要具有高度可扩展性(如可定义请求队列的数量和大小、支持不同的块管理类型、EEPROM 仿真等)。
|
||||
|
||||
---
|
||||
|
||||
## 5 需求追溯
|
||||
|
||||
| 需求 | 描述 | 满足者 |
|
||||
|------|------|--------|
|
||||
| RS_BRF_00129 | AUTOSAR 应支持数据损坏检测与保护 | SRS_Mem_00030, 00129, 08001, 08010, 08545, 08546, 08547, 08550, 08552, 08553, 08555, 08556 |
|
||||
| RS_BRF_01048 | AUTOSAR 模块设计应支持多任务环境下模块协同工作 | SRS_Mem_00034, 08542, 08558 |
|
||||
| RS_BRF_01064 | AUTOSAR BSW 应提供回调函数以访问上层模块 | SRS_Mem_00125 |
|
||||
| RS_BRF_01076 | AUTOSAR 基础软件应尽可能进行模块本地错误恢复 | SRS_Mem_00038 |
|
||||
| RS_BRF_01096 | AUTOSAR 应支持 ECU 的启动和关机 | SRS_Mem_00137, 08540 |
|
||||
| RS_BRF_01416 | AUTOSAR 服务应支持非易失存储器数据的标准化处理 | SRS_Mem_00013, 00016, 00017, 00136, 00138, 08544, 08554 |
|
||||
| RS_BRF_01800 | AUTOSAR 非易失存储器功能应划分为硬件相关层和硬件无关层 | SRS_Mem_00011 |
|
||||
| RS_BRF_01808 | AUTOSAR 非易失存储器处理应支持不同种类的存储器硬件 | SRS_Mem_08000 |
|
||||
| RS_BRF_01812 | AUTOSAR 非易失存储器功能应支持作业的优先级化和异步执行 | SRS_Mem_00034, 08543, 08558 |
|
||||
| RS_BRF_01816 | AUTOSAR 非易失存储器功能应基于逻辑内存块组织持久数据 | SRS_Mem_00041, 08001, 08009, 08528, 08529, 08531, 08533, 08534, 08538, 08543, 08549, 08560 |
|
||||
| RS_BRF_01824 | AUTOSAR 非易失存储器功能应提供非易失存储器到 RAM 的映射 | SRS_Mem_00027, 08014, 08533, 08538, 08549 |
|
||||
| RS_BRF_01832 | AUTOSAR 非易失存储器应独立于物理地址处理逻辑内存块 | SRS_Mem_08007, 08531 |
|
||||
| RS_BRF_01840 | AUTOSAR 非易失存储器功能应保护内存块的完整性 | SRS_Mem_00018, 00030, 00127, 00129, 00135, 08010, 08011, 08015, 08535, 08541, 08546, 08547, 08548, 08552, 08553, 08556 |
|
||||
| RS_BRF_01848 | AUTOSAR 非易失存储器功能应提供增强硬件可靠性的机制 | SRS_Mem_00018, 08529, 08531, 08548, 08551, 08554 |
|
||||
|
||||
---
|
||||
|
||||
## 6 需求规范
|
||||
|
||||
### 6.1 功能性需求
|
||||
|
||||
#### 6.1.1 配置
|
||||
|
||||
##### 6.1.1.1 [SRS_Mem_00041] 每个应用应能在配置时声明内存需求
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 通过使用配置技术,每个应用应能在配置时声明内存需求。此信息应可用于分配内存区域并生成适当的接口。错误的内存分配和需求冲突(没有足够内存可用)应在配置时被检测到。 |
|
||||
| 理由 | 实现更高的可靠性、互操作性 |
|
||||
| 用例 | -- |
|
||||
| 依赖 | -- |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816)
|
||||
|
||||
##### 6.1.1.2 [SRS_Mem_08534] NVRAM 管理器应支持两类 RAM 数据块
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应支持两类 RAM 数据块。这些 RAM 数据块对于 NVRAM 管理器和 SW 组件之间的数据交换是强制的。它们必须由 SW 组件或 BSW 模块提供。对特定 NVRAM 块的分配可以是:<br><br>- **永久**:即 RAM 数据块在配置时分配给恰好一个 NVRAM 块<br>- **临时**:即 RAM 数据块可在运行时分配给任何 NVRAM 块 |
|
||||
| 理由 | 减少 RAM 消耗。 |
|
||||
| 用例 | 1) 某些 NVRAM 块不经常使用,其数据无需永久驻留在 RAM 中。例如,应用希望对其所有互斥使用的 NVRAM 块使用一个共享 RAM 块。<br>2) 诊断服务希望从 NV 中读取某些应用使用的数据,而不危及应用的 RAM 块。它使用一个 RAM 块(必须足够大)来读取任何请求的 NV 数据块。 |
|
||||
| 依赖 | -- |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816)
|
||||
|
||||
##### 6.1.1.3 [SRS_Mem_08528] NVRAM 管理器应允许配置原生块管理类型
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应允许配置原生块管理类型。<br><br>- 原生 NVRAM 块应提供数据的基本存储和 ROM 可配置 ROM 默认值。 |
|
||||
| 理由 | 基本块类型 |
|
||||
| 用例 | 无特殊要求的常规 NVRAM 数据。 |
|
||||
| 依赖 | [SRS_LIBS_08534] RAM 数据块类别 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816)
|
||||
|
||||
##### 6.1.1.4 [SRS_Mem_08529] NVRAM 管理器应允许配置冗余块管理类型
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应允许配置冗余块管理类型。冗余 NVRAM 块应对应用透明,并应在发生不一致时(如不完整写入)能提供数据。<br><br>冗余 NVRAM 块应可配置以包含默认值。<br><br>注:冗余不一定意味着双重(或多重)存储。 |
|
||||
| 理由 | 安全性、增强数据可用性、完整性 |
|
||||
| 用例 | 用于保存安全相关数据(如防盗器数据) |
|
||||
| 依赖 | [SRS_Mem_00038] 可处理的错误不应影响应用; [SRS_Mem_00129] 自动数据修复; [SRS_LIBS_08534] RAM 数据块类别 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816, RS_BRF_01848)
|
||||
|
||||
##### 6.1.1.5 [SRS_Mem_08531] NVRAM 管理器应允许配置数据集块管理类型
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应允许配置数据集块管理类型。此类 NVRAM 块应在 NV 中提供可配置数量的可选元素。<br>- 数据集 NVRAM 块应可配置以包含默认值。 |
|
||||
| 理由 | 使运行时选择 ROM/NVRAM 中不同数据集成为可能。 |
|
||||
| 用例 | 一个 ECU 在一辆汽车的多个型号/国家变体中使用。根据车辆变体,选择 NVRAM 或 ROM 中对应的数据集。 |
|
||||
| 依赖 | [SRS_Mem_08007] 数据集选择; [SRS_LIBS_08534] RAM 数据块类别 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816, RS_BRF_01848, RS_BRF_01832)
|
||||
|
||||
##### 6.1.1.6 [SRS_Mem_08543] 每个 NVRAM 块的优先级应可在不同级别静态配置
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 每个 NVRAM 块的优先级应可在不同级别静态(预编译时)配置。<br><br>其中一个级别应为"立即(immediate)",对于这些块应适用 [SRS_Mem_08542]。 |
|
||||
| 理由 | 灵活性 |
|
||||
| 用例 | 崩溃数据写入和常规数据写入 |
|
||||
| 依赖 | [SRS_Mem_08542] 作业顺序优先级化 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816, RS_BRF_01812)
|
||||
|
||||
##### 6.1.1.7 [SRS_Mem_08009] NVRAM 管理器应允许为每个 NVRAM 块静态配置默认写保护(开/关)
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应允许为每个 NVRAM 块静态配置默认写保护(开/关)。 |
|
||||
| 理由 | 某些数据是只读的 |
|
||||
| 用例 | 写保护关:由应用本身生成的数据(如自适应数据、错误存储器);写保护开:外部赋予 ECU 的数据(如 EOL 数据、变体编码、参数) |
|
||||
| 依赖 | [SRS_Mem_00127] 写保护/解除保护功能 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816)
|
||||
|
||||
##### 6.1.1.8 [SRS_Mem_00135] NVRAM 管理器应有唯一的配置标识符
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应有一个配置标识符,它是非易失存储器配置的唯一属性。ID 可以静态分配给配置,或可以从配置属性计算得出。如果块配置改变(即添加或移除块,或更改其大小或类型),ID 必须改变。ID 应单独存储并应用于确定 NVRAM 内容的有效性。该机制在生产期间应是健壮的(如断电)。 |
|
||||
| 理由 | NVRAM 数据配置可能在不同应用软件版本之间变化。必须有一种方式来知道 NVRAM 的内容是否与应用期望的配置匹配。 |
|
||||
| 用例 | -- |
|
||||
| 依赖 | -- |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01840)
|
||||
|
||||
##### 6.1.1.9 [SRS_Mem_08549] NVRAM 管理器应提供软件更新后自动初始化 RAM 数据块的功能
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供功能,在软件更新后用 ROM 默认值自动初始化 RAM 数据块。此功能应可按 NVRAM 块配置。整个功能应可静态配置。 |
|
||||
| 理由 | 灵活性。因此 ECU 重编程期间无需更新 NV 存储器。 |
|
||||
| 用例 | ECU 重编程后(配置 ID 不匹配),NVRAM 块用(新)ROM 默认值初始化,但防盗器数据除外,不应被更新。 |
|
||||
| 依赖 | [SRS_Mem_00135] NVRAM 配置 ID |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816, RS_BRF_01824)
|
||||
|
||||
##### 6.1.1.10 [SRS_Mem_00125] 每个块应可配置通知
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 每个块应可配置通知(在读/写作业完成时启动)。 |
|
||||
| 理由 | 灵活性,与应用软件集成 |
|
||||
⌋(RS_BRF_01064)
|
||||
|
||||
##### 6.1.1.11 [SRS_Mem_08000] NVRAM 管理器应能访问多个非易失存储器设备
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应能访问多个非易失存储器设备。非易失存储器设备可以是不同类型。 |
|
||||
| 理由 | 灵活性,与应用软件集成 |
|
||||
| 用例 | 一个 ECU 中的多个非易失存储器,如外部 EEPROM 和内部 Flash 中的 EEPROM 仿真 |
|
||||
| 依赖 | [SRS_Mem_00011] (存储器)硬件独立性 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01808)
|
||||
|
||||
##### 6.1.1.12 [SRS_Mem_08001] NVRAM 管理器应为每个块提供可配置的一致性检查
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应为每个块提供可配置的一致性检查。 |
|
||||
| 理由 | 一致性检查可能并非用于所有块 |
|
||||
| 用例 | 读取或写入的数据可通过校验和重新计算和比较立即检查。 |
|
||||
| 依赖 | [SRS_Mem_00030] 数据一致性/完整性检查;[BSW023] 不完整写操作的检测 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816, RS_BRF_00129)
|
||||
|
||||
##### 6.1.1.13 [SRS_Mem_08551] 错误情况下最大重试次数应可单独配置
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 对于 NVRAM 管理器的读和写操作,错误情况下的最大重试次数应可单独配置。 |
|
||||
| 理由 | 从临时错误情况中恢复 |
|
||||
| 用例 | 错误条件下的数据读写。 |
|
||||
| 依赖 | [SRS_Mem_08554] 读和写操作的重试 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01848)
|
||||
|
||||
##### 6.1.1.14 [SRS_Mem_08552] NVRAM 管理器应提供唯一块标识符的可配置验证
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供在读取 NVRAM 块时唯一块标识符的可配置验证。 |
|
||||
| 理由 | 必要时防止块错误寻址 |
|
||||
| 用例 | 必要时可检测硬件寻址错误 |
|
||||
| 依赖 | [SRS_Mem_08555] 唯一块标识符的验证 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.1.15 [SRS_Mem_08553] NVRAM 管理器应提供可配置的数据写验证
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应通过重新读取先前写入的数据并比较,提供可配置的数据写验证。写验证应可按 NVRAM 块配置。 |
|
||||
| 理由 | 必要时验证正确存储的数据 |
|
||||
| 用例 | 必要时可检测硬件写错误 |
|
||||
| 依赖 | [SRS_Mem_08556] 数据写验证 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.1.16 [SRS_Mem_08538] 在 NVRAM 管理器启动期间自动加载的块应可静态配置
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 在 NVRAM 管理器启动期间自动加载的块应可静态配置。 |
|
||||
| 理由 | 允许灵活性 – 启动期间加载内容 |
|
||||
| 用例 | 仅加载在严格时序约束内通过 CAN 启动通信所需的块。 |
|
||||
| 支持材料 | 仅适用于配置为永久 RAM 块的 NVRAM 块 SRS_LIBS_08534 |
|
||||
⌋(RS_BRF_01816, RS_BRF_01824)
|
||||
|
||||
##### 6.1.1.17 [SRS_Mem_08546] 应可保护永久 RAM 数据块免于因复位造成的数据丢失
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 对于每个具有永久 RAM 数据块的 NVRAM 块,应有可配置选项以强制执行增加 RAM 数据完整性的机制(发生复位时)。 |
|
||||
| 理由 | 由于电压下降引起的复位,RAM 内容可能仍然有效。这不能被所有平台检测(或保证)。如果可以在启动时交付最新数据(来自 RAM),则会增加健壮性。 |
|
||||
| 用例 | 当前移动的天窗控制在复位发生后不能用过时的位置数据驱动(参见 [SRS_Mem_08011]),每次电压下降都丢失位置也是不可接受的。 |
|
||||
| 依赖 | [SRS_Mem_08545] RAM 数据验证和完整性信息更新 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.1.18 [SRS_Mem_08560] 每个 NVRAM 块应可配置为共享访问
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 每个 NVRAM 块应可配置为共享访问。 |
|
||||
| 理由 | 这是按块进行的,以保持内存消耗低。 |
|
||||
⌋(RS_BRF_01816)
|
||||
|
||||
#### 6.1.2 初始化
|
||||
|
||||
##### 6.1.2.1 [SRS_Mem_08533] NVRAM 管理器应提供检查和加载配置为具有永久 RAM 数据块的 NVRAM 块到 RAM 的服务
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供服务,检查并加载配置为具有永久 RAM 数据块的 NVRAM 块到 RAM。<br><br>此服务必须由 ECU 状态管理器在启动期间应用运行之前调用一次。 |
|
||||
| 理由 | 应用在 ECU 启动后需要带有效数据的 RAM 块。 |
|
||||
| 用例 | ECU 启动:为应用提供 NV 数据。 |
|
||||
| 依赖 | [SRS_LIBS_08534] RAM 数据块类别; [SRS_Mem_08538] 启动期间加载的 NVRAM 块的静态配置 |
|
||||
| 支持材料 | -- |
|
||||
⌋(RS_BRF_01816, RS_BRF_01824)
|
||||
|
||||
#### 6.1.3 正常运行
|
||||
|
||||
**注**:只有 NVRAM 管理器应访问非易失存储器。所有其他软件应专门使用 NVRAM 管理器访问非易失存储器中的数据。但这不是对内存服务的需求,而是对使用的需求。因此,先前的需求 [BSW176]("仅通过 NVRAM 管理器访问非易失存储器")已被移除。
|
||||
|
||||
##### 6.1.3.1 [SRS_Mem_00027] NVRAM 管理器应提供隐式访问 NVRAM 和共享内存(RAM)中块的方式
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器仅提供隐式访问 NVRAM 和共享内存(RAM)中块的方式。这意味着 NVRAM 管理器将一个或多个块从 NV 存储器复制到 RAM 块,反之亦然。<br><br>RAM 块内变量的显式读写访问必须由应用提供(访问宏……)。 |
|
||||
| 理由 | NVRAM 管理器的基本功能 |
|
||||
| 用例 | 参数访问 |
|
||||
⌋(RS_BRF_01824)
|
||||
|
||||
##### 6.1.3.2 [SRS_Mem_08014] NVRAM 管理器应允许在全局 RAM 区域中非连续地分配 RAM 块
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | RAM 块分配可在全局 RAM 区域中定义为非连续。 |
|
||||
| 用例 | 每个 RAM 块可在全局 RAM 区域中无地址约束地分配 |
|
||||
⌋(RS_BRF_01824)
|
||||
|
||||
##### 6.1.3.3 [SRS_Mem_00013] NVRAM 管理器应提供处理多个并发读/写请求的机制
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供处理多个并发读/写命令的机制,如排队。<br><br>实现需求:如果使用排队,仅缓冲读/写命令,而非要写入的数据! |
|
||||
| 理由 | NVRAM 管理器处理整个 SW 系统中对 NVRAM 的所有访问。因此并发访问极有可能发生。由于资源限制,NVRAM 管理器必须以串行方式处理这些并行访问。 |
|
||||
⌋(RS_BRF_01416)
|
||||
|
||||
##### 6.1.3.4 [SRS_Mem_00016] NVRAM 管理器应提供从非易失存储器读出与 NVRAM 块关联数据的功能
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供从非易失存储器读出与 NVRAM 块关联数据的功能。NVRAM 块由唯一标识符引用。NVRAM 数据被复制到相应的 RAM 块。<br><br>此服务的可用性应可配置。 |
|
||||
| 理由 | NVRAM 管理器的基本功能 |
|
||||
| 用例 | 从 NV 读取应用数据。 |
|
||||
⌋(RS_BRF_01416)
|
||||
|
||||
##### 6.1.3.5 [SRS_Mem_00017] NVRAM 管理器应提供在非易失存储器中存储与 NVRAM 块关联数据的功能
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供在非易失存储器中存储与 NVRAM 块关联数据的功能。NVRAM 块由唯一标识符引用。<br><br>数据从 RAM 块复制到相应的 NV 块。此服务的可用性应可配置。 |
|
||||
| 理由 | NVRAM 管理器的基本功能 |
|
||||
| 用例 | 在 ECU 电源关闭前非易失存储数据 |
|
||||
⌋(RS_BRF_01416)
|
||||
|
||||
##### 6.1.3.6 [SRS_Mem_08554] 如果 NVRAM 块的读和写操作未成功,NVRAM 管理器应重试最多可配置的次数
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 如果 NVRAM 块的读和写操作未成功,NVRAM 管理器应重试最多可配置的次数。 |
|
||||
| 理由 | 从临时错误情况中恢复 |
|
||||
| 用例 | 电磁脉冲已改变刚读取的数据,因此校验和检查失败。再次读取数据可从此错误情况中恢复。 |
|
||||
| 依赖 | [SRS_Mem_08551] 最大读写重试次数配置 |
|
||||
⌋(RS_BRF_01416, RS_BRF_01848)
|
||||
|
||||
##### 6.1.3.7 [SRS_Mem_08541] NVRAM 管理器应保证已接受的写请求将被处理
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应保证已接受的写请求将被处理。 |
|
||||
| 理由 | 发出写请求的应用期望数据被写入。 |
|
||||
| 用例 | 1) 源自应用的排队写作业不应受关机过程或其取消影响。2) 在小幅崩溃时 ECU 保持可操作,NVRAM 管理器应表现得像没有此崩溃一样。因此,写相应崩溃数据的请求不应中止任何已接受的写作业。 |
|
||||
| 依赖 | [SRS_Mem_00017], [SRS_Mem_08535], [SRS_Mem_08540], [SRS_Mem_08542] |
|
||||
⌋(RS_BRF_01840)
|
||||
|
||||
##### 6.1.3.8 [SRS_Mem_00018] NVRAM 管理器应提供从 ROM 默认值恢复 NVRAM 块关联数据的功能
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供从 ROM 默认值恢复 NVRAM 块关联数据的功能。此服务的可用性应可配置。 |
|
||||
| 用例 | 收音机出厂设置 |
|
||||
⌋(RS_BRF_01840, RS_BRF_01848)
|
||||
|
||||
##### 6.1.3.9 [SRS_Mem_08548] NVRAM 管理器应从应用请求默认数据
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 如果配置时没有 ROM 块可用,NVRAM 管理器应从应用请求默认数据。这应可配置。 |
|
||||
| 理由 | 灵活性 |
|
||||
| 用例 | 校准数据无法由常量数据提供。 |
|
||||
⌋(RS_BRF_01840, RS_BRF_01848)
|
||||
|
||||
##### 6.1.3.10 [SRS_Mem_08547] NVRAM 管理器应能区分显式无效和不一致数据
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应能区分显式无效和不一致数据。 |
|
||||
| 理由 | 显式无效(甚至空白)数据块不应表示要报告给 DEM 的错误情况。 |
|
||||
| 用例 | 如果 NVRAM 管理器检测到不一致数据,如由于中止的写操作或 CRC 错误,应报告错误。对于无效数据,不报告错误。 |
|
||||
| 支持材料 | SRS_MemHwAb_14014, SRS_MemHwAb_14015, SRS_MemHwAb_14016 |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.3.11 [SRS_Mem_08550] NVRAM 管理器应提供将永久 RAM 数据块标记为已修改/未修改的服务
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供将永久 RAM 数据块标记为已修改/未修改的服务。关机时仅保存已标记为已修改的数据到 NV。此服务的可用性应可配置。 |
|
||||
| 理由 | 减少写周期,加快关机。 |
|
||||
| 用例 | 应用最清楚何时将数据写回 NV 存储器。使用此功能将减少所需写周期数,从而减少漫游块和 NV 存储器消耗的需求,并由于底层 HW 引起的相当大的开销(提供预擦除存储器)而可能的缓慢写入而加快关机操作。 |
|
||||
| 依赖 | [SRS_Mem_08546] RAM 数据块免于数据丢失的保护 |
|
||||
⌋(RS_BRF_00129)
|
||||
|
||||
##### 6.1.3.12 [SRS_Mem_08545] NVRAM 管理器应提供将 NVRAM 块的永久 RAM 数据块标记为有效的服务
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供将 NVRAM 块的永久 RAM 数据块标记为有效的服务。<br>此外,该服务应更新完整性信息(如果已配置)。<br>此服务的可用性应可配置。 |
|
||||
| 理由 | 仅保存有效数据到 NV。在启动时增加使用 RAM 中最新数据(而非从 NV 重新加载旧数据)的可能性。 |
|
||||
| 用例 | 读取失败可能导致 RAM 内容无效。此内容不应保存到 NV 存储器。在这种情况下,应用负责通过呈现数据并调用此服务将其标记为有效来处理此情况。 |
|
||||
| 依赖 | [SRS_Mem_08546] RAM 数据块免于数据丢失的保护 |
|
||||
⌋(RS_BRF_00129)
|
||||
|
||||
##### 6.1.3.13 [SRS_Mem_08011] NVRAM 管理器应提供在非易失存储器中使数据块无效的服务
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供在非易失存储器中使数据块无效的服务。块由唯一标识符引用。<br><br>此服务的可用性应可配置。 |
|
||||
| 理由 | 避免加载过时数据,特别是位置信息。 |
|
||||
| 用例 | 天窗位置(增量电机位置)必须在每次移动后保存到 NVRAM 块。在天窗每次新移动之前,此位置必须被标记为无效。否则,天窗操作期间的复位将导致无效的天窗位置(因为加载来自 NVRAM 的旧位置)。这可能导致天窗机械结构损坏(撞击末端位置时)或严重伤害。 |
|
||||
⌋(RS_BRF_01840)
|
||||
|
||||
##### 6.1.3.14 [SRS_Mem_08544] NVRAM 管理器应提供擦除与 NVRAM 块关联的 NV 块的服务
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供擦除与 NVRAM 块关联的 NV 块的服务。NVRAM 块由唯一标识符引用。此服务的可用性应可配置。 |
|
||||
| 理由 | 显式擦除以支持下方列出的用例。 |
|
||||
| 用例 | 崩溃数据写入:无写前擦除的延迟,因此预擦除 NV 块必须在应用定义的点(如通过诊断服务)完成。这不能自动完成。 |
|
||||
⌋(RS_BRF_01416)
|
||||
|
||||
##### 6.1.3.15 [SRS_Mem_08007] NVRAM 管理器应提供选择有效数据集 NV 块的服务
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供选择有效数据集 NV 块的服务。此服务应将数据集编号(ROM 或 NVRAM)关联到相应的 RAM 块。 |
|
||||
| 理由 | 使运行时选择 ROM/NVRAM 中不同数据集成为可能。 |
|
||||
| 用例 | 一个 ECU 用于一辆汽车的多个型号/国家变体。根据车辆变体,选择 NVRAM 或 ROM 中对应的数据集。 |
|
||||
| 支持材料 | BSW08006,块管理类型 — 数据集 |
|
||||
⌋(RS_BRF_01832)
|
||||
|
||||
##### 6.1.3.16 [SRS_Mem_08542] NVRAM 管理器应提供作业处理顺序的优先级化
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供作业处理顺序的优先级化。最高优先级作业应首先处理;具有相同优先级的作业应以 FIFO 顺序执行。<br><br>此优先级化应可配置。如果禁用,作业应以 FIFO 顺序执行。 |
|
||||
| 理由 | 某些数据必须比其他数据写入得更快。因此处理它们应优先。立即数据应抢占正在运行的较低优先级操作。 |
|
||||
| 用例 | 崩溃数据写入;基于优先级的数据保存(如 SiemensVDO 的 NVRAM 管理器) |
|
||||
| 依赖 | [SRS_Mem_08543], [SRS_Mem_08541] |
|
||||
⌋(RS_BRF_01048)
|
||||
|
||||
##### 6.1.3.17 [SRS_Mem_00020] NVRAM 管理器应提供读出读/写操作状态的功能
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供读出读/写操作状态的功能。 |
|
||||
| 理由 | NVRAM 管理器应支持各种非易失存储器设备。某些设备的访问时间与 ECU 的实时需求相比较长。因此 NVRAM 管理器应提供具有确定操作当前状态功能的异步 API。 |
|
||||
| 用例 | 串行 EEPROM 的读/写 |
|
||||
⌋()
|
||||
|
||||
##### 6.1.3.18 [SRS_Mem_00127] NVRAM 管理器应允许单独启用/禁用每个 NVRAM 块的写保护
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应允许单独启用/禁用每个 NVRAM 块的写保护。<br><br>写保护块的 RAM 块数据区域可无限制地更改。<br><br>如果 NV 块受保护,对此块的后续写访问作业将被拒绝。启用写保护的 NVRAM 块不能保存到 NV 存储器。复位后,写保护应根据初始写保护设置。<br><br>此服务的可用性应可配置。 |
|
||||
| 理由 | 某些数据块不被应用更改,仅由特殊的 EOL(下线)/诊断服务更改 |
|
||||
| 用例 | 编码数据,EOL(下线)数据。 |
|
||||
| 依赖 | [SRS_Mem_08009] 块的默认写保护 |
|
||||
⌋(RS_BRF_01840)
|
||||
|
||||
##### 6.1.3.19 [SRS_Mem_00030] NVRAM 管理器应实现保存在 NVRAM 中数据的一致性/完整性检查机制
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应实现操作期间保存在 NVRAM 中数据的一致性/完整性检查机制,即使在异步复位或断电的情况下。位翻转也应涵盖。<br><br>实现提示:校验和是一种可能性;此外,可使用写访问字节(有效/无效)。 |
|
||||
| 理由 | 错误检测。 |
|
||||
| 用例 | 用于检测位翻转的签名。 |
|
||||
| 依赖 | [SRS_Mem_08001] 数据一致性检查配置 |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.3.20 [SRS_Mem_08555] NVRAM 管理器应提供在读取 NVRAM 块时静态验证块标识符的机制
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供在读取 NVRAM 块时静态验证块标识符的机制。 |
|
||||
| 理由 | 防止块错误寻址 |
|
||||
| 用例 | 可检测硬件寻址错误 |
|
||||
| 依赖 | [SRS_Mem_00030] 数据一致性/完整性检查 |
|
||||
⌋(RS_BRF_00129)
|
||||
|
||||
##### 6.1.3.21 [SRS_Mem_08556] NVRAM 管理器应提供通过再次读取和比较来验证已写入块数据的机制
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应通过再次读取和比较来提供验证已写入块数据的机制。 |
|
||||
| 理由 | 防止错误写入的数据 |
|
||||
| 用例 | 可检测硬件写错误 |
|
||||
| 依赖 | [SRS_Mem_08553] 数据写验证配置 |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.3.22 [SRS_Mem_00034] NVRAM 管理器对持久存储器的写访问应与 ECU 正常运行准并行执行
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器对持久存储器的写访问应与 ECU 正常运行准并行(并发)执行。数据一致性不得受到威胁。 |
|
||||
| 理由 | 某些类型存储器的写访问比处理器寄存器访问慢几个数量级。 |
|
||||
| 用例 | EEPROM 写访问。 |
|
||||
⌋(RS_BRF_01048, RS_BRF_01812)
|
||||
|
||||
##### 6.1.3.23 [SRS_Mem_08558] NVRAM 管理器应提供机制以移除与 NVRAM 块关联的所有未处理请求
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供机制以移除与 NVRAM 块关联的所有未处理请求 |
|
||||
| 理由 | 在分区终止和随后重启之前源自该分区(如来自属于该分区的 SW-C)的请求不应被处理(因此不应报告完成)。 |
|
||||
| 用例 | 处理分区的终止和重启。 |
|
||||
⌋(RS_BRF_01048, RS_BRF_01812)
|
||||
|
||||
##### 6.1.3.24 [SRS_Mem_00136] NVRAM 管理器应提供运行时确定与 NVRAM 块关联数据更新的功能
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供运行时确定与 NVRAM 块关联数据更新的功能。NVRAM 块由唯一标识符引用。<br><br>此功能将允许在 RAM 块自上次读或写操作以来未更新的情况下跳过对 NV 存储器的写操作。<br><br>此功能的可用性应可配置。 |
|
||||
| 理由 | 确定 RAM 块中非易失数据的更新。 |
|
||||
| 用例 | 避免多余的存储操作。 |
|
||||
⌋(RS_BRF_01416)
|
||||
|
||||
##### 6.1.3.25 [SRS_Mem_00138] NVRAM 管理器应提供触发选定块在 RAM 和 NV 存储器上首次或重新初始化的函数
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 应有多块操作可用,对具有永久 RAM 或显式同步的选定块执行以下操作:<br>(1) 从 ROM 块和/或初始化回调执行显式恢复<br>(2) 将这些内容写回 NV 存储器介质。<br><br>如果这些选定块没有恢复数据源(即 ROM 块和/或初始化回调),应执行此 NV 块的无效化,而不是写入恢复数据。在 DATASET 块的情况下,如果选择用于首次初始化,此 NvM 块的所有 NV 块实例应被无效化。 |
|
||||
| 理由 | 不要让应用或单独管理的工厂程序完成整个工作。 |
|
||||
| 用例 | (1) 工厂(重新)初始化<br>(2) 开发时清除 NV 存储器<br>(3) 通过测试仪访问重新初始化 |
|
||||
⌋(RS_BRF_01416)
|
||||
|
||||
#### 6.1.4 关机操作
|
||||
|
||||
##### 6.1.4.1 [SRS_Mem_08535] NVRAM 管理器应提供触发完整性信息更新和保存 RAM 数据块到 NV 存储器的函数
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供触发完整性信息更新(重新计算校验和,如 CRC)和保存 RAM 数据块到 NV 存储器的函数。此函数仅可影响永久 RAM 数据块,因为临时 RAM 数据块不能自动写回(如由 ECU 状态管理器触发)。<br><br>信息:<br>- 此函数必须由 ECU 状态管理器在关机前调用一次<br>- 此函数可由诊断服务("Save NVRAM")调用 |
|
||||
| 理由 | 不要让应用完成整个工作。 |
|
||||
| 用例 | ECU 关机:保存应用的 NV 数据 |
|
||||
| 支持材料 | [SRS_LIBS_08534] RAM 数据块类别 |
|
||||
⌋(RS_BRF_01840)
|
||||
|
||||
##### 6.1.4.2 [SRS_Mem_08540] NVRAM 管理器应提供中止关机过程的函数
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 如果在 ECU 关机期间检测到 ECU 唤醒条件,NVRAM 管理器应提供函数以中止源自关机过程的写作业。源自应用的队列中的写请求不应受此取消例程影响。<br>此取消不应是破坏性的,即当前正在写入的 NVRAM 块应完成。 |
|
||||
| 理由 | 允许在 ECU 关机过程中对唤醒条件快速反应。 |
|
||||
| 用例 | ECU 关机:NVRAM 管理器已开始将所有 RAM 块保存到 NVRAM。在此作业处理期间,发生 ECU 唤醒条件。ECU 必须在给定时限内(如 100ms)可操作。NVRAM 管理器完成所有可能花费如 800ms 的写作业是不可接受的。 |
|
||||
⌋(RS_BRF_01096)
|
||||
|
||||
##### 6.1.4.3 [SRS_Mem_00137] NVRAM 管理器应提供自动验证 NVRAM 块的服务
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应提供自动验证 NVRAM 块的服务。<br><br>此服务必须由 ECU 状态管理器在 ECU 关机的早期阶段调用一次。<br><br>此服务的可用性应可配置。 |
|
||||
| 理由 | 在 RAM 块数据有效的情况下避免用 ROM 默认数据恢复 RAM 块。 |
|
||||
| 用例 | ECU 关机:正常关机无法完成(如由于超时、电压下降)。 |
|
||||
⌋(RS_BRF_01096)
|
||||
|
||||
#### 6.1.5 故障操作
|
||||
|
||||
##### 6.1.5.1 [SRS_Mem_00038] 可处理的错误不应影响其他软件组件
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器不应将可处理(可治愈或可恢复)的错误报告给其他软件组件。 |
|
||||
| 理由 | 关注分离,避免不必要的功能降级 |
|
||||
| 用例 | 数据冗余保存(在两个相同的块中)。如果在一个块中检测到数据损坏,则使用冗余块的内容。应用不受影响。 |
|
||||
| 依赖 | [SRS_Mem_00129] 自动数据修复 |
|
||||
| 支持材料 | SRS_LIBS_08529 块管理类型 — 冗余 |
|
||||
⌋(RS_BRF_01076)
|
||||
|
||||
##### 6.1.5.2 [SRS_Mem_00129] NVRAM 管理器应修复管理类型为"NVRAM 冗余"的块中的数据
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 如果检测到数据损坏且可派生有效数据,NVRAM 管理器应修复管理类型为"NVRAM 冗余"的块中的数据。修复周期数应有限,以避免无限循环。 |
|
||||
| 理由 | 健壮性 |
|
||||
| 用例 | 冗余 NVRAM 块中的数据损坏(位翻转) |
|
||||
| 支持材料 | SRS_LIBS_08529 块管理类型 — 冗余 |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.5.3 [SRS_Mem_08010] 如果无法将 NV 数据读到 RAM,NVRAM 管理器应将 ROM 默认数据复制到对应 RAM 块的数据区域
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | 如果 NVRAM 管理器无法将数据从 NV 读到 RAM,它应将 ROM 默认数据复制到对应 RAM 块的数据区域。 |
|
||||
| 理由 | 健壮性 |
|
||||
| 用例 | 校准数据集损坏。加载默认校准数据集。 |
|
||||
| 支持材料 | 见所有块管理类型 |
|
||||
⌋(RS_BRF_01840, RS_BRF_00129)
|
||||
|
||||
##### 6.1.5.4 [SRS_Mem_08015] NVRAM 中的某些 NV 块在首次初始化后永不应被擦除或替换为默认 ROM 数据
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | ECU 重编程后必须保留某些 NVRAM 数据。这意味着 NVRAM 中的某些 NV 块在首次初始化后永远不应被擦除或替换为默认 ROM 数据。 |
|
||||
| 理由 | 防盗器代码或车辆识别号 |
|
||||
⌋(RS_BRF_01840)
|
||||
|
||||
**注**:这是对配置/引导加载程序的需求。
|
||||
|
||||
### 6.2 非功能性需求(质量)
|
||||
|
||||
#### 6.2.1 硬件独立性
|
||||
|
||||
##### 6.2.1.1 [SRS_Mem_00011] NVRAM 管理器应独立于底层内存硬件
|
||||
|
||||
⌈
|
||||
| 字段 | 内容 |
|
||||
|------|------|
|
||||
| 类型 | Valid |
|
||||
| 描述 | NVRAM 管理器应使用现有(标准化)接口访问底层内存硬件。这些接口应抽象出内存硬件。 |
|
||||
| 理由 | 可移植性、可重用性、通过灵活使用内存设备降低硬件成本 |
|
||||
⌋(RS_BRF_01800)
|
||||
|
||||
#### 6.2.2 易用性
|
||||
|
||||
(无具体需求列出)
|
||||
|
||||
---
|
||||
|
||||
## 7 参考文献
|
||||
|
||||
### 7.1 AUTOSAR 交付物
|
||||
|
||||
[AUTOSAR_SW_ARCH] Layered Software Architecture
|
||||
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
|
||||
|
||||
[AUTOSAR_BASIC_SW] List of Basic Software Modules
|
||||
AUTOSAR_TR_BSWModuleList.pdf
|
||||
|
||||
[AUTOSAR_SRS_MEMHW] Requirements on Memory Hardware Abstraction Layer
|
||||
AUTOSAR_SRS_MemoryHWAbstractionLayer.pdf
|
||||
|
||||
[TPS_STDT_0078] SoftwareComponentTemplate
|
||||
AUTOSAR_TPS_SoftwareComponentTemplate.pdf
|
||||
|
||||
---
|
||||
|
||||
## 翻译说明
|
||||
|
||||
- 本文档完整翻译自 AUTOSAR_SRS_MemoryServices v4.4.0(Document ID 007)。
|
||||
- 保留所有需求 ID(SRS_Mem_xxxxx、RS_BRF_xxxxx 等)。
|
||||
- 保留 AUTOSAR 方框符 ⌈⌋。
|
||||
- 模块缩写(NVRAM、NV、ECU、CRC、EOL 等)保持英文。
|
||||
Reference in New Issue
Block a user