【发布时间】:2017-10-19 19:08:20
【问题描述】:
有人写过启动ROM的测试计划吗?
此引导 ROM 将仅通过 SPI 从闪存或主机引导设备
这将用于具有皮质 M3 和传感器数据采集的嵌入式系统
您是否修改了用于单元/集成测试的引导 rom 代码?
非常感谢
【问题讨论】:
标签: unit-testing kernel boot
有人写过启动ROM的测试计划吗?
此引导 ROM 将仅通过 SPI 从闪存或主机引导设备
这将用于具有皮质 M3 和传感器数据采集的嵌入式系统
您是否修改了用于单元/集成测试的引导 rom 代码?
非常感谢
【问题讨论】:
标签: unit-testing kernel boot
是的,很多时候,但如果您从头开始设计系统以进行测试,效果最好。这意味着在预算和设计标准允许的情况下,在您的开发或测试盒中构建一个连接到数字和模拟 I/O 卡的模拟板。我见过一些模型,它们是 FPGA 和其他逻辑阵列,覆盖了一个 8' x 4' 总线面板,安装在实验室的墙上,带有集成 HPC(ASIC 设计测试)的机架。当然,有时您必须将所有速度降低几个数量级才能保持在您的机器硬件的限制范围内。
在您的情况下,只需测量从系统开机/重置到启动代码向测试引脚或通信数据包提供一些信号时的实际启动时间,并结合一些 POST 代码来验证就足够了芯片和外围配置。对于单元/集成测试,该 POST 通常比您可能随产品提供的内容更广泛。后者意味着您在具有所需编程接口的 PC/服务器类机器上运行自动化,以对设备进行编程并监控任何单元/集成测试或 POST 信号。如果您有单独的开发和交付 POST 代码,您应该在每个构建的实验室环境中运行两者。
在系统的早期设计阶段以及所有硬件和软件开发周期中,请密切注意无法在模拟中测试的功能,并将这些功能与可以在产品外完全模拟的功能隔离开来。您的 DevOp 测试周期应在允许任何提交之前运行代码库的这些部分的所有测试。这包括在开发过程中维护所需的模拟。与修改硬件并将其与 DevOps 集成相比,在 PC/Server 测试类机器上运行单元测试几乎总是更便宜,在大多数情况下也更快。
编辑:您还可以在 FPGA 中嵌入一个或多个 Cortex M3,并将整个模拟硬件实现为 FPGA logic。
【讨论】: