Interface module for connecting collision detection LAN user terminals to a switching network having a different access mode.

Abstract: In an interface module (2) for connecting user terminals (1) of the carrier sense multiple access collision detection (CSMA/CD) local area network (LAN) to a different access mode switching (3) network, a transmit buffer (12) is connected at one end through a transmit data channel (4) to a user terminal and connected at the other end to a desired switching system. A receive buffer (13) is connected at one end to the switching system to store a receive packet supplied from it. An OR (14) gate is provided having a first input connected to the transmit data channel, a second input connected to the other end of the receive buffer and an output connected through a receive data channel (5) to the user terminal. A detector circuit (16) detects when a transmit packet is received from the user terminal. A control circuit (11) responds to the output of detector circuit to enable the transmit buffer to store the transmit packet from the user terminal and further enables the receive buffer to forward the stored receive packet to the OR gate in the absence of a transmit packet detected by the detector circuit. The control circuit detects a simultaneous occurence of a receive packet being forwarded from the receive buffer and a transmit packet being detected by the detector means and causes a collision-presence signal to be supplied to the user terminal through a signalling channel (6).

Description: The present invention relates to an interface module for connecting user terminals of a collision detection local area network to a switching network having a different access mode. When it is desired to connect a user terminal of a collision detection local area network having an IEEE 802.3 standard access interface, for example, to a switching network having different access protocols, the simplest approach that minimizes modifications of the terminals would be to construct an interface module with transmit and receive buffers which are connected to a desired switching network, an access controller connected to the transmit and receive buffers, and a serial interface adapter connected thereto. A pair of transceivers are connected in a coaxial cable bus. One of the transceivers is connected to the user terminal and the other transceiver to the serial interface adapter. However, such a solution would result in a bulky and expensive interface module. US-A-4 500 990 discloses an interface for interconnecting two networks having similar or different access modes. When a collision is detected, the transmission is suspended; a variable interval after disappearance of the collision, the transmission is restarted. The object of the present invention is therefore to provide an interface module for a collision detection local area network which is simple and inexpensive and does no require the user terminal to modify its structure to adapt it to a different access system. This object is solved with the features of the claims. Collision detection type LAN user terminals can therefore be connected to a switching network of non-collision detection type without expensive transceivers and access controllers which would otherwise be needed. The interface module can be implemented by simple logic circuitry and so it can be kept small. Flow control can also be provided between the transmit buffer and the user terminal. A further advantage is that when a data collision occurs between a transmit packet from the user and a receive packet from the switching network, repeated collisions can be avoided by informing the user of the occurrence of a collision. Further, the packet's dwell time in the receive buffer can be shortened, improving the buffer utilization efficiency. The present invention will be described in further detail with reference to the accompanying drawings, in which: Fig. 1 is a block diagram of a terminal interface module according to a first embodiment of the present invention; Fig. 2 is a block diagram of a terminal interface module according to a second embodiment of the present invention; Fig. 3 is a data format used in the first embodiment of the invention; Fig. 4 is a block diagram of a terminal interface module according to a third embodiment of the present invention; and Fig. 5 is a data format used in the embodiment of Fig. 4. Fig. 1 is an illustration of a packet-switched system in which terminal interface modules 2-1 and 2-2 of the present invention are shown to permit user terminals 1-1 and 1-2 of carrier sense multiple access collision detection (CSMA/CD) local area network (LAN) to be connected to a packet switching network 3 of non-collision detection access mode. The user terminal 1-1 is located remote from the switching network 3 and connected thereto via the interface module 2-1 which is located adjacent the user terminal 1-1. The connection between the module 2-1 and the switching network 3 is by means of subscriber loops 7 and 8. The other user terminal 1-2 is located adjacent the switching network 3 and is directly connected to an interface module 2-2 which is located within the switching network 3. Each of the interface modules 2 comprises a controller 11, a transmit buffer 12 having an input port connected to the associated user terminal 1 via a transmit data channel 4 and an output port connected via the subscriber loop 7 to the switching network 3. A receive buffer 13 is provided having an input port connected from the switching network 3 via the subscriber loop 8 and an output port connected through an OR gate 14 and a receive data channel 5 to the associated user terminal 1. Via the OR gate 14, the transmit data channel 4 is connected to the receive data channel 5. The transmit and receive buffers 12 and 13 are both controlled by the controller 11 to which a delimiter detector 16 supplies an output in response to the detection of a delimiter from a transmit packet received from the associated user terminal 1. Controller 11 detects a collision between packets and directs a collision-presence signal generator 15 to supply a collision-presence signal through a signalling channel 6 to the associated user terminal 1. As shown in Fig. 3, each packet comprises a starting delimiter SD for signifying the beginning of the packet, an ending delimiter ED signifying the end of the packet, a destination address DA, a source address SA, a user information field INFO and a frame check sequence FCS. In Fig. 1, a transmit packet from a user terminal 1 is sent on the transmit data channel 4 and stored into the transmit buffer 12 on the one hand and fed back through OR gate 14 to the receive data channel 5. The transmission of the signal back to the user terminal is to conform to the access mode of the cable-bus local area network. The starting delimiter of the transmit packet is detected by the delimiter detector 16 and is communicated to the control circuit 11. Control circuit 11 enables the transmit buffer 12 in a write mode to store the transmit packet. This write mode of operation is continued until the delimiter detector 16 detects the ending delimiter ED of the received transmit packet. Controller 11 switches the transmit buffer 12 to a read mode to read the stored transmit packet out of the buffer 12 onto the subscriber loop 7. On the other hand, a receive packet from the switching network 3 is supplied through the subscriber loop 8 and is stored into the receive buffer 13 and is communicated to the control circuit 11. If a transmit packet is not received from the user terminal simultaneously with the arrival of the receive packet, controller 11 proceeds to read the receive packet from the receive buffer 13 and supplies it through OR gate 14 to the receive data channel 5. If the delimiter detector 16 detects the starting delimiter of a transmit packet while a receive packet is being transmitted to the user terminal, control circuit 11 recognizes this situation as a collision and activates the collision-presence signal generator 15 to communicate this fact to the associated user terminal by way of the signalling channel 6. In the event of a collision, the remainder of the transmit packet in the transmit buffer 12 is discarded to prevent it from being occupied with useless data, while the receive buffer 13 is given priority to retransmit the receive packet to the user terminal following a predetermined delay from the time of occurrence of the collision. In this way, loss of receive data is prevented. The predetermined delay time is equal to or smaller than the minimum amount of time required for the associated user terminal 1 to retransmit a packet. This not only prevents packets from encountering collision again but also reduces the packet's dwell time in the receive buffer 13 to improve the utilization efficiency of the receive buffer 13. If the transmit buffer 12 is overflowed, control circuit 11 detects this condition and causes the receive buffer 13 to apply a dummy (carrier) signal through OR gate 14 to the receive data channel 5. The associated user terminal detects a "carrier sense" mode (with the cable bus system the carrier sense mode corresponds to a condition in which another terminal is transmitting a packet) and takes no further action to transmit a packet. As soon as the transmit buffer 12 becomes ready to receive packets, controller 11 senses this condition and causes the receive buffer 13 to discontinue the transmission of the dummy signal. In this way, flow control between the user terminal and the interface module can be achieved. For user terminals designed to detect collision-presence signals following the transmission of a packet, control circuit 11 activates the collision-presence signal generator 15 in response to the detection of an ending delimiter ED by the delimiter detector 16. Fig. 2 is a block diagram of a terminal interface module 20 according to a second embodiment of the present invention which is suitable for a network where no delimiters are used between buffers and the switching network 3. In this embodiment, the starting and ending delimiters of every transmit packet from the user terminal 1 are removed by a delimiter detector 26 and a receive packet stored in a receive buffer 23 is appended by starting and ending delimiters generated by a delimiter generator 27. A pulse generator 28 is provided which responds to the detection of an ending delimiter detected by the delimiter detector 26 by generating a single pulse. During the presence of this pulse, a collision-presence signal generator 25 sends a collision-presence signal to the user terminal through the signalling channel 6 if enabled by a controller 21 upon detection of a collision. If the packet exchanged between the terminal and the interface module is in serial form, the provision of a serial-to-parallel converter in a delimiter detector 26 and the provision of a parallel-to-serial converter in the delimiter generator 27 allow transmit buffer 22 and receive buffer 23 to reduce their memory access speeds. Fig. 4 is a block diagram of an interface module according to a third embodiment of the present invention which handles packets of the format specified in accordance with the IEEE 802.3 standard. As shown in Fig. 5, the packet used in this embodiment comprises a preamble PA, a destination address DA, a source address SA, a user information field INFO and a frame check sequence FCS. As illustrated in Fig. 4, the interface module 30 includes a serial interface adapter 50 constructed of known interface LSI chips. A transmit packet on transmit data channel 4 is supplied through transformer 59 to an input port 55 of the serial interface adapter 50. Serial interface adapter 50 converts the line code format of the transmit packet to a binary logic code format (non return-to-zero), feeds an output port 51 and applies a logic-1 transmit enable pulse of the same duration as the packet (see Fig. 5) to an output control port 53. When the serial interface adapter 50 is supplied with a logic-1 receive enable 60 (Fig. 5) at an input control port 54 and a receive packet at a data input port 52, it converts the binary logic code of the latter into a line code format and feeds a data output port 56 which is coupled through transformer 59 to the receive data channel 5. Transmit packets from the output port 51 are supplied to a shift register 45 on the one hand and through an OR gate 57 to an input port 52 of the serial interface adapter 50. The transmit enable pulse is supplied to control-circuit 31 and a pulse generator 38 which in turn supplies a single pulse in response to the trailing edge of this transmit enable pulse through an OR gate 48 to a collision-presence signal generator 35. Collision-presence signal generator 35 responds to the pulse from pulse generator 38 and to a collision detection signal from controller 31 by applying a collision-presence signal to the signalling channel 6 via transformer 59. The transmit packet stored into the shift register 45 is converted to parallel form and supplied to a latch 44 and to a preamble detector 46. The preamble detector 46 is enabled in response to the transmit enable pulse from the serial interface adapter 50 to detect a preamble PA contained in the transmit packet stored in the shift register 45. A counter 47 is initialized in response to an output signal from the preamble detector 46 to start a count operation and supplies a clock pulse to the latch 44 in synchronism with each word of the transmit packet. The transmit packet in the latch 44 is stored into transmit buffer 32 in the form of a word-organized structure. If the preamble PA is not required by the switching network 3, it can be eliminated from the packet by switching the transmit buffer 32 to a write mode immediately after the packet leaves the buffer 32. During the time no transmit enable pulse is supplied to the control circuit 31 from the output control port 53, packets are read out of the receive buffer 33 into a preamble generator 34 where a preamble is generated and appended to the receive packet leaving the buffer 33. The receive packet is then supplied to a shift register 41 where it is converted to serial form and fed through the OR gate 57 to the input port 52 of the serial interface adapter 50. Control circuit 13 supplies a receive enable pulse through OR gate 58 to an input port 54 of the adapter 50 in response to the receive packet being supplied to the input port 52 of the serial interface adapter 50. If the control circuit 31 receives a transmit enable pulse during the time it sends a receive enable pulse to the serial interface adapter 50, it recognizes that a collision has occurred and activates the collision-presence signal generator 35 through OR gate 48. When this occurs, the control circuit 31 stops reading the contents of the receive buffer 32, causes a receive buffer pointer 42 to return to a read address point immediately prior to the occurrence of the collision and activates a timer 40. When the timer 40 generates an output indicating that a predetermined retransmit time interval has elapsed, the control circuit 31 reactivates the receive buffer 33 for retransmission of the receive packet. In a similar manner, the control circuit 31 causes a transmit buffer pointer 43 to return to a write address point immediately prior to the occurrence of the collision to discard the transmit packet stored in the transmit buffer 32 at the instant the collision occurred. If the amount of data stored in the transmit buffer 32 exceeds beyond a prescribed level and is thus not ready to receive packets and if no receive packets are being sent to the user terminal, the control circuit 31 applies a receive enable pulse to the serial interface adapter 50 to cause it to transmit a dummy (carrier) signal indicating that the transmit buffer is not ready to receive to the user terminal to prevent it from transmitting a packet. It will be seen from the above description that the collision detection type LAN user terminals can be connected to a switching network of non-collision detection type without expensive transceivers and access controllers which would otherwise be needed. In addition, since the interface module can be implemented by simple logic circuitry, it can be kept small and flow control can also be provided between the transmit buffer and the user terminal. A further advantage is that since priority is given to the interface module when a data collision occurs between the user terminal and the interface module, repeated collisions can be avoided and the packet's dwell time in the receive buffer can be shortened, improving the buffer utilization efficiency.

