LS Channel Estimation and Signal Separation for UHF RFID Tag Collision Recovery on the Physical Layer

In a passive ultra-high frequency (UHF) radio-frequency identification (RFID) system, tag collision is generally resolved on a medium access control (MAC) layer. However, some of collided tag signals could be recovered on a physical (PHY) layer and, thus, enhance the identification efficiency of the RFID system. For the recovery on the PHY layer, channel estimation is a critical issue. Good channel estimation will help to recover the collided signals. Existing channel estimates work well for two collided tags. When the number of collided tags is beyond two, however, the existing estimates have more estimation errors. In this paper, we propose a novel channel estimate for the UHF RFID system. It adopts an orthogonal matrix based on the information of preambles which is known for a reader and applies a minimum-mean-square-error (MMSE) criterion to estimate channels. From the estimated channel, we could accurately separate the collided signals and recover them. By means of numerical results, we show that the proposed estimate has lower estimation errors and higher separation efficiency than the existing estimates.


Introduction
Ultra-high frequency (UHF) radio frequency identification (RFID) is a non-contact electronic identification technology [1]. UHF RFID has a lot of advantages, such as long communication range, high security, large storage capacity, and so on. Additionally, it is easily integrated into enterprise management information systems. As UHF RFID is widely used in various kinds of information systems, it becomes one of key technologies to identify objects in the Internet of Things. In a passive UHF RFID system, an RFID reader identifies multiple tags on a shared wireless channel. When the multiple tags simultaneously transmit their signals to the reader, collisions will happen [2]. Many conventional anti-collision algorithms resolve the problem only on a media access control (MAC) layer [3][4][5][6][7][8][9]. The algorithms consider the collided signals as useless information, so their identification efficiency is not high.
In recent years, an MAC-physical (MAC-PHY) cross-layer approach [10][11][12][13][14][15] is introduced. The approach combines random multiple access on an MAC layer with signal separation on a PHY layer to resolve the tag collisions. The idea uses the random multiple access to prevent tag collision on the MAC layer. If there are still some collided tags, they will then be separated on the PHY layer. In the approach, the collided signals are not longer considered as useless information. Thus, the approach has higher communication efficiency than pure MAC layer methods. For the cross-layer approach, the estimation of the wireless channel coefficient is an important issue. Good channel estimation will help to correctly recover the collided tag signal on the PHY layer. However, the channel estimation in a UHF RFID system is some different from that in other wireless communication systems. First, the estimation has to be performed under unsynchronized condition. Each UHF RFID tag has different symbol period and delay [16]. The passive tag can not synchronize its backscattering symbols due to its simple circuit [17]. Second, pilot-based channel estimation can not be performed in the RFID system. Sometimes, there are no pilots at all, e.g. TRext = 0 in EPC C1 Gen2 [16]. Moreover, we cannot alter the pilots to adapt the channel estimation because they are pre-designed.
Constellation mapping (CM) [10] is an algorithm proposed to recover the collided tag signals on the PHY layer. The algorithm maps collided signals to an orthogonal/phase (IQ) plane and then recovers the mapped signals through an unsupervised clustering method. Since there is no channel estimation in the algorithm, it is actually a blind method. Its computational complexity increases with the number of the collided tags. When the number of the collided tags is beyond two, especially, the algorithm is very difficult to separate the collided signals. The single-antenna zero-forcing (SAZF) algorithm [11] can also recover the collided signals on the PHY layer. The algorithm is not a blind method and, thus, has lower computational complexity since it uses the channel information. SAZF projects collided signals onto an orthogonal space of the signals and then searches an extreme value to estimate the channel. Under a single-receiving-antenna environment, however, the algorithm can estimate the channel for only two collided tags. When the number of tags is beyond two, SAZF does not give a solution. Successive-interference-cancel (SIC) algorithm [12] can recover more than two collided tag signals on the physical layer. In the algorithm, each step of the interference cancelation requires accurate channel information. However, the SIC algorithm's channel estimate (SCE) adopts an inner-product method, which will produce accumulated errors. The errors will degrade the performance of the estimate when the number of collided tags increases. The least-squares channel estimate based on preambles (LCE) algorithm [13] uses the method of the inner product to estimate channels. The algorithm can estimate the channels of more than two collided tags. Unfortunately, the estimated precision of the algorithm is not high.
In this paper, we propose a channel estimation algorithm called orthogonal-matrix least-square channel estimate (OLCE). Since the preambles are known for a reader, the reader can use the information of preambles to obtain an orthogonal matrix under minimum mean square errors (MMSE) criterion. The algorithm can accurately estimate the channel coefficients of more than two collided tags. From the estimated channel coefficients, then, we recover the UHF RFID tag collision on the PHY layer. Through numerical results, the estimation errors of the algorithm are lower than the existing algorithms, and the separation efficiencies of the proposed algorithm are higher than the existing algorithms.

