12 FlaresTwitter0Facebook0Pin It Share0Google+1StumbleUpon1112 Flares×
Here’s my final year university project for my electronic and electrical engineering degree. I explored the use of an FPGA for digitally processing audio and implemented several effects. Scroll down to see it in action…
The design and realisation of an FPGA based audio processor
This is a super low latency digital audio effects processor using an FPGA and the Altera DE2 development board. The audio (guitar, mic, whatever) is connected to the input of the DE2 board to be digitised and processed according to what effect is selected. Everything is written in VHDL using Quartus II V11.0. New effects can be writted in VHDL then converted to a block symbol and routed in to the existing system at the top level. I made a rotary control box that interfaces dynamically with each effect block, depending on what is currently selected. The LED bar on the control box shows the value of parameter currently being adjusted (or the last one to be adjusted).
The project took 6 months in total and got me a decent mark for my degree. You can download my scanned in notebook and my full report in PDF format at the bottom of the page.
Developing digital audio effects on an FPGA
Latency is super low at less than 1ms. If you want to know how to use the Wolfson WM8731 CODEC on the Altera DE2 board (or any other FPGA development board) then hopefully this report will give you a massive head start. This took a while to get my head around.
Quartus II v11.0 and SOPC Builder have been used to design and create the VHDL code to be synthesised. The implementation of the VHDL design uses the DE2 development board from the Altera which is based around a Cyclone EP2C25 FPGA device having 35000 logic elements.
Four audio effects were explored and implemented: echo, flanger, filter and reverb. External control to the FPGA was implemented using rotary encoders to change various effect parameters and visual feedback been given through an LCD. The final design utilises a NIOS II soft-core processor to form part of the user interface. The results show that the total system latency of the FPGA audio processor was considerably less than a computer software application; less than 1ms compared to 10ms.
The initial concept has been proven using a total of 11702 logic elements. There is much scope for development of the final project. Future work could focus on a more user-friendly system in terms of the user interface and also the creation of more advanced audio effects.
See the audio effects in action
Download my Full report here
‘The design and realisation of an FPGA based audio processor’ full project report here