JP2017516228A - 自己書き換えコードのハードウェアサポートを提供する方法及び装置 - Google Patents
自己書き換えコードのハードウェアサポートを提供する方法及び装置 Download PDFInfo
- Publication number
- JP2017516228A JP2017516228A JP2016567579A JP2016567579A JP2017516228A JP 2017516228 A JP2017516228 A JP 2017516228A JP 2016567579 A JP2016567579 A JP 2016567579A JP 2016567579 A JP2016567579 A JP 2016567579A JP 2017516228 A JP2017516228 A JP 2017516228A
- Authority
- JP
- Japan
- Prior art keywords
- code
- guest
- cache
- hardware buffer
- processor
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/3017—Runtime instruction translation, e.g. macros
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
- G06F9/45525—Optimisation or modification within the same instruction set architecture, e.g. HP Dynamo
Abstract
Description
コードキャッシュにおける変換後コードの追跡
yの値は、PCTE.Tagに見出されるものと同じにすることができる。最大40bのアドレスに対応する大規模物理アドレス拡張(LPAE:Large Physical Address Extension)システムにおいて、yは39である。
Claims (20)
- メモリと、
ハードウェアバッファと、
プロセッサであって、
ゲストコードをネイティブコードに変換することと、
変換後ゲストコードを前記プロセッサのコードキャッシュ部に格納することと、
コードキャッシュにおける変換後コードの各位置を追跡するように構成された前記ハードウェアバッファを維持することであり、前記ハードウェアバッファが、前記コードキャッシュにおける変換後コードの各位置と関連付けられた前記メモリ中の各位置への各アクセスに基づいて更新される、維持することと、
前記ハードウェアバッファへのアクセス後、メモリ位置を書き換える要求を実行することと、
を行うように構成されたプロセッサと、
を備えた、装置。 - 前記メモリが、前記コードキャッシュに存在する変換後コードを追跡する前記ハードウェアバッファと関連付けられたテーブルを含む、請求項1に記載の装置。
- 前記ハードウェアバッファが、前記ハードウェアバッファと関連付けられた前記テーブルのキャッシュとして働くように構成されており、前記ハードウェアバッファが、前記ハードウェアバッファと関連付けられた前記テーブルのデータの部分集合を含む、請求項2に記載の装置。
- 前記プロセッサが、変換後ゲストコードを含む前記コードキャッシュにおける位置と関連付けられたメモリ中の位置を前記要求が書き換えることになる場合、例外を発生させるように構成された、請求項1に記載の装置。
- 前記プロセッサが、ゲストコード分岐に応答して例外を発生させるように構成された、請求項1に記載の装置。
- 前記要求が、自己書き換えコードによる格納である、請求項1に記載の装置。
- 前記要求が、直接メモリアクセス(DMA)書き込みである、請求項1に記載の装置。
- 前記プロセッサが、前記ハードウェアバッファを備えた、請求項1に記載の装置。
- メモリと、
ハードウェアバッファ及びコードキャッシュを備えたプロセッサであって、
ゲストコードをネイティブコードに変換することと、
変換後ゲストコードを前記プロセッサのコードキャッシュに格納することと、
コードキャッシュにおける変換後コードの各位置を追跡するように構成された前記ハードウェアバッファを維持することであり、前記ハードウェアバッファが、前記コードキャッシュにおける変換後コードの各位置と関連付けられた前記メモリ中の各位置への各アクセスに基づいて更新される、維持することと、
前記コードキャッシュに存在する変換後コードを追跡する前記ハードウェアバッファと関連付けられたテーブルを維持することであり、前記メモリが、前記ハードウェアバッファと関連付けられた前記テーブルを含む、維持することと、
前記ハードウェアバッファへのアクセス後、メモリ位置を書き換える要求を実行することと、
を行うように構成されたプロセッサと、
を備えた、システム。 - 前記ハードウェアバッファが、前記ハードウェアバッファと関連付けられた前記テーブルのキャッシュとして働くように構成されており、前記ハードウェアバッファが、前記ハードウェアバッファと関連付けられた前記テーブルのデータの部分集合を含む、請求項9に記載のシステム。
- 前記プロセッサが、変換後ゲストコードを含む前記コードキャッシュにおける位置と関連付けられたメモリ中の位置を前記要求が書き換えることになる場合、例外を発生させるように構成された、請求項9に記載の装置。
- 前記プロセッサが、ゲストコード分岐に応答して例外を発生させるように構成された、請求項9に記載の装置。
- 前記要求が、自己書き換えコードによる格納である、請求項9に記載の装置。
- 前記要求が、直接メモリアクセス(DMA)書き込みである、請求項9に記載の装置。
- ゲストコードを変換するシステムであって、
メモリと、
ハードウェアバッファ及びコードキャッシュを備えたプロセッサであって、
ゲストコードをネイティブコードに変換することと、
変換後ゲストコードを前記プロセッサのコードキャッシュに格納することと、
コードキャッシュにおける変換後コードの各位置を追跡するように構成された前記ハードウェアバッファを維持することであり、前記ハードウェアバッファが、前記コードキャッシュにおける変換後コードの各位置と関連付けられた前記メモリ中の各位置への各アクセスに基づいて更新され、前記ハードウェアバッファが、自己書き換えコードに応答して更新される、維持することと、
前記コードキャッシュに存在する変換後コードを追跡する前記ハードウェアバッファと関連付けられたテーブルを維持することであり、前記メモリが、前記ハードウェアバッファと関連付けられた前記テーブルを含む、維持することと、
前記ハードウェアバッファへのアクセス後、メモリ位置を書き換える要求を実行することと、
を行うように構成されたプロセッサと、
を備えた、システム。 - 前記ハードウェアバッファが、前記ハードウェアバッファと関連付けられた前記テーブルのキャッシュとして働くように構成されており、前記ハードウェアバッファが、前記ハードウェアバッファと関連付けられた前記テーブルのデータの部分集合を含む、請求項15に記載のシステム。
- 前記プロセッサが、変換後ゲストコードを含む前記コードキャッシュにおける位置と関連付けられたメモリ中の位置を前記要求が書き換えることになる場合、例外を発生させるように構成された、請求項15に記載のシステム。
- 前記プロセッサが、ゲストコード分岐に応答して例外を発生させるように構成された、請求項15に記載のシステム。
- 前記要求が、格納である、請求項15に記載のシステム。
- 前記要求が、直接メモリアクセス(DMA)書き込みである、請求項15に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461991951P | 2014-05-12 | 2014-05-12 | |
US61/991,951 | 2014-05-12 | ||
PCT/US2015/030411 WO2015175555A1 (en) | 2014-05-12 | 2015-05-12 | Method and apparatus for providing hardware support for self-modifying code |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017516228A true JP2017516228A (ja) | 2017-06-15 |
JP2017516228A5 JP2017516228A5 (ja) | 2018-06-21 |
Family
ID=54367921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016567579A Pending JP2017516228A (ja) | 2014-05-12 | 2015-05-12 | 自己書き換えコードのハードウェアサポートを提供する方法及び装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9946538B2 (ja) |
EP (1) | EP3143496B1 (ja) |
JP (1) | JP2017516228A (ja) |
KR (1) | KR101963725B1 (ja) |
CN (1) | CN106796506B (ja) |
WO (1) | WO2015175555A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9582322B2 (en) | 2013-03-15 | 2017-02-28 | Soft Machines Inc. | Method and apparatus to avoid deadlock during instruction scheduling using dynamic port remapping |
US9627038B2 (en) | 2013-03-15 | 2017-04-18 | Intel Corporation | Multiport memory cell having improved density area |
US20140281116A1 (en) | 2013-03-15 | 2014-09-18 | Soft Machines, Inc. | Method and Apparatus to Speed up the Load Access and Data Return Speed Path Using Early Lower Address Bits |
US9436476B2 (en) | 2013-03-15 | 2016-09-06 | Soft Machines Inc. | Method and apparatus for sorting elements in hardware structures |
CN104679480A (zh) * | 2013-11-27 | 2015-06-03 | 上海芯豪微电子有限公司 | 一种指令集转换系统和方法 |
JP2017516228A (ja) | 2014-05-12 | 2017-06-15 | インテル・コーポレーション | 自己書き換えコードのハードウェアサポートを提供する方法及び装置 |
JP6234640B2 (ja) * | 2015-05-28 | 2017-11-22 | 三菱電機株式会社 | シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム |
CN106919367B (zh) * | 2016-04-20 | 2019-05-07 | 上海兆芯集成电路有限公司 | 侦测自修正程序码的处理器与方法 |
CN106933538B (zh) * | 2016-04-20 | 2019-03-01 | 上海兆芯集成电路有限公司 | 侦测自修正程序码的处理器与方法 |
US9792216B1 (en) * | 2016-04-20 | 2017-10-17 | Via Alliance Semiconductor Co., Ltd. | System and method of determining memory ownership on cache line basis for detecting self-modifying code including code with instruction that overlaps cache line boundaries |
CN106933537B (zh) * | 2016-04-20 | 2019-03-08 | 上海兆芯集成电路有限公司 | 侦测自修正程序码的处理器与方法 |
US11193803B2 (en) * | 2018-02-02 | 2021-12-07 | Analog Devices International Unlimited Company | Measurement system |
CN109890082B (zh) * | 2019-03-08 | 2022-05-24 | 中国航空工业集团公司洛阳电光设备研究所 | 一种时间触发的tt帧报文传输方法 |
CN114416450B (zh) * | 2022-01-18 | 2022-09-27 | 深圳市百泰实业股份有限公司 | 一种pcba生产测试管理方法 |
Family Cites Families (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5053952A (en) | 1987-06-05 | 1991-10-01 | Wisc Technologies, Inc. | Stack-memory-based writable instruction set computer having a single data bus |
US5630157A (en) | 1991-06-13 | 1997-05-13 | International Business Machines Corporation | Computer organization for multiple and out-of-order execution of condition code testing and setting instructions |
US5265260A (en) | 1991-06-26 | 1993-11-23 | International Business Machines Corporation | High performance sort hardware for a database accelerator in a data processing system |
US5539911A (en) | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
US5826055A (en) | 1991-07-08 | 1998-10-20 | Seiko Epson Corporation | System and method for retiring instructions in a superscalar microprocessor |
JP3637920B2 (ja) | 1992-05-01 | 2005-04-13 | セイコーエプソン株式会社 | スーパースケーラマイクロプロセサに於て命令をリタイアさせるシステム及び方法 |
IL110181A (en) | 1994-06-30 | 1998-02-08 | Softchip Israel Ltd | Install microprocessor and peripherals |
US5649136A (en) | 1995-02-14 | 1997-07-15 | Hal Computer Systems, Inc. | Processor structure and method for maintaining and restoring precise state at any instruction boundary |
US5751982A (en) | 1995-03-31 | 1998-05-12 | Apple Computer, Inc. | Software emulation system with dynamic translation of emulated instructions for increased processing speed |
US5870584A (en) | 1995-09-20 | 1999-02-09 | Fore Systems, Inc. | Method and apparatus for sorting elements |
US5826073A (en) * | 1995-10-06 | 1998-10-20 | Advanced Micro Devices, Inc. | Self-modifying code handling system |
US5784638A (en) | 1996-02-22 | 1998-07-21 | International Business Machines Corporation | Computer system supporting control transfers between two architectures |
US5892934A (en) | 1996-04-02 | 1999-04-06 | Advanced Micro Devices, Inc. | Microprocessor configured to detect a branch to a DSP routine and to direct a DSP to execute said routine |
EP0877981B1 (en) | 1996-11-04 | 2004-01-07 | Koninklijke Philips Electronics N.V. | Processing device, reads instructions in memory |
US5905876A (en) | 1996-12-16 | 1999-05-18 | Intel Corporation | Queue ordering for memory and I/O transactions in a multiple concurrent transaction computer system |
US6049868A (en) | 1997-06-25 | 2000-04-11 | Sun Microsystems, Inc. | Apparatus for delivering precise traps and interrupts in an out-of-order processor |
US6052777A (en) | 1997-06-25 | 2000-04-18 | Sun Microsystems, Inc. | Method for delivering precise traps and interrupts in an out-of-order processor |
JPH1124929A (ja) | 1997-06-30 | 1999-01-29 | Sony Corp | 演算処理装置およびその方法 |
US5870575A (en) | 1997-09-22 | 1999-02-09 | International Business Machines Corporation | Indirect unconditional branches in data processing system emulation mode |
US6061785A (en) | 1998-02-17 | 2000-05-09 | International Business Machines Corporation | Data processing system having an apparatus for out-of-order register operations and method therefor |
US6167508A (en) | 1998-06-02 | 2000-12-26 | Compaq Computer Corporation | Register scoreboard logic with register read availability signal to reduce instruction issue arbitration latency |
US6412067B1 (en) | 1998-08-11 | 2002-06-25 | Intel Corporation | Backing out of a processor architectural state |
US8127121B2 (en) * | 1999-01-28 | 2012-02-28 | Ati Technologies Ulc | Apparatus for executing programs for a first computer architechture on a computer of a second architechture |
US6385676B1 (en) | 1999-07-12 | 2002-05-07 | Hewlett-Packard Company | Coherent ordering queue for computer system |
US6557095B1 (en) | 1999-12-27 | 2003-04-29 | Intel Corporation | Scheduling operations using a dependency matrix |
US6615300B1 (en) | 2000-06-19 | 2003-09-02 | Transmeta Corporation | Fast look-up of indirect branch destination in a dynamic translation system |
US6711672B1 (en) | 2000-09-22 | 2004-03-23 | Vmware, Inc. | Method and system for implementing subroutine calls and returns in binary translation sub-systems of computers |
US6826681B2 (en) | 2001-06-18 | 2004-11-30 | Mips Technologies, Inc. | Instruction specified register value saving in allocated caller stack or not yet allocated callee stack |
US6851011B2 (en) | 2001-08-09 | 2005-02-01 | Stmicroelectronics, Inc. | Reordering hardware for mass storage command queue |
US6964043B2 (en) | 2001-10-30 | 2005-11-08 | Intel Corporation | Method, apparatus, and system to optimize frequently executed code and to use compiler transformation and hardware support to handle infrequently executed code |
US20030115578A1 (en) * | 2001-12-18 | 2003-06-19 | Igor Liokumovich | PC platform simulation system employing efficient memory access simulation in a direct execution environment |
US6813704B1 (en) | 2001-12-20 | 2004-11-02 | Lsi Logic Corporation | Changing instruction order by reassigning only tags in order tag field in instruction queue |
US6898699B2 (en) | 2001-12-21 | 2005-05-24 | Intel Corporation | Return address stack including speculative return address buffer with back pointers |
US7032101B2 (en) | 2002-02-26 | 2006-04-18 | International Business Machines Corporation | Method and apparatus for prioritized instruction issue queue in a processor |
US7113510B2 (en) | 2002-03-01 | 2006-09-26 | Xinming Allen Lin | Hardware self-sorting scheduling queue |
US6779092B2 (en) | 2002-05-15 | 2004-08-17 | Hewlett-Packard Development Company, L.P. | Reordering requests for access to subdivided resource |
US7127592B2 (en) | 2003-01-08 | 2006-10-24 | Sun Microsystems, Inc. | Method and apparatus for dynamically allocating registers in a windowed architecture |
GB0309056D0 (en) | 2003-04-22 | 2003-05-28 | Transitive Technologies Ltd | Block translation optimizations for program code conversion |
US7536682B2 (en) | 2003-04-22 | 2009-05-19 | International Business Machines Corporation | Method and apparatus for performing interpreter optimizations during program code conversion |
JP4186768B2 (ja) | 2003-09-16 | 2008-11-26 | 沖電気工業株式会社 | マルチポート半導体メモリ |
US7096345B1 (en) | 2003-09-26 | 2006-08-22 | Marvell International Ltd. | Data processing system with bypass reorder buffer having non-bypassable locations and combined load/store arithmetic logic unit and processing method thereof |
US7290253B1 (en) | 2003-09-30 | 2007-10-30 | Vmware, Inc. | Prediction mechanism for subroutine returns in binary translation sub-systems of computers |
US7373637B2 (en) | 2003-09-30 | 2008-05-13 | International Business Machines Corporation | Method and apparatus for counting instruction and memory location ranges |
US7315935B1 (en) | 2003-10-06 | 2008-01-01 | Advanced Micro Devices, Inc. | Apparatus and method for port arbitration in a register file on the basis of functional unit issue slots |
US7441101B1 (en) | 2003-12-10 | 2008-10-21 | Cisco Technology, Inc. | Thread-aware instruction fetching in a multithreaded embedded processor |
US7434031B1 (en) | 2004-04-12 | 2008-10-07 | Sun Microsystems, Inc. | Execution displacement read-write alias prediction |
US8443171B2 (en) | 2004-07-30 | 2013-05-14 | Hewlett-Packard Development Company, L.P. | Run-time updating of prediction hint instructions |
US7647589B1 (en) * | 2005-02-07 | 2010-01-12 | Parallels Software International, Inc. | Methods and systems for safe execution of guest code in virtual machine context |
US8195922B2 (en) | 2005-03-18 | 2012-06-05 | Marvell World Trade, Ltd. | System for dynamically allocating processing time to multiple threads |
US7461237B2 (en) | 2005-04-20 | 2008-12-02 | Sun Microsystems, Inc. | Method and apparatus for suppressing duplicative prefetches for branch target cache lines |
JP4912016B2 (ja) | 2005-05-23 | 2012-04-04 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置 |
US20070033385A1 (en) | 2005-08-02 | 2007-02-08 | Advanced Micro Devices, Inc. | Call return stack way prediction repair |
US7483332B2 (en) | 2005-08-11 | 2009-01-27 | Texas Instruments Incorporated | SRAM cell using separate read and write circuitry |
US8024522B1 (en) | 2005-09-28 | 2011-09-20 | Oracle America, Inc. | Memory ordering queue/versioning cache circuit |
US20070186081A1 (en) | 2006-02-06 | 2007-08-09 | Shailender Chaudhry | Supporting out-of-order issue in an execute-ahead processor |
JPWO2007091541A1 (ja) | 2006-02-08 | 2009-07-02 | 株式会社ルネサステクノロジ | 半導体記憶装置 |
US7478190B2 (en) | 2006-02-10 | 2009-01-13 | University Of Utah Technology Commercialization Office | Microarchitectural wire management for performance and power in partitioned architectures |
US20080126771A1 (en) | 2006-07-25 | 2008-05-29 | Lei Chen | Branch Target Extension for an Instruction Cache |
US7716460B2 (en) | 2006-09-29 | 2010-05-11 | Qualcomm Incorporated | Effective use of a BHT in processor having variable length instruction set execution modes |
EP2122461A4 (en) | 2006-11-14 | 2010-03-24 | Soft Machines Inc | DEVICE AND METHOD FOR PROCESSING COMMUNICATIONS IN A MULTITHREAD ARCHITECTURE WITH CONTEXT CHANGES |
US7721076B2 (en) | 2006-12-18 | 2010-05-18 | Intel Corporation | Tracking an oldest processor event using information stored in a register and queue entry |
US7783869B2 (en) | 2006-12-19 | 2010-08-24 | Arm Limited | Accessing branch predictions ahead of instruction fetching |
TW200833002A (en) | 2007-01-31 | 2008-08-01 | Univ Nat Yunlin Sci & Tech | Distributed switching circuit having fairness |
US7813163B2 (en) | 2007-09-05 | 2010-10-12 | International Business Machines Corporation | Single-ended read and differential write scheme |
TWI346338B (en) | 2007-10-23 | 2011-08-01 | Nat Univ Tsing Hua | Access unit for a static random accesss memory |
US8782384B2 (en) | 2007-12-20 | 2014-07-15 | Advanced Micro Devices, Inc. | Branch history with polymorphic indirect branch information |
US7945764B2 (en) | 2008-01-11 | 2011-05-17 | International Business Machines Corporation | Processing unit incorporating multirate execution unit |
US8015362B2 (en) * | 2008-02-15 | 2011-09-06 | International Business Machines Corporation | Method and system for handling cache coherency for self-modifying code |
TWI368165B (en) | 2008-08-13 | 2012-07-11 | Faraday Tech Corp | Processor and method for recovering global history shift register and return address stack thereof |
GB2463278B (en) | 2008-09-05 | 2012-05-16 | Advanced Risc Mach Ltd | Scheduling control within a data processing system |
US7848131B2 (en) | 2008-10-19 | 2010-12-07 | Juhan Kim | High speed ferroelectric random access memory |
US8074060B2 (en) | 2008-11-25 | 2011-12-06 | Via Technologies, Inc. | Out-of-order execution microprocessor that selectively initiates instruction retirement early |
US8219784B2 (en) | 2008-12-09 | 2012-07-10 | International Business Machines Corporation | Assigning and pre-decoding group ID and tag ID prior to dispatching instructions in out-of-order processor |
US8078854B2 (en) | 2008-12-12 | 2011-12-13 | Oracle America, Inc. | Using register rename maps to facilitate precise exception semantics |
US8332854B2 (en) | 2009-05-19 | 2012-12-11 | Microsoft Corporation | Virtualized thread scheduling for hardware thread optimization based on hardware resource parameter summaries of instruction blocks in execution groups |
US8799879B2 (en) * | 2009-06-30 | 2014-08-05 | Oracle America, Inc. | Method and apparatus for protecting translated code in a virtual machine |
US8281110B2 (en) | 2009-07-15 | 2012-10-02 | Via Technologies, Inc. | Out-of-order microprocessor with separate branch information circular queue table tagged by branch instructions in reorder buffer to reduce unnecessary space in buffer |
US8217813B2 (en) | 2010-04-29 | 2012-07-10 | Advanced Micro Devices, Inc. | System and method for low-latency data compression/decompression |
CN102262590B (zh) | 2010-05-31 | 2014-03-26 | 国际商业机器公司 | 一种用于对硬件加速器的请求队列重排的方法和系统 |
US8959094B2 (en) | 2010-05-28 | 2015-02-17 | Oracle International Corporation | Early return of partial sort results in a database system |
US20110320784A1 (en) | 2010-06-24 | 2011-12-29 | International Business Machines Corporation | Verification of processor architectures allowing for self modifying code |
US20120117335A1 (en) | 2010-11-10 | 2012-05-10 | Advanced Micro Devices, Inc. | Load ordering queue |
KR101612594B1 (ko) * | 2011-01-27 | 2016-04-14 | 소프트 머신즈, 인크. | 프로세서의 변환 룩 어사이드 버퍼를 이용하는 게스트 명령-네이티브 명령 레인지 기반 매핑 |
WO2012103367A2 (en) * | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Guest to native block address mappings and management of native code storage |
US8516197B2 (en) * | 2011-02-11 | 2013-08-20 | International Business Machines Corporation | Write-through cache optimized for dependence-free parallel regions |
US9842005B2 (en) | 2011-03-25 | 2017-12-12 | Intel Corporation | Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines |
US9690583B2 (en) | 2011-10-03 | 2017-06-27 | International Business Machines Corporation | Exploiting an architected list-use operand indication in a computer system operand resource pool |
US8984200B2 (en) * | 2012-08-21 | 2015-03-17 | Lenovo (Singapore) Pte. Ltd. | Task scheduling in big and little cores |
US10140138B2 (en) | 2013-03-15 | 2018-11-27 | Intel Corporation | Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation |
US9582322B2 (en) | 2013-03-15 | 2017-02-28 | Soft Machines Inc. | Method and apparatus to avoid deadlock during instruction scheduling using dynamic port remapping |
US9436476B2 (en) | 2013-03-15 | 2016-09-06 | Soft Machines Inc. | Method and apparatus for sorting elements in hardware structures |
CN109358948B (zh) | 2013-03-15 | 2022-03-25 | 英特尔公司 | 用于支持推测的访客返回地址栈仿真的方法和装置 |
US20140281116A1 (en) | 2013-03-15 | 2014-09-18 | Soft Machines, Inc. | Method and Apparatus to Speed up the Load Access and Data Return Speed Path Using Early Lower Address Bits |
US9627038B2 (en) | 2013-03-15 | 2017-04-18 | Intel Corporation | Multiport memory cell having improved density area |
JP2017516228A (ja) | 2014-05-12 | 2017-06-15 | インテル・コーポレーション | 自己書き換えコードのハードウェアサポートを提供する方法及び装置 |
-
2015
- 2015-05-12 JP JP2016567579A patent/JP2017516228A/ja active Pending
- 2015-05-12 WO PCT/US2015/030411 patent/WO2015175555A1/en active Application Filing
- 2015-05-12 US US14/710,372 patent/US9946538B2/en active Active
- 2015-05-12 EP EP15792326.9A patent/EP3143496B1/en active Active
- 2015-05-12 CN CN201580025114.4A patent/CN106796506B/zh not_active Expired - Fee Related
- 2015-05-12 KR KR1020167031653A patent/KR101963725B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
US20150324213A1 (en) | 2015-11-12 |
KR101963725B1 (ko) | 2019-04-01 |
CN106796506B (zh) | 2019-09-27 |
EP3143496A1 (en) | 2017-03-22 |
US9946538B2 (en) | 2018-04-17 |
WO2015175555A1 (en) | 2015-11-19 |
EP3143496A4 (en) | 2018-01-24 |
CN106796506A (zh) | 2017-05-31 |
KR20160145696A (ko) | 2016-12-20 |
EP3143496B1 (en) | 2021-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2017516228A (ja) | 自己書き換えコードのハードウェアサポートを提供する方法及び装置 | |
US9858192B2 (en) | Cross-page prefetching method, apparatus, and system | |
US10802987B2 (en) | Computer processor employing cache memory storing backless cache lines | |
KR102448124B1 (ko) | 가상 주소들을 사용하여 액세스된 캐시 | |
KR101587361B1 (ko) | 다수의 순차적 어드레스 변환들을 위한 통합된 tlb 구조 | |
US9645941B2 (en) | Collapsed address translation with multiple page sizes | |
US10884751B2 (en) | Method and apparatus for virtualizing the micro-op cache | |
US9268694B2 (en) | Maintenance of cache and tags in a translation lookaside buffer | |
JP2018504694A5 (ja) | ||
US20150089150A1 (en) | Translation Bypass In Multi-Stage Address Translation | |
JP2020529656A (ja) | アドレス変換キャッシュ | |
JP7443344B2 (ja) | 外部メモリベースのトランスレーションルックアサイドバッファ | |
US11403222B2 (en) | Cache structure using a logical directory | |
CN105446898B (zh) | 用于数据处理的装置及方法 | |
US11474953B2 (en) | Configuration cache for the ARM SMMUv3 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20170512 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170524 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180509 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180509 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190308 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190416 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20191112 |