跳转到内容
新建笔记

振动分析仪采集架构与验证

采集架构先由同步性、持续吞吐、缓存深度和最坏延迟决定,再决定把 SPI 或并行采集放到实时核还是 FPGA。平均带宽够用不代表系统不会丢样。

方案适用条件主要风险
M7 直接控制 ADC通道少、采样率适中、外设接口匹配中断抖动、DMA/缓存一致性、向 Linux 搬运
FPGA 采集并缓存多通道同步、高持续速率、严格触发FPGA 逻辑、跨时钟域和主机接口复杂度
Linux 用户态直接采集低速原型或控制通道调度不可预测,不适合硬实时采样边界

原始有效载荷近似为:

R=Nch fs NbitsR=N_{ch}\,f_s\,N_{bits}

设计预算还要加入帧头、时间戳、状态、对齐和链路编码。缓存至少覆盖主机最大不可服务时间:

Bmin≥Rbyte TstallB_{min}\ge R_{byte}\,T_{stall}

所有数值应由实测或器件时序推导;没有测量依据的“CPU 占用率”“RPMsg 极限”和“完全可行”不能作为架构结论。

  1. 电气层:电源、参考、时钟、复位和 ADC 输出格式正确。
  2. 单次事务:读取固定码或已知直流输入,确认字节序和符号扩展。
  3. 定时连续性:用逻辑分析仪检查 DRDY、SPI/并行总线和 DMA 间隔。
  4. 数据完整性:为每帧加入序号,统计丢帧、重复帧、溢出和最大积压。
  5. 同步性:给多通道同一信号,比较幅值和相位差。
  6. 压力测试:在 UI、存储、网络和分析同时运行时持续采集。
  7. 故障恢复:验证拔插、超时、过载、进程重启和停止/恢复。
  • SPI 模式、时钟极性/相位和最大时钟符合器件要求。
  • CONVST、BUSY、CS 与读时序关系有波形证据。
  • 输入接地和精密直流源的码值、噪声与量程一致。
  • 连续读取达到目标采样率,且丢帧计数为零。
  • CPU 占用率、DMA 中断率和缓存水位在最坏负载下有余量。

M7 负责确定性的采集与短期缓存,Linux 负责存储、网络、UI 和复杂分析。共享内存必须明确所有权、内存屏障和 cache 清理/失效规则。控制消息可走 RPMsg;高吞吐数据是否走 RPMsg、共享内存或设备驱动,应由持续压力测试决定。