“数据位”容量与“开销位”大小?

时间:2012-07-05 19:31:00

标签: c computer-science computer-architecture

我有点卡住,因为我找不到任何覆盖缓存“数据”部分的内容,我用google搜索的所有内容都通过缓存的寻址达到99.9%。我被问到的问题就是这样说的

Contrast the difference between "data bit" capacity and "overhead bit" size
for the two caches.

我不想要答案,所以我不会发布实际的设置大小,什么不是,我只是寻找一个方向可能是一个网站或解释如何“对比”这两个。任何可能的帮助都非常感谢!

2 个答案:

答案 0 :(得分:2)

我不确定你是否已经为这个问题提供了足够的背景信息,但现在就这样了。

高速缓存不仅要存储实际的高速缓存数据,还要为每个数据块存储它所引用的“索引”。因此,当您查找记录N时,缓存不仅必须保存记录N的值,还必须保存N - 以便您可以实际查找数据。这是一种非常简单的方式来看待它。缓存可能有其他元数据来指示有效性和上次访问时间等。

示例#1:32位地址空间中的字节缓存

每个缓存条目必须存储数据值(8位)加上地址(32位)= 40位,

示例#2:32位地址空间中的32位字缓存

每个缓存条目必须存储数据值(32位)加上地址(32位)= 64位,

您可以看到示例#1的开销明显较高。

与往常一样,维基百科可能会有所帮助。 http://en.wikipedia.org/wiki/Cache_(computing

答案 1 :(得分:1)

由于您已经标记了计算机体系结构和C,我认为这是一个任务,要求您在C或类似的东西中创建缓存“模拟器”。并且问题中的“两个缓存”指的是两种不同类型的缓存(完全关联,n路,直接映射......)。在该范围内,问题是要求您讨论两种类型的缓存之间的差异,主要是“开销位”大小之间的比率,这是缓存条目缓存所需的信息(有效位,偏移量,标记)和“数据位“这是存储在高速缓存行中的实际数据。 我希望这会有所帮助。