#computer architecture#如何设计一个处理器3
时间:2019-08-27
本文章向大家介绍#computer architecture#如何设计一个处理器3,主要包括#computer architecture#如何设计一个处理器3使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
---恢复内容开始---
pipeline control:看ppt
流水线不会改变lantency,但是会提高through put。
dependence:当前指令的data,下一个指令要用。
hazards:
structural hazards:两个指令要用一个resource
每一个stage的resource要不一样
data hazards:有两类 forwarding/stalls
前三个都是错的:
1.write然后是read write还没写进去,read就开始读了,哔!hazard!MIPS会发生!
2.read然后write,write抢先,read读到错误的资料,哔!hazard!MIPS不会发生,因为设计中write永远在第5个stage,read在第二个stage
3.后面的先写进去了,哔!hazard!MIPS不会发生,因为设计中write永远在第5个stage
举例说明:
解决办法:
nop会浪费时间;stall是停;forwarding要注意两点:datapath的设计和什么时候要control
ALU要计算的值可能要用到不同pipeline里暂存的值:
这一部分书上写得更清楚一点,206页
·
load指令后面是R型指令就要stall,加一个nop;因为alu计算的是memory的地址,从EX/MEM流水线寄存器中拿到的是memory的地址而不是里面存储的值,所以要在memory之后才能拿到值
control hazards:
原文地址:https://www.cnblogs.com/zhanghaha-zzz/p/11418279.html
- 美国国会关于人工智能的提案
- update的多表更新的试验
- silverlight中如何得到ComboBox的选中值(SelectedValue)?
- kvm虚拟化管理平台WebVirtMgr部署-完整记录(安装ubuntu虚拟机)-(5)
- 从MapX到MapXtreme2004[9]-标注的强调显示
- 【第一季】Vue2.0内部指令
- 从MapX到MapXtreme2004[9]-标注的强调显示
- 分布式监控系统Zabbix-3.0.3-完整安装记录(4)-解决zabbix监控图中出现中文乱码问题
- 常用Lambda表达式实例
- centos6.8部署vnc服务
- linux下的缓存机制及清理buffer/cache/swap的方法梳理
- 分组合计且排序和显示名称
- silverlight动态读取txt文件/解析json数据/调用wcf示例
- Junit加载Spring容器作单元测试_添加事务回滚
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法