IP Library Granted Patent US 9,807,034
Granted Patent B2
US 9,807,034 · App. 14/486,643 · Granted Oct 31, 2017

System and method for creating a scalable monolithic packet processing engine

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,807,034
App. No.
14/486,643
Granted
Oct 31, 2017
Kind
B2
Abstract

A novel and efficient method is described that creates a monolithic high capacity Packet Engine (PE) by connecting N lower capacity Packet Engines (PEs) via a novel Chip-to-Chip (C2C) interface. The C2C interface is used to perform functions, such as memory bit slicing and to communicate shared information, and enqueue/dequeue operations between individual PEs.

Claims (36)

1. A packet engine system for processing a packet, the system comprising:

a first packet engine that includes a first buffer system and a second packet engine that includes a second buffer system, wherein the first packet engine includes an interface coupled to the second packet engine;

wherein the first packet engine slices the packet into bit slices stores a first portion of the bits slices and distributes a second portion of the bit slices to the second packet engine using the interface without using switch fabric; and

wherein the first buffer system and the second buffer system form a bit-sliced memory of the packet engine system, the first buffer stores the first portion of the bit slices and the second buffer stores the second portion of the bit slices.

2. The system of claim 1 , wherein the first packet engine distributes the portion of bit slices to the second packet engine using the interface.

3. The system of claim 1 , wherein the first packet engine distributes the portion of bit slices to the second buffer system of the second packet engine.

4. The system of claim 3 , wherein the second packet engine reads the portion of bit slices from the second buffer system, and enqueues the packet using a network egress interface.

5. The system of claim 1 , wherein the packet engine system has a processing power that is substantially equal to a processing power of the number of packet engines included in the plurality of packet engines.

6. The system of claim 1 , wherein each packet engine of the packet engine system includes a network ingress interface for accepting packets coupled to a buffer system comprising the bit-sliced memory.

7. The system of claim 1 , wherein each packet engine of the packet engine system includes a plurality of egress queues having a first interface for enqueuing and dequeuing packets, and a second interface for transmitting packets via a network egress interface.

8. The system of claim 1 , wherein the packet engine system is configured to facilitate non-blocking communication using the interface without a switch fabric.

9. The system of claim 1 , wherein the interface is a chip-to-chip (C2C) interface.

10. A method for processing a packet, the method comprising:

slicing the packet into bit slices using a first packet engine of a plurality of packet engines of a monolithic packet engine system, wherein the plurality of packet engines comprise an interface;

storing a first portion of the bit slices in a first buffer system of the first packet engine;

distributing a second portion of the bit slices to a second packet engine of the plurality of packet engines of a monolithic packet engine system using the interface without using a switch fabric;

storing the second portion of the bit slices in a second buffer system of the second packet engine; and

enqueuing the packet comprising the first portion and the second portion of the bit slices.

11. The method of claim 10 , wherein the first packet engine distributes the bit slices to the second packet engine using an interface.

12. The method of claim 10 , wherein enqueuing the packet comprises using a first network egress interface of the first packet engine to enqueue the first portion of the bit slices and using a second network egress interface of the second packet engine to enqueue the second portion of the bit slices.

13. The method of claim 10 , wherein the packet engine system has the processing power that is substantially equal to the processing power of the number of packet engines included in the packet engine system.

14. The method of claim 10 , further comprising accepting packets using a network ingress interface coupled to a common buffer system comprising the first buffer system and the second buffer system.

15. The method of claim 10 , wherein each packet engine of the plurality of packet engines includes a plurality of egress queues having a first interface for enqueuing and dequeuing packets, and a second interface for transmitting packets via a network egress interface.

16. The method of claim 10 , wherein the interface is configured to facilitate non-blocking communication between the plurality of packet engines without using a switch fabric.

17. A system comprising a plurality of packet engines of a monolithic packet engine system, a first packet engine including:

an interface coupled to a second packet engine; and

a buffer system,

wherein the first packet engine slices a packet into bit slices, stores a first portion of the bit slices in the buffer system and distributes a second portion of the bit slices to a second packet engine without using a switch fabric over the interface; and

wherein the first packet engine reads the bit slices from the second packet engine, and enqueues the packet comprising the first portion and the second portion of bit slices using a network egress interface included in one of the first and second packet engines.

18. The system of claim 17 , wherein the first packet engine distributes the bit slices to the second packet engine using the interface.

19. The system of claim 17 , wherein the first packet engine distributes the bit slices to a buffer system of the second packet engine.

20. The system of claim 17 , wherein the monolithic packet engine has the processing power that is substantially equal to the processing power of the number of packet engines included in the plurality of packet engines.

21. The system of claim 17 , wherein each packet engine of the plurality of packet engines includes a network ingress interface for accepting packets coupled to a buffer system.

22. The system of claim 17 , wherein each packet engine of the plurality of packet engines includes a plurality of egress queues having a first interface for enqueuing and dequeuing packets, and a second interface for transmitting packets via a network egress interface.

23. The system of claim 17 , wherein the plurality of packet engines are configured to use the interface to facilitate non-blocking communication.

24. The system of claim 17 , wherein the interface is a chip-to-chip (C2C) interface.

Assignments (2)
SECURITY INTEREST Recorded Sep 12, 2025
From: ALTERA CORPORATION
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 073431/0309 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2016
From: ALTERA EUROPEAN TRADING COMPANY LIMITED
To: ALTERA CORPORATION
Reel/Frame 038037/0117 →