EP0177607A1 - Appareil de bus d'ordinateur avec arbitrage reparti - Google Patents

Appareil de bus d'ordinateur avec arbitrage reparti

Info

Publication number
EP0177607A1
EP0177607A1 EP85902230A EP85902230A EP0177607A1 EP 0177607 A1 EP0177607 A1 EP 0177607A1 EP 85902230 A EP85902230 A EP 85902230A EP 85902230 A EP85902230 A EP 85902230A EP 0177607 A1 EP0177607 A1 EP 0177607A1
Authority
EP
European Patent Office
Prior art keywords
bus
nodes
priority
lines
node
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.)
Withdrawn
Application number
EP85902230A
Other languages
German (de)
English (en)
Inventor
James A. Wilson, Jr.
David H. Bernstein
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.)
RATIONAL
Original Assignee
RATIONAL
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 RATIONAL filed Critical RATIONAL
Publication of EP0177607A1 publication Critical patent/EP0177607A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • 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/374Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a self-select method with individual priority code comparator

Definitions

  • the invention relates to electrical buses which serve as a common communications link between a plurality of nodes.
  • a common bus which may comprise a single coaxial cable, a plurality of lines, or other configurations is frequently used to provide communications among a plurality of nodes.
  • terminals, a central processing unit, or coprocessors, mass storage means, and other equipment are linked by the common bus.
  • no central control for bus access is used.
  • Each node is able to detect if the bus is in use, and if it is not in use, a node desiring bus access begins transmitting.
  • Each node includes circuitry to detect a collision condition on the bus, that is, more than a single node transmitting at the same time. When collisions are detected, retransmission is tried at randomized time intervals.
  • a popular version of this technique is referred to as "Ethernet”. This technique is more adaptable for local area networks and where maximizing the number of transmissions over the bus is not necessary.
  • each node is permitted access to the bus during predetermined periods or when the node has possession of a "token".
  • the token is passed from node-to-node in a predetermined order or a dynamic ordering is used based on priorities.
  • a centralized arbitration means is used to determine which of the nodes should be given access to the bus. Many different queuing and priority arrangements are in use.
  • the present invention employs a distributed arbitration means where each node independently determines its priority (rotating priority) and where each node maintains a unique priority.
  • Various protocols are used on bus systems to indicate that a transmission has been received.
  • This acknowledgement can acknowledge, for instance, that the received data has not only been received but verified through use of a parity check or error detection code.
  • One problem that occurs in some systems is that a popular receiving node is penalized when it makes acknowledgement transmission. Such transmissions can lower the node's priority and greatly hinder the node's ability to transmit its own data.
  • the invented bus apparatus employs a two-level priority arrangement. Nodes are not penalized in the priority arrangement for transmitting of required acknowledgements. This fairer protocol prevents a popular receiving node from being penalized merely because it is the destination for many transmissions.
  • the invented bus apparatus includes error means for identifying bus problems and further, for identifying nodes associated with, for instance, a collision condition.
  • the invented bus permits very efficient use of the bus with fair access permitted by all nodes in a highly reliable manner.
  • a bus apparatus for interconnecting a plurality of nodes is described.
  • the bus includes a plurality of lines which are coupled to each node.
  • the nodes gain access to the lines under control of an arbitrator.
  • the arbitrator includes a memory for storing the nodes current priority.
  • All nodes sense the priorities of the bidding nodes.
  • the bidding node with the highest priority takes ownership of the bus.
  • All nodes after sensing the priority of the bidding nodes adjust their priority in a predetermined arrangement so that each node continues to have a unique priority. Consequently, the arbitration for the bus is distributed among the nodes with a rotating priority being determined independently by each node.
  • two different priority updating mechanisms are employed. If a node transmits an acknowledgement message, its priority is not lowered. This prevent the node from being penalized simply because it is the destination of data from other nodes.
  • the invented bus apparatus includes many other novel features which are described in detail in the main body of the specification. BRIEF DESCRIPTION OF THE DRAWINGS
  • Figure 1 is an overall block diagram showing the bus apparatus of the present invention and its interconnection to nodes.
  • Figure 2 is a diagram describing the signals carried on the bus lines interconnecting the nodes of Figure 1.
  • FIG. 3 is a block diagram of the various protocol levels employed in the invented bus apparatus.
  • Figure 4 illustrates waveforms of control signals transmitted over the bus lines during a normal bus cycle and during an error cycle.
  • Figure 5 illustrates waveforms of cycle timing for signals transmitted over the bus lines.
  • Figure 6 is a list identifying signals transmitted over the bus lines during an error cycle.
  • Figure 7 is a block diagram of the circuit employed in the present invention by each node for bidding for the bus.
  • Figure 8 is a list identifying signals transmitted over the bus lines during a bidding cycle.
  • Figure 9 is a chart illustrating message packet organization for the present invention.
  • Figure 10 is a block diagram of the interface circuit used in the present invention to interface between processor nodes and the bus lines.
  • Figure 11 illustrates status flags used in conjunction with the circuit of Figure 10.
  • Figure 12 is a block diagram of the addressing means used to address the buffer of Figure 10.
  • Figure 13 is a partial block diagram of the adapter circuit of Figure 1.
  • Figure 14 is a block diagram of the remainder of the adapter circuit of Figure 1.
  • Figure 15 is a chart used to describe the addressing of the buffer of Figure 13.
  • Figure 16 illustrates status of state machines which are part of the hunters of Figure 14.
  • Figure 17 illustrates a portion of the hunters of Figure 14.
  • Figure 18 illustrates a plurality of ROMs which are part of the buffer state RAM controller of Figure 14.
  • Figure 19 is a flow diagram used to describe the operation of the adapter circuit of Figures 13 and 14.
  • the bus apparatus of the present invention is used to interconnect a plurality of processors and other computer systems which are used primarily as input and output means for the processors.
  • the bus apparatus includes a plurality of bus lines identified as system bus 20 in Figure 1 for forming conductive paths between interface circuits such as circuits 25 and 26, and adapter circuits such as circuits 27 and 28.
  • the bus 20 comprises lines formed on a printed circuit board into which the circuits are plugged in what is frequently referred to as a "back-plane" arrangement.
  • the entire bus apparatus including the system bus 20, interface circuits and adapter circuits are housed in a single cabinet.
  • processors such as processor P0 (21) through processor P3 (22) are coupled to the system bus through their respective interface circuits.
  • processor P0 includes a central processing unit and memory.
  • the invented bus apparatus interfaces with up to four input/output subsystems such as the buses 23 and 24 of Figure 1, although this number is not critical to the present invention.
  • Buses 23 and 24 are coupled to the system bus through adapter circuits such as circuits 27 and 28.
  • the buses 23 and 24 are "Unibuses" and a PDP 11 computer is used to handle input and output chores.
  • Other peripherals are coupled to these input/output buses 23 and 24 such as disk drives, terminals, printers, etc.
  • the particular input/output means employed with the invented bus apparatus is not critical.
  • nodes is used to identify the junctions at which processes, etc., are interfaced to the bus apparatus of the present invention.
  • the nodes are treated the same, that is, the processors coupled to the bus apparatus are treated in a similar manner to the input/output means (e.g., buses 23 and 24).
  • the input/output means e.g., buses 23 and 24.
  • all the interface circuits are identical and all the adapter circuits are identical except for adapter circuit 27 identified as l o , A o .
  • Circuit 27 includes additional circuits 30 used for cluster management (i.e., system management) such as initialization on powering up (including priority numbers discussed later), initial program loading, clock signal generation, panel interface, diagnostics, modem interface, power supply interface, etc.
  • any of the processors may communicate with any of the other processors or any of the input/output means. Communications between input/output means (such as between bus 23 and bus 24) is not employed, although it could be used with the present invention.
  • bus 20 comprises a plurality of ordinary parallel conductors used to transmit (in parallel) the signals identified in Figure 2.
  • 64 lines are used to transmit data; these lines are also used during the bidding cycles to transmit signals representing priority.
  • 8 lines transmit the 8 parity bits for the 64-bits of data.
  • Three lines are used for control signals, specifically BUSY, NEGATIVE ACKNOWLEDGE (NAK) and POSITIVE ACKNOWLEDGE (PAK).
  • Eight lines are used to allow each of the 8 nodes to identify itself during transmission (sender identification or ID). These latter lines are also used for transmitting the error codes set forth in Figure 6.
  • PROTOCOL LAYERS In the presently preferred embodiment, three levels of protocol are used as shown in Figure 3. For the most part, the teachings of the present invention involve the physical layer 33. However, a brief description of the upper message level 31 and packet layer 32 are included where necessary to understand the present invention. For each of these protocol layers or levels, a peer-to-peer protocol is defined. The uppermost level 31 allows objects of arbitrary length and content to be transferred among the nodes on the bus. This level is completely implemented by computer programs in the presently preferred embodiment (both in "software" program and microcode) in each of the processors, no direct support is provided for this protocol level by the interface circuits or adapter circuits shown in Figure 1.
  • the packet layer 32 transports bounded-length message segments between the nodes.
  • the packet organization will be described in detail in conjunction with Figure 9.
  • This layer includes an optional mechanism for certified delivery using status packets which convey positive or negative acknowledgement. (This acknowledgement is not the NAK and PAK signals of Figure 3.)
  • the acknowledgement packets will be discussed in more detail. It is important to note that deadlock is averted by statically allocating resources for these status packets. In this way, data transmission priorities are not hindered by the transmission of such packets. Certain node operations, specifically page fault service, bypass the upper message level 31 and interface directly with the packet layer to limit overhead.
  • the physical iayer 33 manages the flow of data across the electrical conductors (i.e., bus 20 of Figure 1) and provides the synchronization, bus arbitration, error checking and functions related with this physical transfer.
  • PACKET ORGANIZATION Two packet types are defined within the packet layer 32; data packets and status packets. Both the data and status packets have two 64-bit header words (header 36 and header 37 of Figure 9). The data packets also have up to 128 64-bit words. The first four bits of the first header 36 convey the address of the sending node, the second four bits are the address of the receiving node. The following eight bits convey the length of the information to be transmitted, that is, up to a 128 words of data. This length is 0 for the status packets.
  • the next bit 39 indicates whether the transmission is status or data (it is possible to have a zero length data transmission).
  • the next four bits provide sender buffer information. This permits a match to be made between a received status packet and a previously transmitted data packet.
  • the remaining bits for header 1 and header 2 are not defined at this protocol level but are used primarily to convey acknowledgement of status packets.
  • Those data packets transmitted without certified acknowledgement are simply presented to the physical layer 33 which queues them for transmission.
  • the packet layer 32 is informed if the physical layer detects certain errors during the transmission, but otherwise is unaware of the packet's progress.
  • the packet layer initiates a timer when presenting the physical layer with a packet to be.transmitted with certification. Generally, the packet is acknowledged or a physical layer error is detected. (The timeout is used if a package acknowlegement is not received (when required) and no error is detected at the physical layer.)
  • a status packet "matched" to a data transmission is sent when a data packet is acknowledged. These are the status packets indicated as such by the bit at location 39 of Figure 9. (In the case of the adapter circuits, dynamic allocations of buffering occurs, thus permitting one processor to send many consecutive transmissions to the same input/output means.)
  • BUS CYCLE In the physical layer, transmission over the system bus 20 is divided into bus cycles each of which .has a duration of 192 nsec. In Figure 5, these bus cycles are shown divided into four quarters each having a duration of approximately 50 nsec.
  • a four phase clock signal is used which is provided for the entire system by the circuit 30 of adapter circuit 27 ( Figure 1). Standard TTL tristate drivers are employed for driving the bus. To prevent bus fighting and to otherwise accommodate the characteristics of the bus, no node may actively drive the bus during the second quarter (Q2) of any bus cycle as shown in Figure 5.
  • a node sending signals drives the bus without transition from the third quarter of a cycle through the end of a first quarter of the next cycle. Nodes receiving signals strobe the bus by the end of the fourth quarter of the cycle.
  • the above timing applies to the 64-bits of data/bidding and 8 bits of parity of Figure 2.
  • the three control signals and the 8 ID signal are driven with open-collector drivers, hence, no idle quarter is required.
  • a sending node nor a receiving node can delay transmission of data or status packet once it has begun. Consequently, the physical layer transmits packets from dedicated buffers in the sending node and stores them in dedicated buffers in the receiving node.
  • These static buffers are shown as buffers 70 in Figure 10 and will be described later. Each of these buffers provide 2Kx64 bits of storage and the packet layer protocol can reference these buffers directly, enabling them to fabricate packets for transmission and inspect newly received packets without additional data movement.
  • Each of the nodes includes circuitry which enables it to bid for the system bus.
  • the circuitry is contained within the interface circuits in the case of the processors and in the adapter circuits, in the case of the input/output (means) ports.
  • the arbitration mechanism is the same for all the nodes.
  • the bus bidding circuit is coupled to the 64 bus lines of the bus 20 of Figure 1; these 64 lines are shown as lines 20a in Figure 7. Eight of these lines are coupled to a status encoder 42 and 8 lines arecoupled to a data encoder 43.
  • the bidding circuit places its bid (priority number) on the first of these 8 lines if it is ready to transmit a status packet or on the other of the 8 lines if it is ready to transmit data.
  • the node's priority number is stored in the register 50 and is coupled to the decoder 51.
  • the demultiplexer 52 couples the decoded number to either the status or data lines, depending upon whether the circuit is prepared to transmit status or data packets.
  • the priority register 50 also couples its priority number to comparators 45 and 46. These comparators determine if the node's priority is equal to the highest priority received from the encoders. The highest status priority and data priority received by the encoders 42 and 43 are also coupled to the comparators 45 and
  • Multiplexer 58 if there are status packets for transmission, couples the highest priority number (3 bits) from encoder 42 to lines 49 along with the win bid signal from comparator 45 to line 53 if the highest priority number matches (equals) the node's priority number. Otherwise, the highest number from encoder 43 is coupled to lines 49 and if this number is equal to the node's priority number as sensed by comparator 46 a bid win signal is coupled to line 53 from comparator 46.
  • Each node has a unique priority and this priority is changed by each node.
  • each node On initialization, each node is assigned a different priority by circuit 30 of Figure 1.
  • the signals placed on the lines 20a for each possible 8 priority numbers is shown. (As the bus apparatus is presently implemented, 8 nodes are employed, however, this is arbitrary.)
  • each node has only a single priority number (which is a variable) at any time. This priority number is not designated as "status" or "data” as such, but the ones of the lines 20a that this number is transmitted on, indicates whether the node is prepared to transmit status or data packets.
  • each node which is prepared to transmit places a BUSY signal 54 on the BUSY control line and raises the potential on one of the sender identification lines (these signals are shown in Figure 2).
  • Each node is assigned one of the 8 sender identification lines.
  • the nodes bidding for the bus transmit their priority number onto either the lines designated for the data priority or the lines designated for the status priority (see signal 56 of Figure 4).
  • the highest bid for status and/or data are transmitted from the lines 20a into the comparators 45 and 46 in each of the nodes, as mentioned. If a node is bidding against itself only, that is, the number in its priority register 50 is equal to the number in either comparator 45 or 46, it of course wins the bid. If there are other bidders and the number in the priority register
  • the node again wins the bid since the comparator receives the highest number, even if it is the number transmitted by the node itself.
  • the highest-priority requesting node in the chain is granted sole access to the bus. All nodes whose current priority is lower than the priority of the winning node increases its priority by one. This includes all nodes
  • the ROM 48 makes this determination since it receives the winning priority number.
  • the ROM of the winning node sets its priority to the lowest possible value. Any node whose current priority was higher than that of the selected node leaves its priority unchanged, again, this is done by the ROM. Physically absent nodes will quickly drift to the highest priority position in the chain, but will have no effect since they do not make requests.
  • the arbitration mechanism does not lower the priority of a node just completing a status packet transmission as it would a node just completing a data packet transmission.
  • Each circuit knows if the winning node was bidding for a status packet transmission. If it was (and won the bid) no changes are made in the priority numbers.
  • the ROM 48 receives the status/data signal and therefore can implement this condition. Consequently, the node's ability to obtain the bus for data packet transmissions is not unfairly impaired if the node happens to be a popular destination and required to transmit status packets. To expedite the certification of already transmitted data packets, each node ignores data packets until it has dequeued and transmitted all status packets.
  • the priority determining mechanism for the bus is distributed among the nodes with each of the nodes determining its own priority number.
  • each node will maintain a unique priority number, even though there is no central priority determining means.
  • the above bus arbitration is particularly unique in that separate priority protocol is used for status and data packets.
  • This signal is transmitted by the receiving node and acknowledges that that, node has identified itself as the receiving node and that it is receiving the packet. (This is one of the three control signals shown in Figure 2.)
  • the transmitting node lowers the busy signal 54 one bus cycle before the end of its transmission. This is shown by waveform 57 for the case where a node is transmitting 128 data packets.
  • the dropping of this signal alerts all the nodes to the fact that on the next bus cycle, bidding can again begin.
  • An error cycle is initiated for a number of conditions which indicate that a normal transmission cycle is not occurring. For instance, if the PAK signal does not rise in potential during the second header, or if the busy signal is not lowered one cycle before transmission is to cease, the NAK signal 59 of figure 4 is transmitted.
  • All nodes count the number of words being transmitted during any transmission after sensing the number of words which are to be transmitted (the eight bits representing the length of information being transmitted in header 1). If more than a single, node transmits at a given time (collision condition), all nodes again detect this and transmit the NAK signal. Collision is detected when more than one of the ID lines remains high during packet transmission. Other conditions, as will be discussed, cause the nodes to generate the NAK signal, and hence, initiate error cycles. During the first error cycle, all nodes detecting the error send out an error code on the eight lines which are also used for ID signals (see Figure 2). Seven of these lines are used to indicate a unique error as set forth in Figure 6. For instance, the fifth line is used to indicate inconsistent length.
  • the last line is used to indicate that the eight bits of parity did not match with the packet tran ⁇ ission.
  • these same eight lines are used to identify the nodes detecting errors. For example, if the addressed node does not have a buffer ready to receive data, it identifies itself.
  • the system includes a diagnostic program which takes action once the error information has been transmitted over the bus. Within circuits 30 an analysis of the detected error is made and appropriate action taken such as retransmission of data. isolation of a failed node, etc. Each node itself includes certain diagnostic routines to allow identification of problems within the node. Following the error sequence, a dead cycle occurs, and then bidding again begins.
  • INTERFACE CIRCUIT INTERFACE CIRCUIT
  • the interface circuit provides the interface between the processors and the system bus.
  • the 64 data lines of the system bus are coupled to an output register 66 and an input register 67. Data flowing to and from the system bos flows through these registers. All the data and header words flow through the lines 63 into the buffer 70. Data flowing to and from the processor flows through transceivers 61 and the double registers 62. (These registers permit bidirectional flow.)
  • transceivers 61 and the double registers 62 (These registers permit bidirectional flow.)
  • flow between lines 63 and the system bus occurs in the appropriate direction.
  • the second half of each cycle flow occurs between lines 63 and the two 64-bit buses of the processor. Therefore, data to the buffer 70 is time multiplexed over the line 63 to the system bus on one half of the bus cycle, and in the other direction to the processor on the other half of the bus cycle.
  • parity bits are not shown. Additional lines are used for the parity bits. These bits are also buffered and a parity check is made against the data during each bus cycle. The results of this parity check forms one input to the state ROM 74 on line 73.
  • the buffer 70 comprises static memories and has a capacity of 128k bits (plus the parity bits). It is divided into a transmit section and a receive section.
  • the receive and transmit buffers are numbered (and. dedicated) to correspond with the node addresses on the bus (i.e., 0-7).
  • Each section stores 512 128-bit words.
  • These sections are further subdivided into individual buffer sections of 64 words, each designated for one of the eight nodes in the system.
  • the buffer assigned to the home processor itself is used for storage of header information. Within this header area, eight words are allocated to each of the nodes in the system.
  • the circuit When a processor receives a packet from a node, the circuit places the header part of the incoming packet into the receive header section corresponding to that node and the data part of the packet into the corresponding receive buffer.
  • the receive header section corresponding to the home processor is also divided into eight sections called receive status sections. Each of these sections contain a one-word status code for each of the other nodes in the system, these codes indicate the status of the last packet that was sent to the corresponding node.
  • the buffer addressing means 60 provides buffer 70 addressing. This shall be described in conjunction with Figure 12.
  • the eight transmit buffers are organized in an identical manner to the receive buffers.
  • the transmit buffer corresponding to the home processor is divided into eight sections called transmit header sections.
  • the transmit header sections are again numbered from 0-7 corresponding to the eight nodes on the system bus. Each section is eight words long.
  • the state ROM 74 is an ordinary ROM used as part of a state machine, as is commonly done for controllers. (A single ROM 74 is shown, in practice ROM 74 comprises four 512 wordsx8bits and one 32wordsx8bits.) It receives several inputs which act as addresses and provides the appropriate output to drive the interface circuit of Figure 10. The output of the state ROM 74 is loaded into a state register 75 and the state of the various bits in the register 75 control the interface circuit, as will be described. The state ROM receives the results of the bus arbitration, that is, the bid win signal. (This was discussed in conjunction with Figure 7 and is shown simply as block 77 of Figure 10.) The NAK, PAK and busy control signals previously described, also form inputs to the state ROM.
  • the current state from the state register 75 forms an input on lines 82 to the ROM 74 as is commonly done in state machines.
  • the ROM 74 also receives inputs from the microinstruction register 88.
  • the processor includes microcoding which is distributed to several boards, in the processor and also to the interface circuit.
  • the microaddress bus 85 (14 lines) from the processor is coupled to the writable control store 84 and provides an address to seek microinstructions from store 84.
  • the microinstruction register 88 provides a write signal to the buffer 70 on lines 89 and inputs to the state ROM 74 on lines 90. While not pertinent to the present invention, the output of the register 88 also controls the error correcting code mechanism.
  • the write signal is time multiplexed through multiplexer 72.
  • the clocking signal for the multiplexer 72 is the same bus cycle signal used to control signal flow through lines 63.
  • the store 84 is loaded on initialization. In practice this memory receives the addresses from bus 85 through a multiplexer. During diagnostics, special addresses are used for testing which are not necessary to the present invention.
  • the output of the state register controls the arbitration, as shown by line 94, provides signals to the status flags on lines 95, provides signals to the addressing means 60 on line 96, and provides controls for the buffer 70 on line 97.
  • This consists of the status flags 98, 99, 100 and 101 shown in Figure 11.
  • the buffer 70 of Figure 10 includes receive and transmit buffers dedicated to each of the other nodes on the bus. That is, data from node 3 will always be received in the same predetermined buffers within node 7.
  • each of the status flags 98 through 101 include a flag dedicated to each of the other nodes in the system.
  • each set of flags is dedicated to a node on the bus.
  • the status flags can be accessed by either the processor or the interface circuit.
  • the transmit status flag 98 indicates that the transmit buffer for the corresponding node .is not empty, or that a status response has not yet been received for the last packet sent. This flag is set by the processor and is also cleared by the processor.
  • the data receive status flag 99 indicates that the receive buffer for the node is not empty. This flag is set by the state machine, but cleared by the processor.
  • the certified status response flag 100 indicates that a status message was received from a node. It is set by the state machine and cleared by the processor.
  • the last flag 101 indicates that a request data transmission (either data or status) has been completed. It is set by the state machine and cleared by the processor. These flags provide a running account of buffer status and thus determine when a buffer may be used or should not be used. It also provides a running account of whether status messages have been accepted and examined.
  • the buffer addressing means 60 of Figure 10 is shown in detail.
  • the buffer address (9 bits of it) is coupled to the buffer 70 of Figure 10 on lines 114.
  • a tenth bit shown as bit 116 in Figure 12, originates from the microinstruction register 88. This bit determines whether the buffer locations addressed by the remaining 9 bits are either transmit or receive sections.
  • two different addresses are necessary because, as mentioned in conjunction with Figure 10, data flows from the system bus on half the cycle, and data from the processor bus on the other half cycle to permit the time multiplexing over lines 63.
  • the clock signal to the multiplexer 110 provides this change in addressing for each half cycle.
  • the multiplexer 110 either selects the mode bits on lines 111 from the instruction register 88 of Figure 10, or the bits on lines 96 from the state register 75.
  • the signals from the multiplexer 110 to the shifter 112 determine whether signals from the registers 106, 107 and 108 will be present in the output address on lines 114 and also the order of these signals.
  • the home register 106 stores a number corresponding to the mode's own identification number. This number is static and is set upon initialization.
  • the link register 107 contains the number of the buffer node which is to receive/transmit. This number is set by the processor.
  • the buffer address register 108 operates as a counter to provide sequencing of the address signals, for instance, when 64 words are to be transmitted or received, this register provides counting to increment the address.
  • the 10 bit address illustrated in Figure 12 for the buffer 70 thus consists of 9 bits transmitted on lines 114 and a tenth bit that transmits/receive bit 116. And, as mentioned, these bits are arranged depending upon the mode of addressing, that is, whether it is direct, data, status, or header.
  • the header words themselves originate in the processor and are transferred via lines 63 to and from the buffer 70 on the system bus 20.
  • the sending processor loads the header and packet information into the transmit buffer for a designated node.
  • the header and data are sent to the corresponding receive buffer of the receiving processor.
  • a status response is sent back to the sending node indicating the disposition of the packet.
  • the microcode directs loading into the transmit header and data section corresponding to the receiving node, then -sets the appropriate transmit/active bit that corresponds to the receiving node at the state ROM.
  • the transfer then occurs to the predetermined receiving buffer of the receiving node and sets the receive data flag.
  • the transmit complete status flag is cleared by the processor when the processor has examined the packet.
  • the adapter circuits such as circuits 27 and 28 of Figure 1, as mentioned, provide an interface between the system bus 20 and the input/output subsystems.
  • the subsystems are for input/output functions and consequently, serve the processors coupled to the bus 20.
  • Their organization is somewhat different than that of the interface circuits because of this role.
  • One specific difference is that the buffers in the adapters are not. dedicated to receiving data from any particular node, that is, they are dynamically allocated based on need. This is done since large amounts of data flow may be required between a particular input/output subsystem and a processor.
  • any of the input/output subsystems can receive and transmit data to any of the processors. Because of the dynamic allocation of buffer space, the buffer addressing is more complicated than in the case of the interface circuits.
  • the adapter circuit communicates with the input/output subsystem or processor (IOP) bus 23 which in the presently preferred embodiment is coupled to a Unibus through a standard interface circuit.
  • the IOP bus has 18 address lines and 16 data lines. The data lines are coupled to a bus multiplexer/demultiplexer 120, and the address lines are coupled to the address register 118 and multiplexer 119.
  • Input data from the system bus 20 is coupled to a latch 127 then to tristate drivers 126 for coupling onto the bidirectional buffer bus 129.
  • Output data for the system bus is coupled to an output register 123, then to the bus drivers 124 and onto the system bus 20.
  • a protocol unit 125 is also coupled to the system bus 20. This unit performs the arbitration previously discussed, generates the control system bus signals previously discussed, and performs other functions which will be described. The unit 125 also receives signals from the SBI bus 116.
  • the buffer 117 has a capacity of 16x1k bytes, or 16x128 64-bit words.
  • the buffer is divided into sixteen sections, buffer section 0 to buffer section 15.
  • Buffer section 0 is used for storing status and header packets. It is divided into fifteen subsections, each of which is associated with (i.e., dedicated to) one of the remaining buffer sections. That is, buffer section 12 which can store 128 words of data has allocated space in buffer section 0 for the storage of a two word header and two words of status.
  • the header packets of the transmission are stored in the allocated subsection of buffer section 0.
  • Status packets associated with the data in buffer section 12 are likewise stored in the allocated subsection of buffer section 0.
  • each bus cycle is used for communication between the buffer 117 and the IOP while the other half of each bus cycle is used for communications between the buffer 117 and system bus.
  • the multiplexer control signals coupled to multiplexer 119 and the address register 118 controls this cycling. These signals are generated by the state machine 134 of Figure 14. There are numerous other control signals from the state machine of Figure 14 used to control flow of data through the registers, drivers and latches associated with the system bus which are standard timing signals and hence not shown.
  • the buffer space appears to the computer as being part of the computer's main memory.
  • Octal addresses 400000 through 577777 are used for this purpose.
  • the data flow from the buffer over the IOP bus 23 is handled in a direct memory access (DMA) mode from, for instance, the buffer 117 onto a disk, or vice versa.
  • DMA direct memory access
  • the PDP 11 used in the subsystem primarily does management functions, and is not used for computations.
  • data flow from the bus 20 into the buffer 117 occurs through the latch 127, drivers 126, bus 129 into the buffer 117 on half the bus cycle.
  • the data flows from the buffer 117 onto the bus 129 through the multiplexer/demultiplexer 120 and then onto the IOP bus 23.
  • the IOP bus 23 is a 16-bit bus
  • bus 129 a 64-bit bus
  • the multiplexer/-demultiplexer sequentially selects 16 lines of the buffer bus 129 for transmission on the bus 23.
  • data flows from bus 23 through the multiplexer/demultiplexer 120 onto bus 129 and then into the buffer 117.
  • 16 bits at a time are sequentially taken from bus
  • the buffer 117 is addressed by a
  • the IOP address 139 includes two additional bits; 6 bits are used for a logical buffer section address. These 6 bits are coupled to a mapping RAM which provides an output 4-bit physical buffer section number which is actually used for addressing the buffer 17. This mapping is used to make any discontiguous sections appear contiguous in the IOP address space. This allows data from several buffer sections to be transferred to or from, for instance, a disk in a single DMA transaction.
  • the byte ordering convention used by the IOP is opposite to that used by processors 21 and 22 of Figure 2. Some means must be provided to swap bits, for instance, from the multiplexer/demultiplexer 120. While the IOP itself can do this, its performance is unacceptably low. An additional bit from the mapping RAM coupled to the multiplexer/demultiplexer 120 controls this swapping. This again is not critical to the present invention, but rather, results from the different conventions used by the IOP and the processors 21 and 22.
  • the IOP bus 23 is shown connected to the hunlers 132, buffer state RAM 133, system bus state machine 134 and the state RAM controller 135.
  • the buffer bus 129 and SBI bus 116 are also coupled to the state machine 134.
  • the hunlers 132 comprises a counter, four state machines and a plurality of registers.
  • the state machines and registers will be described in detail in conjunction with Figures 16 and 17.
  • the hunters identify available buffer sections by scanning the buffer state RAM 133.
  • the RAM 133 contains the status of each of the buffer sections in the buffer 117.
  • a hunter identifies an available buffer section (buffer section 1 to 15) and provides a receive buffer address (RBUF) to the multiplexer 119. And after the buffer section has been loaded, other notations are made in buffer stale RAM 133 to indicate the new status of the buffer section.
  • System bus state machine 134 controls the transmission and reception operations to/from the system bus.
  • the transmit (X) hunter when in a valid state triggers state machine 134.
  • an incoming system bus transfer with the receive (R) hunter in a valid state triggers the state machine 134.
  • the state machine 134 is similar to other commonly used state machines such as the one described previously in this application. It. primarily consists of a state register and read-only memory. Some control signals provided by this state machine will be discussed in connection with ROM 181 of Figure 18.
  • the buffer state RAM controller 135 controls the slate changes in the RAM 133 and hunters 132. It receives control signals from the state machine 134, IOP bus 23 and from the hunters 132.
  • the controller uses three pairs of ROMs which are described in conjunction with Figure 18 for changing the contents of the RAM 133 and for changing the states of the hunters 132.
  • the controller 135 includes two state machines. One of these machines is used for system bus requests from the state machine 134 and, for instance, selects addresses to be used for transfers to the system bus. (The state machine 134 itself does npt contain any buffer address information.)
  • controller 135 controls the hunters' access to the RAM 133 and also the IOP's access to this RAM. It also performs an arbitration function that arbitrates between the hunters' access and IOP's access to the RAM 133. IOP's access overrides the hunters' access since IOP's access is less frequent.
  • the operation of the two state machines within controller 135 are interlaced, each having access to the RAM for one half a bus cycle. Two bus cycles are required to complete a transaction since a read and write operation for the RAM 133 is necessary. The operation of the controller 135 will become better understood when the flow diagram of Figure 19 is described.
  • BUFx refers to one of the 15 buffer sections, HEADx its associated header space in buffer 0, and STATx its associated status space in buffer 0.
  • BUFx, HEADx, and STATx are referred to as "triplets”.
  • all of the bits in the RAM 133 are set to a predetermined condition, for instance, all zeros to indicate that all buffer sections are FREE.
  • the adapter circuit has four hunters, each of which includes a 4-bit state machine and register.
  • One hunter is referred to as the receive hunter. This hunter searches through the RAM 133, as will be described and identifies buffer sections which are FREE. These buffer sections are used for receiving data from the system bus.
  • the controller 135 Upon determining that a buffer section is FREE, as will be described, the controller 135 changes the state for the buffer section to RECEIVING.
  • the buffer section number (RBUF) is used by multiplexer 119 for addressing the buffer 117.
  • the transmit (X) hunter examines the RAM 133 to identify buffer sections which are ready to transmit data. Once a buffer section is identified, its address (TBUF) is used by the multiplexer 119 to address the buffer 117. This is shown in the above table as the XMIT state, XMIT WAIT state or STAT state.
  • the new (N) hunter scans the buffer state RAM 133 looking for buffers in one of the following states: LATENT, XMIT HOLD, XMIT ERR or RCV HOLD. In general, these are states which require IOP action, such as the transfer of data from a buffer section to the IOP.
  • the fourth hunter, EMPTY (E) hunter scans RAM 133 to locate FREE buffer sections into which data may be loaded from the IOP. As will be seen, once the IOP is loading data into the identified empty buffer section, the "LOADING" state is noted in the RAM 133. Both the receive hunter and empty hunter, as described above, search for
  • FREE buffer sections The receive hunter has priority over the empty hunter since first priority is given to accepting data from the system bus to free it for use by the other nodes.
  • the state machines for hunters are shown each having three states, 141, 142, 143 and 144 in Figure 16. Initially, all four hunters are set to invalid (state 141) at the time hunting begins. The receive and empty hunters immediately proceed to the hunting state 142. The new and transmit hunter require a "compare” signal (discussed below) before making the transition to the hunting state. When a match occurs, that is, when a hunter locates what it is looking for, the hunter changes to the valid state 143. Until invalidation occurs, the hunter remain in the valid state 143. The generation of the "match" signals for the hunters and the invalidation signals will be described in conjunction with Figure 18.
  • the count in the scanner 170 of Figure 17 must match the count in NBUF or XBUF, respectively. (Ordinary comparators, not shown, are used for this purpose.) In effect, this requires hunting to begin at the point where it was last stopped for these two hunters. This prevents the new hunter or transmit hunter from remaining in shortened scan loops within RAM 133 causes scanning of less than the entire RAM 133. These loops could prevent the new hunter or transmit hunter from identifying buffer section requiring service. The same consideration does not apply for the receive or empty hunters, that is, any free buffer is suitable to receive data, there being no disadvantage in reusing the same buffer before exercising other buffers. In Figure 17, the addressing for the buffer state RAM is shown for the hunters' access.
  • a 4-bit counter 170 provides the counts to scan through the 16 locations of the buffer state RAM 133. This counter is incremented by a signal from ROM 180 of Figure 18. The count from the counter 170 is coupled through the multiplexer 172 and provides addresses for the RAM. This count is also coupled to four registers identified as the XBUF 173, RBUF 174, NBUF 175 and EBUF 176. These registers are associated with the four state machines of Figure 16, specifically the transmit hunter, receive hunter, new hunter and empty hunter state machines, respectively.
  • the counter causes the buffer state memory to be scanned and each location in the memory is examined to determine if the corresponding buffer section is FREE. This is done by ROM 180 of Figure 18, as will be described.
  • the match R signal coupled to the register 174 causes this register to retain the count of counter 170.
  • This count provides the receive buffer address (RBUF) for the multiplexer 119, allowing the state machine 134 to select this available register for loading from the system bus.
  • the other hunters record the count from the counter 170 when a match occurs, satisfying a condition which they are searching for.
  • the counts (addresses) stored in these registers are used through the multiplexer 172 to select the 16 locations in the RAM for updating the status of a buffer section as will be more apparent from Figure 18.
  • ROMs 180, 181 and 182 are used within the buffer state RAM controller. (In the current implementation, each of these ROMs is realized as a pair of ROMs.)
  • the ROM 180 examines each of the 4-bit words from the RAM 133 and determines if a match occurs. Any combination of the hunters may be searching at any given time. Signals on lines 183 inform the ROM 180 which ones of the hunters are hunting. These signals are obtained directly from the hunter state machines of Figure 16.
  • a match signal is provided at the output of the ROM 180 to the register 174 of Figure 17 so that the register records the current count.
  • the ROM 180 provides a 4-bit data output word and write control signal to the RAM 133 to change the currently accessed RAM location from FREE to RECEIVING. Also, the ROM 180 increments the counter.
  • a match signal is provided to the registers of Figure 17 and the state stored in the RAM 133 is updated to indicate, for instance, that an empty register has been located to receive data from the IOP bus.
  • the state machine 134 transfers data or status packets to or from the system bus (by selecting an address through the multiplexer 119) it provides a signal to ROM 181 to indicate that a successful transfer has occurred or that it has been unable to complete a transfer. If a transfer has occurred, the ROM 181 changes the status of the buffer section in the state RAM and additionally invalidates the receive hunter if data has been received or the transmit hunter if data has been transmitted onto the system bus.
  • the ROM 182 receives IOP commands to examine or modify the contents of RAM 133, to initiate transmissions of the status or data packets residing in a specified buffer section, to acknowledge its awareness of a newly received status or data packet, and to resume transmissions after a transmission error.
  • the IOP bus provides an address to the RAM 133 over the IOP bus.
  • the ROM 182 may update the buffer section's status in the state RAM 133, when, for example, the command alters that buffer section's state, and may also invalidate the new hunter or the empty hunter, depending upon the command.
  • the controller 135 maintains a count of the number of status packets which need to be transmitted. Each time the IOP issues a transmit status command, ROM 182 is used to increment the count. After each status packet transmission, this count is decremented by ROM 181. Until the count is zero, ROM 180 prohibits the transmit hunter from finding matches for data transmission, restricting it to status packet transmissions. Therefore, by way of example, the ROM 180 only issue a transmit match if the buffer section being scanned was in the STAT state. When the count is zero, indicating that, all status packets have been transmitted, the signal to ROM 180 allows all the matches to take place.
  • the state machine 135 provides offset addresses for the buffer 117 through the multiplexer 119.
  • two counters are used for counting of data. One provides the offset counting and the other is used to check the length of data transfers.
  • the offset counter is initially set at -2, and then begins providing the 7-bit offset address when it reaches a count of zero. This counter provides the offset address within each of the buffer sections. By starting the counter at -2, the lower order bits can be used to differentiate the two header words.
  • the second counter is set to the number of words which are to be transmitted or received (the header contains this information). The contents of this counter are examined, along with the busy signal to determine if the proper number of words have been received and if not, an error cycle is initiated.
  • FIG. 19 The flow diagram of Figure 19 illustrates typical control flow as represented by the various states stored within the buffer state RAM 133. The states are changed primarily under the control of controller 135 as discussed.
  • the buffers are in a FREE state as indicated by state 151; this state is stored in the state RAM 133.
  • the receive hunter is in an invalid state and hunting occurs as indicated by line 152 to locate a free buffer section.
  • the ROM 180 determines when a match occurs and writes the RECEIVING state into RAM 133 as indicated by state 153. If a valid data is received, the buffer section is then placed in the LATENT state 154; this new state is written into the RAM 133 from the ROM 181 once it has been determined that the data is valid (this will be discussed later).
  • a new data IOP interrupt is generated. The IOP responds by issuing the "next" command, which places the buffer section in the NO STAT state 155.
  • the IOP examines the "header to determine if it is a packet for which acknowledgement is required. If none is required as shown by line 156, the IOP issues the FREE command, changing to state 151. This new state is written into the RAM by the ROM 182. If a status reply is necessary, the IOP constructs a status packet in the buffer section status area and then issues the transmit status command which changes the buffer section state to the STAT state 157. Eventually, the transmit hunter scans the buffer section in this STAT state 147 and causes a transfer through the state machine 134. On successful transmission, the RAM 133 is updated to the RCV HOLD state 158 through the ROM 181. This leads to the LOADING state 168 as indicated by line 159.
  • the empty hunter after initialization, searches for an empty buffer section as indicated by line 161 and once a match occurs through ROM 180, the appropriate code for the EMPTY state 166 is written into the RAM 133.
  • An IOP new empty buffer interrupt signal is generated.
  • the IOP through ROM 182, issues the "next" command which enters the LOADING code into the RAM as indicated by state 168 and invalidates the empty hunter.
  • the IOP After loading the buffer section with data, the IOP is ready to transmit. If no acknowlegement is required, the IOP issues the transmit command which changes state to XMIT (169).
  • the ROM 182 updates the RAM 133 to indicate the XMIT state. When the XMIT hunter finds the buffer section in the XMIT state, it triggers a transmission through the state machine 134.
  • the ROM 181 after being notified of the successful transmission, frees the buffer as indicated by line 167.
  • the IOP issues the XMIT-WAIT command, instructing the ROM 182 to change the state to
  • ACKED state 164 follows when the status packet has been received.
  • the state machine 134 through ROM 181 updates the RAM to the XMIT
  • HOLD state 165 In this state, the IOP is informed that a status packet has been received, but the buffer section has not been freed.
  • the header for such, transmission includes the sender buffer section number. This 4-bit number is shown in header 36 of Figure 9.
  • the protocol unit 125 recognizes that a status packet is being transmitted from the bidding.
  • the buffer number is taken directly from the system bus and used to address the buffer 117 and is also stored in SBUF. Note there is not sufficient time to otherwise process the buffer section number.
  • the controller 135 uses the contents of SBUF to address the buffer 117.
  • Each adapter circuit on the system bus receives data (or slatus packets) each time there is a transmission over the system bus. Because of the speed at which the bus Operates, there is not sufficient time to examine each transmission over the system bus, determine if it is intended for a particular node and then accept the data. Rather, the data is always accepted and the controller 135 examines the data to determine if the data is valid, that is, intended for the node. Referring again to Figure 19, the state of a buffer section is changed from RECEIVING state 153 to latent state 154 only if the data is valid. If it is not valid, the buffer remains in the RECEIVING state 153 and new incoming data is simply written into the buffer over the existing invalid data.
  • the bus provides efficient means of transferring data, particularly between processors and input/output subsystems.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)

