WO1998057435A1 - Spectral and power shaping mapper for high data rate signalling - Google Patents

Spectral and power shaping mapper for high data rate signalling Download PDF

Info

Publication number
WO1998057435A1
WO1998057435A1 PCT/US1998/011379 US9811379W WO9857435A1 WO 1998057435 A1 WO1998057435 A1 WO 1998057435A1 US 9811379 W US9811379 W US 9811379W WO 9857435 A1 WO9857435 A1 WO 9857435A1
Authority
WO
WIPO (PCT)
Prior art keywords
mode
bits
subgroup
shaping
magnitude
Prior art date
Application number
PCT/US1998/011379
Other languages
French (fr)
Inventor
Paul Dana Cole
Yuri Goldstein
William Hanna
Original Assignee
General Datacomm, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by General Datacomm, Inc. filed Critical General Datacomm, Inc.
Publication of WO1998057435A1 publication Critical patent/WO1998057435A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4917Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes
    • H04L25/4927Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes using levels matched to the quantisation levels of the channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B14/00Transmission systems not characterised by the medium used for transmission
    • H04B14/02Transmission systems not characterised by the medium used for transmission characterised by the use of pulse modulation
    • H04B14/023Transmission systems not characterised by the medium used for transmission characterised by the use of pulse modulation using pulse amplitude modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/3405Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power
    • H04L27/3411Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power reducing the peak to average power ratio or the mean power of the constellation; Arrangements for increasing the shape gain of a signal set

