[心得] 用JSON写CPU

楼主: erspicu (.)   2026-05-05 00:54:49
其实只是想验证概念可不可行 很久前就有这尝试的想法
就用AI验证一下 大概高强度花了连假3天时间
说白了就是规格描述驱动CPU模拟
写一份JSON档就完成一颗CPU模拟功能 换一份JSON档就换一颗CPU
结果还真的搞出来了... 但这专案太偏向于编译器工程那块
原理大概就是 JSON档 加上 JSON Parser 写出 .ll
然后再透过llvm做动态jit 一整套框架
json可以通吃z80.6502.arm 也可以搞定timing 全都靠json描述定义
但目前优化还不是很好 加上gameboy那颗的cpu搞llvm没啥益处
BLOCK JIT是一门可以写论文的东西
BLOCK JIT Timing的处理也是一门学问
但好像莫名其妙被我的天马行空.GEMINI话唬烂还有Claude code给打通了
不过这东西太偏编译器这块 我有别的东西想碰
想说如果有人想研究编译器.llvm.jit之类的 有兴趣可以接手我的专案玩玩
https://github.com/erspicu/AprGba
很多设计文件可以看看 都ai写的
https://github.com/erspicu/AprGba/tree/main/MD/design
挑几个文件出来 可以看看有没有接手兴趣
https://tinyurl.com/bcm795sw
https://tinyurl.com/4vxbmn96
https://tinyurl.com/yptd8y7v
其实说真的 反正就有趣 好像也没啥商业价值或是真的重大用处
可能某些领域的人来说算方便吧 像是快速雏型功能验证之类的
其实从中让人发想的是 ISA规格驱动的极限到底可以到哪里.....
有没有哪一天可能把硬件规格书JSON化 直接整体模拟器完成
实际上有可能 但应该会有很多工程困难需要克服
LLVM我就那种略懂略懂的感觉 说白了就知道皮毛 很多还要下去做功课
不太喜欢主导一个专案 但专案所需的专业知识还不太够 被牵着走的感觉
所以验证概念后 就分享出来 暂时停止维护
BLOCK JIT的优化策略 搞不好就是有些人的毕业论文 这块我懒得深入
BLOCK JIT的cpu timing议题 我倒是比较有兴趣 AI说规说 虽然也小范围验证过
但光怪陆离的特殊CASE下 框架和json能不能包覆 我是比较怀疑
作者: devilkool (对猫毛过敏的猫控)   2026-05-05 01:47:00
好猛喔
作者: kd992102   2026-05-05 11:21:00
我也从头自干过gba模拟器 真的困难的就是timing的部分
作者: superpandal   2026-05-05 16:13:00
不jit
作者: gold9450412 (一块钱)   2026-05-05 19:03:00
应该就是类似device tree吗
作者: final01 (牛顿运动定律)   2026-05-05 22:18:00
整个都是ai写的吧??那还交给ai维护吧
作者: USD5566 (美金五千五百六十六)   2026-05-06 20:36:00
其实有花时间搓东西出来值得鼓励了 但等等一些喜x vibe仔或铁x伯的会出来回废话 记得做好准备
作者: kanding255 (阿锠)   2026-05-07 10:22:00
感觉很有趣欸

Links booklink

Contact Us: admin [ a t ] ucptt.com