Cache基本原理之:寻址

先看一张Alan Jay Smith《Cache Memory》里的一张插图:A typical cache andTLB design

来源:cache-mem.pdf Figure 2

寻址及数据获取

CPU对cache和内存(这里指主存mainmemory,通常是DDR内存)的寻址类似,都需要被访问对象的地址,但寻址过程有点差别:

CPU访问内存时,通常有两个动作:

1.在EPN(Effective Page Number,上图中的PageNumber部件)完成虚实地址转换,EPN经过Hash Function后在TLB中查找并得到RPN(RealPage Number),如果TLB Miss,RPN将通过慢速的页表查找来获得,最终完成虚拟地址到物理地址:页框(PageNumber)的转换;

2.CLN(Cache Line Number,上图中的Line Number部件)查找合适的CacheBlock。

Cache Block的查找和Page Number的转换可以同步进行。

在多处理器系统中,CLN索引得到的CacheBlock中的数据可能不是有效的数据,因此还需要做进一步的比较:PA与CacheBlock中的Address进行比较,如果结果相同且状态位匹配,表明CacheHit,此时CPU通过ByteSelect and Align部件获得所需的数据。如果Cachemiss,则需要通过PA进一步索引在内存中获取数据

Cache Block组成

一个CacheBlock由地址、状态位和数据单元组成:

·Data:Cache Block中的数据,其长度为32或64,视CPU而定

·Status:Cache Block的状态,在大部分处理器中,该字段包含的是MESI、MOESI或者MESIF这些信息状态。某些处理器还包含一个L位,表示当前CacheBlock是否可用锁定,许多将Cache模拟成SRAM的处理器就是利用了这个L位。

·Real Address Tag:简称RAT,记录当前Cache中存放的数据和哪个地址相关,RAT中存放一部分物理地址信息,虽然CPU的物理地址可能有48位,但Cache中的地址位不需要这么多:

CPU访问Cache使用的地址

从Cache的角度来看,CPU的地址可用划分为:

·Real Address Tag:该字段以单个Cache中的RAT的字段长度相同,CPU使用地址中的RAT字段与Cache中对应的字段以及状态位进行联合比较,判断其访问数据是否命中

·Cache Line Index:和CLN的作用类似,CPU使用该字段在Cache中选择某一个Entry,如果是组相联(Set-Associative)方式组织的Cache,则选择某一组Entry.

·Bank:在Multi-Bank的系统中,CPU访问Cache时,不同Bank可用并发访问。

·Byte:Cache的端口位宽,目前大部分系统的Cache总线位宽为128位或64位

Bank和Byte字段之和确定了单个Cache的Data字段长度,也就是通常说的CacheLine的长度,上图所示的CacheLine长度为26= 64 Bytes,目前大部分的CacheLine大小都为64Bytes,部分原因是因为DDR3SDRAM的一次BurstLine为8,一次Burst操作访问的数据大小为64Bytes

------------

补充一些基本概念,from https://cseweb.ucsd.edu/classes/su07/cse141/cache-handout.pdf

cache block - The basic unit for cache storage. May contain multiple bytes/words of data.

cache line - Same as cache block. Note that this is not the same thing asa “row” of cache.

cache set - A “row” in the cache. The number of blocks per set is deter-mined by the layout of the cache (e.g. direct mapped, set-associative,

or fully associative).

tag - A unique identifier for a group of data. Because different regions ofmemory may be mapped into a block, the tag is used to differentiate

between them.

valid bit - A bit of information that indicates whether the data in a block is valid (1) or not


来源:Cache Memory, Wangqi

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容

  • Cache entries 数据在主存和缓存之间以固定大小的”块(block)”为单位传递,也就是每次从main ...
    yuwh_507阅读 37,388评论 3 23
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,494评论 18 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,493评论 18 399
  • 日复一日,年复一年,你是否和我一样,都成了温水里的那只青蛙,曾经奋力跳跃的激情已不再有,慢慢的在现有的环境里沉迷,...
    悄然一念阅读 217评论 0 1
  • 蔓草丛生,微雨毰毸,鹧鸪幽啼。 我将迁徙,卜居森林小丘之陬,弹着箜篌等待着那一个温柔谦卑的灵魂的到来...
    DianaZY阅读 357评论 6 7