FSR / TSR 写作工程化深度 — 8/10 字段模板 + 双向 traceability + 5 反模式

功能安全L1别名 FSR 写作 · TSR 写作 · Safety Requirement writing · FSR/TSR traceability · shall vs should · safety requirement 8 字段

本质与导读

本质 FSR / TSR 是 safety engineer 把 SG 拆成"工程师照做的 shall 句子"那一步:FSR 是 ISO 26262 Part 3 §7 强制 work product,TSR 是 Part 4 §6 强制,且 TSR 必须带量化数字(DC、FTTI 分配)。写错的代价不在文档本身——HSI 无 input 写不下去、HW vendor 拿不到数字 commit 不出来、bench 不知道测什么导致 verification matrix 断;真正的硬约束是 SG→FSR→TSR→HSI/HW/SW→V&V 这条双向 traceability 链必须 100% 闭合。

主线坐标:横轨 · 功能安全(跨站) · ↑ 全景主线

1. FSR / TSR 在 ISO 26262 V-cycle 中的位置 + 5 阶段 SOP

Safety Requirement 写作是 ISO 26262 V-cycle 左侧第 2 步(HARA 之后 → HSI/HW/SW 之前)。FSR 是"系统应该做什么"(逻辑层),TSR 是"系统应该怎么做"(分配 HW + SW 层)。读者完全不同 — FSR 给 System Architect + Safety Engineer 看,TSR 给 HW 设计师 + SW Architect 看。下图把写作 5 阶段 + FSR vs TSR 区分一次摆开:

FSR vs TSR 写作 5 阶段 SOP + V-cycle 位置

1.1 5 阶段写作流程

按 Tier-1 中型主驱项目 8-12 周分段:

  • HARA review(1 周)— FSR 不能凭空写,必须从 HARA 输出的 SG 衍生。先 review HARA 完整性(每条 SG 有 ASIL + FTTI + Safe State),无 SG 不能起 FSR
  • ② FSR v0.1(2-3 周)— 每条 SG 拆 3-8 条 FSR;Safety Engineer 单人写第一版。重点是**"系统应该感知什么 + 在什么时间内反应"**,不下沉到 HW / SW 细节
  • ③ TSR allocate(2-3 周)— 每条 FSR 分配到 HW path + SW path;Safety Engineer + System Architect 协作。关键决策:哪部分 HW 做(detect / actuate),哪部分 SW 做(decision / monitor);FTTI 预算分配给 HW / SW / 接口
  • ④ Multi-team Review(1-2 周)— 3 个 reviewer 各自看:HW lead 看 TSR HW 部分能否 implement / FMEDA 数字能否达;SW lead 看 RTOS 调度 + 资源是否够;Safety Manager 看 ASIL + ISO 26262 合规
  • ⑤ v1.0 Lock(1 周)— Polarion / DOORS lock + traceability matrix 100% 覆盖 + 三方签字。lock 后任何改动必走 ECN(参 HSI 写作深度)

写作总工时 ~4-5 FTE × 月 Tier-1 中型主驱。最大风险在 ② → ③ 之间 — FSR 写得太具体(下沉到 HW 细节)导致 TSR 没什么可分配,或 FSR 太抽象(像哲学)导致 TSR 写不下手。

1.2 FSR vs TSR 4 维区分

FSR / TSR 最大写错原因是"边界不清"。下表把 4 个维度的区分一次列清,review 时按这 4 维查每条需求是否归错类:

维度FSR(Functional Safety Requirement)TSR(Technical Safety Requirement)
Scope系统级(整个 ECU / 整套 inverter)子系统级(driver IC / MCU / DC-DC / SM 实现)
抽象层"Inverter shall transition to STO within 200 ms upon fault detection""Driver IC nFAULT → MCU EXTI 12 latency ≤ 50 µs;MCU shall command STO via GPIO PB3 within 10 µs"
shall 严格度"shall" 默认级别 — 系统 must 做到"shall" + 具体数字 + 引 datasheet rev — vendor must commit
verification 方式system-level test(HIL / vehicle test)component-level test(bench scope / IC datasheet 自测 / SW unit test)

