Reconfigurable NoC Interface Logic for Multi-Protocol SoC Integration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network on a chip (NoC) systems face challenges in balancing flexibility and footprint, as hardening components reduces flexibility but using programmable logic increases area usage, limiting their ability to support multiple communication protocols.
Innovation Solution
A system on a chip (SoC) with a reconfigurable NoC that includes ingress and egress logic blocks with multiple encoders and decoders, allowing switching between different communication protocols by updating configuration registers, enabling support for various protocols like memory mapped and streaming protocols without requiring extensive programmable logic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If programmable logic is used to form the NoC, then flexibility to support multiple communication protocols is improved, but area consumption increases
Solution Approach 1:
The patent implements multi-functionality by providing a single hardened NoC infrastructure that can support multiple communication protocols (AXI4, AXI4 Streaming, APB) through configurable interface elements. The NoC core remains permanent and hardened, while interface elements can be reconfigured to handle different protocols, eliminating the need for separate programmable NoC implementations for each protocol.
Solution Approach 2:
The patent applies parameter changes by allowing configuration of interface elements through configuration registers that can be modified at runtime. This enables the same physical hardware to change its operational parameters (protocol type, data width, timing characteristics) to adapt to different communication protocols without physical reconfiguration or area reallocation.
2Area of stationary object
If hardened circuitry is used for the NoC, then area consumption is reduced, but flexibility to reconfigure for different protocols is lost
Solution Approach 1:
The patent segments the NoC into two distinct parts: a permanent hardened NoC core that provides the routing infrastructure and switches, and reconfigurable interface elements that handle protocol-specific operations. This segmentation allows the bulk of the NoC to remain hardened and area-efficient while only the interface elements require reconfigurability, resolving the contradiction between hardness and flexibility.
Solution Approach 2:
The patent introduces configuration registers as intermediaries between the hardened NoC core and the protocol-specific interface elements. These registers mediate the reconfiguration process, allowing protocol changes to be implemented by updating register values rather than physically reconfiguring the hardened circuitry, thus maintaining area efficiency while enabling flexibility.
3Adaptability or versatility
If multiple encoders and decoders are provided for different protocols, then protocol support versatility is improved, but device complexity increases
Solution Approach 1:
The patent implements dynamics by making the encoder/decoder selection configurable rather than fixed. The interface elements can dynamically switch between different encoders and decoders based on the active communication protocol, as controlled by configuration registers. This dynamic selection mechanism reduces the need for all encoders and decoders to be simultaneously active, managing complexity through time-multiplexed functionality.
Data Source
Figure 1
Figure 2~3
Figure 4
AI summary
Embodiments herein describe a SoC that includes a programmable NoC (105) that can be reconfigured to support different interface communication protocols. In one embodiment, the NoC includes ingress and egress logic blocks (115, 140) which permit hardware elements in the SoC (e.g., processors (410), memory (415), programmable logic blocks (405), etc.) to transmit and receive data using the NoC. The ingress and egress logic blocks may first be configured to support a particular communication protocol for interfacing with the hardware elements. However, at a later time, the user may wish to reconfigure the ingress and egress logic blocks to support a different communication protocol. In response, the SoC can reconfigure the NoC such that the ingress and egress logic blocks support the new communication protocol used by the hardware elements. In this manner, the programmable NoC can support multiple communication protocols used to interface with other hardware elements in the SoC.