Definitions

  • the present invention relates to data communications equipment. More particularly, the present invention relates to mapping systems and methods having advantageous applications in high speed modems which are coupled to an analog local loop.
  • the technologies underlying the V.34 Recommendation, and the proposed 56 kbps modem are complex and typically require the use of high-end digital signal processors (DSPs).
  • DSPs digital signal processors
  • One of the complex tasks of the modem is the mapping of digital data into a sequence of digital signals chosen from a constellation which are converted into an analog signal by a D/A converter. Mapping typically includes utilizing a constellation.
  • the preferred constellation is a four-dimensional constellation, whereas in the envisioned 56 kbps modems, the constellation is envisioned as a one dimensional PAM constellation which complies with ⁇ -law (A-law in Europe) requirements.
  • the total constellation consists of 255 signal levels; 127 positive, 127 negative, and zero. Both the positive portion of the constellation and the negative portion of the constellation include eight sectors with sixteen points each (the constellation being shown in Appendix 1 hereto), with zero being a common point for both portions.
  • the minimum distance between points in sector 1 of the constellation is a distance "2". In sector 2, the minimum distance is "4", while in sector 3, the minimum distance is "8". In the eighth sector, the minimum distance is "256".
  • Another object of the invention is to provide a PAM mapper which can map in a plurality of modes and be sufficiently flexible to enable spectral and/or power shaping if desired.
  • a mapper for a PAM encoder which is arranged to function in several modes, including: a first mode such as set forth in parent application SN 08/851,597 having spectral shaping and power shaping and using convolutional encoding, a second mode having power shaping, a third mode having power shaping using convolutional encoding, and a fourth mode having straight-forward mapping (without power or spectral shaping and without convolutional encoding).
  • the mapper in order to be implement all four modes is substantially as set forth in parent application SN 08/851,597 and therefore preferably includes logic means for grouping incoming bits into three subgroups of bits, a constellation matrix memory which stores indications of at least one and preferably a plurality of different multidimensional constellations, calculation means which utilizes a first subgroup of the bits for generating a series of quotients (r k ), a differential encoder for encoding a second subgroup of the bits, a sign bit function block coupled to the differential encoder, a magnitude bit function block which receives a third subgroup of the bits and at least one additional bit, a constellation point selection means (coupled to at least the calculation means, to the magnitude bit function block, and to the constellation matrix memory) for selecting indications of a plurality of series of constellation points from at least one of the multidimensional constellations, and shaping selector means coupled to the constellation point selection means and to the sign bit function block for selecting outputs based on predetermined criteria.
  • a constellation matrix memory which stores
  • the shaping selector is capable of storing information regarding a plurality of series of constellation point indications generated for a plurality (d) of bit groups and incorporates a convolutional encoder state machine which has 2 d paths emanating from each state of the state machine.
  • mode control means is provided, and the sign bit function block, the magnitude bit function block, the grouping logic means, the calculation means, the constellation point selection means, and the shaping selector are all responsive to mode control signals which enable any of the four modes of operation.
  • the sign bit function block in three of the modes (straight-forward mapping, power shaping, and power shaping with convolutional encoding), spectral shaping is effectively disabled, and the sign function block (which is used in the spectral and power shaping with convolutional encoding mode) is arranged to simply pass the sign bits s(t) without processing.
  • the magnitude bit function block in two of the four modes (power shaping, and spectral and power shaping with convolutional encoding), the magnitude bit function block functions as set forth in parent application Serial No. 08/851,597; i.e., it receives a subgroup of bits, appends another bit to the subgroup, uses the resulting assemblage of bits as a first magnitude vector, and generates a second magnitude vector by XORing the assemblage with another predetermined vector.
  • the magnitude function block is used to generate four magnitude vectors instead of two, and the constellation point selector (under mode control) is used to generate four sets of point indications utilizing the four magnitude vectors.
  • the magnitude function block does not append a bit to the received bits (i.e., under mode control, a different number of bits are grouped together by the grouping logic means), and the received bits are simply passed to the constellation point selector without processing for selection of a single set of point indications.
  • the constellation point selector under mode control, the constellation point selector generates different numbers of sets of points depending upon the mode which is enabled. Thus, in the straight-forward mapping mode, a single set of points is generated. In the power shaping using convolutional encoding mode, four sets of points are generated by the constellation point selector. In the other two modes, two sets of points are generated. Similarly, under mode control, the shaping selector undertakes different tasks. In two of the modes (straight-forward mapping, and power shaping), the shaping selector does not undertake convolutional encoding.
  • the shaping selector does not shape at all, but preferably finds the ⁇ -law value associated with the points provided by the constellation point selector (in conjunction with the sign bits); while in the power shaping mode where two sets of points are generated, the shaping selector selects the points with the lowest power.
  • the criteria for selection of points is different.
  • point selection is based on path power, while in the spectral and power shaping using convolutional encoding mode, as discussed in the parent application Serial No.
  • the criteria for selection deal with cumulative sums of the ⁇ -law code levels indicated in the paths, with the series of constellation points from a lowest cost path being selected for a given group of bits.
  • other forms of discrete time filtering can be beneficially utilized.
  • the number of bits initially grouped together is based on the data rate, with many different data rates being enabled through the use of several N-dimensional constellations (N being an integer > 1).
  • N being an integer > 1.
  • the symbols generated are placed in a frame of f symbols.
  • the subgroup of sign bits is drawn, with one sign bit for each symbol.
  • the sign bit subgroup would include six bits.
  • the sign bits are provided to the differential encoder which provides encoded bits to the sign bit function block.
  • the constellation point selection means utilizes the outputs of the magnitude bit function block and the quotients in selecting a plurality of series of constellation points from at least one constellation in the constellation matrix memory.
  • the magnitude bits are preferably used to generate values for a function h k , where k is a slot index taking a value from 1 to f .
  • Indications typically in the form of seven bit words
  • Indications are then preferably provided in a "combinatorial" fashion with the output(s) of the sign bit function block (depending upon the mode) to generate one or more series (depending uon the mode) of octets which are received at the shaping selector.
  • FIG. 1 is a high level block diagram of the PAM modem of the invention.
  • Figure 2 is a block diagram of the mapper of Fig. 1 according to a first embodiment the invention.
  • the modem 10 broadly includes a transmitter 20 and a receiver 30.
  • the transmitter includes an interface 32 to a source of digital data (such as a computer), an encoder 34 which includes a mapper 36, and an interface 38. Details of the receiver side of the modem are well known and are not shown in Figure 1.
  • the mapper 36 for the PAM encoder 34 preferably includes logic means 40 for grouping incoming bits into subgroups of bits, calculation means (arithmetic unit) 45 for generating a series of quotients, a constellation controller 50, a constellation matrix memory 55 which stores indications of constellations, a differential encoder 60, a sign function block 65, a magnitude function block 70, a point selector 75, a shaping selector 80, and a ⁇ -law-value look-up table 85.
  • Each of these elements may implemented in one or more hardware elements or in software.
  • the memory elements including the constellation matrix memory 55, the ⁇ -law-value look-up table 85, and memory (discussed hereinafter) utilized by the shaping selector 80 would be implemented in a single memory element such as a RAM or ROM, while the arithmetic and logic elements, including the constellation controller 50, the grouping logic 40, the arithmetic unit 45, the differential encoder 60, the sign function block 65, the magnitude function block 70, the point selector 75, and the shaping selector 80 would be implemented in a single processor element such as a DSP or microprocessor. As seen in Fig. 2, a mode control block 100 is also provided.
  • the mode control block 100 provides control signals which, depending upon the control signal, causes one or more of the grouping logic means 40, the arithmetic unit 45, the constellation controller 50, the sign function block 65, the magnitude function block 70, the point selector 75, and the shaping selector 80 to function differently.
  • the mode control block 100 may be embodied as a separate logic means responsive to control by an external microprocessor (not shown), as part of a DSP which also includes the arithmetic and logic elements described above and responsive to the external microprocessor, or as part of a microprocessor which also includes the arithmetic and logic elements described above.
  • bit rate at which the modem is to function is determined. This bit rate information is utilized by the constellation controller 50 in conjunction with a mode control signal from mode control block 100 to coordinate the grouping of bits by the grouping logic 40 with the choice of constellations from which indications of points are taken by the point selector 75 (as described in more detail below).
  • the first mode as set forth in parent application SN 08/851,597 is the mode which conducts spectral shaping and power shaping using convolutional encoding.
  • this mode hereinafter referred to as the "first mode"
  • the first subgroup of six bits is provided to the differential encoder 60 for purposes of eliminating the effect of phase hits on the line (channel), and for expediting decoding.
  • the six bit s(t) output is provided to the sign function block 65 which in turn, under mode control, generates two outputs: a first output s0_ which is equal to s(t), and a second output sl_ which is the complement (XOR) of s(t). These outputs are treated as two separate series of one bit outputs which are combined with outputs from the point selector 75 for input to the shaping selector 80.
  • the grouping logic 40 groups a second subgroup of eleven bits and provides them to the magnitude function block 70.
  • a "0" is also provided to the magnitude function block 70.
  • the magnitude function block 70 appends the "0" to the eleven bit input, and generates two magnitude manipulation vector outputs from the resulting twelve bits: a first output e_0 which is the twelve bit assemblage, and a second output e_l which is the XOR of the assemblage with a predetermined twelve bit value (binary vector) such as ⁇ 010101010101 ⁇ , although different magnitude shaping values could be utilized.
  • the last bit of predetermined twelve bit value should be a "1", where the appended bit is a "0"; and vice versa.
  • Both e_0 and e_l are provided to the point selector 75 and used in a manner discussed below.
  • a third subgroup of twenty-five bits is provided to the arithmetic unit 45 which is used to generate a series of quotients (r ) according to techniques discussed in at least one of the parent applications hereto (k being a slot index for the symbol in the frame).
  • r quotients
  • the value represented by the twenty-five bits is divided under mode control by a sequence of divisors (e.g., 18 5 , 18 4 , 18 3 , 18 2 , 18, 1) to provide a series of six quotients (it being appreciated that 225 ⁇ 186).
  • T e six quotients r k of values between zero and seventeen are provided to the point selector 75 which is used to select constellation point indicators.
  • the point selector 75 receives inputs from the magnitude function block 70 and from the arithmetic unit 45.
  • the point selector 75 preferably utilizes an equation which is a function of the inputs in order to select points from a constellation.
  • each N k is chosen to be equal to the divisor base, and h k has a value of zero, one, two or three based on the bits received from the magnitude function block as discussed below.
  • indices of value one through seventy-two are generated by the point selector 75 to access one of the seventy-two positive points of the 144 point 6D constellation stored in the matrix memory 55 (details of the 6D constellation are described in Appendix 3 of the parent application Serial No. 08/807,955).
  • two series of f points each are chosen; one for each of the twelve bit outputs (e_0, and e_l) of the magnitude function block 70.
  • the twelve magnitude bits received by the point selector 75 are used to calculate values h k in the following manner.
  • the twelve bits are grouped into f groups (i.e., six groups of two bits).
  • the values h k are then taken as twice the value of the second bit of the group plus the value of the first bit of the group. Where the bits of a group are both ones, h will equal three. Conversely, where the bits are both zeros, h k will equal zero. Where the first bit is a one and the second bit a zero, h will equal one; and where the first bit is a zero and the second bit a one, h k will equal two. Since, in the first mode, the magnitude function block 70 generates two distinct outputs, it will be appreciated that h k for each output will be different. That is why, as discussed above, two separate series of k points are chosen by the point selector 75 in the first mode.
  • the shaping selector means 80 receives four series of 8-bit values.
  • the four series are generated by the combination of the two series of 7 -bit outputs of the point selector 75 with the two series of one bit outputs of the sign function block 65.
  • the 7-bit outputs generated using the magnitude function block outputs e_0 and e_l are combined with the one bit outputs s0_ and sl_ generated by the sign function block to obtain four series of octets (denoted nOO, nOl, nlO and nil). These four series of octets are provided to the shaping selector means 80.
  • the shaping selector 80 stores the four series of octets for use in its convolutional encoder state machine.
  • the amount of information which needs to be stored depends upon how far forward the encoder looks.
  • the frame size six octets
  • the convolutional encoder state machine makes a determination as to which of the plurality of series of octets to output based on certain predetermined criteria, and updates the state of the state machine accordingly.
  • the criteria for selection deals with cumulative sum filtering of the ⁇ -law or A-law code levels indicated in the paths of the convolutional encoder, with the series of constellation points from a lowest cost path being selected for a given group of bits grouped by the logic means 40.
  • a first set of four frames of octets nOO(l), n ⁇ l(l), nl ⁇ (l) and nl 1(1) are generated as discussed above.
  • a second set of four frames of octets n00(2), n01(2), nl0(2), and nl 1(2) are generated.
  • a third set of four frames of octets are generated and so forth.
  • eight paths are generated as follows:
  • the eight paths for each state are chosen such that the second bit of the second group (2) is equal to the binary sum of the first bits of the first and second groups and so that the second bit of the third group (3) is equal to the binary sum of the first bits of the second and third groups.
  • the costs of the paths emanating from the current state of the convolutional encoder are analyzed.
  • paths 10-80 are analyzed for their respective costs.
  • paths 11-81 are analyzed for their respective costs.
  • the "cost" of a path is found preferably by finding the maximum absolute value of the cumulative sums of that path. With eighteen octets represented in a path, the eighteen cumulative sums for that path are calculated. The first cumulative sum for a path is equal to the previous sum ⁇ (if any) present plus the ⁇ -law-value of the first octet.
  • the ⁇ -law-value which may be positive or negative, is obtained from the octet-to- ⁇ -law-value look-up table 85.
  • the second cumulative sum for that path is equal to the previous sum ⁇ plus the ⁇ -law-values of the first and second octets.
  • the third cumulative sum for that path is equal to the previous sum ⁇ plus the ⁇ -law-values of the first, second, and third octets; and so on.
  • the maximum of the absolute value of the eighteen cumulative sum values is then taken and compared to the maxima of the absolute values of the eighteen values of the other seven paths for that state; with the lowest maximum indicating the lowest cost path.
  • the octets (or associated ⁇ -law-values) from the first group (1) are then utilized as the outputs of the shaping selector 80.
  • the lowest cost path determination effectively shapes the output of the mapper by reducing the lowest frequency components of the signal.
  • the running sum can be viewed as a DC component of the signal.
  • the state is updated by setting the state of the state machine to the value of the first bit of the frame indicator of the selected frame.
  • the state machine would remain in state 1 as the first bit of nl ⁇ (l) is a "1".
  • the state machine would move to state 0 as the first bit of n ⁇ l(l) is a "0".
  • each ⁇ -law-value, or groups of ⁇ -law-values may be weighted by different weights, with the running sums being calculated utilizing the weighted values.
  • the power P of a group of points can be used as a criterion in selecting a set of octets.
  • the cost of a path could be set as a function of the power and the maximum absolute value of the running sums of that path, max(abs(u)).
  • the cost w Z(P) + max(abs(u)), where Z is a preset constant.
  • This power shaping is particularly advantageous with respect to certain constellations associated with certain data rates where transmitted power is a large concern (i.e., where the power of the constellation without power shaping exceeds an allowed predetermined threshold such as -12.0 dBm). It is noted, however, that where it is desirable to increase power, the constant Z may be a negative number.
  • c(t) A 0 ⁇ (t) + A ⁇ (t-l) + A 2 ⁇ (t-2) + ... + A M ⁇ (t-M) + B ⁇ c(t-l) + B 2 c(t-2) + ...
  • Ao through A and Bi through BK are coefficients
  • c(t) are candidate costs
  • is a signed ⁇ -law value of the signal.
  • c(t-2) and c(t-l) are taken as the costs of the fifth and sixth calculated costs from the previously selected path.
  • c(t-l) is taken as the previously calculated cost
  • c(t-2) is taken as the cost of the sixth calculated cost from the previously selected path.
  • the second mode is the power shaping (without convolutional encoding) mode (hereinafter referred to as the "second mode").
  • the second mode a subgroup of six bits are grouped together as sign bits, differentially encoded by the differential encoder 60, and provided to the sign function block 65.
  • the sign function block 65 does not process the sign bits (i.e., spectral shaping is disabled) but provides them, as differentially encoded, for combination with the output(s) of the point selector 75.
  • a second subgroup of eleven bits is provided by the grouping logic block 40 to the magnitude function block 70, which, under mode control, appends a twelfth bit to the eleven bits and generates two twelve bit vectors as described above with reference to the first mode.
  • a third subgroup of twenty-five bits is provided to the arithmetic unit 45 which generates a series of six quotients as described above with reference to the first mode.
  • the twelve bit vectors and the quotients are then used by the point selector 75 to select two sets of seven-bit point indicators as discussed above with reference to the first mode.
  • the two sets of indicators are then combined with the sign bits to provide two sets of six eight- bit values to the shaping selector.
  • the shaping selector 80 calculates the power of both sets of eight-bit values, and chooses the set with the lower (lowest) power for output.
  • the shaping selector 80 does not utilize convolutional encoding, and thus does not store the information for look-ahead purposes.
  • a third mode of encoding utilizes power shaping with convolutional encoding (hereinafter referred to as the "third mode").
  • the same subgrouping of bits as conducted in the first and second modes is conducted by the grouping logic means 40.
  • the six sign bits are differentially encoded by the differential encoder 60 and provided to the sign function block 65.
  • the sign function block 65 does not process the bits, but provides them for combination with the outputs of the point selector 75.
  • a second subgroup of eleven bits are provided by the grouping logic block 40 to the magnitude function block 70, which appends a twelfth bit to the eleven bits.
  • four magnitude vectors are generated by the magnitude function block 70.
  • four magnitude vectors are generated by using the assemblage as a first magnitude vector, and generating three additional magnitude vectors by taking the XOR of the assemblage with the vectors (1,1,1,1,1,0,0,0,0,0,0), (0,0,0,0,0,0,0,1,1,1,1,1), and (0,1,0,1,0,1,0,1,0,1,0,1).
  • the three additional magnitude vectors are generated by taking the XOR of the assemblage with the vectors (1,1,1,1,1,1,0,0,0,0,0), (0,0,0,0,0,0,1,1,1,1,1,1), and (1,1,1,1,1,1,1,1,1,1,1).
  • different vectors could be utilized in generating three additional magnitude vectors.
  • all four magnitude vectors are provided to the point selector 75.
  • a third subgroup of twenty-five bits is provided to the arithmetic unit 45 which generates a series of six quotients.
  • the four twelve bit magnitude vectors and the quotients are then used by the point selector 75 to select four sets of seven-bit point indicators.
  • the four sets of indicators are then combined with the sign bits to provide four sets of six eight- bit values to the shaping selector.
  • the shaping selector 80 stores the incoming sets of eight-bit values and uses them in the convolutional encoder as described above with reference to the first mode.
  • the criteria for selecting output values in the third mode is preferably based solely on the power of the paths, as opposed to limiting the low frequency components of the output signal.
  • the second mode described above is effectively a subset of the third mode in that by setting the convolutional encoder of the third mode to look-ahead "zero", and by using only two of the four magnitude vectors of the third mode, the second mode is obtained. Therefore, it will be appreciated that in an alternative to the second mode, four magnitude vectors may be utilized to generate four sets of values for lowest power analysis by the shaping selector.
  • the fourth mode of encoding according to the invention is the straight-forward mapping mode which neither utilizes power or spectral shaping nor convolutional encoding (hereinafter referred to as the "fourth mode").
  • the fourth mode under mode control, six sign bits are differentially encoded by the differential encoder 60 and provided to the sign function block 65.
  • the sign function block 65 does not process the bits, but provides them for combination with the output of the point selector 75.
  • the grouping logic groups twelve magnitude bits together which are provided to the magnitude function block 70.
  • the magnitude function block 70 does not process these bits but provides the bits to the point selector.
  • the grouping logic groups twenty-four bits together which are provided to the arithmetic unit 45.
  • the arithmetic unit 45 generates a series of six quotients which are provided to the point selector 75.
  • the point selector using the quotients and the twelve bit magnitude vector selects a series of six seven-bit point indictors, which when combined with the sign bits generates a set of six eight- bit values for the shaping selector.
  • the eight-bit vectors are directly passed to output by the shaping selector 75.
  • bits may be grouped together depending upon bit rate and the dimension of the constellation to be utilized. For the specific example of an output rate of 56K, in the fourth mode, rather than grouping forty-two bits together, seven bits may be grouped together at a time. From the seven bits, one bit is used as a sign bit, two are used as magnitude bits, and four are used as a quotient.
  • the fourth mode of mapping will permit higher data rates than the other three modes of mapping, as no coding bits are added in the magnitude function block.
  • maximum data rates obtainable using the fourth mode of mapping may be less than the data rates obtainable using other modes.
  • the entire discussion above has been substantially directed to (although not limited to) the preferred embodiment of a six symbol frame (optimal for robbed bit signaling issues) using a six dimensional constellation.
  • the entire above discussion was substantially directed to (although not limited to) a modem having a nominal data rate of 56 kbps.
  • a modem which provides for a choice of data rates is desirable, and that the modem might have a frame having other than six symbols, or a frame of six symbols comprised of one or more 3D, 2D, and/or ID constellations.
  • the number of incoming bits initially grouped together is related to the data rate and the mode of operation, with many different data rates being enabled through the use of several N- dimensional constellations as defined in the parent applications (N being an integer > 1).
  • the number of incoming bits initially grouped together can be related to the length of the frame. Regardless of how many incoming bits are initially grouped together, from the grouped bits, the subgroup of sign bits is drawn, preferably with one sign bit for each octet which is to be generated from the group of bits.
  • demappers according to the invention use techniques corresponding substantially to the inverse of the mapping techniques described herein.
  • the point selector was described as providing seven-bit constellation point indicators to the shaping selector which utilizes an octet-to- ⁇ -law-value look-up table 85 for its determinations, it will be appreciated that the ⁇ -law value could be stored in the constellation memory or that a seven-bit look-up table could be provided in the point selector for transfer to the shaping selector for its determinations. Also, if desired that mapping of the ⁇ -law values in the look-up table can be changed. It will also be appreciated by those skilled in the art that while a specific method and equation were described for use by the point selector means in making its selection of constellation points, other methods and equations could be utilized. For example, the N k values need not be equal to divisor bases, or equal to one another.
  • h k could be a function of other than two bits, and can take on more possible values if desired.
  • a look-up table may be utilized.
  • specific cost functions were described with respect to the shaping selector means, different cost functions could be utilized to achieve the same and/or different objectives. For example, rather than spectral shaping with a low DC component, high frequency attenuation might be desirable. Also, the cost for a path could be determined in many different manners using different criteria, and rather than utilizing the lowest cost path in choosing a point for transmission, suboptimal criteria could be utilized if desired.
  • the convolutional encoder could be provided with a larger number of states and/or a different number of transitions between states. Changes in the code might be dictated by the generation of more outputs from the magnitude function block, and/or by the grouping of less than f sign bits per frame (with one or more sign bits being generated for processing in the sign function block).
  • the differential encoding must be matched to the convolutional code.
  • the processing of the magnitude and sign bits may be accomplished in other manners.
  • differential encoding is not necessarily required.
  • the appended bit for the magnitude vector in three of the modes need not be appended as the last bit of a vector, but could be inserted into a different location.
  • the appended bit could be generated as a parity bit, provided that the vectors are detectable.
  • more than one bit can be appended to generate the magnitude vector. Therefore, it will be apparent to those skilled in the art that other changes or modifications may be made to the invention as described in the specification without departing from the spirit and scope of the invention as claimed.

Abstract

A spectral and power shaping mapper (36) for high data rate signaling modem functions in a first mode having spectral and power shaping and using convolutional encoding, a second mode having power shaping, a third mode having power shaping using convolutional encoding, and a fourth mode having straightforward mapping. Based on data rates and other criteria, incoming bits are grouped together, with a first subgroup of bits used in the first mode to generate two sign vectors (and in the other modes a single vector), a second subgroup of bits used in conjunction with an appended bit in the first, second and third modes to generate at least two magnitude manipulation vectors, and a third subgroup of bits used in a modulus converter to generate a plurality of quotients. The quotients and magnitude manipulation vector(s) are used to select one, two or four sequences of constellation points from a multidimensional constellation depending on mode. The sequences of selected points are combined with the sign vector(s) to generate, one, two or four sequences of octets for a shaping selector (80). In the first and third modes, the shaping selector (80) employs a convolutional encoder state machine which uses criteria such as lowest cost paths and/or lowest average power in order to select which sequence of octets to output. In the second mode, selection is based on power only. In the fourth mode, the generated octets are output as there is no choice of octets.

Description

SPECTRAL AND POWER SHAPING MAPPER FOR HIGH DATA RATE SIGNALLING
This is a continuation-in-part of U.S. Serial Nos. 08/807,855 filed March 4, 1997, 08/801,066 filed Feb. 14, 1997, 08/838,367 filed April 8, 1997, and 08/851,597 filed May 5, 1997 all of which are hereby incorporated herein by reference in their entireties.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to data communications equipment. More particularly, the present invention relates to mapping systems and methods having advantageous applications in high speed modems which are coupled to an analog local loop.
2. State of the Art
With the ever-increasing importance of telecommunications for the transfer of data as well as voice, there has been a strong effort to increase data transfer rates over the telephone wires. Recently, the ITU-T adopted the V.34 Recommendation (International Telecommunication Union, Telecommunication Standardization Sector Recommendation V.34, Geneva, Switzerland 1994) which is hereby incorporated by reference herein in its entirety. The V.34 standard and subsequent amendments define modem operating speeds of 28.8 kbps up to 33.6 kbps, and the vast majority of modems being sold today adhere to the V.34 Recommendation. However, with the explosion in the use of the Internet, even at the V.34 transfer rates, downloading of large files available on the Internet can take long periods of time. Thus, recently, there has been a thrust to provide additional standards recommendations which will increase data transfer rates even further (note the TIA TR-30.1 PAM Modem ad hoc group and the ITU-T Study Group 16).
Recognizing that further increases in data rates is theoretically limited where the telecommunication network is an analog system (see C.E. Shannon, "A Mathematical Theory of Communication," Bell System Technical Journal. 27:379-423, 623-656 (1948)), there have been various proposals to take advantage of the fact that much of the telecommunication network is now digital. For example, U.S. Patent No. 5,394,437 to Ayanoglu et al., U.S. Patent No. 5,406,583 to Dagdeviren, and U.S. Patent No. 5,528,625 to Ayanoglu et al. (all assigned to AT&T/Lucent and all of which are hereby incorporated by reference herein in their entireties) all discuss techniques which utilize the recognition that the network is mostly digital in order to increase data transmission rates to 56 kbps and higher. Similarly, Kalet et al., "The Capacity of PAM Voiceband Channels." IEEE International Conference on Communications '93. pages 507-511 Geneva, Switzerland (1993) discusses such a system where the transmitting end selects precise analog levels and timing such that the analog to digital conversion which occurs in the central office may be achieved with no quantization error. PCT application number PCT/US95/15924 (Publication WO 96/18261) to Townshend which is hereby incorporated by reference herein in its entirety) discusses similar techniques. All of the disclosures assume the use of PAM (pulse amplitude modulation) digital encoding technology rather than the QAM (quadrature amplitude modulation) currently used in the V.34 Recommendation. The primary difference between the AT&T technology and the Townshend reference is that the AT&T technology suggests exploiting the digital aspect of the telephone network in both "upstream" and "downstream" directions, while Townshend appears to be concerned with the downstream direction only. Thus, systems such as the "x2" technology of US Robotics which are ostensibly based on Townshend envision the use of the V.34 Recommendation technology for upstream communications.
As will be appreciated by those skilled in the art, the technologies underlying the V.34 Recommendation, and the proposed 56 kbps modem are complex and typically require the use of high-end digital signal processors (DSPs). One of the complex tasks of the modem is the mapping of digital data into a sequence of digital signals chosen from a constellation which are converted into an analog signal by a D/A converter. Mapping typically includes utilizing a constellation. In the V.34 Recommendation, the preferred constellation is a four-dimensional constellation, whereas in the envisioned 56 kbps modems, the constellation is envisioned as a one dimensional PAM constellation which complies with μ-law (A-law in Europe) requirements. According to μ-law requirements which are set forth in ITU-T Recommendation G.711 which is hereby incorporated by reference herein in its entirety, the total constellation consists of 255 signal levels; 127 positive, 127 negative, and zero. Both the positive portion of the constellation and the negative portion of the constellation include eight sectors with sixteen points each (the constellation being shown in Appendix 1 hereto), with zero being a common point for both portions. As is well known in the art, the minimum distance between points in sector 1 of the constellation is a distance "2". In sector 2, the minimum distance is "4", while in sector 3, the minimum distance is "8". In the eighth sector, the minimum distance is "256".
Using the full PAM μ-law constellation, theoretically, a bit rate of almost 64 kbps can be transmitted over the analog local loop to the digital network. However, the average power of such a constellation would be about -4 dBm, and the minimum distance between points would be a distance of "2". Such a large average power is undesirable when compared to the present restrictions of an average power of -12 dBm on the network; and such a minimum distance is also undesirable, with minimum distances of at least "4" and preferably "8" being considerably more desirable in reducing errors due to noise. In light of the power restrictions, and minimum distance considerations, the prior art primarily discusses sending data at 56 kbps (i.e., seven bits per symbol at an 8 kHz rate). However, even rates of 56 kbps are rarely obtained in practice due to several factors. One of the factors relates to the fact that the hybrid transformer of a modem in the central office line- card introduces non-linear distortion which occurs primarily in the low frequency bands of the flat spectrum, especially in the range of DC (0 Hz) to 100 Hz. Therefore, it is desirable to suppress the low frequency components in the μ-law output signal; i.e., to shape the spectrum.
SUMMARY OF THE INVENTION
It is therefore an object of the invention to provide a mapper for a high data rate signalling device which has spectral shaping capabilities.
It is another object of the invention to provide a PAM mapper for a high data rate modem which utilizes multidimensional constellations and which includes means for manipulating the magnitude (average power) of a signal generated.
It is an additional object of the invention to provide a PAM mapper which is simple to implement and which does not require large computing and memory resources.
It is a further object of the invention to provide a PAM mapper which has means for spectral shaping and average power manipulation, and which provides signals which are easily decoded.
Another object of the invention is to provide a PAM mapper which can map in a plurality of modes and be sufficiently flexible to enable spectral and/or power shaping if desired.
In accord with the objects of the invention, a mapper for a PAM encoder is provided which is arranged to function in several modes, including: a first mode such as set forth in parent application SN 08/851,597 having spectral shaping and power shaping and using convolutional encoding, a second mode having power shaping, a third mode having power shaping using convolutional encoding, and a fourth mode having straight-forward mapping (without power or spectral shaping and without convolutional encoding). The mapper, in order to be implement all four modes is substantially as set forth in parent application SN 08/851,597 and therefore preferably includes logic means for grouping incoming bits into three subgroups of bits, a constellation matrix memory which stores indications of at least one and preferably a plurality of different multidimensional constellations, calculation means which utilizes a first subgroup of the bits for generating a series of quotients (rk), a differential encoder for encoding a second subgroup of the bits, a sign bit function block coupled to the differential encoder, a magnitude bit function block which receives a third subgroup of the bits and at least one additional bit, a constellation point selection means (coupled to at least the calculation means, to the magnitude bit function block, and to the constellation matrix memory) for selecting indications of a plurality of series of constellation points from at least one of the multidimensional constellations, and shaping selector means coupled to the constellation point selection means and to the sign bit function block for selecting outputs based on predetermined criteria. Preferably, the shaping selector is capable of storing information regarding a plurality of series of constellation point indications generated for a plurality (d) of bit groups and incorporates a convolutional encoder state machine which has 2d paths emanating from each state of the state machine.
According to the invention, mode control means is provided, and the sign bit function block, the magnitude bit function block, the grouping logic means, the calculation means, the constellation point selection means, and the shaping selector are all responsive to mode control signals which enable any of the four modes of operation. With respect to the sign bit function block, in three of the modes (straight-forward mapping, power shaping, and power shaping with convolutional encoding), spectral shaping is effectively disabled, and the sign function block (which is used in the spectral and power shaping with convolutional encoding mode) is arranged to simply pass the sign bits s(t) without processing. With respect to the magnitude bit function block, in two of the four modes (power shaping, and spectral and power shaping with convolutional encoding), the magnitude bit function block functions as set forth in parent application Serial No. 08/851,597; i.e., it receives a subgroup of bits, appends another bit to the subgroup, uses the resulting assemblage of bits as a first magnitude vector, and generates a second magnitude vector by XORing the assemblage with another predetermined vector. In a third of the four modes (power shaping using convolutional encoding), the magnitude function block is used to generate four magnitude vectors instead of two, and the constellation point selector (under mode control) is used to generate four sets of point indications utilizing the four magnitude vectors. In a fourth of the four modes (straight-forward mapping), the magnitude function block does not append a bit to the received bits (i.e., under mode control, a different number of bits are grouped together by the grouping logic means), and the received bits are simply passed to the constellation point selector without processing for selection of a single set of point indications.
As suggested above, under mode control, the constellation point selector generates different numbers of sets of points depending upon the mode which is enabled. Thus, in the straight-forward mapping mode, a single set of points is generated. In the power shaping using convolutional encoding mode, four sets of points are generated by the constellation point selector. In the other two modes, two sets of points are generated. Similarly, under mode control, the shaping selector undertakes different tasks. In two of the modes (straight-forward mapping, and power shaping), the shaping selector does not undertake convolutional encoding. In fact, in the straight-forward mapping mode, the shaping selector does not shape at all, but preferably finds the μ-law value associated with the points provided by the constellation point selector (in conjunction with the sign bits); while in the power shaping mode where two sets of points are generated, the shaping selector selects the points with the lowest power. In the other two modes (power shaping using convolutional encoding, and spectral and power shaping using convolutional encoding), while convolutional encoding is utilized, the criteria for selection of points is different. In the power shaping using convolutional encoding mode, point selection is based on path power, while in the spectral and power shaping using convolutional encoding mode, as discussed in the parent application Serial No. 08/851,597, the criteria for selection deal with cumulative sums of the μ-law code levels indicated in the paths, with the series of constellation points from a lowest cost path being selected for a given group of bits. In lieu of the low frequency filtering provided by cumulative sums, other forms of discrete time filtering can be beneficially utilized.
According to a preferred aspect of the invention, and as discussed in the parent applications hereto, the number of bits initially grouped together is based on the data rate, with many different data rates being enabled through the use of several N-dimensional constellations (N being an integer > 1). With the use of multi-dimensional constellations, the symbols generated are placed in a frame of f symbols. In the preferred embodiment of the invention, the frame is six symbols long (f = 6) in order to enable mapping techniques in the presence of robbed bit signaling. Regardless, from the grouped bits, the subgroup of sign bits is drawn, with one sign bit for each symbol. Thus, for a frame of six symbols, the sign bit subgroup would include six bits. The sign bits are provided to the differential encoder which provides encoded bits to the sign bit function block.
In accord with yet another preferred aspect of the invention, the constellation point selection means utilizes the outputs of the magnitude bit function block and the quotients in selecting a plurality of series of constellation points from at least one constellation in the constellation matrix memory. The magnitude bits are preferably used to generate values for a function hk, where k is a slot index taking a value from 1 to f . A function of h and the quotients ife are used as a selection index pk according to pk = Nk(h ) + rk + 1, where Nk are integers chosen based on data rates and constellation sizes. Indications (typically in the form of seven bit words) of one or more series of selected points (depending upon the mode) are then preferably provided in a "combinatorial" fashion with the output(s) of the sign bit function block (depending upon the mode) to generate one or more series (depending uon the mode) of octets which are received at the shaping selector.
Additional objects and advantages of the invention will become apparent to those skilled in the art upon reference to the detailed description taken in conjunction with the provided figures.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a high level block diagram of the PAM modem of the invention.
Figure 2 is a block diagram of the mapper of Fig. 1 according to a first embodiment the invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
Turning to Figure 1, a high level block diagram of a PAM modem 10 is seen. The modem 10 broadly includes a transmitter 20 and a receiver 30. The transmitter includes an interface 32 to a source of digital data (such as a computer), an encoder 34 which includes a mapper 36, and an interface 38. Details of the receiver side of the modem are well known and are not shown in Figure 1.
According to the preferred embodiment of the invention, and as seen in Fig. 2, the mapper 36 for the PAM encoder 34 preferably includes logic means 40 for grouping incoming bits into subgroups of bits, calculation means (arithmetic unit) 45 for generating a series of quotients, a constellation controller 50, a constellation matrix memory 55 which stores indications of constellations, a differential encoder 60, a sign function block 65, a magnitude function block 70, a point selector 75, a shaping selector 80, and a μ-law-value look-up table 85. Each of these elements may implemented in one or more hardware elements or in software. Typically, the memory elements including the constellation matrix memory 55, the μ-law-value look-up table 85, and memory (discussed hereinafter) utilized by the shaping selector 80 would be implemented in a single memory element such as a RAM or ROM, while the arithmetic and logic elements, including the constellation controller 50, the grouping logic 40, the arithmetic unit 45, the differential encoder 60, the sign function block 65, the magnitude function block 70, the point selector 75, and the shaping selector 80 would be implemented in a single processor element such as a DSP or microprocessor. As seen in Fig. 2, a mode control block 100 is also provided. The mode control block 100 provides control signals which, depending upon the control signal, causes one or more of the grouping logic means 40, the arithmetic unit 45, the constellation controller 50, the sign function block 65, the magnitude function block 70, the point selector 75, and the shaping selector 80 to function differently. The mode control block 100 may be embodied as a separate logic means responsive to control by an external microprocessor (not shown), as part of a DSP which also includes the arithmetic and logic elements described above and responsive to the external microprocessor, or as part of a microprocessor which also includes the arithmetic and logic elements described above.
As discussed in the parent applications hereto, depending upon several factors, including the condition of the physical lines, pad attenuation, the presence of robbed bit signaling, etc., a bit rate at which the modem is to function is determined. This bit rate information is utilized by the constellation controller 50 in conjunction with a mode control signal from mode control block 100 to coordinate the grouping of bits by the grouping logic 40 with the choice of constellations from which indications of points are taken by the point selector 75 (as described in more detail below). Thus, by way of example (and not by way of limitation) and for purposes of explanation of Figure 2, if an outgoing data rate of 56K is desired, according to the invention, seven data bits per symbol are to be transferred, and for a frame of six symbols, forty-two (6x7) bits are grouped together by the grouping logic 40. Of the forty-two bits, a first subgroup of six bits relating to sign information (one sign bit per symbol) is forwarded to the differential encoder 60 for processing as discussed below; a second subgroup of eleven or twelve bits (depending upon mode) is forwarded to the magnitude function block 70 for manipulation as discussed below; and a third subgroup of twenty-five or twenty-four bits (depending upon mode) is forwarded to the arithmetic unit 45 for processing as also discussed below.
Within the example of the 56K outgoing data rate, the invention will be described with reference to each of the four modes. The first mode, as set forth in parent application SN 08/851,597 is the mode which conducts spectral shaping and power shaping using convolutional encoding. In this mode (hereinafter referred to as the "first mode"), the first subgroup of six bits is provided to the differential encoder 60 for purposes of eliminating the effect of phase hits on the line (channel), and for expediting decoding. The differential encoding is conducted according to s(t) = s(t-l) + x(t) as is well known in the art, where t is a time variable, x(t) represents the six bit subgroup, where s(t) is a sign vector output, and where the sign "+" indicates a binary sum (XOR). The six bit s(t) output is provided to the sign function block 65 which in turn, under mode control, generates two outputs: a first output s0_ which is equal to s(t), and a second output sl_ which is the complement (XOR) of s(t). These outputs are treated as two separate series of one bit outputs which are combined with outputs from the point selector 75 for input to the shaping selector 80. In the first mode, under control of mode control 100, the grouping logic 40 groups a second subgroup of eleven bits and provides them to the magnitude function block 70. A "0" is also provided to the magnitude function block 70. Under mode control, in the first mode, the magnitude function block 70 appends the "0" to the eleven bit input, and generates two magnitude manipulation vector outputs from the resulting twelve bits: a first output e_0 which is the twelve bit assemblage, and a second output e_l which is the XOR of the assemblage with a predetermined twelve bit value (binary vector) such as {010101010101 }, although different magnitude shaping values could be utilized. As described in the parent application, for decoding purposes, the last bit of predetermined twelve bit value should be a "1", where the appended bit is a "0"; and vice versa. Both e_0 and e_l are provided to the point selector 75 and used in a manner discussed below.
A third subgroup of twenty-five bits is provided to the arithmetic unit 45 which is used to generate a series of quotients (r ) according to techniques discussed in at least one of the parent applications hereto (k being a slot index for the symbol in the frame). Thus, for example, where six indications of constellation points are to be chosen, the value represented by the twenty-five bits is divided under mode control by a sequence of divisors (e.g., 185, 184, 183, 182, 18, 1) to provide a series of six quotients (it being appreciated that 225 < 186). T e six quotients rk of values between zero and seventeen are provided to the point selector 75 which is used to select constellation point indicators. It should be appreciated that the manner of choosing the divisors and determining the quotients is taught in more detail in the previously incorporated parent applications, and may depend upon the presence of robbed bit signaling, pad attenuation, different data rates, frame size, etc. It should also be appreciated that instead of using a modulus converter to generate values rk, other techniques known in the art such as lookup tables, shell mapping, etc. could be utilized.
As previously mentioned, the point selector 75 receives inputs from the magnitude function block 70 and from the arithmetic unit 45. The point selector 75 preferably utilizes an equation which is a function of the inputs in order to select points from a constellation. For example, in the preferred embodiment of the invention a value for index p is calculated according to pk = N hk + r + 1 where Nk is an integer and where hk is a function of the bits received from the arithmetic unit 45 as discussed below. In one embodiment of the invention, each Nk is chosen to be equal to the divisor base, and hk has a value of zero, one, two or three based on the bits received from the magnitude function block as discussed below. Thus, indices of value one through seventy-two are generated by the point selector 75 to access one of the seventy-two positive points of the 144 point 6D constellation stored in the matrix memory 55 (details of the 6D constellation are described in Appendix 3 of the parent application Serial No. 08/807,955). For example, where pk = 37, the thirty-seventh "1" value in the eight-by- sixteen matrix memory for that 6D constellation would be indicated, and the seven-bit location (1010001) corresponding to that indicated point (fifth row; first point) would be output. In this manner, under control of the mode control block 100, in the first mode, two series of f points each are chosen; one for each of the twelve bit outputs (e_0, and e_l) of the magnitude function block 70.
In the preferred embodiment of the invention, for a particular output of the magnitude function block 70, the twelve magnitude bits received by the point selector 75 are used to calculate values hk in the following manner. First, the twelve bits are grouped into f groups (i.e., six groups of two bits). The values hk are then taken as twice the value of the second bit of the group plus the value of the first bit of the group. Where the bits of a group are both ones, h will equal three. Conversely, where the bits are both zeros, hk will equal zero. Where the first bit is a one and the second bit a zero, h will equal one; and where the first bit is a zero and the second bit a one, hk will equal two. Since, in the first mode, the magnitude function block 70 generates two distinct outputs, it will be appreciated that hk for each output will be different. That is why, as discussed above, two separate series of k points are chosen by the point selector 75 in the first mode.
In the first mode, while two separate series of 7-bit values are generated by the point selector 75, the shaping selector means 80 receives four series of 8-bit values. The four series are generated by the combination of the two series of 7 -bit outputs of the point selector 75 with the two series of one bit outputs of the sign function block 65. In other words, the 7-bit outputs generated using the magnitude function block outputs e_0 and e_l are combined with the one bit outputs s0_ and sl_ generated by the sign function block to obtain four series of octets (denoted nOO, nOl, nlO and nil). These four series of octets are provided to the shaping selector means 80.
In the first mode, the shaping selector 80 stores the four series of octets for use in its convolutional encoder state machine. The amount of information which needs to be stored depends upon how far forward the encoder looks. In the presently preferred embodiment, the encoder looks forward two frames; i.e., three frames of four sets of six octets (where the frame size = six octets) are present in the shaping selector 80 at any point in time. However, it will be appreciated that fewer or more frames may be stored in the shaping selector for use by the convolutional encoder.
The convolutional encoder state machine makes a determination as to which of the plurality of series of octets to output based on certain predetermined criteria, and updates the state of the state machine accordingly. According to one embodiment of the invention, in the first mode, the criteria for selection deals with cumulative sum filtering of the μ-law or A-law code levels indicated in the paths of the convolutional encoder, with the series of constellation points from a lowest cost path being selected for a given group of bits grouped by the logic means 40. In particular, at time t=l, a first set of four frames of octets nOO(l), nθl(l), nlθ(l) and nl 1(1) are generated as discussed above. At time t=2, a second set of four frames of octets n00(2), n01(2), nl0(2), and nl 1(2) are generated. At time t=3, a third set of four frames of octets are generated and so forth. In the presently preferred embodiment of the invention, in the first mode, for each state of the two-state state machine, eight paths are generated as follows:
if state = 0 if state = 1 path 10 nOO(l), n00(2), n00(3) path 11 nlθ(l), nl0(2), n01(3) path 20 n00(l), nll(2), n01(3) path 21 nlθ(l), n01(2), n00(3) path 30 nl l(l), n01(2), n00(3) path 31 nθl(l), nll(2), n01(3) path 40 nl l(l), nl0(2), n01(3) path 41 nθl(l), n00(2), n00(3) path 50 n00(l), n00(2), nll(3) path 51 nlθ(l), nl0(2), nl0(3) path 60 n00(l), nll(2), nl0(3) path 61 nlθ(l), n01(2), nl l(3) path 70 nl l(l), n01(2), nll(3) path 71 nθl(l), nl l(2), nl0(3) path 80 nll(l), nl0(2), nl0(3) path 81 nθl(l), n00(2), nll(3)
In the presently preferred embodiment of the invention, the eight paths for each state are chosen such that the second bit of the second group (2) is equal to the binary sum of the first bits of the first and second groups and so that the second bit of the third group (3) is equal to the binary sum of the first bits of the second and third groups.
As suggested above, in determining a six-byte output frame at time 1, the costs of the paths emanating from the current state of the convolutional encoder are analyzed. Thus, if the convolutional encoder is in state 0, paths 10-80 are analyzed for their respective costs. Similarly, if the convolutional encoder is in state 1, paths 11-81 are analyzed for their respective costs. The "cost" of a path is found preferably by finding the maximum absolute value of the cumulative sums of that path. With eighteen octets represented in a path, the eighteen cumulative sums for that path are calculated. The first cumulative sum for a path is equal to the previous sum ∑ (if any) present plus the μ-law-value of the first octet. The μ-law-value, which may be positive or negative, is obtained from the octet-to-μ-law-value look-up table 85. The second cumulative sum for that path is equal to the previous sum ∑ plus the μ-law-values of the first and second octets. The third cumulative sum for that path is equal to the previous sum ∑ plus the μ-law-values of the first, second, and third octets; and so on. The maximum of the absolute value of the eighteen cumulative sum values is then taken and compared to the maxima of the absolute values of the eighteen values of the other seven paths for that state; with the lowest maximum indicating the lowest cost path. The octets (or associated μ-law-values) from the first group (1) are then utilized as the outputs of the shaping selector 80.
It should be appreciated by those skilled in the art that the lowest cost path determination effectively shapes the output of the mapper by reducing the lowest frequency components of the signal. In other words, the running sum can be viewed as a DC component of the signal. By keeping choosing a set of octets which keep the running sum close to zero, the DC component of the signal is kept small.
Once the outputs for a first group (t=l) are determined, the state of the state machine is then updated, the sum ∑ is updated based on the previous sum ∑ plus the μ-law-values of the first through sixth octets, and the four sets of values for t=l are deleted with the four sets of values for t=4 provided for another determination of minimum cost (in order to generate outputs for t=2). According to the preferred embodiment of the invention, the state is updated by setting the state of the state machine to the value of the first bit of the frame indicator of the selected frame. For example, if the state machine was in state 1, and path 61 was selected as the lowest cost path, the state machine would remain in state 1 as the first bit of nlθ(l) is a "1". On the other hand, if in state 1 path 31 were to be selected as the lowest cost path, the state machine would move to state 0 as the first bit of nθl(l) is a "0".
If desired, in the first mode, rather than calculating the cost of each path by taking the maximum absolute value of the sums for that path, additional criteria may be applied. For example, each μ-law-value, or groups of μ-law-values may be weighted by different weights, with the running sums being calculated utilizing the weighted values. In addition, or in lieu of weighted values, the power P of a group of points can be used as a criterion in selecting a set of octets. Thus, the cost of a path could be set as a function of the power and the maximum absolute value of the running sums of that path, max(abs(u)). In other words, the cost w = Z(P) + max(abs(u)), where Z is a preset constant. This power shaping is particularly advantageous with respect to certain constellations associated with certain data rates where transmitted power is a large concern (i.e., where the power of the constellation without power shaping exceeds an allowed predetermined threshold such as -12.0 dBm). It is noted, however, that where it is desirable to increase power, the constant Z may be a negative number.
According to a presently preferred embodiment of the invention, instead of using cumulative sum filtering, general linear filtering is utilized to generate the costs of the different paths of the convolutional encoder. Thus, with look-ahead equal to two in the convolutional encoder (and a frame size of six symbols), eighteen candidate costs for each path are calculated according to c(t) = A0μ(t) + A^(t-l) + A2μ(t-2) + ... + AMμ(t-M) + Bιc(t-l) + B2c(t-2) + ... + Bκc(t-K), where Ao through A and Bi through BK are coefficients, c(t) are candidate costs, and μ is a signed μ-law value of the signal. By manipulating the coefficients Ao through AM and Bi through B the spectrum of the outputs can be advantageously shaped to reduce low frequency components. Thus, according to a presently preferred embodiment, Ao = 1, Ai through AM are set to zero, and B3 through BR are set to zero so that the cost c(t) = μ(t) + Bιc(t- 1) + B2C(t-2). In the presently preferred embodiment, when the time index t relates to the first symbol in an eighteen symbol path, c(t-2) and c(t-l) are taken as the costs of the fifth and sixth calculated costs from the previously selected path. Similarly, when the time index t relates to the second symbol in an eighteen symbol path, c(t-l) is taken as the previously calculated cost, and c(t-2) is taken as the cost of the sixth calculated cost from the previously selected path.
It should be appreciated that the running sum filter is a special case of a general linear filter, where Ao = Bi = 1, and coefficients A through AM and B2 through BK are set to zero. It should also be appreciated by those skilled in the art that other cost functions could be utilized, whether using the general linear filter form with different coefficients, or of different form altogether. Regardless, of how derived, the costs are used in selecting the path from which the output point is taken.
Having described the first mode (spectral and power shaping with convolutional encoding) in detail, the other three modes of the invention should be easily understood. The second mode is the power shaping (without convolutional encoding) mode (hereinafter referred to as the "second mode"). In the second mode, a subgroup of six bits are grouped together as sign bits, differentially encoded by the differential encoder 60, and provided to the sign function block 65. Under mode control, the sign function block 65 does not process the sign bits (i.e., spectral shaping is disabled) but provides them, as differentially encoded, for combination with the output(s) of the point selector 75. A second subgroup of eleven bits is provided by the grouping logic block 40 to the magnitude function block 70, which, under mode control, appends a twelfth bit to the eleven bits and generates two twelve bit vectors as described above with reference to the first mode. A third subgroup of twenty-five bits is provided to the arithmetic unit 45 which generates a series of six quotients as described above with reference to the first mode. The twelve bit vectors and the quotients are then used by the point selector 75 to select two sets of seven-bit point indicators as discussed above with reference to the first mode. The two sets of indicators are then combined with the sign bits to provide two sets of six eight- bit values to the shaping selector. In the second mode, under control of the mode control block 100, and utilizing the μ-law table 85, the shaping selector 80 calculates the power of both sets of eight-bit values, and chooses the set with the lower (lowest) power for output. In the second mode, the shaping selector 80 does not utilize convolutional encoding, and thus does not store the information for look-ahead purposes.
According to the invention, a third mode of encoding utilizes power shaping with convolutional encoding (hereinafter referred to as the "third mode"). In the third mode, the same subgrouping of bits as conducted in the first and second modes is conducted by the grouping logic means 40. As with the second mode, the six sign bits are differentially encoded by the differential encoder 60 and provided to the sign function block 65. Under mode control, the sign function block 65 does not process the bits, but provides them for combination with the outputs of the point selector 75. Similarly, a second subgroup of eleven bits are provided by the grouping logic block 40 to the magnitude function block 70, which appends a twelfth bit to the eleven bits. However, rather than generating two twelve bit vectors as described above with reference to the first and second modes, in the third mode, under mode control, four magnitude vectors are generated by the magnitude function block 70. In particular, according to a preferred embodiment of the third mode, four magnitude vectors are generated by using the assemblage as a first magnitude vector, and generating three additional magnitude vectors by taking the XOR of the assemblage with the vectors (1,1,1,1,1,1,0,0,0,0,0,0), (0,0,0,0,0,0,1,1,1,1,1,1), and (0,1,0,1,0,1,0,1,0,1,0,1). Alternatively, according to another embodiment of the third mode, the three additional magnitude vectors are generated by taking the XOR of the assemblage with the vectors (1,1,1,1,1,1,0,0,0,0,0,0), (0,0,0,0,0,0,1,1,1,1,1,1), and (1,1,1,1,1,1,1,1,1,1,1,1). Of course, different vectors could be utilized in generating three additional magnitude vectors. Regardless, all four magnitude vectors are provided to the point selector 75. As with the first and second modes, in the third mode, a third subgroup of twenty-five bits is provided to the arithmetic unit 45 which generates a series of six quotients. Under mode control, the four twelve bit magnitude vectors and the quotients are then used by the point selector 75 to select four sets of seven-bit point indicators. The four sets of indicators are then combined with the sign bits to provide four sets of six eight- bit values to the shaping selector. In the third mode, under control of the mode control block 100, the shaping selector 80 stores the incoming sets of eight-bit values and uses them in the convolutional encoder as described above with reference to the first mode. The criteria for selecting output values in the third mode, however, is preferably based solely on the power of the paths, as opposed to limiting the low frequency components of the output signal.
It should be appreciated by those skilled in the art that the second mode described above is effectively a subset of the third mode in that by setting the convolutional encoder of the third mode to look-ahead "zero", and by using only two of the four magnitude vectors of the third mode, the second mode is obtained. Therefore, it will be appreciated that in an alternative to the second mode, four magnitude vectors may be utilized to generate four sets of values for lowest power analysis by the shaping selector.
The fourth mode of encoding according to the invention is the straight-forward mapping mode which neither utilizes power or spectral shaping nor convolutional encoding (hereinafter referred to as the "fourth mode"). In the fourth mode, under mode control, six sign bits are differentially encoded by the differential encoder 60 and provided to the sign function block 65. Under mode control, the sign function block 65 does not process the bits, but provides them for combination with the output of the point selector 75. In addition, in the fourth mode, under mode control, the grouping logic groups twelve magnitude bits together which are provided to the magnitude function block 70. In the fourth mode, under mode control, the magnitude function block 70 does not process these bits but provides the bits to the point selector. Further, in the fourth mode, under mode control, the grouping logic groups twenty-four bits together which are provided to the arithmetic unit 45. Under mode control, the arithmetic unit 45 generates a series of six quotients which are provided to the point selector 75. The point selector, using the quotients and the twelve bit magnitude vector selects a series of six seven-bit point indictors, which when combined with the sign bits generates a set of six eight- bit values for the shaping selector. Under mode control, the eight-bit vectors are directly passed to output by the shaping selector 75.
It should be appreciated that in the fourth mode, rather than generating a frame of six points at a time, different numbers of bits may be grouped together depending upon bit rate and the dimension of the constellation to be utilized. For the specific example of an output rate of 56K, in the fourth mode, rather than grouping forty-two bits together, seven bits may be grouped together at a time. From the seven bits, one bit is used as a sign bit, two are used as magnitude bits, and four are used as a quotient.
It should also be appreciated that under certain specific circumstances, the fourth mode of mapping will permit higher data rates than the other three modes of mapping, as no coding bits are added in the magnitude function block. On the other hand, in many other circumstances, because of power considerations and/or introduction of low frequency distortion in the channel, maximum data rates obtainable using the fourth mode of mapping may be less than the data rates obtainable using other modes.
The entire discussion above has been substantially directed to (although not limited to) the preferred embodiment of a six symbol frame (optimal for robbed bit signaling issues) using a six dimensional constellation. In addition, the entire above discussion was substantially directed to (although not limited to) a modem having a nominal data rate of 56 kbps. However, it will be appreciated by those skilled in the art that a modem which provides for a choice of data rates is desirable, and that the modem might have a frame having other than six symbols, or a frame of six symbols comprised of one or more 3D, 2D, and/or ID constellations. Thus, according to a preferred aspect of the invention, and as discussed in the parent applications hereto, the number of incoming bits initially grouped together is related to the data rate and the mode of operation, with many different data rates being enabled through the use of several N- dimensional constellations as defined in the parent applications (N being an integer > 1). In addition, the number of incoming bits initially grouped together can be related to the length of the frame. Regardless of how many incoming bits are initially grouped together, from the grouped bits, the subgroup of sign bits is drawn, preferably with one sign bit for each octet which is to be generated from the group of bits. Likewise, from the grouped bits, another subgroup of magnitude manipulation bits is drawn; and while the preferred embodiment in three of the four modes utilized twice the number of sign bits minus one for the magnitude manipulation bits, it will be appreciated that different numbers of magnitude manipulation bits can be subgrouped together. In fact, these bits need not be distributed evenly per slot for use in the point selector.
Those skilled in the art will appreciate that demappers according to the invention use techniques corresponding substantially to the inverse of the mapping techniques described herein.
There have been described and illustrated herein apparatus and methods for the mapping of data in a high data rate modem. While particular embodiments of the invention have been described, it is not intended that the invention be limited exactly thereto, as it is intended that the invention be as broad in scope as the art will permit. Thus, while the invention has been described with respect to certain hardware, it will be appreciated that various functions can be carried out in different hardware and/or software. Indeed, the invention has application to both analog and digital transport types of modems. In addition, while particular code (μ-law) has been described, it will be appreciated that code such as A-law can be stored in memory. Further, while the point selector was described as providing seven-bit constellation point indicators to the shaping selector which utilizes an octet-to-μ-law-value look-up table 85 for its determinations, it will be appreciated that the μ-law value could be stored in the constellation memory or that a seven-bit look-up table could be provided in the point selector for transfer to the shaping selector for its determinations. Also, if desired that mapping of the μ-law values in the look-up table can be changed. It will also be appreciated by those skilled in the art that while a specific method and equation were described for use by the point selector means in making its selection of constellation points, other methods and equations could be utilized. For example, the Nk values need not be equal to divisor bases, or equal to one another. Likewise, different manners of calculating hk can be utilized, and hk could be a function of other than two bits, and can take on more possible values if desired. Moreover, rather than solving an equation for an index value Pk, a look-up table may be utilized. Similarly, while specific cost functions were described with respect to the shaping selector means, different cost functions could be utilized to achieve the same and/or different objectives. For example, rather than spectral shaping with a low DC component, high frequency attenuation might be desirable. Also, the cost for a path could be determined in many different manners using different criteria, and rather than utilizing the lowest cost path in choosing a point for transmission, suboptimal criteria could be utilized if desired. Further, details of the convolutional encoder might be changed. For example, the convolutional encoder could be provided with a larger number of states and/or a different number of transitions between states. Changes in the code might be dictated by the generation of more outputs from the magnitude function block, and/or by the grouping of less than f sign bits per frame (with one or more sign bits being generated for processing in the sign function block). In addition, when a rotationally invariant convolutional code is required, as in the preferred embodiment of the invention, the differential encoding must be matched to the convolutional code.
Further yet, it will be appreciated that the processing of the magnitude and sign bits may be accomplished in other manners. For example, differential encoding is not necessarily required. Also, the appended bit for the magnitude vector in three of the modes need not be appended as the last bit of a vector, but could be inserted into a different location. Moreover, the appended bit could be generated as a parity bit, provided that the vectors are detectable. Also, more than one bit can be appended to generate the magnitude vector. Therefore, it will be apparent to those skilled in the art that other changes or modifications may be made to the invention as described in the specification without departing from the spirit and scope of the invention as claimed.

