Streaming Security Processor with Graph-Routed Compute Flow
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing security computations, such as cryptographic encryption/decryption and authentication, require significant computational power and efficient execution of large numbers, bit shuffling, and polynomial calculations, which existing technologies struggle to handle effectively.
Innovation Solution
A Streaming Security Processor (SSP) comprising a Streaming Engine (SE) with Compute Units (CUs), crossbar switches, and a configurable interconnect circuit, controlled by a Graph Core to perform logical operations and execute security computations in a streaming manner, utilizing graph algorithms for efficient task allocation and data flow.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional general-purpose processors are used for security computations, then programming flexibility is maintained, but computational efficiency and processing speed deteriorate
Solution Approach 1:
The processor is divided into specialized functional units: graph cores for task scheduling, streaming engines for data processing, and dedicated security computation units. This segmentation allows each component to be optimized for its specific function, improving overall computational efficiency while maintaining manageable complexity through modular design
Solution Approach 2:
The streaming engine serves multiple purposes: it handles data streaming, executes security computations, and manages communication between different processor components. This multi-functionality reduces the need for separate dedicated hardware for each function, improving productivity without proportionally increasing complexity
2Power
If computational power is increased for security computations, then processing capability improves, but energy consumption increases
Solution Approach 1:
Different parts of the processor are optimized for different computational tasks. Graph cores are specialized for scheduling and control logic, while streaming engines are optimized for data processing. This local optimization ensures that computational power is applied efficiently where needed, reducing unnecessary energy consumption in other parts of the system
Solution Approach 2:
The streaming engine enables continuous processing of security computations without idle cycles. By maintaining continuous useful action through pipelined execution and efficient data flow management, the processor maximizes computational output per unit of energy consumed, improving power efficiency
3Productivity
If data processing is performed sequentially, then system complexity is reduced, but processing time and latency increase
Solution Approach 1:
The processor transitions from sequential one-dimensional processing to parallel multi-dimensional processing. Multiple streaming engines can process different data streams simultaneously, and the graph core can schedule tasks across multiple dimensions. This dimensional expansion dramatically increases throughput while the graph core's scheduling algorithms manage the added complexity
4Ease of operation
If communication between processing units is frequent, then data availability improves, but communication latency and overhead increase
Solution Approach 1:
The graph core performs preliminary scheduling and data routing decisions before data needs to be transferred. By pre-computing optimal data flow paths and preparing communication channels in advance, the system reduces actual communication latency while maintaining high data availability through efficient resource allocation
Data Source
AI summary
A computing system includes a streaming engine and a graph core. The streaming engine includes an array of compute units (CUs), an array of crossbar switches, and a configurable interconnect circuit. The CUs perform logical operations on operands. The crossbar switches forward outputs of one or more CUs to inputs of one or more neighboring CUs. The configurable interconnect circuit forwards an output of at least one of the CUs to an input of at least one of the crossbar switches. The graph core programs the streaming processor to perform a security computation by selectively configuring the CUs to perform a plurality of respective logical operations in a programmable order to define a flow of logical operations to be performed by the CUs that effects the security computation, and configuring the crossbar switches and the interconnect circuit to perform the logical operations by traversing the CUs according to the flow.