Abstract

Un appareil de bus (20) est destiné à l'interconnexion d'une pluralité de noeuds (25-28). Les noeuds peuvent comprendre des processeurs (21, 22), des sous-systèmes d'entrée/sortie (23, 24) ou autre. Chaque noeud maintient un nombre prioritaire unique; les nombres de priorité sont déterminés indépendamment par chaque noeud. Une mise à jour séparée des nombres de priorité a lieu pour des paquets d'accusé de réception en comparaison des transmissions de données. Ceci permet d'assurer un accusé de réception rapide et efficace des transmissions et ne pénalise pas injustement un noeud de réception populaire. Deux circuits d'interface différents sont décrits, l'un deux étant particulièrement approprié pour être utilisé avec un sous-système d'entrée/sortie, et l'autre pour un processeur.
EP85902230A 1984-04-19 1985-04-05 Appareil de bus d'ordinateur avec arbitrage reparti Withdrawn EP0177607A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60215484A 1984-04-19 1984-04-19
US602154 1984-04-19

Publications (1)

Publication Number Publication Date
EP0177607A1 true EP0177607A1 (fr) 1986-04-16

Family

ID=24410193

Family Applications (1)

Application Number Title Priority Date Filing Date
EP85902230A Withdrawn EP0177607A1 (fr) 1984-04-19 1985-04-05 Appareil de bus d'ordinateur avec arbitrage reparti

