没有合适的资源?快使用搜索试试~ 我知道了~
首页Intel Virtualization Technology for Direct I/O
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/11084576/bg1.jpg)
Order Number: D51397-009, Rev. 2.5
Intel
®
Virtualization Technology for
Directed I/O
Architecture Specification
November 2017
![](https://csdnimg.cn/release/download_crawler_static/11084576/bg2.jpg)
Intel
®
Virtualization Technology for Directed I/O
Architecture Specification, Rev. 2.5 November 2017
2 Order Number: D51397-009
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR
OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS
OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING
TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
A "Mission Critical Application" is any application in which failure of the Intel Product could result, directly or indirectly, in personal injury or death.
SHOULD YOU PURCHASE OR USE INTEL'S PRODUCTS FOR ANY SUCH MISSION CRITICAL APPLICATION, YOU SHALL INDEMNIFY AND HOLD INTEL AND
ITS SUBSIDIARIES, SUBCONTRACTORS AND AFFILIATES, AND THE DIRECTORS, OFFICERS, AND EMPLOYEES OF EACH, HARMLESS AGAINST ALL
CLAIMS COSTS, DAMAGES, AND EXPENSES AND REASONABLE ATTORNEYS' FEES ARISING OUT OF, DIRECTLY OR INDIRECTLY, ANY CLAIM OF PRODUCT
LIABILITY, PERSONAL INJURY, OR DEATH ARISING IN ANY WAY OUT OF SUCH MISSION CRITICAL APPLICATION, WHETHER OR NOT INTEL OR ITS
SUBCONTRACTOR WAS NEGLIGENT IN THE DESIGN, MANUFACTURE, OR WARNING OF THE INTEL PRODUCT OR ANY OF ITS PARTS.
Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics
of any features or instructions marked "reserved" or "undefined". Intel reserves these for future definition and shall have no responsibility whatsoever
for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design
with this information.
The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published
specifications. Current characterized errata are available on request.
Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800-548-
4725, or go to: http://www.intel.com/design/literature.htm
This document contains information on products in the design phase of development.
Intel
®
64 architecture requires a system with a 64-bit enabled processor, chipset, BIOS and software. Performance will vary depending on the specific
hardware and software you use. Consult your PC manufacturer for more information. For more information, visit http://www.intel.com/info/em64t
Intel
®
Virtualization Technology requires a computer system with an enabled Intel
®
processor, BIOS, and virtual machine monitor (VMM). Functionality,
performance or other benefits will vary depending on hardware and software configurations. Software applications may not be compatible with all
operating systems. Consult your PC manufacturer. For more information, visit http://www.intel.com/go/virtualization
Legal Lines and Disclaimers
Copyright © 2011-2017, Intel Corporation. All Rights Reserved.
Intel and Itanium are trademarks of Intel Corporation in the U.S. and/or other countries.
*Other names and brands may be claimed as the property of others.
![](https://csdnimg.cn/release/download_crawler_static/11084576/bg3.jpg)
Intel
®
Virtualization Technology for Directed I/O—Contents
Intel
®
Virtualization Technology for Directed I/O
Architecture Specification, Rev. 2.5 November 2017
3 Order Number: D51397-009
Contents
1Introduction
1.1 Audience ....................................................................................................... 1-1
1.2 Glossary........................................................................................................ 1-2
1.3 References..................................................................................................... 1-4
2Overview
2.1 Intel
®
Virtualization Technology Overview.......................................................... 2-1
2.2 VMM and Virtual Machines................................................................................ 2-1
2.3 Hardware Support for Processor Virtualization .................................................... 2-1
2.4 I/O Virtualization ............................................................................................ 2-2
2.5 Intel
®
Virtualization Technology For Directed I/O Overview .................................. 2-2
2.5.1 Hardware Support for DMA Remapping.................................................... 2-3
2.5.1.1 OS Usages of DMA Remapping.................................................. 2-3
2.5.1.2 VMM Usages of DMA Remapping................................................ 2-4
2.5.1.3 DMA Remapping Usages by Guests............................................ 2-4
2.5.1.4 Interaction with Processor Virtualization ..................................... 2-5
2.5.2 Hardware Support for Interrupt Remapping.............................................. 2-6
2.5.2.1 Interrupt Isolation................................................................... 2-6
2.5.2.2 Interrupt Migration.................................................................. 2-6
2.5.2.3 x2APIC Support ...................................................................... 2-6
2.5.3 Hardware Support for Interrupt Posting ................................................... 2-7
2.5.3.1 Interrupt Vector Scalability....................................................... 2-7
2.5.3.2 Interrupt Virtualization Efficiency............................................... 2-7
2.5.3.3 Virtual Interrupt Migration........................................................ 2-7
3 DMA Remapping
3.1 Types of DMA requests.................................................................................... 3-1
3.2 Domains and Address Translation ..................................................................... 3-1
3.3 Remapping Hardware - Software View............................................................... 3-2
3.4 Mapping Devices to Domains............................................................................ 3-2
3.4.1 Source Identifier................................................................................... 3-3
3.4.2 Root-Entry & Extended-Root-Entry.......................................................... 3-3
3.4.3 Context-Entry ...................................................................................... 3-4
3.4.4 Extended-Context-Entry ........................................................................ 3-5
3.5 Hierarchical Translation Structures.................................................................... 3-7
3.6 First-Level Translation..................................................................................... 3-9
3.6.1 Translation Faults ................................................................................3-11
3.6.2 Access Rights......................................................................................3-12
3.6.3 Accessed, Extended Accessed, and Dirty Flags.........................................3-13
3.6.4 Snoop Behavior...................................................................................3-13
3.6.5 Memory Typing ...................................................................................3-14
3.6.5.1 Selecting Memory Type from Page Attribute Table ......................3-14
3.6.5.2 Selecting Memory Type from Memory Type Range Registers.........3-15
3.6.5.3 Selecting Effective Memory Type ..............................................3-15
3.7 Second-Level Translation................................................................................ 3-17
3.7.1 Translation Faults ................................................................................3-20
3.7.2 Access Rights......................................................................................3-20
3.7.3 Snoop Behavior...................................................................................3-21
3.7.4 Memory Typing ...................................................................................3-21
3.8 Nested Translation......................................................................................... 3-22
3.8.1 Translation Faults ................................................................................3-23
3.8.2 Access Rights......................................................................................3-23
3.8.3 Snoop Behavior...................................................................................3-24
3.8.4 Memory Typing ...................................................................................3-25
![](https://csdnimg.cn/release/download_crawler_static/11084576/bg4.jpg)
Intel
®
Virtualization Technology for Directed I/O
November 2017 Architecture Specification, Rev. 2.5
Order Number: D51397-009 4
Contents—Intel
®
Virtualization Technology for Directed I/O
3.9 Identifying Origination of DMA Requests........................................................... 3-26
3.9.1 Devices Behind PCI-Express to PCI/PCI-X Bridges....................................3-26
3.9.2 Devices Behind Conventional PCI Bridges ...............................................3-26
3.9.3 Root-Complex Integrated Devices..........................................................3-26
3.9.4 PCI-Express Devices Using Phantom Functions........................................3-26
3.10 Handling Requests from Processor Graphics Device............................................ 3-27
3.11 Handling Requests Crossing Page Boundaries.................................................... 3-27
3.12 Handling of Zero-Length Reads ....................................................................... 3-27
3.13 Handling Requests to Interrupt Address Range.................................................. 3-28
3.14 Handling Requests to Reserved System Memory................................................ 3-28
3.15 Root-Complex Peer to Peer Considerations........................................................ 3-29
4 Support For Device-TLBs
4.1 Device-TLB Operation ...................................................................................... 4-1
4.1.1 Translation Request...............................................................................4-2
4.1.2 Translation Completion ..........................................................................4-2
4.1.3 Translated Request................................................................................4-3
4.1.4 Invalidation Request & Completion ..........................................................4-3
4.2 Remapping Hardware Handling of Device-TLBs.................................................... 4-4
4.2.1 Handling of ATS Protocol Errors...............................................................4-4
4.2.2 Root-Port Control of ATS Address Types ...................................................4-4
4.2.3 Handling of Translation Requests.............................................................4-4
4.2.3.1 Accessed, Extended Accessed, and Dirty Flags.............................4-9
4.2.3.2 Translation Requests for Multiple Translations..............................4-9
4.2.4 Handling of Translated Requests..............................................................4-9
4.3 Handling of Device-TLB Invalidations ............................................................... 4-10
5 Interrupt Remapping and Interrupt Posting
5.1 Interrupt Remapping ....................................................................................... 5-1
5.1.1 Identifying Origination of Interrupt Requests.............................................5-1
5.1.2 Interrupt Request Formats On Intel® 64 Platforms....................................5-2
5.1.2.1 Interrupt Requests in Compatibility Format .................................5-2
5.1.2.2 Interrupt Requests in Remappable Format...................................5-3
5.1.3 Interrupt Remapping Table.....................................................................5-4
5.1.4 Interrupt-Remapping Hardware Operation ................................................5-4
5.1.4.1 Interrupt Remapping Fault Conditions.........................................5-6
5.1.5 Programming Interrupt Sources To Generate Remappable Interrupts ...........5-6
5.1.5.1 I/OxAPIC Programming.............................................................5-7
5.1.5.2 MSI and MSI-X Register Programming ........................................5-8
5.1.6 Remapping Hardware - Interrupt Programming .........................................5-9
5.1.7 Programming in Intel
®
64 xAPIC Mode.....................................................5-9
5.1.8 Programming in Intel
®
64 x2APIC Mode .................................................5-10
5.1.9 Handling of Platform Events..................................................................5-10
5.2 Interrupt Posting........................................................................................... 5-11
5.2.1 Interrupt Remapping Table Support for Interrupt Posting..........................5-11
5.2.2 Posted Interrupt Descriptor...................................................................5-12
5.2.3 Interrupt-Posting Hardware Operation....................................................5-12
5.2.4 Ordering Requirements for Interrupt Posting...........................................5-13
5.2.5 Using Interrupt Posting for Virtual Interrupt Delivery................................5-13
5.2.6 Interrupt Posting for Level Triggered Interrupts.......................................5-15
6 Caching Translation Information
6.1 Caching Mode................................................................................................. 6-1
6.2 Address Translation Caches .............................................................................. 6-1
6.2.1 Tagging of Cached Translations...............................................................6-2
6.2.2 Context-cache ......................................................................................6-3
![](https://csdnimg.cn/release/download_crawler_static/11084576/bg5.jpg)
Intel
®
Virtualization Technology for Directed I/O—Contents
Intel
®
Virtualization Technology for Directed I/O
Architecture Specification, Rev. 2.5 November 2017
5 Order Number: D51397-009
6.2.2.1 Context-Entry Programming Considerations................................ 6-4
6.2.3 PASID-cache........................................................................................ 6-4
6.2.4 IOTLB ................................................................................................. 6-5
6.2.4.1 Details of IOTLB Use................................................................ 6-7
6.2.4.2 Global Pages........................................................................... 6-7
6.2.5 Caches for Paging Structures.................................................................. 6-8
6.2.5.1 PML5-cache............................................................................ 6-8
6.2.5.2 PML4-cache............................................................................ 6-9
6.2.5.3 PDPE-cache...........................................................................6-11
6.2.5.4 PDE-cache.............................................................................6-12
6.2.5.5 Details of Paging-Structure Cache Use.......................................6-14
6.2.6 Using the Paging-Structure Caches to Translate Requests..........................6-14
6.2.7 Multiple Cached Entries for a Single Paging-Structure Entry.......................6-16
6.3 Translation Caching at Endpoint Device............................................................. 6-17
6.4 Interrupt Entry Cache..................................................................................... 6-17
6.5 Invalidation of Translation Caches.................................................................... 6-18
6.5.1 Register-based Invalidation Interface .....................................................6-18
6.5.1.1 Context Command Register .....................................................6-18
6.5.1.2 IOTLB Registers .....................................................................6-19
6.5.2 Queued Invalidation Interface ...............................................................6-19
6.5.2.1 Context-cache Invalidate Descriptor..........................................6-21
6.5.2.2 PASID-cache Invalidate Descriptor............................................6-22
6.5.2.3 IOTLB Invalidate Descriptor.....................................................6-23
6.5.2.4 Extended IOTLB Invalidate Descriptor .......................................6-24
6.5.2.5 Device-TLB Invalidate Descriptor..............................................6-26
6.5.2.6 Extended Device-TLB Invalidate Descriptor................................6-27
6.5.2.7 Interrupt Entry Cache Invalidate Descriptor ...............................6-28
6.5.2.8 Invalidation Wait Descriptor.....................................................6-29
6.5.2.9 Hardware Generation of Invalidation Completion Events ..............6-29
6.5.2.10 Hardware Handling of Queued Invalidation Interface Errors..........6-30
6.5.2.11 Queued Invalidation Ordering Considerations.............................6-31
6.5.3 IOTLB Invalidation Considerations..........................................................6-31
6.5.3.1 Implicit Invalidation on Page Requests ......................................6-31
6.5.3.2 Caching Fractured Translations.................................................6-32
6.5.3.3 Recommended Invalidation......................................................6-32
6.5.3.4 Optional Invalidation...............................................................6-33
6.5.3.5 Delayed Invalidation...............................................................6-34
6.5.4 TLB Shootdown Optimization for Root-Complex Integrated Devices ............6-34
6.5.4.1 Deferred Invalidation..............................................................6-35
6.5.4.2 PASID-State Table..................................................................6-36
6.5.4.3 Remapping Hardware Handling of PASID State-Update Requests ..6-37
6.5.4.4 Root-Complex Integrated Device Handling of PASID State-Update
Responses.............................................................................6-37
6.5.4.5 Ordering of PASID State-Update Requests and Responses ...........6-38
6.5.4.6 Example TLB Shootdown using Deferred Invalidations.................6-38
6.5.5 Draining of Requests to Memory ............................................................6-38
6.5.6 Interrupt Draining................................................................................6-39
6.6 Set Root Table Pointer Operation ..................................................................... 6-40
6.7 Set Interrupt Remapping Table Pointer Operation............................................... 6-40
6.8 Write Buffer Flushing...................................................................................... 6-41
6.9 Hardware Register Programming Considerations ................................................ 6-41
6.10 Sharing Remapping Structures Across Hardware Units........................................ 6-41
7 Translation Faults
7.1 Interrupt Translation Faults.............................................................................. 7-1
7.2 Address Translation Faults ............................................................................... 7-1
7.2.1 Non-Recoverable Address Translation Faults............................................. 7-2
剩余281页未读,继续阅读
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/6414459ecc354c1fba1d81a3710a5c3b_chen1540524015.jpg!1)
夏天不热冬天不冷
- 粉丝: 29
- 资源: 33
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- BSC关键绩效财务与客户指标详解
- 绘制企业战略地图:从财务到客户价值的六步法
- BSC关键绩效指标详解:财务与运营效率评估
- 手持移动数据终端:常见问题与WIFI设置指南
- 平衡计分卡(BSC):绩效管理与战略实施工具
- ESP8266智能家居控制系统设计与实现
- ESP8266在智能家居中的应用——网络家电控制系统
- BSC:平衡计分卡在绩效管理与信息技术中的应用
- 手持移动数据终端:常见问题与解决办法
- BSC模板:四大领域关键绩效指标详解(财务、客户、运营与成长)
- BSC:从绩效考核到计算机网络的关键概念
- BSC模板:四大维度关键绩效指标详解与预算达成分析
- 平衡计分卡(BSC):绩效考核与战略实施工具
- K-means聚类算法详解及其优缺点
- 平衡计分卡(BSC):从绩效考核到战略实施
- BSC:平衡计分卡与计算机网络中的应用
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)