IP Library Granted Patent US 9,678,717
Granted Patent B2
US 9,678,717 · App. 14/941,082 · Granted Jun 13, 2017

Distributing resource requests in a computing system

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,678,717
App. No.
14/941,082
Granted
Jun 13, 2017
Kind
B2
Abstract

In an embodiment, a method include, in a hardware processor, producing, by a block of hardware logic resources, a constrained randomly generated or pseudo-randomly generated number (CRGN) based on a bit mask stored in a register memory.

Claims (33)

1. A method comprising:

in a hardware processor:

generating a first randomly generated number (RGN) comprising one of a randomly generated number and a pseudo-randomly generated number;

producing a constrained randomly generated number (CRGN) based on the first RGN and a bit mask, wherein the CRGN comprises a first set of bits and a second set of bits, wherein the first set of bits are unmodified bits from the first RGN, and wherein further the second set of bits represents an index position of a located bit in the bit mask; and

outputting the CRGN to a resource selection unit configured to select a portion of a resource from a plurality of portions of the resource based on the CRGN.

2. The method of claim 1 , wherein the resource is a cache memory.

3. The method of claim 2 , wherein the portion of the resource is a bank of the cache memory.

4. The method of claim 1 , wherein the resource is a bus.

5. The method of claim 1 , wherein selecting the portion of the resource includes selecting a portion of multiplexed time of the resource.

6. The method of claim 1 , wherein selecting a portion of the resource is based on the CRGN and at least one additional random or pseudo-random bit.

7. The method of claim 1 , wherein producing the CRGN includes:

beginning at an index of the bit mask based on the first RGN, searching for a bit of the bit mask having a particular value, and

responsive to locating the bit having the particular value, producing the CRGN based on the index position of the bit having the particular value.

8. The method of claim 1 , further comprising accessing the bit mask is from a context file.

9. A system comprising:

a memory management unit; and

a hardware processor configured to

generate a first randomly generated number (RGN) comprising one of a randomly generated number and a pseudo-randomly generated number,

produce a constrained randomly generated number (CRGN) based on the first RGN and a bit mask, wherein the CRGN comprises a first set of bits and a second set of bits, wherein the first set of bits are unmodified bits from the first RGN, and wherein further the second set of bits represents an index position of a located bit in the bit mask, and

output the CRGN to the memory management unit;

wherein the memory management unit is configured to select a portion of a resource of from a plurality of portions of the resource based on the CRGN.

10. The system of claim 9 , wherein the resource is a cache memory.

11. The system of claim 9 , wherein the portion of the resource is a bank of the cache memory.

12. The system of claim 9 , wherein the resource is a bus.

13. The system of claim 9 , wherein the memory management unit is further configured to select the portion of the resource by selecting a portion of multiplexed time of the resource.

14. The system of claim 9 , wherein the memory management unit is further configured to select a portion of the resource based on the CRGN and at least one additional random or pseudo-random bit.

15. The system of claim 9 , wherein the hardware processor is further configured to produce the CRGN by:

beginning at an index of the bit mask based on the first RGN, searching for a bit of the bit mask having a particular value, and

responsive to locating the bit having the particular value, producing the CRGN based on the index position of the bit having the particular value.

16. The system of claim 9 , wherein the hardware processor is further configured to access the bit mask from a context file.

17. The method of claim 1 , wherein the first set of bits comprise upper m-n bits of the CRGN, and wherein the second set of bits comprise lower n-bits of the CRGN.

18. The method of claim 17 , wherein the located bit correspond to a particular bit value in the bit mask.

19. The method of claim 18 , wherein the particular bit value indicates accessibility to the portion of the resource.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CONVERSION Recorded Oct 6, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047202/0690 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
SECURITY AGREEMENT Recorded Aug 17, 2016
From: CAVIUM, INC.; CAVIUM NETWORKS LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 039715/0449 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2015
From: SNYDER, WILSON; OGALE, VARADA; KUJTKOWSKI, ANNA; MA, ALBERT
To: CAVIUM, INC.
Reel/Frame 037038/0483 →