Claims

We claim:
1. A PAM mapper, comprising: a) memory means for storing indications of at least one PAM constellation; and b) code generation means coupled to said memory means, said code generation means adapted to function in a first spectral and power shaping mode and in a second power shaping mode without spectral shaping, said code generation means including
(i) grouping logic means for taking a group of incoming bits, and in both said first and second modes, for dividing said group of incoming bits into a first subgroup of bits, a second subgroup of bits, and a third subgroup of bits,
(ii) means for receiving said first subgroup of bits, and for generating therefrom in said first mode two sign manipulation vectors, and in said second mode a single sign vector,
(iii) means for receiving said second subgroup of bits and for generating therefrom in said first and second modes at least two magnitude manipulation vectors,
(iv) means for receiving said third subgroup of bits and generating at least one integer value therefrom,
(v) point selector means for receiving said at least two magnitude manipulation vectors and said at least one integer value, and for selecting at least two sequences of at least one indication of a constellation point each from said at least one PAM constellation, and
(vi) a shaping selector means including a convolutional encoder, said shaping selector means for receiving said at least two sequences and for receiving in said first mode said two sign manipulation vectors and in said second mode said single sign vector, said shaping selector means for selecting a convolutionally encoded output in said first mode based on said at least two sequences and said two sign manipulation vectors, and in said second mode based on said at least two sequences and said single sign vector.
2. A PAM mapper according to claim 1, wherein: said means for receiving said second subgroup of bits generates a first number of magnitude vectors in said first mode and a second number of magnitude vectors different than said first number in said second mode.
3. A PAM mapper according to claim 2, wherein: said second number of magnitude vectors is four magnitude vectors.
4. A PAM mapper according to claim 3, wherein: said means for receiving said second subgroup of bits comprises magnitude manipulation means for appending a bit of predetermined value to said second subgroup of bits to generate an assemblage, for taking said assemblage as a first magnitude vector, and for generating three additional magnitude vectors by XORing said assemblage with three additional vectors.
5. A PAM mapper according to claim 4, wherein: said three additional vectors comprise a first vector having a first number of ones followed by the same number of zeros, a second vector having said first number of zeros followed by said same number of ones, and a third vector either having the same number of alternating ones and zeros or having all ones.
6. A PAM mapper according to claim 1, wherein: in said first mode said convolutional encoder receives at least four combinations of said at least two sequences and said two sign manipulation vectors, and in said second mode said convolutional encoder receives at least two combinations of said at least two sequences and said sign vector.
7. A PAM mapper according to claim 1, wherein: said means for receiving said first subgroup of bits comprises a differential encoder and sign manipulation means for manipulating said first subgroup of bits in said first mode to generate a first sign vector, wherein a second sign vector is taken from an output of said differential encoder.
8. A PAM mapper according to claim 1, wherein: said code generation means is adapted to function in a third straight mapping mode without power or spectral shaping, wherein in said third mode said means for receiving said first subgroup of bits generates a single sign vector, said means for receiving said second subgroup of bits provides said second group of bits as a single magnitude vector, said point selector means selects a single sequence of at least one indication of a constellation point from said at least one PAM constellation, and said shaping selector means uses said indication of a constellation point and said single sign vector for generating an output.
9. A PAM mapper according to claim 8, wherein: said code generation means is adapted to function in a fourth power shaping mode without spectral shaping, wherein in said fourth mode said means for receiving said first subgroup of bits generates a single sign vector, said means for receiving said second subgroup of bits generates therefrom at least two magnitude manipulation vectors, said point selector means selects at least two sequences of at least one indication of a constellation point each from said at least one PAM constellation, and said shaping selector means calculates power associated with said at least two sequences and selects a point from said at least two sequences based on power calculations.
10. A PAM mapper according to claim 1, wherein: said code generation means is adapted to function in a third power shaping mode without spectral shaping, wherein in said third mode said means for receiving said first subgroup of bits generates a single sign vector, said means for receiving said second subgroup of bits generates therefrom at least two magnitude manipulation vectors, said point selector means selects at least two sequences of at least one indication of a constellation point each from said at least one PAM constellation, and said shaping selector means calculates power associated with said at least two sequences and selects a point from said at least two sequences based on power calculations.
11. A PAM mapper according to claim 1, wherein: said shaping selector means selects a convolutionally encoded output based on at least one specified criterion.
12. A PAM mapper according to claim 11, wherein: in said first mode said convolutional encoder implements a general linear filter and said at least one specified criterion is a cost function, and in said second mode said specified criterion is an indication of the power of the paths in said convolutional encoder.
13. A PAM mapper according to claim 11, wherein: said shaping selector means further comprises an octet-to-╬╝-law-value look-up table.
14. A PAM mapper, comprising: a) memory means for storing indications of at least one PAM constellation; and b) code generation means coupled to said memory means, said code generation means adapted to function in a first spectral and power shaping mode and in a second straight mapping mode without power or spectral shaping, said code generation means including (i) grouping logic means for taking a group of incoming bits, and in both said first and second modes, for dividing said group of incoming bits into a first subgroup of bits, a second subgroup of bits, and a third subgroup of bits,
(ii) means for receiving said first subgroup of bits, and for generating therefrom in said first mode two sign manipulation vectors, and in said second mode for using said first subgroup of bits as a single sign vector,
(iii) means for receiving said second subgroup of bits and for generating therefrom in said first mode at least two magnitude manipulation vectors, wherein in said second mode said second subgroup of bits are taken as a single magnitude vector,
(iv) means for receiving said third subgroup of bits and generating at least one integer value therefrom,
(v) point selector means for receiving in said first mode at least two magnitude manipulation vectors and said at least one integer value, and for selecting at least two sequences of at least one indication of a constellation point each from said at least one PAM constellation, and for receiving in said second mode said single magnitude vector and said at least one integer value and for selecting a single sequence of at least one indication of a constellation point from said at least one PAM constellation,
(vi) a shaping selector means including a convolutional encoder, said shaping selector means for receiving in said first mode said at least two sequences and said two sign manipulation vectors and for selecting in said first mode a convolutionally encoded output based on said at least two sequences and said two sign manipulation vectors, said shaping selector means for receiving in said second mode said single sequence and for using said single sequence as outputs.
15. A PAM mapper according to claim 14, wherein: in said first mode said convolutional encoder implements a general linear filter.
16. A PAM mapper, comprising: a) memory means for storing indications of at least one PAM constellation; and b) code generation means coupled to said memory means, said code generation means adapted to function in a first power shaping mode and in a second straight mapping mode, said code generation means including
(i) grouping logic means for taking a group of incoming bits, and in both said first and second modes, for dividing said group of incoming bits into a first subgroup of bits, a second subgroup of bits, and a third subgroup of bits,
(ii) means for receiving said first subgroup of bits, and for generating therefrom in said a single sign vector, (iii) means for receiving said second subgroup of bits and for generating therefrom in said first mode at least two magnitude manipulation vectors, and in said second mode, a single magnitude vector,
(iv) means for receiving said third subgroup of bits and generating at least one integer value therefrom,
(v) point selector means for receiving in said first mode said at least two magnitude manipulation vectors and said at least one integer value, and for selecting at least two sequences of at least one indication of a constellation point each from said at least one PAM constellation, and for receiving in said second mode said magnitude vector and said at least one integer value and for selecting a single sequence of at least one indication of a constellation point from said at least one PAM constellation,
(vi) a shaping selector means including a convolutional encoder, said shaping selector means for receiving in said first mode said at least two sequences and said single sign vector, said shaping selector means for selecting a convolutionally encoded output in said first mode based on said at least two sequences and said single sign vector, said shaping selector means for receiving in said second mode said single sequence and for using said single sequence as outputs.
17. A PAM mapper according to claim 16, wherein: said at least two magnitude vectors comprises four magnitude vectors.
18. A PAM mapper according to claim 16, wherein: said means for receiving said second subgroup of bits comprises magnitude manipulation means for appending a bit of predetermined value to said second subgroup of bits in said first mode to generate an assemblage, for taking said assemblage as a first magnitude vector, and for generating three additional magnitude vectors by XORing said assemblage with three additional vectors.
19. A PAM mapper according to claim 18, wherein: said three additional vectors comprise a first vector having a first number of ones followed by the same number of zeros, a second vector having said first number of zeros followed by said same number of ones, and a third vector either having the same number of alternating ones and zeros or having all ones.
PCT/US1998/011379 1997-06-10 1998-06-03 Spectral and power shaping mapper for high data rate signalling WO1998057435A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/872,630 US5838724A (en) 1997-02-14 1997-06-10 Spectral and power shaping mapper for high data rate signalling
US08/872,630 1997-06-10

