# Jamming Detection and Suppression Technique for OTFS Systems in an AWGN Channel
## 3 Jamming Detection and Suppression in the Frequency Domain
### Improved FCME Algorithm  
The CME and its variants, including the FCME, double-threshold-based FCME, and adjacent cluster combing (ACC)-based FCME, are widely used methods for jamming detection. The core idea of these algorithms are to iteratively identify and exclude frequency bins with energy levels greater than a given threshold, recalculating the mean of the remaining data points at each step to refine the threshold.  
The primary difference between the CME and FCME algorithms lies in their initialization phases. The FCME algorithm assumes that low-amplitude signals are free of jamming, whereas the CME algorithm initially considers all signals to be free of jamming. The FCME algorithms begin with a lower initial threshold, increasing their likelihood of detecting jamming in scenarios with low jamming power. Despite their superior jamming detection performance, FCME-based algorithms require a sorting operation in the very beginning, which may result in high computational complexity. Generally, we need to find the smallest  
Figure 5: The probability density of \(R(k)\) with and without smoothing window.  
10% of the frequency samples. The complexity of sorting depends on the sorting method. For example, Heapsort has a complexity of \(N_{FFT}log_{2}(N_{FFT})\)[28].  
In this work, we propose an improved FCME algorithm that reduces sorting complexity while maintaining detection performance.  
The flow chart of the proposed algorithm is as shown in Figure 6. Different from the conventional FCME algorithm, we did not need to perform complex sorting of frequency amplitudes to evaluate the power of the useful signal and determine the interference threshold. Instead, we divide the received signal frequency \(R(k)\) into \(Z\) segments with length \(N_{FFT}/Z\) as  
\[\mathbf{R}_{i}=\bigg{\{}R(\frac{iN_{FFT}}{Z}),R(\frac{iN_{FFT}}{Z}+1),\cdots,R (\frac{(i+1)N_{FFT}}{Z}-1)\bigg{\}}, \tag{15}\]  
and \(0\leq i\leq Z-1\). Hence, we can evaluate the mean absolute value of each \(\mathbf{R}_{i}\) as  
\[\mu_{R,i}=\frac{1}{Z}\sum_{l=0}^{Z-1}|R_{i}(l)|. \tag{16}\]  
Furthermore, we can find the segment with the minimum \(\mu_{R,i}\) as  
\[i_{\min}=\operatorname*{arg\,min}_{0\leq i\leq Z-1}\{\mu_{R,i}\}. \tag{17}\]  
As shown in Equation (17), a total of \(Z-1\) comparisons are required to determine the position of the minimum value \(\mu_{R,i}\), which certainly possesses lower computational complexity than the traditional FCME method. Consequently, the mean absolute value and variance of the \(i_{\min}\)th segment can be used for the initial threshold calculation as  
\[V_{th}=\mu_{R,i_{\min}}+\kappa\sigma_{R,i_{\min}}, \tag{18}\]  
Figure 6: The flow chart of proposed FCME algorithm.  
where \(\mu_{R,i_{min}}\) and \(\sigma_{R,i_{min}}\) represent the mean absolute value and variance of the \(i_{\text{min}}\)th signal segment, respectively. \(\kappa\) represents the weighting factor for the standard deviation in the preliminary decision threshold within each segment. It influences the number of samples used for local initialization to a certain extent. Although this method also involves comparison operations, it only requires finding the minimum value, and the dataset used for comparison is significantly reduced. As a result, the computational complexity is greatly decreased. In the subsequent steps for jamming detection, the operations are the same as those in the conventional FCME algorithms. Furthermore, the detection performance of our proposed FCME algorithm is evaluated in the next section.  
The proposed FCME method was designed and implemented on a Xilinx Kintex XC7K325T FPGA. Table 2 summarizes the implementation results of the proposed method and the traditional FCME method. Our implementation consumes fewer look-up tables (LUTs), flip-flops (FFs), and Block RAMs (BRAMs) than the traditional method, demonstrating its low implementation complexity.