Parallel Packet Processing in Array Elements
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The processing speed of packet information in arrays of processing elements is limited by slow search operations, leading to idle time for processing elements due to serial processing dependencies.
Innovation Solution
Performing search-independent processing in parallel with search operations across multiple stages of the array, allowing for immediate search-dependent processing once search results are received, thereby reducing latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If search operations are performed sequentially in serial manner, then processing elements can wait for search results before proceeding, but processing elements sit idle during search operations reducing overall throughput
Solution Approach 1:
The patent applies preliminary action by performing search-independent processing operations before the search operation completes. Processing elements execute packet header processing and other preparatory tasks in parallel with the search operation, so that when search results are ready, the processing elements are already ready to receive and process the results immediately, eliminating idle time.
Solution Approach 2:
The patent segments the packet processing operations into search-dependent operations (which wait for search results) and search-independent operations (which can execute in parallel). This segmentation allows different parts of the processing pipeline to operate simultaneously, with search-independent operations executing during the search time and search-dependent operations executing after search results are received.
2Loss of time
If processing elements wait for search results before proceeding to next stage, then processing can be performed in serial manner, but latency is increased due to slow search operations
Solution Approach 1:
Processing elements perform preliminary search-independent operations (such as packet header processing, extracting search keys, preparing lookup tables) before the search operation completes. This preliminary action reduces the time processing elements spend idle waiting for search results, thereby reducing overall latency without significantly increasing complexity.
Solution Approach 2:
The patent introduces dynamic scheduling where processing elements can switch between different operational states based on search completion status. When search operations are ongoing, processing elements execute search-independent tasks; when search results are available, they automatically transition to search-dependent tasks. This dynamic adaptation optimizes latency without requiring complex fixed pipeline designs.
Data Source
AI summary
Processing packet information using an array of processing elements involves performing search-independent processing on packet information in parallel with a search of a first stage memory unit and then using the processed information and the result from the search of the first stage memory unit to generate search information for a search of a second stage memory unit. The search-independent processing of packet information in parallel with search operations can be repeated at each stage of the array. By performing search-independent processing of packet information in parallel with search operations instead of serially, latency that is contributed from the relatively slow search operations is reduced.


