Re: [理工][OS]台大97 Cache

看板Grad-ProbAsk作者 (XY)時間15年前 (2011/02/15 16:43), 編輯推噓1(108)
留言9則, 2人參與, 最新討論串4/4 (看更多)
※ 引述《BenLinus (班)》之銘言: : ※ 引述《charliejack (charliejack)》之銘言: : : (1) : : 有TLB : : Cache 使用virtually memory but phisical tagged cache : : 請問他是怎麼做Logic -> Phisical的轉換的 : (1) virtually indexed, physically tagged cache : virtual address : ┌──────────────────┐ : └──────────────────┘ : ↓ : virtual page number | page offset : ┌───────────┬──────┐ : └───────────┴──────┘ : | | : ↓ ↓ : TLB tag, TLB index cache index, block offset : ┌───────┬───┐ ┌────┬─┐ : └───────┴───┘ └────┴─┘ : | | : ↓ | : TLB |用virtual address的這段cache index : 用上面這段資訊, |可找到要讀取cache的哪一個entry : (HIT時)可在TLB的某entry找到 | : 對應的data 就是 ↓ : physical address tag —————→CACHE : ↑ : 把上面這個 tag 拉去跟 cache 的 tag field 比較, : 由 virtual index, physical address tag 來取得真正的 data。 : 優點就是這樣只要一產生 virtual address 就可以馬上去讀 cache 的某 entry, : 然後再用 TLB 查得的 physical address tag 來看 cache 是否 hit。 請問virtual index, physical tagged 是先把virtual page number拿到TLB去找到其對應的physical page(1) , 用virtual address offset去cache找到對應的tag (2), (因為virtual address offset內容和physical address後半段一樣) 然後比較(1)和(2)有沒有相同,才決定能不能直接使用所對應的data 因為這個地方不是很懂,麻煩各位教教我,謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.240.19.143

02/15 16:53, , 1F
(1) 是TLB的data: physical address tag 的部分,
02/15 16:53, 1F

02/15 16:54, , 2F
virtual addr. offset 是 cache的index, 然後cache 會有
02/15 16:54, 2F

02/15 16:55, , 3F
tag field 跟 data field; cache 的 tag field 若同 (1)
02/15 16:55, 3F

02/15 16:55, , 4F
則表示 cache hit, data可以直接拿去用。
02/15 16:55, 4F

02/15 16:59, , 5F
喔喔,了解!!!肛溫啊~~~~
02/15 16:59, 5F

02/15 17:01, , 6F
所以剛剛討論交大那個,因TLB都MISS了,怎麼能知道cache hit
02/15 17:01, 6F

02/15 17:01, , 7F
答案才會是no吧!
02/15 17:01, 7F

02/15 17:04, , 8F
嗯 我是這樣想的
02/15 17:04, 8F

02/15 17:04, , 9F
再一次的肛溫~~~~
02/15 17:04, 9F
文章代碼(AID): #1DMZoREq (Grad-ProbAsk)
文章代碼(AID): #1DMZoREq (Grad-ProbAsk)