System Model
In this paper, we consider a basic communication between several tags and an RFID reader equipped with a single receiving antenna. During the communication, the reader does not modulate any signals. It provides the RFID tags with energy in the form of a continuous carrier transmission. For transmitting signals to the reader, tags use backscatter modulation. Given N tags transmitting in a certain slot, each tag n, n = 0,1, . . . N´1 changes from absorbing energy to reflecting energy, by mismatching their antenna input impedance. After receiving the N tag collided signal, the reader downconverts the receive signals to the baseband. Hence, the complex-valued baseband signal at the receive antenna is [11,12]: where h n " h f n h b n ? ∆σ n is a flat fading linear time invariant channel in a very short time communication [12] in which h f n denotes a forward channel (the reader to the tag n) and h b n a backward channel (the tag n to the reader) coefficient, ∆σ n is normalized differential radar cross section; ξ(t) is additive white Gaussian noise added at the reader; c n ptq " ř K´1 k"0 d n,k gpt´ka n´bn q realizes an on-off key, and features different symbol period a n and symbol delay b n [14,18], K is the length of symbol block, d n,k P {0,1} denotes the transmitted symbol and g(t) denotes the pulse modulation signal.
In EPC C1 Gen2 [16] and ISO18000-6 [19] standards, there is a quiet period before tags reflect the signal. In this period, all tags absorb energy. The reader only discovers the carrier leakage L, i.e., Z L (t) « L when d n,k = 0. Such a period is also defined in [11] before the tags respond. We can utilize this period to estimate the carrier leakage. Hence, we make Z(t) = Z L (t)´L, the Equation (1) can be expressed as:

The Related Work of Channel Estimation
The problem of channel estimation in UHF RFID systems actually is how to estimate the channel coefficient h n from the collided signals Z(t).
The SAZF algorithm maps the collided signals to an inphase/quadrature (IQ) plane. The IQ plane for two collided signals is shown in Figure 1. According to [11], the channel coefficients of two tags can be estimated by: h 0 " S pr,aq´Spa,aq " min k tS PK rksu´S pa,aq where S (a,a) = L denotes a state which both tags absorb; S (r,a) = L + h 0 and S (a,r) = L + h 1 denote states which one absorbs and the other reflects; S (r,r) = L + h 0 + h 1 denotes a state which both tags reflect; and S P K is the orthogonal subspace of a signal space S P shown in Figure 1.  realizes an on-off key, and features different symbol period n a and symbol delay n b [14,18], K is the length of symbol block, In EPC C1 Gen2 [16] and ISO18000-6 [19] standards, there is a quiet period before tags reflect the signal. In this period, all tags absorb energy. The reader only discovers the carrier leakage L , i.e., ( ) Such a period is also defined in [11] before the tags respond. We can utilize this period to estimate the carrier leakage. Hence, we make ( ) ( ) (1) can be expressed as:

