IP Library Granted Patent US 9,229,884
Granted Patent B2
US 9,229,884 · App. 13/460,287 · Granted Jan 5, 2016

Virtualized instruction extensions for system partitioning

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 9,229,884
App. No.
13/460,287
Granted
Jan 5, 2016
Kind
B2
Abstract

A method and circuit for a data processing system provide virtualized instructions for accessing a partitioned device (e.g., 14, 61 ) by executing a control instruction ( 47, 48 ) to encode and store an access command (CMD) in a data payload with a hardware-inserted partition attribute (LPID) for storage to a command register ( 25 ) at a physical address (PA) retrieved from a special purpose register ( 46 ) so that the partitioned device ( 14, 61 ) can determine if the access command can be performed based on local access control information.

Claims (30)

1. A non-transitory computer readable storage medium comprising a first device control instruction of an instruction set architecture, which when executed on a processor, causes the processor to access a partitioned interrupt controller by:

generating an access command for the partitioned interrupt controller;

retrieving a partition parameter for the access command from a first hardware register;

generating a storage address for a predetermined storage location at the partitioned interrupt controller;

encoding the access command and partition parameter into a data payload; and

writing the data payload to the predetermined storage location at the partitioned interrupt controller using the storage address.

2. The computer readable storage medium of claim 1 , where the first device control instruction causes the processor to generate the access command by generating an end-of-instruction (EOI) command to the interrupt controller to take an identified interrupt request out of service to an idle state.

3. The computer readable storage medium of claim 1 , where write access to the first hardware register is restricted to trusted higher-level software.

4. The computer readable storage medium of claim 1 , where the first device control instruction causes the processor to generate the storage address by retrieving the storage address from a second hardware register.

5. The computer readable storage medium of claim 4 , where write access to the second hardware register is restricted to trusted higher-level software.

6. The computer readable storage medium of claim 1 , where the first device control instruction causes the processor to generate the storage address by accessing a device table with a device identifier for the partitioned interrupt controller to retrieve the storage address.

7. The computer readable storage medium of claim 6 , where write access to the device table is restricted to trusted higher-level software.

8. The computer readable storage medium of claim 1 , where the first device control instruction causes the processor to write the data payload to a command register at the partitioned interrupt controller using the storage address.

9. The computer readable storage medium of claim 1 , where the first device control instruction causes the processor to write the data payload to the predetermined storage location using a memory-mapped secure store operation.

10. The computer readable storage medium of claim 1 , where the first device control instruction causes the processor to encode the data payload by setting a predetermined bit in the data payload to a first value indicate that the access command is generated by trusted higher-level software.

11. The computer readable storage medium of claim 1 , where the first device control instruction causes the processor to encode the data payload by setting a predetermined bit in the data payload to a second value indicate that the access command is generated by guest supervisor.

12. A method of managing a resource in a partitioned computer system, comprising:

generating a command for the resource;

retrieving a partition parameter from a first hardware register;

generating a storage address for a predetermined storage location at the resource;

encoding the command and the partition identifier into a data payload for storage to the predetermined storage location at the resource using the storage address; and

writing the data payload to the predetermined storage location using a memory-mapped secure store operation.

13. The method of claim 12 , where the resource comprises an interrupt controller which receives and prioritizes partitioned interrupt requests from one or more interrupt sources to deliver a top priority interrupt to a processor.

14. The method of claim 12 , where generating the storage address comprises retrieving the storage address from a dedicated address register.

15. The method of claim 14 , where write access to either or both of the dedicated address register and the first hardware register is restricted to trusted higher-level software.

16. The method of claim 12 , where the partitioned computer system comprises a processor and a partitioned resource, said processor executing a resource control instruction to perform a secure store operation of the data payload to the storage address at the partitioned resource comprising the command and a logical partition identifier (LPID), and said partitioned resource using the logical partition identifier (LPID) as a qualifier to determine if the command can be performed based on local access control information.

17. The method of claim 16 , where the dedicated storage address and logical partition identifier (LPID) are managed by trusted software.

18. A data processing system comprising:

a partitioned interrupt controller; and

a processor coupled to the partitioned interrupt controller, wherein the processor executes an interrupt control instruction to encode a data payload with a command and a logical partition identifier (LPID) associated with a first interrupt request, and to perform a secure store operation of the data payload to a storage address at the partitioned resource using a memory-mapped secure store operation, where the storage address is retrieved from a dedicated address register at the processor.

Assignments (23)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2026
From: NXP USA, INC.
To: NEX-X SILICON LLC
Reel/Frame 075615/0773 →
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 037357/0535 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0555 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0575 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →
SECURITY AGREEMENT Recorded Jun 18, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030633/0424 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Apr 22, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030258/0501 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Apr 22, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030258/0479 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Apr 20, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 030256/0706 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 17, 2012
From: MARIETTA, BRYAN D.; WHISENHUNT, GARY L.; GALA, KUMAR K.; KRAMER, DAVID B.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 028225/0957 →