NoC Overlay Layer for Multicore Processor Data Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multicore processors, the efficient execution of complex computations is hindered by the complexity of data movement and memory management across processing cores, which requires significant computational resources and complicates programming, especially for higher-level programming languages.
Innovation Solution
A NoC overlay layer is introduced to logically isolate the computation layer from the NoC layer, automating data flow management and simplifying memory management tasks, allowing the computation layer to focus on computations while the overlay layer handles data transfer and communication tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data movement and memory management are handled directly by the computation layer in traditional NoC architectures, then the system can execute complex computations across multiple cores, but the computational resources are significantly consumed by communication overhead and programming complexity increases
Solution Approach 1:
The patent introduces an overlay layer as an intermediary between the computation layer and the physical NoC layer. This overlay layer provides abstraction mechanisms including virtual addresses, buffered communication, and automated data movement management, thereby reducing programming complexity while maintaining computation productivity
Solution Approach 2:
The patent segments the system into distinct layers: computation layer, overlay layer, and physical NoC layer. Each layer has specific responsibilities and interfaces, allowing independent optimization and reducing the complexity burden on the computation layer by offloading communication management to the overlay layer
2Quantity of substance
If multiple memory copy operations are issued to transmit larger amounts of data between cores, then the data transfer capacity increases, but the computational overhead and time required for management increases
Solution Approach 1:
The overlay layer performs preliminary actions by pre-establishing communication paths, pre-buffering data, and pre-managing memory allocation before actual data transfer occurs. This reduces the time required during actual computation by having communication management prepared in advance
Solution Approach 2:
The overlay layer enables continuous data transfer operations by implementing buffered communication and automated retransmission mechanisms, allowing data to be transferred continuously without interruption for management tasks, thereby reducing total management time while increasing effective data transfer volume
Data Source
AI summary
Methods and systems related to the efficient execution of complex computations by a multicore processor and the movement of data among the various processing cores in the multicore processor are disclosed. A multicore processor stack for the multicore processor can include a computation layer, for conducting computations using the processing cores in the multicore processor, with executable instructions for processing pipelines in the processing cores. The multicore processor stack can also include a network-on-chip layer, for connecting the processing cores in the multicore processor, with executable instructions for routers and network interface units in the multicore processor. The computation layer and the network-on-chip layer can be logically isolated by a network-on-chip overlay layer.


