[sdiy] Digital 4 pole filter in an FPGA
Scott Gravenhorst
music.maker at gte.net
Thu Dec 11 15:59:52 CET 2008
Jim Patchell <patchell at cox.net> wrote:
>I have been doing digital design since about 1975...using FPGAs is just
>another phase of doing the same thing...instead of using 74xxx
>logic...now I write in verilog. There are a lot of books on Amazon.com
>that cover this subject...although, I wouldn't really know which one
>would be the best to begin with.
>
>And FPGA synths are a lot of fun...and there are more ways to skin this
>cat than you can shake a leg at...
That's no exageration. Ditto on the "fun" part. If you want to get a taste of what
Verilog looks like, try this tutorial:
http://www.asic-world.com/verilog/veritut.html
It's last update was in December of 2008, so the maintainer is active. There are LOADS
of simple examples.
After reading this tutorial, I was able to get some Hello World design projects
working. I will admit that I am also a software developer from way back. With some
study, practice and help from kind folks here and on a couple other forums, I've been
able to design MIDI synthesizers. I also found very good supplemental information in
other tutorials and PDF papers I found on the web. If you're into USENET, good sources
of information can be found on comp.arch.fpga and comp.lang.verilog.
Basic digital design knowledge is definately a good thing to have. When I work in
Verilog, I find myself thinking in terms of registers (flipflops or RAM), OR gates, AND
gates, multiplexors, etc. just as if I were going to solder up some CD4xxx stuff.
Verilog is used to describe how these little logic bits (I call it Logic Lego) are
connected together to make a working system.
>-Jim
>
>HL-SDK Synths wrote:
>> I'm interested as well, I have a question though, where did you learn
>> all of this FPGA ...stuff? I've looked around on the web and I'm no
>> computer science guy. Is it all hidden in the textbooks? I think FPGA
>> synths are crazy cool!
>>
>> On Tue, Dec 9, 2008 at 12:09 AM, Jim Patchell <patchell at cox.net
>> <mailto:patchell at cox.net>> wrote:
>>
>> Hope y'all aren't getting tired of these progress reports.
>>
>> But it looks like I have got the basics of the four pole filter
>> working (at least in the simulator). It is going to take a bit more
>> testing to verify that all of the data is going where and when it is
>> supposed to...
>>
>> The filter has a four clock pipe delay through it...i.e. it takes
>> four clock cycles to complete one sample...but since it is
>> pipelined...it only takes 512 clocks to complete all 512 filters...
>>
>> One of the things I need to verify yet is that the resonance control
>> works as it should.
>>
>> Now, also to give you an idea of exactly what I am doing, this is
>> basically the same kind of filter you would make with an
>> SSM2040...without, unfortunately, the non-linear distortion that is
>> inherent in the SSM2040. I am not sure if I will be able to add a
>> non-linearity in the filter loop or not. That may be some future
>> experiment.
>>
>> Anyway...it is sure looking promising.
>>
>> -Jim
>> ----------------------------------------------
>> Visit http://www.noniandjim.com <http://www.noniandjim.com/>
>> SDIY: http://www.noniandjim.com/Jim/index.html
>> ----------------------------------------------
>>
>> _______________________________________________
>> Synth-diy mailing list
>> Synth-diy at dropmix.xs4all.nl <mailto:Synth-diy at dropmix.xs4all.nl>
>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>>
>>
>
>--
>----------------------------------------------
>Visit http://www.noniandjim.com
>SDIY: http://www.noniandjim.com/Jim/index.html
>----------------------------------------------
>
>_______________________________________________
>Synth-diy mailing list
>Synth-diy at dropmix.xs4all.nl
>http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>
-- ScottG
________________________________________________________________________
-- Scott Gravenhorst
-- FPGA MIDI Synthesizer Information: home1.gte.net/res0658s/FPGA_synth/
-- FatMan: home1.gte.net/res0658s/fatman/
-- NonFatMan: home1.gte.net/res0658s/electronics/
-- When the going gets tough, the tough use the command line.
More information about the Synth-diy
mailing list