作者erspicu (.)
看板Soft_Job
标题[心得] 用JSON写CPU
时间Tue May 5 00:54:49 2026
其实只是想验证概念可不可行 很久前就有这尝试的想法
就用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能不能包覆 我是比较怀疑
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 182.233.248.16 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1777913695.A.084.html
1F:推 devilkool: 好猛喔 05/05 01:47
2F:→ kd992102: 我也从头自干过gba模拟器 真的困难的就是timing的部分 05/05 11:21
3F:→ superpandal: 不jit 05/05 16:13
4F:推 gold9450412: 应该就是类似device tree吗 05/05 19:03
有点类似的味道
5F:→ final01: 整个都是ai写的吧??那还交给ai维护吧 05/05 22:18
有部分是拿我以前专案的东西过去用 重点不是AI写 而是带AI写整个专案
最好也要有相对相关领域的经验或是专业背景或是投入比较进阶的研究
才好带着AI去推专案 尤其在深度优化这块 所以才会想说看看有没有更适合背景的人
去接手或是参考概念 之後弄自己版本实作之类的
像是延伸下去的部分 我也稍微有规划了
https://tinyurl.com/y3xw4uwe
但就比较没兴趣 也觉得现在有点不适合
如果没有足够的背景 整个专案被带偏都不知道
※ 编辑: erspicu (182.233.248.16 台湾), 05/05/2026 23:11:24