ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

(论文速读)PARSY-VDD:把系统辨识并行化到多核 RISC-V,在端侧完成振动损伤诊断

(论文速读)PARSY-VDD:把系统辨识并行化到多核 RISC-V,在端侧完成振动损伤诊断 论文题目Parallelization is All System Identification Needs: End-to-End Vibration Diagnostics on a Multicore RISC-V Edge Device系统辨识所需的只是并行化多核 RISC-V 边缘设备上的端到端振动诊断期刊IEEE Internet of Things Journal2025摘要结构故障的早期检测需要部署实时监测系统持续获取对损伤敏感的信息但这会带来带宽和存储瓶颈。在边缘侧部署数据压缩技术能够降低网络流量不过当前效果较好的方法通常具有较高的内存与功耗需求使其很难嵌入资源受限设备基于系统辨识System IdentificationSysId的振动数据压缩就是其中之一。本文提出 PARSY-VDD一个面向振动损伤检测、经过完整优化的并行端到端 SysId 软件框架可在不持续上传原始数据的情况下以较低时间和能耗在边缘侧完成损伤诊断。作者在 Z24 桥梁和风力机叶片两个基准上验证其诊断能力并将系统部署到 STM32 单核 MCU 与 GAP9 多核 RISC-V 边缘设备。面向 SysId 的架构无关算法优化相比此前 GAP9 上的实现带来约 90× 执行加速和约 85× 能耗降低。最终GAP9 高性能配置在 370 MHz、0.8 V、8 核下实现 751 μs 的执行时间低功耗配置在 240 MHz、0.65 V、8 核下实现约 37 μJ 能耗。与 STM32 单核实现相比高性能配置约快 76×低功耗配置的能效约高 360×。源码GitHub - ah-kiamarzi/PARSY-VDD: An optimized end to end PARallelized SYstem identification based algorithm for Vibration Damage Detection · GitHub一、研究背景为什么振动信号不能一直上传云端结构健康监测SHM通常在桥梁、风机等设施上密集布置加速度传感器通过振动信号跟踪结构动力学变化。问题是连续采样会产生大量原始数据。论文举例单轴 8-bit 加速度计若每小时采集一次、每次以 100 Hz 采 10 min一天就会产生约 1.5 MB如果持续监测数据量很容易增长到数十 GB。真正昂贵的不只是存储而是无线传输。电池供电节点把大量振动数据持续发往云端会显著缩短续航。因此更合理的方案是在传感器附近直接做信号处理只把少量损伤特征或模型参数发出去。SysId 很适合做这件事因为它能用少量模型参数描述整段振动序列已有工作可以实现超过 50× 的数据压缩。但传统 SysId 在 MCU 上代价很高已有单核部署最复杂场景需要超过 2 min能耗接近 100 mJ实时性和电池寿命都难以接受。这篇论文的核心问题因此非常明确能不能保留 SysId 的物理可解释性和数据压缩能力同时把“分钟级”计算压到“微秒/毫秒级”真正放进低功耗传感节点二、PARSY-VDD从振动序列到损伤告警的完整链路论文 Figure 1PARSY-VDD 端到端流程包括采集、SysId 与基于 PSD 的损伤检测PARSY-VDD 并不是只优化某一个矩阵算子而是把整个链路都纳入端侧Raw vibration → Regression Matrix → QR → Model Parameters / Noise Variance → PSD → Peak Shift → Damage Detection作者采用输出型 AR/ARMA 系统辨识。其思想是不用知道外部激励只根据结构自身的振动响应建立动力学模型。以回归形式表示可以写成 ()。其中 () 是由时序样本构造的回归矩阵() 是待估计模型参数。SysId 中计算最重的一步是 QR 分解得到模型参数与噪声方差后不必再对原始长序列直接做频谱分析而是可以由参数解析计算 PSD。结构损伤会造成固有频率移动因此只要跟踪 PSD 主峰位置、幅值和形状变化就可以形成损伤指标。这种做法与纯黑盒分类器的区别在于最终判断仍然对应结构固有频率等物理量。三、算法选择为什么最终是 Gram–Schmidt ARMA3.1 QR 分解不是随便选作者比较了 Givens RotationsGR、Gram–SchmidtGS和 HouseholderHH三种 QR 实现。论文 Table I三种 QR 方法在内存、复杂度以及数值稳定性上的比较GR 内存低、稳定性较好但算法结构偏串行HH 稳定性高却需要更多矩阵运算和临时存储GS 的计算复杂度和内存压力较低而且循环结构更适合多核数据并行。对于 IoT 端侧这种“内存、能耗、延迟同时受限”的设备作者最终选择GS。论文 Table IIAR/ARMA、不同矩阵规模与 32/64-bit 精度下三种 QR 方法的 ISD 对比作者使用 Itakura–Saito DivergenceISD比较 GAP9 输出频谱与 MATLAB 双精度 Golden Model。ISD 0 表示完全一致。即使在所有 QR/模型/32-bit 组合中最差情况也只有4.30 × 10⁻³说明单精度嵌入式实现仍能保持较好的频谱一致性。3.2 AR 与 ARMA 的取舍论文 Table III不同 AR/ARMA 模型复杂度下的频谱误差、损伤频移与内存占用AR 计算更轻但 ARMA 得到的频谱更平滑、伪峰更少尤其在 Z24 桥梁数据上更明显。模型阶数越高越能追踪细微频率变化但内存也快速增加从轻量配置约13.8 kB到最重配置约1.15 MB。论文 Figure 3风力机叶片与 Z24 桥梁在 Healthy / Medium / Severe Damage 下的 AR、ARMA 频谱这张图是方法有效性的核心证据。无论桥梁还是风机叶片健康与不同损伤状态都出现了明显的峰值位置、形状和能量变化。Z24 中约 13 Hz 的第四模态在健康和损伤状态之间移动超过 1.2 Hz说明 SysId 参数确实保留了可用于诊断的结构信息。在最终硬件性能测试中作者选择ARMA GSNp 16N 30NpPSD 取 2048 个 32-bit 频点。ARMA 更复杂因此用它评估硬件性能也属于更严格的测试。四、怎样把 SysId 真正并行到 GAP9论文 Figure 2GAP9 多核 RISC-V 架构GAP9 包含一个负责系统控制的 Fabric Controller以及一个 9-core Compute Cluster。Cluster 最高可运行到 370 MHz支持 PULP ISA 扩展、硬件循环、SIMD、共享 FPU并提供 128 kB L1 Scratchpad、1.6 MB L2 SRAM。PARSY-VDD 的优化不是简单“开 8 个线程”。论文 Figure 4优化前各模块计算占比QR 与 PSD 两部分已经占整个 ARMA 流程的89% 以上因此作者重点并行 QR、PSD、数据准备、(Q^TS) 更新和噪声方差估计模型参数回代只占约 0.13%保留串行反而更划算。论文 Figure 5数据在 SPI、L2、L1 与各计算模块之间的分配核心思想是尽量在低延迟 L1 中完成计算通过 μDMA/DMA 完成搬运。L2 访问约比 L1 慢一个数量级因此“数据放在哪里”本身就是性能优化的一部分。论文 Figure 6PARSY-VDD 各循环的多核划分、同步 Barrier 与串行 Reduction循环按迭代空间分给不同核心同时把并行块大小和索引提前算好以减少调度开销。值得注意的是作者没有把所有操作都强行并行某些 Reduction 若采用多核需要昂贵的互斥同步实验发现单核执行反而更快、更省电。此外还有三类很工程化的优化Loop Unrolling 减少流水线停顿矩阵转置降低 L1 Bank ConflictPSD 中用2 kB 的 sin/cos Lookup Table替代高开销数学库调用在不损失精度的情况下减少上百 Cycle 的三角函数计算。五、端侧实验751 μs、37 μJ 是怎么来的5.1 多核并行并不是理想线性加速论文 Table IV1/2/4/8 核下的总 Cycle、L1 Stall、I$ Miss 与 Barrier总 Cycle 从单核的约1.78 M降到 8 核的约278 k。但 8 核并没有达到理论 8×因为并行后 L1 竞争增加同时整个流程有 351 个 Barrier其中336 个来自 QR。因此最终系统上限主要由 QR 的同步与串行 SQRT/Division 决定。论文 Figure 72/4/8 核时各模块和整体 Speed-Up8 核 HP 下总体 Speed-Up 约6.40×PSD 最接近理想并行而 QR 由于同步和数据依赖限制更明显。这张图很好地说明端侧并行优化不能只报告“核数”还要解释为什么没有线性增长。5.2 并行不仅更快也更省能论文 Figure 8GAP9 不同核心数、DSP 指令与 LP 配置下的板级能耗仅启用 GAP9 的 DSP/ISA 优化就能降低约1.32×能耗从单核提升到 8 核 HP在加速的同时还能节能约2.37×进一步把 8 核切换到 240 MHz、0.65 V 的 Near-Threshold LP 模式总能耗相对顺序执行降低约3.8×。也就是说多核在这里并不是“用更多核心换性能、功耗更高”而是因为任务完成得更快核心更早回到低功耗状态最终Energy per Diagnosis 反而下降。5.3 与 STM32 的真实对比论文 Figure 9GAP9 与 STM32H7 / STM32F4 的端到端执行时间8 核 HP GAP9 的完整 PARSY-VDD 只需要751 μsSTM32H7 约57.6 ms因此前者约快76×。优势不仅来自多核还来自 GAP9 的单周期浮点运算、Hardware Loop 和 Post-Increment Load/Store。论文 Table V不同平台的 IPCSTM32F4、STM32H7 的 IPC 分别约 0.76、0.90GAP9 单核约 0.82而 8 核达到5.71。这说明真正的收益来自“架构特性 并行映射”而不是单纯提高频率。论文 Figure 10不同设备上的绝对能耗以及按 22 nm 工艺归一化后的能耗LP 8-core GAP9 的单次端到端能耗约37 μJ。按实际板级数值比较它相对 STM32F4 约有360×的能效优势论文同时考虑不同工艺与供电电压进行归一化归一化后相对 STM32F4 仍有约26.26×节能优势。这个区分很重要360× 是实际平台对比26.26× 是作者进一步做工艺归一化后的结果。六、总结这篇论文真正值得学的是什么论文 Table VIFPGA、单核 MCU、多核 MCU 上已有 SysId 部署与 PARSY-VDD 的综合比较与此前同样运行在 GAP9 上、但只优化 SysId/QR 的工作相比PARSY-VDD 不仅加入完整 PSD 和损伤检测链路还取消 Chunking直接对完整矩阵做一次并行 QR并采用 Economy-Size QR。最终从此前约68.10 ms、3.21 mJ、86.58 kB推进到约0.75 ms、37.40 μJ、64.44 kB对应约90.8× 延迟加速、85.8× 能效提升和 18% 内存下降。如果把这篇论文压缩成一句话它不是用一个轻量神经网络替代振动信号处理而是把传统、可解释但很重的 SysId 算法重新设计成适合多核超低功耗 MCU 的端到端并行流水线。对“信号处理 端侧部署”方向来说这篇论文尤其值得参考三个点。第一算法精度不是只在 PC 上验证而是把 32-bit 嵌入式结果与 MATLAB Golden Model 做频谱误差对齐第二不只给 FLOPs而是测真实 Cycle、Barrier、L1 Stall、IPC、Latency 和 Board Energy第三最终比较的是从原始振动数据到 PSD 损伤特征的完整 End-to-End Pipeline而不是只挑一个计算核做漂亮的加速比。从方法设定上看PARSY-VDD 的适用前提也很明确它针对可以用 AR/ARMA 动力学模型描述、并可通过频谱峰值变化反映损伤的振动系统。对于其他时序信号SysId 模型和损伤指标可能需要重新设计但“传统信号处理算法 → 数值误差验证 → 多核并行化 → 内存映射 → 真实功耗/时延测量”这一套论文范式具有很强的可迁移性。
返回列表