有人用FGPA实现过MIPS吗?

2013-12-20 19:08:52 +08:00
 hazard
如题,本人大三学生,我想通过看书,自己用FGPA实现一个MIPS-like CPU,请问都需要买什么样的东开发板比较合适?求过来人引导一下,我买了本《计算机原理与设计》(李三立),订购了《自制CPU入门》。不胜感激。
3489 次点击
所在节点    问与答
20 条回复
GordianZ
2013-12-20 20:05:22 +08:00
FGPA? FPGA?
hazard
2013-12-20 20:07:30 +08:00
@GordianZ FPGA...打字太快。。。打飞了。。。不好意思啊。。
detailyang
2013-12-20 20:11:33 +08:00
skydiver
2013-12-20 20:34:04 +08:00
这不是微机原理课程的大作业么……
hazard
2013-12-20 20:42:29 +08:00
确实是一些学校的计算机组成原理大作业。。。不过我们学校不是,我想自己试试。。。
clker
2013-12-20 21:19:19 +08:00
hazard
2013-12-20 21:35:13 +08:00
@clker 实际开发板买哪一类好呢?我新手。。。
dagger
2013-12-20 22:21:18 +08:00
因为是单位报销,所以一直挑xilinx里贵的买,要实惠点的话,淘宝上找个altera cyclone IV的开发板吧,不过注意一下门数,我以前用的仿avr开源软核占的地儿也已经不小了
仿mips开源软核可以上opencores上找找看 http://opencores.org/projects ,楼上贴的github搜索也不错,不过要做好一路填坑的心理准备,开源硬件都是小众项目,大多没有经过充分测试,反复掉坑实属正常,一条过的话简直可以去买彩票了
clker
2013-12-20 22:51:57 +08:00
@hazard 呵呵,其实我就是这么一搜而已。不过我之前也想自己做CPU玩,不过我选定是一个最简单的CPU。 https://github.com/BigEd/verilog-6502
当时选这个的时候主要是看到它有一个很好的文档,并且编译器都有了。

如果做MIPS,选FPGA时可以先用Xilinx或者Altera的工具综合一下,看是否门数够。

其实一般来说大可仿真到一定阶段之后才是考虑买开发板的事情。学生还是要省着钱花不是。
clker
2013-12-20 22:52:28 +08:00
hazard
2013-12-20 22:54:35 +08:00
@clker
@dagger
嘿嘿,主要是我们老师说,系里可以给报销,但是买什么板子得年前定下来比较好报。否则得等开学年后了。所以来这问问。哈哈
clker
2013-12-20 23:16:17 +08:00
@hazard 那就往高端里整嘛。哈哈。
silverymoon
2013-12-20 23:20:32 +08:00
我靠,这也太有热情了,我们刚做完。。。计算机组成原理实验。。。
我们学校的板子是xilinx spartan3e+2x SRAM+1x FLASH+串口/ps2/等等io。。。网上应该有类似的吧。。。其实不用买太高端的,xilinx高端系列里面都直接集成一个arm cpu了。。。
silverymoon
2013-12-20 23:25:49 +08:00
另外,书籍推荐《计算机组成和设计:硬件/软件接口》,国内的书多是大学教材,和自己学校的实验关系比较大。。。
买板子的时候尽量要完整的io接口控制信号资料,否则非常麻烦。
hazard
2013-12-20 23:43:00 +08:00
@silverymoon 呃。。。你们用了多长时间做完的?最后达到了什么效果? 能否给个类似板子的淘宝地址?多谢。。
dagger
2013-12-21 00:18:19 +08:00
@hazard @silverymoon
现在的本科生可真hi,我当年8088的实验箱已经很高大上了哈,不差钱的话就直接上xilinx官板吧,文档清晰、配套齐全
spartan3e官板配的那颗门数还是偏少了,上软核比较勉强,现在都有带arm的zynq了,直接一步到位吧,知道你们小年轻动手欲望强烈,从cpu到外设都希望能是自己手敲出来的,然后用交叉工具链编个c程序跑在自己亲手打造的cpu上,那种满足感简直赛过服用LSD啊~~ 哈哈,开个玩笑,还是要考虑一下后路,其实cpu原理也不复杂,假如到时候你明明已经掌握了这些知识,结果被开源软核的bug坑的死去活来,自己写的周边接口都没法验证,那就没意思了,这时候你就会想到旁边有颗现成cpu的好处了,当然,xilinx和altera自带的microblaze和nios ii也是可选项
cassyfar
2013-12-21 05:03:47 +08:00
xilinx virtex ml506 evaluation platform之前用过
简单的mips倒也不难 看你要做到什么地步了
silverymoon
2013-12-21 08:30:53 +08:00
@hazard 20天实现初步功能之后自愿做扩展(ps2键盘,简单的vga什么的)。。。搜了一下没找到,估计是学校自己做的。。。
silverymoon
2013-12-21 08:34:28 +08:00
@dagger 超级同意!调试的时候简直想死。。。
我们做的是mips的一个子集,没有做完全部指令,冲突控制分支预测什么的也写的很初步,所以还够用。。。
hazard
2014-03-14 23:48:35 +08:00
@silverymoon 呃。。您写的 verilog文件能否发给我参考一下?我邮箱:swk一九九二#gmail.com
Thx!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/93986

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX