CA2503335A1 - Method and apparatus for pre-emptively arbitrating on an acyclic directed graph - Google Patents

Method and apparatus for pre-emptively arbitrating on an acyclic directed graph Download PDF

Info

Publication number
CA2503335A1
CA2503335A1 CA002503335A CA2503335A CA2503335A1 CA 2503335 A1 CA2503335 A1 CA 2503335A1 CA 002503335 A CA002503335 A CA 002503335A CA 2503335 A CA2503335 A CA 2503335A CA 2503335 A1 CA2503335 A1 CA 2503335A1
Authority
CA
Canada
Prior art keywords
node
adjacent
nodes
signal
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA002503335A
Other languages
French (fr)
Other versions
CA2503335C (en
Inventor
Florin Oprescu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Computer, Inc.
Florin Oprescu
Apple Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Computer, Inc., Florin Oprescu, Apple Inc. filed Critical Apple Computer, Inc.
Priority to CA2698356A priority Critical patent/CA2698356C/en
Publication of CA2503335A1 publication Critical patent/CA2503335A1/en
Application granted granted Critical
Publication of CA2503335C publication Critical patent/CA2503335C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40078Bus configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/37Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • G06F15/17343Direct connection machines, e.g. completely connected computers, point to point communication networks wherein the interconnection is dynamically configurable, e.g. having loosely coupled nearest neighbor architecture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40084Bus arbitration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation

Abstract

A bus arbitration scheme is implemented in a system where an arbitrary assembly of nodes on a system bus have been resolved into an acyclic directed graph. The hierarchical arrangement of nodes has one node designated a root while all other nodes have established parent-child relationships with the nodes to which they are linked.
Each node may have a plurality of connected child ports with a predetermined acknowledgment priority scheme established. Fair bus access arbitration provides for bus granting in a sequence corresponding to the predetermined port priorities allowing all nodes a turn on the bus. The root node may always assert its priority access status to gain bus access which is useful for accommodating a root node which requires isochronous data transfer.
Alternatively, a token passing arbitration scheme may be implemented where the token for bus access is passed around the nodes according to the above-described predetermined port priority scheme. Preemptive bus initialization may be triggered by any node upon detection of a necessitating error or addition or removal of a connection to an existing node.

Claims (102)

1. A computer system comprising a plurality of components, said plurality of components each having at least one communications node wherein said communications nodes of said plurality of components are interconnected by communications links, said communications nodes and communications links comprising a bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, said directed acyclic graph having established hierarchical parent-child relationships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, to arbitrate access to the bus the computer system further comprising:
means for transmitting a " Bus Request " (BR) signal from a requesting node to a parent node, said requesting node having a packet of information to propagate on said bus;
means for, each node that receives the BR signal, forwarding the BR signal to a parent node;
means for the root node, upon receiving the BR signal from one adjacent node, responding to said adjacent node with a " Bus Grant " (BG) signal;

means for, each node that receives the BG signal from a parent node, propagating the BG signal to a child node which previously forwarded the BR signal, except the requesting node; and means for the requesting node, upon receiving the BG
signal, propagating said packet of information on the bus, wherein after the requesting node has propagated said packet of information, the requesting node waits for a gap period before again requesting access to said bus, said gap period being greater than a worst case signal propagation delay through the bus.
2. The computer system of claim 1, further comprising:
means for, before transmitting the BR signal, transmitting a first " Bus Denied " (BD) signal from said requesting node to any child nodes said requesting node has.
3. The computer system of claim 2, further comprising:
means for propagating a BD signal from each node that forwards the BR signal to a parent node to all child nodes that were not the source of the BR signal.
4. The computer system of claim 3, further comprising:
means for said root node, after responding to the adjacent node with a BG signal, propagating a second BD
signal to all other adjacent nodes.
5. The computer system of claim 4, further comprising:
means for, all nodes receiving the second BD signal, propagating said second BD signal to all adjacent child nodes.
6. The computer system of claim 5, further comprising:
means for said requesting node, before propagating said packet of information, transmitting a "Bus Acknowledge" (BA) signal to acknowledge receipt of the BG
signal.
7. The computer system of claim 6, further comprising:
means for, each node that receives the BA signal, forwarding the BA signal to a parent node.
8. The computer system of claim 1, further comprising:
means for the root node, upon determining that the root node requires access to the bus, propagating a BD
signal to all adjacent nodes and granting access to the bus to the root node.
9. The computer system of claim 7, further comprising:
means for the root node, upon determining that the root node requires access to the bus, propagating a BD
signal to all adjacent nodes and granting access to the bus to the root node.
10. The computer system of claim 1, wherein the root node solves conflicting simultaneous requests for the bus by granting the bus based on a predetermined adjacent node selection criterion.
11. A computer system comprising a plurality of components, said plurality of components each having at least one communications node wherein said communications nodes of said plurality of components are interconnected by communications links, said communications nodes and communications links comprising a bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, said directed acyclic graph having established hierarchical parent-child relationships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, to arbitrate access to the bus the computer system further comprising:
means for transmitting a "Bus Denied" (BD) signal from a requesting node to all adjacent child nodes, said requesting node having a packet of information to propagate on said bus;
means for transmitting a "Bus Request" (BR) signal from the requesting node to a parent node;
means for, each node that receives the BR signal, forwarding the BR signal to a parent node and propagating a BD signal to all child nodes that were not the source of the BR signal;
means for the root node, upon receiving the BR signal from one adjacent node, responding to said adjacent node with a "Bus Grant" (BG) signal, said root node propagating a BD signal to all other adjacent nodes;
means for, each node that receives the BG signal from a parent node, propagating the BG signal to a child node which had previously forwarded the BR signal, except the requesting node;

means for the requesting node, upon receiving the BG
signal, acknowledging receipt of said BG signal and propagating said packet of information; and means for the root node, upon determining that the root node requires access to the bus, propagating a BD
signal to all adjacent nodes and granting access to the bus to the root node.
12. The computer system of claim 11, wherein the root node solves conflicting simultaneous requests for the bus by granting the bus based on a predetermined adjacent node selection criterion.
13. A computer system comprising a plurality of components, said plurality of components each having at least one communications node wherein said communications nodes of said plurality of components are interconnected by communications links, said communications nodes and communications links comprising a bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, said directed acyclic graph having established hierarchical parent-child relationships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, a metaphorical token passed from node to node in a cycle through the directed acyclic graph for token passing bus access arbitration, the node having the token being the node with bus access, the computer system further comprising:
means far passing the token through the directed acyclic graph in an order determined by a predetermined selection criterion each node has established for selecting adjacent nodes.
14. In a computer system comprising a plurality of components, the plurality of components each having at least one communications node wherein the communications nodes of the plurality of components are interconnected by communications links, the communications nodes and communications links comprising a bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, the directed acyclic graph having established hierarchical parent-child relationships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, a requesting node to access the bus, the requesting node comprising:
means for generating a first "Bus Request" (BR) signal when the requesting node has information to propagate onto the bus;
means for forwarding the first BR signal from the requesting node to an adjacent parent node;

means for propagating information onto the bus upon receiving a "Bus Grant" (BG) signal; and means for waiting, after the propagating, for a gap period before generating a second BR signal, the gap period being greater than a worst case signal propagation delay through the bus;
wherein the first BR signal is forwarded by any receiving node to a respective adjacent parent node;
wherein the BG signal is generated at a root node upon receiving the first BR signal forwarded from one adjacent node of the root node; and wherein the BG signal is forwarded by any node having the BG signal to an adjacent child node which previously forwarded the first BR signal.
15. The requesting node of claim 14, further comprising:
means for transmitting a "Bus Denied" (BD) signal from the requesting node to any child nodes the requesting node has when the requesting node requests access to the bus to propagate information.
16. The requesting node of claim 15, wherein any receiving node of the first BR signal propagates a BD
signal to all adjacent child nodes which did not forward the BR signal.
17. The requesting node of claim 16, wherein any receiving node of a BD signal propagates the corresponding BD signal to all adjacent child nodes.
18. The requesting node of claim 14, further comprising:

means for transmitting a "Bus Acknowledge" (BA) signal before the propagating.
19. The requesting node of claim 18, wherein the BA
signal is transmitted to the adjacent parent node of the requesting node; and the BA signal is forwarded by any receiving node to a respective adjacent parent node.
20. The requesting node of claim 14, wherein a node solves conflicting simultaneous BR signals from adjacent child nodes by selecting a BR signal from the conflicting BR signals based on a predetermined adjacent node selection criterion.
21. In a computer system comprising a plurality of components, the plurality of components each having at least one communications node wherein the communications nodes of the plurality of components are interconnected by communications links, the communications nodes and communications links comprising a bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, the directed acyclic graph having established hierarchical parent-child relationships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, a first node connected to at least one adjacent node on the bus, the first node being capable of having at least one child node, the first node comprising:
when the first node has at least one adjacent child node:
means for receiving a first "Bus Request" (BR) signal from a second node, the second node being one of the at least one adjacent child node of the first node;
when the first node has a parent node:
means for forwarding the first BR signal to the parent node of the first node after receiving the first BR
signal;
means for forwarding a first "Bus Grant" (BG) signal for the first BR signal from the parent node of the first node to the second node;
means for transmitting a second BR signal to the parent node of the first node when the first node requires access to the bus to propagate information; and means for receiving a second BG signal for the second BR signal from the parent node of the first node;
when the first node has no parent node:
means for transmitting a third BG signal for the first BR signal to the second node; and means for granting the first node access to the bus when the first node requires access to the bus to propagate information.
22. The first node of claim 21, further comprising:
when the first node has at least one adjacent child node:
means for transmitting a first "Bus Denied" (BD) signal to all of the at least one adjacent child node when the first node requires access to the bus to propagate information; and means for transmitting a second BD signal to all of the at least one adjacent child node except the second node in response to receiving the first BR signal;
when the first node has a parent node:
means for forwarding a third BD signal from the parent node of the first node to all of the at least one adjacent child node except the second node.
23. The first node of claim 22, further comprising:
means for acknowledging receiving the second BG
signal when the first node has a parent node.
24. The first node of claim 22, further comprising:
means for receiving a "Bus Acknowledge" (BA) signal from the second node.
25. The first node of claim 24, further comprising:
means for forwarding the BA signal to the parent node of the first node.
26. The first node of claim 21, wherein the first node solves conflicting simultaneous BR signals from the at least one adjacent child node by selecting a BR signal from the conflicting BR signals based on a predetermined adjacent node selection criterion.
27. The first node of claim 26, wherein the first node solves conflicting requests for accessing the bus from any adjacent nodes bases on a predetermined selection criterion.
28. The first node of claim 21, further comprises:
means for waiting for a gap period before again requesting access to the bus after successfully obtaining access to the bus, the gap period being greater than a worst case signal propagation delay through the bus.
29. The first node of claim 21, wherein the first node is a root node.
30. A first node to communicate with a plurality of adjacent nodes through a plurality of point-to-point links connected from the first node to the plurality adjacent nodes respectively, the first node comprising:
means for passing a token from the first node to one of the plurality of adjacent nodes according to a predetermined selection criterion for selecting a node from the plurality of adjacent nodes.
31. A first node as in claim 30, further comprising:
means for receiving, at the first node, the token from one of the plurality of adjacent nodes; and means for transmitting data from the first node when the first node is in possession of the token for data transmission.
32. A first node as in claim 31, wherein the plurality of adjacent nodes comprises child nodes of the first node;
and, the token is passed from the first node to the child nodes in an order according to the predetermined selection criterion.
33. A first node as in claim 32, wherein the first node is in possession of the token for data transmission after the first node passes the token to each of the child nodes once.
34. A first node as in claim 33, wherein the plurality of adjacent nodes comprises a parent node of the first node;
the token is received at the first node from the parent node before the token is passed to the child nodes; and, the token is passed from the first node to the parent node after the first node is in possession of the token.
35. A first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent node respectively, the first node comprising:
means for counting, since a starting point of a node identification process, a number of announcements received by the first node;
means for passing a token from the first node to one of the at least one adjacent node according to a predetermined selection criterion for selecting a node from the at least one adjacent node;
means for broadcasting an announcement from the first node when the first node is in possession of the token for data transmission; and means for setting a unique address for the first node based on the number of announcements received by the first node since the starting point to when the first node is in possession of the token for data transmission.
36. A first node as in claim 35, wherein the token is a "Bus Grant" (BG) signal.
37. A first node as in claim 36, wherein the at least one adjacent node comprises child nodes of the first node;
and, the token is passed from the first node to the child nodes in an order according to the predetermined selection criterion.
38. A first node as in claim 37, wherein the first node is in possession of the token for data transmission after the first node passes the token to each of the child nodes once.
39. A first node as in claim 38, wherein the at least one adjacent node comprises a parent node of the first node;
the token is received at the first node from the parent node before the token is passed to the child nodes; and, the token is passed from the first node to the parent node after the first node is in possession of the token.
40. A first node as in claim 35, wherein the announcement comprises topology information concerning the first node.
41. A first node as in claim 40, wherein the topology information includes information about at least one adjacent node and link status.
42. A computer system comprising a plurality of components, the plurality of components each having at least one communications node wherein the communications nodes of the plurality of components are interconnected by communications links, the communications nodes and communications links comprising a bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, the directed acyclic graph having established hierarchical parent-child relations ships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, the computer system further comprising:
means for propagating a "Bus Initialization" (BI) signal from any node determining that bus initialization is necessary;
means for sustaining the BI signal for a predetermined period of time; and means for propagating that signal throughout the directed acyclic graph to all nodes in the directed acyclic graph.
43. A first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent nodes respectively, the first node comprising:
means for determining a first determination that a parent-child relationship between the first node and one of the at least one adjacent node is to be changed;
means for sustaining a "Bus Initialization" (BI) signal for a period of time to propagate the BI signal from the first node to the at least one adjacent node in response to the first determination; and means for communicating with the at least one adjacent node to perform bus initialization.
44. A first node as in claim 43, wherein said means for communicating comprises:
means for delaying for a period before propagating a "You Are My Parent" (YAMP) signal from the first node to any of the at least one adjacent node to increase a chance of the first node to become a parent of the at least one adjacent node.
45. A first node as in claim 44, wherein the period is sufficient long such that the first node receives a "You Are My Parent" (YAMP) signal from each of the at least one adjacent node to become a parent of the at least one adjacent node.
46. A first node as in claim 43, wherein said means for communicating comprises:
means for determining an unique address of the first node for communication with the at least one adjacent node.
47. A first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent nodes respectively, the first node comprising:
means for determining a change in status of a second node in communication with the first node through a point-to-point link;

means for sustaining a "Bus Initialization" (BI) signal for a period of time to propagate the BI signal from the first node to the at least one adjacent node in response to the change; and means for performing bus initialization in communication with the at least one adjacent node.
48. A first node as in claim 47, wherein the change in status comprises one of:
a) addition of the second node in communication with the first node; and b) removal of the second node in communication with the first node.
49. A first node as in claim 47, wherein said means for performing bus initialization comprises:
means for determining a parent-child relationship between the first node and each of the at least one adjacent node.
50. A first node as in claim 49, wherein said means for performing bus initialization comprises:
means for determining an unique address of the first node for communication with the at least one adjacent node.
51. A first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent nodes respectively, the first node comprising:
means for determining an error condition in communication through the at least one links;

