【问题标题】:4 questions about processor architecture. (Computer engineering)关于处理器架构的 4 个问题。 (计算机工程)
【发布时间】:2011-05-24 10:32:07
【问题描述】:

为了准备期末考试,我们的老师问了我们大约 50 道真假问题。我可以在网上或通过询问亲戚来找到他们中的大多数人的答案。然而,这 4 个问题让我发疯。大多数这些问题并不难,我只是无法在任何地方得到任何令人满意的答案。对不起,原来的问题不是用英文写的,我必须自己翻译。如果您有不明白的地方,请告诉我。 谢谢!

对还是错

  1. 处理器操作地址的大小决定了虚拟内存的大小。但是,内存缓存的大小是独立的。
  2. 长期以来,DRAM 技术与用于在处理器中执行标准逻辑的 CMOS 技术不兼容。这就是 DRAM 内存(大部分时间)在处理器外部(在不同的芯片上)使用的原因。
  3. 分页让多个虚拟寻址空间对应一个物理寻址空间。
  4. 具有 1 行集合的关联高速缓存是一个整体关联高速缓存,因为一个内存块可以进入任何集合,因为每个集合的大小与该块的大小相同。

【问题讨论】:

  • 你有没有教科书?我知道它不如 Google 快,但你们通常老师会使用一个...
  • 你认为答案是什么,为什么?
  • 1、内存缓存的大小与什么无关,是虚拟内存大小还是地址宽度?
  • 其实我们没有教科书。我们有一些非常短的幻灯片,但它们并不是很有趣。我问老师我在哪里可以找到这些问题的答案,他让我在网上搜索。
  • 我认为第一个答案基本上是正确的,只是我认为地址的长度只会给我们内存的最大大小而不是实际大小。对于第二个答案,我真的不知道,但是 Karl Knechtel 给出的答案很有意义。问题 3:我也许可以将多个虚拟寻址空间加入到同一个物理空间,但我真的认为这样做没有用。问题 4:维基百科告诉我,真正的集合关联缓存同时测试所有可能的方式。但我认为与问题中所写的内容没有任何关系

标签: memory virtual processor


【解决方案1】:
  1. “操纵地址”不是本领域的术语。您有一个 m 位虚拟地址映射到一个 n 位物理地址。是的,缓存可以是物理地址大小的任何大小,但通常要小得多。请注意,高速缓存行标记有虚拟或更典型的物理地址位,对应于机器的最大虚拟或物理地址范围。

  2. 是的,DRAM 工艺和逻辑工艺都针对不同的目标进行了调整,并且涉及不同的工艺步骤(例如,用于铺设 DRAM 电容器堆叠/沟槽的不同材料和厚度),并且在历史上您还没有制造过处理器DRAM 工艺(三菱 M32RD 除外)或逻辑工艺中的 DRAM。例外是所谓的 eDRAM,IBM 喜欢将其用于他们的 SOI 进程,它被用作 IBM 微处理器(如 Power 7)中的最后一级缓存。

  3. “分页”是我们所说的发出换页,以便文本输出从下一页的顶部开始。另一方面,“分页”有时是虚拟内存管理的同义词,通过它可以将虚拟地址(逐页)映射到物理地址。如果您将页表设置为允许多个虚拟地址(实际上是来自不同进程的虚拟地址空间的虚拟地址)映射到相同的物理地址,从而映射到实际 RAM 中的相同位置。

  4. “具有 1 行集合的关联高速缓存存储器是一个整体关联高速缓存存储器,因为一个内存块可以进入任何集合,因为每个集合的大小与该块的大小相同。”

嗯,这是一个奇怪的问题。让我们分解一下。 1) 你可以有一个直接映射的缓存,其中一个地址只映射到一个缓存行。 2)你可以有一个完全关联的缓存,其中一个地址可以映射到any缓存行;如果有任何行与地址匹配,则有类似 CAM(内容可寻址存储器)标签结构的东西。或者 3) 你可以有一个 n 路集关联缓存,其中你基本上有 n 组直接映射的缓存,并且给定的地址可以映射到 n 行之一。还有其他更深奥的缓存组织,但我怀疑你是被教导他们的。

所以让我们解析语句。 “关联高速缓存”。那么这排除了直接映射的缓存。所以我们只剩下“完全关联”和“n-way set associative”。它有一组 1 行。好的,所以如果它被设置为关联,那么它不是传统的 4 路 x 64 行/路,而是 n 路 x 1 行/路。换句话说,它是完全关联的。我会说这是一个真实的陈述,除了艺术术语是“完全联想”而不是“完全联想”。

有道理吗?

黑客愉快!

【讨论】:

  • 如果一个缓存set只有一个块,那么只有一个way(即直接映射)。当然,通常不会说“单向关联缓存”,但这可能是翻译问题。
【解决方案2】:
  1. 是的,或多或少(我猜这取决于您翻译的准确性:))地址中的位数设置了虚拟内存空间的上限;当然,您可以选择不使用所有位。内存缓存的大小取决于实际安装了多少内存,是独立的;但当然,如果你的内存超出了你的处理能力,那么它仍然无法使用。

  2. 几乎肯定是假的。我们在单独的芯片上拥有 RAM,这样我们就可以安装更多内存,而无需构建全新的计算机或更换 CPU。

【讨论】:

  • 感谢您的回答 Karl K.
【解决方案3】:
  1. 缓存大小没有先验上限或下限,但在实际应用程序中,某些大小当然比其他大小更有意义。
  2. 我不知道有任何不兼容性。我们使用 SRAM 作为片上缓存的原因是因为它更快。
  3. 也许您可以强制 MMU 将不同的虚拟地址映射到同一个物理位置,但通常情况相反。
  4. 我不明白这个问题。

【讨论】:

  • 感谢 AndreKR。这很有意义。
  • 正如我在回答中解释的那样,这里的#2 是不正确的。逻辑和 DRAM 工艺针对不同的目的进行了优化,您很少看到采用 DRAM 工艺制造的处理器或采用逻辑/处理器工艺制造的 DRAM。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-08
  • 2011-07-24
  • 1970-01-01
  • 1970-01-01
  • 2023-04-01
相关资源
最近更新 更多