# A Novel Channel Coding Scheme for RFID Generation-2 Systems
## 4 Simulation Results  
The behavior of passive tags in the considered RFID system is cyclical with total period \(T\), including an \"on\" interval of length \(T_{on}\), in which a tag is in operating and able to communicate to reader, and an \"off\" interval of length \(T_{off}\) in which it is in stand-by mode only harvesting energy (voltage restoration interval). Hence, the cycle \(T\) for each tag is defined as \(T=T_{on}+T_{off}\), and its duration is determined by charge/discharge patterns and in real-world implementations depends on the specific node circuitry. The three different coding schemes (i.e., the proposed algorithm, Hard Viterbi, and Soft Viterbi) have been compared in terms of tag read rate (TRR), defined as the number of successful tag query rounds of length \(T_{S}\) in a unit of time, where \(T_{s}\) is the average number of successful queries that occurs during the interval \(T_{on}\). Figure 5 clearly shows that TRR depends on \(T_{on}/T_{S}\): changing the ratio from 5 to 20 provides a read rate gain up to ten tags per second. This is mainly due to the fact that if \(T_{on}\) is too small; just a low number of queries might be successful. Moreover, as noted in [18], TRR grows as the ratio increases, but not proportionally: the average rate of successful queries tends to the asymptotic rate as \(T_{on}/T_{S}\) reaches a value of about 20-30. This is true not only for the original hard Viterbi scheme, but also for the soft decision algorithm, and most importantly, for our proposed scheme. This means that the behaviour of our approach is similar to those of the other well-established codes. \begin{table}
\begin{tabular}{c c c} \hline \hline
**Variable** & **Description** & **Default Value** \\ \hline BLF & backscatter link frequency & 250 kHz \\ MO & Miller order & 4 \\ Tari & data-0 symbol & 24 μs \\ EPC & packet length & 128 bits \\ RTcal & reader-to-tag calibration & 3.0 \(\times\) Tari \\ \(T_{Cls}\) & duration of a collided query & 1.8 ms \\ \(T_{Emp}\) & duration of an empty query round & 1.1 ms \\ \(T_{IA}\) & duration of an invalid ACK query round & 2.5 ms \\ \(T_{SF}\) & duration of a successful query round & 5.0 ms \\ \(M\) & number of listening tags & 12 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Setting of the simulation parameters. Looking at the numerical results, as expected, the soft decision Viterbi decoder has the best performance--its applicability in real battery-powered devices is still limited, but here we consider it a performance reference for our system. It is interesting to note that at lower SNR values (\(\leq\)10 dB), the proposed soft decoding algorithm performs slightly better with respect to the more complex Viterbi hard decoded scheme. The maximum gain--regardless of the \(T_{o}n/T_{S}\) value--is at 6 dB, when our scheme provides a TRR gain of about 10% over the hard solution. This is mainly due to the fact that the proposed scheme (although with a very low hardware complexity) implements a soft decision decoding algorithm, since the comparator implementing the decoder chooses the maximum among the four bit waveforms by looking at the analog output of the receiver correlator. We have also investigated the dual metric of TRR (i.e., the tag error rate (TER) in a unit of time) by considering the number of unsuccessful interrogations. Figure 6 represents the TER performance in the same conditions described above. As expected, at lower SNR values the performance of our approach lays between the soft and the hard Viterbi decoding scheme. Regarding the complexity, the proposed scheme is comparable to an analog demodulation by maintaining satisfactory performance with respect to the more complex hard-decisioned Viterbi decoder. Actually, the decoder circuit may be implemented in a completely analog manner, by also avoiding the use of more complex analog-to-digital converters. Moreover, the proposed scheme acts only on a codeword of length equal to just 4 bits, different from the Viterbi decoders that both use a minimum codeword length equal to 32.