means for sustaining a "Bus Initialization" (BI) signal for a period of time to propagate the BI signal from the first node to the at least one adjacent node in response to the error condition; and means for performing bus initialization in communication with the at least one adjacent node.
52. A first node as in claim 51, wherein said means for performing bus initialization comprises:
means for determining a parent-child relationship between the first node and each of the at least one adjacent node.
53. A first node as in claim 52, wherein said means for performing bus initialization comprises:
means for determining an unique address of the first node for communication with the at least one adjacent node.
54. A first node to communicate with a plurality of adjacent nodes through a plurality of point-to-point links connected from the first node to the plurality adjacent nodes respectively, the first node comprising:
means for receiving a "Bus Initialization" (BI) signal from a second node of the plurality of adjacent nodes;
means for sustaining the BI signal for a period of time to propagate the BI signal from the first node to the plurality of adjacent nodes except the second node in response to receiving the BI signal; and means for performing bus initialization in communication with the plurality of adjacent nodes.
55. A first node as in claim 54, wherein said means for performing bus initialization comprises:
means for determining a parent-child relationship between the first node and each of the plurality of adjacent nodes.
56. A first node as in claim 54, wherein said means for performing bus initialization comprises:
means for determining an unique address of the first node for communication with the plurality of adjacent nodes.
57. A first node as in claim 54, further comprising:
means for determining a first determination that bus initialization is necessary; and means for sustaining a BI signal for a period of time to propagate the BI signal to the plurality of adjacent nodes in response to the first determination.
58. A first node as in claim 57, wherein the first determination is in response to one of:
a) a determination that a parent-child relationship between the first node and one of the plurality of adjacent nodes is to be changed;
b) a determination that an adjacent node becomes engaged to the first node for communication;
c) a determination that an adjacent node becomes disengaged from the first node for communication;
and d) a determination of an error condition in communication through the plurality of links.
59. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method on a requesting node to access a bus of a computer system comprising a plurality of components, the plurality of components each having at least one communications node wherein the communications nodes of the plurality of components are interconnected by communications links, the communications nodes and communications links comprising the bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, the directed acyclic graph having established hierarchical parent-child relationships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, the method comprising:
generating a first "Bus Request" (BR) signal when the requesting node has information to propagate onto the bus;
forwarding the first BR signal from the requesting node to an adjacent parent node;
propagating information onto the bus upon receiving a "Bus Grant" (BG) signal; and waiting, after the propagating, for a gap period before generating a second BR signal, the gap period being greater than a worst case signal propagation delay through the bus;
wherein the first BR signal is forwarded by any receiving node to a respective adjacent parent node;
wherein the BG signal is generated at a root node upon receiving the first BR signal forwarded from one adjacent node of the root node; and wherein the BG signal is forwarded by any node having the BG signal to an adjacent child node which previously forwarded the first BR signal.
60. The medium of claim 59, wherein the method further comprises:
transmitting a "Bus Denied" (BD) signal from the requesting node to any child nodes the requesting node has when the requesting node requests access to the bus to propagate information.
61. The medium of claim 60, wherein any receiving node of the first BR signal propagates a BD signal to all adjacent child nodes which did not forward the BR signal.
62. The medium of claim 61, wherein any receiving node of a BD signal propagates the corresponding BD signal to all adjacent child nodes.
63. The medium of claim 59, wherein the method further comprises:
transmitting a "Bus Acknowledge" (BA) signal before the propagating.
64. The medium of claim 63, wherein the BA signal is transmitted to the adjacent parent node of the requesting node; and the BA signal is forwarded by any receiving node to a respective adjacent parent node.
65. The medium of claim 59, wherein a node solves conflicting simultaneous BR signals from adjacent child nodes by selecting a BR signal from the conflicting BR
signals based on a predetermined adjacent node selection criterion.
66. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method on a first node to access a bus of a computer system comprising a plurality of components, the plurality of components each having at least one communications node wherein the communications nodes of the plurality of components are interconnected by communications links, the communications nodes and communications links comprising the bus of a directed acyclic graph wherein one node is designated a root node, all nodes coupled to only one adjacent node being designated leaf nodes, all other nodes in the directed acyclic graph being designated branch nodes, the directed acyclic graph having established hierarchical parent-child relationships between all adjacent nodes proceeding from the root node down to any leaf nodes wherein a leaf node has only one parent node and all nodes adjacent to the root node are child nodes with respect to the root node but parent nodes with respect to other adjacent nodes, the root node being defined as having no parent node, the first node connected to at least one adjacent node on the bus, the first node being capable of having at least one child node, the method comprising:
when the first node has at least one adjacent child node:
receiving a first "Bus Request" (BR) signal from a second node, the second node being one of the at least one adjacent child node of the first node;
when the first node has a parent node:
forwarding the first BR signal to the parent node of the first node after receiving the first BR signal;
forwarding a first "Bus Grant" (BG) signal for the first BR signal from the parent node of the first node to the second node;
transmitting a second BR signal to the parent node of the first node when the first node requires access to the bus to propagate information and receiving a second BG signal for the second BR signal from the parent node of the first node;
when the first node has no parent node:
transmitting a third BG signal for the first BR
signal to the second node; and granting the first node access to the bus when the first node requires access to the bus to propagate information.
67. The medium of claim 66, wherein the method further comprises:
when the first node has at least one adjacent child node:
transmitting a first "Bus Denied" (BD) signal to all of the at least one adjacent child node when the first node requires access to the bus to propagate information;
and transmitting a second BD signal to all of the at least one adjacent child node except the second node in response to receiving the first BR signal;
when the first node has a parent node:
forwarding a third BD signal from the parent node of the first node to all of the at least one adjacent child node except the second node.
68. The medium of claim 67, wherein the method further comprises:
acknowledging receiving the second BG signal when the first node has a parent node.
69. The medium of claim 67, wherein the method further comprises:
receiving a "Bus Acknowledge" (BA) signal from the second node.
70. The medium of claim 69, wherein the method further comprises:
forwarding the BA signal to the parent node of the first node.
71. The medium of claim 66, wherein the first node solves conflicting simultaneous BR signals from the at least one adjacent child node by selecting a BR signal from the conflicting BR signals based on a predetermined adjacent node selection criterion.
72. The medium of claim 71, wherein the first node solves conflicting requests for accessing the bus from any adjacent nodes bases on a predetermined selection criterion.
73. The medium of claim 66, further comprises:
waiting for a gap period before again requesting access to the bus after successfully obtaining access to the bus, the gap period being greater than a worst case signal propagation delay through the bus.
74. The medium of claim 66, wherein the first node is a root node.
75. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method for a first node to communicate with a plurality of adjacent nodes through a plurality of point-to-point links connected from the first node to the plurality adjacent nodes respectively, the method comprising:
passing a token from the first node to one of the plurality of adjacent nodes according to a predetermined selection criterion for selecting a node from the plurality of adjacent nodes.
76. A medium as in claim 75, wherein the method further comprises:
receiving, at the first node, the token from one of the plurality of adjacent nodes; and transmitting data from the first node when the first node is in possession of the token for data transmission.
77. A medium as in claim 76, wherein the plurality of adjacent nodes comprises child nodes of the first node;
and, the token is passed from the first node to the child nodes in an order according to the predetermined selection criterion.
78. A medium as in claim 77, wherein the first node is in possession of the token for data transmission after the first node passes the token to each of the child nodes once.
79. A medium as in claim 78, wherein the plurality of adjacent nodes comprises a parent node of the first node;
the token is received at the first node from the parent node before the token is passed to the child nodes; and, the token is passed from the first node to the parent node after the first node is in possession of the token.
80. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method for a first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent node respectively, the method comprising:
counting, since a starting point of a node identification process, a number of announcements received by the first node;
passing a token from the first node to one of the at least one adjacent node according to a predetermined selection criterion for selecting a node from the at least one adjacent node;

