Bus arbitration with routing and failover mechanism
First Claim
1. An apparatus, comprising:
- a plurality of bus masters comprising a first bus master, a second bus master, a third bus master, and a fourth bus master wherein the bus masters control slave devices and a plurality of bus arbiters configured to support failover, wherein the plurality of bus arbiters comprises a first bus arbiter coupled to the first bus master and the second bus master and a second bus arbiter coupled to the third bus master and fourth bus master;
wherein the first bus master is directly coupled by a first path to the first bus arbiter;
wherein the second bus master is directly coupled by a second path to the first bus arbiter;
wherein the third bus master is directly coupled by a third path to the second bus arbiter;
wherein the fourth bus master is directly coupled by a fourth path to the second bus arbiter; and
a central processing unit (CPU) coupled to the bus arbiters;
wherein the CPU is coupled by a link to the first bus arbiter and to the second bus arbiter;
wherein the CPU communicates with the first bus arbiter and the second bus arbiter;
wherein the slave devices comprise a first group of slave devices and a second group of slave devices;
wherein the first bus master and second bus master control the first group of slave devices; and
wherein the third bus master and fourth bus master control the second group of slave devices;
wherein the CPU is configured to execute the failover in response to a bus failure or in response to idle, inactive, or unused buses coupled to the second bus arbiter, wherein the failover comprises the second bus arbiter failing over to the first bus arbiter so that the first bus arbiter takes over a role of the second bus arbiter.
2 Assignments
0 Petitions
Accused Products
Abstract
In an embodiment of the invention, an apparatus comprises: a plurality of bus masters and a plurality of bus arbiters to support routing and failover, wherein each bus arbiter is coupled to a plurality of bus masters; and a central processing unit (CPU) coupled to at least one of the bus arbiters; wherein the CPU is configured to execute a firmware that chooses bus re-routing or failover in response to a bus failure. In another embodiment of the invention, a method comprises: choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters, bus re-routing or failover in response to a bus failure. In yet another embodiment of the invention, an article of manufacture, comprises a non-transient computer-readable medium having stored thereon instructions that permit a method comprising: choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters, bus re-routing or failover in response to a bus failure.
-
Citations
17 Claims
-
1. An apparatus, comprising:
-
a plurality of bus masters comprising a first bus master, a second bus master, a third bus master, and a fourth bus master wherein the bus masters control slave devices and a plurality of bus arbiters configured to support failover, wherein the plurality of bus arbiters comprises a first bus arbiter coupled to the first bus master and the second bus master and a second bus arbiter coupled to the third bus master and fourth bus master; wherein the first bus master is directly coupled by a first path to the first bus arbiter; wherein the second bus master is directly coupled by a second path to the first bus arbiter; wherein the third bus master is directly coupled by a third path to the second bus arbiter; wherein the fourth bus master is directly coupled by a fourth path to the second bus arbiter; and a central processing unit (CPU) coupled to the bus arbiters; wherein the CPU is coupled by a link to the first bus arbiter and to the second bus arbiter; wherein the CPU communicates with the first bus arbiter and the second bus arbiter; wherein the slave devices comprise a first group of slave devices and a second group of slave devices; wherein the first bus master and second bus master control the first group of slave devices; and wherein the third bus master and fourth bus master control the second group of slave devices; wherein the CPU is configured to execute the failover in response to a bus failure or in response to idle, inactive, or unused buses coupled to the second bus arbiter, wherein the failover comprises the second bus arbiter failing over to the first bus arbiter so that the first bus arbiter takes over a role of the second bus arbiter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method, comprising:
-
choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters comprising a first bus arbiter and a second bus arbiter, a failover in response to a bus failure or in response to idle, inactive, or unused buses coupled to the second bus arbiter, wherein the failover comprises the second bus arbiter failing over to the first bus arbiter so that the first bus arbiter takes over a role of the second bus arbiter; wherein a plurality of bus masters comprises a first bus master, a second bus master, a third bus master, and a fourth bus master wherein the bus masters control slave devices, wherein the plurality of bus arbiters comprises the first bus arbiter coupled to the first bus master and the second bus master and the second bus arbiter coupled to the third bus master and fourth bus master; wherein the first bus master is directly coupled by a first path to the first bus arbiter; wherein the second bus master is directly coupled by a second path to the first bus arbiter; wherein the third bus master is directly coupled by a third path to the second bus arbiter; wherein the fourth bus master is directly coupled by a fourth path to the second bus arbiter; wherein the CPU is coupled by a link to the first bus arbiter and to the second bus arbiter; and wherein the CPU communicates with the first bus arbiter and the second bus arbiter; wherein the slave devices comprise a first group of slave devices and a second group of slave devices; wherein the first bus master and second bus master control the first group of slave devices; and wherein the third bus master and fourth bus master control the second group of slave devices. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. An article of manufacture, comprising:
-
a non-transitory computer-readable medium having stored thereon instructions operable to permit an apparatus to perform a method comprising; choosing, by a central processing unit (CPU) coupled to a plurality of bus arbiters comprising a first bus arbiter and a second bus arbiter, a failover in response to a bus failure or in response to idle, inactive, or unused buses coupled to the second bus arbiter, wherein the failover comprises the second bus arbiter failing over to the first bus arbiter so that the first bus arbiter takes over a role of the second bus arbiter; wherein a plurality of bus masters comprises a first bus master, a second bus master, a third bus master, and a fourth bus master wherein the bus masters control slave devices, wherein the plurality of bus arbiters comprises the first bus arbiter coupled to the first bus master and the second bus master and the second bus arbiter coupled to the third bus master and fourth bus master; wherein the first bus master is directly coupled by a first path to the first bus arbiter; wherein the second bus master is directly coupled by a second path to the first bus arbiter; wherein the third bus master is directly coupled by a third path to the second bus arbiter; wherein the fourth bus master is directly coupled by a fourth path to the second bus arbiter; wherein the CPU is coupled by a link to the first bus arbiter and to the second bus arbiter; and wherein the CPU communicates with the first bus arbiter and the second bus arbiter; wherein the slave devices comprise a first group of slave devices and a second group of slave devices; wherein the first bus master and second bus master control the first group of slave devices; and wherein the third bus master and fourth bus master control the second group of slave devices.
-
Specification