mcupro 发表于 2013-8-8 01:34:16

全网首发6年前论文和代码,32位5级流水线MIPS软核VERILOG实现


1,2007年8月9号完成第一次前仿真试验,标志诞生遂命名MIPS789。
2,当时是为了做自学考试本科的毕业设计和毕业论文,论文基本上记录整个实现过程。论文书写是和试验同步的,完成一点实验就写一点论文,做记录也做思考。
3,后来工作中用上了,我最满意的是用来做为主控核心实现了龙芯EJTAG仿真器。大多运算都是单周期运行,效率很高。
4,在做这个软核之前自己只写过几个简单的数字逻辑实验,VERILOG不是很熟,代码从字面上看需要整理,另外各个流水级的顶层是用原理图连接后自动生成VERILOG代码,可读性不好。
5,一直想从写一下所有的代码,并且优化一下,好几年了也没有实施,惭愧~~
6,论文以及代码只代表我6年前的水平,我觉得对喜欢VERILOG ,CPU逻辑设计的朋友应该有点启发或者帮助吧?另外我看代码被一些网站用来收费下载很不满,所以我就传上来了。
7,OPENCORES.ORG上有很多好的处理器核,很多都是非常专业,可以注册个章号下载代码阅读和感受。
8,之前发了一篇文章〈3-8译码器的10种表达〉,被拍砖,说是和孔乙己 茴香豆 的茴字三种写法类似,当时很郁闷。这次我做好了思想准备,做好了挨砖的准备~~
9,希望这个帖子可以筑得高一些,大家随便聊聊逻辑设计,以及CPU软核方面吧。



stdio 发表于 2013-8-22 16:11:01

本帖最后由 stdio 于 2013-8-22 16:41 编辑

很久之前就看到你这个789的东东,^_^
这个不会被拍砖,太大了拍不动,{:lol:}
这些年过来,你对MIPS的理解一定增加了不少,能否分享一下?

读了你的论文,写的非常好!!我自己在做一个软核,前几天基本调通了一个armv6-m指令集的两阶流水线,这几天想提高速度,有考虑转向MIPS。
如果不要乘法指令、协处理器和内存管理单元,只是一个裸核,MIPS的5级流水线,在spartan-6上,有没有可能跑到160MHz ?

sddp001 发表于 2013-8-22 19:06:46

LZ高人啊,膜拜一下

深海烟花 发表于 2013-8-22 19:39:28

赞一个呗,

wdooy 发表于 2013-8-22 21:50:22

膜拜呀

wind2100 发表于 2013-8-22 22:05:52

还没学过FPGA 但是顶一下

quzegang 发表于 2013-8-22 22:22:35

重量级的帖子,又一个大牛出现了

longfeix86 发表于 2013-8-22 22:25:09

楼主超级大牛

wangzheyu 发表于 2013-8-23 08:01:41

太厉害了

ljt80158015 发表于 2013-8-23 08:18:58

牛人为何隐藏6年!!!!

jlian168 发表于 2013-8-23 08:50:14

Tahnk you,Sir.

Do you have 8052 IP(must canwork)?

Thanks again.

kebaojun305 发表于 2013-8-23 09:11:00

这个 大部分砖都拿不起来谈何拍砖,能学懂楼主的 就不错了。

mcuprogram 发表于 2013-8-23 09:13:09

{:smile:}                           

pipi516 发表于 2013-8-23 09:13:17

真正的强人!MARK!

mubei 发表于 2013-8-23 09:24:43

膜拜下高人啊,居然能够自己搞内核

LearningASM 发表于 2013-8-23 10:17:27

牛人深藏不露

lileistone 发表于 2013-8-23 10:28:11

开发环境是gcc吗?

610570143 发表于 2013-8-23 17:11:47

MIPS没接触过,还是顶楼主一下。

qwerttt 发表于 2013-8-23 21:01:52

不知处理器软核用那些方面

haffman1 发表于 2013-8-23 21:17:57

先顶一个。。

zouzhichao 发表于 2013-8-23 21:27:55

狂拜!!!!!

mcupro 发表于 2013-8-25 00:09:45

stdio 发表于 2013-8-22 16:11 static/image/common/back.gif
很久之前就看到你这个789的东东,^_^
这个不会被拍砖,太大了拍不动,
这些年过来,你对MIPS的理解 ...

MIPS 5级流水线 在SP6上跑150M 完全可以的,只要按照流水线规则设计出来应该没有问题。我这个在普通的CYCLONE上都可以跑到120MHZ,在VIRTEX 5上实验了一下跑到了250M没有问题。
MIPS的结构非常优美,实现起来也很简洁,转向MIPS吧。ARM为了兼容付出代价比较大,代码不整齐,指令系统有点乱。

mcupro 发表于 2013-8-25 00:16:12

jlian168 发表于 2013-8-23 08:50 static/image/common/back.gif
Tahnk you,Sir.

Do you have 8052 IP(must canwork)?


没有8052 IP。你应该接触过不少吧,能不能给大家分享一下这方面的知识,比方说常见这几个开元8051核的实际实验情况。

wfchwilliam 发表于 2013-8-25 11:05:30

jlian168 发表于 2013-8-23 08:50 static/image/common/back.gif
Tahnk you,Sir.

Do you have 8052 IP(must canwork)?


不知道你是外国人,只能看懂中文,不会写中文,还是在这儿装呢?哈哈

普莱斯队长 发表于 2013-8-25 19:39:00