判断规则:一条 requirement 如果不下沉到具体 component / signal / API,是 FSR;下沉到了就是 TSR。若一条句子"系统级 + 具体数字"混着写,拆成 2 条(一条 FSR + 一条 TSR)。


2. FSR 写作 8 字段模板 + worked example

FSR 是 Part 3 §7 强制 work product。每条 FSR 必含 8 字段,缺一字段 reviewer 就有歧义空间。

2.1 8 字段模板

下表把每字段 + 为何不可省 一次列清,FSR 起草时照表填:

字段例(FSR-12 derived from SG-1)为何不可省
IDFSR-12跨文档 unique key, Polarion link 用
SG Linkderives from SG-1追溯到 HARA
Statement"Inverter shall transition to STO within FTTI = 200 ms upon detection of any safety-critical fault"系统级 statement,不下沉 HW
FTTI200 ms (allocated from SG-1)时间 budget,后续 TSR 分配
ASILD (inherited from SG-1)决定 shall 严格度 + V&V 严格度
Scope"applies to traction inverter only;DC-DC / OBC excluded"防 ASIL 跨子系统蔓延
Verification Method"HIL fault injection + vehicle level test"后续 V&V matrix 输入
Dependencies"depends on Item Definition IDD-TI-2026-A v1.0"Context 锁定

2.2 FSR-12 完整 worked(SG-1 衍生)

下面把 8 字段在主驱 SG-1 "Unintended torque < 200 ms" 的 FSR-12 上跑完整一遍。这条 worked 可直接复制到 FSC 文档:

FSR-12 (FSC §4.2 — Fault Detection and Safe State Transition)

  ID                : FSR-12
  SG Link           : derives from SG-1 (HARA Hazard HZ-001)
  Statement         : The traction inverter shall transition to STO (Safe Torque Off)
                      within FTTI = 200 ms upon detection of any safety-critical fault
                      (including but not limited to: short circuit, gate driver failure,
                       current sensor failure, position sensor failure).
  FTTI              : 200 ms (allocated from SG-1 reaction time budget)
  ASIL              : D (inherited from SG-1)
  Scope             : applies to 800V SiC traction inverter (IDD-TI-2026-A §3.1);
                      AUX 12V DC-DC and OBC are out of scope for this FSR.
  Verification Method:
                      - L1: HIL fault injection (TC-FSR-012-HIL, all 12 fault classes)
                      - L2: Vehicle-level test (TC-FSR-012-V, 3 driving scenarios)
                      - L3: FMEDA verification (sum of per-fault FTTI ≤ 200 ms)
  Dependencies      : Item Definition IDD-TI-2026-A v1.0
                      Operating Conditions OC-INV-2026 §4 (temperature, supply, vibration)
  Rationale         : Without 200 ms FTTI, unintended torque event can reach 50% rated
                      torque in 350 ms (per HARA worst case analysis), causing loss of
                      vehicle controllability per S3/E4/C3 classification.

写法 tips:

  • "shall" + 系统级动词("transition" / "detect" / "ensure"), "should" / "may" — ASIL D 项目 FSR 全 shall
  • Statement 不写具体 HW component(避免下沉 TSR 层),只写"系统层"行为
  • FTTI 写绝对数值 + 引 SG 来源("allocated from SG-1");不写"快速" / "及时"
  • Verification Method 必列 L1 / L2 / L3 多层(HIL / vehicle / FMEDA);单一层 verification 是 ASIL D 大忌
  • Rationale 是 optional 但推荐写;reviewer 看到 "200 ms" 会问"为什么不是 150 ms",Rationale 提前回答

2.3 FSR 反模式 vs 修法

FSR 写错的 5 种最常见模式都是"边界混淆 + 形容词代数字"。下表把反模式 + 修法 一次列清,review 阶段照表查:

