Moving from GALs to CPLDs - Page 1
Forum section: electronics / general

author: banedon
author_rank: Regular Contributor
timestamp: June 30, 2015, 10:27:03 pm
content: Hi guysI've been looking at moving from GALs which I'm using for memory decoding to something a little more modern so have settled on CPLDs.Can someone recommend a beginner-friendly (and cheap) programmer along with a device which is both DIP and 5V?I've had a lot of problems trying to get such a combination as 5V seems to have gone out of fashion with regard to CPLDs.Any advice appreciated

author: nctnico
author_rank: Super Contributor
timestamp: June 30, 2015, 10:41:37 pm
content: I'm afraid you have to switch to 3.3V. IMHO the XC9500XL series from Xilinx are a nice step up from GALs. They are 5V tolerant and the smallest ones are available in a PLCC package which fits in a through hole PLCC socket.

author: slateraptor
author_rank: Frequent Contributor
timestamp: July 01, 2015, 04:20:17 am
content: Quote from: nctnico on June 30, 2015, 10:41:37 pmNot necessarily true. DIP requirement aside, Altera 7000S may be a better fit for the OP as they are 5VCCIO, also available in PLCC package, and still widely available, albeit a bit more expensive vs. 3.3VCCIOXilinx XC9500XL.As for DIP requirement, a quick distributor parametric search returned Atmel AT750 available in 24-DIP and ATF2500 in 40-DIP, with VOHminof 2.4V for both. I have no experience with Atmel CPLDs so I can't comment on these, although would honestly advise against it since Xilinx and Altera are the dominant players in the reconfigurable market.As for beginner-friendly (and cheap) programmers, I personally own both Xilinx's Platform Cable USB II and Altera's USB-Blaster, both of which are straight-forward USB JTAG programmers with good documentation. Both are expensive if you go OEM, but there are plenty of cheap clones on the market that I'm sure others on this forum have had favorable experiences with and may be able to comment on.

author: andersm
author_rank: Super Contributor
timestamp: July 01, 2015, 06:08:32 am
content: If you take the extra step of converting the programming file into (X)SVF format, there's tons of programmers you can use. OpenOCD and a three-dollar USB Blaster clone is probably the cheapest you can get, though it might not fit your description of "friendly".

author: JoeN
author_rank: Frequent Contributor
timestamp: July 01, 2015, 06:28:14 am
content: DIPEven PLCC is hard to find now. I have about 20 XC9572XL in PLCC sitting around that I bought from Digikey a few years ago and now they are out. I don't think they expect more.You know what I suggest? Get one of these...http://www.ebay.com/itm/5PCS-IC-EPM240T100C5N-TQFP100-ALTERA-NEW-GOOD-QUALITY-/300746279397http://www.ebay.com/itm/Altera-Mini-Usb-Blaster-Cable-For-CPLD-FPGA-NIOS-JTAG-Altera-Programmer-/271577508951http://www.ebay.com/itm/5-Pcs-of-TQFP100-PCB-SMD-Converter-Adapter-Convert-26x4-Dual-Pin-/251320801977And a free copy of Quartus. Or something like this:http://www.ebay.com/itm/1PCS-New-MAX-II-EPM240-CPLD-Minimum-System-Core-board-Development-board-/271037655073You will still need the ByteBlaster with this board.Even these "small" 240 LE devices are amazingly powerful compared to GALs. It's well worth it to use them. Too bad the power supply situation isn't as easy as with a PAL/GAL but they are amazing devices.

author: miguelvp
author_rank: Super Contributor
timestamp: July 01, 2015, 06:55:11 am
content: This one might do for just $30, no programmer needed it's built in, you still need to get Quartus IIhttp://parts.arrow.com/item/detail/arrow-development-tools/bemicromax10No DIP but at least you can use jumper wires to connect things, and if you need more pins you can get the edge connector:http://www.newark.com/samtec/mec6-140-02-l-d-ra1/connector-card-edge-rcpt-80pos/dp/85T5569Edit: other edge connectors:http://www.newark.com/webapp/wcs/stores/servlet/Search?st=MEC614002BeMicro Max 10 wiki:http://www.alterawiki.com/wiki/BeMicro_Max_10Edit: Btw the Altera Max series used to be CPLDs, but they were really very FPGA alike so they got upgraded to that nomenclature, but they are still CPLDs in the sense that they retain the programming.Edit2: but I'm afraid it's not 5V tolerant at all.

author: nctnico
author_rank: Super Contributor
timestamp: July 01, 2015, 07:10:20 am
content: Quote from: andersm on July 01, 2015, 06:08:32 amYou could but I have a Xilinx 'clone' and it works like a charm. I wouldn't be surprised if Xilinx has a hand in getting these clones on the market. Their trademark is also on the 'clone' programmers and I can't imagine they would allow that.

author: miguelvp
author_rank: Super Contributor
timestamp: July 01, 2015, 07:53:59 am
content: Quote from: nctnico on July 01, 2015, 07:10:20 amDon't know about Xilinx but Altera offers documents on how to configure their FPGAS from alternate sources, for example:https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/cyc/cyc_c51013.pdfBut they have other documents regarding this. You still need to use their toolchain to create the files needed to program the FPGA.

author: banedon
author_rank: Regular Contributor
timestamp: July 01, 2015, 05:43:40 pm
content: Cool - Thanks guys.The main issue is that as I'm dealing with old CPUs (65C02S) I need something that not only will take 5V logic in, but have 5V logic out as well.Perhaps I should just stick with GALs for this and when I have a project that can go to 3.3V I'll look at using CPLDs again.

author: nctnico
author_rank: Super Contributor
timestamp: July 01, 2015, 06:19:38 pm
content: That does not need to be a problem. If the logic is TTL compatible then the thresholds are well within the range of logic operating from 3.3V. TTL specifies that anything above 1.4V is regarded '1' and eveything below 0.7V is '0'.

author: bingo600
author_rank: Super Contributor
timestamp: July 01, 2015, 07:18:57 pm
content: Quote from: JoeN on July 01, 2015, 06:28:14 amDon't use the "Red" EPM240 board , it lacks almost all of the decoupling caps.Get the "Blue board"None of them are 5v compatible thoughThe "Blue" is one of my favourite boards , and can be programmed with a $5 USB-Blaster cloneCPLD "Blue board"http://www.ebay.com/itm/271159389579FPGAhttp://www.ebay.com/itm/400630255386Programmerhttp://www.ebay.com/itm/161597061343Or my "Guzunty Pi" port for 1v8 Odroidshttp://forum.odroid.com/viewtopic.php?f=80&t=11888/Bingo

author: slateraptor
author_rank: Frequent Contributor
timestamp: July 02, 2015, 05:55:57 pm
content: Quote from: nctnico on July 01, 2015, 06:19:38 pmAs far as I'm aware, there is no overarching specification for TTL logic level, just de facto standards steered by major manufacturers.More clearly, a typical 3.3V LVTTL device producing VOLmax=0.4V / VOHmin=2.4V should theoretically have no problem interfacing with a typical 5V TTL device accepting VILmax=0.8V / VIHmin=2.0V.Some design considerations:* Including a 3.3V device in a 5V circuit means an additional regulator to supply the power rail. Depending on device power requirements, this can be as simple as an additional resistor and 3.3V Zener diode with decoupling caps, to a complicated 3.3V switching regulator.* Care must be taken when driving 5V signals into a 3.3V device. Selecting a 3.3V device with 5V-tolerant inputs will reduce complexity, but will also have a negative impact on reliability, which may or may not be important to you depending on application.* Pay close attention to your device's current drive spec. This will play an important role in designing sound termination strategy.EDIT: Forgot subscripting.

author: ale500
author_rank: Frequent Contributor
timestamp: July 11, 2015, 04:41:42 am
content: I am also developing some HD63C09-based SBC, and interfacing to 5 V logic is getting more and more difficult. I went for a XC95288XL CPLD. It 5 V tolerant, and still available. But, in reality I should have used 8T245s level shifters and a MachXO2 device: embedded SRAM block, much denser (not really a concern) and cheaper.Some years ago I used just resistors between the 5 V TLL outputs and 3.3 CMOS inputs (to a Parallax Propeller) it never worked quite well. And using just resistors to the MachXO2 is also a waste as it doesn't really work either (just maybe for slow signals...).I think that this is the way to go:http://www.ti.com/corp/docs/landing/hpadavinci/sp_logic_sn74avc1t45.htmThis part can also be used and is available in DIP too:http://www.ti.com/lit/ds/symlink/sn74lvc245a.pdf