hardware synth
TRANSCRIPT
Music Synthesis in Hardware
Howard Mao
April 25, 2013
ROMboard: An FPGA-based Musical Instrument
http://www.youtube.com/watch?v=ap7QOzf1rpI
What’s an FPGA?
I A prototyping platform for digital hardwareI Write a description of a circuit in a hardware description
language (HDL)I FPGA contains a bunch of configurable logic blocks (CLB)I Design tools take HDL code and compiles it to CLB settings
for FPGA
How do we make Romboard?
Part 1 - Audio CODEC
I CODEC stands for COder DECoderI Turns digital signals into audio signals
Part 2 - Clock DividerI We want to generate a square wave as the audio signalI Why square wave? It’s easier to do in hardwareI Problem: how do we get the right frequency?I Hardware clock is at 50 MHzI Our music range is 130 Hz (1 octave below middle C) to 523
Hz (2 octaves above middle C).I Answer: count up to 50MHz
2f then flip the output
Part 3 - Input Handling
I How do we choose notes based on input?I 4 Pushbuttons, 17 switchesI Pushbuttons give 1 when up, 0 when downI Switches are 0 when off, 1 when onI Use switches to select what notes the pushbuttons map toI Pushbuttons + Switches -> Max count for clock dividerI Use a ROM (Read-Only Memory) to store these values (That’s
why it’s called ROMboard)
Part 4 - Putting it all together