1. 安全概念基础:什么是技术安全概念(TSC)

各位好,我是老张。做了十几年安全架构,今天咱们聊聊技术安全概念——也就是 TSC。这名字听着挺唬人,说白了就是一套技术手段,用来保证系统出故障时不会伤到人。

我刚开始接触这个概念时,也觉得它很虚。直到有一次,我在一个汽车电子项目中,因为 TSC 定义得不够细,导致控制器在极端工况下误动作。嗯,从那以后,我再也不敢小看它了。

1.1 什么是技术安全概念

技术安全概念,英文叫 Technical Safety Concept,简称 TSC。它是从功能安全需求到具体技术实现的桥梁。

你想想看,功能安全告诉你「系统要做什么」,比如「刹车失灵时要自动制动」。但怎么实现?用硬件冗余?用软件监控?用故障诊断?这些具体的技术方案,就是 TSC 要回答的问题。

核心定义:TSC 是将功能安全需求(FSR)转化为具体技术实现方案的文档化过程。它定义了系统在故障情况下如何检测、响应和恢复,以确保达到目标安全完整性等级(SIL/ASIL)。

我个人习惯把 TSC 看作一张「安全路线图」。它告诉你:

  • 哪些故障需要检测
  • 用什么技术手段检测
  • 检测到后怎么响应
  • 响应后系统进入什么状态

1.2 TSC 在系统开发中的位置

TSC 不是凭空出现的。它在整个开发流程中,处于一个承上启下的关键位置。

我画了一张图,帮你理解 TSC 在 V 模型开发流程中的位置:

TSC 在 V 模型开发流程中的位置 危害分析与风险评估 功能安全概念(FSC) 技术安全概念(TSC) 系统集成与测试 安全验证与确认 安全评审与发布 硬件/软件实现 TSC 位于 V 模型左侧下降阶段的中部,是连接功能安全概念与具体实现的桥梁

从图中你能看到,TSC 处于 V 模型的左侧下降阶段。它前面是功能安全概念(FSC),后面是硬件和软件的具体实现。

我举个例子帮你理解:

开发阶段 输入 输出
危害分析 系统定义、运行场景 危害事件、风险等级
功能安全概念 危害分析结果 安全目标、功能安全需求
技术安全概念 功能安全需求 技术安全需求、系统架构
硬件/软件实现 技术安全需求 硬件设计、软件代码

我的经验:很多团队在 FSC 阶段做得很好,但到了 TSC 阶段就开始含糊。结果就是,安全需求落地时发现实现不了,或者实现成本太高。TSC 一定要考虑工程可行性。

1.3 TSC 与功能安全的关系

这个问题,我经常被问到。说白了,功能安全和 TSC 的关系,就像「做什么」和「怎么做」的关系。

功能安全关注的是:系统在发生故障时,能不能维持安全状态。它定义的是「安全目标」和「安全需求」。

TSC 关注的是:用什么技术手段来实现这些安全目标。它定义的是「技术方案」和「实现细节」。

我整理了一个对比表,帮你更清楚地理解:

维度 功能安全 技术安全概念(TSC)
关注点 系统行为(做什么) 技术实现(怎么做)
抽象层级 系统级 子系统/组件级
输出形式 安全目标、功能安全需求 技术安全需求、系统架构
验证方式 功能测试、故障注入 技术评审、仿真分析
典型内容 "当车速超过120km/h时,自动限速" "使用双核锁步CPU,每10ms进行一次比较"

你看,功能安全告诉你「要限速」,TSC 告诉你「用双核锁步 CPU 来实现限速逻辑」。两者缺一不可。

注意:千万不要把 TSC 写成功能安全需求的翻版。我曾经见过一个项目,TSC 文档就是把 FSC 文档的措辞改了一下,完全没有技术细节。这种 TSC 等于没写,评审时直接被驳回。

1.4 TSC 的核心要素

一个合格的 TSC,至少应该包含以下几个要素:

  1. 故障检测机制:用什么方法检测故障?比如看门狗、ECC、CRC、双核比较等。
  2. 故障响应策略:检测到故障后,系统怎么反应?比如降级运行、安全停机、故障报警等。
  3. 安全状态定义:系统进入什么状态才算安全?比如切断动力输出、保持当前状态、进入休眠等。
  4. 故障容错时间:从故障发生到系统进入安全状态,允许的最长时间是多少?
  5. 安全机制分配:每个安全机制分配给哪个硬件或软件模块?

我习惯用一张表格来组织这些要素:

安全目标 故障类型 检测机制 响应策略 安全状态 容错时间
防止非预期加速 油门传感器短路 双通道比较 立即切断油门 怠速状态 100ms
防止制动失效 制动踏板信号丢失 信号超时检测 启用备用制动 减速停车 200ms
防止转向失控 电机过温 温度传感器监控 降低助力等级 手动模式 500ms

我的建议:写 TSC 时,一定要把「容错时间」写清楚。很多团队只写检测和响应,忽略了时间约束。结果就是,故障检测到了,但响应太慢,系统已经失控了。

1.5 一个简单的 TSC 示例

光说不练假把式。我拿一个电机过温保护的例子,给你看看 TSC 长什么样:

技术安全需求编号:TSR-001
关联安全目标:SG-003(防止电机因过温损坏)
ASIL 等级:ASIL B

故障描述:
  电机绕组温度超过 150°C,持续超过 2 秒。

检测机制:
  1. 使用 NTC 温度传感器,采样周期 10ms
  2. 软件低通滤波,截止频率 5Hz
  3. 阈值比较:温度 > 150°C 触发报警

响应策略:
  1. 立即降低 PWM 占空比至 50%
  2. 向整车控制器发送过温报警信号
  3. 如果温度继续上升至 180°C,执行安全停机

安全状态:
  电机以 50% 功率降级运行,或完全停机

容错时间:
  从温度超限到执行降级,不超过 50ms

分配模块:
  温度检测 → 传感器驱动模块
  阈值比较 → 安全监控模块
  降级控制 → 电机控制模块

你看,一个完整的 TSC 条目,把「谁、什么时候、用什么方法、做什么、做到什么程度」都说清楚了。这才是能落地的安全设计。

总结一下:TSC 不是理论,是工程。它把抽象的安全目标,变成具体的、可实现的、可验证的技术方案。没有好的 TSC,功能安全就是空中楼阁。