US2005080961A1PendingUtilityA1

Communication steering for use in a multi-master shared resource system

Priority: Oct 9, 2003Filed: Oct 9, 2003Published: Apr 14, 2005
Est. expiryOct 9, 2023(expired)· nominal 20-yr term from priority
G06F 13/36G06F 1/32G06F 13/364G06F 13/14
44
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

New approaches for providing communication between multiple masters ( 12, 14 ) and one or more shared resources ( 24, 30, 100 ) are needed. One example of a resource that may need to be shared is circuitry complying with the Universal Serial Bus (USB) standard ( 100 ). The USB specification defines the use of USB endpoints as data and control channels that reside in a USB device. In some cases it is desirable to have a certain number of endpoints controlled by one processor, and other endpoints controlled by a different processor, thus providing a shared control of all the endpoints. Circuitry ( 402, 417, 480 ) may be used to provide steering for additional signals such as interrupts. Other shared resources ( 24, 30 ) may use more centralized circuitry ( 36 ) to perform a steering function for additional signals.

Claims

exact text as granted — not AI-modified
1 . A data processing system, comprising: 
 a system bus;    a first bus master coupled to the system bus;    a second bus master coupled to the system bus;    a resource coupled to the system bus, wherein the resource is configurable to be owned by at least one of the first bus master and the second bus master; and    additional signal steering logic which establishes a communication path, based on ownership of the resource, between the resource and at least one of the first bus master and the second bus master, wherein the communication path is used to transfer at least one additional signal between the resource and the at least one of the first bus master and the second bus master.    
     
     
         2 . The data processing system of  claim 1 , wherein the data processing system further comprises resource ownership storage circuitry which indicates ownership of the resource.  
     
     
         3 . The data processing system of  claim 2 , wherein the resource ownership storage circuitry indicates at least one of whether the first bus master owns the resource, whether the second bus master owns the resource, and whether neither the first nor the second bus master owns the resource.  
     
     
         4 . The data processing system of  claim 2 , wherein the resource ownership storage circuitry indicates that the resource is unowned when both the first bus master and the second bus master claim ownership of the resource.  
     
     
         5 . The data processing system of  claim 2 , wherein the resource ownership storage circuitry indicates that the resource is unowned when neither the first bus master nor the second bus master claim ownership of the resource.  
     
     
         6 . The data processing system of  claim 2 , wherein the additional signal steering logic establishes the communication path based on information stored within the resource ownership storage circuitry.  
     
     
         7 . The data processing system of  claim 1 , wherein the additional signal steering logic establishes the communication path between the resource and only one of the first bus master and the second bus master.  
     
     
         8 . The data processing system of  claim 1 , wherein the additional signal steering logic establishes the communication path between the resource and each of the first bus master and the second bus master.  
     
     
         9 . The data processing system of  claim 1 , wherein the at least one additional signal is not a part of the system bus.  
     
     
         10 . The data processing system of  claim 1 , wherein the system bus operates according to a system bus protocol, and the at least one additional signal operates outside the system bus protocol.  
     
     
         11 . The data processing system of  claim 1 , further comprising a peripheral, wherein the peripheral comprises the resource.  
     
     
         12 . The data processing system of  claim 11 , wherein the peripheral comprises a second resource, and wherein the additional signal steering logic establishes a second communication path, based on ownership of the second resource, between the second resource and at least one of the first bus master and the second bus master for transferring at least one additional signal associated with the second resource.  
     
     
         13 . The data processing system of  claim 1 , further comprising a second resource coupled to the system bus, wherein the additional signal steering logic establishes a second communication path, based on ownership of the second resource, between the second resource and at least one of the first bus master and the second bus master for transferring at least one additional signal associated with the second resource.  
     
     
         14 . The data processing system of  claim 1 , wherein the additional signal steering logic establishes the communication path between the resource and an owning bus master of the first bus master and the second bus master, the owning bus master owning the resource.  
     
     
         15 . The data processing system of  claim 1 , wherein the additional signal steering logic comprises map storage circuitry which stores a map definition, and wherein the additional signal steering logic establishes the communication path based on the map definition.  
     
     
         16 . The data processing system of  claim 15 , wherein the map definition is programmable by an owning bus master of the first bus master and the second bus master, the owning bus master owning the resource.  
     
     
         17 . The data processing system of  claim 15 , wherein the map storage circuitry stores a plurality of map definitions, and wherein the additional signal steering logic establishes the communication path based on one of the plurality of map definitions selected based on ownership of the resource.  
     
     
         18 . The data processing system of  claim 17 , wherein the one of the plurality of map definitions is selected based on at least one of whether the first bus master owns the resource, whether the second bus master owns the resource, and whether the resource is unowned.  
     
     
         19 . The data processing system of  claim 1 , wherein the resource comprises at least a portion of the additional signal steering logic.  
     
     
         20 . A method for communicating an additional signal in a data processing system having a system bus, comprising: 
 establishing a communication path between a resource coupled to the system bus and at least one of a plurality of bus masters coupled to the system bus based on ownership of the resource; and    transferring the additional signal, separate from the system bus, between the resource and the at least one of the plurality of bus masters via the communication path.    
     
     
         21 . The method of  claim 20 , wherein establishing the communication path comprises: 
 determining an owning bus master from the plurality of bus masters which owns the resource; and    establishing the communication path between the resource and the owning bus master.    
     
     
         22 . The method of  claim 21 , wherein establishing the communication path further comprises: 
 when the resource is unowned by any of the plurality of bus masters, establishing the communication path between the resource and the at least one of the bus masters based on a map definition defined by a first master of the plurality of bus masters.    
     
     
         23 . The method of  claim 20 , wherein establishing the communication path comprises: 
 establishing the communication path between the resource and the at least one of the plurality of bus masters based on a map definition defined by an owning master of the plurality of bus masters which owns the resource.    
     
     
         24 . The method of  claim 20 , wherein establishing the communication path comprises: 
 selecting one of a plurality of map definitions based on ownership of the resource; and    establishing the communication path between the resource and the at least one of the plurality of bus masters based on the selected one of the plurality of map definitions.    
     
     
         25 . A data processing system, comprising: 
 a system bus;    a first bus master coupled to the system bus;    a second bus master coupled to the system bus;    a resource coupled to the system bus and useable by the first bus master and the second bus master, wherein the resource is configurable to be owned by at least one of the first bus master and the second bus master; and    additional signal steering logic which establishes a communication path between the resource and at least one of the first bus master and the second bus master, wherein the communication path is used to transfer at least one additional signal between the resource and the at least one of the first bus master and the second bus master, and wherein the communication path is determined by the resource.    
     
     
         26 . The data processing system of  claim 25 , wherein the communication path is determined by a current state of the resource.  
     
     
         27 . The data processing system of  claim 26 , wherein the current state of the resource comprises an operating mode of the resource.  
     
     
         28 . The data processing system of  claim 25 , wherein the communication path is determined based a map definition defined by the resource.  
     
     
         29 . The data processing system of  claim 28 , wherein the additional signal steering logic comprises map definition storage circuitry which stores the map definition.  
     
     
         30 . The data processing system of  claim 25 , wherein the additional signal steering logic establishes the communication path between the resource and both the first bus master and the second bus master.  
     
     
         31 . The data processing system of  claim 25 , wherein the at least one additional signal is not a part of the system bus.  
     
     
         32 . The data processing system of  claim 25 , wherein the system bus operates according to a system bus protocol, and the at least one additional signal operates outside the system bus protocol.  
     
     
         33 . The data processing system of  claim 25 , wherein the resource comprises at least a portion of the additional signal steering logic.  
     
     
         34 . A method for communicating an additional signal in a data processing system having a system bus, comprising: 
 establishing a communication path between a resource coupled to the system bus and at least one of a plurality of bus masters coupled to the system bus, wherein the communication path is determined by the resource; and    transferring the additional signal, separate from the system bus, between the resource and the at least one of the plurality of bus masters via the communication path.    
     
     
         35 . The method of  claim 34 , wherein establishing the communication path comprises: 
 determining a current state of the resource; and    establishing the communication path based on the current state of the resource.    
     
     
         36 . The method of  claim 34 , wherein establishing the communication path comprises: 
 providing a map definition defined by the resource; and    establishing the communication path based on the map definition.

Join the waitlist — get patent alerts

Track US2005080961A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.