broadcasting an announcement from the first node when the first node is in possession of the token for data transmission; and setting a unique address for the first node based on the number of announcements received by the first node since the starting point to when the first node is in possession of the token for data transmission.
81. A medium as in claim 80, wherein the token is a "Bus Grant" (BG) signal.
82. A medium as in claim 81, wherein the at least one adjacent node comprises child nodes of the first node;
and, the token is passed from the first node to the child nodes in an order according to the predetermined selection criterion.
83. A medium as in claim 82, wherein the first node is in possession of the token for data transmission after the first node passes the token to each of the child nodes once.
84. A medium as in claim 83, wherein the at least one adjacent node comprises a parent node of the first node;
the token is received at the first node from the parent node before the token is passed to the child nodes; and, the token is passed from the first node to the parent node after the first node is in possession of the token.
85. A medium as in claim 80, wherein the announcement comprises topology information concerning the first node.
86. A medium as in claim 85, wherein the topology information includes information about at least one adjacent node and link status.
87. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method for a first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent nodes respectively, the method comprising:
determining a first determination that a parent-child relationship between the first node and one of the at least one adjacent node is to be changed;
sustaining a "Bus Initialization" (BI) signal for a period of time to propagate the BI signal from the first node to the at least one adjacent node in response to the first determination; and communicating with the at least one adjacent node to perform bus initialization.
88. A medium as in claim 87, wherein said communicating comprises:
delaying for a period before propagating a "You Are My Parent" (YAMP) signal from the first node to any of the at least one adjacent node to increase a chance of the first node to become a parent of the at least one adjacent node.
89. A medium as in claim 88, wherein the period is sufficient long such that the first node receives a "You Are My Parent" (YAMP) signal from each of the at least one adjacent node to become a parent of the at least one adjacent node.
90. A medium as in claim 87, wherein said communicating comprises:
determining an unique address of the first node for communication with the at least one adjacent node.
91. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method for a first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent nodes respectively, the method comprising:
determining a change in status of a second node in communication with the first node through a point-to-point link;
sustaining a "Bus Initialization" (BI) signal for a period of time to propagate the BI signal from the first node to the at least one adjacent node in response to the change; and performing bus initialization in communication with the at least one adjacent node.
92. A medium as in claim 91, wherein the change in status comprises one of:
a) addition of the second node in communication with the first node; and b) removal of the second node in communication with the first node.
93. A medium as in claim 91, wherein said performing bus initialization comprises:
determining a parent-child relationship between the first node and each of the at least one adjacent node.
94. A medium as in claim 93, wherein said performing bus initialization comprises:
determining an unique address of the first node for communication with the at least one adjacent node.
95. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method for a first node to communicate with at least one adjacent node through at least one point-to-point link connected from the first node to the at least one adjacent nodes respectively, the method comprising:
determining an error condition in communication through the at least one links;
sustaining a "Bus Initialization" (BI) signal for a period of time to propagate the BI signal from the first node to the at least one adjacent node in response to the error condition; and performing bus initialization in communication with the at least one adjacent node.
96. A medium as in claim 95, wherein said performing bus initialization comprises:
determining a parent-child relationship between the first node and each of the at least one adjacent node.
97. A medium as in claim 96, wherein said performing bus initialization comprises:
determining an unique address of the first node for communication with the at least one adjacent node.
98. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method for a first node to communicate with a plurality of adjacent nodes through a plurality of point-to-point links connected from the first node to the plurality adjacent nodes respectively, the method comprising:
receiving a "Bus Initialization" (BI) signal from a second node of the plurality of adjacent nodes;
sustaining the BI signal for a period of time to propagate the BI signal from the first node to the plurality of adjacent nodes except the second node in response to said receiving the BI signal; and performing bus initialization in communication with the plurality of adjacent nodes.
99. A medium as in claim 98, wherein said performing bus initialization comprises:
determining a parent-child relationship between the first node and each of the plurality of adjacent nodes.
100. A medium as in claim 98, wherein said performing bus initialization comprises:
determining an unique address of the first node for communication with the plurality of adjacent nodes.
101. A medium as in claim 98, wherein the method further comprises:
determining a first determination that bus initialization is necessary; and sustaining a BI signal for a period of time to propagate the BI signal to the plurality of adjacent nodes in response to the first determination.
102. A medium as in claim 101, wherein the first determination is in response to one of:
a) determining that a parent-child relationship between the first node and one of the plurality of adjacent nodes is to be changed;
b) determining a adjacent node becoming engaged to the first node for communication;
c) determining a adjacent node becoming disengaged from the first node for communication; and d) determining an error condition in communication through the plurality of links.
CA2503335A 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph Expired - Lifetime CA2503335C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA2698356A CA2698356C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US07/994,983 1992-12-21
US07/994,983 US5630173A (en) 1992-12-21 1992-12-21 Methods and apparatus for bus access arbitration of nodes organized into acyclic directed graph by cyclic token passing and alternatively propagating request to root node and grant signal to the child node
CA002408252A CA2408252C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CA002408252A Division CA2408252C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CA2698356A Division CA2698356C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph

Publications (2)

Publication Number Publication Date
CA2503335A1 true CA2503335A1 (en) 1994-07-07
CA2503335C CA2503335C (en) 2010-06-29

Family

ID=25541282

Family Applications (4)

Application Number Title Priority Date Filing Date
CA002408252A Expired - Lifetime CA2408252C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph
CA2698356A Expired - Lifetime CA2698356C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph
CA2503335A Expired - Lifetime CA2503335C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph
CA002151369A Expired - Lifetime CA2151369C (en) 1992-12-21 1993-12-16 Method and apparatus for bus access arbitration of nodes organized into acyclic token passing and alternatively propagating request to root node and grant signal to the child node

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CA002408252A Expired - Lifetime CA2408252C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph
CA2698356A Expired - Lifetime CA2698356C (en) 1992-12-21 1993-12-16 Method and apparatus for pre-emptively arbitrating on an acyclic directed graph

Family Applications After (1)

Application Number Title Priority Date Filing Date
CA002151369A Expired - Lifetime CA2151369C (en) 1992-12-21 1993-12-16 Method and apparatus for bus access arbitration of nodes organized into acyclic token passing and alternatively propagating request to root node and grant signal to the child node

Country Status (9)

Country Link
US (2) US5630173A (en)
EP (4) EP0674788B1 (en)
JP (7) JP3638949B2 (en)
KR (1) KR100290517B1 (en)
AU (1) AU5953994A (en)
CA (4) CA2408252C (en)
DE (4) DE69334228D1 (en)
HK (3) HK1037036A1 (en)
WO (1) WO1994015302A1 (en)

