AU2003232331A1 - Data processing system having external and internal instruction sets - Google Patents

Data processing system having external and internal instruction sets

Info

Publication number
AU2003232331A1
AU2003232331A1 AU2003232331A AU2003232331A AU2003232331A1 AU 2003232331 A1 AU2003232331 A1 AU 2003232331A1 AU 2003232331 A AU2003232331 A AU 2003232331A AU 2003232331 A AU2003232331 A AU 2003232331A AU 2003232331 A1 AU2003232331 A1 AU 2003232331A1
Authority
AU
Australia
Prior art keywords
external
data processing
processing system
instruction sets
internal instruction
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.)
Abandoned
Application number
AU2003232331A
Inventor
Krisztian Flautner
Andrew Christopher Rose
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.)
ARM Ltd
Original Assignee
ARM Ltd
Advanced Risc Machines Ltd
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 ARM Ltd, Advanced Risc Machines Ltd filed Critical ARM Ltd
Publication of AU2003232331A1 publication Critical patent/AU2003232331A1/en
Abandoned legal-status Critical Current

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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • G06F9/30174Runtime instruction translation, e.g. macros for non-native instruction set, e.g. Javabyte, legacy code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3808Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • G06F9/3844Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)
AU2003232331A 2002-09-20 2003-05-15 Data processing system having external and internal instruction sets Abandoned AU2003232331A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0221916A GB2393274B (en) 2002-09-20 2002-09-20 Data processing system having an external instruction set and an internal instruction set
GB0221916.0 2002-09-20
PCT/GB2003/002092 WO2004027601A1 (en) 2002-09-20 2003-05-15 Data processing system having external and internal instruction sets

Publications (1)

Publication Number Publication Date
AU2003232331A1 true AU2003232331A1 (en) 2004-04-08

Family

ID=9944499

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2003232331A Abandoned AU2003232331A1 (en) 2002-09-20 2003-05-15 Data processing system having external and internal instruction sets

Country Status (13)

Country Link
US (1) US7406585B2 (en)
EP (1) EP1540464B1 (en)
JP (1) JP3820261B2 (en)
KR (1) KR101086801B1 (en)
CN (1) CN1682181B (en)
AU (1) AU2003232331A1 (en)
DE (1) DE60308201T2 (en)
GB (1) GB2393274B (en)
IL (1) IL165987A (en)
MY (1) MY127780A (en)
RU (1) RU2005107713A (en)
TW (1) TWI263169B (en)
WO (1) WO2004027601A1 (en)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7805710B2 (en) 2003-07-15 2010-09-28 International Business Machines Corporation Shared code caching for program code conversion
GB0316532D0 (en) * 2003-07-15 2003-08-20 Transitive Ltd Method and apparatus for partitioning code in program code conversion
US7636856B2 (en) * 2004-12-06 2009-12-22 Microsoft Corporation Proactive computer malware protection through dynamic translation
GB2424092A (en) * 2005-03-11 2006-09-13 Transitive Ltd Switching between code translation and execution using a trampoline
US7769983B2 (en) * 2005-05-18 2010-08-03 Qualcomm Incorporated Caching instructions for a multiple-state processor
US7711927B2 (en) * 2007-03-14 2010-05-04 Qualcomm Incorporated System, method and software to preload instructions from an instruction set other than one currently executing
US9672019B2 (en) 2008-11-24 2017-06-06 Intel Corporation Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads
US10621092B2 (en) 2008-11-24 2020-04-14 Intel Corporation Merging level cache and data cache units having indicator bits related to speculative execution
US8533859B2 (en) * 2009-04-13 2013-09-10 Aventyn, Inc. System and method for software protection and secure software distribution
US8775153B2 (en) 2009-12-23 2014-07-08 Intel Corporation Transitioning from source instruction set architecture (ISA) code to translated code in a partial emulation environment
US9201652B2 (en) 2011-05-03 2015-12-01 Qualcomm Incorporated Methods and apparatus for storage and translation of entropy encoded software embedded within a memory hierarchy
US9092236B1 (en) * 2011-06-05 2015-07-28 Yong-Kyu Jung Adaptive instruction prefetching and fetching memory system apparatus and method for microprocessor system
US10120692B2 (en) 2011-07-28 2018-11-06 Qualcomm Incorporated Methods and apparatus for storage and translation of an entropy encoded instruction sequence to executable form
WO2013048468A1 (en) 2011-09-30 2013-04-04 Intel Corporation Instruction and logic to perform dynamic binary translation
WO2013104107A1 (en) * 2012-01-10 2013-07-18 Intel Corporation Isa bridging with callback
US10146545B2 (en) 2012-03-13 2018-12-04 Nvidia Corporation Translation address cache for a microprocessor
US9880846B2 (en) 2012-04-11 2018-01-30 Nvidia Corporation Improving hit rate of code translation redirection table with replacement strategy based on usage history table of evicted entries
CN103377033B (en) * 2012-04-12 2016-01-13 无锡江南计算技术研究所 Arithmetic core and instruction management method thereof
US10241810B2 (en) 2012-05-18 2019-03-26 Nvidia Corporation Instruction-optimizing processor with branch-count table in hardware
US8856769B2 (en) * 2012-10-23 2014-10-07 Yong-Kyu Jung Adaptive instruction prefetching and fetching memory system apparatus and method for microprocessor system
US20140189310A1 (en) 2012-12-27 2014-07-03 Nvidia Corporation Fault detection in instruction translations
US10108424B2 (en) 2013-03-14 2018-10-23 Nvidia Corporation Profiling code portions to generate translations
US9891936B2 (en) 2013-09-27 2018-02-13 Intel Corporation Method and apparatus for page-level monitoring
CN104679480A (en) * 2013-11-27 2015-06-03 上海芯豪微电子有限公司 Instruction set transition system and method
CN104679481B (en) * 2013-11-27 2020-04-28 上海芯豪微电子有限公司 Instruction set conversion system and method
CN104915180B (en) * 2014-03-10 2017-12-22 华为技术有限公司 A kind of method and apparatus of data manipulation
US10346168B2 (en) 2015-06-26 2019-07-09 Microsoft Technology Licensing, Llc Decoupled processor instruction window and operand buffer
US20160378488A1 (en) * 2015-06-26 2016-12-29 Microsoft Technology Licensing, Llc Access to target address
US11755484B2 (en) 2015-06-26 2023-09-12 Microsoft Technology Licensing, Llc Instruction block allocation
US10120688B2 (en) * 2016-11-15 2018-11-06 Andes Technology Corporation Data processing system and method for executing block call and block return instructions
CN108988931B (en) * 2018-06-26 2020-10-09 上海卫星工程研究所 Satellite measurement and control coprocessor
US10958670B2 (en) 2018-11-06 2021-03-23 Bank Of America Corporation Processing system for providing console access to a cyber range virtual environment
US10924481B2 (en) 2018-11-06 2021-02-16 Bank Of America Corporation Processing system for providing console access to a cyber range virtual environment
US10901878B2 (en) 2018-12-19 2021-01-26 International Business Machines Corporation Reduction of pseudo-random test case generation overhead
US10972789B2 (en) * 2019-06-03 2021-04-06 At&T Intellectual Property I, L.P. Methods, systems, and devices for providing service differentiation for different types of frames for video content
US11698789B2 (en) 2020-10-12 2023-07-11 Microsoft Technology Licensing, Llc Restoring speculative history used for making speculative predictions for instructions processed in a processor employing control independence techniques

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US66081A (en) * 1867-06-25 Improvement in chucks
DE69130588T2 (en) * 1990-05-29 1999-05-27 Nat Semiconductor Corp Partially decoded instruction cache and method therefor
US5249286A (en) * 1990-05-29 1993-09-28 National Semiconductor Corporation Selectively locking memory locations within a microprocessor's on-chip cache
US5560013A (en) * 1994-12-06 1996-09-24 International Business Machines Corporation Method of using a target processor to execute programs of a source architecture that uses multiple address spaces
US5742802A (en) * 1996-02-16 1998-04-21 International Business Machines Corporation Method and system for efficiently mapping guest instruction in an emulation assist unit
US6711667B1 (en) * 1996-06-28 2004-03-23 Legerity, Inc. Microprocessor configured to translate instructions from one instruction set to another, and to store the translated instructions
US6012125A (en) * 1997-06-20 2000-01-04 Advanced Micro Devices, Inc. Superscalar microprocessor including a decoded instruction cache configured to receive partially decoded instructions
US6216206B1 (en) * 1997-12-16 2001-04-10 Intel Corporation Trace victim cache
US6112280A (en) * 1998-01-06 2000-08-29 Hewlett-Packard Company Method and apparatus for distinct instruction pointer storage in a partitioned cache memory
US6233678B1 (en) * 1998-11-05 2001-05-15 Hewlett-Packard Company Method and apparatus for profiling of non-instrumented programs and dynamic processing of profile data
US6223254B1 (en) * 1998-12-04 2001-04-24 Stmicroelectronics, Inc. Parcel cache
GB2348305A (en) * 1999-03-24 2000-09-27 Int Computers Ltd Instruction execution mechanism
US6363336B1 (en) * 1999-10-13 2002-03-26 Transmeta Corporation Fine grain translation discrimination
US6351802B1 (en) * 1999-12-03 2002-02-26 Intel Corporation Method and apparatus for constructing a pre-scheduled instruction cache
US20020066081A1 (en) * 2000-02-09 2002-05-30 Evelyn Duesterwald Speculative caching scheme for fast emulation through statically predicted execution traces in a caching dynamic translator
US6718440B2 (en) * 2001-09-28 2004-04-06 Intel Corporation Memory access latency hiding with hint buffer
US6920550B2 (en) * 2001-11-15 2005-07-19 Hewlett-Packard Development Company, L.P. System and method for decoding and executing program binaries