Publications (1)

Publication Number Publication Date
WO1998057435A1 true WO1998057435A1 (en) 1998-12-17

Family

ID=25360002

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/011379 WO1998057435A1 (en) 1997-06-10 1998-06-03 Spectral and power shaping mapper for high data rate signalling

Country Status (2)

Country Link
US (1) US5838724A (en)
WO (1) WO1998057435A1 (en)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6198776B1 (en) * 1996-11-13 2001-03-06 Motorola Inc. Device and method for precoding data signals for PCM transmission
US5995548A (en) * 1996-11-15 1999-11-30 3Com Corporation Signaling method using multiple modulus shell mapping
US6259742B1 (en) * 1996-12-04 2001-07-10 Conexant Systems, Inc. Methods and apparatus for optimizing shell mapping techniques using an approximated power cost function
US6023493A (en) * 1998-01-20 2000-02-08 Conexant Systems, Inc. Method and apparatus for synchronizing a data communication system to a periodic digital impairment
US6034991A (en) * 1998-01-26 2000-03-07 Conexant Systems, Inc. Method and apparatus for implementing enhanced multiple modulus conversion techniques in a signal point mapping context
US6065030A (en) * 1998-03-30 2000-05-16 Conexant Systems, Inc. Method and apparatus for implementing short-word division techniques in a multiple modulus conversion context
US6721279B1 (en) 1999-02-02 2004-04-13 Pctel, Inc. Method and apparatus for adaptive PCM level estimation and constellation training
US6553518B1 (en) 1999-03-08 2003-04-22 International Business Machines Corporation Severe error detectors, methods and computer program products that use constellation specific error event thresholds to detect severe error events during demodulation of a signal comprising symbols from a plurality of symbol constellations
US6970501B1 (en) * 1999-05-17 2005-11-29 Paradyne Corporation Method and apparatus for automatic selection and operation of a subscriber line spectrum class technology
US6661847B1 (en) 1999-05-20 2003-12-09 International Business Machines Corporation Systems methods and computer program products for generating and optimizing signal constellations
US6594232B1 (en) 1999-06-02 2003-07-15 Marconi Communications, Inc. Transmitter-based path protection switching in a ring network
US6721363B1 (en) 1999-06-24 2004-04-13 Intel Corporation Receiver CODEC super set constellation generator
US6721357B1 (en) 1999-06-24 2004-04-13 Intel Corporation Constellation generation and re-evaluation
US6724814B1 (en) 1999-06-24 2004-04-20 Intel Corporation Pad and CODEC detection
US6301296B1 (en) 1999-06-24 2001-10-09 Cirrus Logic, Inc. Digital impairment learning sequence
US7339996B2 (en) * 1999-06-24 2008-03-04 Intel Corporation Receiver codec super set constellation generator
US6724781B1 (en) 1999-08-23 2004-04-20 Marconi Communications, Inc. System and method for packet transport in a ring network
US6823017B1 (en) 1999-10-29 2004-11-23 International Business Machines Corporation Systems, methods and computer program products for filtering glitches from measured values in a sequence of code points
US6792004B1 (en) 1999-10-29 2004-09-14 International Business Machines Corporation Systems, methods and computer program products for averaging learned levels in the presence of robbed-bit signaling based on proximity
US6823004B1 (en) 1999-10-29 2004-11-23 International Business Machines Corporation Methods, systems and computer program products for monitoring performance of a modem during a connection
US6505222B1 (en) 1999-10-29 2003-01-07 International Business Machines Corporation Systems methods and computer program products for controlling undesirable bias in an equalizer
US6611563B1 (en) 1999-10-29 2003-08-26 International Business Machines Corporation Systems, methods and computer program products for data mode refinement of modem constellation points
US6650657B1 (en) 1999-10-29 2003-11-18 International Business Machines Corporation Systems, methods and computer program products for identifying digital impairments in modem signals
US6765955B1 (en) 1999-10-29 2004-07-20 International Business Machines Corporation Methods, systems and computer program products establishing a communication configuration for a modem connection to compensate for echo noise
US6662322B1 (en) 1999-10-29 2003-12-09 International Business Machines Corporation Systems, methods, and computer program products for controlling the error rate in a communication device by adjusting the distance between signal constellation points
US6826157B1 (en) 1999-10-29 2004-11-30 International Business Machines Corporation Systems, methods, and computer program products for controlling data rate reductions in a communication device by using a plurality of filters to detect short-term bursts of errors and long-term sustainable errors
US6754258B1 (en) 1999-10-29 2004-06-22 International Business Machines Corporation Systems, methods and computer program products for averaging learned levels in the presence of digital impairments based on patterns
US6816545B1 (en) 1999-10-29 2004-11-09 International Business Machines Corporation Systems, methods and computer program products for identifying digital impairments in modems based on clusters and/or skips in pulse code modulation signal levels
US6792040B1 (en) 1999-10-29 2004-09-14 International Business Machines Corporation Modems having a dual power mode capability and methods of operating same
US8331490B2 (en) * 2001-10-22 2012-12-11 Panasonic Corporation Methods and apparatus for conditioning communications signals based on detection of high-frequency events in polar domain
US7054385B2 (en) * 2001-10-22 2006-05-30 Tropian, Inc. Reduction of average-to-minimum power ratio in communications signals
US20070211829A1 (en) * 2001-10-22 2007-09-13 Matsushita Electric Industrial Co., Ltd. Method and apparatus for pulse optimization for non-linear filtering
US20040157548A1 (en) * 2003-02-06 2004-08-12 Eyer Mark Kenneth Home network interface legacy device adapter

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5436930A (en) * 1993-06-14 1995-07-25 At&T Corp. Simultaneous analog and digital communications with a selection of different signal point constellations based on signal energy
US5696794A (en) * 1996-04-04 1997-12-09 Motorola, Inc. Method and apparatus for conditioning digitally modulated signals using channel symbol adjustment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5394437A (en) * 1992-10-20 1995-02-28 At&T Corp. High-speed modem synchronized to a remote CODEC
US5406583A (en) * 1993-06-21 1995-04-11 At&T Corp. Modem with received signals and transmitted signals comprising signal sets
NZ277630A (en) * 1993-12-09 1997-10-24 Reckitt & Colman Inc Composition and method for sewage treatment using fungal and bacterial enzymes
US5528625A (en) * 1994-01-03 1996-06-18 At&T Corp. High speed quantization-level-sampling modem with equalization arrangement

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5436930A (en) * 1993-06-14 1995-07-25 At&T Corp. Simultaneous analog and digital communications with a selection of different signal point constellations based on signal energy
US5696794A (en) * 1996-04-04 1997-12-09 Motorola, Inc. Method and apparatus for conditioning digitally modulated signals using channel symbol adjustment

