SYSTEMS AND METHODS FOR MULTI-PAIR ATM OVER DSL
RELATED APPLICATION DATA
[0001] This application claims the benefit of and priority under 35 U.S.C. §119(e) to U.S. Patent Application Serial No. 60/327,440, filed October 5, 2001, entitled "Multi-Pair ATM Over DSL," which is incorporated herein by reference in its entirety.
BACKGROUND OF THE INVENTION
Field of the Invention
[0002] The systems and methods of this invention generally relate to communication systems. In particular, the systems and methods of this invention relate to asynchronous transfer mode (ATM) over digital subscriber line (DSL).
Description of Related Art
[0003] Fig. 1 illustrates the conventional configuration of a system for transporting ATM over DSL using a single latency ADSL configuration. As of the time of filing, single latency is most common form of ADSL deployment. Further details of this specific architecture can be found in DSL Forum Recommendation TR- 042, incorporated herein by reference in its entirety.
[0004] For the system illustrated in Fig. 1, the access node 10 serves as an ATM layer multiplexer/concentrator between the ATM core network 2 and the access network. As described in the above referenced DSL Forum Recommendation, for ATM systems, the channelization of different payloads is embedded within the ATM data stream using different virtual paths (VP) and/or virtual channels (VC). In the downstream direction, the VP/VC Mux module 16 and VPI/VCI translation module 14 receive cells from the core network interface element 12 and function to perform
cell routing based on a virtual path identifier (VPI) and/or virtual channel identifier (VCI) to the appropriate ATU-C 18. In the upstream direction, the VP/VC Mux module 16 and the VPI/VCI translation module 14 function to combine the cell streams from the ATU-C 's 18 into a single ATM cell stream to the core ATM network 2.
[0005] The broadband network termination (B-NT) 100 performs the functions of terminating the ADSL signal entering the user's premises via the twisted pair cable and the ATU-R 22 and provides either the T, S or R interface towards the premises distribution network/ terminal equipment 4. The access ATM module 26 and the VP/VC Mux module 24 perform the ATM layer functions to support the TC layers in the ATU-R. The broadband network termination 100 may also contain VPI/VCI translation functions to support multiplex/demuliplex of VC's between the ATU-R 22 and the premise distribution network/terminal equipment 4 on a VPI and /or VCI bases. The broadband network termination 100 may also comprise a PDN/TE interface element 28 and SAR module 30 the functions of which are well known and will be omitted for sake of clarity.
SUMMARY OF THE INVENTION
[0006] The exemplary systems and methods of this invention combine multiple DSL PHY's, i.e., multiple twisted wire pairs, to, for example, generate a high data rate connection for the transport of an ATM cell stream between the service provider and, for example, a DSL subscriber. The ATM cell stream may contain one or more payloads where each payload is channelized within the ATM data stream using different virtual paths (VP) and/or virtual channels (VC). At a transmitter, the ATM cell stream received from the ATM layer is distributed on a cell-by-cell bases across the multiple DSL PHY's. At the receiver, the cells from each DSL PHY are re- combined in the appropriate order to recreate the original ATM cell stream, which is then passed to the ATM layer.
[0007] Accordingly, aspects of the invention relate to ATM communications.
[0008] Additional aspects of the invention relate to transporting ATM over DSL, and more particularly over ADSL.
[0009] Additional aspects of the invention also relate to distributing ATM cells from a single ATM cell stream across multiple twisted wire pairs.
[0010] Further aspects of the invention relate to distributing ATM cells from a single ATM cell stream across multiple DSL communication links.
[0011] Further aspects of the invention relate to varying data rates over the multiple twisted wire pairs over which distributed ATM cells are transported.
[0012] These and other features and advantages of this invention are described in, or apparent from, the following detailed description of the embodiments.
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] The embodiments of the invention will be described in detailed, with reference to the following figures, wherein:
[0014] Fig. 1 is a functional block diagram illustrating a conventional ATM over ADSL system;
[0015] Fig. 2 is a functional block diagram illustrating an exemplary system for transporting ATM over ADSL according to this invention;
[0016] Fig. 3 illustrates an exemplary functional block diagram of the multi-pair multiplexing transmitter according to this invention;
[0017] Fig. 4 illustrates a functional block diagram of a second exemplary multi- pair multiplexing transmitter according to this invention;
[0018] Fig. 5 illustrates a functional block diagram of a third exemplary
embodiment of the multi-pair multiplexing transmitter according to this invention;
[0019] Fig. 6 illustrates a functional block diagram of an exemplary multi-pair multiplexing receiver according to this invention;
[0020] Fig. 7 illustrates a functional block diagram of a second exemplary multi- pair multiplexing receiver according to this invention;
[0021] Fig. 8 illustrates a functional block diagram of a third exemplary multi-pair multiplexing receiver according to this invention;
[0022] Fig. 9 is a functional block diagram illustrating a fourth exemplary multi- pair multiplexing receiver according to this invention;
[0023] Fig. 10 illustrates a functional block diagram of a fifth exemplary multi- pair multiplexing receiver according to this invention;
[0024] Fig. 11 illustrates a functional block diagram of a fourth exemplary multi- pair multiplexing transmitter according to this invention;
[0025] Fig. 12 is a functional block diagram illustrating a sixth exemplary multi- pair multiplexing receiver according to this invention;
[0026] Fig. 13 illustrates a standard five byte ATM UNI header;
[0027] Fig. 14 illustrates an exemplary modified ATM header according to this invention; and
[0028] Fig. 15 is a flowchart outlining an exemplary embodiment of a method for combining multiple DSL PHYs to transport an ATM cell stream between a service provider and a subscriber.
DETAILED DESCRIPTION OF THE INVENTION
[0029] The exemplary systems and the methods of this invention will be
described in relation to digital subscriber line communications and more particularly to asymmetric digital subscriber line communications. However, to avoid unnecessarily obscuring the present invention, the following description omits well- known structures and devices that may be shown in block diagram form or otherwise summarized. For the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It should be appreciated however that the present invention may be practiced in variety of ways beyond the specific details set forth herein. For example, the systems and methods of this invention can generally be applied to any type of communications system including wireless communication systems, such as wireless LANs, power line communications, or any other systems or combination systems that use ATM.
[0030] Furthermore, while the exemplary embodiments illustrated herein show the various components of the communication system collocated, it is to be appreciated that the various components of the system can be located at distant portions of distributed network, such as a telecommunications network and/or the Internet, or within a dedicated ATM over DSL system. Thus, it should be appreciated that the components of the communication system can be combined into one or more devices or collocated on a particular node of a distributed network, such as a telecommunications network. It will be appreciated from the following description, and for reasons of computational efficiency, that the components of the communication system can be arranged at any location within a distributed network without affecting the operation of the system.
[0031] Furthermore, it should be appreciated that the various links connecting the elements can be wired or wireless links, or a combination thereof or any other know or later developed element(s) that is capable of supplying and/or communicating data to and from the connected elements. Additionally, the term module as used herein can refer to any know or later developed hardware, software, or combination of hardware and software that is capable of performing the functionality associated with that element.
[0032] Additionally, although this invention will be described in relation to ATM systems, the systems and methods of this invention can be applied to any transport protocol that uses cells or packets for transmitting information. Therefore, for example, the same methods can be used for the bonding of PHYs that transport Ethernet or IP packets. Furthermore, although this invention will be described in relation to ATM transported over DSL PHYs, other PHYs, such as cable, voice band modems, ATM-25, and the like, can also be used.
[0033] Fig. 2 illustrates an exemplary multi-pair ATM over DSL system. In particular, the system comprises an access node 100, a broadband network termination 200, an ATM core network 2 and premise distribution network/terminal equipment 4. The access node 100 further comprises a core network interface element 110, a VPI/VCI translation module 120, a VP/VC Mux module 130, an ATU-C multi-pair multiplexer 140 and a plurality of ATM TC ATU-C modules 150. The broadband network termination 200 further comprises a plurality of ATU-R ATM TCs 210, an ATU-R multi-pair multiplexer 220, a VP/VC Mux module 230, an access ATM module 240, and a PDN/TE interface module 250. Furthermore, the system comprises a SAR and PDN function module 260, wherein the functions of like components have been discussed in relation to Fig. 1.
[0034] The exemplary system illustrated in Fig. 2 distributes ATM cells from a single ATM cell stream across multiple ADSL PHY links, i.e., multiple twisted wire pairs (1 to n). The ATM cell stream, also referred to as the ATM stream, may comprise one or more payloads where each payload is channelized within the ATM stream using different virtual paths (VP) and/or virtual channels (VC). This can effectively create, for example, a high data rate ATM connection between a service provider and an ADSL subscriber.
[0035] In accordance with an exemplary embodiment of this invention, the ATU- C multi-pair multiplexer 140 is inserted between the VP/VC multiplexer 130 and the ATU-C's 150 at the V-C interface in the access node 100. Additionally, the ATU-R multi-pair multiplexer 220 is added to the broadband network termination 200 at the T-R interface. Both of these multi-pair multiplexers have transmitter and receiver
sections (not shown) whose operations are comparable. The multi-pair multiplexer transmitter section performs the task of distributing cells from the ATM stream among multiple ATM cell substreams. Each ATM cell substream, also referred to as an ATM substream, is forwarded a different ATU. The multi-pair multiplexer receiver section performs the task of recombining the ATM substreams to regain the original ATM stream.
[0036] In the exemplary system illustrated in Fig. 2, two ADSL PHYs 160 and 170 are "bonded" together to transport a single ATM cell stream. However, it should be appreciated, that the number of ADSL PHYs "bonded" together can be easily expanded to any number (N>2) of ADSL PHYs thereby, for example, enabling higher ATM data rates. In addition to the two ADSL PHYs 160 and 170 that are bonded together, it should further be appreciated that in some instances in the same access node 100, other ADSL PHYs may be operating in the traditional way. Obviously, the ADSL PHYs operating the traditional way do not need to be connected to the multi- pair multiplexer 140. Thus, in general, it should be appreciated that any combination of "bonded" and unbonded, i.e. traditional, ADSL PHY's, may be configured between the access node 100 and the broadband network determination 200. Furthermore, it should be appreciated that all of the ADSL PHYs can be bonded together.
[0037] In may ADSL systems, the logical interface between the ATM layer the PHY is based on UTOPIA Level 2 with a cell level handshake. This same UTOPIA Level 2 logical interface can also be used between the multi-pair multiplexer and the ATM layer and also between the multi-pair multiplexer and the PHY in the access node 100 and the broadband network termination 200. Although, the above example and the remainder of this discussion will be directed toward the multi-pair multiplexer functions using a ADSL PHY, any version of DSL that has an ATM-TC, e.g., VDSL, SHDSL, or the like, may be used instead of, or conjunction with, the ADSL PHY.
[0038] Fig. 3 illustrates an exemplary multi-pair multiplexing transmitter according to this invention. The ATU-C and ATU-R multi-pair multiplexer box provide the same basic transmitter and receiver functions and thus can be summarized as one unit.
[0039] In particular, the exemplary multi-pair multiplexing transmitter 300 illustrated in Fig. 3 provides, but not limited to, accepting a single ATM stream 310 from the ATM layer and distributing the cells among N ATM substreams 320, where N>2. Furthermore, the multi-pair multiplexing transmitter 300 maps each ATM cell substream to a different DSL connection and provides as output these ATM cell substreams to the appropriate ADSL PHY (ATUx). For the exemplary multi-pair multiplexing transmitter 300 illustrated in Fig. 3, the cells from the ATM stream 310 are distributed amongst the ATM substreams 320 based on the data rate of each DSL PHY.
[0040] The configuration of the multi-pair multiplexing transmitter 300 can be varied to, for example, provide an equal or unequal data rate on the DSL PHYs. Fig. 4 illustrates an exemplary embodiment where an equal data rate is applied to all of the DSL PHYs. In particular, if the data rate on all of the DSL PHYs is the same, then an equal number of ATM cells will be transported over every PHY connection. In this case, the multi-pair multiplexing transmitter 300 sends the first ATM cell to ATU1 330, the second ATM cell to ATU2 340, the third ATM cell to ATU3 350, and so on. For the multi-pair multiplexing transmitter 300 illustrated in Fig. 4, N=3 and an equal data rate on all DSL PHYs is illustrated, therefore the input ATM cells from the ATM stream 310, as discussed above, are distributed equally and sequentially among the DSL PHYs.
[0041] For the multi-pair multiplexing transmitter 300 illustrated in Fig. 5, an unequal data rate is transported on the DSL PHYs. In particular, if a data rate on all the DSL PHYs is not equal, the ATM cells can be forward to the DSL PHYs, at, for example, a ratio that matches the ratios of the available PHY data rates. If, for example, N=2, as illustrated in Fig. 5, and the data rate of the first DSL PHY 360 is two times the data rate of the second PHY 370, then the multi-pair multiplexer 300 would send 2 ATM cells to the first DSL PHY, i.e., cells 1 and 2, and then send 1 ATM cell to the second DSL PHY, i.e., cell 3. However, in general, this basic concept can be expanded at least to include the situation where N>2 and to non- integer data rate ratios.
[0042] For example, in a two modem environment where there is a "high-speed" and a "low-speed" implementation, an exemplary ratio of N:l where N=2 to 8 can be specified. This means that the "high-speed" modem will have eight times the cells as the "low-speed" modem. In this exemplary configuration, there are eight cells of receiver FIFO meaning that the entire "high-speed" receiver could be empted before needing to service the "low-speed" receiver.
[0043] Fig. 6 illustrates an exemplary multi-pair multiplexing receiver 400. The exemplary multi-pair multiplexing receiver 400 provides, but is not limited to, accepting multiple ATM cell substreams from different DSL PHYs and recombining the ATM cells from the different ATM cell substreams to recreate the original ATM stream, which is passed to the ATM layer. In particular, and as illustrated in Fig. 6, a plurality of ATM substreams are received by the multi-pair multiplexing receiver 400 and recombined into the original ATM stream. Specifically, as in the multi-pair multiplexing transmitter, the recombining of cells from the DSL PHYs depends on the data rates of the individual PHY connections. As in the embodiment discussed in relation to Fig. 4, where all DSL PHYs had an equal data rate, the multi-pair multiplexing receiver 400 can perform the inverse of the transmitting multiplexer function and reconstruct the original ATM stream by taking one cell from each ATM substream and combining them in the appropriate order, as illustrated in Fig. 7.
[0044] Similarly, as illustrated in relation to the multi-pair multiplexing transmitter 300 illustrated in Fig. 5, where the DSL PHYs had an unequal data rate, if different ratios of data rates are used a variable number of cells will be taken from each ATM substream to reconstruct the original ATM stream in the multi-pair multiplexing receiver 400 as illustrated in Fig. 8.
[0045] Furthermore, an in addition to the changes in data rate that are possible on the DSL PHYs, ATM cells transported over a DSL PHY can have different end-to- end delay (latency) based on several parameters. This potential latency difference between bonded PHYs places implementation requirements on the multi-pair multiplexer. In particular, the multi-pair multiplexer receiver must be able to reconstruct the ATM stream even if the ATM cells are not being received in the same
order as they where transmitted.
[0046] For example, some of the exemplary reasons for having different delays over different DSL PHYs include, but are not limited, configuration latency which is based on the configuration of the DSL transmission parameters. Specifically, these parameters include the data rate, coding parameters, such as the coding method, codeword size, interleaving parameters, framing parameters, or the like.
[0047] ATM-TC latency is based on cell rate decoupling in the ATM-TC. Specifically, the ATM-TC block in ADSL transceivers performs cell rate decoupling by inserting idle cells according to the ITU Standard 1.432, incorporated herein by reference in its entirety. This means that depending on the ATU timing and the state of the ATU buffers, an ATM cell that is sent over a DSL PHY will experience non- constant end-to-end delay (latency) through the PHY.
[0048] Wire latency is based on differences in the twisted wire pairs. Specifically, the DSL electrical signals can experience different delays based on the difference in length of the wire, the gauge of the wire, the number bridged taps, or the like.
[0049] Design latency is based on differences in the DSL PHY design. Specifically, the latency of the PHY can also depend on the design chosen by the manufacture.
[0050] Thus, as result of the different latencies in the PHYs, it is possible that an ATM cell that was sent over a DSL PHY may be received at the multi-pair multiplexing receiver after an ATM cell that was sent out later on a different DSL PHY.
[0051] Fig. 9 illustrates an example of variable delay based on the embodiment discussed in relation to Fig. 4. Therefore, the exemplary multi-pair multiplexing receiver 500 should be able to accommodate at least these types of variations in delay. An exemplary method for dealing with the issue of delay is to have cell buffers (not shown) in the multi-pair multiplexing receiver 500 that can provide the ability to
compensate for the variations in delay. As example, if there is a cell buffer that can hold several ATM cells on each input ATM substream path, the multi-pair multiplexing receiver 500 can simply wait until, for example, cell number 1 comes in path number one, while path number two will buffer cell number 2 and wait for cell number 1 to be received. This method requires a cell buffer on each ATM substream path at the input of the multi-pair multiplexing receiver 500. The size of the cell buffer can be determined by, for example, the maximum difference in latency between the "bonded" PHYs. As an alternative, the buffer can be based on one large buffer with multiple pointers without effecting the operation of the system.
[0052] Another effective method of reducing the difference in latency between DSL PHYs is mandate that all DSL PHYs are configured with transmission parameters in order to provide the same configuration latency. An exemplary method of accomplishing the same configuration latency is by configuring the exact same data rate, coding parameters, interleaving parameters, etc. on all DSL PHYs. Alternatively, different PHYs can have, for example, different data rates but use the appropriate coding or interleaving parameters to have the same latency on all the bonded PHYs.
[0053] As an example, for Reed Solomon coding and interleaving functions as defined in ADSL standards G.992.1 and G.992.3, incorporated herein by reference in their entirety, the latency due to these functions is defined as:
Latency = N*D/R,
where N is the number of bits in a codeword, D is the interleaver depth in codewords and R is the data in bits per second.
[0054] For example if N=1600 bits, i.e., 200 bytes, D=64 codewords and R=6400000 bps then:
Latency = 1600*64/640000 = 0.016 seconds.
[0055] Therefore if, for example, two PHYs have different data rates, Rl and R2 then, in order to bond these PHYs together and have the same configuration latency set:
N1 *D1/R1 = N2*D2/R2,
where Nl and N2 are the bits in a codeword for each PHY and Dl and D2 are the interleaver depths for each PHY.
[0056] This can also be rewritten as:
N1*D1=(R1/R2)*N2*D2.
Thus, in general, the Nl, Dl, N2 and D2 parameters must be chosen to satisfy the above equations and this can be accomplished in several ways.
[0057] For example, if the configuration latency is specified as 0.016 seconds, and Rl =6400000 bps and R2=l 600000 then, as described in the example above, Nl anss Dl can be configured as Nl=1600 and Dl=64. Therefore:
N2*D2= (R2/Rl)*Dl*Nl=(1600000/6400000)*1600*64=1600*64/4.
Therefore, for example, N2 and D2 can be configured as (N2=1600, D2=16) or (N2=400, D2=64) or (N2=800, D2=32), etc.
[0058] Obviously the same methods can be applied to more than 2 PHYs with different data rates.
[0059] The ATM-TC receiver in ADSL systems is specified to discard ATM cells that are received with an incorrect cyclic redundancy check, e.g., (HEC). This means that if there are bit errors as the result of transmission over the ADSL channel, ATM cells will be discarded by the ATM-TC and not sent to the multi-pair multiplexing
receiver. As a result of this type of error condition, ATM cells may be received out of order in the multi-pair multiplexing receiver.
[0060] Fig. 10 illustrates an exemplary multi-pair multiplexing receiver 500 with a single ATM cell lost due to PHY channel errors using the exemplary embodiment discussed in relation to Fig. 4. In Fig. 10, ATM cell number 5 was discarded by the second DSL PHY 510 due to, for example, a HEC error. Therefore, if the multi-pair multiplexing receiver 500 is not aware of this error, the ATM cells stream can not be reconstructed appropriately.
[0061] The exemplary systems and methods of this invention utilize a multi-pair cell counter to operate in the condition where the ATM cells are discarded by DSL PHY when, for example, HEC errors occur. The multi-pair multiplexing transmitter can embed the multi-pair cell counter in the header of each ATM cell after receiving the ATM cell from the ATM layer. At the receiver, the multi-pair multiplexing receiver reads the multi-pair cell counter and removes it from the header of the ATM cell prior to sending the ATM cell to the ATM layer. The multi-pair cell counter is a value that indicates the position of a particular ATM cell in the ATM cell stream.
[0062] In its simplest form, the multi-pair cell counter can be a modulo L counter that starts at, for example, zero and increments by one for each consecutive ATM cell up to a value L-l. For example, if L equals 256, the value of the multi-pair cell counter could start at zero and increment by one up to a value of 255. After 255, the multi-pair counter could be started at zero again, and so on.
[0063] As previously discussed, the multi-pair cell counter can be embedded in the ATM cell header of all the ATM cells in the ATM stream. Fig. 1 1 illustrates the multi-pair multiplexing transmitter 400 as discussed in relation to the example illustrated in Fig. 4, with L equal to 4 and the multi-pair cell counter specified inside the ATM cell header. At the receiver, the multi-pair cell counter is read by the multi- pair multiplexing receiver and removed from the ATM cell header. The multi-pair multiplexing receiver uses the multi-pair cell counter to properly recombine the ATM cells to reconstruct the ATM stream. Therefore, as in the example above, where a cell
was discarded by the DSL PHY, the multi-pair multiplexing receiver would be able to determine this error and the ATM cell(s) placed in the appropriate order.
[0064] Fig. 12 illustrates an example where the 5th ATM cell in the ATM stream was discarded by the PHY. The 5th ATM cell in the exemplary ATM stream has a multi-pair cell counter number equal to 0 and was sent on the second ATU. The exemplary multi-pair multiplexing receiver 500 can check the multi-pair cell count value of the ATU's ATM cell before inserting the cell back into the ATM stream. In this manner, when the multi-pair multiplexing receiver checks the ATM cell counter from the second ATU and reads a multi-pair cell count 3 instead of zero, the multi- pair multiplexing receiver can determine that the ATM cell with the multi-pair cell counter equal to 0 was discarded by the second ATU PHY. In this case, multi-pair multiplexing receiver will not take a cell from the ATU-2 ATM substream. Instead, the multi-pair multiplexing receiver will move to the next ATU in order to check the multi-pair cell count value, and insert the ATM cell back into the ATM stream if the multi-pair cell count is correct, and continue. Therefore, as a result of using the multi- pair cell counter, the multi-pair multiplexing receiver can properly reconstruct the original ATM cell stream even in the presence of ATM cell lost.
[0065] The exemplary main multi-pair cell parameter is the value of L. The appropriate value of L depends on the number of bonded PHYs (N) and the maximum number (M) of consecutive ATM cells that may be discarded by the PHY. The design constraint on L is that it must be large enough so that the multi-pair multiplexing receiver can still detect cell lost even when the maximum number of consecutive ATM cells are discarded by a PHY. This places the constraint that L>N *M. For example, if there are N=4 bonded PHYs, and the maximum number of consecutive ATM cells that may discarded by the PHY is M=50, then L>200. If, for example L is chosen to be equal to 256, then even when 50 consecutive ATM cells are lost, the multi-pair multiplexing receiver can accurately detect the error event.
[0066] There are several exemplary methods to embedding the multi-pair cell counter into the ATM cell header including, but not limited to, using the GFC field in the UNI ATM header. The GFC field is currently not used and is typically set to zero.
The GFC field is a four bit field therefore the maximum value of L is 16. This could pose an issue when the channel has, for example, impulse noise and the PHY data rate is high resulting in cases where multiple ATM cells are often discarded by the PHY.
[0067] Therefore, as an alternative, bits in the VPI/VCI field can be used. The VPI field occupies 8 bits in the UNI header and identifies the route taken by the ATM cell. The VCI field occupies 16 bits in the UNI header and it identifies the circuit or connection number on the path. In order use the VPI/VCI field for the multi-pair cell counter, the multi-pair multiplexing transmitter overwrites bits in the VPI/VCI field with the multi-pair cell counter value on a cell by cell bases. At the receiver, the multi-pair multiplexing receiver reads the multi-pair cell counter value and resets and overwrites the VPI/VCI back to the original value.
[0068] This method requires the multi-pair multiplexing receiver to have knowledge of the overwritten VPI/VCI bits. As an example, this can be accomplished by communicating the VPI/VCI fields of the ATM stream during initialization/configuration of the DSL connection or during configuration or reconfiguration of the ATM connection. Since the VPI/VCI field has 24 bits, the L value for the multi-pair cell counter can be set to a very large number.
[0069] One exemplary method for embedding the multi-pair cell counter in the VPI/VCI field is to construct a table of all, or a portion of, possible VPI/VCI values that may be transported by the bonded DSL PHYs. This VPI/VCI table can, for example, be stored in the multi-pair multiplexing transmitters and receivers for all PHYs. The table maps a VPI/VCI value to a table index value that is also stored in the multi-pair multiplexing transmitters and receivers for all PHYs. If there are K VPI/VCI values being transported over the bonded DSL PHYs, the VPI/VCI value could be mapped to a number from zero to -l . At the multi-pair multiplexing transmitter, the VPI/VCI value in the ATM header is replaced with the table index value. Since there are limited numbers of VPI/VCI going to a single subscriber, the table index value can utilize only a fraction of the 24 bits available in the VPI/VCI field. Therefore, the multi-pair multiplexing transmitter can use the remaining VPI/VCI bits to transport, for example, the multi-pair cell counter.
[0070] At the receiver, the multi-pair multiplexing receiver is multi-pair cell counter that reconstructs the ATM stream as discussed above. Additionally, the multi-pair multiplexing receiver can read the table index value in the ATM header and write the VPI/VCI value corresponding to the table index value as stored in the VPI VCI table back into the VPI/VCI header field.
[0071] As a simple example, where only one VPI/VCI is being sent over the bonded DSL connection, the VPI/VCI table will have only one value. Therefore, in this case, it is not necessary to insert the table index value at the transmitter. The transmitter may use the bits in the VPI VCI field for the multi-pair cell counter. At the receiver, the multi-pair cell counter is read and used to reconstruct the ATM stream. Since only one VPI/VCI value is being used, the receiver can reset the VPI/VCI field to the appropriate value prior to sending the ATM stream into the ATM layer. This approach can work, for example, with many consumer based employments of a DSL, since in most cases a single VPI/VCI is used.
[0072] As an alternative, consider a four VPI/VCI situation.
Table 1: VPI/VCI Table
[0073] Table 1 contains an exemplary VPI/VCI table with four VPI/VCI addresses. Additionally, for the purpose of this example, the multi-pair cell counter is specified to be an eight bit counter, i.e., a modulo 255 counter.
[0074] Fig. 13 illustrates the format for the standard five bit ATM UNI header. The VPI/VCI values in Table 1 corresponds to the 24 bit VPI/VCI values in the UNI ATM header.
[0075] Fig. 14 illustrates an exemplary format of the ATM header after the multi- pair multiplexing transmitter has replace the VPI/VCI values with the table index
value and then embedded the multi-pair cell counter in the VPI/VCI field. The first two bits the VPI/VCI field are used to transport the table index value (TIV) and the next eight bits are used to transport the multi-pair cell counter. The remaining bits can be reserved and can be used, for example, by the multi-pair multiplexing blocks for other purposes, such as the transportation of messages between the multi-pair multiplexing blocks, or the like.
[0076] At the receiver, the multi-pair multiplexing receiver reads the multi-pair cell counter value from the header in order to properly reconstruct the ATM stream. The multi-pair multiplexing receiver also reads the TIV in the ATM header and writes the VPI/VCI corresponding to the table index value as stored in the VPI/VCI table back into the VPI/VCI header field. As a result, at the output of the multi-pair multiplexing receiver, the ATM header can be completely reconstructed into the standard UNI format comprising the original data contents.
[0077] In this illustrative example, there were four VPI/VCI addresses being used in cells being transported over the bonded ADSL system. However, in many deployments, the VP is determined in the DSLAM, which means that the VPI field is the same for all packets. Therefore, in the case of terminating the VP and the DSLAM, the VP field could, for example, be used in transporting the TIV.
[0078] Fig. 15 illustrates an exemplary method of transporting ATM over DSL. In particular control begins in step SI 00 and continues to step SI 10. In step SI 10 the cell distributions are determined, for example, based on differing data rates between the DSL PHYs, or the like. Next, in step SI 20 the cells from the ATM stream are assigned based on the determined cell distribution to the appropriate ATM TC cell stream. Then, in step SI 30, the cells are transmitted to a receiver. Control then continues to step SI 40.
[0079] In step SI 40, a receiver receives the cells. Next, in step SI 50, the ATM substreams are combined to reconstruct the ATM stream. In particular, in step SI 52, a determination is made whether there is a difference in latency between the DSL lines. If there are differential latency problems, control continues to step SI 54 where
the differential latency is compensated for by, for example, buffering, or the like. Otherwise, control jumps to step SI 56.
[0080] In step S 156, a determination is made whether other errors are present in one or more of the substreams. If other errors, such as dropped cells, channel bit errors, or the like are present, control continues to step SI 58 where the other errors are compensated for. Otherwise, control jumps to step SI 60 where the control sequence ends.
[0081] The above-described ATM over DSL system can be implemented on a telecommunications device, such a modem, a DSL modem, an ADSL modem, a multicarrier transceiver, a VDSL modem, or the like, or on a separate programmed general purpose computer having a communications device. Additionally, the systems and methods of this invention can be implemented on a special purpose computer, a programmed microprocessor or microcontroller and peripheral integrated circuit element(s), an ASIC or other integrated circuit, a digital signal processor, a hard-wired electronic or logic circuit such as discrete element circuit, a programmable logic device such as PLD, PLA, FPGA, PAL, modem, transmitter/receiver, or the like. In general, any device capable of implementing a state machine that is in turn capable of implementing the flowchart illustrated herein can be used to implement the various ATM over DSL methods according to this invention.
[0082] Furthermore, the disclosed methods may be readily implemented in software using object or object-oriented software development environments that provide portable source code that can be used on a variety of computer or workstation platforms. Alternatively, the disclosed ATM over DSL system may be implemented partially or fully in hardware using standard logic circuits or VLSI design. Whether software or hardware is used to implement the systems in accordance with this invention is dependent on the speed and/or efficiency requirements of the system, the particular function, and the particular software or hardware systems or microprocessor or microcomputer systems being utilized. The ATM over DSL systems and methods illustrated herein however can be readily implemented in hardware and/or software using any known or later developed
systems or structures, devices and/or software by those of ordinary skill in the applicable art from the functional description provided herein and with a general basic knowledge of the computer and telecommunications arts.
[0083] Moreover, the disclosed methods may be readily implemented in software executed on programmed general purpose computer, a special purpose computer, a microprocessor, or the like. In these instances, the systems and methods of this invention can be implemented as program embedded on personal computer such as JAVA® or CGI script, as a resource residing on a server or graphics workstation, as a routine embedded in a dedicated ATM over DSL system, or the like. The ATM over DSL system can also be implemented by physically incorporating the system and method into a software and/or hardware system, such as the hardware and software systems of a communications transceiver.
[0084] It is, therefore, apparent that there has been provided, in accordance with the present invention, systems and methods for ATM over DSL. While this invention has been described in conjunction with a number of embodiments, it is evident that many alternatives, modifications and variations would be or are apparent to those of ordinary skill in the applicable arts. Accordingly, it is intended to embrace all such alternatives, modifications, equivalents and variations that are within the spirit and scope of this invention.