The Related Work of Channel Estimation
The problem of channel estimation in UHF RFID systems actually is how to estimate the channel coefficient n h from the collided signals ( ) Z t . The SAZF algorithm maps the collided signals to an inphase/quadrature (IQ) plane. The IQ plane for two collided signals is shown in Figure 1. According to [11], the channel coefficients of two tags can be estimated by: is the orthogonal subspace of a signal space P S shown in Figure 1.
From Equation (3), SAZF can estimate the channel coefficients for two collided tags. However, From Equation (3), SAZF can estimate the channel coefficients for two collided tags. However, when the number of tags is beyond two, SAZF cannot estimate the channel coefficients. Since the estimated equation is indeterminate, the multi-antenna technology can solve the problem [11,20]; however, this would increase the size of reader and cost. SCE adopts SIC technique to estimate the channel coefficients. In SCE, the n-th tag's channel coefficient can be estimated by [12]: h n " @ z n ptq, φ a n ,b n ptq D { @ φ a n ,b n ptq, φ a n ,b n ptq where h 0 > h 1 > . . . h N´1 , n = 0,1, . . . ,N´1 and initial z 0 (t) = Z(t); x‚y denotes the inner product computation; ϕ(t) P {0,1} is a mother function and has the same structure as preamble signals which are known for a reader. φ a n ,b n ptq " φrpt´b n q{a n s denotes a daughter function of the mother function ϕ(t).
The parameters a n and b n in Equation (4) are unknown and need to be estimated. Generally, the tag modulation frequency will drift over time. However, the duration of the preamble is very short and a n could be consider invariant within the duration [15]. Then, a n and b n can be estimated by [12]: where A and B denote the search ranges of α and β, respectively. Note that the estimated result in Equation (6) should be the symbol period and delay of the tag with the strongest preambles in z n (t).
The algorithm can estimate the channel coefficients base on the signal strength of the collided tags, cumulative errors increase when the number of collided tags increases. Therefore, the estimated performance would degrade when the number of tags increases. LCE uses the information of the preambles and an LS criterion to estimate the channel coefficients. Since the preambles are known, we can create a daughter function φ u m ,v m ptq which has the same structure as the preamble φ a n ,b n ptq, where u m and v m are random numbers choose from the ranges A and B, respectively, and let y m denote the inner product of Z(t) and φ u m ,v m ptq, i.e.: From Equations (2) and (7), we will have: If: We can change Equation (7) into: Hence, Equation (11) could be written in a matrix form as: where: Thus, the channel coefficient vector can be given by LS estimation, then [13]: where P + denotes the pseudo inverse of P. Here, the matrix P in Equation (16) should be column full rank. Thus, we should guarantee M ě N. Although LCE could estimate the channels of more than two collided tags, the estimation errors would not be lower from the numerical results in [13].

OLCE Algorithm
In this subsection, we will describe our OLCE algorithm, which could estimate the channels of more than two tags. What's more, the algorithm has the minimum MSE. OLCE uses the information of the preambles. From Equations (1) and (2), the received signal within the duration of the tags' preambles could be written as: where t P [0,T] and T is one minimum preamble duration in all collided tag. We change Equation (18) into a matrix form as: where: If X is a matrix of full column rank, we have the estimated channelĤ " X`Z by LS, where X + denote the pseudo-inverse of X. Hence, the MSE of the estimation could be derived as [21]: where EpΞΞ H q " σ 2 I MˆM and σ 2 is the variance of the white noise. In order to obtain the minimum MSE in Equation (20), we require X H X " σ 2 1 I NˆN where σ 2 1 is a constant [21]. In this scenario, the matrix X is orthogonal. Next, we require obtaining the matrix.
First, we show a composite signal as: where γ n , n " 0, 1, . . . N´1 is defined as matched coefficients. The coefficients could be selected as any numbers as long as γ n 1 ‰ γ n 2 ‰ γ n 3`γ n 4 ‰ γ n 5`γ n 6`γ n 7 ‰ . . . when n 1 ‰ n 2 ‰ n 3 . . . and so on, where n j P {0,1, . . . N´1}. From Equations (18) and (21), the composite signal y(t) is the same as z(t), except γ n " h n . Since a n and b n could be estimated from Equation (6), the value of y(t) would be known. Then, we detect the time t n j when the value of the composite signal is equal to γ n . That is ypt n j q " γ n , j = 0,1, . . . J´1 where J is the number of times when the value is γ n . Thus, Equation (19) could be changed into: where: Sensors 2016, 16, 442 . . x n pt N´1 J´1 qs T , n = 0,1, . . . ,N´1 x n pt n j q " ϕ a n ,b n pt n j q, j = 0,1, . . . ,J´1 Correspondingly, Ξ is constituted by zpt n j q and ξpt n j q, respectively. Since ypt n j q " γ n , only one item of ϕ a n ,b n pt n j q, n = 0, 1, . . . , N´1 is 1 and the others are all 0. That is, only one column is 1 and the others are all 0, for the (n + 1)(j + 1)-th row in the matrix  (20) could be obtained. Therefore, the estimated channel by LS can be given by:

