WO2010129154A3 - Address translation trace message generation for debug - Google Patents

Address translation trace message generation for debug Download PDF

Info

Publication number
WO2010129154A3
WO2010129154A3 PCT/US2010/031251 US2010031251W WO2010129154A3 WO 2010129154 A3 WO2010129154 A3 WO 2010129154A3 US 2010031251 W US2010031251 W US 2010031251W WO 2010129154 A3 WO2010129154 A3 WO 2010129154A3
Authority
WO
WIPO (PCT)
Prior art keywords
address translation
debug
message generation
trace
module
Prior art date
Application number
PCT/US2010/031251
Other languages
French (fr)
Other versions
WO2010129154A2 (en
Inventor
William C. Moyer
Richard G. Collins
Original Assignee
Freescale Semiconductor 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 Freescale Semiconductor Inc. filed Critical Freescale Semiconductor Inc.
Priority to CN201080016420.9A priority Critical patent/CN102395949B/en
Priority to KR1020117026210A priority patent/KR101661499B1/en
Publication of WO2010129154A2 publication Critical patent/WO2010129154A2/en
Publication of WO2010129154A3 publication Critical patent/WO2010129154A3/en

Links

Classifications

    • 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
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter

Abstract

A data processing system (10) and method generates debug messages by permitting an external debug tool (36) to have real-time trace functionality. A data processor executes a plurality of data processing instructions and uses a memory (30) for information storage. Debug module (26) generates debug messages including address translation trace messages. A memory management unit (16) has address translation logic for implementing address translation to translate addresses between virtual and physical forms. The debug module includes message generation module (64) that is coupled to the memory management unit for receiving notice when one or more address translation mappings are modified. The message generation module generates an address translation trace message in response to a detection of a modification of an address translation mapping occurs and provides the address translation trace message external to the debug module.
PCT/US2010/031251 2009-05-05 2010-04-15 Address translation trace message generation for debug WO2010129154A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201080016420.9A CN102395949B (en) 2009-05-05 2010-04-15 Address translation trace message generation for debug
KR1020117026210A KR101661499B1 (en) 2009-05-05 2010-04-15 Address translation trace message generation for debug

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/435,723 2009-05-05
US12/435,723 US8438547B2 (en) 2009-05-05 2009-05-05 Address translation trace message generation for debug

Publications (2)

Publication Number Publication Date
WO2010129154A2 WO2010129154A2 (en) 2010-11-11
WO2010129154A3 true WO2010129154A3 (en) 2011-01-13

Family

ID=43050691

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2010/031251 WO2010129154A2 (en) 2009-05-05 2010-04-15 Address translation trace message generation for debug

Country Status (5)

Country Link
US (1) US8438547B2 (en)
KR (1) KR101661499B1 (en)
CN (1) CN102395949B (en)
TW (1) TWI502341B (en)
WO (1) WO2010129154A2 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589738B2 (en) * 2009-05-05 2013-11-19 Freescale Semiconductor, Inc. Program trace message generation for page crossing events for debug
US8726244B2 (en) * 2011-11-09 2014-05-13 Mediatek Singapore Pte. Ltd. Software breakpoint handling by eliminating instruction replacement and execution under certain conditions
US9003375B2 (en) * 2011-12-30 2015-04-07 Intel Corporation Optional logging of debug activities in a real time instruction tracing log
US9262163B2 (en) 2012-12-29 2016-02-16 Intel Corporation Real time instruction trace processors, methods, and systems
CN104133780B (en) 2013-05-02 2017-04-05 华为技术有限公司 A kind of cross-page forecasting method, apparatus and system
US9946548B2 (en) * 2015-06-26 2018-04-17 Microsoft Technology Licensing, Llc Age-based management of instruction blocks in a processor instruction window
US10346168B2 (en) 2015-06-26 2019-07-09 Microsoft Technology Licensing, Llc Decoupled processor instruction window and operand buffer
US10042734B2 (en) * 2016-05-09 2018-08-07 Sap Se Context tracing for software logging
GB2551574B (en) * 2016-06-24 2019-11-27 Advanced Risc Mach Ltd An apparatus and method for generating and processing a trace stream indicative of instruction execution by processing circuitry
US9965375B2 (en) * 2016-06-28 2018-05-08 Intel Corporation Virtualizing precise event based sampling
US10331446B2 (en) * 2017-05-23 2019-06-25 International Business Machines Corporation Generating and verifying hardware instruction traces including memory data contents
WO2021122066A1 (en) * 2019-12-16 2021-06-24 Commsolid Gmbh A trace handler module system and a method using said system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5842225A (en) * 1995-02-27 1998-11-24 Sun Microsystems, Inc. Method and apparatus for implementing non-faulting load instruction
US6769076B1 (en) * 2000-02-07 2004-07-27 Freescale Semiconductor, Inc. Real-time processor debug system
US20060036830A1 (en) * 2004-07-31 2006-02-16 Dinechin Christophe De Method for monitoring access to virtual memory pages
US7134116B1 (en) * 2001-04-30 2006-11-07 Mips Technologies, Inc. External trace synchronization via periodic sampling

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5630049A (en) * 1994-11-30 1997-05-13 Digital Equipment Corporation Method and apparatus for testing software on a computer network
US5822588A (en) * 1995-06-09 1998-10-13 Sun Microsystem, Inc. System and method for checking the use of synchronization locks in a multi-threaded target program
US5996092A (en) * 1996-12-05 1999-11-30 International Business Machines Corporation System and method for tracing program execution within a processor before and after a triggering event
US5913923A (en) * 1996-12-06 1999-06-22 National Semiconductor Corporation Multiple bus master computer system employing a shared address translation unit
US6275868B1 (en) * 1997-03-12 2001-08-14 Microsoft Corporation Script Engine interface for multiple languages
US6167536A (en) * 1997-04-08 2000-12-26 Advanced Micro Devices, Inc. Trace cache for a microprocessor-based device
US6009270A (en) * 1997-04-08 1999-12-28 Advanced Micro Devices, Inc. Trace synchronization in a processor
US6189140B1 (en) * 1997-04-08 2001-02-13 Advanced Micro Devices, Inc. Debug interface including logic generating handshake signals between a processor, an input/output port, and a trace logic
US6282701B1 (en) * 1997-07-31 2001-08-28 Mutek Solutions, Ltd. System and method for monitoring and analyzing the execution of computer programs
US6101524A (en) * 1997-10-23 2000-08-08 International Business Machines Corporation Deterministic replay of multithreaded applications
US6145100A (en) * 1998-03-04 2000-11-07 Advanced Micro Devices, Inc. Debug interface including timing synchronization logic
US6230313B1 (en) * 1998-12-23 2001-05-08 Cray Inc. Parallelism performance analysis based on execution trace information
US7275246B1 (en) * 1999-01-28 2007-09-25 Ati International Srl Executing programs for a first computer architecture on a computer of a second architecture
US7430670B1 (en) * 1999-07-29 2008-09-30 Intertrust Technologies Corp. Software self-defense systems and methods
US6918065B1 (en) * 1999-10-01 2005-07-12 Hitachi, Ltd. Method for compressing and decompressing trace information
US6859891B2 (en) * 1999-10-01 2005-02-22 Stmicroelectronics Limited Apparatus and method for shadowing processor information
US6779145B1 (en) * 1999-10-01 2004-08-17 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US7793261B1 (en) 1999-10-01 2010-09-07 Stmicroelectronics Limited Interface for transferring debug information
US6662359B1 (en) * 2000-07-20 2003-12-09 International Business Machines Corporation System and method for injecting hooks into Java classes to handle exception and finalization processing
US7093236B2 (en) * 2001-02-01 2006-08-15 Arm Limited Tracing out-of-order data
US7069544B1 (en) * 2001-04-30 2006-06-27 Mips Technologies, Inc. Dynamic selection of a compression algorithm for trace data
DE10132313A1 (en) * 2001-07-06 2003-01-23 Infineon Technologies Ag Program controlled unit
US7219333B2 (en) * 2002-11-22 2007-05-15 Texas Instruments Incorporated Maintaining coherent synchronization between data streams on detection of overflow
US7210072B2 (en) * 2002-12-17 2007-04-24 Texas Instruments Incorporated Apparatus and method for trace stream identification of a pipeline flattener primary code flush following initiation of an interrupt service routine
US7281237B2 (en) * 2003-01-16 2007-10-09 Sun Microsystems, Inc. Run-time verification of annotated software code
US7434108B2 (en) * 2004-04-30 2008-10-07 Freescale Semiconductor, Inc. Masking within a data processing system having applicability for a development interface
US8166462B2 (en) * 2006-09-07 2012-04-24 Oracle America, Inc. Method and apparatus for sorting and displaying costs in a data space profiler
TWI270769B (en) * 2004-11-15 2007-01-11 Sunplus Technology Co Ltd Trace, debug method and system for a processor
US7650542B2 (en) * 2004-12-16 2010-01-19 Broadcom Corporation Method and system of using a single EJTAG interface for multiple tap controllers
US7346476B2 (en) * 2005-03-17 2008-03-18 International Business Machines Corporation Event tracing with time stamp compression
JP2006314078A (en) * 2005-04-06 2006-11-16 Sony Corp Imaging apparatus, voice recording apparatus, and the voice recording method
US7797686B2 (en) * 2005-05-13 2010-09-14 Texas Instruments Incorporated Behavior of trace in non-emulatable code
US7506318B1 (en) * 2005-06-28 2009-03-17 Replay Solutions, Inc. Recording and replaying computer programs
KR100633478B1 (en) * 2006-01-02 2006-10-16 김길웅 System and its method for developing software based on business operating system
US8079019B2 (en) * 2007-11-21 2011-12-13 Replay Solutions, Inc. Advancing and rewinding a replayed program execution
US8024708B2 (en) * 2006-06-20 2011-09-20 Google Inc. Systems and methods for debugging an application running on a parallel-processing computer system
ATE535868T1 (en) * 2007-04-18 2011-12-15 Mediatek Inc METHOD AND DEVICE FOR RECORDING DATA ADDRESSES
US8024620B2 (en) * 2008-07-25 2011-09-20 Freescale Semiconductor, Inc. Dynamic address-type selection control in a data processing system
US8402258B2 (en) * 2008-07-25 2013-03-19 Freescale Semiconductor, Inc. Debug message generation using a selected address type
US7958401B2 (en) * 2008-07-25 2011-06-07 Freescale Semiconductor, Inc. Debug trace messaging with one or more characteristic indicators
US7992052B2 (en) * 2009-02-19 2011-08-02 Freescale Semiconductor, Inc. Program correlation message generation for debug
US7984337B2 (en) * 2009-02-19 2011-07-19 Freescale Semiconductor, Inc. Address translation trace message generation for debug

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5842225A (en) * 1995-02-27 1998-11-24 Sun Microsystems, Inc. Method and apparatus for implementing non-faulting load instruction
US6769076B1 (en) * 2000-02-07 2004-07-27 Freescale Semiconductor, Inc. Real-time processor debug system
US7134116B1 (en) * 2001-04-30 2006-11-07 Mips Technologies, Inc. External trace synchronization via periodic sampling
US20060036830A1 (en) * 2004-07-31 2006-02-16 Dinechin Christophe De Method for monitoring access to virtual memory pages

Also Published As

Publication number Publication date
CN102395949B (en) 2015-06-17
KR101661499B1 (en) 2016-09-30
KR20120018307A (en) 2012-03-02
WO2010129154A2 (en) 2010-11-11
US8438547B2 (en) 2013-05-07
TWI502341B (en) 2015-10-01
TW201135456A (en) 2011-10-16
US20100287417A1 (en) 2010-11-11
CN102395949A (en) 2012-03-28

Similar Documents

Publication Publication Date Title
WO2010096233A3 (en) Address translation trace message generation for debug
WO2010129154A3 (en) Address translation trace message generation for debug
JP2012518234A5 (en)
CN101938260B (en) For limiting the noise elimination filtering that puppet is waken up
WO2010144216A3 (en) Processor and method for dynamic and selective alteration of address translation
BR112012001606A8 (en) VIDEO DEVICE FOR PROCESSING A 3D THREE DIMENSIONAL VIDEO SIGNAL, METHOD FOR PROCESSING A 3D THREE DIMENSIONAL VIDEO SIGNAL, METHOD FOR PROVIDING A 3D THREE DIMENSIONAL VIDEO SIGNAL FOR TRANSFER TO A 3D VIDEO DEVICE, AND RECORD
GB2421826A (en) Microtlb and micro tag for reducing power in a processor
WO2010117528A3 (en) Opportunistic improvement of mmio request handling based on target reporting of space requirements
WO2007064716A3 (en) Hardware acceleration system for simulation of logic and memory
WO2011046840A3 (en) Systems and methods to automatically generate a signature block
WO2007117746A3 (en) Data processing system having address translation bypass and method therefor
GB2432244A (en) Fault processing for direct memory access address translation
EP2660752A3 (en) Memory protection circuit, processing unit, and memory protection method
CN102378968A (en) Control of on-die system fabric blocks
GB201002728D0 (en) Trace data priority selection
TW200819979A (en) Method and system to indicate an exception-triggering page within a microprocessor
WO2008150927A3 (en) System including a fine-grained memory and a less-fine-grained memory
WO2008005825A3 (en) Methods, systems, and computer program products for providing access to addressable entities using a non-sequential virtual address space
JP2015505091A5 (en)
WO2013002979A3 (en) Debugging in a multiple address space environment
US20140068345A1 (en) Method and apparatus for filtering trace information
WO2012015766A3 (en) Cache memory that supports tagless addressing
CN102132246A (en) Debug message generation using a selected address type
EP2237155A3 (en) Information processing program, information processing device and information processing method
EP1734534A3 (en) Interface between memories having different write times

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080016420.9

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10772446

Country of ref document: EP

Kind code of ref document: A2

ENP Entry into the national phase

Ref document number: 20117026210

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10772446

Country of ref document: EP

Kind code of ref document: A2