IP Library Granted Patent US 9,152,494
Granted Patent B2
US 9,152,494 · App. 13/843,782 · Granted Oct 6, 2015

Method and apparatus for data packet integrity checking in a processor

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,152,494
App. No.
13/843,782
Granted
Oct 6, 2015
Kind
B2
Abstract

In an embodiment, a method of handling data packets within a processor includes intercepting, by a hardware packet integrity checking module, one or more data fields associated with a current segment of a data packet being forwarded from a first hardware entity operating in a cut-through mode to one or more processing clusters, where at least one data field of the one or more data fields is indicative of an operation associated with the data packet. At the hardware error detection module, integrity of the current segment of the data packet is checked based on the one or more data fields and parameters corresponding to the operation associated with the data packet. At least one data field of the one or more data fields is modified upon detecting an integrity error. The data fields are forwarded to the one or more processing clusters.

Claims (50)

1. A method of handling data packets within a processor, the method comprising:

intercepting, by a hardware packet integrity checking module, one or more data fields associated with a current segment of a data packet being forwarded from a first hardware entity operating in a cut-through mode to one or more processing clusters, at least one data field of the one or more data fields being indicative of an operation associated with the data;

checking, at the hardware packet integrity checking module, an integrity of the current segment of the data packet based on the one or more data fields and parameters corresponding to the operation associated with the data packet to detect an integrity error;

modifying at least one data field of the one or more data fields upon detecting the integrity error; and

forwarding the one or more data fields to the one or more processing clusters.

2. A method according to claim 1 , wherein at least one data field of the one or more data fields is indicative of an end of packet signal.

3. A method according to claim 2 , wherein the operation is associated with a respective size of the data packet.

4. A method according to claim 1 , wherein at least one data field of the one or more data fields is indicative of a start of packet signal.

5. A method according to claim 1 , wherein at least one data field of the one or more data fields is indicative of an error signal.

6. A method according to claim 1 , wherein detecting an integrity error includes detecting an error indicative of a missing end of packet (EOP) indication in the segment, and modifying at least one data field includes:

inserting the EOP indication by modifying a corresponding first data field; and

inserting an indication of an error by modifying a corresponding second data field.

7. A method according to claim 1 , wherein the current segment is the first segment in the data packet, detecting an integrity error includes detecting an error indicative of a missing start of packet (SOP) indication in the segment, and modifying at least one data field includes:

inserting the SOP indication by modifying a corresponding first data field;

inserting an end of packet (EOP) indication by modifying a corresponding second data field; and

inserting an indication of an error by modifying a corresponding third data field.

8. A method according to claim 1 , modifying at least one data field includes modifying the at least one data field to cause the segment to be suppressed.

9. A method according to claim 1 , further comprising intercepting one or more data fields associated with a next segment.

10. A method according to claim 9 , wherein checking the integrity of the current segment includes checking the integrity based on the one or more data fields associated with the current segment, parameters corresponding to the operation associated with the data packet, and the one or more data fields associated with the next segment.

11. A method according to claim 1 , wherein modifying at least one data field includes:

inserting an indication of an error by modifying a corresponding first data field, inserting an end of packet (EOP) indication by modifying a corresponding second data field, and modifying the data field indicative of the operation associated with the data packet; or

inserting an indication of an error by modifying a corresponding first data field, inserting an EOP indication by modifying a corresponding second data field, and generating at least one beat for forwarding to the one or more processing clusters.

12. A hardware integrity checking module for handling data packets being sent from a first hardware entity operating in a cut-through mode to a second entity, the hardware integrity checking module comprises:

a logic circuit configured to:

intercept one or more data fields associated with a current segment of a data packet being forwarded from the first hardware entity to the second entity, at least one data field of the one or more data fields being indicative of an operation associated with the data packet;

check an integrity of the current segment of the data packet based on the one or more data fields and parameters corresponding to the operation associated with the data packet to detect an integrity error;

modifying at least one data field of the one or more data fields upon detecting the integrity error; and

forward the one or more data fields to the one or more processing clusters.

13. A hardware integrity checking module according to claim 12 , wherein at least one data field of the one or more data fields is indicative of an end of packet signal.

14. A hardware integrity checking module according to claim 13 , wherein the operation is associated with a respective size of the data packet.

15. A hardware integrity checking module according to claim 12 , wherein at least one data field of the one or more data fields is indicative of a start of packet signal.

16. A hardware integrity checking module according to claim 12 , wherein at least one data field of the one or more data fields is indicative of an error signal.

17. A hardware integrity checking module according to claim 12 , wherein the logic circuit is configured to modify at least one data field upon detecting an integrity error that includes detecting an error indicative of a missing end of packet (EOP) indication in the segment, the modifying including:

inserting the EOP indication by modifying a corresponding first data field; and

inserting an indication of an error by modifying a corresponding second data field.

18. A hardware integrity checking module according to claim 12 , wherein the current segment is the first segment in the data packet, and the logic circuit is configured to modify at least one data field upon detecting an integrity error that includes detecting an error indicative of a missing start of packet (SOP) indication in the segment, the modifying including:

inserting the SOP indication by modifying a corresponding first data field;

inserting an end of packet (EOP) indication by modifying a corresponding second data field; and

inserting an indication of an error by modifying a corresponding third data field.

19. A hardware integrity checking module according to claim 12 , wherein the logic circuit configured to modify at least one data field includes modifying the at least one data field to cause the segment to be suppressed.

20. A hardware integrity checking module according to claim 12 , wherein the logic circuit is further configured to intercept one or more data fields associated with a next segment.

21. A hardware integrity checking module according to claim 20 , wherein the logic circuit configured to check the integrity of the current segment includes checking the integrity based on the one or more data fields associated with the current segment, parameters corresponding to the operation associated with the data packet, and the one or more data fields associated with the next segment.

22. A hardware integrity checking module according to claim 12 , wherein the logic circuit is configured to:

insert an indication of an error by modifying a corresponding first data field, insert an end of packet (EOP) indication by modifying a corresponding second data field, and modify the data field indicative of the operation associated with the data packet; or

insert an indication of an error by modifying a corresponding first data field, insert an EOP indication by modifying a corresponding second data field, and generate at least one beat for forwarding to the one or more processing clusters.

23. Apparatus for handling data packets within a processor, the apparatus comprising:

means for intercepting one or more data fields associated with a current segment of a data packet being forwarded from a first hardware entity operating in a cut-through mode to one or more processing clusters, at least one data field of the one or more data fields being indicative of an operation associated with the data;

means for checking an integrity of the current segment of the data packet based on the one or more data fields and parameters corresponding to the operation associated with the data packet to detect an integrity error;

means for modifying at least one data field of the one or more data fields upon detecting the integrity error; and

means for forwarding the one or more data fields to the one or more processing clusters.

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 →
CERTIFICATE OF CONVERSION AND CERTIFICATE OF FORMATION Recorded Oct 2, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047185/0422 →
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 Apr 18, 2013
From: HARDESTY, JEFFREY RICHARD; DAHLMANN, TROY S.; SZYPULSKI, KAREN A.; PANGBORN, JEFFREY A.; ANSARI, NAJEEB I.; HOLLER, THEODORE H.
To: CAVIUM, INC.
Reel/Frame 030242/0027 →