Families Citing this family (116)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7334030B2 (en) * 1994-12-19 2008-02-19 Apple Inc. Method and apparatus for the addition and removal of nodes from a common interconnect
US5875301A (en) * 1994-12-19 1999-02-23 Apple Computer, Inc. Method and apparatus for the addition and removal of nodes from a common interconnect
US5784648A (en) * 1995-12-01 1998-07-21 Apple Computer, Inc. Token style arbitration on a serial bus by passing an unrequested bus grand signal and returning the token by a token refusal signal
US5758105A (en) * 1995-12-04 1998-05-26 International Business Machines Corporation Method and apparatus for bus arbitration between isochronous and non-isochronous devices
US7388092B2 (en) * 1996-05-03 2008-06-17 Applera Corporation Oligonucleotides and analogs labeled with energy transfer dyes
US6131119A (en) * 1997-04-01 2000-10-10 Sony Corporation Automatic configuration system for mapping node addresses within a bus structure to their physical location
JP3222086B2 (en) * 1997-04-07 2001-10-22 矢崎総業株式会社 Tree structure address setting method and system
US6145018A (en) * 1997-11-24 2000-11-07 Intel Corporation Method for hindering some types of nodes from becoming a bus arbitration controller
US6041348A (en) * 1997-12-01 2000-03-21 Lsi Logic Corporation N-port algorithm for disabling a node within a network during reset
US6411628B1 (en) 1998-02-02 2002-06-25 Intel Corporation Distributed arbitration on a full duplex bus
US6393557B1 (en) 1998-05-08 2002-05-21 International Business Machines Corporation Dynamic method for configuring a computer system
US6434656B1 (en) * 1998-05-08 2002-08-13 International Business Machines Corporation Method for routing I/O data in a multiprocessor system having a non-uniform memory access architecture
JP3277887B2 (en) 1998-06-19 2002-04-22 日本電気株式会社 Transmission / reception method, transmission / reception circuit and method for controlling transmission / reception circuit
US6122723A (en) * 1998-08-20 2000-09-19 International Business Machines Corporation Switching multi-initiator SCSI devices to a singular target bus
US6438604B1 (en) 1998-10-05 2002-08-20 Canon Kabushiki Kaisha Digital video network interface
US7013354B1 (en) 1998-10-05 2006-03-14 Canon Kabushiki Kaisha Channel protocol for IEEE 1394 data transmission
US6657973B1 (en) * 1998-10-27 2003-12-02 Matsushita Electric Industrial Co., Ltd. Communications node, network system and method of controlling network system
JP3326399B2 (en) 1998-12-17 2002-09-24 松下電器産業株式会社 Communication node, information device having the same, and network system
US6256698B1 (en) 1999-01-11 2001-07-03 Sony Corporation Method of and apparatus for providing self-sustained even arbitration within an IEEE 1394 serial bus network of devices
US7062456B1 (en) 1999-02-09 2006-06-13 The Chase Manhattan Bank System and method for back office processing of banking transactions using electronic files
US6810452B1 (en) 1999-03-19 2004-10-26 Sony Corporation Method and system for quarantine during bus topology configuration
US6374319B1 (en) * 1999-06-22 2002-04-16 Philips Electronics North America Corporation Flag-controlled arbitration of requesting agents
US6628607B1 (en) 1999-07-09 2003-09-30 Apple Computer, Inc. Method and apparatus for loop breaking on a serial bus
US6910090B1 (en) 1999-09-21 2005-06-21 Sony Corporation Maintaining communications in a bus bridge interconnect
EP1090856A1 (en) * 1999-10-04 2001-04-11 LAB Industrie Misch- und Wiegetechnik GmbH System and method for unloading of bulk material from a container, especially from a box-shaped transport container
US6691096B1 (en) 1999-10-28 2004-02-10 Apple Computer, Inc. General purpose data container method and apparatus for implementing AV/C descriptors
US6959343B1 (en) 1999-11-01 2005-10-25 Apple Computer, Inc. Method and apparatus for dynamic link driver configuration
US6671768B1 (en) 1999-11-01 2003-12-30 Apple Computer, Inc. System and method for providing dynamic configuration ROM using double image buffers for use with serial bus devices
US6631426B1 (en) 1999-11-02 2003-10-07 Apple Computer, Inc. Automatic ID allocation for AV/C entities
US6618750B1 (en) 1999-11-02 2003-09-09 Apple Computer, Inc. Method and apparatus for determining communication paths
US8762446B1 (en) 1999-11-02 2014-06-24 Apple Inc. Bridged distributed device control over multiple transports method and apparatus
US6813663B1 (en) 1999-11-02 2004-11-02 Apple Computer, Inc. Method and apparatus for supporting and presenting multiple serial bus nodes using distinct configuration ROM images
US8185549B1 (en) * 1999-11-03 2012-05-22 A9.Com, Inc. Method and system for navigating within a body of data using one of a number of alternative browse graphs
US6587904B1 (en) * 1999-11-05 2003-07-01 Apple Computer, Inc. Method and apparatus for preventing loops in a full-duplex bus
US6636914B1 (en) * 1999-11-05 2003-10-21 Apple Computer, Inc. Method and apparatus for arbitration and fairness on a full-duplex bus using dual phases
TW448365B (en) * 1999-11-15 2001-08-01 Via Tech Inc Bus arbitration method providing preemption function between control chip sets
US6457086B1 (en) * 1999-11-16 2002-09-24 Apple Computers, Inc. Method and apparatus for accelerating detection of serial bus device speed signals
US6728821B1 (en) 1999-11-29 2004-04-27 Sony Corporation Method and system for adjusting isochronous bandwidths on a bus
US6751697B1 (en) * 1999-11-29 2004-06-15 Sony Corporation Method and system for a multi-phase net refresh on a bus bridge interconnect
US6639918B1 (en) 2000-01-18 2003-10-28 Apple Computer, Inc. Method and apparatus for border node behavior on a full-duplex bus
US7266617B1 (en) * 2000-01-18 2007-09-04 Apple Inc. Method and apparatus for border node behavior on a full-duplex bus
US7421507B2 (en) * 2000-02-16 2008-09-02 Apple Inc. Transmission of AV/C transactions over multiple transports method and apparatus
US7050453B1 (en) 2000-02-17 2006-05-23 Apple Computer, Inc. Method and apparatus for ensuring compatibility on a high performance serial bus
US6831928B1 (en) 2000-02-17 2004-12-14 Apple Computer, Inc. Method and apparatus for ensuring compatibility on a high performance serial bus
US6484171B1 (en) 2000-03-31 2002-11-19 International Business Machines Corporation System method and computer program for prioritizing filter rules
US6618785B1 (en) 2000-04-21 2003-09-09 Apple Computer, Inc. Method and apparatus for automatic detection and healing of signal pair crossover on a high performance serial bus
US6718497B1 (en) 2000-04-21 2004-04-06 Apple Computer, Inc. Method and apparatus for generating jitter test patterns on a high performance serial bus
JP2001313646A (en) * 2000-04-27 2001-11-09 Sony Corp Electronic device and method for controlling state of its physical layer circuit
US6757773B1 (en) 2000-06-30 2004-06-29 Sony Corporation System and method for determining support capability of a device coupled to a bus system
US7328211B2 (en) 2000-09-21 2008-02-05 Jpmorgan Chase Bank, N.A. System and methods for improved linguistic pattern matching
JP4097891B2 (en) * 2000-11-27 2008-06-11 三菱電機株式会社 Synchronization system using IEEE 1394
US6891805B2 (en) * 2001-02-06 2005-05-10 Telephonics Corporation Communications system
US6886051B2 (en) * 2002-03-28 2005-04-26 Seagate Technology Llc Device discovery method and apparatus
US7007123B2 (en) * 2002-03-28 2006-02-28 Alcatel Binary tree arbitration system and method using embedded logic structure for controlling flag direction in multi-level arbiter node
US7024505B2 (en) * 2002-03-28 2006-04-04 Seagate Technology Llc Fair arbitration method in a distributed arbitration system
US7987246B2 (en) 2002-05-23 2011-07-26 Jpmorgan Chase Bank Method and system for client browser update
US7340650B2 (en) * 2002-10-30 2008-03-04 Jp Morgan Chase & Co. Method to measure stored procedure execution statistics
US20040103199A1 (en) * 2002-11-22 2004-05-27 Anthony Chao Method and system for client browser update from a lite cache
US7149752B2 (en) * 2002-12-03 2006-12-12 Jp Morgan Chase Bank Method for simplifying databinding in application programs
US7085759B2 (en) 2002-12-06 2006-08-01 Jpmorgan Chase Bank System and method for communicating data to a process
US7457302B1 (en) 2002-12-31 2008-11-25 Apple Inc. Enhancement to loop healing for malconfigured bus prevention
US7417973B1 (en) 2002-12-31 2008-08-26 Apple Inc. Method, apparatus and computer program product for ensuring node participation in a network bus
US8032439B2 (en) * 2003-01-07 2011-10-04 Jpmorgan Chase Bank, N.A. System and method for process scheduling
US7401156B2 (en) * 2003-02-03 2008-07-15 Jp Morgan Chase Bank Method using control interface to suspend software network environment running on network devices for loading and executing another software network environment
US7379998B2 (en) * 2003-03-31 2008-05-27 Jp Morgan Chase Bank System and method for multi-platform queue queries
US20040210696A1 (en) * 2003-04-18 2004-10-21 Meyer Michael J. Method and apparatus for round robin resource arbitration
US20040230602A1 (en) * 2003-05-14 2004-11-18 Andrew Doddington System and method for decoupling data presentation layer and data gathering and storage layer in a distributed data processing system
US7366722B2 (en) * 2003-05-15 2008-04-29 Jp Morgan Chase Bank System and method for specifying application services and distributing them across multiple processors using XML
US7509641B2 (en) * 2003-05-16 2009-03-24 Jp Morgan Chase Bank Job processing framework
US7353284B2 (en) * 2003-06-13 2008-04-01 Apple Inc. Synchronized transmission of audio and video data from a computer to a client via an interface
US7668099B2 (en) * 2003-06-13 2010-02-23 Apple Inc. Synthesis of vertical blanking signal
US20040255338A1 (en) * 2003-06-13 2004-12-16 Apple Computer, Inc. Interface for sending synchronized audio and video data
US8275910B1 (en) 2003-07-02 2012-09-25 Apple Inc. Source packet bridge
WO2005015361A2 (en) 2003-08-08 2005-02-17 Jp Morgan Chase Bank System for archive integrity management and related methods
US7516139B2 (en) 2003-09-19 2009-04-07 Jp Morgan Chase Bank Processing of tree data structures
US7270227B2 (en) 2003-10-29 2007-09-18 Lockheed Martin Corporation Material handling system and method of use
US7788567B1 (en) 2003-11-18 2010-08-31 Apple Inc. Symbol encoding for tolerance to single byte errors
US7995606B1 (en) 2003-12-03 2011-08-09 Apple Inc. Fly-by and ack-accelerated arbitration for broadcast packets
US7502338B1 (en) 2003-12-19 2009-03-10 Apple Inc. De-emphasis training on a point-to-point connection
US7421696B2 (en) * 2003-12-22 2008-09-02 Jp Morgan Chase Bank Methods and systems for managing successful completion of a network of processes
US7308517B1 (en) * 2003-12-29 2007-12-11 Apple Inc. Gap count analysis for a high speed serialized bus
US7237135B1 (en) 2003-12-29 2007-06-26 Apple Inc. Cyclemaster synchronization in a distributed bridge
US20050144174A1 (en) * 2003-12-31 2005-06-30 Leonid Pesenson Framework for providing remote processing of a graphical user interface
US20050175027A1 (en) * 2004-02-09 2005-08-11 Phonex Broadband Corporation System and method for requesting and granting access to a network channel
US7183906B2 (en) * 2004-03-19 2007-02-27 Lockheed Martin Corporation Threat scanning machine management system
US20050222990A1 (en) * 2004-04-06 2005-10-06 Milne Kenneth T Methods and systems for using script files to obtain, format and disseminate database information
US20050231358A1 (en) * 2004-04-19 2005-10-20 Company Steven L Search engine for singles with (GPS) position data
WO2005102016A2 (en) 2004-04-26 2005-11-03 Jp Morgan Chase Bank System and method for routing messages
US20050251397A1 (en) * 2004-05-04 2005-11-10 Lockheed Martin Corporation Passenger and item tracking with predictive analysis
US20050251398A1 (en) * 2004-05-04 2005-11-10 Lockheed Martin Corporation Threat scanning with pooled operators
US7212113B2 (en) * 2004-05-04 2007-05-01 Lockheed Martin Corporation Passenger and item tracking with system alerts
US7392471B1 (en) 2004-07-28 2008-06-24 Jp Morgan Chase Bank System and method for comparing extensible markup language (XML) documents
US7366974B2 (en) * 2004-09-03 2008-04-29 Jp Morgan Chase Bank System and method for managing template attributes
US20060059210A1 (en) * 2004-09-16 2006-03-16 Macdonald Glynne Generic database structure and related systems and methods for storing data independent of data type
US20090132466A1 (en) * 2004-10-13 2009-05-21 Jp Morgan Chase Bank System and method for archiving data
US7739436B2 (en) * 2004-11-01 2010-06-15 Sonics, Inc. Method and apparatus for round robin resource arbitration with a fast request to grant response
US7684421B2 (en) * 2005-06-09 2010-03-23 Lockheed Martin Corporation Information routing in a distributed environment
US20060282886A1 (en) * 2005-06-09 2006-12-14 Lockheed Martin Corporation Service oriented security device management network
US8223666B2 (en) * 2005-08-23 2012-07-17 Cisco Technology, Inc. Method of constructing a forwarding database for a data communications network
US7969995B2 (en) * 2005-08-23 2011-06-28 Cisco Technology, Inc. Method and apparatus for constructing a forwarding database for a data communications network
US8065606B1 (en) 2005-09-16 2011-11-22 Jpmorgan Chase Bank, N.A. System and method for automating document generation
US7499933B1 (en) 2005-11-12 2009-03-03 Jpmorgan Chase Bank, N.A. System and method for managing enterprise application configuration
US7610172B2 (en) * 2006-06-16 2009-10-27 Jpmorgan Chase Bank, N.A. Method and system for monitoring non-occurring events
US8483108B2 (en) * 2006-07-24 2013-07-09 Apple Inc. Apparatus and methods for de-emphasis training on a point-to-point connection
US20080060910A1 (en) * 2006-09-08 2008-03-13 Shawn Younkin Passenger carry-on bagging system for security checkpoints
CN101179516B (en) * 2006-11-10 2010-06-09 北京航空航天大学 Digraph based data distributing method
US8104076B1 (en) 2006-11-13 2012-01-24 Jpmorgan Chase Bank, N.A. Application access control system
US7610429B2 (en) * 2007-01-30 2009-10-27 Hewlett-Packard Development Company, L.P. Method and system for determining device criticality in a computer configuration
US9009235B2 (en) 2008-06-17 2015-04-14 Attivio, Inc. Ordered message processing
US8392614B2 (en) * 2009-07-27 2013-03-05 Sandisk Il Ltd. Device identifier selection
US8312088B2 (en) * 2009-07-27 2012-11-13 Sandisk Il Ltd. Device identifier selection
FR2951290B1 (en) * 2009-10-08 2011-12-09 Commissariat Energie Atomique MULTI-SOURCE MEMORY DIRECT ACCESS CONTROLLER, CORRESPONDING COMPUTER PROGRAM AND PROGRAM
US8495656B2 (en) * 2010-10-15 2013-07-23 Attivio, Inc. Ordered processing of groups of messages
US9038177B1 (en) 2010-11-30 2015-05-19 Jpmorgan Chase Bank, N.A. Method and system for implementing multi-level data fusion
US9292588B1 (en) 2011-07-20 2016-03-22 Jpmorgan Chase Bank, N.A. Safe storing data for disaster recovery
US10540373B1 (en) 2013-03-04 2020-01-21 Jpmorgan Chase Bank, N.A. Clause library manager

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2443101A1 (en) * 1978-11-30 1980-06-27 Ibm France IMPROVEMENT IN PRIORITY INTERFACE SELECTION SYSTEMS
US4344134A (en) * 1980-06-30 1982-08-10 Burroughs Corporation Partitionable parallel processor
US4412285A (en) * 1981-04-01 1983-10-25 Teradata Corporation Multiprocessor intercommunication system and method
US4698752A (en) * 1982-11-15 1987-10-06 American Telephone And Telegraph Company At&T Bell Laboratories Data base locking
IT1159351B (en) * 1983-02-03 1987-02-25 Cselt Centro Studi Lab Telecom DISTRIBUTED STRUCTURE REFEREE CIRCUIT FOR BUS REQUESTS FOR A MULTIPROCESSOR SYSTEM
US5113523A (en) * 1985-05-06 1992-05-12 Ncube Corporation High performance computer system
US4706080A (en) * 1985-08-26 1987-11-10 Bell Communications Research, Inc. Interconnection of broadcast networks
US4897833A (en) * 1987-10-16 1990-01-30 Digital Equipment Corporation Hierarchical arbitration system
DE3838945A1 (en) * 1987-11-18 1989-06-08 Hitachi Ltd NETWORK SYSTEM WITH LOCAL NETWORKS AND WITH A HIERARCHICAL CHOICE OF PATH
US4811337A (en) * 1988-01-15 1989-03-07 Vitalink Communications Corporation Distributed load sharing
US5027342A (en) * 1989-05-03 1991-06-25 The University Of Toronto Innovations Foundation Local area network
US5138615A (en) * 1989-06-22 1992-08-11 Digital Equipment Corporation Reconfiguration system and method for high-speed mesh connected local area network
US5150360A (en) * 1990-03-07 1992-09-22 Digital Equipment Corporation Utilization of redundant links in bridged networks
US5301333A (en) * 1990-06-14 1994-04-05 Bell Communications Research, Inc. Tree structured variable priority arbitration implementing a round-robin scheduling policy
US5353412A (en) * 1990-10-03 1994-10-04 Thinking Machines Corporation Partition control circuit for separately controlling message sending of nodes of tree-shaped routing network to divide the network into a number of partitions
JPH06500655A (en) * 1990-10-03 1994-01-20 スィンキング マシンズ コーポレーション parallel computer system
FR2668626B1 (en) * 1990-10-30 1992-12-18 Thomson Csf METHOD FOR CONFIGURING A MESH COMPUTER SYSTEM.
FR2676558B1 (en) * 1991-05-15 1993-07-23 Opticable METHOD FOR AUTOMATICALLY DETERMINING THE CONFIGURATION OF A NETWORK.
EP0562222B1 (en) * 1992-03-27 1999-05-12 Alcatel Access control arrangement

