嵌入式基础知识-流水线

news2024/9/25 1:24:24

提到流水线,最先想到的可能是流水线车间中的产品制造过程。

工业上的流水线,又称装配线,指每一个生产单位只专注处理某一个片段的工作,以提高工作效率及产量。

在计算机领域中,也有流水线的概念,其核心原理也是和工业上的流水线一致。

1 计算机中的流水线概念

流水(pipelining),或流水技术,是指把并行性(或并发性)嵌入到计算机系统中,它可以把重复的顺序处理过程分解为若干子过程,每个子过程能在专用的独立模块上有效地并发工作。

其特点归纳包括:

  • 一条流水线通常由多个流水段组成
  • 每段由专用功能部件,各部件顺序连接,不断流
  • 各段时间时间尽量短、并尽量一致,不一致时最慢子过程称为瓶颈
  • 流水线的操作周期,为其最耗时的那段(瓶颈)所需的时间
  • 使用流水线,可同时指向多条指令,提高了各部件的利用率和系统的吞吐率

2 嵌入式ARM中的五级流水线

嵌入式处理器设计中,通常用到五级流水线(如ARM9):

  • 取指(IF):从存储器中取出指令,将其放入指令流水线
  • 译码(ID):对指令进行译码解码
  • 执行(EX):利用逻辑运算单元进行运算的执行
  • 访存(MEM):在需要的情况下,进行数据存储器的访问
  • 回写(WB):将指令产生的结果,回写到寄存器中,包括任何从存储器中读取的数据

3 流水线实例分析

3.1 实例1

某三级流水线,操作步骤包括:取指、分析、执行,每级的执行时间为5、2、3,求从头到尾执行完100条指令所需的时间

5+2+3+5x99=505

3.2 实例2

某三级流水线,操作步骤包括:取指、分析、执行,每级的执行时间为4、2、3,求从头到尾执行完100条指令所需的时间

4+2+3+4x99=405

4 总结

本篇介绍了计算机与嵌入式领域中的流水线概念,并通过实例分析了流水线的处理时间该如何计算。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/738931.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

互联网医院系统定制|互联网医院在线诊疗平台

互联网医院系统对医院有以下几个方面的帮助:   提升医疗服务效率:互联网医院系统可以为医院提供在线挂号、在线问诊、远程会诊等功能,减少患者排队等待时间,提高医疗服务效率。   扩大服务范围:互联网医院系统可以…

【数据结构二叉树OJ系列】6、平衡二叉树

目录 题述: 思路: 正确代码如下: 时间复杂度分析: 现让你把代码优化时间复杂度为O(N) 思路: 题述: 给定一个二叉树,判断他是否是高度平衡的二叉树。 本题中&#xf…

HttpRunner自动化之接口关联和常用断言

接口关联 第一个test接口获取token,并提取出存储到变量中,在第二个test接口中直接调用该变量,如下图 # 接口关联 - config:name: 微信接口base_url: https://api.weixin.qq.com - test:name: 获取tokenrequest:url: /cgi-bin/tokenmethod: GETparams:g…

在vue3项目中加载Cesium立体地形信息并调整初始化角度

在vue3项目中加载Cesium立体地形信息并调整初始化角度 使用vite创建vue3项目 npm create vitelatestcd到创建的项目文件夹中 npm install安装Cesium npm i cesium vite-plugin-cesium vite -D配置 (1)在项目的vite.config.js文件中添加: impo…

Java模拟cookie登陆操作

Java模拟cookie登陆操作 在使用java访问URL时,如果该URL需要身份验证,那么就不能够直接访问,因为没有登陆。那么,如何解决这个问题呢? 方法是使用java模拟登陆,登陆后记录下cookie信息,在下次发…

【算法集训之线性表篇】Day 07

文章目录 题目基本设计思想代码实现效果 题目 一个长度为L(L>1)的升序序列S,处在第[L/2]个位置的数称为S的中位数。例如,若序列S1{11,13,15,17,19},则S1的中位数是15,两个序列的中位数是含它们所有元素的升序序列的中位数,例如…

使用ida pro反编译并修改so库

快速搜索 图表视图 找到需要修改的行 Edit -> Patch program -> change byte… 复制指令 到这个网站Online ARM to HEX 点击可以切换为HEX to ARM 构造待修改的指令 修改好后复制HEX字符串 Edit -> Patch program -> Apply patches to input file