反模式修法
写得像 TSR(下沉到 HW)"Driver IC nFAULT shall toggle within 500 ns"提到系统层:"Inverter shall detect fault within ... ms";HW 细节移到 TSR
无 FTTI 数字"Inverter shall quickly enter SafeState"必给绝对数值 + 引 SG
用 "should" / "may""Inverter should transition to STO"ASIL D 全 "shall";B 允许 should 但要 justify
无 Verification Method(空)必列 L1/L2/L3 多层(HIL / vehicle / FMEDA)
Scope 不清"Inverter shall ..."显式 "applies to 800V SiC traction inverter only" + 引 IDD ID

3. TSR 写作 10 字段模板 + worked example

TSR 是 Part 4 §6 强制 work product。每条 TSR 必含 10 字段(比 FSR 多 2 字段:HW/SW allocation + DC target / SM relation),缺一字段 HW vendor 或 SW team 就有歧义。

3.1 10 字段模板

下表把每字段 + 为何不可省 一次列清,TSR 起草时照表填(本表与 §2.1 FSR 8 字段对偶,加 ★ 标 TSR 独有字段):

字段例(TSR-3.4 derived from FSR-12)为何不可省
IDTSR-3.4跨文档 unique key
FSR Linkderives from FSR-12追溯到 FSC
Statement"Driver IC ISO5852S nFAULT signal shall report fault to MCU within 500 ns;MCU shall command STO via GPIO PB3 within 50 µs of EXTI 12 trigger"子系统级 statement,下沉到 component + signal + 数字
Allocation ★HW: driver IC ISO5852S + MCU EXTI; SW: ISR PB3_STO_handler()决定 HW path vs SW path
SM Relation ★implements mechanism_desat fault report chain追溯到 SM target
DC TargetDC ≥ 99% for SC Type 1/2/3FMEDA 量化输入
FTTI Portion162 µs allocated (driver detect 1µs + nFAULT 500ns + ISR 50µs + STO cmd 10µs + STO exec 100µs)系统级 FSR-12 FTTI 200ms 的子预算
Verification IDTC-DRV-001 (HW bench) + TC-SW-014 (RTOS ISR latency)V&V matrix 输入
Shall Severityshall (ASIL D)配合 ASIL D 严格度
Fault Response"Upon failure to meet 500 ns / 50 µs / 10 µs, SW shall log DTC P0C7B-xx, retain STO, NO auto-recovery"失效后行为定义

3.2 TSR-3.4 完整 worked(FSR-12 衍生)

下面把 10 字段在 TSR-3.4 driver IC 过流 SM 上跑完整一遍:

TSR-3.4 (TSC §3.4 — Driver IC Fault Detection and Safe Torque Off)

  ID                : TSR-3.4
  FSR Link          : derives from FSR-12 (FSC §4.2)
  Statement         : Driver IC ISO5852S nFAULT signal shall report fault to MCU
                      within 500 ns from VCE_SAT > 10V sustained > 1 µs;MCU shall
                      command STO via GPIO PB3 within 50 µs of EXTI 12 trigger;
                      Driver IC shall execute STO (gate discharge) within 100 µs
                      of receiving STO command.
  Allocation        : HW: driver IC ISO5852S (U7) + MCU EXTI 12 (PA12) +
                          MCU GPIO PB3 (STO output)
                      SW: ISR `PB3_STO_handler()` in RTOS task priority P0
  SM Relation       : implements `mechanism_desat` fault report + STO actuation chain
                      (see SM catalog SM-DRV-001 to SM-DRV-008)
  DC Target         : DC ≥ 99% for SC Type 1 (Hard Switch-On Fault)
                      DC ≥ 95% for SC Type 2 (Load Short During ON)
                      DC ≥ 85% for SC Type 3 (Cross-Phase Failure)
                      (per FMEDA-DRV-2026-04-15 Table 4.3)
  FTTI Portion      : 162 µs (= driver detect 1 µs + nFAULT assert 500 ns +
                      MCU ISR latency 50 µs + STO command output 10 µs +
                      driver STO execute 100 µs); margin to FSR-12 FTTI 200 ms = 1234×
  Verification ID   :
                      - TC-DRV-001: HW bench scope, 3 corners (−40/+25/+150°C)
                        Pass: tD_assert ≤ 500 ns AND tSTO ≤ 110 µs
                      - TC-SW-014: RTOS ISR worst-case latency, 1000 fault injections
                        Pass: tISR ≤ 50 µs at 99.99 percentile
                      - TC-FMEDA-003: paper analysis, FMEDA DC verification
  Shall Severity    : shall (ASIL D)
  Fault Response    : Upon failure to meet 500 ns / 50 µs / 10 µs (any one):
                      - SW shall log DTC P0C7B-xx with timestamp
                      - SW shall retain STO state (NO auto-recovery)
                      - SW shall increment fault counter for SBC watchdog reset chain
                      - SW shall report to VMU via CAN-FD frame ID 0x18FF50E5