牛人啊,膜拜
本科专业是这,核心东西都没接触,请问前辈现在做什么?

yixinyiyi 发表于 2013-9-8 19:52:11

佩服楼主,太厉害了

cbailjc 发表于 2013-9-8 20:08:48

软核。只用过几回,但是还是听不懂,,

leon1984 发表于 2013-9-9 21:35:28

学习中,感谢楼主分享{:victory:}

远去的记忆 发表于 2013-9-10 13:23:34

赞一下!

kenson 发表于 2013-9-10 17:20:06

厉害=awsome 学习了,抽个时间自己也搞个软核。

lyl520719 发表于 2013-9-13 03:07:09

下载学习一下,感谢楼主。

torushh 发表于 2013-9-13 07:01:46

赞一个,牛人

qazqwe159635789 发表于 2013-12-31 22:09:02

mcupro 发表于 2013-8-25 00:09
MIPS 5级流水线 在SP6上跑150M 完全可以的,只要按照流水线规则设计出来应该没有问题。我这个在普通的CYC ...

楼主有没有什么相关的资料/书籍 推荐?除了网站上的开源软核?楼主是直接从这个MIPS入门CPU设计的吗?

shenfeipascal 发表于 2013-12-31 22:17:35

不明觉厉,膜拜{:dizzy:}

loveskangaroo 发表于 2014-1-1 10:53:27

顶礼膜拜,牛人。

cxhy 发表于 2014-1-1 13:29:47

膜拜一下         

qsjit 发表于 2014-6-25 19:51:45

{:biggrin:}{:biggrin:}{:biggrin:}{:biggrin:}{:biggrin:}{:biggrin:}{:biggrin:}{:biggrin:}

hubeilcsun3 发表于 2014-6-25 20:56:34

请教一下牛人,据传现在已经有2—4核的实现论文,对吗?

sun92845166 发表于 2014-6-25 21:13:47

学习、学习、再学习!

u123321 发表于 2014-6-26 09:04:40

双手赞成,谢谢楼主

浮华一生 发表于 2014-6-26 09:32:17

顶一个 FPGA 软核

yz_altang 发表于 2014-6-26 09:41:12

谢谢楼主的无私奉献

cmos2345 发表于 2014-7-3 20:51:31

向高手学习

quantumlab 发表于 2014-7-4 15:42:59

dddddddddddddddddddddddd

xieyudi 发表于 2014-8-24 14:33:49

本帖最后由 xieyudi 于 2014-8-24 14:40 编辑

stdio 发表于 2013-8-22 16:11
很久之前就看到你这个789的东东,^_^
这个不会被拍砖,太大了拍不动,
这些年过来,你对MIPS的理解 ...

MIPS应该问题不大...

很巧, 我也在弄armv6-m的流水线, 不过没有照M0+的搞, 因为估计跑不快. 不过我打算改成深流水, 然后改成Cortex-R4类似的超标量架构, 之后加上cache和mmu, 之后作为我的主要研究架构... 还可以读几年书, 有时间.
不过有点后悔了, MIPS确实要简洁太多了...

xieyudi 发表于 2014-8-24 14:37:17

mcupro 发表于 2013-8-25 00:09
MIPS 5级流水线 在SP6上跑150M 完全可以的,只要按照流水线规则设计出来应该没有问题。我这个在普通的CYC ...

唉, 的确没MIPS的简洁...
手工优化, armv6-m的解码单元在ep3上勉强上350M... 目标流水线速度是250M, 其实还可以塞些逻辑.

xieyudi 发表于 2014-8-24 14:39:05

qazqwe159635789 发表于 2013-12-31 22:09
楼主有没有什么相关的资料/书籍 推荐?除了网站上的开源软核?楼主是直接从这个MIPS入门CPU设计的吗? ...

参考美国组成原理的那两本教材, 作者之一是MIPS创始人.

abszy 发表于 2014-8-24 14:41:12

楼主自己写的MIPS软核 真是够牛!

xieyudi 发表于 2014-8-24 14:57:08

比起论文, 其实我想了解下LZ的学历和人生轨迹...

mcupro 发表于 2014-8-30 14:59:36

xieyudi 发表于 2014-8-24 14:57
比起论文, 其实我想了解下LZ的学历和人生轨迹...

呵呵 还是关注技术吧我和大多苦逼电工一样的~~~

DepravedLucien 发表于 2014-9-24 15:25:20

lou zhu da cai

yaake 发表于 2014-9-24 15:47:12

向高手学习,多谢分享

dongyanbo 发表于 2014-11-22 16:15:25

只是用过xilinx的8bit控制器软核,楼主这个太牛了

zxtxuexi 发表于 2014-11-22 16:58:49

FPGA学习中,,,谢谢LZ,,,

jungleyang 发表于 2014-11-22 17:24:52

厉害,本人用不上啊

jungleyang 发表于 2014-11-22 17:26:34

楼主可以自己设计个CPU,流片!

机器人天空 发表于 2014-11-22 17:51:50

软核在我眼里就是件高大上那个的东西,膜拜啊

xmu234 发表于 2014-11-28 20:14:26

非常感谢

Sussic 发表于 2014-12-12 22:51:22

共同学习 哈哈

LiuCA 发表于 2014-12-13 14:31:21

牛,下来学习学习
页: [1]
查看完整版本: 全网首发6年前论文和代码,32位5级流水线MIPS软核VERILOG实现