System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及芯片設計,特別涉及一種適用于siov虛擬化設備的高速iommu電路。
技術介紹
1、隨著虛擬化技術的發展,siov(scable?i/o?virtualization)虛擬化已經成為虛擬化發展的一個重要方向。io設備為了支持siov虛擬化功能,需要以passid為單位將虛擬地址轉換為物理地址,iommu(input/output?memory?management?unit,輸入輸出內存管理單元)作為實現io設備虛擬地址與物理地址轉換的電路,其需要支持以passid為單位的虛擬地址與物理地址之間的轉換。
2、不同應用場景下,系統對訪存頁面大小需求不同,因此iommu為了滿足系統對多種頁面大小的需求,iommu需要支持多種頁面大小的代換需求。
3、iommu的代換性能會影響io設備的訪存速度,為了提高io設備的訪存速度,iommu需要支持tlb的功能,以實現快速的地址代換,同時也需要集成頁表cache,減少訪存頻率,以加快查表速度。
技術實現思路
1、本專利技術的目的在于提供一種適用于siov虛擬化設備的高速iommu電路,以解決
技術介紹
中的問題。
2、為解決上述技術問題,本專利技術提供了一種適用于siov虛擬化設備的高速iommu電路,支持虛擬化設備的虛擬地址與物理地址的轉換,主要包括csr配置模塊、代換處理模塊、頁式代換模塊,pcache、tlb模塊,訪存接口模塊;其中tlb模塊包括pagetlb和pdtlb;pcache為頁高速
3、所述csr配置模塊主要負責對iommu電路進行配置;
4、所述代換處理模塊接收代換請求和返回代換響應,并對代換請求進行檢查;
5、所述頁式代換模塊讀取pagetlb、pdtlb、和pcache的數據,在頁式代換模塊缺失的情況下發起訪存請求;
6、所述訪存接口模塊主要負責向內存發送訪存請求;
7、所述pagetlb在命中的情況下,快速查詢到物理地址;所述pdtlb命中的情況下,快速查詢到一級頁表的基地址,進而加快頁表的查詢;
8、所述pcache主要用于緩存一級頁表、二級頁表和三級頁表,減少訪存的頻率,進而加快虛實地址代換。
9、在一種實施方式中,所述iommu電路需要以passid為單位進行地址代換,passid與外部的io設備的io事務相關聯,passid位寬為20位,不同設計根據實際需求設置passid位寬;passid為進程地址空間標識符號。
10、在一種實施方式中,所述iommu電路采用頁式代換,頁式代換采用五級頁式管理的方式,分別由一級pasid表、二級pasid表、一級頁表、二級頁表和三級頁表組成;
11、一級pasid表、二級pasid表的索引為passid,一級頁表、二級頁表和三級頁表的索引為設備虛擬地址;
12、一級pasid表的表項包含二級pasid表的基址;二級pasid表的表項包含一級頁表的基址;一級頁表的表項包含二級頁表的基址,二級頁表的表項包含三級頁表的基址;三級頁表的表項包含物理頁表項。
13、在一種實施方式中,所述代換請求的虛擬地址位寬為64位,其中[61:42]為passid;[41:0]為設備虛擬地址,[63:62]根據實際情況設置相應的含義;其中pasid[19:10]為一級pasid的索引,一級pasid的基地址由系統寄存器的csr配置模塊產生;pasid[9:0]包含為二級pasid的索引;dva[41:32]為一級頁表的索引;dva[31:23]為二級頁表的索引;dva[22:13]為三級頁表的索引;dva[12:0]為頁內偏移。
14、在一種實施方式中,所述五級頁式查表流程如下:
15、(1)使用“pasid表基地址”加上pasid[19:10]形成地址,訪問“一級pasid表”,得到“二級pasid表基地址”;
16、(2)使用“二級pasid表基地址”加上pasid[9:0]形成地址,訪問“二級pasid表”,得到“一級頁表基地址”;
17、(3)使用“一級頁表基地址”加上dva[41:32]形成地址,訪問“一級頁表”,得到“二級頁表基地址”;
18、(4)使用“二級頁表基地址”加上dva[31:32]形成地址,訪問“二級頁表”,得到“三級頁表基地址”;
19、(5)使用“三級頁表基地址”加上dva[22:13]形成地址,訪問“二級頁表”,得到“物理頁表項”。
20、在一種實施方式中,所述iommu電路的工作流程如下:在iommu電路進行虛實地址代換之前,通過csr配置模塊對iommu電路進行配置;在配置完成后,代換處理模塊接收代換請求,對代換請求進行檢查,對于符合要求的代換請求發向頁式代換模塊;頁式代換模塊首先查詢pagetlb,一旦pagetlb命中,應用引擎返回代換響應,若pagetlb缺失,需要查詢pdtlb;pdtlb命中后,進一步查詢pcache才能獲取物理地址,若pdtlb缺失則需要進入五級頁式管理,首先發起訪存請求,讀取內存中的一級pasid表和二級pasid表;pasid表讀取完成后,查詢pcache中的一級頁表、二級頁表和三級頁表,查詢pcache命中,向應用引擎返回代換響應,若pcache缺失,需要發起訪存請求,從外部的內存memory中讀取相應的內容,并向應用引擎返回代換響應。
21、在一種實施方式中,所述iommu電路支持多種頁面大小,一級頁表支持的頁面大小為8gb;二級頁表支持的大小為512mb或8mb;三級頁表支持的頁面大小為8kb,不同設計根據實際需求設置頁面大小。
22、本專利技術提供的一種適用于siov虛擬化設備的高速iommu電路,滿足io設備siov虛擬化功能、支持多種頁面大小和高速虛實地址代換的需求。
本文檔來自技高網...【技術保護點】
1.一種適用于SIOV虛擬化設備的高速IOMMU電路,其特征在于,支持虛擬化設備的虛擬地址與物理地址的轉換,主要包括CSR配置模塊、代換處理模塊、頁式代換模塊,PCACHE、TLB模塊,訪存接口模塊;其中TLB模塊包括PAGETLB和PDTLB;PCACHE為頁高速緩沖存儲器;TLB為快表;PAGETLB為頁表的快表;PDTLB為設備表的快表;
2.如權利要求1所述的適用于SIOV虛擬化設備的高速IOMMU電路,其特征在于,所述IOMMU電路需要以PASSID為單位進行地址代換,PASSID與外部的IO設備的IO事務相關聯,PASSID位寬為20位,不同設計根據實際需求設置PASSID位寬;PASSID為進程地址空間標識符號。
3.如權利要求1所述的適用于SIOV虛擬化設備的高速IOMMU電路,其特征在于,所述IOMMU電路采用頁式代換,頁式代換采用五級頁式管理的方式,分別由一級PASID表、二級PASID表、一級頁表、二級頁表和三級頁表組成;
4.如權利要求3所述的適用于SIOV虛擬化設備的高速IOMMU電路,其特征在于,所述代換請求的虛擬地
5.如權利要求4所述的適用于SIOV虛擬化設備的高速IOMMU電路,其特征在于,所述五級頁式查表流程如下:
6.如權利要求5所述的適用于SIOV虛擬化設備的高速IOMMU電路,其特征在于,所述IOMMU電路的工作流程如下:在IOMMU電路進行虛實地址代換之前,通過CSR配置模塊對IOMMU電路進行配置;在配置完成后,代換處理模塊接收代換請求,對代換請求進行檢查,對于符合要求的代換請求發向頁式代換模塊;頁式代換模塊首先查詢PAGETLB,一旦PAGETLB命中,應用引擎返回代換響應,若PAGETLB缺失,需要查詢PDTLB;PDTLB命中后,進一步查詢PCACHE才能獲取物理地址,若PDTLB缺失則需要進入五級頁式管理,首先發起訪存請求,讀取內存中的一級PASID表和二級PASID表;PASID表讀取完成后,查詢PCACHE中的一級頁表、二級頁表和三級頁表,查詢PCACHE命中,向應用引擎返回代換響應,若PCACHE缺失,需要發起訪存請求,從外部的內存Memory中讀取相應的內容,并向應用引擎返回代換響應。
7.如權利要求1所述的適用于SIOV虛擬化設備的高速IOMMU電路,其特征在于,所述IOMMU電路支持多種頁面大小,一級頁表支持的頁面大小為8GB;二級頁表支持的大小為512MB或8MB;三級頁表支持的頁面大小為8KB,不同設計根據實際需求設置頁面大小。
...【技術特征摘要】
1.一種適用于siov虛擬化設備的高速iommu電路,其特征在于,支持虛擬化設備的虛擬地址與物理地址的轉換,主要包括csr配置模塊、代換處理模塊、頁式代換模塊,pcache、tlb模塊,訪存接口模塊;其中tlb模塊包括pagetlb和pdtlb;pcache為頁高速緩沖存儲器;tlb為快表;pagetlb為頁表的快表;pdtlb為設備表的快表;
2.如權利要求1所述的適用于siov虛擬化設備的高速iommu電路,其特征在于,所述iommu電路需要以passid為單位進行地址代換,passid與外部的io設備的io事務相關聯,passid位寬為20位,不同設計根據實際需求設置passid位寬;passid為進程地址空間標識符號。
3.如權利要求1所述的適用于siov虛擬化設備的高速iommu電路,其特征在于,所述iommu電路采用頁式代換,頁式代換采用五級頁式管理的方式,分別由一級pasid表、二級pasid表、一級頁表、二級頁表和三級頁表組成;
4.如權利要求3所述的適用于siov虛擬化設備的高速iommu電路,其特征在于,所述代換請求的虛擬地址位寬為64位,其中[61:42]為passid;[41:0]為設備虛擬地址,[63:62]根據實際情況設置相應的含義;其中pasid[19:10]為一級pasid的索引,一級pasid的基地址由系統寄存器的csr配置模塊產生;pasid[9:0]包含為二級pasid的索引;dva[41:32]為一級頁表的索引;dva...
【專利技術屬性】
技術研發人員:畢立強,王亞軍,趙達,張銳,劉帆,
申請(專利權)人:中電科申泰信息科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。