【计算机组成原理】如何计算cache行的位数和cache的位数 |
您所在的位置:网站首页 › cache的总容量为多少位 › 【计算机组成原理】如何计算cache行的位数和cache的位数 |
cache中每一行分为标记位,有效位,(脏位),数据位 前面三个好理解,主要说下数据位 下面贴一张王道的图,下图位Cache的结构,最右边就是数据位,它的位数是由块大小决定的
同理对于32位的数据,就是32位来存储,5位来表示,平时我们碰到的题目让我们表示的居多,所以容易混淆表示(定位)和存储的两种概念 来看例题(2题) 下面的t,c,b分别是主存字块标记,Cache字块地址,字块内地址 1.若计算机主存地址为32位,按字节编址,Cache 数据区大小为32KB,主存块大小为32B,采用直接映射方式和回写(Write Back)策略,则cache行的位数至少是? 大小大小的二的次方表示法表示位数存储位数主存 4GB2的32次方需要32位来表示(定位)这个地址4G*8位cache32KB2的15次方需要15位来表示(定位)这个地址32K*8位块32B2的5次方需要5位来表示(定位)这个地址32*8位主存地址结构 b=5位 也就是大小的二的次方表示法的对数 c=15-5=10位 t=32-15=17位 t c b 17 10 5 cache行的位数=标记位 + 有效位 + 脏位 + 数据位 标记位是17位,有效位1位,回写法脏位一位,数据就是一块的数据,一块的大小为32B,需要32*8=256位来存储 cache行的位数=17+1+1+256=275位 2.假定主存地址为32 位,按字节编址,主存和Cache 之间采用直接映射方式,主存块大小为4 个字,每字32 位,采用回写(Write Back)方式,则能存放4K 字数据的Cache 的总容量的位数至少是( )。 A.146k B.147K C.148K D.158K Cache大小=4K字=4K*32/8=16KB 块大小=4字=4*32/8=16B 大小大小的二的次方表示法表示位数存储位数主存 4GB2的32次方需要32位来表示(定位)这个地址4G*8位cache16KB2的14次方需要14位来表示(定位)这个地址16K*8位块16B2的4次方需要4位来表示(定位)这个地址16*8位主存地址结构 b=4位 也就是大小的二的次方表示法的对数 c=14-4=10位 t=32-14=18位 t c b 18 10 4 cache行的位数=标记位 + 有效位 + 脏位 + 数据位 标记位是18位,有效位1位,回写法脏位一位,数据就是一块的数据,一块的大小为16B,需要16*8=128位来存储 cache行的位数=18+1+1+128=148位 现在有1K行 所以cache的位数=行数*每一行的位数=148K位 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |