EE_Archeology
26-10-12 12:44

最近看到满世界都在全民AI大逆向,实在是坐不住了,把一个月前AI逆向第一颗国产CPU的过程发一下吧(本来打算整理好再发的[二哈])
一个多月前,我偶然得到一块奇怪的国产电路板,在网上找了一圈资料之后,最终确定这是用骊山771所(今天的西安微电子技术研究所)研制的LS77-II处理器制作的一块单板机。LS77-II是由1977年的LS77-1优化而来的处理器,提高了集成度,用一片ALU+一片微码ROM实现了全部功能。板子上那颗正方形的大芯片就是ALU了。目前关于这套处理器,全网只有一篇介绍LS77-1的论文和两篇LS77-II应用的论文,里面的内容较为模糊并且存在错误。我这块板子也有损坏,所以一时半会也跑不起来。不过可以确定,这是一颗16位处理器,使用的国内自主设计的指令集,并且很特别地用了17位数据宽度,最高位作为特征位,使得微程序可以自己确定数据宽度,自动执行多字长运算。目前为止我还没在其他处理器系统上见过这样的设计。
至于AI,一开始,我只是把三篇论文丢过去,想让它总结一下架构和指令集,出一篇通俗易懂的文档。AI很轻松便完成了任务。这个时候我突发奇想,把板子上几颗ROM的镜像丢给它,让它写一个模拟器。很快啊,AI只用了5分钟,便摸清了板子上外设的地址等信息,写了个模拟器,跑起来板子ROM里带的monitor和汇编程序。由于这是一个非常小众的架构,网上不可能找到任何好用的编程环境,接下来我又上了些强度,让AI在上面实现一个tiny BASIC解释器。没想到,在一个下午的循循善诱之后,AI真的用一个陌生的汇编语言,写了近2000行代码,实现了一套完整可以运行的tiny BASIC解释器,并且成功在上面运行了经典的井字棋和生命游戏等程序。
这时候我真的体会到了震惊瘫坐,如同原子弹爆炸的感受。最令人震撼的是AI居然能理解一个几乎没有公开记录的处理器架构,并从固件中自己摸索出技术细节,去实现相对复杂的功能。以后逆向工程大概真的不需要人类了[二哈]
(注:本次使用的是GLM5.3+Claude Code,全程我只有指导,没有动手写一行代码,图3为模拟器运行的原厂ROM固化汇编器,图4为AI写的BASIC解释器代码截图,图5-6为tinyBASIC运行画面。目前我正在修复原版硬件,详细内容等后面写博客吧[二哈])

#电子考古学##人工智能[超话]#

发布于 江苏