Záhadné obvody GAL a PAL pro mě byly vždy strašlivé tabu. Časem jsem zjistil, že zase až tak strašlivé to není a posléze, že je to vlastně docela jednoduché . Na programování těchto potvůrek mám čínskou příšernost Genius G540, takže mně projekt Radka Suka na postavení GALBlast 1.6 zpočátku moc neuchvacoval. Ovšem na druhou stranu jsem si řekl, že si přece nenechám takovou příležitost (tišťák za 55 Kč) proklouznout mezi prsty a pustil jsem se do toho. Tedy, měl jsem ještě jeden důvod. On ten Číňan je fakt potvora a kromě toho, že zlobí (např. JEDEC z OPAL jr musíte upravit, aby se dal vůbec načíst) umí jen základní modely 16V8, 20V8 a 22V10. Tak jsem do toho šel.
Programátor jsem stavěl podle návodu na GALBlast 1.6 od Manfreda Winterhoffa. Různých verzí GALBlast se najdete na síti poměrně hodně, například na hw.cz nebo MCU.cz. Docela by mě zajímalo i GAL CD, které je zmiňováno zde nebo zde. Nemáte ho někdo?
Desky nechal udělat Radek Suk v našem oblíbeném Seeedstudiu a díky tomu, že jsme tentokrát nebazírovali na zlatě a testování a vyšly i s poštovným z Asie na již zmíněných 55 Kč. Pokud má někdo zájem, Radek ještě pár kousků má. Můžete psát na suk zavináč softex.cz. Update (20.3.2014): DPS jsou už pryč, ale když Radkovi napíšete, rád vám pomůže kde a jak si je můžete sami objednat.
Postaveno bylo za chvilku, součástek moc není. GALBlast se připojuje na paralelní port PC a tato verze má už docela dobře vyřešený zdroj s měničem 78S40 a D/A převodníkem TLC7524, takže stačí jediné napájecí napětí 9V. Deska je udělaná univerzálně, takže se dá osadit i tak, že lze použít externí zdroj napětí 24V a místo měniče a D/A převodníku se osadí jen OZ CA3140E.
Koupil jsem trochu větší cívku, než autor, tak jsem musel jeden kondenzátor osadit zespodu. Na funkčnost to vliv nemá a programátor šlapal na první zapojení.
Tedy, co se týká hardwaru. Se softem to bylo horší. Mám totiž na počítači 64-bitovou edici Windows 7 a v nich už 16-bitové aplikace neběží. Zkusil jsem Windows XP ve VMware, ale nepomohl ani přiložený ovladač TOTALIO.SYS, ani Ikonův návod a doporučení UserPort. Zřejmě můj PCI LPT port na LPT3/EC00 protažený do virtuálního stroje není tak jednoduché obsloužit . Programátor sice sem tam něco dělal, občas i načetl víceméně bláboly, mezi kterými byly i správná data. Zkrátka choval se, jako kdyby se na LPT hádaly dvě zařízení. Tak jsem přitvrdil a navirtualizoval Windows 98. No a vida, GALBlast najednou šlape jako víno.
Programovat lze poměrně širokou škálu GAL: 16V8, 18V10, 20V8, 20RA10, 20XV10, 22V10, 26CV12, 6001, 6002 a to, jak v 5V, tak i 3.3V LV provedení.
Docela zajímavá je kalibrace programovacího napětí, která se dělá tak, že se zvolí „Setup port“ bez GAL v patici, změří se programovací napětí na GAL a to se opíše do dialogu. Jednoduché a efektivní.
Programování GAL pak už probíhá po načtení JEDEC souboru poměrně snadno. Programátor si vyčte z GAL PES (programovací předpis) a v případě že se mu nezdá, že by odpovídal navolenému obvodu, upozorní na to. Špatně nastavený PES se dá i ručně přepsat, jen musíte z jiného obdobného GAL vyčíst ty správné hodnoty.
GALBlast software bez problémů načte JEDEC vytvořený v OPAL jr 2.01, naprogramuje i zkontroluje GAL a výsledek je opravdu správně (ověřil jsem zpětným čtením jinde naprogramovaných GAL a naopak), takže jsem spokojený. Možná ještě zkusím časem přeložit a rozdýchat ovládací soft i pod 32bit Windows, ale obávám se, že to bude chtít více úprav, takže je to na seznamu priorit hodně nízko. Prozatím stačí, že to pěkně chodí v těch virtuálních Win98.
Skoro to vypada, ze i PAL obvody parti do oblasti ‚replika‘ 😉
To CD mam, pohledam a ozvu se.
PAL se da supnout do GAL, je na to PALTOGAL.EXE. Ale je prevda, ze programovani PAL je vetsi vyzva. Ani jsem se nekoukal, jak se to dela, nemluve o tom, ze nevim, jak moc pujdou dnes sehnat.
Pokud bys CD nasel, byl bych rad. Diky!
PAL sa da vpohode zohnat. Len treba vediet ze su vecsinou OTP 😉
Ja som zacal aj skoncil z lattice ispGAL22V10 Ktore sa daju naprogramocvat cez JTAG
Potreboval jsem „vyrobit“ jednu GALku pro Spectrum+2 a narazil jsem na tento clanek. Nabidce plosneho spoje od Radka Suka pro vyrobu Galblastu jsem neodolal a hned objednal i kamaradovi. Kvalita plosnaku je na nejvyssi mozne urovni. Zbezne jsem jej zkontroloval. Je to zvyk, ale bylo to zbytecne. Vetsinu soucastek jsem objednal z PS Electronic. LD1117V33 jsem nesehnal, tak jsem jej nahradil TS1084CZ33 z GME. Ma stejne poradi vyvodu gnd-out-in. Byly i jine stabilizatory, ale maji klasicke poradi in-gnd-out. Kdo nepotrebuje programovat 3.3V obvody, nemusi jej osazovat vubec. V puvodnim clanku je na vystupu stabilizatoru 3.3V tantal 33uF/6.3V. Snazil jsem se to dodrzet, protoze i v datasheetu je tantal 10uF. Vyvody stabilizatoru jsem vytvaroval. Pak se vlezl i tantal. Civka je zafixovana tavnou pistoli. Relatko mam na 5V(500Ohmu). Vstupni filtracni elyt je podle puvodniho navrhu na 35V. Dal by se osadit i na mensi napeti, ale roztec na plosnaku je 5mm, takze tam sedl, jak ulity. Napajeci konektor mel kontakty siroke 2.5mm. Stacilo spoj profrezovat. Plosky jsou dostatecne siroke a spoj je jen ze spodni strany. Take jsem neodolal a zkousel XPMode ve Win7x64. Bez uspechu. Win98 a VMware funguji na prvni pokus. Stacilo zkalibrovat. Zkusil jsem i virtualizaci v Ubuntu 10.04, ale nepovedlo se ani kdyz jsem presmeroval lp0 na lpt1. Menic slaboulince piska, kdyz polozim ucho na Galblast. Pokud jeste v budoucnu budou plosnaky, doporucuji vsem, co si obcas radi neco ukuti. Vim, ze plosny spoj je casto zadrhel.
Tady je odkaz s fotem na vysledek meho snazeni:
http://www.sinclair.hostuju.cz/pic/Galblast.JPG
Jeste bych mel tip pro vsechny, kdo chteji „jednoduse“ a bez nejakych hlubsich znalosti obcas prevest nejakou tu sekvencni logiku do GALky. Uceni boli, zvlast v pokrocilem veku. Dalo mi to pomerne dost badani, nez jsem nasel potrebny software. Informaci o GALech opravdu neni mnoho. Jedna o o SW firmy Lattice. Na jejich strankach je toho nepreberne mnozstvi, vesmes pro nove typy obvodu. Klasicke GAL uz maji v jejich datasheetech razitko „All Devices Discontinued“. Presto nabizeji zdarma profesionalni nastroj na domaci pouziti i pro GALky. Je to SW s nazvem „ispLEVER Classic 1.6“ v sekci Software/Download. Je nutne se nejprve zaregistrovat. Pote se dostanete ke stazeni. Dale je treba odeslat zadost o licenci. Ten je firmou vygenerovan na zaklade MAC adresy LAN, kterou mate v PC. Dosla licence se jen nakopiruje do spravneho adresare a program je plne funkcni. Licence je neprenosna. Program je rozsahly, ale staci se naucit pracovat jen v editoru schemat. Po nakresleni vetsinou postacuje vygenerovat jedec soubor a soubor s prirazenim pinu GALky.
http://www.latticesemi.com/dynamic/index.cfm?fuseaction=view_category&document_type=65&source=topnav
Pro ty, kteri chteji proniknout na jadro GAL, je tento odkaz:
http://ulozto.cz/xb3vgbw/jrghcgdtvwgwfxxmrqyd-pdf
Bezva, diky moc! Urcite se to bude hodit vice lidem. Ten soft vypada jako docela slozity.
Ještě kdyby se aspoň zeptal. Kniha je moje, skenoval ji Pavel, kterému jsem ji zapůjčil a on si to převedl do PDF a zveřejnil. Ale nás se na zveřejnění neptal. A Grady či autorů určitě taky ne. I Pavel byl včera překvapený, když jsem mu to řekl.
Nemam tuchu, jak je to s autorskymi pravy. Podle mne zverejneni te knizka urcite nikomu neublizi, nadsencum pomuze a business na tomhle teda nikdo neudela. Jestli s tim ma nekdo z autoru problem, staci rict, odkaz smaznu.
To je mi líto. Byl jsem veden spíš chtěním pomoci těm několika posledním zapáleným nadšencům pro 8bity. Pokud to bude tvoje přání, tak soubor samozřejmě smažu.
Ahoj,
no já jsem GALy přeskočil a občas trochu bastlím s CPLD Xilinx.
I když by mě to taky zajímalo. Na tom programátoru mě docela děsí ten D/A převodník. Není to přehnané ? Nestačil by tam nějaký jednoduchý přepínač napětí, třeba jako je u programátorů PICů. kde se tranzistorem přepíná 5 a 13V ?
A co se týká PAL vs. GAL ty jsou v zapojení normálně záměnné, v práci mám nějaké desky a na nich je někdy GAL někdy PAL, co měl zrovna výrobce po ruce. Jediný rozdíl je IMHO ten, že se PAL nedá vymazat. Stejně jako PROM vs. (E)EPROM. Ale nevím jestli se PAL programuje stejně.
GAL umi nahradit bez problemu vsechny typy PAL. GAL vychazi z V ready PAL, zatimco PAL maji jeste rady L, R, H, ale ty jsou jednodussi. Existuje i program PALTOGAL.EXE pro konverzi. Programovani PAL neni slozite, ale je jine nez u GAL. Spise pripomina programovani PROM, protoze je nutne prepalit pojistky. Programovani GAL je spis jako programovani EEPROM, ale jde se hodinami postupne pres cely obvod.
Jo a ty napeti jsou potreba, ruzne GAL od ruznych vyrobcu maji ruzna programovaci napeti. Programovaci predpis je dokonce ulozen v GAL a da se vycist nebo i prepsat (coz neni uplne nejlepsi napad, pokud clovek neni fakt guru nebo nema po ruce jiny stejny, aby to z nej vycetl).
Pingback: Jednoduchý RAM a EPROM adaptér pro SoC MK14 | Martinův 8-bitový blog
Zdravim, dopadlo to nejak s prekladem pro win32?
Dalsi dotaz – chtel bych se s GAL seznamit, ale nevim zda je vystup z WinCUPL kompatibilni s GAL16V8. Nebo jak nejjednoduseji vytvorit JEDEC soubor. Diky
Nijak, ani jsem se o to nepokusil 🙁 Je spousta jinych projektu a tohle pod VMWare a Win98 funguje hezky, tak jsem to neresil. Navic mam strach, ze bych narazil na potize s ovladace. Prepsat soft nebude takovy problem, jako ziskat po Win64 pristup k tomu parallelnimu portu. S WinCUPL nemam zkusenosti, pouzivam OPALjr a ten funguje v pohode.
LPT pod W7 x64 neni problem. Potreboval jsem precist (a do budoucna zapsat) EEPROMku 93c56, tak jsem hledal zpusob jak to zvladnout pres LPT – soft funguje jak na XP, tak na W7 x64 (nutno poprve spustit jako spravce). Mam i detekci integrovaneho portu pres winapi.
Ten GAL je pro me zatim velka neznama. Mam par kousku k dispozici, ale nevim co od toho cekat. Je mozne do 16V8 nacpat 8bit citac s moznosti presetu? v extremu LO 4bit a HI 4bit?
Vim ze ISP MACH ci jine pole vyssi tridy by bylo pohodlnejsi, ale v domacich podminkach obtizne realizovatelne… Diky
Zdravím,
potřeboval bych naprogramovat jeden (nebo 2x) GAL22V10B.
Mám JEDEC formát pro PAL.
Pokud je zde někdo Praha okolí, přijedu a nechám na dotyčném za odměnu.
Spěchám na to.
Díky
Ahoj, dovolím si nabídnout ještě jednu českou alternativu programátoru Galblast, stačí do Googlu zadat frázi „galblast 2012“ 😉 To je prosím můj výtvor, funguje skvěle, používám dost často.
Ahoj,
pěkná práce podrobně jsem to prostudoval,zatím jedna z nejlepších a jednoduchých konstrukcí.Je možné zaslat tištáky.Díky za info.
Hello, all!
I modified the galblast program for win32. It works on Windows XP/7/8/10, x86 and x64 Windows version supported. You can download from http://marinovsoft.narod.ru/radio/galblast_w32.7z (source code included).
You are great!
Best regards
Jen pro informaci, existuje jednoduchy GAL programator (zalozeny na GALBLast a ATFblast) pro Arduino UNO:
https://github.com/ole00/afterburner