Claims: An interface module for a user terminal of the type which is adapted to be connected to a collision detection local area network, comprising: a transmit buffer (12; 22) connected at one end through a transmit data channel to said user terminal and connected at the other end to a switching system having a different access mode; a receive buffer (13; 23) connected at one end to said switching system to store a receive packet therefrom; an OR gate (14; 24; 57) having a first input connected to said transmit data channel, a second input connected to the other end of said receive buffer, and an output connected through a receive data channel to said user terminal; detector means (16; 26; 50, 53) for detecting when a transmit packet is received from said user terminal; control means (11; 21) for enabling said transmit buffer to store said transmit packet therein when same is detected by said detector means, enabling said receive buffer to forward the stored receive packet to said second input of said OR gate in the absence of a transmit packet detected by said detector means and for detecting a simultaneous occurrence of a receive packet being forwarded from said receive buffer and a transmit packet being detected by said detector means; and means (15; 25; 35) for supplying a collision-presence signal through a signalling channel to said user terminal in response to the detection of said simultaneous occurrence of said receive and transmit packets. An interface module as claimed in claim 1, wherein said control means is arranged to cause said transmit buffer to discard a transmit packet in response to the detection of said simultaneous occurrence of said receive and transmit packets. An interface module as claimed in claim 1 or 2, wherein said control means is arranged to cause said receive buffer to retransmit a receive packet stored therein in response to the detection of said simultaneous occurrence of said receive and transmit packets. An interface module as claimed in claim 3, wherein the time taken to initiate the retransmission of said receive packet is equal to or smaller than a minimum amount of time taken by said user terminal to retransmit a packet. An interface module as claimed in any one of claims 1 to 4, wherein the control means is arranged to cause said receive buffer to supply a carrier to said user terminal through said receive data channel when said transmit buffer is not ready to receive packets and a receive packet is not forwarded from said receive buffer. An interface module as claimed in any one of claims 1 to 5, wherein the detector means is arranged to remove a delimiter from a transmit packet before being stored into said transmit buffer. An interface module as claimed in any one of claims 1 to 6, comprising means for converting said transmit packet to parallel form and to store it into said transmit buffer in the parallel form. An interface module as claimed in any one of claims 1 to 7, comprising means (27) for appending a delimiter to a receive packet forwarded from said receive buffer before being supplied to said receive data channel. An interface module as claimed in any one of claims 1 to 8, wherein said collision-presence signal is transmitted following the reception of a transmit packet from said user terminal. An interface module for a user terminal of the type which is adapted to be connected to a collision detection local area network, comprising: a transmit buffer (32) connected to a switching system having a different access mode; a receive buffer (33) connected to said switching system to store a receive packet transmitted therefrom; a first OR gate (57) having a first input connected to an output of said receive buffer (33); a second OR gate (58); an interface adapter (50) having: a first data input port (55) connected to said user terminal through a transmit data channel (4); a first data output port (56) connected to said user terminal through a receive data channel (5); a second data input port (52) connected to an output of said first OR gate (57); a second data output port (51) connected to a second input of said first OR gate (57) and to an input of said transmit buffer (32); a control input port (54) connected to an output of said second OR gate (58) for receiving a receive enable pulse applied thereto; and a control output port (53) connected to a first input of said second OR gate (58), said interface adapter being arranged for receiving a transmit packet having a line code format through said first data input port (55), converting the line code format of the received packet to a binary logic code and applying the converted packet to said second data output port (51) and for simultaneously supplying a transmit enable pulse to said control output port (53), said interface adapter being responsive to said receive enable pulse applied to said control input port (54) for converting a binary logic code format of a packet supplied to said second data input port (52) into a line code format and supplying the converted packet to said first output port (56); a collision signalling circuit (35) connected through a signalling channel to said user terminal for generating a collision-presence signal; and a control circuit (31) for causing said transmit buffer (32) to operate in a write mode to store the packet appearing at said second data output port (51) in response to said transmit enable pulse and for causing said receive buffer (33) to forward a packet therefrom to said first OR gate (52) in the absence of said transmit enable pulse and simultaneously supplying said receive enable pulse to a second input of said second OR gate (58), and for causing said collision signalling circuit (35) to supply said collision-presence signal to said signalling channel when said transmit enable pulse occurs in the presence of a receive packet being forwarded by said receive buffer (33) to said first OR gate (57). An interface module as claimed in claim 10, wherein said control circuit is arranged to interrupt the write mode of operation of said transmit buffer when said transmit enable pulse occurs in the presence of said packet being forwarded from said receive buffer and discards the transmit packet leaving said second data output port (51). An interface module as claimed in claim 10 or 11, further comprising a retransmit timer, wherein said control circuit is arranged to activate the retransmit timer when said transmit enable pulse occurs in the presence of said receive data signal being forwarded from said receive buffer and to initiate the retransmission of a receive packet from said receive buffer at the instant said retransmit timer indicates a prescribed value. An interface module as claimed in claim 12, wherein said prescribed value is equal to or smaller than a minimum amount of time taken by said user terminal to retransmit a packet. An interface module as claimed in any one of claims 10 to 13, wherein said control circuit is arranged to supply said receive enable pulse to said second OR gate (58) when said transmit buffer is not ready to receive a packet during the time no receive packet is being forwarded from said receive buffer. An interface module as claimed in any one of claims 10 to 14, further comprising a preamble detector (46) for detecting a preamble in a transmit packet leaving said second data output port (51), and wherein said control circuit is arranged to cause said transmit buffer to operate in the write mode following the detection of a preamble by said preamble detector. An interface module as claimed in any one of claims 10 to 14, further comprising a preamble detector (46) for detecting a preamble in a transmit packet leaving said second data output port (51) and a series-to-parallel converter (45) connected to said second data output port (51) for converting a serial input of said transmit packet into a parallel output and applying the parallel output to said receive buffer in response to the detection of a preamble by said preamble detector. An interface module as claimed in claim 10 to 16, further comprising a preamble generator connected to the output of said receive buffer for inserting a preamble to a receive packet leaving said receive buffer. An interface module as claimed in any one of claims 10 to 17, further comprising a pulse generator (38) connected to said control output port (53) for generating a single pulse in response to the trailing edge of said transmit enable pulse and a third OR gate (48) connected to receive said single pulse from said pulse generator and an output signal generated by said control circuit when said transmit enable pulse occurs in the presence of a receive packet being forwarded by said receive buffer to said first OR gate (57), said third OR gate (48) activating said collision signalling circuit (35) to supply said collision-presence signal to said signalling channel.

Inventors: KATSURA YOSHIHIKO, KAWATOKO TSURAYUKI, OBAYASHI AKIHIKO, SAKAMOTO HIDENORI, SHIMIZU HIROSHI, KATSURA, YOSHIHIKO, KAWATOKO, TSURAYUKI, OBAYASHI, AKIHIKO, SAKAMOTO, HIDENORI, SHIMIZU, HIROSHI
Applicants: NIPPON ELECTRIC CO, NEC CORPORATION
Application year: 1988
Main classification: H04L12
IPC codes: H04L12, H04L29