当前位置: 首页 > news >正文

issue阶段的选择电路的实现

  • 1-of-M的仲裁电路
    • 为什么要实现oldest-first 功能的仲裁呢?
      • 这是考虑到越是旧的指令,和它存在相关性的指令也就越多,因此优先执行最旧的指令,则可以唤醒更多的指令,能够有效地提高处理器执行指令的并行度,
      • 而且最旧的指令还占据着处理器中其他的资源,例如重排序缓存(ROB)和Store Buffer等部件,越早地执行这些旧的指令,就可以越早地释放这些硬件资源,供后面的指令使用。
    • 年龄信息的追踪;
      • 年龄信息指的是进入流水线的先后顺序;
        • in-order处理器,先执行的比后执行的要老;
        • ort-of-order处理器,进入issue 队列后,顺序被打乱了,但是还有一个地方记录着,即ROB;可以使用ROB_IDX,作为这条指令的年龄信息;
      • 但是只直接使用rob_idx,无法准确表达年龄信息;
      • 解决方式:增加1bit, 即position bit;
        • 位置值(position bit)相同时,ROB的地址值越小,对应的指令越旧;
        • 位置值(position bit)不同时,ROB的地址值越大,对应的指令越旧。
    •  1-of-M的仲裁电路示意图:
      • 上述的示意图中,需要解决两个问题:
        • 如何屏蔽掉发射队列中那些还没有准备好的指令,使这些指令的年龄信息不会对仲裁电路的结果产生影响;
          • 通过rdy bit来解决;
        • 如何根据仲裁电路挑选出的年龄值,在发射队列中找到对应的指令?
          • 将issue queue idx也随着这个比较电路一直送下去;
  • N-of-M的仲裁电路 
    • 几个 FU共用一个发射队列,这个发射队列需要在一个周期内为每个 FU 都选择出一条指令,这样就要求它有一个 N-of-M 的仲裁电路;
    • 折中方案如上:
      • 图8.30中存在四个FU: ALU0、ALU1、Mul/Div0和Mul/Div1,它们共用一个发射队列
      • 发射队列的容量为M,每个FU都有一个专属的 1-of-M 的仲裁电路。
      • 当指令被写到发射队列中的某个表项时,根据这条指令的类型,将这条指令分配给一个对应的FU
      • 如果存在功能相同的FU,则会按照轮流或者随机的顺序进行分配,这个分配的过程本质上可以通过一个多路分配器(demultiplexer)来实现,它将每个表项的ready信号根据指令的类型分配给不同的仲裁电路;
      • 因为发射队列中的每个表项都有可能存放不同类型的指令,所以每个FU 的仲裁电路都会有M 个输入,执行完整的 1-of-M 的仲裁过程,这样,整个 N-of-M 的仲裁电路的延迟就只有1-of-M的仲裁电路的延迟了;
    • 实际的实现方案:
      • 将各种运算类型进行合并,使得几个运算类型共用一个发射队列;
        • 将加减法、逻辑运算和移位运算合在一个FU中,这就传统意义上的ALU,它们共用一个发射队列;
        • 将整数的乘法和除法操作合并在一起;
        • 将访问存储器和访问协处理器合并在一起;
        • 将所有的浮点运算合并在一起;
      • 这就形成了四个比较大的FU。
      • 当然,这只是最简单的情况,在实际的设计中,需要对不同的指令集,甚至是不同的程序进行分析,才能对FU进行合理的归类,得到相对优化的分配结果。

相关文章:

issue阶段的选择电路的实现

1-of-M的仲裁电路 为什么要实现oldest-first 功能的仲裁呢? 这是考虑到越是旧的指令,和它存在相关性的指令也就越多,因此优先执行最旧的指令,则可以唤醒更多的指令,能够有效地提高处理器执行指令的并行度,而且最旧的指…...

BearPi Std 板从入门到放弃 - 后天篇(3)(ESP8266透传点灯)

