(Before actually proceeding to the question, I want to confess that this is a homework question, please do consider it and help me in improving my understanding a bit more.)
I have recently started learning computer organisation and architecture. I have gained fair understanding for how caches are organised, how mapping between cache and main memory takes place (direct , fully and set-associative mapping), what is a page table(what are pages, blocks etc.), i can that say I have basic knowledge of segmentation , paging, virtual address and physical addresses.( at the basic level ofcourse).
Well I have come across this question:
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.
First of all I am facing difficulty in just imagining such type of a virtual computer. can any one help me by giving a simple steps on How to realize such a virtual computer on paper, or just how to understand what is given in the question. What is really asked? How would one represent a computer having a 46-bit virtual address and having three level page table?
What is virtually indexed and physically tagged cache?
After reading what is given above, I feel that I just know the terms but I am unable to relate them together to solve problems. I will be glad If someone tries to explain how my thought process should be understand and apply these concepts practically to solve such types of problems.
Some questions based on the above paragraph:
What is the size of a page in KB in this computer?
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?
A good resource where such problems are actually taught to solve will a appreciated. Good articles and views are most welcome.