RetroBrew Computers Forum
Discussion forum for the RetroBrew Computers community.

Home » RBC Forums » General Discussion » Xilinx XC9572 vs Altera EPM7128S 5v
Xilinx XC9572 vs Altera EPM7128S 5v [message #7790] Mon, 15 June 2020 11:41 Go to next message
suk is currently offline  suk
Messages: 9
Registered: May 2020
Junior Member
I'm looking at options for a 5v tolerant CPLD to be used in a 65C816 and later a 68030 design. I have looked at the Xilinx XC9572 vs Altera EPM7128S used in some SBC designs. I realise these are obsolete parts and supplies may be hard to find. The situation seems better for the Altera. I'm after any thoughts or advice on choosing between the two. I assume I'm correct that going fully 5v logic is going to be more straight forward. I have no major concern going with a mixed supply voltage but I'd rather avoid logic level translations. However I'm very new to this. I haven't identified other components yet such as memory, IO or mass storage. I'm at the theoretical stage.

All thoughts welcome!

Thanks,

Steve
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7791 is a reply to message #7790] Mon, 15 June 2020 13:07 Go to previous messageGo to next message
robg is currently offline  robg
Messages: 43
Registered: October 2017
Member
Hi Steve,

Another option to consider is the Atmel ATF1508AS series. These are in-production parts that are electrically compatible with the EPM7128S. They are programmed using WinCUPL (Windows only) via a $60 programmer from Atmel (ATDH1150USB).

Amtel has a tool, POF2JED, that they say will convert an Altera POF file into an ATF1508 compatible JED file for programming. I have not tried this myself, but it should allow one to use Quartus II (Linux or Windows) to write code for the ATF1508 using Verilog or VHDL (instead of WinCUPL). I plan to try this at some point.

If you use the Altera parts directly, you can get very cheap ($2-$3) programmers on Ebay, but you may have to buy 10 of them because the cheap ones aren't very reliable. Also, to source the EPM7128S, the general recommendation is to get them from UTSource.net.

(While I've used Xilinx's Spartan series FPGAs, I have not used their CPLDs.)

-- Rob


Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7792 is a reply to message #7791] Mon, 15 June 2020 13:14 Go to previous messageGo to next message
wsm is currently offline  wsm
Messages: 232
Registered: February 2017
Location: AB, Canada
Senior Member
Although it has a 3.3V core, you could also use the XC9572XL which is 5V tolerant and requires considerably less power than the 5V version. I've used the Xilinx XPLA3 series [XCR3xxxXL] in several designs ... again they're a 3.3V core but use MUCH LESS power. There's also Lattice's ispMACH 4000V series [LC4xxxV] which are 5V tolerant and can be had in faster speeds (as low as 2.5ns). Using CPLDs that are 5V tolerant but have a Vio of 3.3V allows them to be easily used without level translators in a mixed voltage design which I've done several times without problems.

The extra overhead for the 3.3V version is usually just a 3.3V regulator plus one or two capacitors. Of course there's a bit of extra PCB layout work and possibly a few extra Vio caps.

In the end, there's a lot of tradeoffs with price, speed, power, packages, availability, series breadth, tools etc. and you have to weigh which ones are important to you and your designs.
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7793 is a reply to message #7791] Tue, 16 June 2020 14:10 Go to previous messageGo to next message
suk is currently offline  suk
Messages: 9
Registered: May 2020
Junior Member
robg wrote on Mon, 15 June 2020 13:07
Hi Steve,

Another option to consider is the Atmel ATF1508AS series. These are in-production parts that are electrically compatible with the EPM7128S. They are programmed using WinCUPL (Windows only) via a $60 programmer from Atmel (ATDH1150USB).

Amtel has a tool, POF2JED, that they say will convert an Altera POF file into an ATF1508 compatible JED file for programming. I have not tried this myself, but it should allow one to use Quartus II (Linux or Windows) to write code for the ATF1508 using Verilog or VHDL (instead of WinCUPL). I plan to try this at some point.

If you use the Altera parts directly, you can get very cheap ($2-$3) programmers on Ebay, but you may have to buy 10 of them because the cheap ones aren't very reliable. Also, to source the EPM7128S, the general recommendation is to get them from UTSource.net.

(While I've used Xilinx's Spartan series FPGAs, I have not used their CPLDs.Wink

-- Rob

Thanks Rob, I had discounted the Atmel due to programmer cost but maybe programmer reliability and in production parts is the better balance. I will investigate the tooling and maybe try them out. Also thanks for the recommended parts source.
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7794 is a reply to message #7792] Tue, 16 June 2020 14:19 Go to previous messageGo to next message
suk is currently offline  suk
Messages: 9
Registered: May 2020
Junior Member
wsm wrote on Mon, 15 June 2020 13:14
Although it has a 3.3V core, you could also use the XC9572XL which is 5V tolerant and requires considerably less power than the 5V version. I've used the Xilinx XPLA3 series [XCR3xxxXL] in several designs ... again they're a 3.3V core but use MUCH LESS power. There's also Lattice's ispMACH 4000V series [LC4xxxV] which are 5V tolerant and can be had in faster speeds (as low as 2.5ns). Using CPLDs that are 5V tolerant but have a Vio of 3.3V allows them to be easily used without level translators in a mixed voltage design which I've done several times without problems.

The extra overhead for the 3.3V version is usually just a 3.3V regulator plus one or two capacitors. Of course there's a bit of extra PCB layout work and possibly a few extra Vio caps.

In the end, there's a lot of tradeoffs with price, speed, power, packages, availability, series breadth, tools etc. and you have to weigh which ones are important to you and your designs.
Thanks very much. Can the 3.3v CPLDs drive chip selects or RW signals on usually 5v memory or peripheral ICs? I'm particularly thinking if I have a 5v logic address and data busses but 3.3v signalling out of the CPLD. I don't think I would need additional 74xx logic on the output side to consider.
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7796 is a reply to message #7794] Tue, 16 June 2020 17:06 Go to previous messageGo to next message
wsm is currently offline  wsm
Messages: 232
Registered: February 2017
Location: AB, Canada
Senior Member
Quote:
Thanks very much. Can the 3.3v CPLDs drive chip selects or RW signals on usually 5v memory or peripheral ICs? I'm particularly thinking if I have a 5v logic address and data busses but 3.3v signalling out of the CPLD. I don't think I would need additional 74xx logic on the output side to consider.
Absolutely. Besides the 5V tolerance for inputs, the 3.3V XPLA3 series can drive Voh up to about 40+mA before dropping below the TTL threshold of 2.0V although the recommended operating conditions are at 8mA. Likewise Vol can handle about 40mA before rising above 0.7V.

My MinZ-C design is primarily 5V with a Z180, 5V SRAM etc. and I used an XCR3064XL for pretty well all the glue logic plus a 25MHz SPI controller. On my MinZ-IO2 board I used an XCR3128XL for the glue logic plus address registers and level translation between the 5V Z180 and a 3.3V 8MB flash device. My NYOZ series base module also uses an XCR3128XL with a large mixture of 3.3V and 5V devices. I've also done several other mixed-voltage boards like these without any issues using 3.3V CPLDs and also 1.8V CPLDs (XC2C CoolRunners) with 3.3V Vio.

A quick review of the XC9572XL appears to show similar characteristics as does the ispMACH 4000 series but both with lower Voh current at 4mA. If in doubt, look at the I/V curves in the datasheets.

By default, I used to use the MCP1700-3.3 for a simple 3.3V regulator but have now switched to the AP2127 which has much better load transient response. And yes, I learned this the hard way Embarrassed

There are relatively cheap USB-JTAG programmers for Xilinx on eBay but I still use the Xilinx design for a parallel port programmer which just uses two HC125 chips plus some resistors, caps & diodes.

[Updated on: Wed, 17 June 2020 04:40]

Report message to a moderator

Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7800 is a reply to message #7796] Wed, 17 June 2020 10:43 Go to previous messageGo to next message
suk is currently offline  suk
Messages: 9
Registered: May 2020
Junior Member
wsm wrote on Tue, 16 June 2020 17:06
My MinZ-C design is primarily 5V with a Z180, 5V SRAM etc. and I used an XCR3064XL for pretty well all the glue logic plus a 25MHz SPI controller. On my MinZ-IO2 board I used an XCR3128XL for the glue logic plus address registers and level translation between the 5V Z180 and a 3.3V 8MB flash device. My NYOZ series base module also uses an XCR3128XL with a large mixture of 3.3V and 5V devices.
This is great information, I can't thank you enough. I can't seem to locate any dev/evaluation boards with the XPLA3 series chips on. May I ask how you do prototyping with cplds?
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7801 is a reply to message #7800] Wed, 17 June 2020 12:20 Go to previous messageGo to next message
wsm is currently offline  wsm
Messages: 232
Registered: February 2017
Location: AB, Canada
Senior Member
Although a development board would be easy to design, I've never owned any. I normally just design the CPLD into my PCB and then use a JTAG header to do in-circuit programming, both initially and for debug iterations. The XCR3032 and XCR3064 were once offered in PLCC packages which I used early on with a separate programming board but these chips are becoming scarce and I haven't done that for several years.

The XC95xxXL and ispMACH 4000 series use dedicated JTAG pins. The XCR3xxxXL series share JTAG pins with I/O pins and their function is controlled by the PORT_EN pin (GND=I/O and +3.3V=JTAG) ... a 10K resistor to GND allows for easy [re]programming. Careful attention to I/O direction on these shared pins means that you can avoid the need for external tri-state buffers.

Note that one has to be somewhat sceptical of second-source CPLDs and they may have been pre-programmed at some point. For the first-time program I usually just populate the PCB with minimal CPLD components and program them with my I/O directions before fully populating the rest of the board. That way there should never be the CPLD and another device driving a shared signal at the same time before the first programming.

When designing with CPLDs there is both an I/O pin count and a macrocell count requirement. Ideally, I like to use the minimal pin count but possibly leave one or two pins free which can be used for LEDs and later repurposed for interface upgrades / revisions. Likewise for macrocells I choose the minimum required due to cost but ideally where the macrocell count can be increased within the same package without a PCB change (i.e. XCR3032XL-VQ44 to XCR3064XL, XCR3064XL-VQ100 to XCR3128XL or XCR3128XL-TQ144 to XCR3256XL).

There is also the obvious design choice of which family to use and what speed is required.
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7812 is a reply to message #7801] Thu, 18 June 2020 13:21 Go to previous messageGo to next message
suk is currently offline  suk
Messages: 9
Registered: May 2020
Junior Member
Sounds like I have a lot to learn! I really appreciate your help
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7814 is a reply to message #7812] Thu, 18 June 2020 17:28 Go to previous messageGo to next message
plasmo is currently offline  plasmo
Messages: 916
Registered: March 2017
Location: New Mexico, USA
Senior Member
I second wsm's design approach. Once you have the JTAG programming header working, development board is really not necessary. You should always populate and program the CPLD first before populating the rest of active ICs.
Bill
Re: Xilinx XC9572 vs Altera EPM7128S 5v [message #7825 is a reply to message #7814] Sat, 20 June 2020 09:12 Go to previous message
suk is currently offline  suk
Messages: 9
Registered: May 2020
Junior Member
plasmo wrote on Thu, 18 June 2020 17:28
I second wsm's design approach. Once you have the JTAG programming header working, development board is really not necessary. You should always populate and program the CPLD first before populating the rest of active ICs.
Bill
Understood, thanks Bill
Previous Topic: How to interface speaker to 6502?
Next Topic: Tiny68K with IDE Hard Drive


Current Time: Sun Mar 16 02:52:44 PDT 2025

Total time taken to generate the page: 0.00638 seconds