写法 tips:

  • Statement 必带 component + signal + 数字 + 时间; "fast" / "high" / 任何形容词
  • Allocation 显式 HW + SW 双 path(单 path 是大忌,无 partition 决策)
  • DC Target 引 FMEDA 报告 ID + Table 行号;reviewer 直接 cross-check
  • FTTI Portion 是子预算,必显式算 margin to FSR FTTI(本例 1234×)
  • Verification ID 3 类必齐(HW bench + SW unit + FMEDA paper)
  • Fault Response 段是 TSR 独有,定义"如果这条 TSR 失效系统怎么办"(meta-safety)

3.3 TSR 反模式 vs 修法

TSR 写错的根因都是"省 allocation + 没 DC 量化 + 没 fault response"。下表把 5 类典型反模式列清:

反模式后果修法
没 HW/SW AllocationTSR 不知道谁实现 → HSI 写不下去显式 HW 部分 + SW 部分 + 接口信号
DC Target 没引 FMEDAI3 评审 reject — 数字凭空来引 FMEDA 报告 ID + Table 行号
FTTI Portion 没算 margin加起来超 FSR FTTI 都没人发现margin = FSR_FTTI - Σ(TSR portions) 必算
Verification 只 1 类ASIL D 不接受单一 verificationHW bench + SW unit + FMEDA paper 三齐
Fault Response 缺TSR 失效时系统行为未定义必写"upon failure to ..., system shall ..."

4. 5 层双向 Traceability Matrix

FSR / TSR 不是孤立文档,必与 ISO 26262 work product 链。双向 traceability 意味:Polarion / DOORS 里点任一层节点 → 跳上下游;反之亦然。审计员从任一端追,断链 = defeater。

5-Layer SG→FSR→TSR→HSI/HW/SW→V&V Bi-directional Traceability

4.1 5 层链路 worked(主驱 SG-1 → DV bench)

下面把 SG-1 端到端 5 层链跑完。每层都引上一层 ID + 下一层 ID,Polarion 自动 cross-link:

Layer 1: HARA          SG-1   "Unintended torque < 200 ms, ASIL D"
                              ↓ derives 1:N
Layer 2: FSC           FSR-10 "Detect short circuit faults"
                       FSR-11 "Detect gate driver failures"
                       FSR-12 "Transition to STO within FTTI 200 ms upon fault detection"
                       FSR-13 "Provide redundant torque monitoring (ASIL decomposition)"
                              ↓ allocates 1:N(HW + SW partition)
Layer 3: TSC           TSR-3.1 "Three-phase shunt current sensing ≥ 200 kHz BW"
                       TSR-3.2 "Driver IC ISO5852S desat detection ≤ 1 µs"
                       TSR-3.3 "MCU AURIX TC397 lockstep core safe state"
                       TSR-3.4 "Driver IC nFAULT → MCU STO ≤ 162 µs"
                       TSR-3.5 "Torque plausibility check at 1 ms cycle"
                              ↓ implements via interface contract
Layer 4: HSI / HW / SW HSI §3.4.7 nFAULT signal contract (9 fields)
                       HW datasheet ISO5852S §6.4 Table 6.1 row 5+7
                       SW EXTI 12 ISR PB3_STO_handler() RTOS P0
                              ↓ verifies via test execution
