PREAMBLE SEQUENCE SENDING AND RECEIVING METHOD AND APPARATUS, AND SYSTEM
20170222842 · 2017-08-03
Inventors
Cpc classification
H04L25/085
ELECTRICITY
International classification
H04L25/08
ELECTRICITY
Abstract
The present invention provides a preamble sequence sending and receiving method and apparatus, and a system. The preamble sequence sending method includes: generating, by a transmit end, a frequency offset estimation sequence, where the frequency offset estimation sequence includes N subsequences each with a length of M, N is a positive integer greater than or equal to 2, and M is a positive integer; generating, by the transmit end, a prefix and a suffix based on the frequency offset estimation sequence; adding, by the transmit end, the prefix and the suffix before and after the frequency offset estimation sequence respectively to form a preamble sequence, where the prefix and the suffix are used for canceling multipath interference; and adding, by the transmit end, the preamble sequence to a data packet and sending the data packet to a receive end.
Claims
1. A preamble sequence sending method, comprising: generating, by a transmit end, a frequency offset estimation sequence, wherein the frequency offset estimation sequence comprises N subsequences each with a length of M, wherein N is a positive integer greater than or equal to 2, and M is a positive integer; generating, by the transmit end, a prefix and a suffix based on the frequency offset estimation sequence; adding, by the transmit end, the prefix and the suffix before and after the frequency offset estimation sequence, respectively, to form a preamble sequence, wherein the prefix and the suffix are used for canceling multipath interference, wherein each subsequence comprised in the frequency offset estimation sequence is rotated by a phase of θ relative to a previous subsequence adjacent to the subsequence, and −π≦θ≦π; and adding, by the transmit end, the preamble sequence to a data packet and sending the data packet to a receive end.
2. The method according to claim 1, wherein the generating, by a transmit end, a frequency offset estimation sequence comprises: generating, by the transmit end, a bit stream; modulating, by the transmit end, the bit stream to a preset data modulation format, wherein the modulated bit stream is used as a basic subsequence, and a length of the basic subsequence is M; replicating, by the transmit end, the basic subsequence to obtain a long sequence comprising N basic subsequences; and rotating, by the transmit end, each subsequence comprised in the long sequence by a phase of θ relative to a previous subsequence adjacent to the subsequence, to obtain the frequency offset estimation sequence.
3. The method according to claim 1, wherein the generating, by the transmit end, a prefix and a suffix based on the frequency offset estimation sequence comprises: replicating, by the transmit end, the last L1 element values comprised in the first subsequence of the frequency offset estimation sequence, and separately rotating the replicated L1 element values by a phase of −θ to generate the prefix; and replicating, by the transmit end, the first L2 element values comprised in the last subsequence of the frequency offset estimation sequence, and separately rotating the replicated L2 element values by a phase of θ to generate the suffix; wherein L1 and L2 are set by the transmit end according to a channel multipath feature, and L1 and L2 are integers not greater than M.
4. The method according to claim 3, wherein the adding, by the transmit end, the prefix and the suffix before and after the frequency offset estimation sequence, respectively, comprises: adding, by the transmit end, the prefix before a first subsequence of the N subsequences of the frequency offset estimation sequence; and adding, by the transmit end, the suffix after a last subsequence of the N subsequences of the frequency offset estimation sequence.
5. A preamble sequence receiving method, comprising: receiving, by a receive end, a data packet; extracting, by the receive end, a preamble sequence from the data packet, wherein the preamble sequence comprises a prefix, a frequency offset estimation sequence, and a suffix in order, the prefix and the suffix are used for canceling multipath interference, the frequency offset estimation sequence comprises N subsequences each with a length of M, wherein N is a positive integer greater than or equal to 2, and M is a positive integer, wherein each subsequence comprised in the frequency offset estimation sequence is rotated by a phase of θ relative to a previous subsequence adjacent to the subsequence, and −π≦θ≦π; and finding, by the receive end, the frequency offset estimation sequence in the preamble sequence according to a length of the prefix.
6. The method according to claim 5, after the finding, by the receive end, the frequency offset estimation sequence in the preamble sequence according to a length of the prefix, further comprising: delaying, by the receive end, each subsequence comprised in the frequency offset estimation sequence by a length of K subsequences to obtain a new sequence, wherein K is a positive integer less than N; performing, by the receive end, conjugation on the new sequence to obtain a processed sequence; multiplying, by the receive end, an element value in a subsequence in the processed sequence by a corresponding element value in a subsequence in the frequency offset estimation sequence to obtain (N−K)*M complex numbers; calculating, by the receive end, a sum of the (N−K)*M complex numbers; obtaining, by the receive end, a phase of the sum to obtain a phase value; and dividing, by the receive end, the phase value by M to obtain a frequency offset estimation value.
7. The method according to claim 5 wherein when θ≠0, before the dividing, by the receive end, the phase value by M, the receive end performs phase compensation on the phase value.
8. The method according to claim 7, wherein the performing, by the receive end, phase compensation on the phase value comprises: rotating, by the receive end, the phase value by a phase of θ, wherein θ is related to θ.
9. A preamble sequence sending apparatus, comprising: a first generation unit, configured to generate a frequency offset estimation sequence, wherein the frequency offset estimation sequence comprises N subsequences each with a length of M, wherein N is a positive integer greater than or equal to 2, and M is a positive integer, wherein each subsequence comprised in the frequency offset estimation sequence is rotated by a phase of θ relative to a previous subsequence adjacent to the subsequence, and −π≦θ≦π; a second generation unit, configured to generate a prefix and a suffix based on the frequency offset estimation sequence; an adding unit, configured to add the prefix and the suffix before and after the frequency offset estimation sequence, respectively, to form a preamble sequence, wherein the prefix and the suffix are used for canceling multipath interference; and a sending unit, configured to add the preamble sequence to a data packet and send the data packet to a receive end.
10. The sending apparatus according to claim 9, wherein the first generation unit is configured to: generate a bit stream; modulate the bit stream to a preset data modulation format, wherein the modulated bit stream is used as a basic subsequence, and a length of the basic subsequence is M; replicate the basic subsequence to obtain a long sequence comprising N basic subsequences; and rotate each subsequence comprised in the long sequence by a phase of θ relative to a previous subsequence adjacent to the subsequence, to obtain the frequency offset estimation sequence.
11. The sending apparatus according to claim 9, wherein the second generation unit is configured to: replicate the last L1 element values comprised in the first subsequence of the frequency offset estimation sequence, and separately rotate the replicated L1 element values by a phase of −θ to generate the prefix; and replicate the first L2 element values comprised in the last subsequence of the frequency offset estimation sequence, and separately rotate the replicated L2 element values by a phase of θ to generate the suffix; wherein L1 and L2 are set by the second generation unit according to a channel multipath feature, and L1 and L2 are integers not greater than M.
12. The sending apparatus according to claim 11, wherein the adding unit is configured to: add the prefix before a first subsequence of the N subsequences of the frequency offset estimation sequence; and add the suffix after a last subsequence of the N subsequences of the frequency offset estimation sequence.
13. A preamble sequence receiving apparatus, comprising: a receiving unit, configured to receive a data packet; an extraction unit, configured to extract a preamble sequence from the data packet, wherein the preamble sequence comprises a prefix, a frequency offset estimation sequence, and a suffix in order, the prefix and the suffix are used for canceling multipath interference, the frequency offset estimation sequence comprises N subsequences each with a length of M, wherein N is a positive integer greater than or equal to 2, and M is a positive integer, wherein each subsequence comprised in the frequency offset estimation sequence is rotated by a phase of θ relative to a previous subsequence adjacent to the subsequence, and −π≦θ≦π; and a positioning unit, configured to find the frequency offset estimation sequence in the preamble sequence according to a length of the prefix.
14. The receiving apparatus according to claim 13, wherein the apparatus further comprises: a frequency offset estimation unit, configured to: delay each subsequence comprised in the frequency offset estimation sequence by a length of K subsequences to obtain a new sequence, wherein K is a positive integer less than N; perform conjugation on the new sequence to obtain a processing sequence; multiply an element value in a subsequence in the processed sequence by a corresponding element value in a subsequence in the frequency offset estimation sequence to obtain (N−K)*M complex numbers; calculate a sum of the (N−K)*M complex numbers; obtain a phase of the sum to obtain a phase value; and divide the phase value by M to obtain a frequency offset estimation value.
15. The receiving apparatus according to claim 13, wherein the apparatus further comprises: a phase compensation unit, configured to: when θ≠0, before the frequency offset estimation unit divides the phase value by M, perform phase compensation on the phase value.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0068]
[0069]
[0070]
[0071]
[0072]
[0073]
[0074]
[0075]
[0076]
[0077]
[0078]
[0079]
[0080]
[0081]
[0082]
[0083]
DESCRIPTION OF EMBODIMENTS
[0084] Embodiments of the present invention provide a preamble sequence sending and receiving method and apparatus, and a system that are applied to a DOCSIS single carrier modulation system. A prefix and a suffix are added to a frequency offset estimation sequence at a transmit end, so as to improve performance of anti-multipath interference of the frequency offset estimation sequence, and reduce multipath channel impact on frequency offset estimation.
[0085] The technical solutions in the embodiments of the present invention are described in the following with reference to the accompany drawings and the embodiments in this specification.
[0086] An embodiment of the present invention provides a preamble sequence sending method. As shown in
[0087] Step 41: A transmit end generates a frequency offset estimation sequence, where the frequency offset estimation sequence includes N subsequences each with a length of M, N is a positive integer greater than or equal to 2, and M is a positive integer.
[0088] In this embodiment of the present invention, the transmit end may be a CMTS, or may be a CM.
[0089] Specifically, the transmit end generates the frequency offset estimation sequence in the following process: The transmit end first generates a bit stream, and the bit stream may be randomly designed, or may be specially designed, for example, in a form of {1, −1, 1, 1 . . . }. Then the transmit end modulates the bit stream to a preset data modulation format, such as binary phase shift keying (BPSK) or quadrature phase shift keying (QPSK). The bit stream is used as a basic subsequence, and a length of the basic subsequence is M. The transmit end replicates the basic subsequence to obtain a long sequence including N basic subsequences. Next, the transmit end rotates each subsequence included in the long sequence by a phase of θ relative to a previous subsequence adjacent to the subsequence, to obtain the frequency offset estimation sequence, where −π≦θ≦π.
[0090] When θ=0, the frequency offset estimation sequence is a cycle sequence; when θ≠0, the frequency offset estimation sequence is a rotation sequence, and θ is a rotation angle of the frequency offset estimation sequence. An absolute value of θ cannot exceed π, so as to improve frequency offset estimation accuracy, and avoid an erroneous result when a receive end subsequently performs frequency offset estimation.
[0091] A principle that the frequency offset estimation sequence can cancel multipath channel interference is described as follows:
[0092] It is assumed that a multipath channel is h.sub.n, n=−L1, −L1+1, . . . 0, . . . , L2, useful data transmitted on the multipath channel is a.sub.n, a frequency offset existed on the multipath channel is Δf, a sampling rate is f.sub.s, and an initial phase is θ.sub.0. Therefore, a received signal x[n] may be expressed as follows:
[0093] A received signal x[n+M], M element values away from x[n], may be expressed as follows:
[0094] A result y[n] obtained by conjugate-multiplying the two signals may be expressed as follows:
y[n]=x[n+M]x*[n]=B.sub.2[n]B.sub.1*[n]e.sup.(j(2π+Δf*M/f.sup.
[0095] Both the sampling rate f.sub.s and a sequence cycle M are known constants, and the frequency offset Δf is unknown and to be calculated.
[0096] If the frequency offset estimation sequence is a cycle sequence with a cycle of M, a.sub.n+M=a and B.sub.2[n]=B.sub.1[n]. Because a result obtained by conjugate-multiplying two same element values is definitely a real number, a product of B.sub.2[n]B.sub.1*[n] is a real number, and a phase introduced by the channel h.sub.n may be canceled. A frequency offset value can be calculated by using a phase of y[n] only.
[0097] If the frequency offset estimation sequence is a rotation sequence with a rotation angle of θ, a.sub.n+M=a.sub.ne.sup.jθ and a product of B.sub.2[n]B.sub.1*[n] is a fixed complex number with a phase of θ. After a phase of y[n] is calculated, a value of θ is canceled, so as to obtain a real phase and calculate a frequency offset value.
[0098] In addition, when a cycle sequence is replaced by a rotation sequence, not only multipath channel interference can be canceled, but also an estimation range of the frequency offset estimation sequence can be freely adjusted by setting a rotation angle of θ. Therefore, compared with the cycle sequence, the rotation sequence has a wider estimation range.
[0099] A principle that an estimation range of a frequency offset may be freely adjusted in a rotation sequence is described as follows:
[0100] It is assumed that a rotation angle of a rotation sequence is θ, after an angle of the result y[n]=x[n+M]x*[n]=B.sub.2[n]B.sub.1*[n]e.sup.j(2π*Δf*M/f.sup.
[0101] For a common system, the sampling rate f.sub.s is determinate. For a maximum frequency offset Δf.sub.max in the system, a length of a sequence M is limited.
[0102] For a determinate length of a sequence M, if θ is equal to zero, the sequence is a cycle sequence, and an estimation range of the frequency offset is as follows:
[0103] If θ is equal to π, that is, the sequence is a rotation sequence with a rotation angle of π, and an estimation range of the frequency offset is as follows:
[0104] If θ is equal to −π, that is, the sequence is a rotation sequence with a rotation angle of −π, and an estimation range of the frequency offset is as follows:
[0105] It may be learned that, if a maximum value of a frequency offset that can be estimated is Δf.sub.max, when the frequency offset value is calculated by using the cycle sequence, an estimation range is −Δf.sub.max to Δf.sub.max; when the frequency offset value is calculated by using the rotation frequency, a minimum estimation range is −2Δf.sub.max to 0, and a maximum estimation range is 0 to 2Δf.sub.max. Considering that a frequency offset of an actual system is relatively fixed, either positive or negative, when a rotation sequence is used, an estimation range of the rotation sequence may be adjusted flexibly according to a characteristic of the system, for example, the system has a positive frequency offset range or a negative frequency offset range. For example, when an actual frequency offset of a system is 3/2Δf.sub.max, and a frequency offset value is calculated by using a rotation sequence, according to a characteristic that the system has a positive frequency offset range, an estimation range may be adjusted to 0 to 2Δf.sub.max, that is, the actual frequency offset of the system may be estimated accurately. However, when a cycle sequence is used to calculate a frequency offset value, a maximum frequency offset value can only be estimated as large as Δf.sub.max. Apparently, with respect to a frequency offset estimation sequence of a same length, a rotation characteristic of the rotation sequence makes the rotation sequence have a wider estimation range and higher estimation accuracy than the cycle sequence.
[0106] It should be noted that, the foregoing characteristic of the rotation sequence does not depend on the technical solution of the present invention, and may be implemented in cooperation with another technical means or may be implemented separately. Both the implementation manners can freely adjust the estimation range of the frequency offset estimation sequence.
[0107] Step 42: The transmit end generates a prefix and a suffix based on the frequency offset estimation sequence.
[0108] Specifically, the transmit end generates the prefix and the suffix in the following process: The transmit end replicates last L1 element values included in the first subsequence of the frequency offset estimation sequence, and separately rotates the replicated L1 element values by a phase of −θ to generate the prefix. The transmit end replicates first L2 element values included in the last subsequence of the frequency offset estimation sequence, and separately rotates the replicated L2 element values by a phase of θ to generate the suffix. L1 and L2 are set by the transmit end according to a channel multipath feature, and L1 and L2 are integers not greater than M.
[0109] Step 43: The transmit end adds the prefix and the suffix before and after the frequency offset estimation sequence respectively to form a preamble sequence, where the prefix and the suffix are used for canceling multipath interference.
[0110] Specifically, the transmit end adds the prefix and the suffix before and after the frequency offset estimation sequence respectively, that is, adds the prefix before the first subsequence of the frequency offset estimation sequence and adds the suffix after the last subsequence of the frequency offset estimation sequence.
[0111]
[0112]
[0113] The transmit end adds the prefix and the suffix at start and end locations of the frequency offset estimation sequence, so as to enhance performance of anti-multipath interference of the frequency offset estimation sequence, cancel a delay feature of a multipath channel, and improve frequency offset estimation accuracy.
[0114] A principle that the performance of anti-multipath interference of the frequency offset estimation sequence can be enhanced by adding the prefix and the suffix is described as follows:
[0115] Reference may be made to the foregoing description of the principle that the frequency offset estimation sequence can cancel multipath channel interference. Though in theory, the frequency offset estimation sequence can cancel the multipath channel interference, actually, due to existence of the multipath channel, h.sub.n is not a single value but a vector. Each element value of x[n] is related to L2 data before a.sub.n and L1 data after a.sub.n. For a sequence with a cycle of M, not all y[n] calculated at all locations can cancel a phase of a channel h.sub.n. The following convolution formula describes this relationship, and indicates that all the first L2 element values and the last L1 element values in a.sub.n are affected by another sequence:
[0116]
[0117] However, the added prefix and suffix in the technical solution of the present invention can cancel a phase of a channel h.sub.n, so as to protect the frequency offset estimation sequence.
[0118] Step 44: The transmit end adds the preamble sequence to a data packet and sends the data packet to a receive end.
[0119] In the foregoing embodiment, a prefix and a suffix are added to a frequency offset estimation sequence at a transmit end, so as to provide a frequency offset estimation sequence with higher anti-multipath interference performance. The frequency offset estimation sequence may be a cycle sequence, or may be a rotation sequence. In particular, when the frequency offset estimation sequence is a rotation sequence, an estimation range of the frequency offset estimation sequence can be freely adjusted.
[0120] As shown in
[0121] Step 91: A receive end receives a data packet.
[0122] In this embodiment of the present invention, the receive end may be a CMTS, or may be a CM.
[0123] Step 92: The receive end extracts a preamble sequence from the data packet, where the preamble sequence includes a prefix, a frequency offset estimation sequence, and a suffix in order, the prefix and the suffix are used for canceling multipath interference, the frequency offset estimation sequence includes N subsequences each with a length of M, N is a positive integer greater than or equal to 2, and M is a positive integer.
[0124] Specifically, before extracting the preamble sequence, the receive end may search for a start location of the data packet by using a data monitor algorithm, and find a specific location of the preamble sequence according to a pre-designed data packet structure.
[0125] Step 93: The receive end finds the frequency offset estimation sequence in the preamble sequence according to a length of the prefix.
[0126] Because a transmit end may send related information of the preamble sequence to the receive end together with the preamble sequence, for the receive end, the length of the prefix, M, N, θ, and other information are known. The receive end may determine a location of the entire preamble sequence according to a detection algorithm, and find the frequency offset estimation sequence in the preamble sequence according to the length of the prefix. Each subsequence included in the frequency offset estimation sequence is rotated by a phase of θ relative to a previous subsequence adjacent to the subsequence, where −π≦θπ.
[0127] Further, after the frequency offset estimation sequence is found, the receive end may perform frequency offset estimation based on the frequency offset estimation sequence. As shown in
[0128] Step 101: The receive end delays each subsequence included in the frequency offset estimation sequence by a length of K subsequences to obtain a new sequence, where K is a positive integer less than N.
[0129] Step 102: The receive end performs conjugation on the new sequence to obtain a processing sequence.
[0130] Step 103: The receive end multiplies an element value in a subsequence in the processed sequence by a corresponding element value in a subsequence in the frequency offset estimation sequence to obtain (N−K)*M complex numbers.
[0131] Specifically, the receive end multiplies an element value in a subsequence in the processed sequence by a corresponding element value in a subsequence in the original frequency offset estimation sequence, and the processed sequence is obtained after the delay of the length of K subsequences and the conjugation. In other words, the first element value in the first subsequence in the processed sequence is multiplied by the first element value in a (K+1).sup.th subsequence in the original frequency offset estimation sequence; the second element value in the first subsequence in the processed sequence is multiplied by the second element value in a K.sup.th subsequence in the original frequency offset estimation sequence . . . . . The foregoing operation is repeated until an M.sup.th element value of a (N−K).sup.th subsequence in the processed sequence is multiplied by an M.sup.th element value in an N.sup.th subsequence in the original frequency offset estimation sequence, so as to obtain (N−K)*M complex-number product values in total.
[0132] Step 104: The receive end calculates a sum of the (N−K)*M complex numbers.
[0133] Step 105: The receive end obtains a phase of the sum to obtain a phase value.
[0134] In the prior art, for the obtained (N−K)*M complex numbers, the receive end usually obtains a phase value and then calculates a sum. However, in this embodiment of the present invention, for the obtained (N−K)*M complex numbers, the receive end calculates a sum and then obtains a phase value. This decreases a quantity of phase collection operations, reduces calculation complexity, and further improves frequency offset estimation accuracy.
[0135] Specially, when θ≠0, that is, when the frequency offset estimation sequence is a rotation sequence, before the receive end divides the phase value by M, the receive end needs to perform phase compensation on the phase value.
[0136] In this embodiment of the present invention, the receive end performs phase compensation on the phase value by using the following specific operation: rotating the phase value by a phase of φ. It can be learned from simulation that φ is related to θ, for example, φ is equal to π+θ, π−θ, or the like.
[0137] Step 106: The receive end divides the phase value by M to obtain a frequency offset estimation value.
[0138] As shown in
[0139] After finding a correct start location of the frequency offset estimation sequence, the receive end uses the correct start location to divide the frequency offset estimation sequence into two parts. One part is delayed by a length of one subsequence, then conjugated, and then input into a multiplier. The other part is directly input into the multiplier.
[0140] In the foregoing embodiment, a prefix and a suffix are added to improve anti-multipath interference performance at start and end locations of a frequency offset estimation sequence. A receive end multiples the original frequency offset estimation sequence by a frequency offset estimation sequence obtained after delay and conjugation, calculates a sum of obtained multiple complex-number product values, and then obtains a phase of the sum. This greatly decreases a quantity of phase collection operations, reduces calculation complexity, and ensures good frequency offset estimation accuracy.
[0141] As shown in
[0142] a first generation unit 141, configured to generate a frequency offset estimation sequence, where the frequency offset estimation sequence includes N subsequences each with a length of M, N is a positive integer greater than or equal to 2, and M is a positive integer;
[0143] a second generation unit 142, configured to generate a prefix and a suffix based on the frequency offset estimation sequence;
[0144] an adding unit 143, configured to add the prefix and the suffix before and after the frequency offset estimation sequence respectively to form a preamble sequence, where the prefix and the suffix are used for canceling multipath interference; and
[0145] a sending unit 144, configured to add the preamble sequence to a data packet and send the data packet to a receive end.
[0146] Further, the first generation unit 141 is specifically configured to generate a bit stream; modulate the bit stream to a preset data modulation format, where the bit stream is used as a basic subsequence, and a length of the basic subsequence is M; replicate the basic subsequence to obtain a long sequence including N basic subsequences; and rotate each subsequence included in the long sequence by a phase of θ relative to a previous subsequence adjacent to the subsequence, to obtain the frequency offset estimation sequence, where −π≦θ≦π.
[0147] Further, the second generation unit 142 is specifically configured to replicate last L1 element values included in the first subsequence of the frequency offset estimation sequence, and separately rotate the replicated L1 element values by a phase of −θ to generate the prefix; and replicate first L2 element values included in the last subsequence of the frequency offset estimation sequence, and separately rotate the replicated L2 element values by a phase of θ to generate the suffix, where L1 and L2 are set by the second generation unit 142 according to a channel multipath feature, and L1 and L2 are integers not greater than M.
[0148] Further, the adding unit 143 is specifically configured to add the prefix before the first subsequence of the frequency offset estimation sequence and add the suffix after the last subsequence of the frequency offset estimation sequence.
[0149] As shown in
[0150] a receiving unit 151, configured to receive a data packet;
[0151] an extraction unit 152, configured to extract a preamble sequence from the data packet, where the preamble sequence includes a prefix, a frequency offset estimation sequence, and a suffix in order, the prefix and the suffix are used for canceling multipath interference, the frequency offset estimation sequence includes N subsequences each with a length of M, N is a positive integer greater than or equal to 2, and M is a positive integer; and
[0152] a positioning unit 153, configured to find the frequency offset estimation sequence in the preamble sequence according to a length of the prefix.
[0153] Optionally, each subsequence included in the frequency offset estimation sequence is rotated by a phase of θ relative to a previous subsequence adjacent to the subsequence, where −≦θ≦π.
[0154] The preamble sequence receiving apparatus 15 may further include:
[0155] a frequency offset estimation unit, configured to delay each subsequence included in the frequency offset estimation sequence by a length of K subsequences to obtain a new sequence, where K is a positive integer less than N; perform conjugation on the new sequence to obtain a processing sequence; multiply an element value in a subsequence in the processed sequence by a corresponding element value in a subsequence in the frequency offset estimation sequence to obtain (N−K)*M complex numbers; calculate a sum of the (N−K)*M complex numbers; obtain a phase of the sum to obtain a phase value; and divide the phase value by M to obtain a frequency offset estimation value.
[0156] The preamble sequence receiving apparatus 15 may further include:
[0157] a phase compensation unit, configured to: when θ≠0, before the frequency offset estimation unit divides the phase value by M, perform phase compensation on the phase value.
[0158] The phase compensation unit is specifically configured to rotate the phase value by a phase of φ, where φ is related to θ.
[0159] As shown in
[0160] The sending apparatus 14 configured to generate a frequency offset estimation sequence, where the frequency offset estimation sequence includes N subsequences each with a length of M, N is a positive integer greater than or equal to 2, and M is a positive integer; generate a prefix and a suffix based on the frequency offset estimation sequence; add the prefix and the suffix before and after the frequency offset estimation sequence respectively to form a preamble sequence, where the prefix and the suffix are used for canceling multipath interference; and add the preamble sequence to a data packet and send the data packet to a receive end.
[0161] The receiving apparatus 15 is configured to receive the data packet; extract the preamble sequence from the data packet, where the preamble sequence includes the prefix, the frequency offset estimation sequence, and the suffix in order, the prefix and the suffix are used for canceling multipath interference, the frequency offset estimation sequence includes N subsequences each with a length of M, N is a positive integer greater than or equal to 2, and M is a positive integer; and find the frequency offset estimation sequence from the preamble sequence according to the length of the prefix.
[0162] Further, the sending apparatus 14 is specifically configured to generate a bit stream; modulate the bit stream to a preset data modulation format, where the bit stream is used as a basic subsequence, and a length of the basic subsequence is M; replicate the basic subsequence to obtain a long sequence including N basic subsequences; and rotate each subsequence included in the long sequence by a phase of θ relative to a previous subsequence adjacent to the subsequence, to obtain the frequency offset estimation sequence, where −π≦θ≦π.
[0163] Further, the sending apparatus 14 is specifically configured to replicate last L1 element values included in the first subsequence of the frequency offset estimation sequence, and separately rotate the replicated L1 element values by a phase of −θ to generate the prefix; and replicate first L2 element values included in the last subsequence of the frequency offset estimation sequence, and separately rotate the replicated L2 element values by a phase of θ to generate the suffix, where L1 and L2 are set by the sending apparatus 14 according to a channel multipath feature, and L1 and L2 are integers not greater than M.
[0164] Further, the sending apparatus 14 is specifically configured to add the prefix before the first subsequence of the frequency offset estimation sequence and add the suffix after the last subsequence of the frequency offset estimation sequence.
[0165] Optionally, each subsequence included in the frequency offset estimation sequence extracted by the receiving apparatus 15 is rotated by a phase of θ relative to a previous subsequence adjacent to the subsequence, where −π≦θ≦π.
[0166] Further, the receiving apparatus 15 may be further configured to delay each subsequence included in the frequency offset estimation sequence by a length of K subsequences to obtain a new sequence, where K is a positive integer less than N; perform conjugation on the new sequence to obtain a processing sequence; multiply an element value in a subsequence in a processed sequence by a corresponding element value in a subsequence in the frequency offset estimation sequence to obtain (N−K)*M complex numbers; calculate a sum of the (N−K)*M complex numbers; obtain a phase of the sum to obtain a phase value; and divide the phase value by M to obtain a frequency offset estimation value.
[0167] Further, the receiving apparatus 15 may be further configured to: when θ≠0, before the phase value is divided by M, perform phase compensation on the phase value.
[0168] Further, when performing phase compensation on the phase value, the receiving apparatus 15 is specifically configured to rotate the phase value by a phase of φ, where φ is related to θ.
[0169] In conclusion, the technical solutions provided in the embodiments of the present invention are applicable to a DOCSIS single carrier modulation system. A prefix and a suffix are added to a frequency offset estimation sequence at a transmit end, so as to improve performance of anti-multipath interference of the frequency offset estimation sequence. The frequency offset estimation sequence may be a cycle sequence or a rotation sequence. Specially, when the frequency offset estimation sequence is a rotation sequence, an estimation range of a frequency offset may be freely adjusted, and the rotation sequence has a wider estimation range and higher estimation accuracy. A receive end may perform more accurate frequency offset estimation based on the received frequency offset estimation sequence. The receive end multiples the original frequency offset estimation sequence by a frequency offset estimation sequence obtained after delay and conjugation, calculates a sum of obtained multiple complex-number product values, and then obtains a phase of the sum. This greatly decreases a quantity of phase collection operations, reduces calculation complexity, and ensures good frequency offset estimation accuracy.
[0170] A person skilled in the art should understand that the embodiments of the present invention may be provided as a method, a system, or a computer program product. Therefore, the present invention may use a form of hardware only embodiments, software only embodiments, or embodiments with a combination of software and hardware. Moreover, the present invention may use a form of a computer program product that is implemented on one or more computer-usable storage media (including but not limited to a disk memory, a CD-ROM, an optical memory, and the like) that include computer-usable program code.
[0171] The present invention is described with reference to the flowcharts and/or block diagrams of the method, the device (system), and the computer program product according to the embodiments of the present invention. It should be understood that computer program instructions may be used to implement each process and/or each block in the flowcharts and/or the block diagrams and a combination of a process and/or a block in the flowcharts and/or the block diagrams. These computer program instructions may be provided for a general-purpose computer, a dedicated computer, an embedded processor, or a processor of any other programmable data processing device to generate a machine, so that the instructions executed by a computer or a processor of any other programmable data processing device generate an apparatus for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
[0172] These computer program instructions may be stored in a computer readable memory that can instruct the computer or any other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory generate an artifact that includes an instruction apparatus. The instruction apparatus implements a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
[0173] These computer program instructions may be loaded onto a computer or another programmable data processing device, so that a series of operations and steps are performed on the computer or the another programmable device, thereby generating computer-implemented processing. Therefore, the instructions executed on the computer or the another programmable device provide steps for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
[0174] Although some preferred embodiments of the present invention have been described, persons skilled in the art can make changes and modifications to these embodiments once they learn the basic inventive concept. Therefore, the following claims are intended to be construed as to cover the preferred embodiments and all changes and modifications falling within the scope of the present invention.
[0175] Obviously, persons skilled in the art can make various modifications and variations to the embodiments of the present invention without departing from the spirit and scope of the embodiments of the present invention. The present invention is intended to cover these modifications and variations provided that they fall within the scope of protection defined by the following claims and their equivalent technologies.