Microprocessor data flow address matching self-trapping device used for software debugging

A technology of address matching and microprocessors, applied in software testing/debugging, electrical digital data processing, instruments, etc., can solve problems such as difficult to determine instruction errors and difficulties

Inactive Publication Date: 2013-09-04
上海高性能集成电路设计中心
View PDF3 Cites 3 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0003] When this method debugs the memory access operation in the program, there are two disadvantages: 1. When the value of a variable in the memory is accidentally modified, it is very difficult to determine which instruction modified the value of the variable, and often needs to be checked in the program. Set multiple breakpoints in , and gradually narrow the scope of suspicion by analyzing the variable values ​​at each breakpoint, and finally determine the instruction position to modify the variable
2. Since the same memory access instruction may be executed multiple times during program execution, and the memory access address of each instruction may be different, therefore, even if the erroneous instruction is determined, it is difficult to determine which execution of the instruction occurred mistake

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Microprocessor data flow address matching self-trapping device used for software debugging
  • Microprocessor data flow address matching self-trapping device used for software debugging
  • Microprocessor data flow address matching self-trapping device used for software debugging

Examples

Experimental program
Comparison scheme
Effect test

Embodiment 1

[0016] Assuming that the data of 16 consecutive bytes starting from the physical address 0x16340 is found to be different from the expected value after the program finishes running, you can determine which memory access instruction wrote the data into the main memory in the following way.

[0017] 1. Software configuration data flow address matching control register DA_MATCH, set the MATCH bit to 1, PA bit to 1, EN[1:0] to "10", ADDR[n:0] to 0x16340; configure the data flow mask register DA_MASK, set MASK[n:0] to 0xfff...ffff0.

[0018] 2. When running an error program, the data flow address matching logic will check all the memory access instructions during the running of the program. When the physical address of the "write instruction" on the correct path falls within the range from 0x16340 to 0x1634f, a self-trap will occur. And keep the running state of the microprocessor when the write instruction is executed.

[0019] 3. The software reads the saved processor running st...

Embodiment 2

[0021] Assume an array (contiguous 8192 bytes starting from virtual address 0x302000, ie 1 8KB page). The program only accesses a part of the data in the array (1024 bytes, namely 0x303000~0x3033ff), but it is found that other parts of the array have been accidentally rewritten during program execution. Then you can determine which memory accesses occur in other parts of the array as follows.

[0022] 1. Software configuration data flow address matching controller DA_MATCH, set the MATCH bit to 0, PA bit to 0, EN[1:0] to "11", ADDR[n:0] to 0x303000; configure the data flow mask register DA_MASK, set MASK[n:0] to 0x3ffc00.

[0023] 2. When the error program is running, the data flow address matching logic will check all the access instructions in the running process of the program. When the virtual address [21:10] of the access instruction on the correct path is not 0xc0c, a self-trap will be generated and the address will be kept. The operating state of the microprocessor at...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention discloses a microprocessor data flow address matching self-trapping device. The microprocessor data flow address matching self-trapping device comprises a set of data flow address matching control registers with configurable software, data flow address matching judgment logic, data flow address matching self-trapping generation logic of precise interrupts and microprocessor operating state storage logic, wherein if a data flow address meets specified requirements of the data flow address matching control registers, data flow address self-trapping of the precise interrupts is generated, and a processor can reserve an operating state, and not only facilitates program debugging for a user, but also provides powerful support for operating system debugging. The microprocessor data flow address matching self-trapping device supports software in a specified matching pattern (equal match or unequal match), specifying the type of 'an address to be matched'(a virtual address or a physical address) and specifying the bit width of 'the address to be matched'(a full address or a partial address), and means of software debugging are richened. According to the microprocessor data flow address matching self-trapping device, existing access and storage hardware logic is effectively used for achieving the function, and hardware design complexity and hardware cost need not to be increased obviously.

Description

technical field [0001] The invention relates to a microprocessor data flow address matching trapping device. Background technique [0002] At present, the support provided by microprocessors for software debugging is generally limited to the software-based "single-step trap" method. This method: the software can add a single-step self-trap breakpoint in the program. When the processor executes the instruction where the breakpoint is located, it will generate a precise breakpoint self-trap and give the control of the processor to the "single-step self-trap" "Trap" handler, which reads the system image visible to the processor's internal software through instructions, including structural registers, memory and microprocessor internal status registers, providing support for software debugging. [0003] When this method debugs the memory access operation in the program, there are two disadvantages: 1. When the value of a variable in the memory is accidentally modified, it is ve...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(China)
IPC IPC(8): G06F9/34G06F11/36
Inventor 胡向东杨剑新颜世云
Owner 上海高性能集成电路设计中心
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products