Welcome to SYNTHINGS.com

I've been planning on making some kind of digital synthesizer for a while now. Every time I make a start on it, I get to a certain point and discover that there's some limitation in the hardware I've chosen, such as:

  • Not enough memory
  • Not expandable enough (too few I/O pins)
  • Not fast enough
  • Not enough internal resources
  • Display didn't work correctly

The main reason for this is because I've been using a small FPGA (Xilinx XC3S250E or XC3S200A) - these will go up to a 144-pin TQFP package (albeit a smaller logic gate count), so then I'd lose the number of internal resources but gain some pins.

Since I do all my PCB manufacturing at home, and hand-solder the chips, I'm limited to chips with real pins - BGA isn't possible at this moment in time. So, I've decided to go for a Xilinx XC3S500E in a 208-pin PQFP package. This has opened up a number of possibilities - SYNTHINGS being one of them.

SYNTHINGS 1 is a prototyping board - it has plenty of memory, resources, and a very capable microcontroller which should allow me to find out what the limits are. When I'm happy with what I want to achieve, then I'll start work on SYNTHINGS 2, which will be a board I'll get made professionally, and contain all of the functionality of SYNTHINGS 1 - except much more capable.

The goals are:

  1. A generic system for creating digital synthesizers
  2. Lots of logic capabilities (the XC3S500E has the equivalent of approximately 500,000 logic gates)
  3. 50MHz single clock input
  4. I2S output
  5. A nice LCD display for user interface
  6. Some controls (I tend to use three switches plus a rotary encoder)
  7. MIDI input
  8. SD card for storage

Possible extensions are:

  1. Reprogramming of FPGA and microcontroller via SD card interface
  2. Experimenting with an embedded CPU in the FPGA

Hopefully this hardware will provide me with lots of playing capabilities!

SYNTHINGS 2 will build on SYNTHINGS 1, and is aimed to:

  1. Be on a single PCB
  2. Use a more capable FPGA
  3. Have more memory
  4. Have faster memory
  5. Have more general purpose I/O ports
  6. Not rely on a microcontroller
Updated: 2011-06-08 20:39:29 | Comments: 1 | Show comments | Add comment
© Copyright 2010
Synthings.com / Tribbeck.com / Jason Tribbeck
All trademarks are the property of their respective owners.