The invention relates to high speed communications using a communications medium such as an Alternating Current (AC) or Direct Current (DC) power line and employing dynamic channel estimation.
Conventional techniques for dealing with the problem of power line channel estimation are described in five patent applications, which are hereby incorporated by reference:
(1) US 2005/0190785 A1, by Yonge et al., filed Feb. 26, 2004,
(2) US 2004/0070912 A1, by Kopp, filed Sep. 30, 2002,
(3) US 2005/0037722 A1, by Koga et al., filed Feb. 17, 2005,
(4) US 2005/0238109 A1, by Koga et al., filed Oct. 27, 2005, and
(5) US 2005/0238089 A1, by Kodama et al., filed Oct. 27, 2005. The power line estimation techniques described by Yonge and Kopp are based on very similar principles, while those of Koga and Kodama are based on another channel estimation procedure.
The present invention provides an improved channel estimation and adaptation technique by feeding back a partial tone map or an indicator thereof transmitted on an acknowledgment (e.g., ACK or NACK) packet in a feedback channel, in order to update a tone-map of an adaptive transmission scheme. A tone map is a set of transmission parameters that can be used on a link in order to achieve high data rates. The optimal tone map for a given carrier is the one that is capable of achieving a high data rate based on the existing channel conditions which are estimated in accordance with characteristics such as channel attenuation characteristics (or equivalently, the channel impulse response) and local noise characteristics. Tone maps include parameters such as the carrier frequency, sub-carrier frequencies, modulation type, coding type and rate, Forward Error-Correction (FEC) coding rate, etc. To maximize the data rate between various links, the communication stations adjust their transmission parameters dynamically in both time and frequency. The invention progressively refines the channel estimation and enables transmission of packets at optimal time instants. Some non-limiting, exemplary and preferred aspects of the invention are discussed below.
A communication device for communicating over a communication channel may include a transmitter that transmits over the channel to a second communication device a first packet P1, employing a starting tone map TMS comprising a starting transmission scheme for a set of carriers of the channel; a receiver that receives over the channel a partial tone map PTM1 or an indicator thereof from the second communication device; and a tone map generator that generates an updated tone map TM1 based on the starting tone map TMS and the partial tone map PTM1 or the indicator thereof, wherein the transmitter transmits over the channel a second packet P2 to the second communication device, employing the updated tone map TM1. The communication device may further comprise a memory that stores a partial tone map PTM1, wherein the tone map generator retrieves the partial tone map PTM1 from the memory based on the indicator of partial tone map PTM1 and modifies the starting tone map TMS with information of the partial tone map PTM1. The partial tone map PTM1 or the indicator thereof may be received as part of an acknowledgment packet from the second communication device.
A method and system of communicating over a communication medium having a periodically varying channel may include determining a starting tone map TMS comprising a starting transmission scheme for a set of carriers of the channel; transmitting at the first communication device a first packet P1 employing the starting tone map TMS; receiving the first packet P1 at a second communication device; determining a tone map TMO1 based on characteristics of the packet P1 received at the second communication device, the tone map TMO1 comprising transmission schemes for the set of carriers of the channel; comparing the tone map TMO1 with the starting tone map TMS to determine a partial tone map PTM1 comprising transmission schemes for a subset of the carriers of the channel that are different from the starting transmission scheme of the starting tone map TMS; generating an updated tone map TM1 based on the starting tone map TMS modified in accordance with the partial tone map PTM1; associating the updated tone map TM1 with a time offset To1 between a start time of a communication period and a start time of the first packet P1 and a time value Tp1 comprising a time duration to transmit the first packet P1; and employing the updated tone map TM1 to transmit at the first communication device a packet to the second communication device. The packet transmitted by employing the updated tone map TM1 may have a time duration equal to the time value Tp1 and may be transmitted at a time offset from the start time of the communication period equal to the time value To1+j×L, where j is an integer and L is a variation cycle of characteristics of the periodically varying channel. In ideal conditions, the updated tone map TM1 is employed to transmit at the first communication device a packet having a time offset from the start time of the communication period equal to the time value To1+j×L, where j is an integer. However, the time offset need not always be equal to this time value To1+j×L. That is, some deviation from this nominal value is inevitable for several reasons. For example, the AC cycle is only nominally equal to L, e.g. 1/L=50 Hz or 1/L=60 Hz, and deviations from these nominal values are often encountered in practice. Moreover, some delay or inaccuracy is always involved when recording the exact start of the transmission of a packet or of a communications period. For these reasons, in a practical system, packets will be transmitted at time instants that will deviate from the nominal optimal time instant To1+j×L. However, if this deviation is small, then only a small compensation to the optimal transmission scheme is needed, and this compensation can be efficiently carried out by the use of partial tone maps as described in this invention. The scheme may further comprise transmitting at the first communication device a second packet P2 employing the starting tone map TMS; receiving the second packet P2 at the second communication device; determining a tone map TMO2 based on characteristics of the second packet P2 received at the second communication device, the tone map TMO2 comprising transmission schemes for the set of carriers of the channel; comparing the tone map TMO2 with the starting tone map TMS to determine a partial tone map PTM2 comprising transmission schemes for a subset of the carriers of the channel that are different from the starting transmission scheme of the starting tone map TMS; generating an updated tone map TM2 based on the starting tone map TMS modified in accordance with the partial tone map PTM2; associating the updated tone map TM2 with a time offset To2 between a start time of the communication period and a start time of the second packet P2 and a time value Tp2 comprising a time duration to transmit the second packet P2; and employing the updated tone map TM2 to transmit a packet to the second communication device. The packet transmitted by employing the updated tone map TM2 has a time duration equal to the time value Tp2 and is transmitted at a time offset from the start time of the communication period equal to To2+j×L. The scheme may further comprise transmitting at the first communication device another packet P employing the updated tone map TM1; receiving the packet P at the second communication device; determining a tone map TMO based on characteristics of the packet P received at the second communication device, the tone map TMO comprising transmission schemes for the set of carriers of the channel; comparing the tone map TMO with the tone map TM1 to determine a partial tone map PTM comprising transmission schemes for a subset of the carriers of the channel that are different from the transmission scheme of the tone map TM1; updating the tone map TM1 based on the partial tone map PTM to generate an updated tone map TM; associating the updated tone map TM with the time offset To1 and the time value Tp1; and employing the updated tone map TM to transmit at the first communication device a packet to the second communication device. The packet transmitted by employing the updated tone map TM may have a time duration equal to the time value Tp1 and may be transmitted at a time offset from the start time of the communication period equal to the time value To1+(j+1)×L.
A method and system of communicating over a communication channel may comprise determining a starting tone map TMS comprising a starting transmission scheme for a set of carriers of the channel; transmitting at the first communication device a packet P1 employing the starting tone map TMS; receiving the packet P1 at a second communication device; determining a tone map TMO1 based on characteristics of the packet P1 received at the second communication device, the tone map TMO1 comprising transmission schemes for the set of carriers of the channel; comparing the tone map TMO1 with the starting tone map TMS to determine a partial tone map PTM1 comprising transmission schemes for a subset of the carriers of the channel that are different from the starting transmission scheme of the starting tone map TMS; transmitting the partial tone map PTM1 or an indicator thereof to the first communication device; generating an updated tone map TM1 based on the starting tone map TMS modified in accordance with the partial tone map PTM1; and employing the updated tone map TM1 to transmit a packet at the first communication device. The method may further comprise transmitting at the first communication device another packet P employing the updated tone map TM1; receiving the packet P at a second communication device; determining a tone map TMO based on characteristics of the packet P received at the second communication device, the tone map TMO comprising transmission schemes for the set of carriers of the channel; comparing the tone map TMO with the tone map TM1 to determine a partial tone map PTM comprising transmission schemes for a subset of the carriers of the channel that are different from the transmission scheme of the tone map TM1; updating the tone map TM1 based on the partial tone map PTM to generate an updated tone map TM; and employing the updated tone map TM to transmit a packet at the first communication device.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate presently preferred non-limiting examples of exemplary embodiments of the invention, and, together with the general description given above and the detailed description of the preferred embodiments given below, serve to explain the principles and concepts of the invention, in which like reference characters designate like or corresponding parts throughout the several drawings.
Reference will now be made in detail to the presently non-limiting, exemplary and preferred embodiments of the invention as illustrated in the accompanying drawings. The nature, concepts, objectives and advantages of the present invention will become more apparent to those skilled in the art after considering the following detailed description in connection with the accompanying drawings. The following description is provided in order to explain preferred embodiments of the present invention, with the particular features and details shown therein being by way of non-limiting illustrative examples of various embodiments of the present invention. The particular features and details are presented with the goal of providing what is believed to be the most useful and readily understood description of the principles and conceptual versions of the present invention. In this regard, no attempt is made to show structural details of the invention in more detail than is necessary for the fundamental understanding of the present invention. The detailed description considered with the appended drawings are intended to make apparent to those skilled in the art how the several forms of the present invention may be embodied in practice.
A selector 208 selects the stored tone map for communicating information over the channel during a subsequent period when the channel communication characteristic is expected to be similar to that which occurred during the initial period. A transmitter 210 communicates the information over the channel during the subsequent period using the selected tone map. A tone map revisor 212 revises the selected tone map based on a partial tone map derived from a channel estimate determined by the other node, from reception of the information, and communicated to revisor 212 through receiver 202. Memory 206 stores the revised tone map in association with the indicator of the initial period or the period in which the information was transmitted. A controller 214 controls the operation of generator 204, selector 208, transmitter 210, and revisor 214 to generate and revise multiple tone maps and partial tone maps for each of a plurality of initial and subsequent periods.
For example, as illustrated in
The following three cases are discussed below: (1) the beacon interval Tb is equal to an integer multiple of the AC cycle; (2) Tb is not equal to an integer multiple of the AC cycle; and (3) DC-based networks.
First, consider the situation when the beacon interval is an integer multiple of an AC cycle existing in the communication channel. For example, when the AC cycle is 60 Hz, the beacon interval would be Tb=50 ms=3·Tac. The beacon can start with any offset with respect to the AC zero crossing.
Given the periodicity of channel and noise conditions, TMi (i=1, . . . , 4) is a preferred tone map TM for packets that have duration Tpi and are being transmitted at an offset of Toj=Toi+j·Tac (i=1, 2, 3, 4; j=1, 2, 3, . . . ). Therefore, the transmitter selects the best tone map TM among the four available ones on the basis of when the packet of duration Tpi is going to be transmitted, i.e., on the basis of the time offset from the beacon start. Every time a packet is transmitted, a partial tone map PTM is fed back with the ACK packet so that the tone maps TMi always get refined; the extent of the refinement tends to decrease at every iteration so that smaller and smaller tone map improvements get fed back at every iteration.
After a few refinements, the improved TMi will tend to converge to a desired tone map TMOi. Once desired tone maps are obtained and no changes in the link occur, then no more partial tone map PTMs are fed back to the transmitter. At this point, the transmitter can also try to increase the PHY rate by selecting a weaker FEC or by increasing the packet duration, if the receiver signals (in the ACK packet) that no or very few errors have occurred. The tendency to converge holds true even if Toj is larger than Tb, i.e., convergence holds even in successive beacon intervals. Thus, a high PHY rate and transmission efficiency are quickly achieved.
If sudden variations of the channel occur (i.e., a noisy appliance being plugged-in or disconnected, appliances switched on or off, etc.), the receiver will re-start the progressive update of the transmitter utilizing a partial tone map PTM in the ACK packets. Alternatively, the receiver may request the use of a stronger or weaker FEC or may instruct the transmitter to change the packet duration.
Next, consider the case in which the beacon interval is not an integer multiple of the AC cycle. For example, the beacon interval may be approximately 2.9 or 2.4 times the AC cycle (i.e., 23/8=2.875 when AC cycle is 60 Hz and 2.39583 when AC cycle is 50 Hz). The length of Tb may be specified and the beacon can start with any offset with respect to the AC zero crossing.
However, if Tb is not an exact multiple integer of the AC cycle, then a steady state of convergence is not necessarily achieved since the convergence of a tone map does not necessarily hold outside the current beacon interval. The further away the ratio of Tb/Tac is from an integer number, the more refinement the tone map may need from one beacon interval to another. But convergence of a tone map is maintained within the same beacon interval and this can be exploited since a beacon interval typically contains several half AC cycles.
In a case where packet offsets are determined with respect to the most recent beacon, a node transmitting packets may adjust previously determined time offset values used in previous beacon intervals. Such an adjustment is useful because the beacon is not an integer multiple of the AC cycle period. This adjustment may be accomplished as follows.
Every time a beacon is detected, a node sets its internal timer to a value of zero. For example, where node 1 will communicate packets to node 2, node 1 may initiate the generation of tone maps at the 0th beacon interval, which has time duration TB. For each packet transmission, node 1 stores the value of an internal timer at the start of the packet transmission; this value is the time offset T0(0,1) between the start of the packet transmission and the last beacon. T0(j,i) represents the time offset of the ith packet transmitted during the jth beacon interval. At every new beacon, node 1 adjusts the time offset value used in the previous beacon interval using the following equations:
where L=TAC (i.e., the AC cycle duration) or TAC/2, TB is the time duration of the beacon interval, and mod(·) is the modulo operator. Accordingly, node 1 develops a set of Tone Maps with index TMI(j,i) and associated Time Offsets T0(j,i). The Tone Map with index TMI(j,i) may contain ideal FEC and modulation formats for transmitting packets at ideal time instants:
t
ideal
(j)(k)=T0(j,i)+k·L, where k=1, 2, . . . , K
so that tidealj(K) is contained within the jth beacon interval.
Lastly, consider DC-based power line networks. For DC networks, such as may be used in a car, an airplane, space stations, etc., the channel does not usually undergo periodic channel variations so that time offset and packet duration information are not as useful. In this case, the duration of the beacon interval could be irrelevant as far as channel estimation is concerned. In these environments, impedance mismatches are the typical source of channel variations and these tend to occur randomly, possibly together with sudden changes in topology. In this case, the transmitter updates its tone map upon receiving the ACK packet containing a partial tone map and applies the updated tone map to the next packet in the queue.
Although
Most multi-carrier systems have a transmission path estimator 1116 that determines the modulation used in each sub carrier. A tone map TM, as used herein, may designate a set of modulations and corresponding sub-carriers.
Generally, in case of carrying out transmission path estimation, a frame that is known both by the transmitter and the receiver is transmitted from the transmitting device for the purpose of transmission path estimation. In transmission path estimator 1116 of the receiving device, the Carrier Power-to-Interference-Plus-Noise Power Ratio (CINR) is measured for every sub-carrier. By use of the CINRs measured in each sub carrier, the TM, i.e., the primary modulation (e.g., 16PAM, 8PAM etc.) to be used in each sub carrier, is selected on the basis of a set of CINR thresholds.
The particular method used for TM creation at a receiver does not limit the invention. The invention has general applicability and can be applied independently of the particular method used for TM creation.
In related art systems, a receiver informs a transmitter of a chosen TM: a) using a special response frame; b) only after transmission path estimation has been invoked and a well-known frame has been transmitted by the transmitter; and c) by transmitting the entire TM from the receiver to the transmitter.
In the present invention, the receiver may choose to transmit back to the transmitter only a sub-set of the TM, and it would do so not necessarily by invoking a transmission path estimation using a specially dedicated frame but it may do so by exploiting the ACK packets sent back to the transmitter after every frame is received by the receiver.
In general, the ACK packet is used as a response from the receiver to the transmitter to indicate the reception of a data packet. Corresponding to the reception status of a data packet, the ACK packet can either inform the source station of a normal reception or make a retransmission request. In order to keep overall system efficiency high, ACK packets are often very small.
The present invention may take advantage of acknowledgment packets to provide a feedback channel to the transmitter, in the context of transmission path estimation. In particular, the receiver may create a TM on the basis of a received packet and send the TM back in full or in part to the transmitter so that improved modulation schemes can be used by the transmitter on a per packet basis. Therefore, the acknowledgment packet of the present invention may be augmented with a variable length field containing either a full or partial TM.
Many implementations of the invention are possible. For example, a receiver may calculate a preferred tone map by decoding an entire packet or by using only the header of the packet (e.g., preamble, control signals, etc.). The receiver may detect whether a packet is decoded without errors, and in such case, it may use all the symbols in the packet, including the payload, to compute an average tone map TM. Here, average is meant in the sense of averaging SNR over the duration of the packet, which may be preferred since noise may be averaged out. Once the tone map is calculated, it can be entirely or partially fed back to the transmitter using either ACK packet 1400 or a small data packet.
If the receiver does not use the payload data for tone map calculation, then it may use the header or the frame control information of the header, which may be transmitted using robust modulations. For example, a Cyclic Redundancy Code (CRC) component of the header may be checked to detect if errors have been made.
Transmitting a partial tone map represents a compromise between the accuracy of channel estimation and efficiency of the system. To limit overhead, it is desirable to use partial tone maps. The SNR may be calculated on a per sub-carrier basis, by calculating the mean square of the difference between a received data point and the reference point of the constellation.
In another implementation, a postamble can be added to the data packet.
An alternative implementation uses pilot signals spaced across the data packet.
If the beacon interval Tb is a multiple of the AC cycle, then the receiver can compute the per-carrier-SNR using a moving average that goes beyond a packet and even beyond a beacon interval.
Alternatively, if the beacon interval is not a multiple of the AC cycle, the moving average (i.e., smoothing) may be re-initialized at every beacon. The smoothing effect of the moving average provides a better estimate of the SNR because more samples are involved in the estimation. Also, such smoothing provides better detection when major changes occur in the channel state.
However, MAC efficiency and throughput can be improved by using multiple tone maps TMs within the same packet.
If the channel is in a steady state and it is no longer necessary for the receiver to feed back partial tone maps to the transmitter, then the receiver can instruct the transmitter to increase its frame duration to increase overall MAC throughput. It is clear that, if the frame duration is changed, then it is likely that new partial tone maps will be generated by the receiver to adapt for the use of longer packets. However, if the channel is in a steady state, then the receiver will progressively update the transmitter tone map until a new and stable advantageous scheme is reached. Again, if the conditions allow it, the receiver can again instruct the transmitter to increase frame duration.
The receiver can also detect whether the noise has increased (or decreased) between the start and the end of the packet. This can be accomplished by checking the corrected errors in every ethernet frame contained in the packet. If the number of corrected errors in every frame increases (decreases) with time, then noise is also increasing (decreasing). For example, in AC-based PLC networks, noise may increase as the main voltage increases towards its peak value (±110, or ±240); vice versa, noise may decrease as the main voltage decreases towards zero. If the receiver detects that any of those situations are occurring, then it could anticipate the evolution of noise with time and apply a weaker (or stronger) FEC, or compute tone maps weighing more the symbols in the preamble or in the postamble.
If node I transmits to node j, then every other node in the same home network will receive the data packet sent by node I and the successive ACK packets sent by j. Therefore, every node k in the network will be able to calculate a tone map for improved transmission from k to I and from k to j. Since the above consideration holds for every node k in the home network, this is helpful as every node in the network may determine the best tone map for communicating with any other node. Therefore, when a node needs to send data to another node and it has a recent tone map for transmitting to that node, it can utilize such tone map to increase its data rate with respect to the case when a low rate robust packet must be sent or when an RCE/CER sequence must be invoked to estimate the channel.
The exploitation of ACK packets for dynamic channel estimation also allows nodes to always have a recent estimate of the channel that can be used to transmit information exploiting efficient transmission schemes without the necessity of invoking an RCE/CER procedure. In fact, the power line channel is a broadcast medium similar to wireless, and any node is able to receive data or ACK packets transmitted by any other node.
More specifically, node 1 initializes at 302 a parameter N to have an integer value equal to the number of phases into which a cycle of channel characteristic variation will be divided and initializes a counter j to have a value of 1. Node 1 generates at 304 a tone map TMj in accordance with a channel estimate indicator for the phase, received from node 2 in an ACK message, and increments at 306 the value of counter j by one. Node 1 repeats at 308 operations 304 and 306 for each phase of the subdivided cycle. Node 1 identifies at 310 which of the N phases has a base offset relative to a reference time (e.g., the beacon) that is closest to the remainder produced by dividing (a) an offset, relative to the reference time, of a subsequent communication by (b) the period of the channel cycle. Node 1 selects at 312 the tone map that was generated for the identified phase and communicates at 314 information over the channel to node 2 during the subsequent period using the selected tone map. Node 1 revises at 316 the selected tone map based on an indicator of a channel estimate obtained from reception of the information by node 2 and communicated to node 1 in an ACK message. Node 1 repeats at 318 operations 310-316 until no information remains to be transmitted to node 2. In the above-described method, the base offset of each of the N phases is equivalent to the remainder produced by dividing the phase's offset by the cycle period of the channel characteristic variation.
Although
After the information relating to the M representative packets is initialized at 404, node 1 sets at 406 a counter j to a value of j=2M+1. Node 1 selects at 408, as Pselected, the one of M previously transmitted packets whose transmission time offset, with respect to a reference, and duration are most representative of the next packet Pj to be transmitted.
If the packet duration of next packet Pj is expected to be long with respect to the cycle period of the AC component on the communication channel, then multiple representative packets may be selected to represent the anticipated channel conditions during the transmission of next packet Pj, with each representative packet having a different associated offset and possibly a different packet duration. Thus, next packet Pj may be subdivided into sub-packets such that one or groups of the sub-packets are transmitted in accordance with information relating to the most representative selected packet. Stated another way, the tone map for each of the multiple selected representative packets may be applied to one or more groups of the sub-packets when they are transmitted.
The determination of which of the M representative packets is most representative of the next packet to be transmitted may be made in many ways. For example, node 1 may divide a representative packet's transmission offset from a reference time, as may be indicated by a beacon transmission, by the cycle period of the AC channel component and use the remainder of this division as the packet's base offset. Node 1 may similarly divide the transmission time offset of the next packet to be transmitted to determine its base offset and compare this base offset to the base offsets of the representative packets. The representative packet having the closest base offset to that of the next packet to be transmitted is selected as the most representative packet. Other considerations may be evaluated, also, to determine the most representative packet, such as packet duration.
Upon selecting at 408 the most representative packet, node 1 retrieves the tone map associated with this packet and determines at 410, 412 if this tone map has adequately converged, such that further refinement of the tone map is unnecessary. Determination 410, 412 may be made based upon tone map update information communicated by node 2 in a message acknowledging receipt of the previously transmitted representative packet. Although
After the convergence determination 410, 412 is made, node 1 generates at 414, 416 tone map TMj for the next packet Pj to be transmitted. When convergence is not found, TMj is generated at 414 based upon the tone map, if any, used to transmit the selected representative packet and the information provided in the acknowledgment to the representative packet for updating the applied tone map or creating a tone map. When convergence is found, node 1 applies at 416 the tone map used to transmit the selected representative packet as TMj and may adjust the coding and modulation rate for transmitting Pj so as to better utilize the communication channel.
After generating at 414, 416 TMj, node 1 transmits at 418 packet Pj using the generated tone map TMj. In response to receiving packet Pj, node 2 sends at 420 an acknowledgment message ACKj to node 1 providing update information that may be used to update the tone map for the selected representative packet. Thus, the tone map for the selected representative packet may be revised after each use.
Node 1 increments at 422 packet counter j by a value of one after the transmission of packet Pj and determines at 424 whether more packets will be transmitted. If so, method 400 repeats at 424 the execution of operations 408-422; otherwise, execution ceases.
If node 1 determines at 402 that no significant AC component exists on the communication channel, then node 1 sets at 426 counter j to a value of one and initializes at 426 a tone map TM1, if one exists, for the first transmitted packet P1. Node 1 transmits at 436 packet Pj to node 2 using TMj, if it exists. In response to receiving packet Pj, node 2 sends at 438 an acknowledgment ACKj to node 1 providing information for updating or creating TMj.
Node 1 increments at 440 packet counter j by a value of one after the transmission of packet Pj and determines at 442 whether more packets will be transmitted. If not, method 400 ceases execution.
Otherwise, node 1 determines at 428, 430 whether tone map TMj−1 is converged based upon the information provided in ACKj−i. If so, node 1 applies at 434 tone map TMj−1 as tone map TMj; if not node 1 generates at 432 tone map TMj from tone map TMj−1 and the update information provided in ACKj−1. Then, node 1 re-executes operations 436-442.
According to method 500, a first node, node 1, determines at 502 whether a significant AC signal component exists in the communication channel. If so, node 1 sets at 504 a parameter N equal to the number of packets transmitted by node 1 in each AC cycle; otherwise, node 1 sets at 506 N equal to one. In either case, node 1 also sets at 508 a counter i equal to one and a counter j equal to N+1.
Node 1 transmits at 510 a packet Pi to node 2 through the communication channel. Node 2 determines at 512 a Tone Map Start (TMS) TMSi for packet Pi based upon its reception characteristic and communicates at 514 an indication of TMSi to node 1 in a message ACKi acknowledging receipt of packet Pi. The tone map start TMS may be a packet carrying data (e.g., data unknown to the receiver) that is robustly modulated or a packet carrying a special training sequence that is known to the receiver so as to improve the accuracy of the channel estimation.
Thereafter, node 1 increments at 516 the value of counter i by one and determines at 518 whether the incremented value exceeds the value of N. If not, node 1 re-executes at 518 operations 510-516 until node 1 receives a tone map start TMS for each packet transmitted within an AC cycle. The tone map start TMS may be a packet carrying data (e.g., data unknown to the receiver) that is robustly modulated or a packet carrying a special training sequence that is known to the receiver so as to improve the accuracy of the channel estimation.
Once node 1 receives the indication for each of TMS1, . . . , TMSN and counter j is incremented to a value of N+1, node 1 transmits at 520 a packet Pj to node 2 using TMSj−N. Node 2 determines at 522 a revised tone map (e.g., more optimal Tone Map (TMO)) TMOj for packet Pj based upon its reception characteristic. To reduce the amount of information required to communicate TMOj, node 2 may generate at 524 a Partial Tone Map (PTM) PTMj that represents the information of TMOj. For example, PTMj may express some or all of the differences between TMSj−N and TMOj. In either case, node 2 communicates at 526 an indication of TMOj to node 1 in a message ACKj acknowledging receipt of packet Pj.
Upon receiving ACKj, node 1 determines at 528 an appropriate tone map TMj for Pj based upon the tone map TMSj−N used to transmit Pj and the indication of TMOj provided in ACKj. In the specific example illustrated in
Node 1 increments at 530 the value of counter j by one and repeats at 532 operations 520-530 until each of the N packets transmitted in a second AC cycle of the communication channel has an associated tone map TM. These associated tone maps TMN+1, . . . , TM+N are revised tone maps of the corresponding tone map starts TMS1, . . . , TMSN used to transmit packets PN+1, . . . , PN+N. If the communication channel does not have a significant AC component, then the sole tone map TM2 generated by operations 520-532 represents an update of the start tone map TMS1 used to transmit packet P2.
After a tone map TM has been generated for each of N packets in operations 520-532 and counter j has been incremented to a value of 2N+1, node 1 transmits 534 a packet Pj to node 2 using TMj−N. Similar to operations 522-526, node 2 determines at 536 a revised tone map TMOj for packet Pj based upon its reception characteristic, generates at 538 a partial tone map PTMj that represents the information of TMOj and communicates at 540 an indication of PTMj to node 1 in a message ACKj acknowledging receipt of packet Pj.
Upon receiving ACKj, node 1 determines at 542 an appropriate tone map TMj for Pj based upon the tone map TMj−N used to transmit Pj and the indication of PTMj provided in ACKj. In the specific example illustrated in
To better understand method 500, Table 2 tabulates a specific example of how the tone maps are generated and applied to the first twelve packets transmitted from node 1 to node 2 when N=3.
According to method 600, a first node, node 1, determines at 602 whether any previously transmitted packets, which have been recorded, had transmission durations or transmission offsets, with respect to a reference time, that are representative of the duration and offset for a packet to be transmitted next. If so, node 1 selects at 604 the tone map TM associated with the representative packet and transmits at 606 the next packet P using the selected tone map TM. In a case where the packet duration is long with respect to a cycle of an AC component existing in the communication channel, multiple tone maps TMs may be associated with the representative packet so that the packet to be transmitted next may be subdivided and transmitted with each of the TMs applied to a subdivision of the packet. If no representative packets exist, node 1 transmits at 608 packet P to node 2.
Upon receiving packet P, node 2 determines at 610 update information for the tone map(s) TM(s) applied to packet P or creates at 610 one or more tone maps TMs for the packet if none was applied. Node 2 communicates at 612 to node 1 an indication of the update information or created tone map(s) in a message, ACK, acknowledging receipt of packet P.
Node 1 determines at 614 whether the transmission duration, offset information, and updated tone map information for packet P would better represent the conditions expected for the transmission of subsequent packets than such information for any existing representative packets. If so, node 1 records at 616 the duration, offset, and updated or created tone map information for packet P; otherwise, node 1 discards this information. Thereafter, operations 602-616 are repeated at 618 until no further packets remain to be transmitted.
As described above, method 600 improves the tone maps used to transmit a sequence of packets by updating, for each transmitted packet, the tone map(s) applied to a previously transmitted packet that had similar transmission duration and time offset characteristics.
Node 1 sets at 708 a counter j to an initial value of one and associates at 710 the selected TMS with two time values for the next packet Pj to be transmitted: (1) the time offset Toj between the start of a beacon signal and the start of packet Pj and (2) the duration Tpj of the transmitted packet Pj. Node 1 transmits at 712 to node 2 packet Pj using the selected TMS. Node 2 receives at 714 packet Pj, determines at 716 an improved transmission scheme TMOj on the basis of received packet Pj, and compares TMOj to the selected TMS to determine at 718 a partial tone map PTMj. Node 2 sends at 720 to node 1, in an acknowledgment packet ACKj, the determined partial tone map PTMj (e.g., a list of a subset of carriers that require a different modulation scheme). For example, node 2 could feed back information regarding the 10, 20, or 50 carriers that exhibited the largest Signal-To-Noise-Ratio (SNR) difference between TMS and TMOj. Note that the receiver can decide on a case by case basis not to feed back a partial tone map PTM if it determines that a simple change in the FEC rate produces an acceptable PHY rate decrease. In fact, this choice is more convenient as less overhead would be used than in the case of feeding back a partial tone map PTM.
Node 1 uses the received ACKj packet to update the selected TMS with PTMj and thereby generate at 722 an updated tone map TMj that is associated at 724 with Toj and Tpj. Note that TMj may not be optimal (as may be TMOj) since it was updated on the basis of a partial tone map. Updated tone map TMj will be used for a future packet of duration Tpj transmitted at a time offset from the beacon equal to To=Toj+k×Tac, where k is integer. For example, see packet P4, in
Node 1 increments 726 counter j by one and determines at 728 whether the value of counter j exceeds N. Operations 710-726 are repeated at 728 until the value of counter j exceeds N, such that node 1 has created N packets using the selected TMS and N improved tone maps and their associated offsets and lengths (i.e., {TM1, To1, Tp1}, {TM2, To2, Tp2}, and {TM3, To3, Tp3}).
Once the value of counter j exceeds N, node 1 associates at 730 the next packet's, Pj's, time offset Toj and transmission duration Tpj with TMj−N. Node 1 transmits at 732 packet Pj to node 2 using TMj−N. Node 2 receives at 734 packet Pj, determines at 736 an improved transmission scheme TMOj on the basis of received packet Pj, and compares TMOj to TMj−N to determine at 738 a partial tone map PTMj. Node 2 sends at 740 to node 1 in an acknowledgment packet ACKj the determined partial tone map PTMj.
Node 1 uses the received ACK, packet to update TMj−N with PTMj and thereby generate at 742 an updated tone map TMj that is associated at 744 with Toj and Tpj. Node 1 increments at 746 counter j by one and determines at 748 whether any packets remain to be transmitted. If so, operations 730-746 are repeated at 748 until no further packets remain to be sent; otherwise, operation ceases.
To better understand method 700, Table 1 above tabulates a specific example of how the tone maps are generated and applied to the first ten packets transmitted from node 1 to node 2 when N=3.
As discussed expressly in the description for some embodiments and applicable to all embodiments, the information communicated in an acknowledgment message for use in generating a tone map or revising a previously generated tone map need not be a tone map or a partial tone map. Instead, this information may be an indicator of a tone map or partial tone map. The indicator may identify a tone map or partial tone map, which is to be applied in revising a tone map, or it may provide information for use in generating a tone map or partial tone map.
For example, two communicating nodes may both store a plurality of tone maps or partial tone maps that are each identified by a unique index number. In such a case, an acknowledgment message may communicate a particular index number to identify a tone map or partial tone map, rather than communicate the tone map or partial tone map, so as to increase the communication efficiency between the two nodes.
The foregoing description illustrates and describes the present invention. However, the disclosure shows and describes only the preferred embodiments of the invention, but it is to be understood that the invention is capable of use in various other combinations, modifications, and environments. Also, the invention is capable of change or modification, within the scope of the inventive concept, as expressed herein, that is commensurate with the above teachings and the skill or knowledge of one skilled in the relevant art. For example, one or more elements of each embodiment may be omitted or incorporated into the other embodiments.
The foregoing description of implementations and embodiments of the invention have been presented for purposes of non-limiting illustration and description. Although the present invention has been described herein with reference to particular structures, materials and embodiments, the present invention is not intended to be limited to the particular features and details disclosed herein. Rather, the present invention extends to all functionally equivalent structures, methods and uses, such as are within the scope of the appended claims. The descriptions provided herein are not exhaustive and do not limit the invention to the precise forms disclosed. The foregoing embodiment examples have been provided merely for purposes of explanation and are in no way to be construed as limiting the scope of the present invention. The words that have been used herein are words of description and illustration, rather than words of limitation. The present teachings can readily be realized and applied to other types of apparatuses. Further, modifications and variations, within the purview, scope and sprit of the appended claims and their equivalents, as presently stated and as amended hereafter, are possible in light of the above teachings or may be acquired from practicing the invention. Furthermore, although elements of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated Alternative structures discussed for the purpose of highlighting the invention's advantages do not constitute prior art unless expressly so identified. No one or more features of the present invention are necessary or critical unless otherwise specified.