Also Published As

Publication number Publication date
EP1094395A3 (en) 2006-04-19
HK1037035A1 (en) 2002-01-25
JP2002314565A (en) 2002-10-25
EP1094394A2 (en) 2001-04-25
EP1094394B1 (en) 2007-09-12
EP0674788B1 (en) 2005-04-27
JP2006238452A (en) 2006-09-07
EP1094394A3 (en) 2006-04-19
EP1094395B1 (en) 2008-07-02
US5802289A (en) 1998-09-01
AU5953994A (en) 1994-07-19
EP1132821A2 (en) 2001-09-12
JP2002314566A (en) 2002-10-25
JP2006217639A (en) 2006-08-17
CA2151369A1 (en) 1994-07-07
JP3638949B2 (en) 2005-04-13
DE69334172T2 (en) 2008-06-12
JP3663385B2 (en) 2005-06-22
EP1094395A2 (en) 2001-04-25
CA2698356C (en) 2011-04-12
JP4195470B2 (en) 2008-12-10
DE69333798D1 (en) 2005-06-02
HK1037037A1 (en) 2002-01-25
KR950704745A (en) 1995-11-20
JP3663386B2 (en) 2005-06-22
DE69334171D1 (en) 2007-10-25
CA2408252A1 (en) 1994-07-07
JP3834562B2 (en) 2006-10-18
CA2698356A1 (en) 1994-07-07
JP4195469B2 (en) 2008-12-10
JP2004030648A (en) 2004-01-29
DE69334171T2 (en) 2008-06-12
US5630173A (en) 1997-05-13
KR100290517B1 (en) 2001-09-17
CA2408252C (en) 2005-07-26
JPH08504989A (en) 1996-05-28
JP4209428B2 (en) 2009-01-14
CA2151369C (en) 2004-02-10
DE69334172D1 (en) 2007-10-31
EP1132821B1 (en) 2007-09-12
WO1994015302A1 (en) 1994-07-07
CA2503335C (en) 2010-06-29
DE69333798T2 (en) 2006-03-09
EP0674788A1 (en) 1995-10-04
DE69334228D1 (en) 2008-08-14
JP2006229992A (en) 2006-08-31
HK1037036A1 (en) 2002-01-25
EP1132821A3 (en) 2006-04-19

