Vad måste egentligen hända på en stift- och signalnivå för att programmera en GAL-enhet? Låt oss säga att jag har en GAL 22V10 och en. JED-fil med önskat säkringsmönster. Det vanliga sättet att gå vidare är att släppa chipet till en kommersiell programmerare, ladda. JED-filen och säga att den ska gå. Men vad fortsätter med att konfigurera chipet? Hur specificeras dessa ”säkringar”? Hur läses de tillbaka, skrivs, raderas?
Efter en ansträngning med sökmotorer har jag inget mer konkret än ”PALs är programmerade på samma sätt som PROM ”för att fortsätta. Implikationen verkar vara att om du har en PROM-programmerare tar det inte för mycket att programmera en PAL eller GAL. Betyder det att med programmerad spänning kan du adressera säkringarna som ett minne? Naturligtvis kan GAL-raderas och PROMs var det inte, så denna analogi säger ingenting om hur man skulle radera en.
I synnerhet projektet på http://elm-chan.org/works/pgal/report_e.html gör det uppenbart att hårdvaran är mycket enkel; den enda intressanta biten är mjukvaran för att styra den. Tyvärr (för mig) är kommentarerna i den medföljande programvaran på japanska, och själva koden är 1980-talsmakromonterare för DOS, så att reta ut protokollet ser skrämmande ut, eftersom koden för att läsa .jed-filen (med DOS -ismer) är allt blandat med programmerarens I / O. (För att inte tala om att han har sitt eget protokoll lagrat ovanpå, för att flytta alla parallella bitar genom dessa 595s)
Och ja, jag vet att 22v10 är en dinosaurie. Låt oss säga att jag bara vill veta.
Kommentarer
- Detta ser ut som en utgångspunkt: armory.com/~rstevew/Public/Pgmrs/GAL/algo.htm
- @ThePhoton – mycket användbart. Ser ut som att internt ' säkringarna ' är organiserade i ett antal skiftregister, med en 6-bitars ingång för att välja vilken linje som ska svara på SDin / SDout-stiften.
Svar
Min påminnelse är att de programmerades med parallell adressering och den här sidan på TI: s webbplats verkar bekräfta detta.
Inte alla PAL kan raderas btw. AMD & Gitterets PALCE: er kan raderas elektriskt (standard PAL: erna var inte). Jag vet inte om TI: s TIBPAL & TICPAL som jag länkade till men programmeringsdokumenten nämner inte att radera.
Kommentarer
- Ja, jag tror att de vanliga PAL: erna som 16R8 etc använde verkliga smältbara länkar och var en gång programmerbara, medan de senare GAL-chipsen var EEPROM-baserade och kunde raderas. TI-dokumenten var en bra upptäckt, men verkar bara täcka PAL, men ändå utan tvekan informativa om den allmänna programmeringsmetoden.
- Och sedan fanns EPROM-versionerna. Hur många programmerare vet du vem som skulle vara produktiva under 90 minuter under UV-ljus för varje kompilering? Användte några av dem på en grundläggande elektroteknik-kurs.
- @BenVoigt: De flesta jag ' har sett att använda EPROM skulle nästan alltid försöka ha minst två delar i rotation, om inte tre. Att ha fyra eller fem var ännu bättre, eftersom du kunde hålla ut med att radera din tidigare version tills du var säker på att du inte ' inte vill använda den igen (t.ex. om du lägger in den nya chip och ingenting fungerar kan det vara bra att bekräfta att allt annat i systemet fortfarande är bra.