IP Library Patent Application 11529710
Patent Application
App. No. 11/529,710

Detection and prevention of write-after-write hazards, and applications thereof

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 None
App. No.
11/529,710
Abstract

Apparatuses, systems, and methods for detecting and preventing write-after-write hazards, and applications thereof. In an embodiment, a load/store queue of a processor stores a first register destination value associated with a graduated load instruction. A graduation unit of the processor broadcasts a second register destination value associated with a graduating load instruction. Control logic coupled to the load/store queue and the graduation unit compares the first register destination value to the second register destination. If the first register destination value and the second register destination value match, the control logic prevents the graduated load instruction from altering an architectural state of the processor.

Claims (43)

1 . A processor, comprising:

a load/store queue that stores a first register destination value associated with a graduated load instruction;

a graduation unit; and

control logic coupled to the load/store queue and the graduation unit,

wherein the control logic compares the first register destination value to a second register destination value received from the graduation unit, and if the first register destination value and the second register destination value match, the control logic prevents the graduated load instruction from altering an architectural state of the processor.

2 . The processor of claim 1 , wherein if the first register destination value and the second register destination value match, the control logic changes the first register destination value to a register destination value associated with a read-only register.

3 . The processor of claim 1 , further comprising;

a load data queue, coupled to the control logic, that stores a write-back value associated with the graduated load instruction.

4 . The processor of claim 3 , wherein if the first register destination value and the second register destination value match, the control logic changes the write-back value to a value that prevents the graduated load instruction from altering the architectural state of the processor.

5 . A system, comprising:

a processor that includes

a load/store queue that stores a first register destination value associated with a graduated load instruction,

a graduation unit, and

control logic coupled to the load/store queue and the graduation unit,

wherein the control logic compares the first register destination value to a second register destination value received from the graduation unit, and if the first register destination value and the second register destination value match, the control logic prevents the graduated load instruction from altering an architectural state of the processor; and

a memory coupled to the processor.

6 . The system of claim 5 , wherein if the first register destination value and the second register destination value match, the control logic changes the first register destination value to a register destination value associated with a read-only register.

7 . The system of claim 5 , wherein the processor further comprises;

a load data queue, coupled to the control logic, that stores a write-back value associated with the graduated load instruction.

8 . The system of claim 7 , wherein if the first register destination value and the second register destination value match, the control logic changes the write-back value to a value that prevents the graduated load instruction from altering the architectural state of the processor.

9 . A tangible computer readable storage medium that includes a processor embodied in software, the processor comprising:

a load/store queue that stores a first register destination value associated with a graduated load instruction;

a graduation unit; and

control logic coupled to the load/store queue and the graduation unit,

wherein the control logic compares the first register destination value to a second register destination value received from the graduation unit, and if the first register destination value and the second register destination value match, the control logic prevents the graduated load instruction from altering an architectural state of the processor.

10 . The tangible computer readable storage medium of claim 9 , wherein if the first register destination value and the second register destination value match, the control logic changes the first register destination value to a register destination value associated with a read-only register.

11 . The tangible computer readable storage medium of claim 9 , further comprising;

a load data queue, coupled to the control logic, that stores a write-back value associated with the graduated load instruction.

12 . The tangible computer readable storage medium of claim 11 , wherein if the first register destination value and the second register destination value match, the control logic changes the write-back value to a value that prevents the graduated load instruction from altering the architectural state of the processor.

13 . The tangible computer readable storage medium of claim 9 , wherein the processor is embodied in hardware description language software.

14 . The tangible computer readable storage medium of claim 9 , wherein the processor is embodied in one of Verilog hardware description language software and VHDL hardware description language software.

15 . A method to prevent write-after-write hazards in a processor, comprising:

storing a first register destination value associated with a graduated load instruction in a load/store queue;

comparing the first register destination value to a second register destination value associated with a graduating load instruction; and

preventing the graduated load instruction from altering an architectural state of the processor if the first register destination value and the second register destination value match.

16 . The method of claim 15 , wherein the preventing step comprises changing the first register destination value to a register destination value associated with a read-only register.

17 . The method of claim 15 , wherein the preventing step comprises changing a write-back value stored in a load data queue that is associated with the graduated load instruction.

18 . A method to prevent write-after-write hazards in a processor, comprising:

broadcasting a first register destination value associated with a graduating load instruction;

determining whether the first register destination value matches a second register destination value for a graduated load instruction associated with a cache miss; and

preventing the graduated load instruction from altering an architectural state of the processor if the first register destination value and the second register destination values match.

19 . The method of claim 18 , wherein the preventing step comprises changing the second register destination value to a register destination value associated with a read-only register.

20 . The method of claim 18 , wherein the preventing step comprises changing a write-back value associated with the graduated load instruction to a value that prevents the graduated load instruction from altering the architectural state of the processor.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2014
From: BRIDGE CROSSING, LLC
To: ARM FINANCE OVERSEAS LIMITED
Reel/Frame 033074/0058 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2013
From: MIPS TECHNOLOGIES, INC.
To: BRIDGE CROSSING, LLC
Reel/Frame 030202/0440 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2008
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: MIPS TECHNOLOGIES, INC.
Reel/Frame 021985/0015 →
SECURITY AGREEMENT Recorded Aug 24, 2007
From: MIPS TECHNOLOGIES, INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 019744/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2006
From: YU, MENG-BING; NANGIA, ERA K.; NI, MICHAEL; KISHORE, KARAGADA RAMARAO
To: MIPS TECHNOLOGIES, INC.
Reel/Frame 018560/0971 →