MESI缓存协议简述

本文简述了CPU的存储层次结构,重点介绍了缓存一致性协议中的MESI协议。MESI协议保证了多核CPU环境下缓存数据的一致性,缓存行有四种状态:独占(E)、修改(M)、共享(S)和无效(I),确保了数据在多个缓存间的正确同步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 CPU的存储层次结构

参考《深入理解计算机系统》。
早期计算机系统的存储器层次结构只有三层:CPU寄存器,主DRAM存储器和磁盘存储设备。不过,随着CPU和主存之间逐渐增大的差距,系统设计者被迫在CPU寄存器和主存之间插入缓存。

1.1 CPU访问主存

下图是一个典型的桌面系统结构,主要部件是CPU芯片,I/O桥接器芯片组(其中包括存储控制器),以及组成主存的DRAM存储器模块。I/O桥接器将系统总线的电信号翻译成存储器总线的电信号。
数据流通过总线(bus)的共享电路在处理器和DRAM主存之间来来回回。每次CPU和主存之间的数据传输都是通过一系列步骤来完成的,这些步骤称为总线事务(bus transaction)。**读事务(read transaction)**从主存传送数据到CPU,**写事务(write transaction)**从CPU传送数据到主存。
在这里插入图片描述

1.1.1 读事务

mov A %eax,将地址A的内容加载到寄存器%eax的过程如下图所示。
在这里插入图片描述

1.1.2 写事务

mov %eax A,将寄存器%eax的内容写入到地址A的过程如下图。
在这里插入图片描述

1.2 存储器层次结构

在这里插入图片描述

在如上图所示的存储器山结构中,从高层往底层走,存储设备变得更慢,更便宜,更大。

  • 在最高层(L0)是少量的快速CPU寄存器,CPU可以在一个时钟周期内访问它们。
  • 接下来是一个或多个小型或中型的基于SRAM的高速缓存存储器,可以在几个时钟周期内访问它们。
  • 然后是一个大的基于DRAM的主存,可以在几十或几百个时钟周期内访问它们。
  • 接下
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值