#!/usr/bin/env python3 """Recalculate published small-tile arithmetic; no EDA/cloud/silicon validation.""" import json from pathlib import Path d=json.loads(Path("tile-comparison.json").read_text(encoding="utf-8")) assert d["common_period_ns"]==50 for c in d["cases"]: t=[cycles*period for cycles,period in zip(c["cycles"],c["sta_period_ns"],strict=True)] for i in range(1,len(t)): print(f"case {c['id']}, variant {i}: common-clock change {(c['cycles'][i]/c['cycles'][0]-1)*100:+.6f}%; STA-limit change {(t[i]/t[0]-1)*100:+.6f}%") if "energy_nJ" in c: e=c["energy_nJ"] print(f" modeled energy at 50 ns: {e[0]:.6f} -> {e[i]:.6f} nJ ({(e[i]/e[0]-1)*100:+.6f}%)") assert d["cases"][0]["cycles"]==[572,520,531] assert d["cases"][0]["energy_nJ"][2]>d["cases"][0]["energy_nJ"][0] print("Published arithmetic checked. This does not reproduce the EDA or energy model.")