亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于連續(xù)頁面合并以及緩存的硬件載入技術

        2014-08-29 18:45:31黨倩楊婷
        現(xiàn)代電子技術 2014年15期

        黨倩+楊婷

        摘 要: 提出了一種基于連續(xù)頁面合并以及PTE基址緩存的硬件載入技術。對硬件載入改進有兩種方法,分別是:合并Main TLB中物理頁號、虛擬頁號均連續(xù)的兩個表項,擴大了Main TLB容量,降低TLB缺失率,減少硬件載入次數(shù);緩存硬件載入過程中第一次查詢頁表得到的PTE基址,有相同PTE基址的虛擬頁號將不需要進行第一次頁表查詢,節(jié)省了一半時間。

        關鍵詞: 旁路緩沖器; 連續(xù)頁面歸并; 頁面回收; 硬件載入; PTE基址緩存

        中圖分類號: TN711?34 文獻標識碼: A 文章編號: 1004?373X(2014)15?0150?03

        Hardware loading technology based on consecutive page merging and caching

        DANG Qian1, YANG Ting2

        (1. Shaanxi Vocational Technical Institute, Xian 710100, China; 2. Institute of Super?large?scale Integrated Circuit design, Hangzhou 310027, China)

        Abstract: A hardware loading technology based on consecutive page merging and PTE base address caching is proposed in this paper. The improvement of hardware loading has two methods: Merge two table iterms whose VPN and PPN are both consecutive in Main TLB during hardware loading, which can expand the Main TLBs capacity, reduce TLB missing rate and decrease hardware loading times; Cache the page table entry (PTE) base address getting from the first query to the page table. The VPNs whose PTE base addresses are the same will not need to access page table to get PTE base address, which can save half of the hardware loading time.

        Keywords: TLB; consecutive page merging; page recycling; hardware refill; PTE base address caching

        1 旁路轉換單元載入技術概述

        曾有研究表明TLB控制時間占普通系統(tǒng)運行時間的5%~10%,然而最顯著的開銷是在處理TLB缺失上。顯示TLB缺失程序是最常見的執(zhí)行原語,表明TLB確實處理可以占到總運行時間的40%。因此對處理TLB缺失的問題的研究具有重要意義。

        當TLB出現(xiàn)缺失時,有兩種處理方式,分別是硬件載入TLB和軟件載入TLB。硬件載入TLB不需要清空流水線,它對流水線的干擾是相當小的。硬件載入TLB由硬件實現(xiàn)頁表的查詢、表項填入TLB操作,在進行這一系列過程時,處理器并不需要清空流水線,只需要凍結流水線,暫時不執(zhí)行下一條指令即可。本文主要研究硬件載入TLB技術。

        TLB prefetching技術通過硬件上的預測以及預載入翻譯的方式來隱藏TLB缺失造成的時間開銷。其主要思想是一個基于時效性的TLB缺失預測算法。時效性的概念是利用一個基于LRU替換算法計算出特定應用中每個被使用到的TLB表項的歷史使用頻繁度。

        SpecTLB 針對TLB缺失的情況提供了投機的地址翻譯,而不通過跟蹤部分填充的大頁面保留頁表。當一次TLB缺失出現(xiàn)時,SpecTLB檢查該缺失的虛擬頁是否是大頁面保留頁表的一部分,如果是這樣,缺頁的物理地址可以使用大范圍內保留的小頁面的相對位置在該保留大頁面的開始和結束物理地址之間進行插值。

        2 基于連續(xù)頁面合并以及緩存的硬件載入技術

        針對硬件載入時間在整個TLB訪問過程總時間中占有巨大比例的問題,本文提出對硬件載入改進的兩種方法:

        (1) 合并Main TLB中物理頁號、虛擬頁號均連續(xù)的兩個表項,擴大了Main TLB容量,降低TLB缺失率,減少硬件載入次數(shù);

        (2) 緩存硬件載入過程中第一次查詢頁表的到的PTE基址,有相同PTE基址的虛擬頁號將不需要進行第一次頁表查詢,節(jié)省了一半時間。

        這兩種方法分別從減少硬件載入次數(shù)和縮短單次硬件載入時間上提升了旁路轉換單元的性能,同時降低了缺失率。

        2.1 基于連續(xù)頁面合并的硬件載入技術

        為減少硬件載入次數(shù),本文提出一種用于連續(xù)頁面合并的LTLB(Large Page TLB),當TLB缺失時,進行TLB硬件載入,首先從頁表中獲得所需要的翻譯信息,在將該信息填回MTLB之前先檢查MTLB中是否有其連續(xù)頁面,若有則將兩個頁面合并之后填入LTLB,同時將合并前原本在MTLB中的表項無效掉,使其可以在未來存放新的翻譯信息。這樣做也就是將LTLB作為一個頁面是MTLB兩倍的大頁面TLB進行查詢,可以部分擴大頁面大小,增加第二級TLB容量,減少TLB 缺失次數(shù)。

        在硬件載入到MTLB之前先檢查MTLB中該表項的前后頁面是否存在MTLB中,若在,則合并這兩個頁面存入LTLB,同時釋放掉被合并的那個表項。兩路組相聯(lián)的MTLB中若有連續(xù)的頁面,這兩個頁面一定出現(xiàn)在組地址連續(xù)的幾個表項中,因此只需要根據(jù)要填入的表項的虛擬頁號(VPN)最低位選擇跟組地址減1或是組地址加1的兩個表項進行比較。當Micro TLB命中,直接返回物理地址。當Micro TLB缺失,則同時查找MTLB和LTLB。若LTLB命中或者MTLB命中則可直接得到物理地址;若二者都缺失則需要進行硬件載入;在該機制下不會出現(xiàn)二者都命中的情況,一旦出現(xiàn)屬于硬件錯誤。若要進行硬件載入到MTLB,首先根據(jù)虛擬頁號找到要填的表項,查看該表項附近是否有連續(xù)頁面,若有,則將兩個頁面合并放入LTLB,并將原MTLB中的表項置為空,若沒有,則直接填入。

        如果要進行合并檢查,則先根據(jù)VPN的最低位判定奇偶頁面,若是奇頁面,那么檢查是否跟前面一組中的兩個表項虛擬頁面、物理頁面都連續(xù);若是偶頁面,那么檢查是否跟后面一組中的兩個表項虛擬頁面、物理頁面都連續(xù)。如果有連續(xù)頁面則進行合并后再填入LTLB,否則不合并直接填入MTLB。

        2.2 PTE基址緩存的硬件載入技術

        對于兩級頁表,需要進行兩次查找,硬件載入時查找頁表是非常耗時、影響性能的。首先將MPGD寄存器中的14~31位PBA與虛擬地址中的20~31位拼起來組成30位地址,再左移兩位得到32位地址。用這個地址查詢頁目錄表,將得到表項的10~31位與虛擬地址中的12~19位拼起來組成30位地址,再左移兩位得到32位地址才是頁表表項的地址。用這個地址查詢頁表,將得到表項的12~31位物理頁號與虛擬地址的0~11位頁內偏移拼起來組成32位地址,這個地址就是轉換好的物理地址。

        針對兩級頁表查詢耗時的缺點,本文提出PTE基址緩存的硬件載入技術,就是在第一次查詢得到頁目錄表表項地址之前先查找一個PTE基址緩存表PTLB(PTE Base Address TLB),若命中則直接得到頁目錄表表象地址,而不需要再進行第二次查找。這可以大大減少頁表查詢的時間。

        其中PTLB每個表項含兩部分,分別是12位的VPN1和22位的PTE基址。四個表項同時與所要查找的虛擬地址中的VPN1進行比較,若命中,則不許查找頁目錄表,直接得到PTE基址,與虛擬地址中的VPN2拼接作為頁表表項地址,得到所需要的頁表表項。

        2.3 實驗與分析

        本文選取EEMBC中的部分多媒體應用以及網(wǎng)絡應用測試基準程序,以32位高性能嵌入式處理CK510及其平臺為基礎,在原有兩級TLB 的基礎上設計實現(xiàn)連續(xù)頁面合并以及緩存及其控制邏輯進行實驗。

        表1是5種不同TLB結構的缺失率比較,這5種TLB均是兩級結構,第一級相同,不同在第二級的結構。如圖1所示,這5種TLB的第二級分別是:

        圖1 各種TLB結構的硬件載入周期比較

        ① 2路組相聯(lián)32表項的MTLB;

        ② 4路組相聯(lián)32表項的MTLB;

        ③ 全相聯(lián)32表項的MTLB;

        ④ 2路組相聯(lián)32表項MTLB與4表項RTLB;

        ⑤ 2路組相聯(lián)32表項MTLB與4表項LTLB及4表項PTLB。

        由圖1和表1可以看到,應用了本文提出的硬件載入技術的TLB在硬件載入總周期上相比傳統(tǒng)的TLB結構有明顯縮減。第2種4路組相聯(lián)的TLB結構是最差的,毫無疑問這是路太多導致的。本文提出的TLB結構也是基本都優(yōu)于其他TLB結構的。這兩個測試基準的共同特點就是本身硬件載入的次數(shù)并不多,這可能是由于程序本身比較小、程序中所用到的數(shù)據(jù)量也比較少,因此在本身硬件載入次數(shù)不多的情況下,上文的方法效果不會太好,并且還要消耗非常多的硬件資源。

        3 結 語

        本文首先對旁路轉換單元載入技術做了介紹。然后對提出的基于連續(xù)頁面合并一級緩存的硬件載入技術進行了詳細說明。一是連續(xù)頁面合并,當TLB缺失時,進行TLB硬件載入,首先從頁表中獲得所需要的翻譯信息,在將該信息填回MTLB之前先檢查MTLB中是否有其連續(xù)頁面,若有則將兩個頁面合并并填入LTLB,同時將合并前原本在MTLB中的表項無效掉,使其可以在未來存放新的翻譯信息。二是將PTE機制進行緩存,在第一次查詢得到頁目錄表表項地址之前先查找一個PTE基址緩存表PTLB,若命中則直接得到頁目錄表表象地址,而不需要再進行第二次查找。最后通過實驗證明本文提出的基于連續(xù)頁面合并以及緩存的硬件載入技術能有效降低訪問時間。

        參考文獻

        [1] BARR T W, COX A L, RIXNER S. SpecTLB: a mechanism for speculative address translation [C]// 2011 38th Annual International Symposium on Computer Architecture (ISCA). [S.l.]: IEEE, 2011: 307?317.

        [2] 武淑麗,孟建熠,王榮華,等.基于預測緩存的低功耗TLB快速訪問機制[J].計算機應用研究,2011,28(8):2964?2966.

        [3] 葛海通.32位高性能嵌入式CPU及平臺研發(fā)[D].杭州:浙江大學,2009.

        [4] SAULSBURY A, DAHLGREN F, STENSTR?M P. Recency?based TLB preloading [J]. ACM SIGARCH Computer Architecture News, 2000, 28(2): 117?127.

        [5] 何軍,張曉東,郭勇.一種TLB結構優(yōu)化方法[J]. Computer Engineering,2012,38(21):56?58.

        [6] 崔更申,黃廷輝,王力.一種通用的嵌入式操作系統(tǒng)內存保護設計[J].計算機工程,2005(24):34?36.

        如果要進行合并檢查,則先根據(jù)VPN的最低位判定奇偶頁面,若是奇頁面,那么檢查是否跟前面一組中的兩個表項虛擬頁面、物理頁面都連續(xù);若是偶頁面,那么檢查是否跟后面一組中的兩個表項虛擬頁面、物理頁面都連續(xù)。如果有連續(xù)頁面則進行合并后再填入LTLB,否則不合并直接填入MTLB。

        2.2 PTE基址緩存的硬件載入技術

        對于兩級頁表,需要進行兩次查找,硬件載入時查找頁表是非常耗時、影響性能的。首先將MPGD寄存器中的14~31位PBA與虛擬地址中的20~31位拼起來組成30位地址,再左移兩位得到32位地址。用這個地址查詢頁目錄表,將得到表項的10~31位與虛擬地址中的12~19位拼起來組成30位地址,再左移兩位得到32位地址才是頁表表項的地址。用這個地址查詢頁表,將得到表項的12~31位物理頁號與虛擬地址的0~11位頁內偏移拼起來組成32位地址,這個地址就是轉換好的物理地址。

        針對兩級頁表查詢耗時的缺點,本文提出PTE基址緩存的硬件載入技術,就是在第一次查詢得到頁目錄表表項地址之前先查找一個PTE基址緩存表PTLB(PTE Base Address TLB),若命中則直接得到頁目錄表表象地址,而不需要再進行第二次查找。這可以大大減少頁表查詢的時間。

        其中PTLB每個表項含兩部分,分別是12位的VPN1和22位的PTE基址。四個表項同時與所要查找的虛擬地址中的VPN1進行比較,若命中,則不許查找頁目錄表,直接得到PTE基址,與虛擬地址中的VPN2拼接作為頁表表項地址,得到所需要的頁表表項。

        2.3 實驗與分析

        本文選取EEMBC中的部分多媒體應用以及網(wǎng)絡應用測試基準程序,以32位高性能嵌入式處理CK510及其平臺為基礎,在原有兩級TLB 的基礎上設計實現(xiàn)連續(xù)頁面合并以及緩存及其控制邏輯進行實驗。

        表1是5種不同TLB結構的缺失率比較,這5種TLB均是兩級結構,第一級相同,不同在第二級的結構。如圖1所示,這5種TLB的第二級分別是:

        圖1 各種TLB結構的硬件載入周期比較

        ① 2路組相聯(lián)32表項的MTLB;

        ② 4路組相聯(lián)32表項的MTLB;

        ③ 全相聯(lián)32表項的MTLB;

        ④ 2路組相聯(lián)32表項MTLB與4表項RTLB;

        ⑤ 2路組相聯(lián)32表項MTLB與4表項LTLB及4表項PTLB。

        由圖1和表1可以看到,應用了本文提出的硬件載入技術的TLB在硬件載入總周期上相比傳統(tǒng)的TLB結構有明顯縮減。第2種4路組相聯(lián)的TLB結構是最差的,毫無疑問這是路太多導致的。本文提出的TLB結構也是基本都優(yōu)于其他TLB結構的。這兩個測試基準的共同特點就是本身硬件載入的次數(shù)并不多,這可能是由于程序本身比較小、程序中所用到的數(shù)據(jù)量也比較少,因此在本身硬件載入次數(shù)不多的情況下,上文的方法效果不會太好,并且還要消耗非常多的硬件資源。

        3 結 語

        本文首先對旁路轉換單元載入技術做了介紹。然后對提出的基于連續(xù)頁面合并一級緩存的硬件載入技術進行了詳細說明。一是連續(xù)頁面合并,當TLB缺失時,進行TLB硬件載入,首先從頁表中獲得所需要的翻譯信息,在將該信息填回MTLB之前先檢查MTLB中是否有其連續(xù)頁面,若有則將兩個頁面合并并填入LTLB,同時將合并前原本在MTLB中的表項無效掉,使其可以在未來存放新的翻譯信息。二是將PTE機制進行緩存,在第一次查詢得到頁目錄表表項地址之前先查找一個PTE基址緩存表PTLB,若命中則直接得到頁目錄表表象地址,而不需要再進行第二次查找。最后通過實驗證明本文提出的基于連續(xù)頁面合并以及緩存的硬件載入技術能有效降低訪問時間。

        參考文獻

        [1] BARR T W, COX A L, RIXNER S. SpecTLB: a mechanism for speculative address translation [C]// 2011 38th Annual International Symposium on Computer Architecture (ISCA). [S.l.]: IEEE, 2011: 307?317.

        [2] 武淑麗,孟建熠,王榮華,等.基于預測緩存的低功耗TLB快速訪問機制[J].計算機應用研究,2011,28(8):2964?2966.

        [3] 葛海通.32位高性能嵌入式CPU及平臺研發(fā)[D].杭州:浙江大學,2009.

        [4] SAULSBURY A, DAHLGREN F, STENSTR?M P. Recency?based TLB preloading [J]. ACM SIGARCH Computer Architecture News, 2000, 28(2): 117?127.

        [5] 何軍,張曉東,郭勇.一種TLB結構優(yōu)化方法[J]. Computer Engineering,2012,38(21):56?58.

        [6] 崔更申,黃廷輝,王力.一種通用的嵌入式操作系統(tǒng)內存保護設計[J].計算機工程,2005(24):34?36.

        如果要進行合并檢查,則先根據(jù)VPN的最低位判定奇偶頁面,若是奇頁面,那么檢查是否跟前面一組中的兩個表項虛擬頁面、物理頁面都連續(xù);若是偶頁面,那么檢查是否跟后面一組中的兩個表項虛擬頁面、物理頁面都連續(xù)。如果有連續(xù)頁面則進行合并后再填入LTLB,否則不合并直接填入MTLB。

        2.2 PTE基址緩存的硬件載入技術

        對于兩級頁表,需要進行兩次查找,硬件載入時查找頁表是非常耗時、影響性能的。首先將MPGD寄存器中的14~31位PBA與虛擬地址中的20~31位拼起來組成30位地址,再左移兩位得到32位地址。用這個地址查詢頁目錄表,將得到表項的10~31位與虛擬地址中的12~19位拼起來組成30位地址,再左移兩位得到32位地址才是頁表表項的地址。用這個地址查詢頁表,將得到表項的12~31位物理頁號與虛擬地址的0~11位頁內偏移拼起來組成32位地址,這個地址就是轉換好的物理地址。

        針對兩級頁表查詢耗時的缺點,本文提出PTE基址緩存的硬件載入技術,就是在第一次查詢得到頁目錄表表項地址之前先查找一個PTE基址緩存表PTLB(PTE Base Address TLB),若命中則直接得到頁目錄表表象地址,而不需要再進行第二次查找。這可以大大減少頁表查詢的時間。

        其中PTLB每個表項含兩部分,分別是12位的VPN1和22位的PTE基址。四個表項同時與所要查找的虛擬地址中的VPN1進行比較,若命中,則不許查找頁目錄表,直接得到PTE基址,與虛擬地址中的VPN2拼接作為頁表表項地址,得到所需要的頁表表項。

        2.3 實驗與分析

        本文選取EEMBC中的部分多媒體應用以及網(wǎng)絡應用測試基準程序,以32位高性能嵌入式處理CK510及其平臺為基礎,在原有兩級TLB 的基礎上設計實現(xiàn)連續(xù)頁面合并以及緩存及其控制邏輯進行實驗。

        表1是5種不同TLB結構的缺失率比較,這5種TLB均是兩級結構,第一級相同,不同在第二級的結構。如圖1所示,這5種TLB的第二級分別是:

        圖1 各種TLB結構的硬件載入周期比較

        ① 2路組相聯(lián)32表項的MTLB;

        ② 4路組相聯(lián)32表項的MTLB;

        ③ 全相聯(lián)32表項的MTLB;

        ④ 2路組相聯(lián)32表項MTLB與4表項RTLB;

        ⑤ 2路組相聯(lián)32表項MTLB與4表項LTLB及4表項PTLB。

        由圖1和表1可以看到,應用了本文提出的硬件載入技術的TLB在硬件載入總周期上相比傳統(tǒng)的TLB結構有明顯縮減。第2種4路組相聯(lián)的TLB結構是最差的,毫無疑問這是路太多導致的。本文提出的TLB結構也是基本都優(yōu)于其他TLB結構的。這兩個測試基準的共同特點就是本身硬件載入的次數(shù)并不多,這可能是由于程序本身比較小、程序中所用到的數(shù)據(jù)量也比較少,因此在本身硬件載入次數(shù)不多的情況下,上文的方法效果不會太好,并且還要消耗非常多的硬件資源。

        3 結 語

        本文首先對旁路轉換單元載入技術做了介紹。然后對提出的基于連續(xù)頁面合并一級緩存的硬件載入技術進行了詳細說明。一是連續(xù)頁面合并,當TLB缺失時,進行TLB硬件載入,首先從頁表中獲得所需要的翻譯信息,在將該信息填回MTLB之前先檢查MTLB中是否有其連續(xù)頁面,若有則將兩個頁面合并并填入LTLB,同時將合并前原本在MTLB中的表項無效掉,使其可以在未來存放新的翻譯信息。二是將PTE機制進行緩存,在第一次查詢得到頁目錄表表項地址之前先查找一個PTE基址緩存表PTLB,若命中則直接得到頁目錄表表象地址,而不需要再進行第二次查找。最后通過實驗證明本文提出的基于連續(xù)頁面合并以及緩存的硬件載入技術能有效降低訪問時間。

        參考文獻

        [1] BARR T W, COX A L, RIXNER S. SpecTLB: a mechanism for speculative address translation [C]// 2011 38th Annual International Symposium on Computer Architecture (ISCA). [S.l.]: IEEE, 2011: 307?317.

        [2] 武淑麗,孟建熠,王榮華,等.基于預測緩存的低功耗TLB快速訪問機制[J].計算機應用研究,2011,28(8):2964?2966.

        [3] 葛海通.32位高性能嵌入式CPU及平臺研發(fā)[D].杭州:浙江大學,2009.

        [4] SAULSBURY A, DAHLGREN F, STENSTR?M P. Recency?based TLB preloading [J]. ACM SIGARCH Computer Architecture News, 2000, 28(2): 117?127.

        [5] 何軍,張曉東,郭勇.一種TLB結構優(yōu)化方法[J]. Computer Engineering,2012,38(21):56?58.

        [6] 崔更申,黃廷輝,王力.一種通用的嵌入式操作系統(tǒng)內存保護設計[J].計算機工程,2005(24):34?36.

        人妻无码一区二区不卡无码av| 日韩av一区二区三区在线观看| 国产夫妻精品自拍视频| 久久婷婷五月综合97色直播| 亚洲日本在线电影| 97精品国产91久久久久久久| 性色av一区二区三区四区久久| 黄片大全视频在线播放| 真人新婚之夜破苞第一次视频 | 97久久精品人妻人人搡人人玩 | а√天堂8资源中文在线| 亚洲av无码精品色午夜果冻不卡| 精品少妇一区一区三区| 免费看黄片视频在线观看| 少妇高潮惨叫久久久久电影69| 四川丰满少妇被弄到高潮| 亚洲午夜久久久久中文字幕久| 中文字幕乱码人妻在线| 亚洲av成人片无码网站| 久久人人爽人人爽人人av东京热| 无遮高潮国产免费观看韩国| 国语对白精品在线观看| 7m精品福利视频导航| a毛片全部免费播放| 风韵丰满妇啪啪区老老熟女杏吧| 痴汉电车中文字幕在线| av午夜久久蜜桃传媒软件| 免费二级毛片在线播放| 亚洲av成熟国产精品一区二区| 欧美激情在线播放| 日本激情网站中文字幕| 色偷偷噜噜噜亚洲男人| 美女一级毛片免费观看97| 亚洲中文字幕综合网站| 日本一二三区视频在线| 无码中文字幕色专区| 日韩精品极品视频在线观看蜜桃 | 99久久久无码国产精品免费砚床| 天堂女人av一区二区| 久久九九精品国产av| 中文字幕精品一二三四五六七八|