This project involved developing a real-time spectrum analyzer using field-programmable gate arrays (FPGA). The system works by taking audio input from the built-in microphone on the FPGA, processing the audio, and then sending it to a custom-built FFT module, which is displayed on the monitor using a VGA interface.
My part in this project was to design and write the code for the audio processing. I wrote the code that interfaces the microphone with the board. After obtaining the raw data, I processed it through a CIC compiler, a type of digital filter commonly used in digital signal processing, particularly in applications involving decimation and interpolation. It is widely employed in systems such as software-defined radios and audio processing due to its efficiency and simplicity.
Through this project, I learned about best practices for designing a system on an FPGA and the importance of building a system module by module. I also gained valuable insights into audio processing and teamwork while working on a project with various different parts.