The Performance Analysis of Channel Estimation
In this subsection, we will analyze the performance of the above channel estimation. SAZF can estimate the channel coefficients for two collided tag. However, when the number of tags is beyond two, SAZF can not estimate the channel coefficients. The I/Q plane for three collided signals is shown in Figure 2. From Equation (3), min k tS K rksu´S pa,a,aq " S pr,r,aq´Spa,a,aq " h 0`h1 , where S pa,a,aq denotes a state which three tags absorb and S pr,r,aq denotes a state which two tags reflect and anther one absorbs. The result of the equation above is the superposition of two channel coefficients. Thus, the equation is indeterminate.  (18) and (21), the composite signal ( ) y t is the same as ( ) z t , except n   n h . Since n a and n b could be estimated from Equation (6), the value of ) (t y would be known. Then, we detect the time n j t when the value of the composite signal is where J is the number of times when the value is n  . Thus, Equation (19) could be changed into: where:  (20) could be obtained. Therefore, the estimated channel by LS can be given by:

The Performance Analysis of Channel Estimation
In this subsection, we will analyze the performance of the above channel estimation. SCE adopts an inner-product method, which will produce accumulated errors. The more the number of collided tags, the greater the accumulated errors. Specific analysis as follows, substituting n = 0 into Equation (4), we have: It is seen that the second item in the right side of Equation (24) is estimated error, which will be accumulated ontoĥ 1 ,ĥ 2 ,ĥ N´1 . Therefore, the estimated performance would degrade when the number of tags increases.
LCE adopt the method of inner product to structure observation matrix . This greatly reduces the computational complexity when using the LS to solve the pseudo-inverse matrix P + . However, the estimation precision of LCE algorithm is far lower than OLCE algorithm. This is because M of the observation matrix is lesser, and does not meet P H P " σ 2 2 I NˆN where σ 2 2 is a constant. This makes the channel estimation of LCE algorithm not have the minimum MSE.
However, the OLCE algorithm uses the minimum MSE criterion, its observation matrix " X meets " X H" X " JI NˆN . This results in a smaller estimation error. What is more, due to the construction of orthogonal matrix, it does not need to make use of all of the information of the preamble, greatly reducing the computational complexity. The OLCE and LCE algorithms are using the LS criterion to estimate channel coefficients, but OLCE's estimation error is far lower than LCE's.

Signal Separation
Next, we would recover collided tag signals through the channel coefficients. Firstly, we project the collided signals to an IQ plane and get a constellation. Then, we could find several clustering centers which could be obtained from the channel coefficients. When the number of the collided tags is three, e.g., the received signal model becomes: In this case, there are eight clustering centers, h 0`h1`h2 , h 0`h1 , h 0`h2 , h 1`h2 , h 0 , h 1 , h 2 , and 0. Through calculating Euclidean distances between each sample point of Z(t) and the clustering centers, respectively, we would make a decision for each of tag signals. The example of three collided tags is shown in Figure 3.
number of tags increases.
LCE adopt the method of inner product to structure observation matrix . This greatly reduces the computational complexity when using the LS to solve the pseudo-inverse matrix  P . However, the estimation precision of LCE algorithm is far lower than OLCE algorithm. This is because M of the observation matrix is lesser, and does not meet

Signal Separation
Next, we would recover collided tag signals through the channel coefficients. Firstly, we project the collided signals to an IQ plane and get a constellation. Then, we could find several clustering centers which could be obtained from the channel coefficients. When the number of the collided tags is three, e.g., the received signal model becomes: In this case, there are eight clustering centers, 0 and 0. Through calculating Euclidean distances between each sample point of   Z t and the clustering centers, respectively, we would make a decision for each of tag signals. The example of three collided tags is shown in Figure 3. In summary, we give the steps of the algorithm and a part of pseudo-code as follows: 1. Estimate symbol period n a and symbol delay n b from Equation (6); In summary, we give the steps of the algorithm and a part of pseudo-code as follows: 1. Estimate symbol period a n and symbol delay b n from Equation (6); 2. Obtain the signal y(t) in Equation (21) and detect the time t n j when ypt n j q " γ n , j " 0, 1, . . . J´1; Set γ 0 = 1, γ 1 = 2, γ 2 = 4, . . . , γ n = 2 n´1 Obtain the signal y(t) for t = 1:T if y(t) == γ 0 j = m 0 ; t n j " t; m 0 ++; end if y(t) == γ 1 j = m 1 ; t n j " t; m 1 ++; end . for q = 1: length(clustering centers) distance = Euclidean distance (z(t), clustering centers(q)); end rv,cs = min(distance); separate the collided signals

System Settings
We evaluate the performance of the proposed algorithm by numerical experiments. In the experiments, we consider a scenario with a single-receive-antenna reader and some passive tags. The number of tags is from 10 to 600. When multiple tags select a time slot simultaneously, the tag signals will collide with each other. Then, we will estimate the channel coefficients and separate the collided tags. We individually perform each experiment 5000 times, and average 5000 experiment results as the final results. Some system parameters in the experiments are referenced to EPC C1 Gen2 standard [16], and the others are referenced to the literature [11,12,15]. The detailed parameters are as follows.

‚
Channel: a flat fading linear time invariant channel during one identification cycle [12,15], the values of h n , n = 0,1, . . . N´1 are random numbers from (0, 1] and h n " h m when n " m ‚ Nominal link frequency: f lp = 50 kHz [12,16] ‚ Symbol rate and delay: each tag's symbol rate a n deviates up to˘22% from f lp , the symbol rate deviation among tags is also up to˘22%, and each tag's symbol delay b n is less than 24 µs [11,16].

‚
In OLCE algorithm: When the number of collided tags is 2, 3, 4, and 5, J is 120, 35, 15, and 5. The reason why J is chosen as such values is that, J needs to satisfy the orthogonal matrix condition and decrease with the number of collided tags

Estimation Error
In order to evaluation the performance of channel estimation, we consider the relative error of channel estimation as the performance index under different signal to noise ratio (SNR), where the relative error is defined as: e "ˇˇˇˇĤ´HˇˇˇˇMˇˇˇˇHˇˇˇˇˆ100% (26) in whichˇˇˇˇ‚ˇˇˇˇdenotes the Euclidean norm,Ĥ is the estimated value of channel parameter and H is the set value of channel parameter. And SNR is defined as: |h n c n | 2¸{ σ 2 (27) Figure 4 gives the relative error e for SCE, SAZF, LCE, and OLCE when the number of collided tags is three and SNR ranges from 0 to 20 dB. In the figure, the three error curves of SCE, SAZF, and LCE are higher than 10˝when SNR is smaller than 6 dB. This indicates that the performance of their channel estimation is poor under a small SNR range. The reason is that there are not only inter-tag interferences but also more noisy interferences. However, the error curve of OLCE is lower than 10´1. When SNR is 20 dB, the error curves of SAZF and SCE are higher than 10´1, LCE's is lower than 10´1, and OLCE's is lower than 10´3. What is more, when SNR is from 0 to 20 dB, the error curve of OLCE is always lower than the others. Since SAZF adopts the single receiving antenna, SAZF's separation equation becomes indeterminate when the number of collided tags is beyond two. Hence, it does not work well. Since SCE adopts the SIC technique, cumulative errors will increase when the number of collided tags increases. Hence, the estimation errors will also increase. Since LCE adopts the inner product and its interferences will be accumulated. Therefore, SCE, SAZF, and LCE do not work better than OLCE under three collided tags.  Figure 4 gives the relative error e for SCE, SAZF, LCE, and OLCE when the number of collided tags is three and SNR ranges from 0 to 20 dB. In the figure, the three error curves of SCE, SAZF, and LCE are higher than 10° when SNR is smaller than 6 dB. This indicates that the performance of their channel estimation is poor under a small SNR range. The reason is that there are not only inter-tag interferences but also more noisy interferences. However, the error curve of OLCE is lower than 10 −1 . When SNR is 20 dB, the error curves of SAZF and SCE are higher than 10 −1 , LCE's is lower than 10 −1 , and OLCE's is lower than 10 −3 . What is more, when SNR is from 0 to 20 dB, the error curve of OLCE is always lower than the others. Since SAZF adopts the single receiving antenna, SAZF's separation equation becomes indeterminate when the number of collided tags is beyond two. Hence, it does not work well. Since SCE adopts the SIC technique, cumulative errors will increase when the number of collided tags increases. Hence, the estimation errors will also increase. Since LCE adopts the inner product and its interferences will be accumulated. Therefore, SCE, SAZF, and LCE do not work better than OLCE under three collided tags.  Figure 5 gives the relative error of channel estimation for SCE, SAZF, LCE, and OLCE when SNR is 16 dB and the number of collided tags ranges from two to five. From the figure, when the number of collided tags is two, the error curves of SCE, SAZF, and LCE are higher than 10 −2 , and OLCE's is lower than 10 −3 . When the number of collided tags is beyond two, the error curve of OLCE is always lower than the others. Even though the number of collided tags is five, the error curve of OLCE is also below 10 −1 . This indicates that OLCE could guarantee the minimum MSE.  Figure 5 gives the relative error of channel estimation for SCE, SAZF, LCE, and OLCE when SNR is 16 dB and the number of collided tags ranges from two to five. From the figure, when the number of collided tags is two, the error curves of SCE, SAZF, and LCE are higher than 10´2, and OLCE's is lower than 10´3. When the number of collided tags is beyond two, the error curve of OLCE is always lower than the others. Even though the number of collided tags is five, the error curve of OLCE is also below 10´1. This indicates that OLCE could guarantee the minimum MSE. Figure 4. Relative error e of channel estimation for SCE, SAZE, LCE, and OLCE when the number of collided tags is three and SNR ranges from 0 to 20 dB. Figure 5 gives the relative error of channel estimation for SCE, SAZF, LCE, and OLCE when SNR is 16 dB and the number of collided tags ranges from two to five. From the figure, when the number of collided tags is two, the error curves of SCE, SAZF, and LCE are higher than 10 −2 , and OLCE's is lower than 10 −3 . When the number of collided tags is beyond two, the error curve of OLCE is always lower than the others. Even though the number of collided tags is five, the error curve of OLCE is also below 10 −1 . This indicates that OLCE could guarantee the minimum MSE.

Separation Efficiency
In order to evaluate the performance of the signal separation, we consider separation efficiency under different signal to noise ratio (SNR), where the separation efficiency is defined as: where n s is the number of tags which are successfully separated, and n t is the total number of collided tags. In the experiment, a tag would be regarded as unsuccessful identification as long as there is one bit error. Figure 6 gives the separation efficiency for SCE, SAZF, LCE, and OLCE under different SNR when the number of collided tags is two. From the figure, the separation efficiency of SCE is lower than SAZF and LCE's when SNR is from 0 to 4 dB. The reason is that SCE separates collided tags by the strengths of tag signals. When the strengths of tag signals are very different, they are less affected by noise. When SNR increase, the separation efficiencies of SAZF and LCE are higher than SCE. The reason is that the accumulative errors make SCE separate only one tag whose signal strength is the highest. Thus, the maximum efficiency of SCE is only 50%. On the other hand, the separation efficiency of OLCE is higher than the others whatever SNR is. This means that OLCE has better estimation performance.