Similar Documents

Publication Publication Date Title
CA2503335A1 (en) Method and apparatus for pre-emptively arbitrating on an acyclic directed graph
CA2503597C (en) Method and apparatus for unique address assignment, node self-identification and topology mapping for a directed acyclic graph
EP0674790B1 (en) Method and apparatus for transforming an arbitrary topology collection of nodes into an acyclic directed graph
Melham et al. Space multiplexing of waveguides in optically interconnected multiprocessor systems
US6636914B1 (en) Method and apparatus for arbitration and fairness on a full-duplex bus using dual phases
JPH05257877A (en) Access arbitrating method and bus for serial data transmission
US6434638B1 (en) Arbitration protocol for peer-to-peer communication in synchronous systems
JPH02288530A (en) Bus communication system
US8407330B2 (en) Method and apparatus for the addition and removal of nodes from a common interconnect
WO1994015305A1 (en) Method and apparatus for transforming an arbitrary acyclic topology collection of nodes into an acyclic directed graph
Gopinath et al. High capacity communication system over collision-type channels
JPS6387043A (en) Transmission system for network priority information
JPS63247857A (en) Access arbitrating circuit
JPS6348933A (en) Loop communication system

Legal Events

Date Code Title Description
EEER Examination request
MKEX Expiry

Effective date: 20131216