Also Published As

Publication number Publication date
US20040059897A1 (en) 2004-03-25
GB2393274B (en) 2006-03-15
DE60308201T2 (en) 2007-08-23
GB2393274A (en) 2004-03-24
EP1540464A1 (en) 2005-06-15
KR101086801B1 (en) 2011-11-25
US7406585B2 (en) 2008-07-29
TWI263169B (en) 2006-10-01
KR20050084558A (en) 2005-08-26
CN1682181A (en) 2005-10-12
IL165987A0 (en) 2006-01-15
CN1682181B (en) 2010-05-26
EP1540464B1 (en) 2006-09-06
RU2005107713A (en) 2005-11-20
TW200410143A (en) 2004-06-16
JP2005539321A (en) 2005-12-22
IL165987A (en) 2010-05-31
GB0221916D0 (en) 2002-10-30
WO2004027601A1 (en) 2004-04-01
DE60308201D1 (en) 2006-10-19
MY127780A (en) 2006-12-29
JP3820261B2 (en) 2006-09-13

Similar Documents

Publication Publication Date Title
AU2003232331A1 (en) Data processing system having external and internal instruction sets
AU2003225300A1 (en) Data processing system having multiple register contexts and method therefor
AU2003250498A1 (en) Processing application data
AU2002365552A1 (en) Serial data capture and processing
AU2003260323A1 (en) Data processing method and device
AU2003302050A1 (en) Methods and systems for sharing data
AU2003282504A1 (en) System for processing and organizing pharmacy data
AU2003220995A1 (en) Data processing system with peripheral access protection and method therefor
AU2003248055A1 (en) Data processing device
AU2003273062A1 (en) Data processing device
AU2003261299A1 (en) Systems and methods for processing benefits
AU2002366404A1 (en) Data processing system
AU2003257973A1 (en) Data capture and management system
AU2003272931A1 (en) System development method and data processing system
AU2003283355A1 (en) Information processing systems configured and manipulated under an application framework
AU2003260869A1 (en) Data processing system and method of operation
AU2003251057A1 (en) Data processing systems
AU2003264380A1 (en) Data processing device
AU2003278943A1 (en) Systems and methods for general purpose data modification
AU2003242391A1 (en) Information processing system
AU2003214816A1 (en) Method and system for providing secure access to applications
AU2003301386A1 (en) Data processing device
AU2003256031A1 (en) Information handling and processing
AU2002366134A1 (en) Data processor and data processing method
AU2003216617A1 (en) Conditional access system and apparatus

Legal Events

Date Code Title Description
MK6 Application lapsed section 142(2)(f)/reg. 8.3(3) - pct applic. not entering national phase