在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: leishangwen

步步惊芯-软核处理器内部设计分析 china-pub首发,有优惠活动

[复制链接]
 楼主| 发表于 2014-1-4 22:15:20 | 显示全部楼层
回复 30# lyl19


    您可以参考Rill兄的博客http://blog.csdn.net/rill_zhen/article/category/1282140,里面就有您需要的,另外,如果是在网上买的书,麻烦给个评价,先谢过了!
发表于 2014-1-5 16:48:49 | 显示全部楼层
当然可以。
那个blog不错,有我想要的东西。
另外,对书上有疑问的地方,能向作者请教的吗?可以通过什么途径?谢谢?

比如我发现对l.bf的分析,为什么对需要转移的情况下,都要加上一个{OR1200_OR32_NOP, 26'h041_0000},如如下代码。

assign if_insn = no_more_dslot | rfe | if_bypass ? {`OR1200_OR32_NOP, 26'h041_0000} : saved ? insn_saved : icpu_ack_i ? icpu_dat_i : {`OR1200_OR32_NOP, 26'h061_0000};

而且这个指令还进入了流水线执行了。

对于不需要转移的,就不需要这个,难道处于delay slot的指令之后必须接一个OR1200_OR32_NOP, 26'h041_0000,然后才是转移后的指令?

谢谢。
 楼主| 发表于 2014-1-5 19:09:37 | 显示全部楼层
本帖最后由 leishangwen 于 2014-1-5 19:20 编辑

此处是一个特殊的空指令,用于得到下面一些变量的值:
assign id_void = (id_insn[31:26] == `OR1200_OR32_NOP) & id_insn[16];
assign ex_void = (ex_insn[31:26] == `OR1200_OR32_NOP) & ex_insn[16];
assign wb_void = (wb_insn[31:26] == `OR1200_OR32_NOP) & wb_insn[16];
表示是一些不需要任何操作的指令,所以第16bit为1
实际上从仿真可以知道,如果if_insn为{`OR1200_OR32_NOP, 26'h041_0000}这种特殊值,那么流水线一般是暂停的,该值不会赋给id_insn、ex_insn、wb_insn,所以我个人认为该值的作用不大,可能是一些历史原因保留的吧。下面是书中第6章的仿真实验,从中可以发现if_insn等于ox14610000,但是该值并没有传递到译码、执行阶段

未命名.bmp

您可以通过leishangwen@163.com联系我,感谢支持!
发表于 2014-1-16 17:25:55 | 显示全部楼层
发表于 2014-1-22 22:59:35 | 显示全部楼层
楼主,我想问个问题,你是如何知道写openrisc的汇编代码的,比如说.org, _start:之类的,是不是使用gnu来编译的汇编代码都有同样的这样的格式呢?

谢谢了
 楼主| 发表于 2014-1-23 12:34:23 | 显示全部楼层
可以参考or1200提供的例子,基本可以知道大概的一些宏、伪指令、编译指示符等的用法,使用GCC的硬件平台的汇编是很相似的
 楼主| 发表于 2014-1-23 18:24:40 | 显示全部楼层
回复 35# lyl19


可以参考or1200提供的例子,基本可以知道大概的一些宏、伪指令、编译指示符等的用法,使用GCC的硬件平台的汇编是很相似的
发表于 2014-12-28 12:51:34 | 显示全部楼层
自己很厉害 又让别人容易看懂的才是高手
发表于 2015-3-20 15:56:33 | 显示全部楼层
在看这本书,谢谢楼主。不过电脑没有光盘,不知作者是否可将光盘内容发布在网上?
发表于 2015-4-20 15:57:50 | 显示全部楼层
有機會學習一下~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-18 22:40 , Processed in 0.022508 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表