Separation Efficiency
In order to evaluate the performance of the signal separation, we consider separation efficiency under different signal to noise ratio (SNR), where the separation efficiency is defined as: where s n is the number of tags which are successfully separated, and t n is the total number of collided tags. In the experiment, a tag would be regarded as unsuccessful identification as long as there is one bit error. Figure 6 gives the separation efficiency for SCE, SAZF, LCE, and OLCE under different SNR when the number of collided tags is two. From the figure, the separation efficiency of SCE is lower than SAZF and LCE's when SNR is from 0 to 4 dB. The reason is that SCE separates collided tags by the strengths of tag signals. When the strengths of tag signals are very different, they are less affected by noise. When SNR increase, the separation efficiencies of SAZF and LCE are higher than SCE. The reason is that the accumulative errors make SCE separate only one tag whose signal strength is the highest. Thus, the maximum efficiency of SCE is only 50%. On the other hand, the separation efficiency of OLCE is higher than the others whatever SNR is. This means that OLCE has better estimation performance.  Figure 7 gives the separation efficiency for SCE, SAZE, LCE, and OLCE under different SNR when the number of collided tags is three. From the figure, when SNR is from 0 to 13 dB, the separation efficiency of SCE is higher than SAZF and LCE. When SNR is from 14 to 20 dB, the separation efficiency of LCE is higher than SAZF and SCE. When SNR is 20 dB, the separation efficiencies of SAZF and SCE are about 35%, and LCE's is about 65%. However, the separation efficiency of OLCE is always higher than the others, and its maximum efficiency achieve 100%. This result shows that OLCE works better than the others when the number of collided tag is three.  Figure 7 gives the separation efficiency for SCE, SAZE, LCE, and OLCE under different SNR when the number of collided tags is three. From the figure, when SNR is from 0 to 13 dB, the separation efficiency of SCE is higher than SAZF and LCE. When SNR is from 14 to 20 dB, the separation efficiency of LCE is higher than SAZF and SCE. When SNR is 20 dB, the separation efficiencies of SAZF and SCE are about 35%, and LCE's is about 65%. However, the separation efficiency of OLCE is always higher than the others, and its maximum efficiency achieve 100%. This result shows that OLCE works better than the others when the number of collided tag is three.  Figure 8 gives separation efficiency for SCE, SAZE, LCE, and OLCE under different SNR when the number of collided tags is four. From the figure, the separation efficiency of OLCE is always higher than SCE, SAZF, and LCE. The maximum efficiency of SCE and SAZF could achieve is only 25%, which means the two algorithms successfully separate only one tag at most. LCE's maximum efficiency is close to 50%. On the contrary, OLCE's maximum efficiency is close to 100%. This means that it could nearly separate all of collided tags. From this result, OLCE also works better than SCE, SAZF, and LCE when the number of collided tags is four.

STR Performance
The performance of tag identification is greatly improved by using the separation technique. In the cross-layer approach, the collided time slot is no longer considered as useless. Thus, it has higher identification efficiency than the pure MAC layer method. In this paper, we consider the number of successful identification tags to the number of total time slots ratio (STR) as the measurement of recognition performance, where STR is defined as: in which s N is the number of successful identification tags, and L N is the number of total time slots. For the cross-layer approach in this numerical experiment, the MAC algorithm is chosen as dynamic frame slot Aloha (DFSA), and the channel estimation on the PHY layer is SCE, SAZF, LCE, and OLCE, respectively.  Figure 8 gives separation efficiency for SCE, SAZE, LCE, and OLCE under different SNR when the number of collided tags is four. From the figure, the separation efficiency of OLCE is always higher than SCE, SAZF, and LCE. The maximum efficiency of SCE and SAZF could achieve is only 25%, which means the two algorithms successfully separate only one tag at most. LCE's maximum efficiency is close to 50%. On the contrary, OLCE's maximum efficiency is close to 100%. This means that it could nearly separate all of collided tags. From this result, OLCE also works better than SCE, SAZF, and LCE when the number of collided tags is four.  Figure 8 gives separation efficiency for SCE, SAZE, LCE, and OLCE under different SNR when the number of collided tags is four. From the figure, the separation efficiency of OLCE is always higher than SCE, SAZF, and LCE. The maximum efficiency of SCE and SAZF could achieve is only 25%, which means the two algorithms successfully separate only one tag at most. LCE's maximum efficiency is close to 50%. On the contrary, OLCE's maximum efficiency is close to 100%. This means that it could nearly separate all of collided tags. From this result, OLCE also works better than SCE, SAZF, and LCE when the number of collided tags is four.

