1.直接映射 i=j mod m 其中 i:cache行号 j:主存储器的块号; m:cache的行数.

w位标识块中唯一的一个字或字节 r标识了cache行中的一个.
地址长度=(s+w)位
可寻址的单元数=2^(s+w)个字或字节
块大小=行大小=2^w个字或字节
主存的块数=2^s
cache的行数=2^r
cache的容量=2^(r+w)个字或字节
标记长度=(s-r)位
标记位用于和其它装入同一行的块区别开来.
2.全相联映射

地址长度=(s+w)位
可寻址单元数=2^(s+w)个字或字节
块大小=行大小=2^w个字或字节
主存的块数=2^s
cache的行数=不由地址格式决定
标记长度=s位
标记位与数据块一起存储在cache行中
缺点:需要复杂的电路来进行检查所有的cache行标记
3.组相联映射:cache分为v个组,每组包含k个行,
m=v*k    i=j mod v
i=cache组号 j=主存块号 m=cache的行数 v=组数 k=每组中行数
被称为k路相连映射.

长度为d的组字段指定了v=2^d个组中唯一的一个组
标记字段和组字段共长s位,用以标明主存中2^s个块中具体的一块.
地址长度=(s+w)位
可寻址的单元数=2^(s+w)个字或字节
块大小=行大小=2^w个字或字节
主存的块大小=2^s
cache中每组的行数=k
组数=v=2^d
cache中的行数=m=kv=k*2^d
cache存储容量=k*2^d字或字节
标记长度=(s-d)位