简介 电脑搭建一个TCP Server, ESP8266 串口设置好透传模式, 再由TCP Server发送指令控制灯的亮灭; 开灯指令: led_on回车 ; 关灯指令: led_off回车 主芯片: STM32L431RCT6 LED : PC13 \ 推挽输出即可 \ 高电平点亮 串口: Usart1 / LPUART E…...

【Linux】macOS下使用scp命令编写脚本上传文件至服务器

使用时需要输入服务器密码 #!/bin/bash# 检查传递给脚本的参数数量 if [ "$#" -ne 2 ]; thenecho "Usage: $0 <本地文件路径> <服务器文件夹路径>"exit 1 fi# 接收命令行参数 local_file"$1" remote_path"$2"# 定义远程服…...

难以置信:WINDOWS11真的取消了助记符

助记符是个好东西&#xff0c;记住了非常的方便。这几天升级到WINDOWS11之后&#xff0c;发现助记符被全面取消&#xff01;真是难以置信&#xff01; 现在WIN11越来越象MAC&#xff0c;MAC好用吗&#xff1f;当然不好用。 其实WIN11完全可以开发两套界面&#xff0c;各取所需。…...

使用VSC从零开始Vue.js——备赛笔记——2024全国职业院校技能大赛“大数据应用开发”赛项——任务3:数据可视化

使用Visual Studio Code&#xff08;VSC&#xff09;进行Vue开发非常方便&#xff0c;下面是一些基本步骤&#xff1a; 一、下载和安装Vue 官网下载地址Download | Node.js Vue.js是基于Node.js的&#xff0c;所以首先需要安装Node.js&#xff0c;官网下载地址&#xff1a;No…...

企业直聘招聘人才求职系统招聘会小程序系统源码

技术栈&#xff1a; 端 原生小程序开发 后端php7.2 数据库mysql5.6 主要功能&#xff1a; 企业入住 ,企业直聘 个人实名认证&#xff0c;人才求职 发布线上招聘会 企业招聘邀请 个人简历置顶 刷新 浏览足迹浏览 附近 招聘信息查看...

大型语言模型:SBERT — Sentence-BERT

slavahead 一、介绍 Transformer 在 NLP 方面取得了进化进步&#xff0c;这已经不是什么秘密了。基于转换器&#xff0c;许多其他机器学习模型已经发展起来。其中之一是BERT&#xff0c;它主要由几个堆叠的变压器编码器组成。除了用于情感分析或问答等一系列不同的问题外&#…...

高效编写软件测试报告的关键技巧

引言&#xff1a; 软件测试报告是测试团队与开发团队之间沟通的重要工具&#xff0c;它记录了测试过程中的发现、问题和建议。一个清晰、准确、高效的软件测试报告可以帮助开发团队更好地理解测试结果&#xff0c;并及时修复问题。本文将介绍一些高效编写软件测试报告的关键技巧…...

编写CI/CD自动化部署脚本

编写CI/CD自动化部署脚本 什么是CI/CD CI/CD 是现代软件开发过程中的关键实践&#xff0c;它包含两个缩写&#xff1a; CI&#xff0c;或者持续集成&#xff08;Continuous Integration&#xff09;CD&#xff0c;可以指持续交付&#xff08;Continuous Delivery&#xff09…...

Pandas实践_分类数据

文章目录 一、cat对象1.cat对象的属性2.类别的增加、删除和修改 二、有序分类1.序的建立2.排序和比较 三、区间类别1.利用cut和qcut进行区间构造2.一般区间的构造3.区间的属性与方法 一、cat对象 1.cat对象的属性 在pandas中提供了category类型&#xff0c;使用户能够处理分类…...

git的使用思维导图

源文件在github主页&#xff1a;study_collection/cpp学习/git at main stu-yzZ/study_collection (github.com)...

Qt 软件界面点击QCombBox控件,造成整个界面移位

Qt 软件界面点击QCombBox控件&#xff0c;造成整个界面移位 最近项目中&#xff0c;遇到了一个问题&#xff0c;在绘制界面的时候&#xff0c;使用了QCombBox控件&#xff0c;在点击QCombBox控件下拉中的item时&#xff0c;会造成整个界面移位的现象。 我重写了下面三个事件函…...

