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

建站流程网站上线校园引流推广方法

建站流程网站上线,校园引流推广方法,南和网站建设,北京事务所网页设计Cache cache的一般设计 超标量处理器每周期需要从Cache中同时读取多条指令,同时每周期也可能有多条load/store指令会访问Cache,因此需要多端口的Cache L1 Cache:最靠近处理器,是流水线的一部分,包含两个物理存在 指…

Cache

cache的一般设计

超标量处理器每周期需要从Cache中同时读取多条指令,同时每周期也可能有多条load/store指令会访问Cache,因此需要多端口的Cache

  • L1 Cache:最靠近处理器,是流水线的一部分,包含两个物理存在 指令cache(I-Cache)和数据cache(D-Cache),I-Cache只读,D-Cache可读可写。追求
    • I-Cache:需要能够每周期读取多条指令
    • D-Cache:需要指出每周期有多条load/store指令的访问(多端口设计)
  • L2 Cache 指令和数据共享,主要功能:尽可能保存更多内容 追求
    • 访问频率不是很高(L1 Cache命中率比较高)
    • 不需要多端口设计,延迟也不是特别重要
    • 需要有较高的命中率

Cache主要由 Tag部分 和 Data部分 组成,如下图所示:
Cache结构

3C定理(影响Cache缺失的因素):

  • Compulsory
    • 第一次被访问的指令或数据一定会导致 Cache Miss
    • 缓解方法:预取 prefetching
  • Capacity 容量
  • Conflict
    • 组相连Cache,Cache set大小 小于 频繁使用的数据的数量
    • 缓解:victim cache

Cache的三种实现方式(组织方式):直接映射、组相连映射、全相连映射

  • TLB 和 victim Cache:全相连
  • I-Cache 和 D-Cache:组相连
  1. 直接映射
    在这里插入图片描述
  2. 组相连

定义:每个数据块n 个位置可放的组相联 cache 称为 n 路组相连 cache;主存中的每个数据块通过索引位映射到 cache 中对应的组,数据块可以存放在该组中的 任意位置

索引位用来选择访问数据所在的,该组内所有数据块的标签都需要比较(并行比较)

如果cache容量保持相同,增加相联度可以增加每组内数据块的数量;相联度以 2 的幂递增,索引的位长将减少 1,标签的位长将增加 1

基本实现方式:
在这里插入图片描述

  • 并行访问 Tag SRAM 和 Data SRAM 及 访问流水线
    • 同时访问
      在这里插入图片描述
    • 将整个cache访问放到几个周期完成,降低处理器的周期时间,较低的时钟频率和较大的功耗
      在这里插入图片描述
  • 串行访问 Tag SRAM 和 Data SRAM 及 访问流水线
    • 依次访问,不再需要多路选择器,只需访问指定的SRAM,节省功耗
      在这里插入图片描述
    • load指令延迟更大(访问增加了一个周期)
      在这里插入图片描述
  1. 全相连
    • 用CAM存tag,用SRAM存数据
    • 缺失率最低,延迟最大,不会有很大容量,TLB

Cache的写入

  • 写命中
    • 写通(Write Through)
      • 数据写到D-Cache的同时,也写到下级存储器中(如L2 Cache中)
    • 写回(Write Back)
      • 执行store指令时,数据写到D-Cache后,只是将被写入的cache line做一个标记(dirty 脏状态),当被标记的cache line要被替换时,才将其写入下级存储器中
  • 写缺失
    • non write allocate
      • 将数据直接写入下级存储器,不写入D-cache中
    • write allocate
      • 首先从下级存储器中取出发生缺失的地址对应的整个数据块,将要写入到D-Cache中的数据合并到这个数据块中,然后将这个数据块写入到D-cache中
      • 为了保持存储器的一致性,要将这个数据块写入下级存储器,有两种方式
        • 写通
        • 写回
  • 一般 write through 配合 Non-Write Allocate 使用
    在这里插入图片描述
  • Write Back 配合 Write Allocate 使用
    在这里插入图片描述

Cache的替换策略

  • LRU 近期最少使用法
    • 伪LRU,将所有way进行分组,每一组使用一个1位的年龄部分
      在这里插入图片描述
  • 随机替换
    • 时钟算法
    • 硬件复杂度较低,不会损失过多性能