测试工程师的个人年终总结报告模板

目录 正文之前的思考: 年终总结报告 开篇语 1.  项目概述 1.1  项目情况 1.2  工作流程 1.3  个人角色 1.4  完成情况 2.  工作业绩 3.  亮点和不足 4.  未来展望 总结: 正文之前的思考: 开始编排文档之前来做一个…

FAM NHS ester,5-FAM azide,两者用于标记核苷酸的荧光试剂

一、FAM NHS ester,6-isomer,92557-81-8 理论分析: 中文名:羧基荧光素-活性酯,6-异构体,6-羧基荧光素琥珀酰亚胺酯,6-羧基荧光素-活性酯 英文名:FAM NHS ester,6-isomer,6-FAM-NHS,…

D. Survey in Class

D. Survey in Class Problem - D - Codeforces 思路:题目要求的是最大值与最小值的差值最大,那么我们能够想到,一定是两个人比较得到的最大的差值,假设a与b比较得到的最大的差值,因为如果提问了这两个区间都不包含的&…

单个电源模块带电感的直流压降仿真(二)

单个电源模块带电感的直流压降仿真(二) 接 单个电源模块带电感的直流压降仿真(一) 在右侧net manager disable all nets鼠标移动到需要仿真的电感前后两端的铜皮上,select net and enable net并且把GND也select和enable上

ceph用户认证

Cephx认证机制 ceph使用cephx协议对客户端进行身份认证 cephx用于对ceph保存的数据进行认证访问和授权,用于对访问ceph的请求进行认证和授权检测,于mon通信的请求都要经过ceph认证通过,但是也可以在mon节点关闭cephx认证,但是关…

微信小程序的目录结构及页面结构的说明

微信小程序的目录结构及页面结构的说明 1. 项目结构2.小程序的页面组成部分3.项目结构和页面结构文件的一些说明3.1. json文件3.2. wxml和wxss3.2.1. wxml3.2.2. wxss 3.2.3. 小程序中的.js文件 4. 微信小程序的宿主环境及运行机制4.1. 宿主环境4.2. 运行机制4.2.1. 小程序启动…

运营规模突破5万台,绿色慧联启动「望岳计划」!

狙击冲锋问鼎!7月7日,绿色慧联“望岳计划”在杭州正式启动。远程新能源商用车集团副总裁兼绿色慧联总经理杨东及运营平台各职能部门、区域运营中心负责人共同参加了会议。 今年绿色慧联正面临更加多变的内外部市场环境,电池原材料价格下滑和整…

华为OD机试真题 Java 实现【宜居星球改造计划】【2023 Q2 200分】,附详细解题思路

目录 一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 大家好,我是哪吒。 做技术,我是认真的,立志于打造最权威的华为OD机试真题专栏,帮助那些与我有同样需求的人&#xff0…

eclipse安装

下载 https://www.eclipse.org/ 安装 选择web开发 启动项目,让选择工作地址 创建java web项目 选择一下运行时 选择好tomcat服务器finish即可 创建maven项目

Mybatis 学习笔记1:构造方法注入

Mybatis 构造方法注入 最近阅读 Mybatis 3.5.8-SNAPSHOT 版本源码,在调试过程中遇到如下异常: org.apache.ibatis.builder.BuilderException:Error in result map MyEmployee.empResultMap.Failed to find a constructor in MyEmployee by arg names […

python基于flask企业会议交换机设备维修批量运维管理系统设计与实现6py09

Python 中存在众多的 Web 开发框架:Flask、Django、Tornado、Webpy、Web2py、Bottle、Pyramid、Zope2 等。近几年较为流行的,大概也就是 Flask 和 Django 了解决的思路: (1)通过进行需求分析,建立用例模型&…

ansible学习使用

1、ansible官网 官方文档 https://docs.ansible.com/ansible/latest/index.html ansible github页面 https://github.com/ansible/ansible 安装手册:https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html 2、ansible架构简述 …

JavaScrpt_11 Web API 事件流、委托事件、其它事件、元素尺寸与位置

JavaScrpt_11 Web API 事件流、委托事件、其它事件、元素尺寸与位置 前言一、事件流1. 捕获和冒泡2. 阻止冒泡 二、委托事件三、其它事件1. 页面加载事件 2. 元素滚动事件 3. 页面尺寸事件 四、元素尺寸与位置 前言 进一步学习 事件进阶,实现更多交互的网页特效&…