IP Library Granted Patent US 7,089,170
Granted Patent B2
US 7,089,170 · App. 09/916,148 · Granted Aug 8, 2006

System and method for testing an embedded microprocessor system containing physical and/or simulated hardware

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,089,170
App. No.
09/916,148
Granted
Aug 8, 2006
Kind
B2
Abstract

A system for testing an embedded system containing a target processor executing a target program and target hardware that has a physical portion and a simulated portion. A target monitor determines when the target processor is attempting to access simulated hardware. The address bus of the microprocessor is monitored to detect an address in the address space of the simulated hardware. Lack of an acknowledge signal from the physical hardware within a predetermined period after the target processor attempts to access the target hardware may also indicate simulation. A bus capture circuit captures output signals on the bus connections of the target processor and converts the output signals to output data. The output data is then coupled through a communications interface to a hardware simulator. The hardware simulator processes the data in the same manner that the physical hardware would respond to signals corresponding to the output data.

Claims (28)

1. A method of testing an embedded electronic system having a target processor adapted to execute a target program, the target processor being coupled to target hardware that has a physical portion and a simulated portion, the method comprising:

monitoring signals present on a plurality of externally accessible terminals of the target processor as the target processor executes the target program;

determining when the target processor is attempting to access the simulated portion of the target hardware by inputting monitored address signals into a mapping memory and outputting a stored map result from a corresponding address in the mapping memory, for each of the monitored address signals, from the mapping memory;

in response to determining that the target processor is attempting to access the simulated portion of the target hardware, suspending execution of the target program; and

in response to determining that the target processor is attempting to access the simulated portion of the target hardware, processing output signals present on a plurality of the externally accessible terminals in a hardware simulator.

2. The method of claim 1 further comprising:

determining when the target processor is attempting to access the physical portion of the target hardware by inputting monitored address signals into a mapping memory and outputting a stored map result from a corresponding address in the mapping memory, for each of the monitored address signals, from the mapping memory; and

in response to determining that the target processor is attempting to access the physical portion of the target hardware, allowing the target processor to access the physical portion of the target hardware.

3. The method of claim 1 further comprising:

receiving input data from the hardware simulator responsive to processing the output signals;

converting the input data to corresponding input signals; and

applying the input signals to the externally accessible terminals.

4. The method of claim 1 wherein the step of determining when the target processor is attempting to access the simulated portion of the target hardware comprises:

monitoring a terminal on the target processor that is adapted to receive a control signal from the physical target hardware in the event of an access to the physical target hardware by the target processor;

initiating a timing period responsive to a target hardware access by the target processor; and

detecting if the control signal is received from the physical target hardware within a predetermined period after initiating the timing period.

5. The method of claim 1 further comprising:

detecting an interrupt signal applied to the target processor during the time that the target processor has suspended execution of the target program; and

executing an interrupt routine responsive to the interrupt signal.

6. The method of claim 1 further comprising:

detecting data from the hardware simulator corresponding to an interrupt signal;

in response to detecting data from the hardware simulator corresponding to an interrupt signal, applying an interrupt signal to the target processor; and

in response to the interrupt signal, allowing the target processor to execute an interrupt routine.

7. A method of testing an embedded electronic system having a target processor adapted to execute a target program, the target processor being coupled to target hardware that has a physical portion and a simulated portion, the method comprising:

monitoring signals present on a plurality of externally accessible terminals of the target processor as the target processor executes the target program;

determining when the target processor is attempting to access the simulated portion of the target hardware by inputting monitored address signals into a mapping memory and outputting a stored map result from a corresponding address in the mapping memory, for each of the monitored address signals, from the mapping memory;

combining the stored map result with a target clock counter through a logical OR function;

resetting the target clock counter with an acknowledge signal from the physical portion of the target hardware.

Assignments (17)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 040652 FRAME: 0241. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Jan 5, 2017
From: FREESCALE SEMICONDUCTOR, INC.
To: NXP USA, INC.
Reel/Frame 041260/0850 →
MERGER Recorded Nov 8, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: NXP USA, INC.
Reel/Frame 040652/0241 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0553 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0143 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0225 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →