Legal claims defining the scope of protection, as filed with the USPTO.
1. A System on Chip (SoC), comprising: an interconnect fabric including a plurality of nodes and interconnects coupled between the plurality of nodes; and a plurality of Intellectual Property (IP) agents interconnected by the interconnect fabric, the plurality IP agents configured to be sources and destinations of transactional traffic transmitted over the interconnect fabric between the IP agents, the transactional traffic including one or more of broadcasts, multicasts, read-response multicast and/or any-cast type transactions; the plurality of nodes of the interconnect fabric configured to make routing decisions on how to route and deliver the transactional traffic among the plurality of IP agents each by: arbitrating to select winning portions, on a clock cycle-by clock cycle basis, among competing portions of multiple transactions organized by streams, each stream defined by a unique combination of a transaction class and one of a plurality of virtual channels, the multiple transactions sometimes including one or more of the broadcasts, multicasts, read-response multicast and/or any-cast type transactions; associating each of the winning portions to one of the plurality of streams, each of the plurality of streams logically independent; and interleaving transmission, on a clock cycle-by-clock cycle basis, the winning portions over the interconnects within their associated logically independent streams respectively, wherein the transactional traffic including any of the broadcasts, multicasts, read-response multicast and/or any-cast type transactions having multiple portions are each associated with a unique transaction identifier so that the multiple portions of a given transaction that have been delivered to one or more destination IP agents can be identified and assembled into a complete transaction as transmitted by a source IP agent.
2. The SoC of claim 1 , wherein the interconnect fabric is arranged to reduce transaction traffic sent over the interconnect fabric by sending one instantiation of a portion of a given transaction over a shared interconnect between sending and receiving nodes within the interconnect fabric along a delivery path to one or more destination IP agents.
3. The SoC of claim, 2 , wherein the interconnect fabric is further arranged to reduce transaction traffic sent over the interconnect fabric by replicating the one instantiation of the portion at the receiving node and sending the replicated portions along different shared interconnect paths to two or more destination IP agents.
4. The SoC of claim 2 , wherein the interconnect fabric is further arranged to consolidate and send only one instantiation of a Completion transaction from the two or more destination IP agents over the shared interconnect.
5. The SoC of claim 1 , wherein the interconnect fabric is further arranged to reduce transactional traffic by configuring one or more nodes, among the plurality of nodes, to consolidate multiple response transactions and to send only one instantiation of the multiple response transactions along a shared interconnect to a target IP agent.
6. The SoC of claim 1 , wherein the interconnect fabric is further arranged to make a routing decision to route two or more independent transactions over a same stream, among a plurality of streams associated with a shared interconnect, wherein each of the plurality of streams is defined by a unique combination of a virtual channel and a transaction class.
7. The SoC of claim 1 , wherein the interconnect fabric includes duplicate physical resources sharing a common logical identifier and a routing decision involves (a) selecting one of the duplicate physical resources and (b) routing a given transaction to only the selected one of the duplicate physical resources.
8. The SoC of claim 7 , wherein the duplicate physical resources includes one of the following: (a) duplicate IP agents; (b) duplicate shared interconnects between two nodes of the interconnect fabric; (c) shared lines between an IP agent and a node of the interconnect fabric.
9. The SoC of claim 7 , wherein the routing decision is based on one of the following: (a) availability of the duplicate physical resources; (b) relative congestion between the duplicate physical resources; (c) load balancing between the duplicate physical resources; (d) a random selection between the duplicate physical resources; (e) a least recently used selection among the duplicate physical resources; (f) relative power consumption among the duplicate physical resources; (g) use of a hashing function to select among the duplicate physical resources; or (h) any combination of (a) through (g).
10. The SoC of claim 1 , wherein a routing decision on how to route and deliver the any of the broadcasts, multicasts, read-response multicast and/or any-cast type transactions over the interconnect fabric involves synchronizing delivery to two or more destination IP agents.
11. The SoC of claim 1 , wherein a routing decision on how to route and deliver any of the broadcasts, multicasts, read-response multicast and/or any-cast type transactions over the interconnect fabric involves allowing delivery to two or more destination IP agents to occur asynchronously.
12. The SoC of claim 1 , wherein at least one of the plurality of nodes includes a look up table for resolving one or more addresses specified in a select transaction into one or more logical identifiers for the one or more destination IP agents respectively.
13. The SoC of claim 1 , wherein each of the plurality of nodes is capable of translating one or more logical identifiers for the one or more destination IP agents into one or more port identifiers used for routing.
14. The SoC of claim 1 , wherein the broadcasts, multicasts, read-response multicast and/or any-cast type transactions each include a unique address that signifies to the interconnect fabric that the transaction is one of the broadcast, the multicast, the read-response multicast or the any-cast type transactions respectively.
15. The SoC of claim 1 , wherein any of the broadcasts, multicasts, read-response multicast and/or any-cast type transactions are further configured to include information provided by their source IP agents, the information resolved by the interconnect fabric into one of the following: (a) logical identifiers for the one or more destination IP agents; (b) a unique code, the unique code specify logical identifier(s) for the one or more destination IP agents; and (c) a vector of bits that represent logical identifier(s) for the one or more destination IP agents.
16. The SoC of claim 1 , wherein for a broadcast type transaction, the interconnect fabric makes a routing decision to route and deliver the broadcast transaction to each of the plurality of IP agents on the SoC, except the source IP agent for the broadcast type transaction.
17. The SoC of claim 1 , wherein for a multicast type transaction, the interconnect fabric makes a routing decision to route and deliver the multi-cast transaction to two or more of the plurality of IP agents on the SoC.
18. The SoC of claim 1 , wherein for a read-response multicast transaction, the read-response multicast transaction is delivered to one destination IP agent, but the interconnect fabric routes and delivers a Completion transaction to two or more of the plurality of IP agents on the SoC.
19. The SoC of claim 1 , wherein for an any-cast transaction, the interconnect fabric chooses the one or more destination IP agents and routes the any-cast transaction to the one or more destination IP agents.
20. The SoC of claim 1 , wherein the interconnect fabric is further arranged to make a routing decision to route two or more independent transactions over a same stream by assigning each a unique transaction identifier that enables the interconnect fabric to keep track of beats of each of the two or more independent transactions so that the two or more independent transactions can be routed over the same stream.
21. The SoC of claim 20 , wherein the two or more independent transactions routed over the same stream share common control information designating the same stream, but the transaction identifier for each of the two or more independent transactions is unique.
22. The SoC of claim 1 , wherein for broadcast transactions that are sent to all IP agents except the sending IP agent, the interconnect fabric is further configured to send only one instantiation of the broadcast transaction over a shared interconnect along a delivery path to two or more destination IP agents.
23. The SoC of claim 1 , wherein for multi-cast transactions that are sent to multiple but not all of the IP agents on the SoC, the interconnect fabric is further configured to send only one instantiation of the multicast transaction over a shared interconnect along a delivery path to two or more destination IP agents.
24. The SoC of claim 1 , wherein for an any-cast transaction, the interconnect fabric is configured to: (a) ascertain multiple destination IP agents for receipt of the any-cast transaction; and (b) send only one instantiation of the any-cast transaction over a shared interconnect along a delivery route to one or more of the ascertained multiple destination IP agents.
25. The SoC of claim 1 , wherein the interconnect fabric is further configured to send only one instantiation of a completion transaction, which is generated in response to a read-response transaction, over a shared interconnect along a delivery path to two or more destination IP agents.
26. The SoC of claim 1 , wherein for a select transaction, the interconnect fabric is further configured to send only one instantiation of the select transaction over a shared interconnect along a delivery path to two or more destination IP agents.
27. The SoC of claim 1 , further comprising multiple transaction classes and each virtual channel includes one of the streams for each of the multiple transaction classes respectively.
Unknown
May 11, 2021
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.