IN2012DN00934A - - Google Patents

Info

Publication number
IN2012DN00934A
IN2012DN00934A IN934DEN2012A IN2012DN00934A IN 2012DN00934 A IN2012DN00934 A IN 2012DN00934A IN 934DEN2012 A IN934DEN2012 A IN 934DEN2012A IN 2012DN00934 A IN2012DN00934 A IN 2012DN00934A
Authority
IN
India
Prior art keywords
translation
page tables
guest
request
pointer
Prior art date
Application number
Other languages
English (en)
Inventor
Andrew G Kegel
Mark D Hummel
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 IN2012DN00934A publication Critical patent/IN2012DN00934A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/15Use in a specific computing environment
    • G06F2212/151Emulated environment, e.g. virtual machine

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)
IN934DEN2012 2009-07-24 2010-07-24 IN2012DN00934A (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/508,882 US8386745B2 (en) 2009-07-24 2009-07-24 I/O memory management unit including multilevel address translation for I/O and computation offload
PCT/US2010/043169 WO2011011769A1 (fr) 2009-07-24 2010-07-24 Unité de gestion de mémoire d'entrée/sortie comprenant une transformation d'adresse à multiples niveaux pour une entrée/sortie et un transfert de charge de calcul

Publications (1)

Publication Number Publication Date
IN2012DN00934A true IN2012DN00934A (fr) 2015-04-03

Family

ID=43012690

Family Applications (1)

Application Number Title Priority Date Filing Date
IN934DEN2012 IN2012DN00934A (fr) 2009-07-24 2010-07-24

Country Status (7)

Country Link
US (1) US8386745B2 (fr)
EP (1) EP2457166B1 (fr)
JP (1) JP2013500525A (fr)
KR (1) KR101614865B1 (fr)
CN (1) CN102473139B (fr)
IN (1) IN2012DN00934A (fr)
WO (1) WO2011011769A1 (fr)

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9606936B2 (en) * 2010-12-16 2017-03-28 Advanced Micro Devices, Inc. Generalized control registers
CN103620547B (zh) 2011-01-27 2018-07-10 英特尔公司 使用处理器的转换后备缓冲器的基于客户指令到本机指令范围的映射
WO2012103367A2 (fr) 2011-01-27 2012-08-02 Soft Machines, Inc. Mappages d'adresses de blocs invité-natives et gestion du stockage des codes natifs
WO2012103373A2 (fr) 2011-01-27 2012-08-02 Soft Machines, Inc. Structure de mise en cache variable pour la gestion d'un stockage physique
WO2012103253A2 (fr) 2011-01-27 2012-08-02 Soft Machines, Inc. Mémoire cache de table de conversion multiniveau permettant de traduire des instructions d'hôte en instructions d'origine
WO2012103245A2 (fr) 2011-01-27 2012-08-02 Soft Machines Inc. Bloc d'instructions d'hôte doté d'une construction en séquence de sauts proches et de sauts éloignés vers un bloc d'instructions d'origine
WO2012103359A2 (fr) 2011-01-27 2012-08-02 Soft Machines, Inc. Composants d'accélération matérielle pour traduire des instructions invité en instructions natives
US8943296B2 (en) 2011-04-28 2015-01-27 Vmware, Inc. Virtual address mapping using rule based aliasing to achieve fine grained page translation
US9767039B2 (en) * 2011-07-18 2017-09-19 Vmware, Inc. Increasing granularity of dirty bit information in hardware assisted memory management systems
US9916257B2 (en) * 2011-07-26 2018-03-13 Intel Corporation Method and apparatus for TLB shoot-down in a heterogeneous computing system supporting shared virtual memory
US20130042238A1 (en) 2011-08-12 2013-02-14 International Business Machines Corporation Optimized Virtual Function Translation Entry Memory Caching
US8954704B2 (en) 2011-08-12 2015-02-10 International Business Machines Corporation Dynamic network adapter memory resizing and bounding for virtual function translation entry storage
US8645663B2 (en) * 2011-09-12 2014-02-04 Mellanox Technologies Ltd. Network interface controller with flexible memory handling
US8631212B2 (en) * 2011-09-25 2014-01-14 Advanced Micro Devices, Inc. Input/output memory management unit with protection mode for preventing memory access by I/O devices
US8719464B2 (en) * 2011-11-30 2014-05-06 Advanced Micro Device, Inc. Efficient memory and resource management
US9378150B2 (en) 2012-02-28 2016-06-28 Apple Inc. Memory management unit with prefetch ability
US9081507B2 (en) * 2012-03-14 2015-07-14 Symantec Corporation Shared storage access management systems and methods
US9507639B2 (en) 2012-05-06 2016-11-29 Sandisk Technologies Llc Parallel computation with multiple storage devices
US9256545B2 (en) 2012-05-15 2016-02-09 Mellanox Technologies Ltd. Shared memory access using independent memory maps
US8761189B2 (en) 2012-06-28 2014-06-24 Mellanox Technologies Ltd. Responding to dynamically-connected transport requests
US8938602B2 (en) * 2012-08-02 2015-01-20 Qualcomm Incorporated Multiple sets of attribute fields within a single page table entry
US9424199B2 (en) * 2012-08-29 2016-08-23 Advanced Micro Devices, Inc. Virtual input/output memory management unit within a guest virtual machine
US8745276B2 (en) 2012-09-27 2014-06-03 Mellanox Technologies Ltd. Use of free pages in handling of page faults
US8914458B2 (en) 2012-09-27 2014-12-16 Mellanox Technologies Ltd. Look-ahead handling of page faults in I/O operations
US9639464B2 (en) 2012-09-27 2017-05-02 Mellanox Technologies, Ltd. Application-assisted handling of page faults in I/O operations
US9298642B2 (en) 2012-11-01 2016-03-29 Mellanox Technologies Ltd. Sharing address translation between CPU and peripheral devices
US10380030B2 (en) * 2012-12-05 2019-08-13 Arm Limited Caching of virtual to physical address translations
DE102013022169A1 (de) 2013-03-14 2014-09-18 Nvidia Corporation Fehlerpuffer zur verfolgung von seitenfehlern in einem vereinheitlichten virtuellen speichersystem
US11487673B2 (en) 2013-03-14 2022-11-01 Nvidia Corporation Fault buffer for tracking page faults in unified virtual memory system
WO2014151691A1 (fr) 2013-03-15 2014-09-25 Soft Machines, Inc. Procédé et appareil pour une émulation de pile d'adresses de retour d'hôte prenant en charge une spéculation
WO2014151652A1 (fr) 2013-03-15 2014-09-25 Soft Machines Inc Procédé et appareil pour permettre une résolution précoce des dépendances et un envoi de données dans un microprocesseur
WO2014209269A1 (fr) * 2013-06-24 2014-12-31 Intel Corporation Vue de mémoire protégée pour accès d'invités de machines virtuelles à des tables de pages imbriquées
US10229043B2 (en) * 2013-07-23 2019-03-12 Intel Business Machines Corporation Requesting memory spaces and resources using a memory controller
US9547603B2 (en) * 2013-08-28 2017-01-17 Wisconsin Alumni Research Foundation I/O memory management unit providing self invalidated mapping
US9436823B1 (en) * 2013-12-17 2016-09-06 Google Inc. System and method for detecting malicious code
CN104750623B (zh) * 2013-12-31 2017-11-24 华为技术有限公司 一种内存虚拟化的方法及装置
US10642501B1 (en) * 2014-01-10 2020-05-05 MIPS Tech, LLC Hardware virtualized input output memory management unit
US10114760B2 (en) * 2014-01-14 2018-10-30 Nvidia Corporation Method and system for implementing multi-stage translation of virtual addresses
US9852100B2 (en) 2014-02-26 2017-12-26 Red Hat Israel, Ltd. Guest-programmable location of advanced configuration and power interface (ACPI) tables in virtualized systems
US9727503B2 (en) 2014-03-17 2017-08-08 Mellanox Technologies, Ltd. Storage system and server
US9696942B2 (en) 2014-03-17 2017-07-04 Mellanox Technologies, Ltd. Accessing remote storage devices using a local bus protocol
FR3019919B1 (fr) * 2014-04-14 2016-05-06 Inria Inst Nat De Rech En Informatique Et En Automatique Procede de synthese automatique de circuits, dispositif et programme d'ordinateur associes
US10120832B2 (en) 2014-05-27 2018-11-06 Mellanox Technologies, Ltd. Direct access to local memory in a PCI-E device
US10031857B2 (en) 2014-05-27 2018-07-24 Mellanox Technologies, Ltd. Address translation services for direct accessing of local memory over a network fabric
US9710381B2 (en) 2014-06-18 2017-07-18 International Business Machines Corporation Method and apparatus for cache memory data processing
KR102218715B1 (ko) * 2014-06-19 2021-02-23 삼성전자주식회사 채널별로 데이터를 보호할 수 있는 반도체 장치
GB201415796D0 (en) * 2014-09-07 2014-10-22 Technion Res & Dev Foundation Logical-to-physical block mapping inside the disk controller: accessing data objects without operating system intervention
WO2016064403A1 (fr) * 2014-10-23 2016-04-28 Hewlett Packard Enterprise Development Lp Unité de gestion de mémoire de supervision
US9619401B2 (en) * 2015-02-20 2017-04-11 Wisconsin Alumni Research Foundation Efficient memory management system for computers supporting virtual machines
US9710393B2 (en) 2015-06-25 2017-07-18 Intel Corporation Dynamic page table edit control
US9665373B2 (en) 2015-06-26 2017-05-30 Intel Corporation Protecting confidential data with transactional processing in execute-only memory
US10063376B2 (en) 2015-10-01 2018-08-28 International Business Machines Corporation Access control and security for synchronous input/output links
US10120818B2 (en) 2015-10-01 2018-11-06 International Business Machines Corporation Synchronous input/output command
JP6579916B2 (ja) * 2015-10-28 2019-09-25 株式会社日立製作所 仮想計算機間の通信経路制御方法および計算機システム
GB2545170B (en) 2015-12-02 2020-01-08 Imagination Tech Ltd GPU virtualisation
US9424155B1 (en) * 2016-01-27 2016-08-23 International Business Machines Corporation Use efficiency of platform memory resources through firmware managed I/O translation table paging
US20170220466A1 (en) * 2016-01-30 2017-08-03 Intel Corporation Sharing a guest physical address space among virtualized contexts
US10515023B2 (en) 2016-02-29 2019-12-24 Intel Corporation System for address mapping and translation 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
US10037288B2 (en) * 2016-04-01 2018-07-31 Intel Corporation Memory protection at a thread level for a memory protection key architecture
US9898227B2 (en) 2016-04-27 2018-02-20 International Business Machines Corporation Synchronous input/output virtualization
US10148581B2 (en) 2016-05-30 2018-12-04 Mellanox Technologies, Ltd. End-to-end enhanced reliable datagram transport
CN106155933B (zh) * 2016-07-06 2019-02-05 乾云众创(北京)信息科技研究院有限公司 一种基于KSM及Pass-through相结合的虚拟机内存共享方法
US10048881B2 (en) * 2016-07-11 2018-08-14 Intel Corporation Restricted address translation to protect against device-TLB vulnerabilities
US10209900B2 (en) * 2016-09-19 2019-02-19 Fungible, Inc. Buffer allocation and memory management using mapping table
CN106502721B (zh) * 2016-09-26 2019-11-15 华为技术有限公司 一种命令卸载方法、装置及物理机
WO2018176360A1 (fr) * 2017-03-31 2018-10-04 Intel Corporation Virtualisation d'interruption évolutive pour dispositifs d'entrée/sortie
US10565126B2 (en) 2017-07-14 2020-02-18 Arm Limited Method and apparatus for two-layer copy-on-write
US10489304B2 (en) 2017-07-14 2019-11-26 Arm Limited Memory address translation
US10353826B2 (en) 2017-07-14 2019-07-16 Arm Limited Method and apparatus for fast context cloning in a data processing system
US10592424B2 (en) 2017-07-14 2020-03-17 Arm Limited Range-based memory system
US10613989B2 (en) 2017-07-14 2020-04-07 Arm Limited Fast address translation for virtual machines
US10467159B2 (en) * 2017-07-14 2019-11-05 Arm Limited Memory node controller
US10534719B2 (en) * 2017-07-14 2020-01-14 Arm Limited Memory system for a data processing network
US11042394B2 (en) 2017-10-13 2021-06-22 Electronics And Telecommunications Research Institute Method for processing input and output on multi kernel system and apparatus for the same
WO2019124450A1 (fr) * 2017-12-20 2019-06-27 日本電気株式会社 Dispositif d'exécution d'entrée/sortie, système de virtualisation de dispositif, procédé d'exécution d'entrée/sortie et support d'enregistrement
CN110096457B (zh) * 2018-01-31 2023-05-23 联发科技股份有限公司 硬件控制系统及硬件控制方法
CN110134325A (zh) * 2018-02-09 2019-08-16 晨星半导体股份有限公司 存储器控制装置及存储器控制方法
US10884850B2 (en) 2018-07-24 2021-01-05 Arm Limited Fault tolerant memory system
US11243891B2 (en) 2018-09-25 2022-02-08 Ati Technologies Ulc External memory based translation lookaside buffer
US10769076B2 (en) 2018-11-21 2020-09-08 Nvidia Corporation Distributed address translation in a multi-node interconnect fabric
US11036649B2 (en) 2019-04-04 2021-06-15 Cisco Technology, Inc. Network interface card resource partitioning
US11226904B2 (en) 2019-04-26 2022-01-18 Hewlett Packard Enterprise Development Lp Cache data location system
US10909053B2 (en) * 2019-05-27 2021-02-02 Advanced Micro Devices, Inc. Providing copies of input-output memory management unit registers to guest operating systems
US10853263B1 (en) 2019-07-23 2020-12-01 Ati Technologies Ulc Unified kernel virtual address space for heterogeneous computing
GB2594258B (en) * 2020-04-20 2022-07-20 Advanced Risc Mach Ltd Variable nesting control parameter for table structure providing access control information for controlling access to a memory system
US11461299B2 (en) 2020-06-30 2022-10-04 Hewlett Packard Enterprise Development Lp Key-value index with node buffers
US11556513B2 (en) 2020-06-30 2023-01-17 Hewlett Packard Enterprise Development Lp Generating snapshots of a key-value index
US11461240B2 (en) 2020-10-01 2022-10-04 Hewlett Packard Enterprise Development Lp Metadata cache for storing manifest portion
US20240020241A1 (en) * 2020-12-24 2024-01-18 Intel Corporation Apparatus and method for address pre-translation to enhance direct memory access by hardware subsystems
US11940933B2 (en) 2021-03-02 2024-03-26 Mellanox Technologies, Ltd. Cross address-space bridging
US11934333B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Storage protocol emulation in a peripheral device
US11934658B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Enhanced storage protocol emulation in a peripheral device
US11726666B2 (en) 2021-07-11 2023-08-15 Mellanox Technologies, Ltd. Network adapter with efficient storage-protocol emulation
CN114201269B (zh) * 2022-02-18 2022-08-26 阿里云计算有限公司 内存换页方法、系统及存储介质
US12007921B2 (en) 2022-11-02 2024-06-11 Mellanox Technologies, Ltd. Programmable user-defined peripheral-bus device implementation using data-plane accelerator (DPA)

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04308953A (ja) * 1991-04-05 1992-10-30 Kyocera Corp 仮想アドレス計算機装置
US6856420B1 (en) * 2000-07-31 2005-02-15 Hewlett-Packard Development Company, L.P. System and method for transferring data within a printer
US7444493B2 (en) 2004-09-30 2008-10-28 Intel Corporation Address translation for input/output devices using hierarchical translation tables
US8843727B2 (en) * 2004-09-30 2014-09-23 Intel Corporation Performance enhancement of address translation using translation tables covering large address spaces
US7428626B2 (en) * 2005-03-08 2008-09-23 Microsoft Corporation Method and system for a second level address translation in a virtual machine environment
WO2006127613A2 (fr) * 2005-05-24 2006-11-30 Marathon Technologies Corporation Systeme informatique multiprocesseur symetrique insensible aux defaillances
US7225287B2 (en) 2005-06-01 2007-05-29 Microsoft Corporation Scalable DMA remapping on a computer bus
US7543131B2 (en) 2005-08-12 2009-06-02 Advanced Micro Devices, Inc. Controlling an I/O MMU
US7793067B2 (en) 2005-08-12 2010-09-07 Globalfoundries Inc. Translation data prefetch in an IOMMU
US7653803B2 (en) 2006-01-17 2010-01-26 Globalfoundries Inc. Address translation for input/output (I/O) devices and interrupt remapping for I/O devices in an I/O memory management unit (IOMMU)
US7548999B2 (en) 2006-01-17 2009-06-16 Advanced Micro Devices, Inc. Chained hybrid input/output memory management unit
US7734842B2 (en) * 2006-03-28 2010-06-08 International Business Machines Corporation Computer-implemented method, apparatus, and computer program product for managing DMA write page faults using a pool of substitute pages
US7636800B2 (en) * 2006-06-27 2009-12-22 International Business Machines Corporation Method and system for memory address translation and pinning
US7873770B2 (en) 2006-11-13 2011-01-18 Globalfoundries Inc. Filtering and remapping interrupts
US7849287B2 (en) 2006-11-13 2010-12-07 Advanced Micro Devices, Inc. Efficiently controlling special memory mapped system accesses
US7707383B2 (en) * 2006-11-21 2010-04-27 Intel Corporation Address translation performance in virtualized environments
US8045828B2 (en) * 2007-07-09 2011-10-25 Kabushiki Kaisha Toshiba Apparatus for processing images, and method and computer program product for detecting image updates
JP4852012B2 (ja) * 2007-07-09 2012-01-11 株式会社東芝 画像を処理する装置、画像の更新を検出する方法およびプログラム
US20090113111A1 (en) * 2007-10-30 2009-04-30 Vmware, Inc. Secure identification of execution contexts
US8099541B2 (en) * 2008-01-22 2012-01-17 Globalfoundries Inc. Minivisor entry point in virtual machine monitor address space
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
US9535849B2 (en) * 2009-07-24 2017-01-03 Advanced Micro Devices, Inc. IOMMU using two-level address translation for I/O and computation offload devices on a peripheral interconnect
US8244978B2 (en) * 2010-02-17 2012-08-14 Advanced Micro Devices, Inc. IOMMU architected TLB support

Also Published As

Publication number Publication date
KR101614865B1 (ko) 2016-04-29
CN102473139B (zh) 2015-05-20
US8386745B2 (en) 2013-02-26
US20110023027A1 (en) 2011-01-27
EP2457166B1 (fr) 2018-08-22
WO2011011769A1 (fr) 2011-01-27
CN102473139A (zh) 2012-05-23
JP2013500525A (ja) 2013-01-07
EP2457166A1 (fr) 2012-05-30
KR20120044369A (ko) 2012-05-07

Similar Documents

Publication Publication Date Title
IN2012DN00934A (fr)
IN2012DN00935A (fr)
GB2565495A (en) Page fault resolution
GB2517356A (en) Radix table translation of memory
HRP20130820T1 (en) Translation of input/output addresses to memory addresses
WO2013167886A3 (fr) Appareil de traitement de données ayant un cache et une mémoire tampon auxiliaire de traduction
WO2012040723A3 (fr) Appareil, procédé et système de mise en oeuvre de tables de micro-pages
CY1113979T1 (el) Δυναμικη μεταφραση διευθυνσεως με ελεγχο μορφοτυπου
IN2012DN00196A (fr)
BR112015024773A8 (pt) Método, sistema e aparelho para comparação de imagens
IN2015DN01637A (fr)
EA201990315A1 (ru) Зашифрованный транзит и хранение пользовательских данных
SG10201903332RA (en) Memory Management Supporting Huge Pages
IN2015KN00221A (fr)
WO2010144216A3 (fr) Processeur et procédé de modification dynamique et sélective de traduction d'adresse
WO2015088985A3 (fr) Systèmes et procédés permettant de fournir des définitions contextuelles et des traductions de texte
GB2513496A (en) Memory address translation-based data encryption
GB2478727B (en) Translation table control
IN2015DN01261A (fr)
GB201206682D0 (en) Fibre channel input/output data routing system and method
TW200627270A (en) Fault processing for direct memory access address translation
BR112017025625A2 (pt) reordenação de transação e tradução com multi-thread para unidades de gerenciamento de memória
WO2013158129A8 (fr) Microcontrôleur configuré pour un décryptage de mémoire externe
GB2518785A (en) Concurrent control for a page miss handler
BR112013030289A2 (pt) mapas independentes de escala