Also Published As

Publication number Publication date
US5838724A (en) 1998-11-17

Similar Documents

Publication Publication Date Title
US5838724A (en) Spectral and power shaping mapper for high data rate signalling
US5825816A (en) Spectral and power shaping mapper for high data rate signalling
US5862184A (en) Mapper for high data rate transmission through channels subject to robbed bit signalling
US6115415A (en) Mapper for high data rate signalling
WO1998038752A9 (en) Mapper for high data rate signalling
US5862179A (en) Mapper for high data rate signalling
US4660214A (en) QANI Trellis-coded signal structure
US6084915A (en) Signaling method having mixed-base shell map indices
US5825823A (en) PCM channel diagnosis
US6084883A (en) Efficient data transmission over digital telephone networks using multiple modulus conversion
CA2167746C (en) Multilevel coding for fractional bits
US4939555A (en) Trellis coding arrangement
US5280503A (en) Data communication system with data rate throttling
JPH04233347A (en) Method and apparatus for generating signal
US6463103B1 (en) Frame-based sign inversion method and system for spectral shaping for pulse-coded-modulation modems
US5343500A (en) Non-linear encoder and decoder for information transmission through non-linear channels
US6487244B1 (en) System and method for transmitting special marker symbol
US4894844A (en) Signal constellations
JP3527508B2 (en) Apparatus and method for utilizing zero padding constellation switching using frame mapping
JP2654321B2 (en) Trellis coding method and apparatus
US6201836B1 (en) Method and apparatus for combining a Trellis coding scheme with a pre-coding scheme for data signals
EP0880838A1 (en) Method of communicating according to a trellis code chosen from a fixed set of baseband signal points
EP0287586B1 (en) Data transmission system and method for use therein
US6542551B1 (en) Translation table and constellation design for a PCM modem subjected to alternating robbed bit signaling
US5867529A (en) Shaping filter for high data rate signalling

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: JP

Ref document number: 1999502796

Format of ref document f/p: F

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA