CN103026348B - Iommu架构的tlb支持 - Google Patents

Iommu架构的tlb支持 Download PDF

Info

Publication number
CN103026348B
CN103026348B CN201180009059.1A CN201180009059A CN103026348B CN 103026348 B CN103026348 B CN 103026348B CN 201180009059 A CN201180009059 A CN 201180009059A CN 103026348 B CN103026348 B CN 103026348B
Authority
CN
China
Prior art keywords
address translation
translation information
memory
management unit
cache
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201180009059.1A
Other languages
English (en)
Chinese (zh)
Other versions
CN103026348A (zh
Inventor
安德鲁·克格尔
马克·赫梅尔
埃里克·博林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of CN103026348A publication Critical patent/CN103026348A/zh
Application granted granted Critical
Publication of CN103026348B publication Critical patent/CN103026348B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6028Prefetching based on hints or prefetch instructions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/654Look-ahead translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Stored Programmes (AREA)
CN201180009059.1A 2010-02-17 2011-02-16 Iommu架构的tlb支持 Active CN103026348B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/707,341 2010-02-17
US12/707,341 US8244978B2 (en) 2010-02-17 2010-02-17 IOMMU architected TLB support
PCT/US2011/025075 WO2011103184A2 (en) 2010-02-17 2011-02-16 Iommu architected tlb support

Publications (2)

Publication Number Publication Date
CN103026348A CN103026348A (zh) 2013-04-03
CN103026348B true CN103026348B (zh) 2016-03-16

Family

ID=44041567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180009059.1A Active CN103026348B (zh) 2010-02-17 2011-02-16 Iommu架构的tlb支持

Country Status (6)

Country Link
US (1) US8244978B2 (enExample)
EP (2) EP3486788A1 (enExample)
JP (1) JP5650766B2 (enExample)
KR (1) KR101623514B1 (enExample)
CN (1) CN103026348B (enExample)
WO (1) WO2011103184A2 (enExample)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8386745B2 (en) * 2009-07-24 2013-02-26 Advanced Micro Devices, Inc. I/O memory management unit including multilevel address translation for I/O and computation offload
US8671265B2 (en) 2010-03-05 2014-03-11 Solidfire, Inc. Distributed data storage system providing de-duplication of data using block identifiers
US8719464B2 (en) * 2011-11-30 2014-05-06 Advanced Micro Device, Inc. Efficient memory and resource management
US9838269B2 (en) 2011-12-27 2017-12-05 Netapp, Inc. Proportional quality of service based on client usage and system metrics
US9054992B2 (en) 2011-12-27 2015-06-09 Solidfire, Inc. Quality of service policy sets
US9152571B2 (en) * 2012-07-31 2015-10-06 Ati Technologies Ulc All invalidate approach for memory management units
WO2014031495A2 (en) * 2012-08-18 2014-02-27 Arteris SAS System translation look-aside buffer with request-based allocation and prefetching
US9348757B2 (en) 2012-10-08 2016-05-24 International Business Machines Corporation System supporting multiple partitions with differing translation formats
US9355040B2 (en) 2012-10-08 2016-05-31 International Business Machines Corporation Adjunct component to provide full virtualization using paravirtualized hypervisors
US9280488B2 (en) 2012-10-08 2016-03-08 International Business Machines Corporation Asymmetric co-existent address translation structure formats
US9600419B2 (en) 2012-10-08 2017-03-21 International Business Machines Corporation Selectable address translation mechanisms
US9355032B2 (en) 2012-10-08 2016-05-31 International Business Machines Corporation Supporting multiple types of guests by a hypervisor
US9740624B2 (en) 2012-10-08 2017-08-22 International Business Machines Corporation Selectable address translation mechanisms within a partition
US9064030B2 (en) 2012-11-29 2015-06-23 International Business Machines Corporation Tree traversal in a memory device
US9645934B2 (en) 2013-09-13 2017-05-09 Samsung Electronics Co., Ltd. System-on-chip and address translation method thereof using a translation lookaside buffer and a prefetch buffer
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
CN105095108A (zh) * 2014-05-06 2015-11-25 展讯通信(上海)有限公司 输入输出存储器管理单元及控制方法、装置
US9798728B2 (en) 2014-07-24 2017-10-24 Netapp, Inc. System performing data deduplication using a dense tree data structure
US9323701B2 (en) 2014-07-29 2016-04-26 Netapp, Inc. Technique for synchronizing IOMMU memory de-registration and incoming I/O data
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US9671960B2 (en) 2014-09-12 2017-06-06 Netapp, Inc. Rate matching technique for balancing segment cleaning and I/O workload
US9542332B2 (en) * 2014-11-13 2017-01-10 Via Alliance Semiconductor Co., Ltd. System and method for performing hardware prefetch tablewalks having lowest tablewalk priority
US9836229B2 (en) 2014-11-18 2017-12-05 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
CN113704141A (zh) 2015-01-20 2021-11-26 乌尔特拉塔有限责任公司 对象存储器数据流指令执行
EP3248106A4 (en) 2015-01-20 2018-09-12 Ultrata LLC Distributed index for fault tolerant object memory fabric
WO2016118564A1 (en) * 2015-01-20 2016-07-28 Ultrata Llc Universal single level object memory address space
US9720601B2 (en) 2015-02-11 2017-08-01 Netapp, Inc. Load balancing technique for a storage array
US9762460B2 (en) 2015-03-24 2017-09-12 Netapp, Inc. Providing continuous context for operational information of a storage system
EP3211534B1 (en) * 2015-03-27 2020-03-11 Huawei Technologies Co., Ltd. Data processing method, memory management unit and memory control device
US9792215B2 (en) 2015-03-28 2017-10-17 Qualcomm Incorporated Command-driven translation pre-fetch for memory management units
US9710317B2 (en) 2015-03-30 2017-07-18 Netapp, Inc. Methods to identify, handle and recover from suspect SSDS in a clustered flash array
US9886210B2 (en) 2015-06-09 2018-02-06 Ultrata, Llc Infinite memory fabric hardware implementation with router
US9971542B2 (en) 2015-06-09 2018-05-15 Ultrata, Llc Infinite memory fabric streams and APIs
US10698628B2 (en) 2015-06-09 2020-06-30 Ultrata, Llc Infinite memory fabric hardware implementation with memory
US10459847B1 (en) * 2015-07-01 2019-10-29 Google Llc Non-volatile memory device application programming interface
US20170024145A1 (en) * 2015-07-23 2017-01-26 Qualcomm Incorporated Address translation and data pre-fetch in a cache memory system
US9740566B2 (en) 2015-07-31 2017-08-22 Netapp, Inc. Snapshot creation workflow
US10248337B2 (en) 2015-12-08 2019-04-02 Ultrata, Llc Object memory interfaces across shared links
CN115061971A (zh) 2015-12-08 2022-09-16 乌尔特拉塔有限责任公司 使用容错对象的存储器结构操作和一致性
US10241676B2 (en) 2015-12-08 2019-03-26 Ultrata, Llc Memory fabric software implementation
CN108885604B (zh) 2015-12-08 2022-04-12 乌尔特拉塔有限责任公司 存储器结构软件实现方案
US9959214B1 (en) * 2015-12-29 2018-05-01 Amazon Technologies, Inc. Emulated translation unit using a management processor
US9727484B1 (en) * 2016-01-29 2017-08-08 International Business Machines Corporation Dynamic cache memory management with translation lookaside buffer protection
US10671419B2 (en) * 2016-02-29 2020-06-02 Red Hat Israel, Ltd. Multiple input-output memory management units with fine grained device scopes for virtual machines
US10386904B2 (en) 2016-03-31 2019-08-20 Qualcomm Incorporated Hardware managed power collapse and clock wake-up for memory management units and distributed virtual memory networks
US10977192B1 (en) * 2016-04-08 2021-04-13 Amazon Technologies, Inc. Real-time memory-page state tracking and its applications
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US10678702B2 (en) * 2016-05-27 2020-06-09 Advanced Micro Devices, Inc. Using multiple memory elements in an input-output memory management unit for performing virtual address to physical address translations
US10599569B2 (en) 2016-06-23 2020-03-24 International Business Machines Corporation Maintaining consistency between address translations in a data processing system
US10095620B2 (en) * 2016-06-29 2018-10-09 International Business Machines Corporation Computer system including synchronous input/output and hardware assisted purge of address translation cache entries of synchronous input/output transactions
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
US10417140B2 (en) * 2017-02-24 2019-09-17 Advanced Micro Devices, Inc. Streaming translation lookaside buffer
US10929310B2 (en) * 2019-03-01 2021-02-23 Cisco Technology, Inc. Adaptive address translation caches
US11157285B2 (en) 2020-02-06 2021-10-26 International Business Machines Corporation Dynamic modification of instructions that do not modify the architectural state of a processor
KR20220078132A (ko) 2020-12-03 2022-06-10 삼성전자주식회사 어드레스 변환을 수행하는 시스템 온 칩 및 이의 동작 방법
US12111772B2 (en) * 2020-12-23 2024-10-08 Intel Corporation Device, system and method for selectively dropping software prefetch instructions
WO2022133841A1 (en) * 2020-12-24 2022-06-30 Intel Corporation Apparatus and method for address pre-translation to enhance direct memory access by hardware subsystems
US11726693B2 (en) * 2020-12-29 2023-08-15 Ati Technologies Ulc Migrating pages of memory accessible by input-output devices
CN114238167B (zh) * 2021-12-14 2022-09-09 海光信息技术股份有限公司 信息预取方法、处理器、电子设备
KR20230163881A (ko) 2022-05-24 2023-12-01 삼성전자주식회사 입출력 메모리 관리 유닛과 이를 포함하는 장치
CN119336663B (zh) * 2024-12-18 2025-03-18 中电科申泰信息科技有限公司 一种适用于siov虚拟化设备的高速iommu电路

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134633A (en) * 1997-10-31 2000-10-17 U.S. Philips Corporation Prefetch management in cache memory
EP1139222A1 (en) * 2000-03-31 2001-10-04 Texas Instruments Incorporated Prefetch for TLB cache
US6438593B1 (en) * 1998-05-21 2002-08-20 Lucent Technologies Inc. Method for information retrieval in broadcast disk systems
CN101246452A (zh) * 2007-02-12 2008-08-20 国际商业机器公司 执行快速的mmu模拟的方法和装置、以及全系统模拟器

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124237A (ja) * 1992-10-13 1994-05-06 Fuji Xerox Co Ltd アドレス変換バッファ装置
US6553477B1 (en) * 2000-11-06 2003-04-22 Fujitsu Limited Microprocessor and address translation method for microprocessor
GB2378277B (en) * 2001-07-31 2003-06-25 Sun Microsystems Inc Multiple address translations
US7089396B2 (en) * 2002-10-10 2006-08-08 International Business Machines Corporation Method and profiling cache for management of virtual memory
US7793067B2 (en) * 2005-08-12 2010-09-07 Globalfoundries Inc. Translation data prefetch in an IOMMU
US7707359B2 (en) 2005-12-09 2010-04-27 Oracle America, Inc. Method and apparatus for selectively prefetching based on resource availability
US7673116B2 (en) * 2006-01-17 2010-03-02 Advanced Micro Devices, Inc. Input/output memory management unit that implements memory attributes based on translation data
US7904692B2 (en) * 2007-11-01 2011-03-08 Shrijeet Mukherjee Iommu with translation request management and methods for managing translation requests
US8180944B2 (en) * 2009-01-26 2012-05-15 Advanced Micro Devices, Inc. Guest interrupt manager that records interrupts for guests and delivers interrupts to executing guests

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134633A (en) * 1997-10-31 2000-10-17 U.S. Philips Corporation Prefetch management in cache memory
US6438593B1 (en) * 1998-05-21 2002-08-20 Lucent Technologies Inc. Method for information retrieval in broadcast disk systems
EP1139222A1 (en) * 2000-03-31 2001-10-04 Texas Instruments Incorporated Prefetch for TLB cache
CN101246452A (zh) * 2007-02-12 2008-08-20 国际商业机器公司 执行快速的mmu模拟的方法和装置、以及全系统模拟器

Also Published As

Publication number Publication date
US20110202724A1 (en) 2011-08-18
JP5650766B2 (ja) 2015-01-07
CN103026348A (zh) 2013-04-03
JP2013519965A (ja) 2013-05-30
KR20130009781A (ko) 2013-01-23
WO2011103184A2 (en) 2011-08-25
EP3486788A1 (en) 2019-05-22
WO2011103184A3 (en) 2012-10-11
US8244978B2 (en) 2012-08-14
EP2537098A2 (en) 2012-12-26
EP2537098B1 (en) 2018-11-21
KR101623514B1 (ko) 2016-05-23

Similar Documents

Publication Publication Date Title
CN103026348B (zh) Iommu架构的tlb支持
US10802987B2 (en) Computer processor employing cache memory storing backless cache lines
JP4772795B2 (ja) 大アドレス容量に及ぶ変換テーブルを用いた、アドレス変換の性能向上
US7882330B2 (en) Virtualizing an IOMMU
US6681311B2 (en) Translation lookaside buffer that caches memory type information
CN107278298B (zh) 缓存器维护指令
US20130262736A1 (en) Memory types for caching policies
US12314187B2 (en) Software-hardware memory management modes
US11853228B1 (en) Partial-address-translation-invalidation request
US8108621B2 (en) Data cache with modified bit array
JP2022548219A (ja) 変換ルックアサイドバッファ無効化
US8108624B2 (en) Data cache with modified bit array
TWI782754B (zh) 微處理器和在微處理器中實現的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant