The present application relates to a cooperative precoding method and a communication system, and more particularly, to a cooperative precoding method and a communication system capable of dealing with a multi-CFO issue in the cooperative precoding scheme.
In an autonomous vehicles (AVs) application, one vehicle may be served by multiple serving access points (APs). A virtual cell oriented from (or centered at) the vehicle is formed. Within the virtual cell, the serving APs which serve the vehicle may be coordinated by an anchor node. It is feasible to exploit a cooperative precoding scheme within the virtual cell. The cooperative precoding scheme has benefit of transmit diversity gain, which can enhance link quality.
Practically, carrier frequency offset (CFO) is an inherent problem for an OFDM (orthogonal frequency division multiplexing) system. For the virtual cell, the CFO problem becomes serious since every AP (transmitter) has its own CFO with respect to the vehicle (receiver) and CFOs of the APs may be different. In short, the cooperative precoding design would face a multi-CFO issue.
Therefore, how to deal with the multi-CFO issue in the cooperative precoding design is a significant objective in the field.
It is therefore a primary objective of the present application to provide a cooperative precoding method and a communication system capable of dealing with a multi-CFO issue in the cooperative precoding scheme.
An embodiment of the present application provides a cooperative precoding method which is applied in a communication system including a coordinating device and multiple serving stations. The cooperative precoding method includes the following steps: the coordinating device obtaining multiple carrier frequency offset (CFO) parameters of the serving stations with respect to a user device; generating multiple cooperative encoded sequences; assigning the cooperative encoded sequences to the serving stations, respectively, according to an order of the CFO parameters; and the serving stations transmitting the cooperative encoded sequences, respectively, to the user device. Each cooperative encoded sequence is transmitted over multiple subcarriers.
An embodiment of the present application further provides a communication system. The communication system includes a coordinating device and multiple serving stations, in which the serving stations are coupled to the coordinating device, configured to transmit multiple cooperative encoded sequences, respectively, to a user device, and each cooperative encoded sequence is transmitted over multiple subcarriers. The coordinating device obtains multiple carrier frequency offset (CFO) parameters of the serving stations with respect to the user device. The coordinating device assigns one cooperative encoded sequence to one serving station according to an order of the CFO parameters.
An embodiment of the present application further provides a cooperative precoding method which is applied in a communication system including a coordinating device and multiple serving stations. The cooperative precoding method includes the following steps: generating multiple cooperative encoded sequences; and the coordinating device coordinating the serving stations, such that the serving stations transmit the cooperative encoded sequences, respectively, to the user device, in which each cooperative encoded sequence is transmitted over multiple subcarriers. The step of generating the cooperative encoded sequences includes the following steps: performing a shift-and-multiply operation zero, one or multiple times on the original sequence, and the shift-and-multiply operation includes the following steps: obtaining a first cooperative encoded sequence; circularly shifting the first cooperative encoded sequence by K elements, so as to obtain a circular-shifted sequence, in which K is an integer larger than 1; and multiplying K leading elements of the circular-shifted sequence by a complex constant, so as to obtain a second cooperative encoded sequence.
An embodiment of the present application further provides a communication system. The communication system includes a coordinating device and multiple serving stations. The serving stations are coupled to the coordinating device, configured to transmit multiple cooperative encoded sequences, respectively, to a user device, in which each cooperative encoded sequence is transmitted over multiple subcarriers. The cooperative encoded sequences include an original sequence, the cooperative encoded sequences are generated by performing a shift-and-multiply operation zero, one or multiple times on the original sequence, and the shift-and-multiply operation includes the following steps: obtaining a first cooperative encoded sequence; circularly shifting the first cooperative encoded sequence by K elements, so as to obtain a circular-shifted sequence, in which K is an integer larger than 1; and multiplying K leading elements of the circular-shifted sequence by a complex constant, so as to obtain a second cooperative encoded sequence.
These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.
The communication system 10 may operate under an OFDM (Orthogonal Frequency Division Multiplexing) transmission scheme, and the cooperative encoded sequences XS_1-XS_N may be transmitted over a plurality of subcarriers (e.g., η subcarriers) among total subcarriers (e.g., NFFT subcarriers). That is, the η subcarriers may form a subset of the total NFFT subcarriers of the OFDM system.
In an embodiment, the serving stations AP_1-AP_N may be equipped with one antenna and the user device UD may be equipped with Nrx antenna(s).
For illustrative purpose, the cooperative encoded sequences XS_1-XS_N transmitted by the serving stations AP_1-AP_N may be represented as a set ECS={X(0), X(1), . . . , X(N−1)}, where X(n) within the set ECS is one of the cooperative encoded sequences XS_1-XS_N. Without loss of generality, X(0) may be viewed as an original/initial encoded sequence, which may be represented in a vector form as X(0)=[Xq, Xq+1, . . . , Xq+η−1]T, where Xq is a data symbol transmitted on the q-th subcarrier (or the subcarrier q). Referring to an encoding scheme introduced in the publication of F. Oggier and B. Hassibi, “An algebraic coding scheme for wireless relay networks with multiple-antenna nodes,” IEEE Trans. Signal Process., vol. 56, no. 7, July 2008 (hereinafter, “[1]”), X(n) can be generated by computing X(n)=Mηn−1X(0) (eq. 1), which is to multiply X(0) by the matrix Mη by (n−1) times, where the matrix M, may be expressed as eq. 2. Note that, multiplying X(0) by Mη (one or multiple times) is equivalent to performing a shift-and-multiply operation SM1 on X(0) (one or multiple times). That is, the matrix representation of the shift-and-multiply operation SM1 is the matrix Mη. Alternatively, X(n) may also be represented as X(n)=MηX(n−1). In an embodiment, γ can be any non-zero number. In an embodiment, γ=i=√{square root over (−1)}. Unless specified, the following description would assume γ=i=√{square root over (−1)}.
For simplicity, take η=3 as an example, given X(0)=[Xq, Xq+1, Xq+2]T, from eq. 1, it can be obtained that X(1)=[i Xq+2, Xq, Xq+1]T and X(2)=[i Xq+1, i Xq+2, Xq,]T, as a left portion of
Supposed that the subcarriers number η is larger than the serving stations number N, i.e., η≥N, and X(0)=[Xq, Xq+1, . . . , Xq+η−1]T, the encoded sequences would be X(1)=[i Xq+η−1, Xq, . . . , Xq+η−2]T, X(2)=[i Xq+η−2, i Xq+η−1, Xq, . . . , Xq+η3]T . . . , and X(N−1)=[i Xq+η−N+1, i Xq+η−N+2, . . . , i Xq+η−1, Xq, . . . , Xq+η−N]T, as a right portion of
Equivalently, the shift-and-multiply operation SM1 is to circularly shift a first cooperative encoded sequence (e.g., X(2)=[i Xq+η−2, i Xq+η−1, Xq, . . . , Xq+η−3]T) by “1” element, so as to obtain a circular-shifted sequence (e.g., CS1(X(2))=[Xq+η−3, i Xq+η−2, i Xq+η−1, Xq, . . . , Xq+η−4]T, where CS1(·) denotes a circularly shifting operation corresponding to shifting 1 element, and a matrix representation of the circularly shifting operation CS1, denoted as {tilde over (M)}η expressed as eq. 3), and to multiply a leading element of the circular-shifted sequence (e.g., Xq+η−3 within CS1(X(2))) by the complex constant γ, so as to obtain a second cooperative encoded sequence (e.g., X(3)=[i Xq+η−3 Xq+η−2, i Xq+η−1, Xq, . . . , Xq+η−4]T).
Note that, in the embodiment of γ=i=√{square root over (−1)}, multiplying the leading element of the circular-shifted sequence (e.g., Xq+η−3 within CS(X(2))) by the complex constant i is equivalent to rotating the leading element (e.g., Xq+η−3 within CS(X(2))) 90 degrees in a complex plane.
Given that the cooperative encoded sequences X(0), X(1), . . . , X(N−1) is generated, the communication system 10 would determine which cooperative encoded sequence is transmitted by which serving station, in order to further combat against carrier frequency offset (CFO). That is, to further enhance the link quality which suffers from CFO, the communication system 10 may assign one cooperative encoded sequence, e.g., X(n), to a particular serving station within the serving stations AP_1-AP_N.
In an embodiment, the communication system 10 may perform a process 30 to assign each cooperative encoded sequence to an appropriate serving station, so as to overcome the CFO imperfection. As
Step 302: The coordinating device obtains a plurality of CFO parameters of the plurality of serving stations with respect to the user device.
Step 304: The coordinating device performs a sorting operation on the plurality of CFO parameters, so as to obtain an ordered CFO list.
Step 306: Generate a plurality of cooperative encoded sequences.
Step 308: The coordinating device assigns the plurality of cooperative encoded sequences to the plurality of serving stations, respectively, according to the ordered CFO list.
Step 310: The plurality of serving stations transmit the plurality of cooperative encoded sequences, respectively, to the user device.
In Step 302, the coordinating device AN obtains a plurality of CFO parameters ε1-εN of the plurality of serving stations AP_1-AP_N with respect to the user device UD.
As known in the art, the CFO parameter εn (corresponding to serving station AP_n) may be expressed as εn=fc,n−fc,r. The frequency fc,n represents the actual carrier/central frequency transmitted from the serving station AP_n, related to the local oscillator of the radio frequency (RF) chain within the serving station AP_n. The frequency fc,r represents the carrier/central frequency corresponding to the local oscillator of the RF chain within the user device UD. In addition, the CFO parameter εn is also used to parameterize the CFO matrix C(εn)=FD(εn)FH and the signature waveform ck(εn) corresponding to the k-th subcarrier of the serving station AP_n, the k-th column vector of the CFO matrix, i.e., ck(εn)=C(εn) ek, where D(εn) is a diagonal matric which is expressed as eq. 4, F represents an FFT (Fast Fourier Transform) matrix with size NFFT, and ek is a NFFT×1 vector containing all zero entries except the k-th entry which is 1.
In an embodiment, the serving stations AP_1-AP_N may send the corresponding CFO parameters ε1-εN to the coordinating device AN via the connections in between.
In Step 304, the coordinating device AN performs a sorting operation on the plurality of CFO parameters ε1-εN, so as to obtain an ordered CFO list CL.
In an embodiment, the coordinating device AN may perform an ascending sorting operation on the plurality of CFO parameters ε1-εN to obtain the ordered CFO list CL, which can be expressed as CL={ε(1)≤ε(2)≤ . . . ≤ε(N)}=sorta(ε1, . . . , εN), where sorta(·) denotes the ascending sorting operation. The index “(n)” in the subscript with parenthesis represents the ordered index, which is to index the ordered CFO parameters within the ordered CFO list CL. The CFO parameter ε(n), which is one of the CFO parameters ε1-εN, is corresponding to the serving station AP_(n), and vice versa. Hence, the serving stations AP_(1)-AP_(N) are corresponding to the CFO parameters ε(1)-ε(N) within the ordered list CL.
Note that, a set formed by the serving stations AP_1-AP_N is the same as a set formed by serving stations AP_(1)-AP_(N). The difference between AP_1-AP_N and AP_(1)-AP_(N) is that AP_(1)-AP_(N) are ordered and represented by the ordered index according to the CFO parameters ε(1)-ε(N) within the ordered list CL.
In Step 306, the communication system 10 may generate the cooperative encoded sequences X(0), X(1), . . . , X(N−1) according to eq. 1. The cooperative encoded sequences X(0), X(1), . . . , X(N−1) may be generated either by the coordinating device AN or by the serving stations AP_1-AP_N which is not limited thereto.
Furthermore, in Step 308, the coordinating device AN may assign the cooperative encoded sequences X(0), X(1), . . . , X(N−1) to the serving stations AP_1-AP_N. Specifically, the coordinating device AN may assign the cooperative encoded sequences X(0), X(1), . . . , X(N−1) to the serving stations AP_(1)-AP_(N), respectively, such that, in Step 310, the serving stations AP_(1)-AP_(N) transmit the cooperative encoded sequences X(0), X(1), . . . , X(N-1), respectively, to the user device UD. Specifically, the coordinating device AN in Step 308 may assign the cooperative encoded sequence X(n−1) to the serving station AP_(n), such that in Step 310, the serving station AP_(n) may transmit the cooperative encoded sequence X(n−1) to the user device UD.
In an embodiment, the coordinating device AN may generate the cooperative encoded sequence X(n−1) and send the cooperative encoded sequence X(n−1) to the serving station AP_(n).
In another embodiment, the coordinating device AN may broadcast the original/initial encoded sequence X(0) to the serving stations AP_1-AP_N (or equivalently, AP_(1)-AP_(N)). Further, for the serving station AP_(n), to which the cooperative encoded sequence X(n-1) is assigned, the coordinating device AN may send the ordered index (n−1) to the serving station AP_(n), and therefore the serving station AP_(n) may generate X(n−1)=Mη(n−1)−1X(0) (eq. 5) by itself. Note that, “(n−1)−1” in eq. 5 represents an operational times for the serving station AP_(n) to generate X(n−1), and “(n−1)” either the left side of eq. 5 refers to the ordered index “(n−1)”. In the current embodiment, it is equivalent that the coordinating device AN determines the operational times “(n−1)−1”, and the serving station AP_(n) to generate X(n−1) according to the operational times “(n−1)−1”, where the operational times “(n−1)−1” is the ordered index “(n−1)” minus 1.
Rationale behind the process 30 is that, for two serving stations AP_n and AP_k, simulation results show that link quality in terms of bit error rate (BER) would degrade as a CFO difference Δεn,k=εn−εk becomes negative. Referring to
In the embodiment of the process 30, the subcarriers number η is larger than the serving stations number N, i.e., η≥N.
Note that, the process 30 requires the serving stations to feedback the CFO information to the coordinating device AN, which occupies more network resources for feedback mechanism.
Alternatively, the communication system 10 may perform a process 50 to perform another cooperative precoding scheme to overcome the CFO imperfection. As
Step 502: Generate a plurality of cooperative encoded sequences.
Step 504: The coordinating device coordinates the plurality of serving stations, such that the plurality of serving stations transmit the plurality of cooperative encoded sequences, respectively, to the user device.
In the embodiment of the process 50, it is assumed that the number of subcarriers η is larger than K times the number of serving stations N, i.e., η≥K N, where K is an integer larger than 1.
In Step 502, the coordinating device AN or the serving stations AP_1-AP_N generates the cooperative encoded sequences XS_1-XS_N, forming a set ECS'={X(0), X′(1), . . . , X′(N−1)}. Different from the sequence X(n) generated by eq. 1, X′(n) within the set ECS′ is generated by computing X′(n)=MηK(n−1)X(0) (eq. 7). In other words, the coordinating/serving device perform a (another) shift-and-multiply operation SM2 on X(0) to generate X′(1), . . . , X′(N−1). The shift-and-multiply operation SM2 is to circularly shift a first cooperative encoded sequence (e.g., X(0)=[Xq, Xq+1, . . . , Xq+η−1]T) by “K” element, so as to obtain a circular-shifted sequence (e.g., CSK(X(0))=[Xq+η−K, Xq+η−K+1, . . . , Xq+η−1, Xq, . . . , Xq+η−K−1]T, where CSK(·) denotes a circularly shifting operation corresponding to shifting “K” element, and a matrix representation of the circularly shifting operation CSK is the matrix {tilde over (M)}ηK, {tilde over (M)}η expressed as eq. 3), and to multiply K leading elements of the circular-shifted sequence (e.g., Xq+η−K, Xq+η−K+1, . . . , Xq+η−1 within CSK(X(0))) by the complex constant γ(e.g., i), so as to obtain a second cooperative encoded sequence (e.g., X′(1)=[i Xq+η−K, i Xq+η−K+1, . . . , i Xq+η−1, Xq, . . . , Xq+η−K−1]T).
For simplicity, take K=2, N=3 and η=6 as an example, given X(0)=[Xq, Xq+1, Xq+2, Xq+3, Xq+4, Xq+5]T, from eq. 7, it can be obtained that X′(1)=[i Xq+4, i Xq+5, Xq, Xq+1, Xq+2, Xq+3]T and X′(2)=[i Xq+2, i Xq+3, i Xq+4, i Xq+5, Xq, Xq+1]T, as
In Step 504, the coordinating device AN may arbitrarily assign one of the cooperative encoded sequences X(0), X′(1), . . . , X′(N−1) to one of the serving stations AP_1-AP_N, and each serving station transmits its corresponding (assigned) cooperative encoded sequence to the user device UD.
Rational behind the process 50 (especially Step 504) is that, given X′(n) is computed by eq. 7, according to simulation results, which serving station is assigned to transmit X′(n) would not affect link quality of BER performance. Specifically,
Inspired by the BER simulation results shown in
In another perspective, the process 30 may be viewed as a close-loop cooperative precoding scheme, since the process 30 requires CFO feedback. On the other hand, the process 50 may be viewed as an open-loop cooperative precoding scheme, since the process 50 requires no CFO feedback.
In summary, the present application utilizes the shift-and-multiply operation to generate the cooperative encoded sequences. The present application may perform the (ascending) sorting operation on the CFO parameters corresponding to the serving stations, to determine which serving station is assigned to transmit which cooperative encoded sequence. Further, the present application may perform the shift-and-multiply operation with multiple shifted elements to generate the cooperative encoded sequences. In this case, the cooperative encoded sequence may be arbitrarily assigned to the serving stations. Both methods are able to combat against CFO imperfection.
Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.
This application claims the benefit of U.S. provisional application No. 62/870,681, filed on Jul. 4, 2019, which is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
20190181994 | Chen | Jun 2019 | A1 |
Number | Date | Country | |
---|---|---|---|
20210006304 A1 | Jan 2021 | US |
Number | Date | Country | |
---|---|---|---|
62870681 | Jul 2019 | US |