Layer 5: V&V           TC-DRV-001  HW bench scope, 3 corners
                       TC-SW-014   RTOS ISR latency, 1000 injections
                       TC-FMEDA-003 FMEDA paper analysis
                       TC-HIL-FSR-012 HIL fault injection (FSR-12 系统级)
                       TC-VEHICLE-SG-001 vehicle test (SG-1 整车级)

Polarion / DOORS 工具上,每个 traceability link 必双向:

#ForwardReverse工具实现
1SG → FSRFSR derives_from SGPolarion link type derives
2FSR → TSRTSR allocates_from FSRPolarion link type allocates
3TSR → HSIHSI implements TSRPolarion link type implements
4TSR → HW componentHW component fulfills TSRPolarion link type fulfills
5TSR → SW unitSW unit realizes TSRPolarion link type realizes
6TSR → V&V test caseV&V verifies TSRPolarion link type verifies

断链类型:

  • Orphan TSR(没有 FSR 引)= TSR 是凭空写的,reviewer 立即 reject
  • Orphan FSR(没有 SG 引)= FSR 不来自 HARA,可能是 scope creep
  • No verification(TSR 无 V&V test case 引)= ASIL D defeater
  • No HW/SW allocation(TSR 无 component / unit 引)= TSR 不可实现

5. ASIL D FSR/TSR Review 6 项 checklist

Tier-1 内部 review 走完这 6 问,I3 评审退回率从 50% 降到 5%(per Safety Case GSN authoring defeater 分析)。

#检查动作失败后果
1每条 FSR 有 8 字段全?grep 缺 FTTI / Verification / Scope 字段抽 5 条,缺一 = reject
2每条 TSR 有 10 字段全(含 Allocation + DC Target + FTTI Portion)?同上抽 5 条,缺一 = reject
3FTTI 子预算和 ≤ FSR FTTI?margin ≥ 1.5×?表格列 margin 列,< 1.0× 红色margin < 1.0 = critical defect
4双向 Polarion link 100% 覆盖?Polarion query "orphan TSR" / "orphan FSR"任一 orphan = reject
5每条 TSR 有 3 类 verification(HW bench + SW unit + FMEDA)?抽 5 条 TSR 查 Verification ID单一类 = defeater
6每条 TSR 有 Fault Response 段?抽 5 条查"upon failure to ..."缺 = TSR 失效行为未定义

第 5 + 6 项是 ASIL D 特有(B / C 项目可只 1 类 verification + 无 Fault Response);D 必三齐 + 必有 Fault Response。


6. 5 个工程陷阱速查

FSR / TSR 写作末期出现的陷阱集中在 5 类,根因都是"边界混淆 + 形容词代数字 + traceability 断链"。下表把陷阱、后果、修法一次摆开:

#陷阱后果修法
1FSR 下沉到 HW 细节(写成 TSR)TSR 无内容可写,allocation 决策乱拆 1 → 2(FSR 留系统层 + TSR 接 HW 细节)
2TSR 没数字(用"快速"等形容词)HW vendor / SW team 自由解读 → 集成失败必数字 + 单位 + 引 datasheet rev
3shall / should / may 混用ASIL D 项目 reject(应全 shall)ASIL D 全 shall;B / C 允许 should 但要 justify;may 仅用于 informative 段
4FTTI 子预算不算 margin加起来超 FSR FTTI 都没人发现margin = FSR_FTTI - Σ(TSR portions) 必显式列
5Verification Method 单一类(只 HIL 或只 paper)ASIL D 单点验证 defeaterHW bench + SW unit + FMEDA paper 三类齐

7. 工程交付清单

