4. BSP需求分析与交付规格书编写

BSP(Board Support Package)需求分析的本质,是把航电计算平台顶层的系统需求,逐层分解为可被BSP实现、可被测试验证、可被交付验收的工程条目。系统需求通常描述“平台应支持什么能力”,例如“支持ARINC 653分区调度”“支持机载以太网通信”“支持BIT上电自检”;而BSP需求必须回答“在什么硬件上、通过什么接口、达到什么指标、以什么证据证明”。这一转换过程如果只做文字转抄,交付阶段必然出现“系统说支持、BSP说没实现、测试说无法验证”的三方扯皮。

一、从系统需求到BSP需求的分解方法

推荐采用“功能—接口—性能—约束”四维分解法。以“支持ARINC 653分区调度”为例:功能维度分解为分区创建、分区切换、分区时间窗配置、分区健康监控;接口维度分解为分区配置表接口、分区服务调用接口(如GET_PARTITION_STATUS)、错误处理接口;性能维度分解为分区切换时间、时间窗抖动、最大分区数;约束维度分解为DO-178C DAL等级、目标处理器架构、编译器版本。分解后的每一条BSP需求都应具备唯一编号、来源追溯、验证方法和验收准则。

分解过程中要特别警惕“隐含需求”。例如系统需求写“支持多核处理器”,BSP层面必须追问:核间通信机制是什么?共享内存如何保护?中断如何路由?缓存一致性由硬件保证还是软件维护?这些隐含需求若不显式写入规格书,后期集成时往往成为进度杀手。建议在分解时同步建立“需求—硬件—软件—测试”四向追溯矩阵,确保每条BSP需求都能找到对应的硬件资源、软件模块和测试用例。

系统需求 → BSP需求 四维分解与追溯关系 系统需求层(航电计算平台顶层) 示例:支持ARINC 653分区调度 · 支持机载以太网通信 · 支持BIT上电自检 · 支持多核处理 四维分解 功能维度 分区创建/切换 时间窗配置 健康监控 接口维度 分区配置表接口 服务调用接口 错误处理接口 性能维度 分区切换时间 时间窗抖动 最大分区数 约束维度 DO-178C DAL等级 目标处理器架构 编译器版本 BSP需求层(可实现·可验证·可交付) 每条需求含:唯一编号 · 来源追溯 · 验证方法 · 验收准则 硬件资源映射 处理器/内存/外设/中断 测试用例映射 功能测试/性能测试/边界测试 交付物映射 源码/文档/配置/测试报告

二、接口需求与性能需求的编写要点

接口需求是BSP规格书中最容易产生歧义的部分。以机载以太网通信为例,不能只写“支持AFDX通信”,而应明确:端口号、虚拟链路标识、带宽分配间隔(BAG)、最大帧长、冗余管理策略、完整性检查与冗余检查的启用条件。对于ARINC 653分区服务接口,应逐条列出服务名、参数类型、返回值范围、调用上下文(分区内/内核态)、错误码定义。接口需求建议采用表格形式,字段包括接口编号、接口名称、方向(输入/输出/双向)、数据类型、取值范围、默认值、异常处理。

性能需求必须可量化、可测量。例如“分区切换时间≤50μs”应补充测量条件:在目标处理器主频XXX MHz、L1缓存命中率≥90%、无DMA竞争的条件下,从调用切换服务到目标分区第一条指令执行的时间。时间窗抖动应明确为“相对于配置时间窗的偏差绝对值≤5μs”。对于BIT自检,应区分上电自检(PBIT)、周期自检(CBIT)和维护自检(MBIT),分别规定检测覆盖率、检测时间、故障隔离粒度。性能需求若缺少测量条件,测试阶段就无法判定合格与否。

三、交付规格书模板与评审要点

一份可执行的BSP交付规格书建议包含以下章节:1)范围与引用文件;2)硬件平台描述(处理器、内存、外设、中断控制器、时钟树);3)BSP功能需求(按模块分组,每条含编号、描述、来源、优先级、验证方法);4)接口需求(API列表、数据结构、错误码);5)性能需求(指标、测量条件、验收准则);6)约束与假设(DAL等级、编码标准、工具链版本);7)交付物清单(源码、二进制、配置表、文档、测试报告);8)验收准则与评审检查单。模板不是越厚越好,关键是每条需求都能被追溯和验证。

评审要点应聚焦五个方面:完整性——系统需求是否全部覆盖,隐含需求是否显式化;一致性——接口定义与硬件手册、操作系统手册是否一致;可验证性——每条需求是否有明确的验证方法和验收准则;可追溯性——需求编号是否与系统需求、测试用例双向关联;可行性——性能指标在目标硬件和工具链下是否可达。评审时应邀请系统、硬件、软件、测试四方参与,重点检查跨边界接口和性能指标,避免“各自都懂、合起来不通”。

评审检查单示例:①每条BSP需求是否有唯一编号和来源?②接口参数是否定义了取值范围和异常处理?③性能指标是否附测量条件?④交付物清单是否覆盖源码、配置、文档、测试报告?⑤是否识别了DAL等级对开发过程的影响?⑥是否明确了BSP与OS、应用之间的责任边界?

最后需要强调:BSP需求分析与规格书编写不是一次性文档工作,而是贯穿交付与维护的基线。当硬件版本升级、OS补丁更新或适航审定提出新要求时,规格书应同步修订并重新评审。维护阶段的问题定位、回归测试范围确定、版本变更影响分析,都依赖这份规格书的质量。把需求写清楚,后续的交付、测试和维护才有稳固的起点。