2017-01-07 129 views
1

當我們計算有效存儲器訪問時間,其中TLB命中率,TLB存取時間和存儲器存取時間被給予,那麼我們使用公式爲: 有效的存儲器存取時間= TLB命中率*(TLB存取時間+內存訪問時間)+(1-TLB命中率)*(TLB訪問時間+ 2 *內存訪問時間)。 那麼爲什麼我們將內存訪問時間乘以2?存儲器訪問時間

+3

我投票的,因爲它不是關於規劃問題,關閉這一問題作爲題外話。 –

+0

你乘以2,因爲對於每個內存訪問,你訪問你的主內存兩次。 在第一你檢查TLB,如果你發現它位於哪一幀,那麼所有的好,你可以馬上去那裏,把指令,否則,你將有權訪問自己的頁表在內存中,然後再訪問主內存抓取指令。 –

+0

隨時提供任何疑問。 –

回答

0

我們乘以2的存儲器存取時間,因爲有下列步驟:

。因爲TLB不包含translation對於給定virutal address,所以步驟2中

。首先訪問physical memory以訪問page table,將virtual address轉換爲physical address

。訪問page table後,virtual address轉化爲physical address,然後,我們去physical memory再次訪問相應physical memory幀(或頁)。