写完一个 ASIL D 项目的 FSR / TSR 工件包应有:

  • FSR table(Polarion / DOORS)— 典型 30-60 条 / SG 一组;每条 8 字段全
  • TSR table(Polarion / DOORS)— 典型 100-300 条 / FSR 衍生;每条 10 字段全
  • FTTI budget allocation matrix(Excel)— FSR FTTI → 各 TSR portion + margin
  • 5-Layer Traceability Matrix(Polarion query export)— SG / FSR / TSR / HSI HW SW / V&V 全 100% double-link
  • Review Record(6 问 checklist)— 每问签字 + 整改 close
  • Verification Test Plan(V&V matrix)— 每条 TSR ≥ 3 个 test case ID

I3 评审现场典型路径:抽 5 条 TSR → 反查 FSR ID → 反查 SG → 反查 V&V test case 是否 pass → 反查 FMEDA DC 是否达 target。任一断点 = 退回 1-3 月。


缩写表

只列本页专业术语:

缩写全称 / 中文备注
FSRFunctional Safety RequirementISO 26262-3 §7 强制(在 FSC 内)
TSRTechnical Safety RequirementISO 26262-4 §6 强制(在 TSC 内)
FSCFunctional Safety ConceptPart 3 §7 强制 work product
TSCTechnical Safety ConceptPart 4 §6 强制 work product
SGSafety GoalHARA 输出,FSR 上游
HARAHazard Analysis and Risk AssessmentPart 3 §6 强制
FTTIFault Tolerant Time IntervalFault 发生 → Hazardous Event 之间最短时长(无 SM 时);fault-handling(detect+react+到 SafeState)必 ≤ FTTI
ASILAutomotive Safety Integrity LevelQM / A / B / C / D 5 级
DCDiagnostic CoverageASIL D ≥ 99%
SMSafety MechanismISO 26262 安全机制
HSIHardware-Software InterfacePart 4 §6.4.7 强制
STOSafe Torque Offinverter safe state 之一
SCShort CircuitType 1/2/3 IGBT 短路分类
FMEDAFailure Mode Effects and Diagnostic AnalysisPart 5 §8 + Annex C
V&VVerification and ValidationPart 4 §9 / Part 6 §11
HILHardware-In-the-Loop系统级 fault injection 平台
EXTIExternal InterruptSTM32 / NXP MCU 中断线
RTOSReal-Time Operating SystemAUTOSAR / FreeRTOS / SafeRTOS
DTCDiagnostic Trouble CodeUDS 上报代码
Polarion / DOORSApplication Lifecycle Managementrequirement + traceability 工具
ECNEngineering Change Notice版本变更通知
AURIX TC397Infineon 主驱 MCUlockstep 核 ASIL D
ISO5852STI 隔离 gate driverdriver IC 例
IDDItem Definition DocumentPart 3 §5 强制
OCOperating ConditionsIDD 子文档,工况边界
1oo2 / 2oo2one out of two / two out of tworedundancy 投票模型

核心要点

  • FSR ≠ TSR — FSR 系统级 "做什么"(8 字段),TSR 技术级 "怎么做"(10 字段,含 Allocation + DC + FTTI Portion + Fault Response 4 个 TSR 独有字段)
  • FTTI 子预算和 必显式算 margin to FSR FTTI — ASIL D 推荐 margin ≥ 1.5×;不算 margin = 量产偶发超 FTTI 但 paper 合规
  • Polarion / DOORS 强制双向 link 5 层全覆盖 — SG → FSR → TSR → HSI/HW/SW → V&V;orphan TSR / FSR 必 reject
  • shall 严格度按 ASIL 分 — ASIL D 全 shall;B/C 允许 should 但 justify;may 仅 informative
  • 每条 TSR 3 类 verification — HW bench + SW unit + FMEDA paper;单一类 = ASIL D defeater
  • 每条 TSR 必有 Fault Response 段 — 定义 "TSR 失效时系统怎么办"(meta-safety)
  • 写作 5 阶段 8-12 周 — HARA review → FSR v0.1 → TSR allocate → multi-team review → v1.0 lock;最大风险 ②→③ 边界混淆
  • 5 反模式戒:FSR 下沉(写成 TSR)/ TSR 没数字 / shall 混用 / FTTI 不分配 margin / verification 单一类

Cross-references