0

(好吧,实际上继续这个问题,我想承认这是一个家庭作业问题,请考虑一下并帮助我进一步提高我的理解。)

我最近开始学习计算机组织和架构。我对缓存的组织方式、缓存和主内存之间的映射方式(直接、完全和集合关联映射)、什么是页表(什么是页、块等)有了相当的了解,我可以这么说我对分段、分页、虚拟地址和物理地址有基本的了解。(在基础级别)。

好吧,我遇到了这个问题:

A computer has 46-bit virtual address ,32- bit physical address, and a three level 
page table organisation. The page table base-register stores the base address of the 
first level table(t1), which occupies exactly one page.Each entry of t1 stores the base 
address of the page of second level table t2. Each entry of t2 stores the base address
of the page of the third level table t3. Each entry of t3 stores a page table entry 
(PTE). The PTE is 32 bit in size. The processor used in the computer has a 1MB 
16-way set associative virtually indexed physically tagged cache. The cache block size
is 64 Bytes.

首先,我很难想象这种类型的虚拟计算机。任何人都可以通过提供有关如何在纸上实现这样的虚拟计算机的简单步骤来帮助我,或者只是如何理解问题中给出的内容。真正问的是什么??如何代表一台具有 46 位虚拟地址和三级页表的计算机。

what is virtually indexed and physically tagged cache.

看完上面给出的内容,我觉得我只知道这些术语,但我无法将它们联系在一起来解决问题。如果有人试图解释我的思维过程应该如何理解并实际应用这些概念来解决这类问题,我会很高兴。

基于上述段落的一些问题:

 1) What is the size of a page in KB in this computer?


 2) what is the minimum number of page colours needed to guarantee that no two synonyms 
    map to different sets in the processor cache of this computer?

一个很好的资源,其中这些问题被实际教授解决,将不胜感激。好的文章和观点是最受欢迎的。

先感谢您 !!

4

2 回答 2

0

我们知道,除了最外层之外,所有级别的页表都必须是完全填满的,最外层页表可能占据整页或更少。但是有问题的是,最外层页表占据了整个页面。

现在让页面大小为 2字节。

假设 PTE = 32 位 = 4 字节 = 2 2 字节。

任何页表的任何页中的条目数 =page size/PTE = 2 p /2 2 = 2 p-2

因此逻辑地址拆分是

|---------------------|------------------|---------------------|-------------|
|      p-2            |      p-2         |       p-2           |     p       |
|---------------------|------------------|---------------------|-------------|

给定的逻辑地址空间为 46 位。

因此方程变为,

(p-2)+(p-2)+(p-2)+p = 46

⇒p=13。

页面大小为 2 13 Bytes = 8KB

于 2016-11-02T08:09:25.920 回答
-1

我可以帮你解决第一个问题。

让页面大小为 2^x。T1 的每个条目是 32 位,即 4 个字节。总大小为 2^X 字节(1 页)。T1 包含 2^X / 4 = 2^(X-2) 个条目。所以我们使用 46 位虚拟地址的前 X-2 位来索引 T1 中的一个条目。它给出了一个 T2 的地址。

T2 还包含 2^(X-2) 个条目。(与 T1 相同)。所以我们使用下一个 X-2 位来索引 T2 并获得 T3 的地址。

给定 T3 的每个条目是 32 个字节(包括标志和所有)。1 页的总大小 = 2^X 字节。条目数为 2^(X-2)。所以我们再次使用 X-2 位来索引 T3 并获得帧的起始地址。

然后我们需要偏移量。由于页面大小为 2^X,因此偏移量为 X 位长。

第一个 (x-2) 位给出 T2 的地址。

下一个 (x-2) 位给出 T3 的地址。

下一个 (x-2) 位给出来自 T3 的帧的地址。

剩余的 x 位给出帧中的偏移量。

总计为 46 位

x-2 + x-2 + x-2 + X = 46

4X - 6 = 46

X =13

页面大小 = 2^13 字节。

于 2014-01-16T11:50:46.883 回答