A Novel 4-Point Discrete Fourier Transforms Circuit Based on Product of Rademacher Functions
Total Page:16
File Type:pdf, Size:1020Kb
The 5th International Conference on Electrical Engineering and Informatics 2015 August 10-11, 2015, Bali, Indonesia A Novel 4-Point Discrete Fourier Transforms Circuit based on Product of Rademacher Functions Zulfikar1, Hubbul Walidainy2 Department of Electrical Engineering Syiah Kuala University Banda Aceh 23111, Indonesia. E-mail: [email protected], [email protected] Abstract—This paper presents a new circuit design for algorithms have been developed for certain purposes and each implementing 4-point DFT algorithm based on product of of them comes with advantages and drawbacks. Rademacher functions. The circuit has been derived from the similarity of how Fourier transforms and Walsh transforms are Walsh transforms algorithm is simpler than Fourier implemented. Walsh matrices contain numbers either +1 or -1 transform, but this transformation model is rarely used in except for first row. Similarly, the 4-point DFT matrix contain application and almost forgotten. Walsh transforms has a few numbers either positive or negative except for first row. This similarity to the Fourier transforms [2]-[5]. Based on this, some similarity has been taken into the case of how to implement the researchers have adopted this algorithm for developing the DFT circuit based on how Walsh transforms is generated. Since more efficient Fourier transforms [6]-[8]. An algorithm for Walsh transforms is derived based on product of Rademacher calculating DFT using Walsh transforms is developed through functions, the proposed 4-point DFT circuit is designed according the factorization of intermediate transform T [6]. Monir T et al to product Rademacher functions. The circuit consist of negative proposed an efficient combination of Walsh and DFT circuit, multiplexers, accumulator (real and imaginary), buffers, calculation. The technique is based on the utilize Radix-4 fast and control circuit. The control circuit is designed to produce Walsh Hadamard Transforms (FWHT) [7]. Another efficient Rademacher functions for controlling and managing data flow. technique of calculating both DFT and Walsh transforms by The 4-point DFT circuit has been successfully designed and utilizing Radix-2 algorithm was also published [8]. implemented to FPGA platform. Among the selected chips, Artix 7 is the fastest one. The previous combination algorithms are designed for parallel input and output data. This leads to huge number of memory resources which is not suitable for small circuit Keywords—DFT; Walsh transforms; Rademacher functions; applications. Therefore, we proposed an algorithm to minimize DFT matrix; Walsh matrix the use of memory by taking input serially and the output is gathered in parallel. This such algorithm may be achieved I. INTRODUCTION using product of Rademacher. The design has been done for 4- point DFT, details of the design is covered in section III. Digital signal processing is used in almost all electronics devices. The need for processing a signal is a must nowadays. In this paper, some basic theory of Walsh transforms, and Data or signal either from outside or internal have to process Fourier transforms are covered in the next section. Section III for specific purposes using specific application or processing. provide the detail design of both algorithm and circuit for 4- Often, data have to be transformed to other domains for easier point DFT. Section IV views the implementation and processing. discussion of the proposed algorithm into FPGA. Finally, the conclusion and some suggestions for future works are The most widely used transformation type is Fourier presented in the section V transforms. In terms of discrete model, Discrete Fourier Transforms (DFT) often used to converts signal or data to frequency domain. In domain frequency, it is easier to process II. BACKGROUND THEORY and extract information of the data. This is a powerful transformation model that has been used since long time ago. A. Fourier Transforms The Fourier transforms is a tool that converts a waveform The DFT is inefficient when it is implementing directly. (a function or signal) into an alternate representation, Many scientist proposed simplification of the process of data characterized by cosine and sine. The Fourier Transforms transformation of DFT. Those simplifications lead to the indicates that any waveform may be re-written as the sum of development of Fast Fourier Transforms (FFT) algorithm. sinusoidal functions [9]. During previous several decades, researchers have been developed the algorithm of the FFT implementation such as Usually, Fourier transform is used to analyze the frequency Radix-2, Radix-4, Split Radix, Prime Factor Algorithm (FPA), content of a signal, design a system/ filter with particular and Winograd Fourier Transform (WFTA) [1]. Those properties, and solve differential equations in the frequency domain using algebraic operators. It is possible to develop an The authors gratefully acknowledge the financial support from Syiah Kuala University, Ministry of Education and Culture, Indonesia under project Hibah Bersaing, No. 035/SP2H/PL/Dit.Litabmas/II/2015, Feb 5, 2015. 142 alternative Fourier representation for finite duration sequences Hadamard transforms for transform lengths N (N-point) can that is referred to the Discrete Fourier Transforms (DFT) be performed by multiplying the input values (numbers) X with [9],[10]. Hadamard matrix H to produce the output as the transformed coefficients matrix, Y as follows: DFT contains signal which is discrete and periodic, as can be expressed in the following expression (x(n) represents N 1 point discrete signal in time domain). Y = ()H X (7) N N N −1 = nk X (k) ∑ x(n)WN (1) Hadamard matrix is a square matrix whose entries are = n 0 either +1 or -1 and whose rows are mutually orthogonal. This − j2π / N matrix is another name of Walsh functions based on Hadamard where = therefore WN e , ordering [12]. A direct implementation of eq. (7) in case input transform N −1 N −1 (2) 2 nk length N will require N –N additions and subtractions. This = − j2πkn/ N = ()− j2π / N X (k) ∑ x(n)e ∑ x(n) e huge area consumption, challenges many scientists to develop n=0 n=0 the more efficient computation algorithms. One such method to Direct computation of the above equations is inefficient reduce number of additions and subtractions has been since they do not extract the symmetry and periodicity property introduced in terms of unified matrix by Fino and Algazi [13]. as follows: The implementation of this idea require N(log2N) additions and subtractions. Many workers adopted Fino et al idea in order to (1) Symmetry property: realize the Walsh transform; Fast Hadamard Transform (FHT) k+N / 2 = − k is the popular one. WN WN (3) (2) Periodicity property Another way to perform Walsh transforms is by evaluating k+N k it in terms product of Rademacher functions [12]. It has W =W (4) N N attracted many scientists to develop effective and efficient Direct computation of DFT of a complex value sequence structures. In general, Walsh transforms may be evaluated as x(n) can be expressed further as follows N−1 ⎡ 2πkn 2πkn⎤ N −1 X (k) = x (n)cos + x (n)sin (5) = 1 ψ () (8) R ∑⎢ R I ⎥ Yn ∑ X k n,t N = n=0 ⎣ N N ⎦ k 0 N−1 ⎡ 2πkn 2πkn⎤ where ψ ()n,t refers to any ordering of Walsh functions. = − − (6) X I (k) ∑⎢xR (n)sin xI (n)cos ⎥ n=0 ⎣ N N ⎦ III. CIRCUIT DESIGN The DFT requires N2 (NxN) complex multiplications, which is each X(k) requires N complex multiplications. Walsh transforms converts a signal in time domain into Therefore to determine the values of the DFT (from X(0) to frequency domain in very simple way. Walsh matrix contains X(N-1)) N2 multiplications are required. The DFT also requires number either +1 or -1. Therefore, in the transformation (N-1)*N complex additions that is each X(k) requires N-1 process, there will be no multiplication task. Let consider additions. Therefore to evaluate all the values of the DFT (N- Walsh matrix for transform lengths N=4 as follow: 1)*N additions are required [1],[9] After Cooley and Tukey developed the divide-and-conquer method, many scientists proposed the algorithm for simplifying the calculation of DFT. All of them aim to reduce number of memory usage and arithmetic functions [1]. In performing the transformation, it requires addition or subtraction only. This has been performed in many works for B. Walsh Transforms certain signals [2],[3],[14]-[16]. In spite of this, this Walsh transforms performs a symmetric, orthogonal, and transformation method is rarely used in applications. linear operation on 2m real numbers (or complex numbers). In terms of discrete one, Walsh transform is used to transform In contrast, DFT requires very complicated algorithm and numbers (information) from time domain to frequency domain. circuit in performing transformation process. However, DFT A method of transforming information from time domain, provide more useful information about a signal in frequency represented in real numbers, is known as Hadamard transforms domain. DFT matrix may contains non integer and complex or Walsh Hadamard transforms. This method is also known as numbers. Obviously, it would require more circuit in Walsh-Fourier transforms, since it is an example of a transformation process. The way of DFT performing generalized class of Fourier transforms [11]. transformation may be imitated the behavior of Walsh transforms performed, especially for N=4. Let’s consider DFT matrix (N=4) as follows. 143 condition. If R(1) is not zero, buffer F3 will store negative value of x. If R(0) is zero, buffer F2 store positive value of input data x, values stored in buffers F1 and F3 will consider as imaginary. Otherwise, if R(0) is not zero, buffer F2 will store negative value of x, the values in buffers F1 and F3 will be The matrix is quite similar to Walsh matrix.