Partial Packet Context Builder for Network Packet Processor
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The large number of crossbar elements required for processing data packets in network packet processors leads to significant chip area and power consumption, as well as timing closure problems.
Innovation Solution
The solution involves creating a partial packet context within each match-action unit, allowing ALUs in the systolic array to access only the necessary fields, thereby reducing the number of crossbar elements needed. This partial context is then merged back into the full packet context after processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a full packet context is accessed by all ALUs in the systolic array, then complete packet processing functionality is achieved, but the number of crossbar elements increases significantly leading to large chip area and high power consumption
Solution Approach 1:
The packet context is segmented into multiple portions, with each match-action unit receiving only the specific portion it needs for its designated function. This segmentation allows the systolic array to process only relevant context fields, reducing the number of crossbar elements required while maintaining complete processing functionality across the pipeline.
Solution Approach 2:
Different match-action units are assigned different portions of the packet context based on their specific processing requirements. Each unit has localized access to only the relevant fields it needs to process, rather than all ALUs accessing the full context. This local quality approach reduces overall crossbar element count while preserving functional versatility.
2Adaptability or versatility
If a full packet context is accessed by all ALUs in the systolic array, then complete packet processing functionality is achieved, but power consumption increases due to the large number of crossbar elements
Solution Approach 1:
The packet context is segmented into multiple portions, with each match-action unit receiving only the specific portion it needs for its designated function. This segmentation allows the systolic array to process only relevant context fields, reducing the number of crossbar elements required while maintaining complete processing functionality across the pipeline.
Solution Approach 2:
Different match-action units are assigned different portions of the packet context based on their specific processing requirements. Each unit has localized access to only the relevant fields it needs to process, rather than all ALUs accessing the full context. This local quality approach reduces overall crossbar element count while preserving functional versatility.
3Adaptability or versatility
If a full packet context is accessed by all ALUs in the systolic array, then complete packet processing functionality is achieved, but timing closure problems occur due to the large number of crossbar elements
Solution Approach 1:
The packet context is segmented into multiple portions, with each match-action unit receiving only the specific portion it needs for its designated function. This segmentation allows the systolic array to process only relevant context fields, reducing the number of crossbar elements required while maintaining complete processing functionality across the pipeline.
Solution Approach 2:
Different match-action units are assigned different portions of the packet context based on their specific processing requirements. Each unit has localized access to only the relevant fields it needs to process, rather than all ALUs accessing the full context. This local quality approach reduces overall crossbar element count while preserving functional versatility.
Data Source
AI summary
A partial packet context builder can determine a partial packet context associated with a data packet based upon packet context associated with the data packet, the partial packet context including a plurality of partial packet context fields, where a network packet processor including an action unit, the action unit including the partial packet context builder, a systolic array of arithmetic-logical units (ALUs), and a packet context builder, the packet context including a plurality of packet context fields. The systolic array of ALUs can process the partial packet context to provide a processed partial packet context, the processed partial packet context including a plurality of processed partial packet context fields. The packet context builder can merge the processed partial packet context with the packet context to provide a processed packet context.


