逆向一颗芯片:从版图一路解到星战谜题
来源: kjartanvandriel.github.io — 2026-09-12
概述
一家做市商出了一道逆向芯片的谜题,作者与朋友把解题过程写成三部分长文。第一步读版图文件:文件只描述几何图形与层次,看不出哪层是金属、哪层是硅,需要靠单元名前缀认出这是某开源 130 纳米工艺的标准单元库,再借公开的工艺设计套件给层命名,并从文字标签上读出时钟、复位、使能、输入与八位输出以及一个成功位。第二步还原电路:从单元名推断逻辑功能,按「同层相接、跨层要过孔」的规则追线得到网表,写出模拟器,用官方给的波形文件对拍,七百三十个输出位全部吻合,输出的 ASCII 是「TRY AGAIN」。第三步按位置把电路切成十一个区域逐个分析,发现是 11×11 网格上的行列与区域计数、邻接检查和总数检查——合起来正是「星战」类谜题的规则。
核心要点
- 单靠版图看不出电路含义,关键线索是单元名前缀暴露了制造工艺。
- 追线规则是关键:同层重叠即相连,跨层必须有通孔,否则会把重叠的线误连。
- 用官方波形文件对拍,七百三十个可比输出位全部匹配,输出是「TRY AGAIN」。
- 芯片上共 92 个触发器,输入 121 位,恰好铺在 11×11 网格上。
- 谜题答案是星战类谜题的验证器:每行每列每区各两个、互不接触、总数 22 才成功。
金句
穿过沙子抵达星辰——这确实是一场从版图走到谜题答案的旅程。
👍 0
👎 0
返回 Lobsters 首页