# A80 电磨DWT/TIM2服务计时与SWD保留快照

状态：实际源码主机模型、ARM构建/静态绑定、冻结计数的ARM结束边界及独立解压重建通过。真实MCU计时、动态仿真实验、连续采样/FOC效果与制造未合格，FABRICATION_HOLD。没有烧录、上电、下单、采购、送厂或实物验收；三款原产品20项功能效果要求仍未完成物理验证。

本轮完成：在A79实际主循环上接入DWT CYCCNT与TIM2监测。只设置TRCENA/CYCCNTENA并保留已有计数/trace设置，不清零计数、不配置SWO/ITM/比较器或屏蔽IRQ。初始化拒绝NOCYCCNT、使能失败或32次有限屏障内不前进的计数器。计数开启/配置不是测得MCU性能；现在仍无任何真实硬件计数记录。

每个窗口从begin中的DWT读取开始，覆盖实际前台、DMA消费/流快照发布和end中的计数器/时基检查；最后/最大CPU cycles与TIM2 us记入64字节诊断记录。单次>3840cycle或>30us、零cycle、时基/计数器失效与序列错误锁定失败；短时间32位回绕由无符号差值处理。记录写入及可选保留快照在终点读取后，单次elapsed不含这些尾部指令，但连续busy情况下相邻begin同时检查CPU/TIM2差值，把记录/主循环/IRQ间隔纳入30us/3840约束。正常idle WFI不计入间隔。这不是独立硬件看门狗，未证明CPU卡死或完整32位周期别名情况已覆盖。

失败路径：新增任意已接管双ADC阶段abort和顺序ADC abort；实际timed wrapper在错误时停止TIM1/ADC12/DMA、关闭驱动/SPI、重新禁充并锁定DC_FAILED，然后main安全等待，无自动重试。默认main仍不调用任何DRV配置begin、ADC begin、DMA stream start、FOC或输出使能；正常计时只能反映默认关断服务，不能证明20kHz连续采样。硬件电平与停机时间未实测。

诊断读完整性：live timing epoch从begin到end保持奇数，覆盖流快照发布和计时判定。读取者必须核对同一偶数timing epoch及fault/flags，不能仅依据较早已更新的stream_received接受过期窗口。高速循环中SWD可能无法及时完成相同live epoch读取，因此新增104字节的保留快照及独立capture epoch：写capture_request=1仅请求复制诊断信息，完成后request回0并保留快照至下次请求，不配置任何运行状态。故障在关断后强制保留最终记录。读快照仍需两次相同偶数capture epoch；包含64字节timing、24字节原始双ADC样本及DU/DC/接收计数/stream epoch上下文。active_windows含所有忙态而非专门STREAM，必须结合上下文和实际进度核验。

包内TIMING-BENCH-A80.md给出测量边界、外部DFM/供电/关断 prerequisites、非暂停读取、固件SHA/仪器/板版本/负载/IRQ与真实波形证据要求。禁止直接通过SWD写DU_STREAM/DC_READY或伪造DMA标志来做实物验收。decode_timing.py检查64/104字节布局、候选时钟/阈值、epoch、fault/validity及原始字段；它仅核对结构与所提供epoch值，始终输出physical_validation=false、actual_hardware_source_proven=false、continuous_20kHz_qualified=false。没有真实capture.bin，文件格式通过不是实测证明。

验证：58个实际C计时/回绕/故障关断场景，包括1/3840/3841 cycle和29/30/31us边界、计数冻结/使能失效、时基损坏、重复begin/end/空指针、idle间隔豁免/busy间隔超限、饱和统计、完整timed前台消费、已接管双ADC/顺序ADC阶段关断、请求快照保留和强制故障快照。31个解码/无效捕获/未验证状态场景通过。实际ARM镜像的timing_end在冻结计数的30个阈值/回绕组合中返回值、fault、flags、epoch与预期一致；计数均由夹具提供，不是MCU测量。

保留的限制：新增动态Unicorn计时实验出现低于记录阈值却触发DT_LIMIT的分支矛盾，与冻结计数ARM边界及C模型不一致；原因未确认。该实验明确标REJECTED_DYNAMIC_MODEL_BRANCH_INCONSISTENCY，保留调查脚本/失败回执，不列为通过，不支持完整ARM计时窗口或实际性能结论。现有冻结MMIO的du_ok/前台指令分析仍是748/2409条，仅覆盖未含新monitor wrapper的原前台路径，约18.8203us是乐观换算，不能沿用为A80整个主循环的实际耗时。

其余复跑：280真实前台、311时钟、294DMA流、1645双ADC、645顺序ADC、241异步配置+24SPI结合、65632SPI、65772PWM、363时基和256真实main启动，ASan/UBSan通过。独立ZIP解压复跑11个检查脚本、ARM重建及三种已接受的冻结分析，二进制SHA、30个ARM边界和748/2409计数一致；动态实验仍排除在接受验证之外。Unicorn2.1.4是外部分析依赖，不捆绑入固件；普通C检查和ARM构建不需要它。软件断言64/104字节ABI，静态镜像检查确认main的monitor/abort绑定和默认未启采样。

依据：[Arm CMSIS Cortex-M4寄存器定义](https://github.com/ARM-software/CMSIS_5/blob/develop/CMSIS/Core/Include/core_cm4.h) 的DWT CTRL/CYCCNT/NOCYCCNT及CoreDebug DEMCR.TRCENA。该定义不是G431周期实测。时钟/外设及A32/A34硬件继承A78/A79，不增加料号；整机每款1000台成本仍未经工厂核价。

下一步：确认真实DWT/TIM2进展与完整服务窗口，解决或替换未可信的动态分析方法，核验真实连续ADC/DMA触发波形；随后校准/电流保护、第三相一致性、观察器和FOC，以及速度/正反转/堵转/回生/声振/续航。美甲灯A70电源/A59 LED/A68固件、吸尘器A29硬件/A41固件本轮未改版，三款工厂DFM/具体MPN/成本和原产品效果验收仍待完成。当前是可复核开发候选，不是已经实现用户完整目标的实物或制造放行包。
