Page 3 of 4
Re: ATF1504AS: Questions about this CPLD
Posted: Wed Jul 29, 2020 2:19 pm
by BigDumbDinosaur
I've discovered some useful information about the ISP versions of these devices as I've been using them for my ROM X product (
http://www.theromexchange.com)...Now, if in your design you ensure that you can isolate the OE1 pin on the CPLD from any other circuitry (so that you can safely apply +12V to the OE1 pin without blowing the crap out of anything attached to it!) then you can re-enable the JTAG port in this manner. Applying +12V to the OE1 pin through a resistor (1k8 is fine) whilst attemting to reprogram the chip in ATMISP should yield results. I initially get a verify error, but after that the JTAG is unlocked again and usable

Interesting! I figured there had to be a way.
Re: ATF1504AS: Questions about this CPLD
Posted: Sun Dec 06, 2020 4:00 am
by maded2
I've discovered some useful information about the ISP versions of these devices as I've been using them for my ROM X product (
http://www.theromexchange.com).
It
IS possible to use the JTAG pins as general I/O by adding the following property to your source :
PROPERTY ATMEL {JTAG=OFF};
With that in there, the code should compile, the fitter should then re-use the JTAG pins as you intend, and create a .JED file for programming. Once programmed (you'll be prompted to set the JTAG Port Check Override option in the ATMISP options menu), the JTAG will be locked out, but you've got 4 more pins to play with!
Now, if in your design you ensure that you can isolate the OE1 pin on the CPLD from any other circuitry (so that you can safely apply +12V to the OE1 pin without blowing the crap out of anything attached to it!) then you can re-enable the JTAG port in this manner. Applying +12V to the OE1 pin through a resistor (1k8 is fine) whilst attemting to reprogram the chip in ATMISP should yield results. I initially get a verify error, but after that the JTAG is unlocked again and usable
I suppose you also best ensure that nothing is going to be driving the JTAG pins while you are programming the thing else include links (jumpers or smd resistors etc) to disconnect other circuitry from the JTAG pins.
Anyway, this may possibly free up some pins for you.
Secondly, it is also possible to develop for these devices in VHDL or Verilog using Altera's Quartus software (web editiion 13.0sp1 is the last one to support the MAX 7000 series chips on which the ATF1500 series devices are based) - you select the equivalent Altera device :
EPM7032 = ATF1502
EPM7064 = ATF1504
EPM7128 = ATF1508
Once you have compiled your design (.POF file generated) you can use Microchips POF2JED utility to convert it to a .JED file for programming via ATMISP

I wonder this trick can be use on the MAX7000S CPLD. I currently have 4 used EPM7128S with the JTAG disabled. Really would like to factory reset them. From searching on the Internet, it mentioned that the only way is to use a Parallel Programmer (which is almost impossible to find).
Re: ATF1504AS: Questions about this CPLD
Posted: Tue Dec 08, 2020 6:12 pm
by Windfall
I wonder this trick can be use on the MAX7000S CPLD. I currently have 4 used EPM7128S with the JTAG disabled. Really would like to factory reset them. From searching on the Internet, it mentioned that the only way is to use a Parallel Programmer (which is almost impossible to find).
Go to someone who has one. I've had some Altera 7000 series CPLDs 'JTAG unlocked' some years ago. Ask the guy from
http://www.digital-circuitry.com/ if he can (still) help.
Re: ATF1504AS: Questions about this CPLD
Posted: Wed Dec 23, 2020 1:16 am
by plasmo
I've discovered some useful information about the ISP versions of these devices as I've been using them for my ROM X product (
http://www.theromexchange.com).
It
IS possible to use the JTAG pins as general I/O by adding the following property to your source :
PROPERTY ATMEL {JTAG=OFF};
With that in there, the code should compile, the fitter should then re-use the JTAG pins as you intend, and create a .JED file for programming. Once programmed (you'll be prompted to set the JTAG Port Check Override option in the ATMISP options menu), the JTAG will be locked out, but you've got 4 more pins to play with!
Now, if in your design you ensure that you can isolate the OE1 pin on the CPLD from any other circuitry (so that you can safely apply +12V to the OE1 pin without blowing the crap out of anything attached to it!) then you can re-enable the JTAG port in this manner. Applying +12V to the OE1 pin through a resistor (1k8 is fine) whilst attemting to reprogram the chip in ATMISP should yield results. I initially get a verify error, but after that the JTAG is unlocked again and usable
I suppose you also best ensure that nothing is going to be driving the JTAG pins while you are programming the thing else include links (jumpers or smd resistors etc) to disconnect other circuitry from the JTAG pins.
Anyway, this may possibly free up some pins for you.
Secondly, it is also possible to develop for these devices in VHDL or Verilog using Altera's Quartus software (web editiion 13.0sp1 is the last one to support the MAX 7000 series chips on which the ATF1500 series devices are based) - you select the equivalent Altera device :
EPM7032 = ATF1502
EPM7064 = ATF1504
EPM7128 = ATF1508
Once you have compiled your design (.POF file generated) you can use Microchips POF2JED utility to convert it to a .JED file for programming via ATMISP

I wonder this trick can be use on the MAX7000S CPLD. I currently have 4 used EPM7128S with the JTAG disabled. Really would like to factory reset them. From searching on the Internet, it mentioned that the only way is to use a Parallel Programmer (which is almost impossible to find).
I'm happy to report that the "12V to OE" trick also restore JTAG function to Altera EPM7064S.
I bought 10pcs EPM7064S on eBay and only 4 can be recognized by the USB blaster. I set the non working EPM7064S aside but tried them again after reading this thread. I used a board with no other connections other than the JTAG connections. I connected a 1.8K resistor to OE (pin 44) and apply 5V first and then 12V. JTAG programmer still does not recognize the device, but I went through the motion of programming it anyway with 12V applied. For few parts need to be programmed with 12V several times. Eventually (with 12V removed), the JTAG will recognize the device and proceed to program and verify OK. I put the "reconditioned" EPM7064S in a functioning board and they all worked correctly. This is great trick!
Bill
Re: ATF1504AS: Questions about this CPLD
Posted: Wed Dec 23, 2020 2:05 am
by maded2
I've discovered some useful information about the ISP versions of these devices as I've been using them for my ROM X product (
http://www.theromexchange.com).
It
IS possible to use the JTAG pins as general I/O by adding the following property to your source :
PROPERTY ATMEL {JTAG=OFF};
With that in there, the code should compile, the fitter should then re-use the JTAG pins as you intend, and create a .JED file for programming. Once programmed (you'll be prompted to set the JTAG Port Check Override option in the ATMISP options menu), the JTAG will be locked out, but you've got 4 more pins to play with!
Now, if in your design you ensure that you can isolate the OE1 pin on the CPLD from any other circuitry (so that you can safely apply +12V to the OE1 pin without blowing the crap out of anything attached to it!) then you can re-enable the JTAG port in this manner. Applying +12V to the OE1 pin through a resistor (1k8 is fine) whilst attemting to reprogram the chip in ATMISP should yield results. I initially get a verify error, but after that the JTAG is unlocked again and usable
I suppose you also best ensure that nothing is going to be driving the JTAG pins while you are programming the thing else include links (jumpers or smd resistors etc) to disconnect other circuitry from the JTAG pins.
Anyway, this may possibly free up some pins for you.
Secondly, it is also possible to develop for these devices in VHDL or Verilog using Altera's Quartus software (web editiion 13.0sp1 is the last one to support the MAX 7000 series chips on which the ATF1500 series devices are based) - you select the equivalent Altera device :
EPM7032 = ATF1502
EPM7064 = ATF1504
EPM7128 = ATF1508
Once you have compiled your design (.POF file generated) you can use Microchips POF2JED utility to convert it to a .JED file for programming via ATMISP

I wonder this trick can be use on the MAX7000S CPLD. I currently have 4 used EPM7128S with the JTAG disabled. Really would like to factory reset them. From searching on the Internet, it mentioned that the only way is to use a Parallel Programmer (which is almost impossible to find).
I'm happy to report that the "12V to OE" trick also restore JTAG function to Altera EPM7064S.
I bought 10pcs EPM7064S on eBay and only 4 can be recognized by the USB blaster. I set the non working EPM7064S aside but tried them again after reading this thread. I used a board with no other connections other than the JTAG connections. I connected a 1.8K resistor to OE (pin 44) and apply 5V first and then 12V. JTAG programmer still does not recognize the device, but I went through the motion of programming it anyway with 12V applied. For few parts need to be programmed with 12V several times. Eventually (with 12V removed), the JTAG will recognize the device and proceed to program and verify OK. I put the "reconditioned" EPM7064S in a functioning board and they all worked correctly. This is great trick!
Bill
wow, thanks for that info. I will give it a try on the EPM7128SLC that I got from Aliexpress (which has the JTAG disabled). I also managed to get a ByteBlasterMV from eBay which suppose to be able to program the JTAG disabled CPLD, but I don't have a PC with parallel port to try.
If this works, it will be amazing trick for the EPM7128S as there are tons of these chip around in the used market and they are very cheap.
I will report back with findings over the next few days.
eddie
Re: ATF1504AS: Questions about this CPLD
Posted: Wed Dec 23, 2020 12:43 pm
by Windfall
I'm happy to report that the "12V to OE" trick also restore JTAG function to Altera EPM7064S.
wow, thanks for that info. I will give it a try on the EPM7128SLC that I got from Aliexpress (which has the JTAG disabled).
Beware. It can be JTAG disabled, but it can also be remarked.
About 7 years ago I bought a bunch of EPM7032STC44 that turned out to be remarked EPM7032TC44. Non-S cannot be JTAG programmed. They need the dedicated Altera programmer. And nobody seems to know anything about the programming protocol Altera thought up for them.
I also managed to get a ByteBlasterMV from eBay which suppose to be able to program the JTAG disabled CPLD, but I don't have a PC with parallel port to try.
That is definitely not going to work. ByteBlasterMV is nothing special. It's just the parallel port version of a ByteBlaster (which is USB these days).
If this works, it will be amazing trick for the EPM7128S as there are tons of these chip around in the used market and they are very cheap.
See above. Maybe. But you could also get remarked chips.
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 1:17 am
by maded2
I'm happy to report that the "12V to OE" trick also restore JTAG function to Altera EPM7064S.
wow, thanks for that info. I will give it a try on the EPM7128SLC that I got from Aliexpress (which has the JTAG disabled).
Beware. It can be JTAG disabled, but it can also be remarked.
About 7 years ago I bought a bunch of EPM7032STC44 that turned out to be remarked EPM7032TC44. Non-S cannot be JTAG programmed. They need the dedicated Altera programmer. And nobody seems to know anything about the programming protocol Altera thought up for them.
I also managed to get a ByteBlasterMV from eBay which suppose to be able to program the JTAG disabled CPLD, but I don't have a PC with parallel port to try.
That is definitely not going to work. ByteBlasterMV is nothing special. It's just the parallel port version of a ByteBlaster (which is USB these days).
If this works, it will be amazing trick for the EPM7128S as there are tons of these chip around in the used market and they are very cheap.
See above. Maybe. But you could also get remarked chips.
thanks, this could be the case. But of the 2 batch of chips I got from the same vendor, I got 2 out of 14 chips to JTAG scan and programmed.
I started the 12V OE tests, but currently without success. I measured 8.4V at the OE pin (with the 1.8k resistor). I planned to change the resistor to 1k to allow higher voltage to see if that works.
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 5:24 am
by plasmo
There are two OE pins on 7128S. I believe OE1 (pin 84 on the PLCC84 package) is the pin that needs 12V to re-enable JTAG.
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 7:08 am
by maded2
There are two OE pins on 7128S. I believe OE1 (pin 84 on the PLCC84 package) is the pin that needs 12V to re-enable JTAG.
I've tried OE1 and OE1 + OE2 with 12V in-series with a 1.8K resister. Both attempt did not work. I will try with 1K resistor tonight when I get home.
@plasmo, what messages did you get from the programmer software when you say "JTAG programmer still does not recognize the device, but I went through the motion of programming it anyway with 12V applied". All I get is unrecognized device and stop.
thanks,
eddie
Log Messages I get when I try to program the CPLD
Code: Select all
Info (209060): Started Programmer operation at Thu Dec 24 21:20:47 2020
Info (209006): Unrecognized device
Error (209001): JTAG ID code specified in JEDEC STAPL Format File does not match any valid JTAG ID codes for device
Error (209012): Operation failed
Info (209061): Ended Programmer operation at Thu Dec 24 21:20:48 2020
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 1:53 pm
by plasmo
There are two OE pins on 7128S. I believe OE1 (pin 84 on the PLCC84 package) is the pin that needs 12V to re-enable JTAG.
I've tried OE1 and OE1 + OE2 with 12V in-series with a 1.8K resister. Both attempt did not work. I will try with 1K resistor tonight when I get home.
@plasmo, what messages did you get from the programmer software when you say "JTAG programmer still does not recognize the device, but I went through the motion of programming it anyway with 12V applied". All I get is unrecognized device and stop.
thanks,
eddie
Log Messages I get when I try to program the CPLD
Code: Select all
Info (209060): Started Programmer operation at Thu Dec 24 21:20:47 2020
Info (209006): Unrecognized device
Error (209001): JTAG ID code specified in JEDEC STAPL Format File does not match any valid JTAG ID codes for device
Error (209012): Operation failed
Info (209061): Ended Programmer operation at Thu Dec 24 21:20:48 2020
I believe applying 12V to OE1 only enable JTAG, you still need to send in a valid programming file for that device to re-enable the JTAG without the external 12V. Since JTAG pins can potentially be outputs that conflict with the JTAG programmer, I suppose the correct sequence is: power up 5V; apply 12V to enable JTAG; and plug in the JTAG programmer.
Unfortunately I was successful in restoring JTAG function to all my EPM7064S, so I can not repeat my tests. I recall the USB blaster was complaining that JTAG is not working (like your error message) while I was programming it with 12V to OE1 applied, but the program must have entered the device. Few devices I have to try multiple times.
Bill
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 2:59 pm
by maded2
There are two OE pins on 7128S. I believe OE1 (pin 84 on the PLCC84 package) is the pin that needs 12V to re-enable JTAG.
I've tried OE1 and OE1 + OE2 with 12V in-series with a 1.8K resister. Both attempt did not work. I will try with 1K resistor tonight when I get home.
@plasmo, what messages did you get from the programmer software when you say "JTAG programmer still does not recognize the device, but I went through the motion of programming it anyway with 12V applied". All I get is unrecognized device and stop.
thanks,
eddie
Log Messages I get when I try to program the CPLD
Code: Select all
Info (209060): Started Programmer operation at Thu Dec 24 21:20:47 2020
Info (209006): Unrecognized device
Error (209001): JTAG ID code specified in JEDEC STAPL Format File does not match any valid JTAG ID codes for device
Error (209012): Operation failed
Info (209061): Ended Programmer operation at Thu Dec 24 21:20:48 2020
I believe applying 12V to OE1 only enable JTAG, you still need to send in a valid programming file for that device to re-enable the JTAG without the external 12V. Since JTAG pins can potentially be outputs that conflict with the JTAG programmer, I suppose the correct sequence is: power up 5V; apply 12V to enable JTAG; and plug in the JTAG programmer.
Unfortunately I was successful in restoring JTAG function to all my EPM7064S, so I can not repeat my tests. I recall the USB blaster was complaining that JTAG is not working (like your error message) while I was programming it with 12V to OE1 applied, but the program must have entered the device. Few devices I have to try multiple times.
Bill
I followed your steps but still not successful
btw, is your USB Blaster the official one or a clone? (I am using a USB Blaster clone) I just get the keep getting
Code: Select all
Error (209001): JTAG ID code specified in JEDEC STAPL Format File does not match any valid JTAG ID codes for device
Error (209012): Operation failed
no matter what I do.
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 3:16 pm
by plasmo
Mine USB blaster is just a cheap $5 clone.
Maybe 7128S is different than 7064S regarding the JTAG enabling. Or perhaps the 7128S you have are something else. I'm interested to try the JTAG enabling method on 7128S. Did you buy yours from eBay?
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 4:15 pm
by maded2
Mine USB blaster is just a cheap $5 clone.
Maybe 7128S is different than 7064S regarding the JTAG enabling. Or perhaps the 7128S you have are something else. I'm interested to try the JTAG enabling method on 7128S. Did you buy yours from eBay?
Got them from Aliexpress. PM me with your address and I send some over after the holidays for you to try. I've 12 of them.
thanks,
eddie
Re: ATF1504AS: Questions about this CPLD
Posted: Thu Dec 24, 2020 4:49 pm
by plasmo
Mine USB blaster is just a cheap $5 clone.
Maybe 7128S is different than 7064S regarding the JTAG enabling. Or perhaps the 7128S you have are something else. I'm interested to try the JTAG enabling method on 7128S. Did you buy yours from eBay?
Got them from Aliexpress. PM me with your address and I send some over after the holidays for you to try. I've 12 of them.
thanks,
eddie
Thank you, I just sent you a PM.
Bill
Re: ATF1504AS: Questions about this CPLD
Posted: Sat Jan 09, 2021 3:24 am
by plasmo
Mine USB blaster is just a cheap $5 clone.
Maybe 7128S is different than 7064S regarding the JTAG enabling. Or perhaps the 7128S you have are something else. I'm interested to try the JTAG enabling method on 7128S. Did you buy yours from eBay?
Got them from Aliexpress. PM me with your address and I send some over after the holidays for you to try. I've 12 of them.
thanks,
eddie
Eddie,
I received 4 pcs EPM7128SLC84. I verify their JTAG ports are locked. Three of the 4 parts draw fairly high current, 200-300mA; one draws about 100mA. I have a proven programming fixture for EPM7128SLC84. Only signals hooked up in the programming fixture are power/ground and 4 JTAG signals. I added a 1K resistor to OE1 (pin84) where 12.5V can be applied through the 1K resistor. I apply 5V first and 12.5V next. I was able to erase the JTAG lock for the part with low current. Once JTAG is re-enabled, it programmed normally. However, with the three high-current parts, I was not successful in erasing the JTAG lock. I've tried many times, but failed every time.
Here is what I've observed with the successful part: I programmed with a working EPM7128SLC84 POF file. The programmer reported unsuccessful JTAG connection and programming appeared to have failed, but once I removed 12V and recycled 5V, I'm able to establish JTAG connection and program the part normally.
So there is a small success, but more works are needed to reliably erase the JTAG lock.
Bill