The invention relates to Digital Subscriber Line technology. In particular, embodiments of the invention relate to an apparatus and method for reducing electromagnetic coupling from a power line communication (PLC) medium to a digital subscriber line (DSL) communication medium.
We consider the case where the following statements are both true:
The physical medium for DSL is typically voice-grade telephone cable or data-grade cable such as Cat5. The physical medium for PLC is typically the electric power wiring of the premise.
Although DSL and PLC signals nominally travel on separate physical media that are not intentionally coupled, the media nonetheless are coupled electromagnetically to some extent. Field testing by the inventor and independent parties confirms what stands to reason: that the media couple to an extent determined by physical factors that differ from premise to premise and from location to location within the premise.
If DSL and PLC had disjoint spectra, then parasitic coupling between them might be inconsequential. However, the spectra of DSL and PLC are not disjoint. They overlap at 2 MHz and above. Testing confirms what stands to reason: that parasitic coupling is sufficient at some premises, at some locations, to degrade performance significantly.
We address the case of PLC parasitically coupling into DSL. This case is of more practical concern than the reverse case because of the following:
It stands to reason, and testing confirms, that:
It stands to reason that the transmissions of PLC could couple strongly enough into the DSL to cause disturbances such as retraining and uncorrectable bit errors. Retraining of the DSL is not guaranteed to be effective. It is not guaranteed to adapt DSL to PLC successfully, because PLC transmissions are sporadic, and PLC transmissions may enter a lull while the retraining is performed. Subsequent PLC transmissions might cause retraining again. Even if successful, retraining to accommodate PLC might yield an unacceptably low DSL bit rate.
Tests performed by independent parties show that coupling from PLC into DSL can reduce the quality of service of DSL to below the minimum level needed to provide acceptable performance for the intended application, such as IPTV. Parasitic coupling of PLC into DSL is a phenomenon of practical, and commercial consequence.
Embodiments of the invention are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings in which like references indicate similar elements. It should be noted that references to “an” or “one” embodiment in this disclosure are not necessarily to the same embodiment, and such references mean “at least one.”
Embodiments of the invention disclosed herein mitigate the phenomenon of PLC coupling into DSL. Embodiments of the invention customize the transmit Power Spectral Density (PSD) of each PLC node so as to reduce each PLC node's influence on DSL to a level that allows DSL to meet specified performance criteria.
Customizing a PLC node's PSD involves shaping it downward. If a PLC node's transmit PSD is shaped downward, then that node's egress PHY rates to its peer PLC nodes may decrease as a side effect. We can predict the decrease by examining the PLC node's present bit loadings to its peer nodes, estimating the decreases in per-tone signal-to-noise ratio (SNR) at the peers' receivers that would result from the PSD change, and then estimating the reduced bit loadings, and hence the reduced PHY rates.
If any of the predicted egress PHY rates, or any of the actual, resulting egress PHY rates, is less than the system can tolerate, then we can lower the DSL performance target and compute a new, less-stringent PSD for that node. In uncommon cases where we can't achieve both acceptable DSL performance and acceptable PLC performance, we can prescribe a relocation of the PLC node.
One feature of an embodiment disclosed here is that it yields a distinct transmit PSD for each PLC node on the premise. By contrast, a less sophisticated technique might apply a common, “one-size-fits-all”, DSL-friendly PSD to all PLC nodes that are to coexist with DSL. A common PSD would be overly conservative, making overall performance of PLC in the premise be significantly less than it could be and perhaps insufficient for the application.
According to one embodiment of the invention, and with reference to
The embodiment again transmits a data signal over the PLC medium at 215, but this time at a second average power level, from the same PLC transmitter. The second average power level is different than the first average power level. In one embodiment, the data signal is transmitted at an average power level that is substantially greater than the combined power output of all other data signals concurrently transmitted by PLC transmitters in the plurality of PLC transmitters. In one embodiment, just as described above when transmitting the first data signal at an average power level, this is also accomplished by transmitting the data signal at an average power level while all other PLC transmitters in the plurality of PLC nodes are not transmitting a data signal. In one embodiment, the second average power level is a minimum average power level at which the PLC transmitter transmits the data signal, for example, an average power level of zero.
At 220, the embodiment measures the noise, for example, the embodiment measures SNR, associated with a second signal received at the DSL receiver coupled to the DSL communication medium caused at least in part by the data signal transmission over the PLC medium at the second average power level. In another embodiment, the noise may be measured according to DSL quiet-line noise (QLN).
Given the first and second noise measurements, the embodiment calculates at 225 the difference between the two measurements, and at 230, changes the transmit power spectral density (PSD) for the data signal transmitted by the PLC transmitter over the PLC medium, based on the calculated difference between the first noise and the second noise measurements. In this way, the changed transmit PSD for the data signal transmitted by the PLC transmitter over the PLC medium reduces the power of the signal electromagnetically coupled from the PLC medium to the DSL medium caused by the data signal transmission from the PLC transmitter over the PLC medium. In one embodiment, changing the transmit power spectral density (PSD) for the data signal transmitted by the PLC transmitter involves adjusting a vector that specifies a nominal transmit power for the data signal.
In order to shape a PLC node's transmit PSD, an embodiment of the invention adjusts the “amplitude map”, defined here as a vector that specifies the nominal PLC transmit power at each PLC tone or each of several groups of adjacent tones transmitted by the PLC node. Typical PLC protocols and chipsets have a parameter that can be made to fit our definition of “amplitude map”. Additional notes about the amplitude map:
Computing a more-DSL-friendly transmit PSD for a particular PLC node is founded on measuring the coupling from that PLC node to the DSL receiver. One embodiment of the invention measures coupling indirectly by collecting and processing DSL signal noise measurements, for example, Signal-to-Noise Ration (SNR) measurements, under various distinct PLC-transmission cases. References to SNR or measurement thereof hereinafter shall be understood to include, more generally, signal noise, or any measure of signal noise. Notes about the DSL SNR:
It is shown in the Analysis, Part 1 section below that two DSL SNR measurements, performed while a PLC node is transmitting solo at two distinct power levels, are sufficient to compute a new, DSL-friendly PSD for that PLC node. For now, we call the power levels Pz and Pa, where Pz is less than Pa. We retrieve the corresponding SNR readings, SNRz and SNRa, directly or indirectly from the DSL receiver.
According to one embodiment, the PLC node transmits “artificial traffic” at average power levels Pz and Pa, rather than, say, waiting for the PLC node to transmit “natural traffic”.
We have mentioned “the DSL receiver”, but in fact there are two DSL receivers in the system: One in the customer-premises equipment (CPE) and one in the DSLAM in the central office or field cabinet. The CPE measures downstream SNR, and the DSLAM measures upstream SNR. In practice, only the weak, downstream signal is affected by coupled PLC signal; the upstream signal is unaffected. Nonetheless, in one embodiment, the downstream and upstream SNR need not be segregated. Furthermore, the embodiment does not require knowledge of which DSL tones are upstream and which are downstream.
To maximize accuracy of the SNR measurements, we observe the following principles while collecting the SNR data:
We can realize Pz and Pa—that is, regulate transmitter output power of a PLC node to Pz and Pa—by the following means, whose effects combine multiplicatively:
In one embodiment, we regulate transmit power during SNR measurements solely by regulating the transmit duty cycle.
The equations in this section derive a formula for modifying the amplitude map of a PLC node based on two per-tone DSL SNR measurements performed with that PLC node transmitting at two distinct power levels while all other PLC nodes are nominally silent. Notes concerning these equations:
We define the following vector, which is the difference between two DSL SNR measurements made with a PLC node transmitting solo at power levels Pz and Pa:
D
za≡SNRz−SNRa (1)
Dza is the decrease in DSL SNR that occurs when the PLC node transitions from transmitting at the lesser power, Pz, to transmitting at the greater power, Pa. Nominally—that is, in the absence of imperfections in the SNR measurements—Dza is positive or zero.
We define the following additional vectors:
These powers are as seen by the DSL receiver. It will be shown that their ratios are important, but not their absolute values.
We note that SNRz, SNRa, and Dza are in the dB domain and that H, S, and B are in the linear domain. We introduce the following notation to bridge the two domains:
dB domain←linear domain (2)
We assume that PLC signal appears as additive noise to each DSL tone. We express the two SNRs literally, as ratios of signal power to total noise power.
We take the difference of the two SNRs as in Equation (1). We note that subtraction in the dB domain corresponds to division in the linear domain.
We substitute Equation (1) into Equation (6):
We define HX to be the coupled power that would result if the PLC node were transmitting at 100% duty cycle under its current amplitude map. Each PLC node has a distinct HX, which depends upon:
We define τ to be the fraction of HX that is coupled, given the actual duty cycle and amplitude map. We substitute τ and HX into Equation (7) and rearrange:
We define αX:
Because each PLC node has a distinct HX, each node has a distinct αX. We substitute αX into Equation (9), and we solve for αX:
We compute αX of a PLC node using Equation (13) with SNR measurements made under τ that are convenient to realize, τz and τa. Using αX, we can estimate the difference in SNR that would result for any other pair of τ. The pair of τ of most interest is τa=100%, τz=0%. 100% represents the conservative worst case, where the PLC node is transmitting continuously under its present amplitude map. 0% yields the best case, where there is no PLC transmission. We substitute this pair of duty cycles into Equation (11), and we define DX to be the resulting value of Dza.
Simplifying Equation (14), we obtain formulae predicting the worst-case decrease in DSL SNR that could be caused by the PLC node:
D
X←αX+1 (15)
D
X=10 log10(αX+1) (16)
Each PLC node obviously has a distinct DX since each node has a distinct αX.
Substituting Equation (13) into Equation (16), we obtain a formula for DX in terms of measured quantities:
If we judge that DX, the worst-case decrease in DSL SNR causable by the PLC node, would yield unacceptable DSL performance, then we adjust the PLC node's amplitude map to give the PLC node a new α—call it αY—to yield a new, acceptable D—call it DY.
The relation between DY and the corresponding αY is obviously the same as for DX and αX in Equation (15). The relationship is as follows:
D
Y←αY+1 (18)
We convert the LHS's of Equations (18) and (15) from the dB domain to the linear domain, then rearrange:
We seek a formula for adjusting a PLC node's amplitude map to change the node's a from αX to αY. We know intuitively that the appropriate adjustment is a scaling, so we seek an expression that involves the ratio of the new amplitude map to the old amplitude map. Using the definition of α, we note the following:
The RHS is of Equation (24) a special quantity. It is the amount by which the PLC node's coupled power, and hence its amplitude map, is scaled. This is the scale factor we seek. We define this scale factor as β:
We construct some useful formulae for β:
If we wish to change the PLC transmitter's worst-case impact on DSL SNR from DX to DY, we must scale its amplitude map by β.
We can calculate β using the formula in Equation (28), for example. The inputs to this formula are DY and αX:
Notes on the formula for 0 in Equation (27):
Another embodiment of the invention measures PLC-to-DSL coupling by collecting and processing DSL quiet-line noise (QLN) measurements under various distinct PLC-transmission cases.
QLN is measured only while the DSL is training, so obtaining an up-to-date QLN measurement generally requires forcing the DSL to retrain. Retraining has the side effect of breaking the DSL connection for a significant amount of time. Despite this side effect, there may be circumstances where QLN is better to use than SNR.
QLN and any similar measurements of noise can be used almost directly in place of SNR, provided they are used in pairs. It turns out that the difference in two SNR measurements is identical to the negative of the difference of two QLN measurements made under identical conditions. That is:
D
za≡SNRz−SNRa=−(QLNz−QLNa) (29)
D
za=QLNa−QLNz (30)
This can easily be proven. We express the two QLNs literally.
QLNz←Hz+B (31)
QLNa←Ha+B (32)
We take the difference of the two QLNs as in Equation (29). We note that subtraction in the dB domain corresponds to division in the linear domain, and that negation in the dB domain corresponds to reciprocation in the linear domain.
Since the right sides of Equations (34) and (6) are identical, their left sides are equal, and Equation (29) is true.
PLC and DSL employ multi-tone modulation, but PLC tones are of different spacing than DSL tones. The tone spacing for the HomePlug AV (“HPAV”) PLC protocol, for example, is approximately 24.4 kHz, but for DSL it is typically 4.3125 kHz. One HPAV tone spectrally spans a run of multiple DSL tones. Therefore, coupled power from one HPAV tone can degrade the SNRs of several DSL tones.
Measured DSL SNR is in the DSL-tone domain. On the other hand, the PLC amplitude map is in the PLC-tone domain. Therefore, somewhere between measuring DSL SNR and applying a new amplitude map, we must perform a conversion from the DSL-tone domain to the PLC-tone domain.
In one embodiment of the invention the conversion is performed “just in time”, in the β vector. From β, which is in the DSL-tone domain, this embodiment derives a new vector, βP, which is in the PLC-tone domain. For the typical case, where the DSL-tone spacing is less than the PLC-tone spacing, this embodiment keeps arithmetic in the finer-spaced, DSL-tone domain until the last step and thereby maximizes accuracy.
A method is needed for mapping the elements of β to the elements of βP. It stands to reason that each element of βP should be computed as some weighting of some run of elements of β. Many mapping and weighting methods are possible. One embodiment uses the mapping and weighting methods described below.
Below, in the C language, is a mapping method according to one embodiment. Functions are from the standard “math.h” library.
#define HZ_PER_I_PLC ((double) 1000000.0/40.96)
#define HZ_PER_I_DSL ((double)4312.5)
int i_dsl_min;
int i_dsl_max;
int i_plc;
double spill_plc;
i_dsl_min=ceil (((HZ_PER_I_PLC/HZ_PER_I_DSL)*(i_plc−(0.5+spill_plc)))−0.5);
i_dsl_max=floor(((HZ_PER_I_PLC/HZ_PER_I_DSL)*(i_plc+(0.5+spill_plc)))+0.5);
The run of DSL tones of indices i_dsl_min through i_dsl_max is mapped to the PLC tone with index i_plc. This run of DSL tones is every DSL tone whose nominal spectrum overlaps, to any extent whatever, the nominal spectrum of the PLC tone and the spill_plc tones to its immediate left and right. Here, a tone's spectrum is assumed to be centered at the tone's nominal frequency and to be as wide as the tone spacing.
Below is a weighting method according to one embodiment:
βP[i_plc]=min(β[i_dsl_min], . . . ,β[i_dsl_max])
βP is defined to be the minimum of all β in the run of DSL tones. The DSL tone most affected by the PLC tone determines the new scaling for that PLC tone. This weighting method is nonlinear.
The formulae in the Analysis, Part 1 section above are for the case where one PLC node is transmitting while all other PLC nodes are silent. For reasons given in a subsequent section, that case is not always realizable. Multiple PLC transmitters may necessarily be active concurrently during some SNR measurements. It will be shown in this section that determining αX, and then β, for each PLC transmitter simply requires solving a system of equations.
We consider the case where the number of transmitters active concurrently is two, which is sufficient for the case where the PLC protocol is HomePlug AV and the chipset is the market leader.
First, we recall the basic SNR-difference equation for a solo transmitter:
Now, we consider two transmitters, numbered 1 and 2, and three SNR measurements at three transmit cases, named z, a, and b. We recall that each PLC transmitter has its own αX. We extend the formula above, and the result is the following pair of equations:
We see that three SNR measurements, and suitably chosen, τ matrix, yield two independent equations of the two unknowns, αX1 and αX2. These equations are nonlinear in αXn. The τ matrix has one row per transmit case and one column per PLC node:
By induction, we conclude that N+1 SNR measurements, and suitably chosen (N+1)×N τ matrix, would yield N independent equations of the N unknowns, αX1 through αXN, and we would know by inspection how to write these equations.
We now consider the special case where the “z” measurement is made with zero duty cycle on all PLC transmitters. In this case, all τzn are zero. We drop the first row from the τ matrix:
Equations (36) and (37) lose their denominators and become linear as a result. We drop the z's from the subscripts.
D
a←τa1αX1+τa2αX2+1 (40)
D
b←τb1αX1+τb2αX2+1 (41)
We transform the LHSs from the dB domain to the linear domain and rearrange:
We introduce shorthand αa and αb:
We arrive at our system of equations:
τa1αX1+τa2αX2=αa (46)
τb1αX1+τb2αX2=αb (47)
Three SNR measurements, and suitably chosen τ matrix, yield two independent linear equations of the two unknowns, αX1 and αX2. By induction, we conclude that N+1 SNR measurements, and suitably chosen τ matrix, would yield a linear system of N independent equations of the N unknowns, αX1 through αXN.
By using standard algebra, we can solve Equations (46) and (47) for αX1 and αX2 in closed form:
Finally, we consider the special case where PLC Node 1 is capable of transmitting solo and is made to transmit solo during measurement “a”, whereas Node 2 must transmit concurrently with Node 1 and does so during measurement “b”. In this case, τa2=0 and Equations (48) and (49) reduce to the following:
αX2 can optionally be expressed in terms of αX1:
For all cases detailed in this section, once we determine αXn, we can easily apply Equation (26) to determine βn=αY/αXn for each of two or more PLC nodes that are transmitting concurrently.
With reference to
The Client software may run on some processor that is a node on the in-premise local area network 120. The processor may be, for example, the host processor of the premise's DSL gateway 115. The Client performs the following functions when appropriate:
The Server is a computing resource typically off-premises that may be shared by a plurality of clients. The Server performs the following functions when appropriate:
The Server-side software may be integrated into a comprehensive network-management suite.
PLC transmissions at one premise 130 can potentially affect DSL at a neighboring premise (not shown in
There are three basic methods by which the Client 105 can cause PLC nodes 135, 140 and 145 to measure transmit for PLC-to-DSL coupling (depicted at 150):
It is not sufficient merely to cause a PLC node to transmit. The PLC node needs to transmit at a known, approximately constant transmit power relative to the full power level prescribed by its amplitude map. As mentioned earlier, we prefer to do that by controlling the transmit duty cycle. We control duty cycle by (a) generating artificial traffic at a controlled bit rate and (b) controlling the modulation rate employed for the artificial traffic. The units of the modulation rate are bits per symbol.
Using the lowest available modulation rate minimizes the Client's burden in generating artificial traffic, because minimizing modulation rate maximizes the transmit duty cycle attained for a given bit rate of artificial traffic. We can force use of a low modulation rate by crafting the artificial traffic's frame headers such that the artificial traffic will naturally and unconditionally be sent at that low modulation rate. Management frames, broadcast frames, and frames to unknown destinations, for example, are typically sent at a low, constant modulation rate.
The Client can generate artificial traffic by sending a particular well-crafted frame repeatedly on a regulated interval, T. But however the Client generates the traffic, the Client must know with reasonable accuracy the transmit duty cycles that will result from that traffic. It is generally impossible or undesirable for the Client to measure duty cycles at runtime. Instead, duty cycles resulting from a given artificial-traffic frame and a given interval, T, can be predetermined by one of the following methods:
In premises where the coupling 150 is particularly strong, the artificial PLC traffic may impact the DSL sufficiently to cause the DSL to retrain. Unplanned retraining should be avoided, because it is time-consuming, disruptive to the user, and disruptive to the Client's connection to the Server.
Therefore, one embodiment of the invention ramps the τ upward while monitoring the present SNR relative to the SNR with no PLC transmission. It settles on the largest τ it deems it can use without causing retrain. Larger τ result in more-accurate differential SNR measurements and so are preferred over smaller τ.
The Client 105 is a software module running in the host processor of the DSL gateway 115. Its actions are orchestrated by a Server 110, with which it communicates via the Internet 160, via the DSL connection 165 itself. There are three PLC nodes illustrated in
PLC management messages, such as required to read and write the amplitude map or such as used in the “Respond” and “Generate” methods for artificial PLC transmission, are dependent on PLC protocol and chipset. Their documentation is generally divulged only by consent of either the chipset manufacturer or the organization that maintains the PLC protocol's specification. Details of management messages therefore cannot be disclosed here, in the public domain. However, details are generally available to anyone skilled in the art having commercial interest in developing PLC software, hardware, or systems.
In this description, numerous details have been set forth to provide a more thorough explanation of embodiments of the present invention. It should be apparent, however, to one skilled in the art, that embodiments of the present invention may be practiced without these specific details. In other instances, well-known structures and devices have been shown in block diagram form, rather than in detail, in order to avoid obscuring embodiments of the present invention.
Some portions of this detailed description are presented in terms of algorithms and symbolic representations of operations on data within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise, as apparent from this discussion, it is appreciated that throughout the description, discussions utilizing terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
Embodiments of present invention also relate to apparatuses for performing the operations herein. Some apparatuses may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, DVD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, NVRAMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method steps. The required structure for a variety of these systems appear from the description herein. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the invention as described herein.
A machine-readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium includes read only memory (“ROM”); random access memory (“RAM”); magnetic disk storage media; optical storage media; flash memory devices; etc.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US11/65279 | 12/15/2011 | WO | 00 | 6/13/2014 |