CPLD vs. uC for PGA2310

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
I have seen several threads here about the PGA2310 and it seems like most people are using a microcontroller to control it. What are some advantages the micro has over a CPLD? I am asking because I am much more familiar with CPLDs and have access to software. I know the CPLD would require an external clock. I am guessing a 100kHz clock would do fine for the PGA and whatever other controls I include. Would this clock cause any interference with the rest of my analog circuitry?
 
I say CPLD... if you're going basic functions, uCPU if you want to start doing more fancy stuff.

But 10 lines of VHDL in your CPLD (for debouncing switches and sending the signal to your PGA) will be 100 lines of code in a uCPU.

Either way you'll want an analog gnd and a digital gnd. Your digital gnd should be a seperate point that is connected to your analog gnd with one wire... decouple your digital logic to your digital gnd too.
 
I use a Xilinx XC9572XL CPLD to control three PGA2310s. There's an up/down switch to increment or decrement the data that's put on the SPI bus and I also put in a two second power-up delay to drive the anti-thump relays.

There's a couple of pics and a scope trace of the SPI in this thread:
http://www.diyaudio.com/forums/showthread.php?threadid=24731

Let me know if you'd like the source code (VHDL).

Nice one,
David.
 
going with CPLD...

It looks like I will go with a CPLD then. It helps that I use VHDL very often at my job and have access to all of the Altera programming software/hardware. If I ever get into anything more advanced (adding IR remote or something..) i will take a harder look at the micro.

Thanks for all the help!
jeremy
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.