STR Performance
The performance of tag identification is greatly improved by using the separation technique. In the cross-layer approach, the collided time slot is no longer considered as useless. Thus, it has higher identification efficiency than the pure MAC layer method. In this paper, we consider the number of successful identification tags to the number of total time slots ratio (STR) as the measurement of recognition performance, where STR is defined as: in which s N is the number of successful identification tags, and L N is the number of total time slots. For the cross-layer approach in this numerical experiment, the MAC algorithm is chosen as dynamic frame slot Aloha (DFSA), and the channel estimation on the PHY layer is SCE, SAZF, LCE, and OLCE, respectively.

STR Performance
The performance of tag identification is greatly improved by using the separation technique. In the cross-layer approach, the collided time slot is no longer considered as useless. Thus, it has higher identification efficiency than the pure MAC layer method. In this paper, we consider the number of successful identification tags to the number of total time slots ratio (STR) as the measurement of recognition performance, where STR is defined as: Sensors 2016, 16, 442 12 of 13 in which N s is the number of successful identification tags, and N L is the number of total time slots. For the cross-layer approach in this numerical experiment, the MAC algorithm is chosen as dynamic frame slot Aloha (DFSA), and the channel estimation on the PHY layer is SCE, SAZF, LCE, and OLCE, respectively. Figure 9 gives STR for DFSA, SCE, SAZF, LCE, and OLCE under the different number of tags when SNR is 20 dB. In Figure 9, we can see that the STR of the cross-layer approach (SCE, SAZF, LCE, and OLCE) is higher than the STR of the pure MAC layer approach (DFSA). Except that the maximum of DFSA's STR is less than 0.4, the maximum of the others is greater than 0.85. The reason is that the successful identified tags in the cross-layer approach may be both on the PHY layer and the MAC layer. For the pure MAC_layer approach, only a tag is identified in a slot, so STR is not more than 1. For the cross-layer approach, two or more tags can be separated in a slot, so STR can be greater than 1. Furthermore, we can see that the STR cure of OLCE is higher than the other curves.  Figure 9 gives STR for DFSA, SCE, SAZF, LCE, and OLCE under the different number of tags when SNR is 20 dB. In Figure 9, we can see that the STR of the cross-layer approach (SCE, SAZF, LCE, and OLCE) is higher than the STR of the pure MAC layer approach (DFSA). Except that the maximum of DFSA's STR is less than 0.4, the maximum of the others is greater than 0.85. The reason is that the successful identified tags in the cross-layer approach may be both on the PHY layer and the MAC layer. For the pure MAC_layer approach, only a tag is identified in a slot, so STR is not more than 1. For the cross-layer approach, two or more tags can be separated in a slot, so STR can be greater than 1. Furthermore, we can see that the STR cure of OLCE is higher than the other curves.

Conclusions
In this paper, we propose a novel algorithm for the recovery of UHF RFID tag collision. The algorithm uses MMSE criterion and has lower estimation errors than the existing algorithms. Adopting the algorithm, we have higher separation efficiency on the PHY layer. Moreover, the algorithm still has superior separation efficiency even when the number of collided tags is beyond two. In addition, we show that the STR performance of the cross-layer approach using the proposed algorithm would outperform the existing cross-layer approach. The proposed algorithm's maximum STR is more than 2.1.