JP2016515265A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2016515265A5 JP2016515265A5 JP2016501279A JP2016501279A JP2016515265A5 JP 2016515265 A5 JP2016515265 A5 JP 2016515265A5 JP 2016501279 A JP2016501279 A JP 2016501279A JP 2016501279 A JP2016501279 A JP 2016501279A JP 2016515265 A5 JP2016515265 A5 JP 2016515265A5
- Authority
- JP
- Japan
- Prior art keywords
- processor
- memory
- instruction
- address
- set value
- 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.)
- Granted
Links
- 230000004044 response Effects 0.000 claims 2
- 230000000875 corresponding Effects 0.000 claims 1
Claims (15)
- 第1のプロセッサおよび第1のメモリに連結されたインターフェースと、
メモリ管理ユニットと設定値を格納するように構成された第2のメモリとを含む第2のプロセッサであって、前記設定値は、前記インターフェースを経由して前記第1のプロセッサにより前記第1のメモリにプログラムされ、前記第2のプロセッサにより、前記第1のメモリから前記第2のメモリへロードされる、第2のプロセッサと
を備え、
前記第2のプロセッサは、アドレス変換を遂行するために前記第2のメモリの前記設定値の1つまたは複数を使用するように構成され、前記設定値は、アドレス変換テーブルの位置に対応する、装置。 - 前記第2のプロセッサは、前記第2のプロセッサで実行されるロード操作、前記第2のプロセッサで実行されるストア操作、またはそれらの任意の組合せの間、または前記第2のプロセッサで実行されるフェッチ操作の間にアドレス変換を遂行するように構成される、請求項1に記載の装置。
- 前記第2のプロセッサは、前記メモリ管理ユニットに前記1つまたは複数の設定値を格納するように構成される、請求項2に記載の装置。
- アドレス変換を遂行することは、仮想アドレスを中間物理アドレスに変換すること、中間物理アドレスを物理アドレスに変換すること、またはそれらの任意の組合せを備える、請求項1に記載の装置。
- 前記第1のプロセッサおよび前記第2のプロセッサは同じプロセッサであるか、または、前記第1のプロセッサが中央処理ユニット(CPU)であり、前記第2のプロセッサはデジタルシグナルプロセッサ(DSP)である、請求項1に記載の装置。
- 前記第1のプロセッサは第1の命令セットアーキテクチャと関連付けられ、前記第2のプロセッサは前記第1の命令セットアーキテクチャと異なる第2の命令セットアーキテクチャと関連付けられるか、または、
前記第1のプロセッサは第1のハイパーバイザと関連付けられ、前記第2のプロセッサは第2のハイパーバイザと関連付けられる、請求項1に記載の装置。 - インターフェースを経由して第1のプロセッサにより、前記インターフェースに連結され第2のプロセッサのメモリ管理ユニットの外部にあるメモリに設定値をプログラムするステップと、
前記第2のプロセッサが命令を実行することに応じて、前記設定値を前記メモリから前記第2のプロセッサの1つまたは複数のレジスタへロードするステップであって、前記1つまたは複数のレジスタはアドレス変換を遂行するために前記第2のプロセッサにより使用可能である、ステップと
を備え、前記設定値は、アドレス変換テーブルの位置に対応する、方法。 - 単一の命令の実行の間に前記プログラムするステップおよび前記ロードするステップを遂行するステップをさらに備える、請求項7に記載の方法。
- 前記レジスタは前記命令により排他的に書き込み可能である、請求項7に記載の方法。
- 前記プログラムするステップは、前記命令のオペランドに基づいて前記メモリ管理ユニットに格納されたテーブルを探索するステップを備える、請求項7に記載の方法。
- 前記命令が特定のオペランドを含むと決定するステップに応じて、前記1つまたは複数のレジスタにロードされた設定値をオーバーライドするステップをさらに備え、前記1つまたは複数の設定値は前記オーバーライドされた設定値を含む、請求項7に記載の方法。
- 特定の設定値が前記1つまたは複数のレジスタに前もってロードされたと決定するステップに応じて、前記1つまたは複数のレジスタに前記1つまたは複数の設定値の前記特定の設定値をロードしないステップをさらに備える、請求項7に記載の方法。
- 前記命令のオペランドに基づいて、前記メモリに格納され前記命令の前記オペランドに基づいてインデックスを付けられたテーブルに基づいて、またはそれらの任意の組合せで、前記特定の設定値が前記1つまたは複数のレジスタに前もってロードされたと決定するステップをさらに備える、請求項12に記載の方法。
- オーバーライドされる設定値は、ベースアドレスレジスタにロードされ仮想アドレスから中間物理アドレスへのアドレス変換を遂行するために使用可能なベースアドレスを備える、請求項9に記載の方法。
- 請求項7〜14のいずれか一項に記載の方法を実行するためにコンピュータにより実行可能な命令を格納する、非一時的なコンピュータ可読記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/828,718 US10114756B2 (en) | 2013-03-14 | 2013-03-14 | Externally programmable memory management unit |
US13/828,718 | 2013-03-14 | ||
PCT/US2014/023552 WO2014159418A1 (en) | 2013-03-14 | 2014-03-11 | Externally programmable memory management unit |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016515265A JP2016515265A (ja) | 2016-05-26 |
JP2016515265A5 true JP2016515265A5 (ja) | 2018-02-01 |
JP6345231B2 JP6345231B2 (ja) | 2018-06-20 |
Family
ID=50933473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016501279A Expired - Fee Related JP6345231B2 (ja) | 2013-03-14 | 2014-03-11 | 外部からプログラム可能なメモリ管理ユニット |
Country Status (6)
Country | Link |
---|---|
US (1) | US10114756B2 (ja) |
EP (1) | EP2972898B1 (ja) |
JP (1) | JP6345231B2 (ja) |
KR (1) | KR20150130382A (ja) |
CN (1) | CN105144122B (ja) |
WO (1) | WO2014159418A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10437591B2 (en) | 2013-02-26 | 2019-10-08 | Qualcomm Incorporated | Executing an operating system on processors having different instruction set architectures |
US9606818B2 (en) | 2013-03-14 | 2017-03-28 | Qualcomm Incorporated | Systems and methods of executing multiple hypervisors using multiple sets of processors |
US9396012B2 (en) | 2013-03-14 | 2016-07-19 | Qualcomm Incorporated | Systems and methods of using a hypervisor with guest operating systems and virtual processors |
KR20150132366A (ko) * | 2013-03-15 | 2015-11-25 | 피에스4 뤽스코 에스.에이.알.엘. | 반도체 기억 장치 및 이를 구비한 시스템 |
GB2536201B (en) | 2015-03-02 | 2021-08-18 | Advanced Risc Mach Ltd | Handling address translation requests |
GB2536880B (en) * | 2015-03-24 | 2021-07-28 | Advanced Risc Mach Ltd | Memory management |
US10474461B2 (en) * | 2016-09-22 | 2019-11-12 | Qualcomm Incorporated | Instruction-based synchronization of operations including at least one SIMD scatter operation |
US10514943B2 (en) | 2016-11-17 | 2019-12-24 | Qualcomm Incorporated | Method and apparatus for establishing system-on-chip (SOC) security through memory management unit (MMU) virtualization |
US10736154B2 (en) | 2017-06-13 | 2020-08-04 | Rumfert, Llc | Wireless real-time data-link sensor method and system for small UAVs |
US11132044B2 (en) | 2018-05-08 | 2021-09-28 | Micron Technology, Inc. | Dynamic P2L asynchronous power loss mitigation |
US11867529B2 (en) | 2018-06-01 | 2024-01-09 | Rumfert, Llc | Altitude initialization and monitoring system and method for remote identification systems (remote Id) monitoring and tracking unmanned aircraft systems (UAS) in the national airspace system (NAS) |
CN117724768A (zh) * | 2020-08-28 | 2024-03-19 | 格兰菲智能科技有限公司 | 电子装置及其命令数量减少方法 |
US11416960B2 (en) * | 2020-11-06 | 2022-08-16 | Samsung Electronics Co., Ltd. | Shader accessible configurable binning subsystem |
Family Cites Families (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6286092B1 (en) | 1999-05-12 | 2001-09-04 | Ati International Srl | Paged based memory address translation table update method and apparatus |
US6516373B1 (en) | 1999-06-18 | 2003-02-04 | Samsung Electronics Co., Ltd. | Common motherboard interface for processor modules of multiple architectures |
US6526462B1 (en) | 1999-11-19 | 2003-02-25 | Hammam Elabd | Programmable multi-tasking memory management system |
US6981132B2 (en) * | 2000-08-09 | 2005-12-27 | Advanced Micro Devices, Inc. | Uniform register addressing using prefix byte |
US6904483B2 (en) | 2001-03-20 | 2005-06-07 | Wind River Systems, Inc. | System and method for priority inheritance |
US6684305B1 (en) | 2001-04-24 | 2004-01-27 | Advanced Micro Devices, Inc. | Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence |
GB2378277B (en) | 2001-07-31 | 2003-06-25 | Sun Microsystems Inc | Multiple address translations |
JP2003099272A (ja) | 2001-09-20 | 2003-04-04 | Ricoh Co Ltd | タスク切替システムと方法およびdspとモデム |
US7620678B1 (en) | 2002-06-12 | 2009-11-17 | Nvidia Corporation | Method and system for reducing the time-to-market concerns for embedded system design |
US6981072B2 (en) | 2003-06-05 | 2005-12-27 | International Business Machines Corporation | Memory management in multiprocessor system |
US7134007B2 (en) | 2003-06-30 | 2006-11-07 | Intel Corporation | Method for sharing firmware across heterogeneous processor architectures |
US7424709B2 (en) | 2003-09-15 | 2008-09-09 | Intel Corporation | Use of multiple virtual machine monitors to handle privileged events |
US20050251806A1 (en) | 2004-05-10 | 2005-11-10 | Auslander Marc A | Enhancement of real-time operating system functionality using a hypervisor |
US8127098B1 (en) | 2004-05-11 | 2012-02-28 | Globalfoundries Inc. | Virtualization of real mode execution |
US8271976B2 (en) | 2004-06-30 | 2012-09-18 | Microsoft Corporation | Systems and methods for initializing multiple virtual processors within a single virtual machine |
US7299337B2 (en) | 2005-05-12 | 2007-11-20 | Traut Eric P | Enhanced shadow page table algorithms |
US7739476B2 (en) | 2005-11-04 | 2010-06-15 | Apple Inc. | R and C bit update handling |
US7945913B2 (en) | 2006-01-19 | 2011-05-17 | International Business Machines Corporation | Method, system and computer program product for optimizing allocation of resources on partitions of a data processing system |
US20070283336A1 (en) | 2006-06-01 | 2007-12-06 | Michael Karl Gschwind | System and method for just-in-time compilation in a heterogeneous processing environment |
US8700883B1 (en) * | 2006-10-24 | 2014-04-15 | Nvidia Corporation | Memory access techniques providing for override of a page table |
US8082551B2 (en) | 2006-10-30 | 2011-12-20 | Hewlett-Packard Development Company, L.P. | System and method for sharing a trusted platform module |
US7681012B2 (en) * | 2007-01-30 | 2010-03-16 | Texas Instruments Incorporated | Method, system and device for handling a memory management fault in a multiple processor device |
US7685409B2 (en) | 2007-02-21 | 2010-03-23 | Qualcomm Incorporated | On-demand multi-thread multimedia processor |
US8789063B2 (en) | 2007-03-30 | 2014-07-22 | Microsoft Corporation | Master and subordinate operating system kernels for heterogeneous multiprocessor systems |
US8250254B2 (en) | 2007-07-31 | 2012-08-21 | Intel Corporation | Offloading input/output (I/O) virtualization operations to a processor |
US8245236B2 (en) | 2008-02-27 | 2012-08-14 | International Business Machines Corporation | Lock based moving of threads in a shared processor partitioning environment |
US20090282198A1 (en) | 2008-05-08 | 2009-11-12 | Texas Instruments Incorporated | Systems and methods for optimizing buffer sharing between cache-incoherent cores |
US8607020B2 (en) | 2008-06-06 | 2013-12-10 | International Business Machines Corporation | Shared memory partition data processing system with hypervisor managed paging |
US8504839B2 (en) * | 2008-10-27 | 2013-08-06 | Advanced Micro Devices, Inc. | Method, apparatus, and device for protecting against programming attacks and/or data corruption |
US8301863B2 (en) | 2008-11-17 | 2012-10-30 | International Business Machines Corporation | Recursive logical partition real memory map |
US8291414B2 (en) | 2008-12-11 | 2012-10-16 | International Business Machines Corporation | Shared resource service provisioning using a virtual machine manager |
US20100242014A1 (en) | 2009-03-17 | 2010-09-23 | Xiaohan Zhu | Symmetric multi-processor operating system for asymmetric multi-processor architecture |
US9152200B2 (en) | 2009-06-23 | 2015-10-06 | Hewlett-Packard Development Company, L.P. | Resource and power management using nested heterogeneous hypervisors |
US8479196B2 (en) | 2009-09-22 | 2013-07-02 | International Business Machines Corporation | Nested virtualization performance in a computer system |
US8443376B2 (en) | 2010-06-01 | 2013-05-14 | Microsoft Corporation | Hypervisor scheduler |
US20110320766A1 (en) | 2010-06-29 | 2011-12-29 | Youfeng Wu | Apparatus, method, and system for improving power, performance efficiency by coupling a first core type with a second core type |
US20120072638A1 (en) | 2010-09-16 | 2012-03-22 | Unisys Corp. | Single step processing of memory mapped accesses in a hypervisor |
US8307169B2 (en) | 2011-03-10 | 2012-11-06 | Safenet, Inc. | Protecting guest virtual machine memory |
JP5648544B2 (ja) | 2011-03-15 | 2015-01-07 | 富士通株式会社 | スケジューリングプログラム、および情報処理装置 |
US8984330B2 (en) * | 2011-03-28 | 2015-03-17 | Siemens Corporation | Fault-tolerant replication architecture |
US9043562B2 (en) | 2011-04-20 | 2015-05-26 | Microsoft Technology Licensing, Llc | Virtual machine trigger |
US8677360B2 (en) | 2011-05-12 | 2014-03-18 | Microsoft Corporation | Thread-related actions based on historical thread behaviors |
US20130013889A1 (en) * | 2011-07-06 | 2013-01-10 | Jaikumar Devaraj | Memory management unit using stream identifiers |
US9250969B2 (en) | 2011-08-30 | 2016-02-02 | At&T Intellectual Property I, L.P. | Tagging a copy of memory of a virtual machine with information for fetching of relevant portions of the memory |
US20140053272A1 (en) | 2012-08-20 | 2014-02-20 | Sandor Lukacs | Multilevel Introspection of Nested Virtual Machines |
US10437591B2 (en) * | 2013-02-26 | 2019-10-08 | Qualcomm Incorporated | Executing an operating system on processors having different instruction set architectures |
US9606818B2 (en) * | 2013-03-14 | 2017-03-28 | Qualcomm Incorporated | Systems and methods of executing multiple hypervisors using multiple sets of processors |
US9396012B2 (en) | 2013-03-14 | 2016-07-19 | Qualcomm Incorporated | Systems and methods of using a hypervisor with guest operating systems and virtual processors |
-
2013
- 2013-03-14 US US13/828,718 patent/US10114756B2/en active Active
-
2014
- 2014-03-11 CN CN201480013945.5A patent/CN105144122B/zh active Active
- 2014-03-11 KR KR1020157027789A patent/KR20150130382A/ko not_active Application Discontinuation
- 2014-03-11 JP JP2016501279A patent/JP6345231B2/ja not_active Expired - Fee Related
- 2014-03-11 WO PCT/US2014/023552 patent/WO2014159418A1/en active Application Filing
- 2014-03-11 EP EP14729747.7A patent/EP2972898B1/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2016515265A5 (ja) | ||
JP6345231B2 (ja) | 外部からプログラム可能なメモリ管理ユニット | |
JP2016507849A5 (ja) | ||
RU2012148582A (ru) | Команда для загрузки данных до заданной границы памяти, указанной командой | |
JP2016535373A5 (ja) | ||
JP2017516228A5 (ja) | ||
JP2015201216A5 (ja) | ||
JP2018538630A5 (ja) | ||
JP2018528515A5 (ja) | ||
GB2574956A (en) | Bypassing memory access for a load instruction using instruction address mapping | |
RU2012148399A (ru) | Сравнение и замена позиции таблицы dat | |
EP2936323B1 (en) | Speculative addressing using a virtual address-to-physical address page crossing buffer | |
JP2016505972A5 (ja) | ||
JP2016511470A5 (ja) | ||
JP2020531951A5 (ja) | ||
JP2016517992A5 (ja) | ||
JP2016513835A5 (ja) | ||
JP2015532748A5 (ja) | ||
JP2018537800A5 (ja) | ||
JP2018523235A5 (ja) | ||
JP2017504106A5 (ja) | ||
JP2016513836A5 (ja) | ||
JP2015527642A5 (ja) | ||
JP2017097633A5 (ja) | ||
JP2015165388A5 (ja) | 半導体装置 |