提高cache的性能

  • 写缓存
    在这里插入图片描述

  • victim cache
    在这里插入图片描述

  • filter cache
    在这里插入图片描述

  • 预取

    • 硬件预取

      • 当I-Cache发生缺失时,除了将需要的数据块从下级存储器中取出放在I-Cache中,还会将下一个数据块也读取出来,放到stream buffer中
        在这里插入图片描述
    • 软件预取

      • 编译阶段,编译器对程序进行分析,进而知道哪些数据需要进行预取。比较有针对性
      • 需要注意 预取的时机
      • 使用软件预取时,执行预取指令时,处理器需要能继续执行(能继续从D-Cache中读取数据),要求D-Cache是非阻塞(non-blocking)结构

多端口Cache

  • True Multi-port

    • cache的控制通路和数据通路需要进行复制
    • 两套地址解码器,多路选择器,比较器,对齐器;SRAM中每个cell都需要同时支持两个并行的读取操作
    • 增大了面积,多端口的SRAM cell需要驱动多个读端口,因此需要更长的访问时间,功耗也会随之增大
  • Multiple Cache Copies

    • 将cache进行复制
      在这里插入图片描述
  • Multi-banking

    • 将cache分成很多小的bank,每个bank都只有一个端口
    • bank冲突
  • 实例:AMD Opteron的多端口cache

    • 64位处理器,但处理器地址进行了简化(虚拟地址Virtual Address VA 48位,物理地址Physical Address PA 40位)
      在这里插入图片描述

超标量处理器的取指令

  • 使数据块的大小为n个字,每周期将其全部进行输出
  • 使处理器每周期取出的指令个数多于它能够解码的指令个数,通过指令缓存(Instruction Buffer)将多余的指令缓存起来
  • 改进:使数据块变大
    • 如变为8个字

    • 实际实现用四个SRAM实现一个八个字的数据块
      在这里插入图片描述

    • 一个cache line包含的8个字占据了SRAM的两行,一个cache line只包含一个Tag值

    • 增加两个控制电路

      • 产生每个SRAM的读地址
      • 将四个SRAM输出的内容进行重排序,使其按照程序中规定的原始顺序进行排列
http://www.yayakq.cn/news/977694/

相关文章:

  • 昆明网站seo报价画册欣赏网站
  • 怎么更改网站域名上海网站建设公司指南
  • wordpress大主题公园石家庄百度seo代理
  • 网站编辑工具网站如何换服务器
  • 一个新网站要怎么做seo三乡网站建设
  • 霸州 网络 网站建设网站怎么设置百度收录
  • 河南电力建设工程公司网站建设网站工作内容
  • 酷站是什么网站开淘宝店铺的详细步骤
  • 网站集约化建设的建议wordpress iis部署
  • 网站建设一定要买数据盘吗做视频网站广告收费
  • 外贸快车智能建站安阳营销型网站建设
  • 中医院网站模板新能源电动汽车哪个牌子的质量好
  • 机械网站模板快速搭建网站模板
  • 广州微网站建设信息青岛网景互联网站建设公司
  • 班级建设网站设计方案贵州建筑网站
  • 建设网站目的及功能定位是什么安徽国华建设工程项目管理有限公司网站
  • 公司网站公司简介宣传夸大受处罚简易东莞网站制作公司
  • 网站建设报价单如何建立一个网站支持chrome
  • 汉中站win10优化大师是官方的吗
  • 如何做查询网站自己建个网站
  • 商标购买qq群排名优化软件购买
  • 网站做聚合是啥意思查询备案网站
  • 网上免费网站的域名python 网站开发书籍
  • 福田做网站福田网站建设福田建网站500营销型网站手机端
  • 买东西最便宜的网站河南网站建设价位
  • 百度网站的建设网站开发的流程是怎样的
  • 买了域名就可以做网站服装 网站规划方案
  • wordpress网站底部导航代码福州专业网站设计公司
  • 阿里云域名怎么做网站建网站怎么挣钱的
  • 301重定向手机网站泉州有哪些做网站的