他花三个月设计了一款8位处理器,却在面包板上被LED灯教做人。这不是复古情怀,是一场关于"纸上设计"与"物理现实"的残酷对账。
第一块板子:当SMT遇上面包板
作者最初的计划很"现代":全部用表面贴装技术(SMT),做几块PCB拼起来验证。他在Digikey下单时满脑子都是最终成品的紧凑美感,甚至为了凑免运费门槛买了"太多LED"——这是他自己的原话。
问题来得很快。SMT芯片没法插面包板。当他发现需要大量重新布线时,手里只有指甲盖大小的贴片元件,没有DIP直插版本可用。
他后来总结:永远要同时买2-4个同型号的DIP版本做原型验证。这些几乎都有货,而且能省掉大量转接板的麻烦。
微码烧录器:第一个能用的孩子
三块定制PCB里,最先做的是EEPROM编程器。没有它,微码(microcode)写不进去,整个CPU就是块废铁。
这是个独立工具,不装在主机里。把EEPROM插进插座,通过串口连笔记本传二进制文件。作者贴了一张图,配文"看起来不错,但能工作吗?"
这种怀疑贯穿全文。模拟器里跑通的逻辑,在铜线和焊锡面前完全是另一套规则。
面包板上的恐怖故事
作者列了一堆具体的翻车现场:
LED焊反了。不是一颗,是"backwards LEDs"——复数。这些二极管在电路图上方向明确,但手工焊接时人类的注意力是有限资源。
地址线悬空(floating address lines)。数字电路最怕这个,电平在0和1之间随机游走,导致的行为比崩溃更难调试——是间歇性错误。
被诅咒的EEPROM。原文用了一个很重的词:"cursed"。这些芯片在模拟器里行为完美,实际却可能因为时序、驱动能力或批次差异,表现出完全不兼容的特性。
最荒诞的一幕:作者学会用肉眼读二进制,因为"懒得或者分心还没做输出寄存器",只能盯着闪烁的LED灯解码。
原型机的真正价值
作者反复强调这次搭建的性质:这是"原型",为了验证设计和接线,之后才会进入"真正的"PCB设计。
这个定位救了他。如果一开始就奔着最终成品去做,SMT的选择、PCB的数量、连接方式("how??"——他自己打的问号)都会成为沉没成本。
面包板的丑陋和灵活,反而是原型阶段的最优解。只是他被迫用SMT转接板绕了远路。
Claude Code的出场
原文截断处提到"I had Claude Code help m"——显然是在用AI辅助开发。这在2024-2025年的硬件项目里已经常态,但值得注意:连8位复古CPU这种极客玩具都在用LLM写代码。
不过AI帮不了焊LED。物理世界的错误成本,和软件里的git revert完全不在一个数量级。
数据收束
这个项目的真实成本:3块定制PCB、大量SMT转接板、成堆焊错的LED、以及"非常、非常长"的调试时间。作者用"emboldened"(壮着胆子)形容模拟器通过后的自己,最后用"humbling"( humbled,被教做人)收尾。
这对科技从业者的启示很直白:任何跳过物理验证的设计自信,都会在面包板上收到账单。模拟器跑1000次也不等于一次真实的上电,而"看起来不错"和"能工作"之间的距离,往往要用二进制闪烁灯来丈量。
热门跟贴