graphical DSP Simulator
G.Sasi
1,P.Thanapal
2,R.K. Arvind Shriram
3, V.S. Balaji
3*, V. Elamaran
31Department of ECE,CVR College of Engineering,Hyderabad,Telangana,India.
2SITE,Vellore Institute of Technology,Vellore,Tamilnadu,India.
3School of EEE, SASTRA Deemed University, Thanjavur, Tamilnadu, India
1[email protected], 2[email protected], 3[email protected],
3[email protected],3[email protected] Abstract
Currently, signal and image processing is the swiftly enlarging field in both industry and educational sectors. For the past three decades, due to the semiconductor technology evolution, the digital signal processing (DSP) theory and DSP processors take part in an essential vital role in almost all fields of science, engineering, and technology. Due to the massive growth of computer industry and information technology, there are ample software simulation tools made accessible for beginners to research any field of science and engineering. J-DSP editor is one such Internet-based tool, which is entirely written with the help of Java applets. Our work concentrates primarily on the elementary theory on DSP using J-DSP environment blocks. Mainly, the basic discrete-time system difference equation, discrete Fourier transform (DFT) of a sine function, DFT of the Fs/2 sequence, a digital notch filter, and a group delay in the finite impulse response (FIR) filter are exemplified using the on-line J-DSP simulator. Finally, the survey results from the scholars’ community who attended the training course on DSP were obtained as feedback.
Keywords: Discrete Fourier Transform, group delay, FFT, J-DSP, notch filter, on-line DSP simulator.
1. Introduction
For the past two decades, engineering technologies emerge in all areas of everyday life, such as entertainment, telecommunications, education, defense, medicine, computing, aerospace, etc [1]. Java-DSP (J-DSP) is a handy tool for students and faculty due to its capability behind executing on-line simulations based on DSP concepts. J-DSP is a popular online DSP simulator. The most fundamental DSP operations such as filter design, convolution, FFT computation, and speech analysis can be handled effectively with a simple drag-and-drop facility [2–4]. The few courses which are shown in Figure 1 can be handled using J-DSP.1
3*Corresponding author: [email protected]
J-DSP tool can be used to implement many functions such as convolution, digital filtering (IIR/FIR), Fourier analysis (FFT/IFFT), spectral estimation, audio processing effects, etc.
Figure 2 shows the capability of doing some crucial functions using J-DSP [5–7]. The main potential fields of the DSP tool are as follows [8–10]:
Discrete Fourier Transform
Digital filtering
Inverse filtering
Spectrum estimation
Parameter estimation and inversion
Figure 1. Few Courses Based on Signal Processing
Figure 2. Basic and Sophisticated Functions of the J-DSP Tool
This paper is organized as follows. The Section contains materials and methods, which include a basic DSP system (difference equation) implementation, DFT of a sine function, DFT of the Fs/2 sequence, notch filter, and a group delay in FIR filter. Section 3 contains an assessment outcome of 20 research scholars who attended a short-term tutoring program on the DSP and Its Applications course. Finally, the conclusions are discussed in Section 4.
2.
Materials and Methods
2.1 A Simple DSP System
The feed-forward coefficients (relating present and previous input samples) and the feed- back coefficients (relating past output samples) are used to represent any digital signal processing system [11–14]. For example, one such simple Equation is expressed as:
y(n) = 0.5x(n) + 0.4x(n – 1) – 0.4y(n – 4) (1) This filter becomes an Infinite Impulse Response (IIR) as a result of the feed-back coefficient, y(n–4). Figure 3 shows a paper-pencil work of the output of this IIR DSP system for the input, x(n) = sin(nπ/2). The view of the system implementation using a J-DSP environment is shown in Figure 4. Figure 4 shows the block-level implementation using J-DSP environment for the Equation (1). The input is generated using the Signal generator block, and the feed- forward and feed-back coefficients are applied using the Coefficients block (see Figure 5).
Figure 6 The outputs (simulation results) for the given input, x(n), are shown in Figure 6 using both Matlab and J-DSP environment. The numerical values of the response using both Matlab and J-DSP are shown in Figure 7.
Table 1. The Response of the IIR DSP System (Paper-Pencil Work).
Figure 3. An IIR filter using J-DSP environment.
Figure 4. The support J-DSP blocks: (a) Signal Generator; (b) filter coefficients.
Figure 5. The response using: (a) Matlab tool; (b) J-DSP tool.
Figure 6. The output of the system in (a) Command prompt (Matlab); (b) Graph values (J-DSP).
2.2 Discrete Fourier Transform of a Sine function
The discrete Fourier transform (DFT) is a powerful tool to analyze the discrete-time sequences (data) in a digital computer [15,16]. Due to the practical impossibility behind the storage of infinite spectrum response of the discrete-time Fourier transform (DTFT), DFT came into the picture. The J-DSP environment for DFT/FFT computation is shown in Figure 8. Here, the DFT results (both 8- and 16-point) of the input sequence, x(n) = sin(nπ/2) are shown in Figure 9. As expected, for the 8-point DFT result, the non-zero value (four) occurs at k = 2 and 6; for the 16-point result, the non-zero value (eight) occurs at k = 4 and 12 [17,18].
Figure 7. DFT (FFT) results using J-DSP blocks.
Figure 8. DFT results using: (a) Matlab; (b) J-DSP.
2.3 DFT of the Fs/2 sequence
The Fs/2 sequence should contain samples such as one positive, one negative, one positive, one negative, and so on. The N-point DFT of such a sequence becomes non-zero only at k = N/2; for example, if N = 8, the non-zero occurs at k = 4, and if N = 16, the non- zero occurs at k = 8 [17]. The input sequence and the corresponding DFT results (both 8-, and 16-point) are shown in Figure 10. As expected, both the Matlab and J-DSP tools provide the same answer.
Figure 9.The input sequence:(a) and the DFT results using: (b) Matlab (c) J- DSP.
The Fs/4 data sequence would contain samples such as one positive, one zero, one negative, one zero, and repeats. To nullify this Fs/4 sequence, zeros are placed at +j and –j and hence the system transfer function and the corresponding time-domain difference Equations become [19,20],
( )2( ) 1 2 )
(
z
z j z j z z
H
(2)
y(n)x(n)x(n2)
(3)
The input sequence samples, the filter coefficients, the frequency response of the notch filter, and the response of the system are shown in Figure 10. The Pole-Zero plot of the notch filter is shown in Figure 11.2.5 Group delay in FIR filter
If the linear phase and constant group delay are the key specifications for a system, the FIR filters are the ideal choice. If the impulse response is symmetric, then the group delay of the FIR filter is equal to (N–1) / 2, where N is the number of filter coefficients (see Figure 12).
Figure 10. The Input Sequence, Notch Filter, and the Output
.
Figure 11. The Pole-Zero plot of the notch filter: (a) J-DSP blocks (b) PZ Plot.
Figure 12. Group delay (10 samples) from the 19th order FIR filter
. 3. Results and Discussion
The twenty research scholars of a short-term tutoring program on the DSP and Its Applications course were assessed to find out the time required (minutes) per exercise (see Figure 13). Due to the simplicity and drag-drop facility of the J-DSP tool, almost all activities demand less time (lower than 10 minutes).
Figure 13. Results on time required per task.
Also, the scholars were surveyed to identify their interest in which task they experimented with. The survey had the participants’ judge on a scale of 1 to 5, where one was
“Boring”, two was “Not at all Impressive”, three was “Good”, four was “Very Good”, and five was “Very Impressive”. The average score (out of 20 scholars) for each experiment is shown in Figure 14. On average, most of them were inspired by exploring digital filters (systems) using the J-DSP too.
Figure 14. Survey results.
4. Conclusion
The computer simulation-oriented experiments (exercises) are commonly used in teaching subjects such as linear systems, signals and systems, 1-D and 2-D signal processing, analog and digital communications, control systems, data analytics, machine learning, etc. This sort of pedagogical approach is fit for finer grasping the theory with demonstrations. J-DSP editor, the user-friendly tool, is selected here to explore the critical DSP principles. The main concepts in DSP, such as discrete-time system difference equation, DFT fundamentals, digital filtering theory, and group delay in FIR filter, are investigated using J-DSP environment blocks easily. Since the experiments were performed through on-line, the impression of this article on the freshmen (scholars) community would be immense and productive.
References
1. Andreas Spanias, Thrassos Thrasyvoulou, Yu Song, and Constantinos Panayiotou, 2003.Using J-DSP to Introduce Communications and Multimedia Technologies to High Schools.
Proceedings of the 33rd Annual Frontiers in Education, Westminster, CO, USA, pp: 1–6.
2. Axel Clausen, Andreas Spanias, Anand Xavier, and Maya Tampi, 1998. A Java Signal Analysis Tool for Signal Processing Experiments. Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP’98), Seattle, WA, USA, pp:
1849–1852.
3. Venkatraman Atti, Andreas Spanias, Constantinos Panayiotou, Yu Song, and Youngwook Ko, 2003. On the Use of J-DSP for On-line Laboratories in Linear Systems Courses. Proceedings of the Thirty-Seventh Asilomar Conference on Signals, Systems & Computers, Pacific Grove, CA, USA, pp: 1375 – 1379.
4. Homin Kwon, Visar Berisha, Venkatraman Atti, and Andreas Spanias, 2009. Experiments With Sensor Motes and Java-DSP. IEEE Transactions on Education, 52: 257–262.
5. Andreas Spanias, Venkatraman Atti, Antonia Papandreou-Suppappola, Khawza Ahmed, Moushumi Zaman, and Thrassos Thrasyvoulou, 2004. On-Line Signal Processing using J- DSP. IEEE Signal Processing Letters, 11: 821–825.
6. Uday S. Shanthamallu, Sunil Rao, Abhinav Dixit, Vivek S. Narayanaswamy, Jie Fan, Andreas Spanias, 2019. Introducing Machine Learning in Undergraduate DSP Classes. Proceedings of the 2019 IEEE International Conference on Acoustics, Speech and Signal Processing, Brighton, United Kingdom, pp: 1–5.
7. Andreas Spanias, Susan Urban, Argyris Constantinou, Maya Tampi, Axel Clausen, Xiaopeng Zhang, Jeff Foutz, and Georgios Stylianou, 2000. Development and Evaluation of a Web-based Signal and Speech Processing Laboratory for Distance Learning. Proceedings of the 2000 IEEE International Conference on Acoustics, Speech and Signal Processing, Istanbul, Turkey, pp: 3534–3537.
8. P.S. Naidu and M.P.Mathew, 1998. Analysis of Geophysical Potential Fields: A Digital Signal Processing Approach. Elsevier.
9.
W. Wang, G. Zhang, L. Yang, V.S. Balaji, V. Elamaran, and N. Arunkumar, 2019. Revisiting signal processing with spectrogram analysis on EEG, ECG and speech signals. Future Generation Computer Systems, 98: 227–232.10. G. Rajkumar, R. Jayabharathy, K. Narasimhan, N. Raju, M. Easwaran, G. Ramirez-gonzalez, and M. Burbano-fernandez, 2019. Spectral and SNR improvement analysis of normal and abnormal heart sound signals using different windows. Future Generation Computer Systems, 92: 438–443.
11. V. Elamaran, A. Praveen, M.S. Reddy, L.V. Aditya, and K.Suman, 2012. FPGA Implementation of Spatial Image Filters using Xilinx System Generator. Proceedings of the International Conference on Modeling Optimization and Computing (ICMOC-12), Procedia Engineering, 38: 2244 – 2249.
12. V. Elamaran and Har Narayan Upadhyay, 2013. A case study of nanoscale FPGA programmable switches with low power. International Journal of Engineering and Technology, 5: 1512–1519.
13. V. Elamaran and Har Narayan Upadhyay, 2015. Low power digital barrel shifter datapath circuits using Microwind layout editor with high reliability. Asian Journal of Scientific Research, 8: 478 – 489.
14. V. Elamaran, N. Arunkumar, A.F. Hussein, M. Solarte, and G. Ramirez-Gonzalez, 2018.
Spectral Fault Recovery Analysis Revisited with Normal and Abnormal Heart Sound Signals.
IEEE Access, 6, 8492402, pp: 62874–62879.
15. V. Elamaran, N. Arunkumar, G. Venkat Babu, V.S. Balaji, J. Gomez, C. Figueroa, and G.
Ramirez-Gonzalez, 2018. Exploring DNS, HTTP, and ICMP Response Time Computations on Brain Signal/Image Databases using a Packet Sniffer Tool. IEEE Access, 6, 8466769, pp:
59672–59678.
16. V. Elamaran, A. Aswini, V. Niraimathi, D. Kokilavani, 2012. FPGA implementation of audio enhancement using adaptive LMS filters. Journal of Artificial Intelligence, 5: 221–226.
17. B. Sindhura, S. Ashwin, G. Rajkumar, V. Elamaran, and M. Sankar, 2018. Useful Tips and Tricks on Digital Data Processing with Discrete Fourier Transform. Proceedings of the 2nd International Conference on Computing Methodologies and Communication (ICCMC 2018), Erode, India, pp: 738–742.
18. E. Abdulhay, V. Elamaran, M. Chandrassekar, V.S. Balaji, and K. Narasimhan, 2017.
Automated diagnosis of epilepsy from EEG signals using ensemble learning approach. Pattern Recognition Letters, 28: 5247–5251.
19. John G. Proakis and Dimitris G. Manolakis, 2007. Digital Signal Processing: Principles, Algorithms, and Applications. Fourth Edition, Pearson Education India.
20. R. Naveena, V. Darthy Rabecka, G. Rajkumar, and V. Elamaran, 2015. Understanding Digital Filters from Theory to Practice using Matlab and Simulink. International Journal of Pharmacy and Technology, 7: 9923–9934.