# A81 电磨动态仿真方法修正与回归

状态：仿真分支矛盾已定位并独立复现；地址限定钩子的ARM重放通过。固件源码和二进制与A80一致。真实计时、连续采样、校准、电流保护、FOC和原产品效果仍未验证，FABRICATION_HOLD。没有采购、送厂、烧录、上电或实物测试。

A80异常原因：Unicorn 2.1.4全地址内存写入钩子在Thumb IT条件存储上留下错误ITSTATE，导致后续比较被跳过，低于阈值仍触发DT_LIMIT。最小汇编复现使用相同2589/19输入：无钩子返回1、全地址空钩子返回0、外设地址限定钩子返回1，保留XPSR轨迹。与上游[问题2309](https://github.com/unicorn-engine/unicorn/issues/2309)及[修复2344](https://github.com/unicorn-engine/unicorn/pull/2344)一致。当前仍使用2.1.4，没有升级或修改CPU状态来强制通过。

修正只作用于分析脚本：DMA IFCR W1C回调限定40020004，GPIO写钩子限定实际外设地址范围，避免覆盖RAM条件存储；各实际外设写回调检查ITSTATE为0。DWT/TIM2采用MMIO回调提供合成递增计数。未来若钩子触及IT块必须重新评估，不能认为外设限定可以解决所有引擎问题。原A80失败脚本保留为拒绝证据，不列为本轮接受测试。

|敏感性模型|指令数|窗口合成计数/us|结果|
|---|---:|---:|---|
|每条指令1 tick|2671|2589 / 19|接收一个已完成ADC对，窗口通过|
|每条指令2 ticks|1884|3614 / 26|窗口未超限，但消费者拒绝过旧ADC对，进入DU_FAILED并关断|
|每条指令3 ticks|1991|5421 / 39|DT_LIMIT锁定并关断，窗口无效|

模型执行实际链接的drill_timed_foreground和故障关断路径，校验偶数epoch、标志、状态、收样计数与关断寄存器；没有模拟Flash等待、总线争用、中断延迟、真实ADC转换或DMA持续进展。初始化状态手工设置，不证明真实DWT启用。ticks不是测得CPU周期，三组结果不能用于证明30us实物预算或20kHz采样合格。

本轮验证：最小复现3组、完整窗口3组、冻结timing_end边界30组；独立解压同样重放，guard/原foreground计数仍为748/2409。另重新运行58个实际C计时用例及31个捕获解码用例。独立解压ARM重建与A80二进制SHA一致。其余A80主机检查沿用基线证据，源码闭包哈希逐项相同，本轮没有把沿用日志称为重新运行。firmware目录仍保留A80说明和TIMING-BENCH-A80.md，详细测量与默认关断策略继续有效。

三款状态：本轮仅修改电磨分析工具，不增加硬件料号；美甲灯A70电源/A59 LED/A68固件、吸尘器A29板/A41固件不变。原产品20项效果仍全部缺少物理验收。整机每款1000台成本尚无工厂核价，工厂DFM与料号闭合尚未完成，不能制造放行。

下一步工程工作：建立ADC零点校准、两相电流换算与第三相一致性检查，再接入电流保护；实物工作另需真实DWT/TIM2、触发/ADC/DMA波形和关断时间记录。软件模型通过不会自动解除制造或通电限制。
