当前位置:网站首页>CPU设计相关笔记
CPU设计相关笔记
2022-07-05 14:31:00 【小威程序员】
CPU设计-基于LoongArch架构的MIPS
1. 简单说说流水线CPU
单发射静态五级流水线CPU:
取指(IF)->译码(ID)->执行(EXE)->访存(MEM)->写回(WB)
流水线CPU设计的精髓理解起来就像是流水线生产的工场一样,一个阶段单独完成一项指定的功能。
(1)时间流水
以五段流水为例,五段为:取指-译码-访存-执行-回写
把每一段当做一部分,在前一条指令由取指到译码阶段时,即开始下一条指令的取指。
(2)空间流水
类比时间流水,简单理解为把每一部分扩充为原来工作效率的n倍;即原来在取指阶段一下取一条指令,现在可以一下取2条或多条。
2.流水线CPU中的指令相关与流水线冲突

3.解决流水线CPU设计中的数据相关冲突方法
(1) 阻塞技术
简单理解:让下一条指令的某一级停下来去等待上面指令出来最后的待用结果,即等到上面指令已完全完成五级流水操作。
与“写后读”相关引发的冲突:即上一级还未写入寄存器或数据RAM而紧接着的下一条指令在执行阶段已经需要用到这个新值。
阻塞技术:让下一条指令在执行阶段等待上一条指令完成整个指令。
(2) 前递技术
简单理解:将出来的待用结果直接通过专用路径送到相应的流水级阶段,不用等到最后一段的写回操作。
解决与“写后读”相关引发的冲突:
前递技术:上一条指令需要写入的结果出来之后直接送到下一条指令需要的流水阶段。
我把刚刚出炉的新鲜的加法结果直接送给下一条指令去吃.这就是所谓内部前推(Internal Forwarding),或称内部旁路(Bypass)。
参考文献:
《CPU设计实战》汪文祥 邢金璋 著
《计算机体系结构基础 第三版》 胡传武等著
《计算机原理与设计:Verilog HDL版》 李亚民著
边栏推荐
- World Environment Day | Chow Tai Fook serves wholeheartedly to promote carbon reduction and environmental protection
- 做自媒体视频二次剪辑,怎样剪辑不算侵权
- 启牛学堂班主任给的证券账户安全吗?能开户吗?
- How can non-technical departments participate in Devops?
- 【NVMe2.0b 14-9】NVMe SR-IOV
- leetcode:881. 救生艇
- R语言ggplot2可视化密度图:按照分组可视化密度图、自定义配置geom_density函数中的alpha参数设置图像透明度(防止多条密度曲线互相遮挡)
- 03_ Dataimport of Solr
- 不相交集
- Lepton 无损压缩原理及性能分析
猜你喜欢

PHP - fatal error: allowed memory size of 314572800 bytes exhausted

快消品行业SaaS多租户解决方案,构建全产业链数字化营销竞争力
![[learning notes] stage test 1](/img/22/ad16375d8d1510c2ec75c56403a8bf.png)
[learning notes] stage test 1

Pointer operation - C language

申请代码签名证书时如何选择合适的证书品牌?

魅族新任董事長沈子瑜:創始人黃章先生將作為魅族科技產品戰略顧問

【NVMe2.0b 14-9】NVMe SR-IOV

Solution of commercial supply chain collaboration platform in household appliance industry: lean supply chain system management, boosting enterprise intelligent manufacturing upgrading

leetcode:881. lifeboat

Postman简介、安装、入门使用方法详细攻略!
随机推荐
04_ Use of solrj7.3 of solr7.3
强联通分量
Explain Vue's plan to clean up keepalive cache in time
世界环境日 | 周大福用心服务推动减碳环保
R language ggplot2 visual bar graph: visualize the bar graph through the two-color gradient color theme, and add label text for each bar (geom_text function)
How to introduce devsecops into enterprises?
Catch all asynchronous artifact completable future
Tiflash compiler oriented automatic vectorization acceleration
想进阿里必须啃透的12道MySQL面试题
FR练习题目---综合题
Isn't it right to put money into the external market? How can we ensure safety?
How to deeply understand the design idea of "finite state machine"?
SaaS multi tenant solution for FMCG industry to build digital marketing competitiveness of the whole industry chain
leetcode:881. 救生艇
家用电器行业商业供应链协同平台解决方案:供应链系统管理精益化,助推企业智造升级
【招聘岗位】基础设施软件开发人员
What are the advantages and characteristics of SAS interface
Time to calculate cron expression based on cronsequencegenerator
The simplest way to open more functions without certificates
网上电子元器件采购商城:打破采购环节信息不对称难题,赋能企业高效协同管理