AI Native工程化:百度App AI互动技术实践

作者 | GodStart 导读 随着AI浪潮的兴起&#xff0c;越来越多的应用都在利用大模型重构业务形态&#xff0c;在设计和优化Prompt的过程中&#xff0c;我们发现整个Prompt测评和优化周期非常长&#xff0c;因此&#xff0c;我们提出了一种Prompt生成、评估与迭代的一体化解决方案…...

DDPM推导笔记

各位佬看文章之前&#xff0c;可以先去看看这个视频&#xff0c;并给这位up主点赞投币&#xff0c;这位佬讲解的太好了&#xff1a;大白话AI 1.前置知识的学习 1.1 正态分布特性 ​ &#xff08;1&#xff09;正态分布的概率密度函数 f ( x ) 1 2 π σ e − ( x − μ ) …...

【C#/Java】【小白必看】不要只会读写文本文件了!对象序列化助你提高效率

【C#/Java】【小白必看】不要只会读写文本文件了&#xff01;对象序列化助你提高效率 ​ 在编程的世界里&#xff0c;文件的读写操作是我们经常面对的任务之一。 ​ 当我们只涉及简单的文本文件时&#xff0c;这个任务似乎并不复杂。但是&#xff0c;当我们处理更为复杂的类对…...

排障启示录-无线终端信号弱

现象&#xff1a;无线终端显示信号弱 信息收集&#xff1a; AP的实际发射功率低。外置天线型AP&#xff0c;天线松动或者没插天线现场环境问题&#xff0c;信号穿透衰减终端接入远端AP终端个体问题 排查步骤&#xff1a; 1、AP的发射功率低 查看AP的射频功率&#xff0c;判…...

gem5 RubyPort: mem_request_port作用与连接 simple-MI_example.py

简介 回答这个问题&#xff1a;RubyPort的口下&#xff0c;一共定义了六个口&#xff0c;分别是mem_request_port&#xff0c;mem_response_port&#xff0c;pio_request_port&#xff0c;pio_response_port&#xff0c;in_ports, interrupt_out_ports&#xff0c;他们分别有什…...

无人机支持的空中无蜂窝大规模MIMO系统中上行链路分布式检测

无人机支持的空中无蜂窝大规模MIMO系统中上行链路分布式检测 无人机支持的空中无蜂窝大规模MIMO系统中上行链路分布式检测介绍题目一. 背景&#xff08;解决的问题&#xff09;二. 系统模型信道模型信道系数进行标准化 信道估计 和 数据传输信道估计上行数据传输 三. 具体的流程…...

文献速递:生成对抗网络医学影像中的应用—— CG-3DSRGAN:用于从低剂量PET图像恢复图像质量的分类指导的3D生成对抗网络

文献速递&#xff1a;生成对抗网络医学影像中的应用—— CG-3DSRGAN&#xff1a;用于从低剂量PET图像恢复图像质量的分类指导的3D生成对抗网络 本周给大家分享文献的主题是生成对抗网络&#xff08;Generative adversarial networks, GANs&#xff09;在医学影像中的应用。文献…...

前端验收测试驱动开发

我们听说过很多关于测试驱动开发&#xff08;TDD&#xff09;的内容。那么什么是ATDD&#xff1f; ATDD代表验收测试驱动开发&#xff0c;这是一种定义验收标准并创建自动化测试来验证是否满足这些标准的软件开发方法。ATDD是一种协作方法&#xff0c;涉及客户、开发人员和测试…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动

一、前言说明 在2011版本的gb28181协议中&#xff0c;拉取视频流只要求udp方式&#xff0c;从2016开始要求新增支持tcp被动和tcp主动两种方式&#xff0c;udp理论上会丢包的&#xff0c;所以实际使用过程可能会出现画面花屏的情况&#xff0c;而tcp肯定不丢包&#xff0c;起码…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...