IP Library Granted Patent US 7,624,312
Granted Patent B2
US 7,624,312 · App. 12/131,068 · Granted Nov 24, 2009

System, apparatus, computer program product for performing operational validation with limited CPU use of a communications network

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,624,312
App. No.
12/131,068
Granted
Nov 24, 2009
Kind
B2
Abstract

A system, apparatus, computer program product and method of performing operational validation on a system are provided. The system may include a CPU with a cache, a communications network, and a plurality of devices exchanging data during a test. When the test is ready to be performed, the CPU may set up a pool of buffers in the cache. The pool of buffers may generally have a set of locations corresponding to locations in an actual destination buffer and a set of locations corresponding to locations in an actual source buffer. During the performance of the test, data is exchanged over the communications network to and from the source and destination buffers. Snooping logic in the cache may snoop data on the communications network. The data snooped may be entered in appropriate locations in the pool of buffers. This allows the CPU to perform operational validation by using cached data instead of data that is in the actual source and destination buffers.

Claims (23)

1. A computer program product on a computer readable medium for performing operational validation on a system, the system including a central processing unit (CPU) with a cache, a communications network, and at least a first device and a second device exchanging data during a test, the computer program product comprising:

code means for setting up, by the CPU, a pool of buffers in the cache, the pool of buffers having a set of locations assigned to the first device and a set of locations assigned to the second device, the CPU being used for the operational validation;

code means for snooping each piece of data being transferred on the communications network by the first device and the second device, each piece of data snooped being entered in appropriate locations in the pool of buffers; and

code means for validating each transferred piece of data using the data in the pool of buffers.

2. The computer program product of claim 1 wherein the system is a system-on-chip (SOC) and the operational validation is post-silicon operational validation.

3. The computer program product of claim 2 wherein the first device and the second device are a master/slave pair of devices.

4. The computer program product of claim 3 wherein the test is a stress test.

5. The computer program product of claim 1 wherein the validation code means includes code means for reading data from locations assigned to the first device, reading data from corresponding locations assigned to the second device and comparing the data read from the locations assigned to the first device with the data read from the locations assigned to the second device, the data being validated if they are the same.

6. An apparatus for performing operational validation on a system, the system including a central processing unit (CPU) with a cache, a communications network, and at least a first device and a second device exchanging data during a test, the apparatus comprising:

means for setting up, by the CPU, a pool of buffers in the cache, the pool of buffers having a set of locations assigned to the first device and a set of locations assigned to the second device, the CPU being used for the operational validation;

means for snooping each piece of data being transferred on the communications network by the first device and the second device, each piece of data snooped being entered in appropriate locations in the pool of buffers; and

means for validating each transferred piece of data using the data in the pool of buffers.

7. The apparatus of claim 6 wherein the system is a system-on-chip (SOC) and the operational validation is post-silicon operational validation.

8. The apparatus of claim 7 wherein the first device and the second device are a master/slave pair of devices.

9. The apparatus of claim 8 wherein the test is a stress test.

10. The apparatus of claim 6 wherein the validation mean includes means for reading data from locations assigned to the first device, reading data from corresponding locations assigned to the second device and comparing the data read from the locations assigned to the first device with the data read from the locations assigned to the second device, the data being validated if they are the same.

11. A system including a central processing unit (CPU) with a cache, a communications network, and at least a first device and a second device exchanging data during a test, the system comprising:

at least one storage device for storing code data; and

at least one processor for processing the code data to set up, by the CPU, a pool of buffers in the cache, the pool of buffers having a set of locations assigned to the first device and a set of locations assigned to the second device, the CPU being used for the operational validation, to snoop each piece of data being transferred on the communications network by the first device and the second device, each piece of data snooped being entered in appropriate locations in the pool of buffers, and to validate each transferred piece of data using the data in the pool of buffers.

12. The system of claim 11 wherein the system is a system-on-chip (SOC) and the operational validation is post-silicon operational validation.

13. The system of claim 12 wherein the first device and the second device are a master/slave pair of devices.

14. The system of claim 13 wherein the test is a stress test.

15. The system of claim 11 wherein the code data is further processed to read data from locations assigned to the first device, to read data from corresponding locations assigned to the second device and to compare the data read from the locations assigned to the first device with the data read from the locations assigned to the second device, the data being validated if they are the same.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: FACEBOOK, INC.
Reel/Frame 027991/0416 →