Country Status (6)

Country Link
EP (1) EP0177607A1 (fr)
JP (1) JPS62500062A (fr)
AU (1) AU4291185A (fr)
DE (1) DE3590162T1 (fr)
GB (1) GB2167628B (fr)
WO (1) WO1985004967A1 (fr)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3928481C2 (de) * 1989-08-29 1994-09-22 Diehl Gmbh & Co Prioritätsorientiertes dezentrales Busvergabesystem
AU665521B2 (en) * 1990-10-03 1996-01-11 Thinking Machines Corporation Parallel computer system
TW216473B (en) * 1992-08-28 1993-11-21 American Telephone & Telegraph Contention resolution scheme for communications systems

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4004283A (en) * 1974-10-30 1977-01-18 Motorola, Inc. Multiple interrupt microprocessor system
US4009470A (en) * 1975-02-18 1977-02-22 Sperry Rand Corporation Pre-emptive, rotational priority system
US3993981A (en) * 1975-06-30 1976-11-23 Honeywell Information Systems, Inc. Apparatus for processing data transfer requests in a data processing system
US4067059A (en) * 1976-01-29 1978-01-03 Sperry Rand Corporation Shared direct memory access controller
US4096571A (en) * 1976-09-08 1978-06-20 Codex Corporation System for resolving memory access conflicts among processors and minimizing processor waiting times for access to memory by comparing waiting times and breaking ties by an arbitrary priority ranking
US4121285A (en) * 1977-04-01 1978-10-17 Ultronic Systems Corporation Automatic alternator for priority circuit
US4334288A (en) * 1979-06-18 1982-06-08 Booher Robert K Priority determining network having user arbitration circuits coupled to a multi-line bus
US4408300A (en) * 1980-09-15 1983-10-04 Burroughs Corporation Single transmission bus data network employing an expandable daisy-chained bus assignment control line

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO8504967A1 *

