MIPS CP0 Hazards问题--从Release1到Release2
来源:互联网 发布:网络基础知识ppt 编辑:程序博客网 时间:2024/06/05 11:35
关于的CP0 Hazards,官方定义是:
Each instruction in the program sees the results of the previous instruction.
There are some deviations to this model. These deviations are referred to as hazards.
举个关中断的例子:
mfc0 v0, CP0_STATUS
ori v0, v0, M_SR_IE
xori v0, v0, M_SR_IE
mtc0 v0, CP0_STATUS
lw t0,schedule_checkfuntionnum
beqz t0,Schedule_Check_End
nop
...
我们期望下面这条lw语句是在关中断的上下文运行,但是mtc0写入cp0_status寄存器不能在一下pipeline step马上有效。
就是说lw指令到底执行阶段是中断还可能开这的。
为了解决类似的CP0 Hazards问题。需要在mtc0这种可能会导致CP0 Hazards的指令后面插入一些指令。
在MIP Release1通常插入一些SSNOP来解决。到了MIPS Release2提供了EHB这类的指令来解决。
在MIPS Release2 CPU中如果软件还是Releas1中使用SSNOP,可能会有问题。
因为PipeLine越来越长,原来固定加的几个SSNOP可能不够用。而EHB指令会让PipeLine停止取指,直到instruction buffer为空。
从Release1升级到Release2,与arch和kernel相关的代码N多都重修订。
----------
这个问题间接引发了一个alloc_skb()的内存改写bug,查到吐血,妈了个逼的。
Each instruction in the program sees the results of the previous instruction.
There are some deviations to this model. These deviations are referred to as hazards.
举个关中断的例子:
mfc0 v0, CP0_STATUS
ori v0, v0, M_SR_IE
xori v0, v0, M_SR_IE
mtc0 v0, CP0_STATUS
lw t0,schedule_checkfuntionnum
beqz t0,Schedule_Check_End
nop
...
我们期望下面这条lw语句是在关中断的上下文运行,但是mtc0写入cp0_status寄存器不能在一下pipeline step马上有效。
就是说lw指令到底执行阶段是中断还可能开这的。
为了解决类似的CP0 Hazards问题。需要在mtc0这种可能会导致CP0 Hazards的指令后面插入一些指令。
在MIP Release1通常插入一些SSNOP来解决。到了MIPS Release2提供了EHB这类的指令来解决。
在MIPS Release2 CPU中如果软件还是Releas1中使用SSNOP,可能会有问题。
因为PipeLine越来越长,原来固定加的几个SSNOP可能不够用。而EHB指令会让PipeLine停止取指,直到instruction buffer为空。
从Release1升级到Release2,与arch和kernel相关的代码N多都重修订。
----------
这个问题间接引发了一个alloc_skb()的内存改写bug,查到吐血,妈了个逼的。
0
上一篇:(转)关于上班的一些事儿
下一篇:MIPS架构培训之MMU原理
相关热门文章
- SHTML是什么_SSI有什么用...
- 卡尔曼滤波的原理说明...
- shell中字符串操作
- 关于java中的“错误:找不到或...
- linux设备驱动归纳总结...
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
评论热议
0 0
- MIPS CP0 Hazards问题--从Release1到Release2
- MIPS CP0冒险概念
- MIPS系列笔记-CP0 Hazard
- MIPS系列笔记-CP0 Hazard
- 深入浅出MIPS 三 MIPS的协处理器CP0
- 深入浅出MIPS 三 MIPS的协处理器CP0
- 深入浅出MIPS 三 MIPS的协处理器CP0
- 深入浅出MIPS 三 MIPS的协处理器CP0
- 深入浅出MIPS 三 MIPS的协处理器CP0
- 深入浅出MIPS 三 MIPS的协处理器CP0 (Section 1)
- 深入浅出MIPS 三 MIPS的协处理器CP0 (Section 2)
- 深入浅出MIPS 三 MIPS的协处理器CP0 (Section 3)
- Oracle11g release2数据导出到Oracle10g release2方法
- MIPS体系结构 Q & A Part 0x03 CP0篇
- MIPS CPU寄存器和系统控制协处理器CP0 分析
- MIPS汇编:协处理器CP0中的寄存器的功能
- pppoe移植到mips
- 从问题到程序
- 对付内存改写问题的银弹
- 【最短路径】Floyd算法
- MIPS架构培训之Cache原理
- 【转载】最小生成树
- tomcat启动报java.io.EOFException错误
- MIPS CP0 Hazards问题--从Release1到Release2
- 【数据结构】树状数组
- MIPS架构培训之MMU原理
- 【数据结构】线段树
- 异常捕捉与反汇编分析
- 【总结】【线段树】2016.1.24CXB
- 模拟指令断点
- 【转载】【线段树】最长不上升序列
- Nand ECC学习
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
珠宝展示柜
化妆品展示柜图片
站柜
展示柜定做
展示柜制作厂家
展示柜工厂
眼镜展示柜
药品展示柜
样品展示架
货柜展示柜
展示柜定制
定制展示柜
皮具展示柜
展示架价格
化妆品展示柜厂家
定做珠宝展示柜
展示柜货架
柜定制
定制柜
展涛
展源
展牌图片
展牌设计
展牌
一物降一物展黎秦璐
秦璐展黎全文阅读
展志天华木门是几线品牌
鹰隼展翼
鹰隼展翼 纷舞妖姬
展翼
展翼家具
猪展肉是哪个部位
展腾安防
展览英文
巴黎性展览
菊花展览
展览的英文
乳展览
性展览
花车展览
展览设计