Читать книгу Multi-Processor System-on-Chip 2 - Liliana Andrade - Страница 27
1.4. Algorithm precision requirements and considerations
ОглавлениеIt is often taken for granted that we can take a state-of-the-art (SotA) processor “off-the-shelf” and program the kernel straight without thinking much about data degradation due to quantization noise. Yet even an error as small as a percentile off the true value, compounded over all the succeeding processing steps of the system, may result in faulty data for the user application. Therefore, the standardization body defines the error budget (3GPP 2018b, 2019a), which can be distributed among different processing steps.
Figure 1.10. Precision test bed set up
Of interest is determining the necessary number of bits to represent input and output data, as well as the necessary bit-length size of the processor accumulators where intermediate results are stored. Input and output share the same data type (bit-length) since that simplifies memory access, while, for accumulators, we assume a different data type. We denote the bit-lengths for these hypothetical data types as databits and ACCbits for input/output and accumulators, respectively. Assuming a Q0.n: normalized to 1 signed integer notation, where n is the number of fractional bits, we consider the following test bed setup, illustrated in Figure 1.10. A random bit stream is mapped to complex QAM symbols. Next, QAM symbols are mapped to dk in equation [1.1], a copy of dk is kept as reference. QAM symbols are GFDM-modulated using IDFT and filtered as per the algorithm shown in Figure 1.9 and afterwards demodulated. Demodulation is done by repeating the algorithm shown in
Figure 1.9 with a new set of coefficients that invert the first filtering, followed by DFT. Finally, after successful demodulation, the demodulated stream is compared with the reference and the error vector magnitude is measured.
Figure 1.11. Varied precision quantization of GFDM
In Figure 1.11, we show the basic dataflow of the processor during a series of MAC operations, dominant in the GFDM kernel. The graph points out where the quantization effects act as a source of noise active upon the data in computation. The addition of quantization noise is a consequence of quantizing the “relative” data value16,17 to a finite number of n + 1 (n fraction, 1 sign) bits. The reference as well as other parts of the test bed are coded in double-complex precision (imag 64 − bit, real 64−bit); hence there is also type casting happening at kernel interfaces.
GFDM parameters are set to K = 512 and M = 7. These parameters can be extrapolated from section 1.2.2. K can be aligned with frequency (IDFT bin size for subcarriers) and M with time (symbols in a slot), for a representative 4G/5G compliant case. The error vector magnitude (EVM) budget is taken from standard specification (3GPP 2018b, 2019a), out of which 1% can be used for digital baseband (DBB) processing according to the engineering rule of thumb (Rohde & Schwarz et al. 2013). In these cases, the channel model is omitted. We measure the achieved EVM indirectly, by measuring signal and noise power and computing EVM, as shown in [1.2]
where Pnoise is the average error power of data carrying subcarriers and Psignal is the average power of data carrying subcarriers. The average power of data carrying subcarriers is invariant to QAM modulations; hence the EVM measured is the same for different QAM modulations, although the budget available is not the same. Measurement results are shown in Figure 1.12 in EV MdB notation with the budget constraints overlapped over the results.
First, based on a theoretical bound for uniform quantization (Proakis and Manolakis 1996), as expected, we observe a decrease of EVM by 6 dB per bit of data bit-length in the constant region where the accumulator bit-length is sufficiently high. Second, when the accumulator bit-length is insufficient, we observe a signal quality degradation reaching the tangent (see equation [1.3])
Third, the transition region is centered around the point ACCbits = databits. The transition region extends [log2M] (rounded towards infinity as in [3.14] = 4) bits away from the region center point. M corresponds to the number of MACs per accumulator of the algorithm shown in Figure 1.9, explaining the need for extra bits logarithmically proportional to the number of MACs. Hence, the following conclusions can be drawn:
– data type with a bit-length of 16 is sufficient for all standard required QAM modulations with a buffer budget ranging from 25.27 dB for QPSK to 8.37 dB for 1024-QAM. This leftover budget can be used in other DBB transmitter processing blocks;
– accumulator guard bits of at least [log2M] are needed to avoid signal degradation due to the EVM transition region.
Since many SotA general-purpose DSPs today have an accumulator complex bit-length of 40 and data word length of 16, we conclude that there is no degradation of signal quality if we implement GFDM on a SotA DSP core. Other data types from the blue triangle (Figure 1.12) may be used as well to achieve further optimization of area and power, for example, the ASIP technology, while still meeting requirements for numerical precision. For generality, in the next section, we will keep ACCbits, databits as parameters.
Figure 1.12. GFDM EVM for varied data and ACC complex bit-lengths compared to adjusted 3GPP EVM DBB requirements (3GPP 2018b, 2019a)