Also Published As

Publication number Publication date
GB2167628B (en) 1988-06-22
WO1985004967A1 (fr) 1985-11-07
AU4291185A (en) 1985-11-15
GB8527870D0 (en) 1985-12-18
JPS62500062A (ja) 1987-01-08
DE3590162T1 (de) 1986-08-07
GB2167628A (en) 1986-05-29

Similar Documents

Publication Publication Date Title
US4766536A (en) Computer bus apparatus with distributed arbitration
CA1218467A (fr) Mecanisme d'arbitrage pour affecter le controle d'un trajet de communication dans un ordinateur numerique
US4763249A (en) Bus device for use in a computer system having a synchronous bus
US4706190A (en) Retry mechanism for releasing control of a communications path in digital computer system
US4174536A (en) Digital communications controller with firmware control
US4648030A (en) Cache invalidation mechanism for multiprocessor systems
US4041472A (en) Data processing internal communications system having plural time-shared intercommunication buses and inter-bus communication means
US4661905A (en) Bus-control mechanism
EP0458516B1 (fr) Dispositif de bus d'accès à mémoire
KR910001789B1 (ko) 디지탈 컴퓨터 시스템의 다중 프로세서 시스템용 캐쉬 무효 장치
US4720784A (en) Multicomputer network
EP0301610B1 (fr) Appareil de traitement de données pour raccordement avec un bus de communication commun dans un système de traitement de données
CN1271540C (zh) 用于在对称多处理器系统中发送分组的方法和装置
EP0441840A4 (en) System and method for sharing resources of a host computer among a plurality of remote computers
EP0475005A2 (fr) Dispositif d'interconnexion de canaux
EP0512685B1 (fr) Protocole de bus en quadrature pour conduire des transactions dans un système d'ordinateur
EP0139568B1 (fr) Mécanisme d'interruption à format de messages pour systèmes multi-processeur
EP0177607A1 (fr) Appareil de bus d'ordinateur avec arbitrage reparti
US20030065735A1 (en) Method and apparatus for transferring packets via a network
US5815674A (en) Method and system for interfacing a plurality of bus requesters with a computer bus
US5206936A (en) Apparatus for exchanging channel adapter status among multiple channel adapters
US4757446A (en) High-speed link for connecting peer systems
EP0340347B1 (fr) Système d'arbitrage de bus
JPS61239747A (ja) デイジタル・デ−タ通信装置

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): BE FR

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 19860321

RIN1 Information on inventor provided before grant (corrected)

Inventor name: BERNSTEIN, DAVID H.

Inventor name: WILSON, JAMES A., JR.