## 1 Introduction  
Short-time Fourier transform (STFT) is a time-frequency analysis technique for non-stationary signals. The STFT segments a time-domain input signal into several separated or overlapped frames by multiplying the signal with a window function and then applies the fast Fourier transform (FFT) to each frame. Because Fourier transforms are performed while moving the window, this technique can measure the frequency content changes of a signal over time [1; 2; 3]. Owing to these characteristics, the STFT is widely used in various fields that require frequency measurement over time, such as radar systems and voice-signal processing systems. In particular, to carry out these measurements in real-time, it is necessary to implement the STFT algorithm into a hardware processor [4; 5; 6; 7; 8; 9; 10]. An STFT processor consists of a windowing module and an FFT processor. The available types of FFT hardware architectures that can be considered for designing an STFT processor are the single butterfly architecture, the pipeline architecture, and the parallel architecture. Among them, the pipeline architecture offers a good tradeoff between hardware complexity and throughput rate; therefore, it is an attractive option for implementing the FFT processor in an STFT processor. Pipeline architectures are classified as single-path delay feedback (SDF) architecture and multi-path delay commutator (MDC) architecture. The SDF pipeline architecture is the more commonly used out of the two because it provides the lowest number of nontrivial multiplications, which are the most complex operations to perform in a single channel [11]. However, when using multiple data channels, the SDF FFT processor must be implemented in each channel. Thus, there is a problem in that hardware complexity increases linearly with the number of data channels. In the case of multi-channel FFT, [PERSON] et al. suggested that the MDC FFT processor could be implemented in a lower area than the SDF FFT processor [12]. The windowing module multiplies the non-stationary signal with the window function to add a time dimension and reduces the side lobes in the spectrum, thereby reducing the spectral leakage caused by noise. In addition, the type and length of the window function used in the windowing module are closely related to performance. Consequently, the type and length of the window function appropriate for each application are different [13]. The length of the window function in the STFT is related to the resolution of the signal. Long windows provide higher frequency resolution but lower time resolution. Analogously, short windows provide higher time resolution but lower frequency resolution. Because the required time and frequency resolutions vary between applications using STFT processors, the window length should ideally be variable to support various time and frequency resolutions [14; 15; 16]. STFT processors generally use several types of tapering windows, such as Hamming, Hanning, and Kaiser, to reduce the side lobes in the spectrum and mitigate spectral leakage due to noise. However, tapering windows are usually very small or zero at the beginning and end, resulting in data loss near the boundary. To solve this problem, we need to minimize the loss of data by overlapping window functions. The overlap ratio that minimizes data loss varies depending on the type of window function used. According to [PERSON] et al., to minimize data loss when using a window function, it is typically used with a 0%, 25%, 50%, or 75% overlap [17]. Therefore, depending on the type of window used, the STFT processor should be capable of changing the overlap ratio to the one that minimizes data loss. Various studies have been conducted to improve the performance of STFT processors. [PERSON] et al. implemented an STFT processor that uses several SDF FFT processors in parallel to support a high overlap ratio, but this increases complexity [18]. In addition, [PERSON] et al.