• Literature
  • ATF750, ATF2500 programming algorithms
2019/10/29 13:42:22
I hope this is the right forum for this, but I did not see a forum category specifically for programmable logic.
First of all, let me say that I generally really appreciate Atmel/Microchip's continued support for interfacing to legacy systems whereas most manufacturers have abandoned them. The continued availability of 5 V tolerant, or even 5 V powered parts, especially in DIP packages, is of truly great benefit to those of us that have to interface to and repair systems that may be 40 years old and still in production, as well as the hobbyist community for whom breadboard prototyping is the norm.

Furthermore, let me state that the documentation quality for your products is generally excellent, and I applaud your general commitment to open hardware details.
Which brings me to the following topic: the support for ATF750 and ATF2500 series CPLD in contemporary programmers is very poor. The data sheets say "supported by all third-party programmers", but that is no longer the case. The reason appears to be that their programming algorithm is not the JEDEC algorithm used by PALs/GALs, but something proprietary; possibly (probably) a variant of this, but it appears completely undocumented in a form accessible to the general public, and therefore not picked up by developers of modern low-cost programmers like the Autoelectric TL866 series. The cost of a programmer that supports these parts start at roughly $300, used, whereas generic programmers these days otherwise range around $30.
This is particularly a problem for the ATF750, because this part appears to be uniquely suited to replacing no longer available parts in narrow (0.300) DIP packages. TQFP packages can generally be put on a circuit board carrier to be seated in a wide (0.600) DIP slot, but this is simply not possible in the narrow form factor.

The ATF22V10 similarly uses a proprietary algorithm, but it has since been reverse engineered in the public domain:
... and as a result support is starting to appear in these low-cost programmers.

However, the ATF22V10, like all 22V10 products, does not support buried flipflops of any kind, which is a major shortcoming and greatly limits its use. I, personally, recently had to abandon a project where a single ATF750 would have solved the issue, but no general solution without a brand new custom circuit board (which would have been nearly impossible, if not outright impossible, to fit, and would have risked permanently damaging the largely irreplaceable legacy equipment.)

Thus, I would like to politely request that the programming algorithm for ATF750 and ATF2500 be released to the public, even informally (without support) if necessary. If the documentation that was originally provided to programmer manufacturers has been lost, perhaps the reverse-engineered information above could act like a starting point; I would guess that there are enough similarities. One can assume at this point that any IP that once was relevant for these parts is long since obsolete.

Now, if I could really dream freely, I would love to see an ATF1502AS(L) in a DIP-28 package, specifically with CLK3 on pin 1, and I/O-available pins on the other pins. That being said, the ATF15xx series also has the problem that if the user needs to disable JTAG due to existing pinout requirements and/or the number of I/Os needed, the restoration (erasure) operation is undocumented. The MAX7000, with which the ATF1500 series is supposed to be compatible, can apparently have JTAG disabled in user mode only by pulling TCK down during startup, not sure if that applies to ATF1500 as well; that being said, documenting this particular sequence using a high voltage unlock would be really appreciated.
The ATMega328P has a great description of its high voltage programming algorithm; something similar would be greatly appreciated.
2019/10/29 15:01:14
Note, this is a user forum, you're not talking directly to Microchip here.
If you want to lodge an official request, open a "support ticket" via http://microchip.com/support
2019/11/05 14:42:24
Thank you! I have submitted ticket 00474797 and included a .pld file to provide a concrete example. Hopefully something will come of it.
2020/01/03 15:32:03
So, did you manage to get any information from Microchip? I am quite interested in the topic as well, and your post here seems to be as close to an answer as Google can get ;)
2020/08/07 13:22:05
I am working to extend the afterburner programmer to support also the ATF750C Smile: Smile
There is some information missing, but I think I can finish it with some trial and error.
Unfortunately I have to rewrite afterburner because the number of fuses doesn't fit into the ATMega328 memory, so I have to rewrite many functions and even move functionality from the ATMega328 to the PC. The good news is it is halfway done, but I have not done a single test until now.
If you want to follow the work, you can have a look here (branch "atf750c"):
I also tried to support the ATF750C for the minipro open source CLI software for the TL866II Plus, but unfortunately the ATF750C needs 7 bit row addresses and the TL866II Plus firmware supports only 6 bit row addresses. The hardware could do it, but it needs a new firmware. Maybe we can convince XGecu to support the ATF750C once it works in afterburner.
2020/10/02 22:45:40
the first version of my afterburner extension can now program and verify an ATF750C. Still lots of testing necessary, but at least a first success.
© 2021 APG vNext Commercial Version 4.5

Use My Existing Forum Account