Network-on-Chip Task Allocation Using Rectangular Subnets
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-core network-on-chip technologies, the random allocation of threads to processor cores leads to interference between data streams, resulting in poor quality of service and reduced system performance due to high hardware overheads and low network throughput.
Innovation Solution
A task allocation method that determines the number of threads in a task and identifies continuous idle processor cores in a network-on-chip, forming a rectangular area if necessary to allocate threads, thereby avoiding the need for complex routing table determinations and reducing traffic congestion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If subnet division method is used to limit data streams to specific areas, then quality of service is improved, but device complexity and hardware overheads increase due to complex routing algorithms
Solution Approach 1:
The NoC is divided into multiple rectangular subnets, each subnet being an independent routing domain. This segmentation allows simple XY routing to be applied within each subnet while maintaining QoS through spatial isolation of different task data streams.
Solution Approach 2:
Instead of using complex routing algorithms to achieve subnet division, the patent inverts the approach by using simple rectangular subnet boundaries with XY routing, achieving the same QoS guarantee through geometric simplification rather than algorithmic complexity.
2Reliability
If routing algorithm is used for task allocation, then quality of service is improved, but productivity decreases due to low network throughput
Solution Approach 1:
By segmenting the NoC into rectangular subnets and using XY routing within each subnet, the patent reduces routing complexity and improves network throughput while maintaining QoS guarantees through spatial isolation.
Solution Approach 2:
The patent changes the routing parameter from complex adaptive routing to simple XY routing within rectangular subnets, improving throughput by reducing routing overhead and decision complexity while maintaining QoS through subnet boundaries.
3Adaptability or versatility
If irregular shaped subnet is created, then adaptability is improved, but device complexity increases due to complex routing algorithms required
Solution Approach 1:
The patent uses symmetric rectangular shapes for subnets rather than asymmetric irregular shapes, simplifying the routing algorithm to XY routing while still providing sufficient adaptability for task allocation.
Solution Approach 2:
The patent changes the subnet shape parameter from irregular to rectangular, which simplifies the routing algorithm complexity while maintaining adequate adaptability for various task configurations through the rectangular grid structure.
4Ease of operation
If random allocation of threads to processor cores is used, then ease of operation is improved, but reliability deteriorates due to data stream interference
Solution Approach 1:
The patent segments the NoC into rectangular subnets and allocates tasks to specific subnets, providing simple allocation rules while preventing data stream interference through spatial isolation, thus maintaining both ease of operation and reliability.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments of the present invention provide a task allocation method, a task allocation apparatus, and a network-on-chip. The method includes: determining the number of threads included in a to-be-processed task; determining, in a network-on-chip formed by a multi-core processor, a continuous area formed by routers-on-chip corresponding to multiple continuous idle processor cores whose number is equal to the number of the threads; if the area is a non-rectangular area, determining a rectangular area extended from the area; and if predicted traffic of each router-on-chip that is connected to a non-idle processor core and in the extended rectangular area does not exceed a preset threshold, allocating the multiple threads of the to-be-processed task to the idle processor cores in the area. According to the task allocation method provided in the embodiments of the present invention, the non-rectangular area is extended into a regular rectangular area by using an edge router to which a task has been allocated, and because task allocation is performed in combination with flexibility of an area shape and by using XY routing, problems of large hardware overheads, a low network throughput, low system utilization, and the like are avoided.