Simulátor EPROM 64kB

Během vývoje retrohraček typu Ultralight/Diego jsem používal stařičký simulátor EPROM 32kByte, který jsem postavil někdy kolem roku 2000. Bohužel mi tehdy virus Černobyl smazal celý disk a tento čerstvý projekt jsem nestihl zálohovat. Na popud Romana Fuleka jsem se pustil do obnovy tohoto projektu a rozhodl jsem se jej mírně vylepšit a zapracovat do něj zkušenosti z jeho používání. Co tedy nový SimEPROM64k umí?

  • Simuluje EPROM 8kB, 16kB, 32kB, 64kB (patice umí i 128kB ale zde se zrcadlí spodních 64kB do těch horních 64kB – což ovšem někdy není na závadu).
  • Doba přístupu k datům v emulačním režimu je nyní dána pouze rychlostí paměti SRAM (lze osadit typy v úzkém pozdru DIL32 s dobou přístupu kolem 20ns) a dvojím zpožděním na obvodech 74HC573 (adresa dovnitř) a 74HC541 (data ven). Dá se tedy osadit varianta s dobou přístupu do 60nsec. S běžnou pamětí 55nsec je pak celková doba přístupu do 100nsec.
  • Na patici DIL6 je vyveden signál RESET pro externí laděnou aplikaci a to v provedení OPEN COLECTOR (jeden negativní s NPN tranzisorem proti zemi a jeden pozitivní s PNP tranzistorem proti VCC aplikace).
  • Komunikace probíhá sériově po jednom páru vodičů (TXD/GND) a komunikační rychlost je 57600Bd. Přenos dat je signalizován LEDkou, zapojenou v sérii s přijímací diodou optočlenu 6N136. Přenos plných 64kB pak trvá 30sec. Jak mě Roman Fulek upozornil, lze pro přenos dat používat různé existující sériové terminály, které jen přepošlou výsledný IntelHEX soubor. Netřeba tedy žádného speciálního SW a přechod na Win7 je tak vyřešen.
  • Mechanická konstrukce je uzpůsobena pro krabičku KP24A z GME a celá je dělána tak, aby při destrukci obvodů „v první linii“ vůči laděné aplikaci mohl být poškozený obvod v patici vyměněn.
  • Simulátor je napájen z externí aplikace a je galvanicky izolován od sériového portu nadřazeného PC. S vhodnými pamětmi RAM funguje v rozsahu napájecích napětí 3,3 – 5,0V.
  • V závěrečné fázi vývoje bylo doplněno tlačítko ERASE, stiskem kterého lze všechny bajty emulační paměti nastavit do „prázdného“ stavu (hodnota 0xFF) a kterým lze simulátor „odblokovat“ v případě chyby při přenosu dat z PC do simulátoru. Simulátor rozlišuje tři chyby: chybu časování přenosového rámce UARTu, chybný znak protokolu IntelHEX a nepovolené použití IntelHEX TAGu 2 a vyššího (lze přenášet pouze bloky s TAGem 0 a 1).
  • Srdcem simulátoru je jednočipový mikroprocesor AT89C2051, který je nutno naprogramovat pro danou úlohu. Aby mohl celý simulátor jet od již zmíněných 3,3V, je nutno použít takovou emulační SRAM, která takovéto napájení zvládne (a je dost rychlá). U starého simulátoru jsem použil BS62LV1027 (55ns/2,4V) ale mám taky jednu UM61512AK15 (15nsec/3,0V).

Zvenku..

Uvnitř..

Štítek

 

 

 

 

 

Schéma

 

 

 

 

 

Popis zařízení a návod k použití

Kusovník projektu

Řídicí program simulátoru v assembleru 8051

 

 

 

38 komentářů u „Simulátor EPROM 64kB

    1. Libor L.A.

      Bohužel ne, v zásobě nemám. Ale pokud byste měl zájem, mohu nechat vyrobit. Firma, kde si plošné spoje nechávám dělat, je vyrábí do 5 pracovních dní. Nevím jaká je aktuální cena ale prototyp s filmem mě stál před pár lety něco přes 500,- Kč. Takže pokud budou filmy použitelné, tak bych cenu samotného plošného spoje odhadoval na polovinu. Ale musel bych se sám poptat.

  1. Anonym

    Roman Fulek mi spomínal, že by ste mohol mať aj starší hotový simulátor. Ak by bol na predaj, ten by mi stačil. Poprípade gerbery a dať dosku číňanovi vyrobiť. Alebo keby ste sa skúsil opýtať u vášho výrobcu. Určite zoberiem buď hotový simulátor alebo dosku.

    1. Libor L.A.

      Ten starší model už asi bude mít po těch dlouhých letech vyšumělou FLASH s řídicím programem. Romanovi to ještě předloni jelo, bylo by to ale bez záruky. Po těch letech si nejsem jistý, jestli mám vůbec zdrojový kód pro CPU a jestli je aktuální. Bavíme se o projektu někdy z roku 2000. Já v pondělí zjistím cenu na ten nový plošný spoj. Tam je jistota, že je celý projekt relativně aktuální. A vím zcela jistě, že od doby zveřejnění zdrojového kódu pro řídicí CPU na mých stránkách jsem tam už nic neměnil.

        1. Libor L.A.

          Tak cena by byla znovu něco přes 500 Kč, protože filmy se nehodí. Prý se změnila technologie a ručně se musí exponovat nějaké clonky či co. Levnější je vyrobit filmy nové. Takže tohle asi není optimální cesta. Tedy dělat to u nás v ČR.

          Jestli byste chtěl ten starý simulátor, nemám s tím problém, klidně Vám přibalím i záložní naprogramovaný řídicí procesor AT89C2051. Ale je to skoro dvacet let staré zařízení, plošný spoj nemá ani masku..

          Pokud byste nespěchal, můžu zkusit Čínu (zatím nemám zkušenosti s výrobou v těchto končinách) a ta cena by se dala čekat někde jinde. Záleží na Vás, kterou variantu preferujete (čas čekání versus cena).

            1. Libor L.A.

              Mám to chápat tak, že si počkáte na dodávku z Číny? Každopádně zítra zkusím něco pohledat, dnes už je na mne pozdě. Pokud byste nějaké zkušenosti s objednáváním plošných spojů od našich dálněvýchodních sousedů měl, a chtěl se o ně podělit, budu velice rád.

  2. Marián

    Ano, počkám na Čínu. Ja som tam dával dosky robiť len raz a to na Geoff ANSI video terminal. Do firmy allpcb.com som poslal gerber-súbory stiahnuté z geoff-ovej stránky, odklikal parametre dosky a odoslal objednávku. Oni ich skontrolovali a prípadne napíšu čo je zle alebo čo chýba. Už som len zaplatil a tuším za 10 dní boli dosky doma, presne také aké mali byť. Toľko moje skúsenosti. Na stánkach zvyknú mať tieto firmy celkom zrorumiteľné manuály ako vygenerovať gerbery z Eaglu a podobných programov.

      1. Libor L.A.

        Po malém trápení s nastudováním problematiky exportu do formátů Gerber/Excelon a následné nefunkčnosti stránky výrobce jsem odeslal podklady. Čekám na odezvu.

  3. Libor L.A.

    Podle AllPCB měly plošné spoje na simulátor EPROM dorazit včera. Tak snad už někde bloudí v ČR. Sám jsem zvědav na kvalitu. Pokud by to stálo za to, zkusil bych redukce na joysticky a myš pro PMD-85.

    1. Libor L.A.

      Dnes se mi z AllPCB ozvali, že mi před týdnem poslali dopis s technickým dotazem a já jsem neodpověděl. Samozřejmě jsem dopis našel ve složce SPAM. Je zajímavé, že někdy mi to přijde normálně, někdy ne. No nic, takže dnes odpovím a doufám, že to půjde do výroby.

      1. Libor L.A.

        Dnes jsem odeslal soubory pojmenované tak, jak si v AllPCB přáli. Trochu je mi divné, proč vyhodnotili jednu stranu potisku jako nesprávně zrcadlově otočenou. Určitě to mám správně a i v prohlížeči GERBER to vidím dobře. Snad se jen spletli. Takže teď už snad nebudou mít připomínek.

        To jen jako informace o stavu výroby plošného spoje. Objednal jsem pět kousků, HAL je v provedení s olovnatým cínem, aby to šlo ještě po pár týdnech vůbec zapájet, pokud by chtěl někdo ještě později. Ale spíše ty zbylé plošné spoje osadím SMD součástkami a paticemi sám.

  4. Libor L.A.

    Další mail z AllPCB jsem našel ve složce SPAM, kde mi tedy dnes ráno sdělují, že zboží bylo odesláno a mohu je čekat velice brzy. Tak snad na druhý pokus to už bude.

  5. Libor L.A.

    Pár kousků plošného spoje zbylo. Pokud by měl někdo zájem, než je osadím, jsou k dispozici. Mají ovšem jednu vadu. Je zapotřebí převrtat rohové díry v plošném spoji, přes které prochází distanční sloupky krabičky. Vnější rozměr je sice také o 1,6mm větší, ovšem stále se mi vlezl do použité krabičky.

    Pro ostatní malé poučení. Ujistit se, jaký průměr frézy používají a jak tuto vrstvu definují. U mne se stalo to, že přes informaci, že počítám s frézou 1,6mm, přepočítali stopu na tloušťku jimi použité frézy a „dodrželi“ středovou stopu křivek v Gerber souboru. Výsledkem je, že deska je o 1,6mm větší a frézované kruhové otvory jsou o 1,6mm menší.

  6. Miki

    Dobrý deň.
    Hladal som na webe niečo hotové ohladne simulátoru EPROM.
    Plánujem (zdôrazňujem ,plánujem) robiť niečo so staršími EPROM (2708,2716) a potreboval by som simulátor EPROM. Mám síce čínsku mazačku , ale to napáliť-mazať , napáliť-mazať je už otravné. Síce v 80-tich rokoch to akosi otravné ale nebolo.

    Náhodou som objavil Vašu stránku a nakolko sú informácie trochu staršieho dáta , chcem sa spýtať či je ten plošný spoj aktuálne na predaj.

    Ako som ale spomenul , potrebujem 1kB a 2kB eprom-ky simulovať. Neanalyzoval som schému , ale bude to s Vašim simulátorom možné?

    Ďakujem

    1. Libor L.A.

      Principiálně je možné emulovat jakoukoliv ROM/PROM/EPROM, která má v souladu s paticí emulátoru na stejných místech vývody GND, VCC, D0..D7, /OE, /CE a potřebný počet adresových vodičů (standard JEDEC). Pokud je emulovaná paměť v menším pouzdru a „nedosáhne“ do pravého horního rohu patice, bude nutno jedním vodičem propojit i pin VCC. Ale VCC lze přivést i přes 6-pinový konektor, určený původně pro signály RESET a v emulační patici se vyndá ekvivalentní pin, který odpovídá VCC emulované krátké EPROMky (typicky 2708, 2716, ..) Díky několika paticím vsunutým v sobě pro kompenzací výšky krabičky není problém ten pin v některé patici vyndat. Taky bude nutno vyndat pin pro +12V a případně další piny, kde se může dostat jiné napětí než +5V a není jich zapotřebí pro funkci paměti v režimu čtení (emulace). Dále bude zapotřebí doplnit PULL-DOWN rezistory i na adresové vodiče A10, A11 a A12. Ten emulátor je má, ale až od pinu A13. Takže nakonec se těch změn pár nasbíralo. Pokud by zájem přetrvával, mohu to schéma projít a pro daný typ pamětí vypsat všechny „úpravy“.

      Odpověď tedy zní: ano, po vcelku nenásilných úpravách lze emulovat i 2708, 2716 a další.

      Ještě mám dva kousky plošného spoje.

      1. Anonym

        Ďakujem za odpoveď aj vysvetlenie. Takže sa jedná o zhotoveni špeciálneho emulačného kábla.

        Mám záujem o odkúpenie jednej dosky a poprosil by som o informácie do emailu o spôsobe zakúpenia.

        1. Libor L.A.

          Ještě pár finálních připomínek k úpravám emulátoru pro použití s paměťmi 2708 a 2716. Předtím jsem to podal dost narychlo a bez vážnějšího zkoumání specifik těchto obvodů. I pro ostatní zájemce tedy přesné podmínky:

          1) Emulační 24-žilový kabel lze použít bez úprav.

          2) Na plošném spoji emulátoru je na piny EA10, EA11 a EA12 emulační patice nutno připájet PULL-DOWN rezistory 100k. Tyto rezistory tam mohou zůstat navěky a ničemu nebudou vadit. Jejich hodnota je dost velká na to, aby nezatěžovaly signály A10..A12 v systému a dost malá na to, aby na nich vznikal úbytek (ten je maximálně 0,1V a to je hluboko pod prahovým napětím log. 0). Signály EA13 až EA15 jsou takto ošetřeny už při návrhu plošného spoje a toto řešení se v praxi ukázalo jako bezproblémové.

          3) Nutno vyndat piny 19, 21 a 24 (pozice počítány na patici DIL24). Pokud budu piny počítat na patici DIL32 v emulátoru, pak se jedná sice o tytéž fyzické piny, ale mají čísla 23, 25 a 28. Jedná se o napájecí hladiny VBB, VDD a VCC, tedy -5V, +12V a +5V. Toto platí pro paměť 2708. V případě paměti 2716 nutno vyndat pouze piny 21 a 24 (25 a 28 počítáno na patici DIL32).

          4) Napájení +5V pro emulátor je nutno ze systému přivést doplňkovým vodičem. Možno použít piny 30 nebo 32 emulační patice nebo signál na patici DIL6, určené pro generování signálů RESET a /RESET. Emulátoru stačí jen +5V. Obě ostatní napětí, tj -5V a +12V emulátor nepotřebuje a není je třeba připojovat.

          5) Je nutné zajistit, aby se z emulovaného systému nedostalo do emulátoru vysoké napětí po signálech WE/CS (+12V) a PROG (cca 25V) v případě, že systém umožňuje programovat EPROM na desce. Je to sice dost nepravděpodobné, ale je dobré to ověřit. Toto platí pro paměť 2708. V případě paměti 2716 je problém již vyřešen tím, že je vyndán pin 21 (Vpp), kde by se potenciálně mohlo vyskytnout vysoké, tzv. programovací, napětí.

        1. Libor L.A.

          Bohužel už ne. Co jsem měl, to jsem rozdal. Pokud by zájem přetrvával, mohu nechat udělat dalších pár kousků. Ale to bych tam udělal dvě změny. Jednak tu zmíněnou frézovací stopu a potom bych otočil polaritu diody vstupního optočlenu aby simulátoru stačilo nižší napětí, které produkují některé notebooky. Takže by to bylo vyrobeno a dodáno tak za měsíc. Momentálně ještě dokončuji jiný přístroj na hraní a nechce se mi od toho moc odbíhat.

            1. Libor L.A.

              Dnes jsem se dokopal k tomu, abych si do Eagle natáhl knihovnu s 74HC1G14 a předělal ten vstupní obvod simulátoru EPROM. Taky jsem upravil ty frézovací obrysy. Tato varianta ponese označení Mk.III. Zítra bych to zkontroloval, udělal exporty a poslal na výrobu do země, kde včera znamenalo včera, ale dnes už jsou o kus před námi. Zkusil bych jeden kousek oživit a pokud by to bylo v pořádku, nabídl bych zbytek plošných spojů zájemcům. Odhadem tak za 3-4 týdny. Ale to záleží na na tom, jak příroda vytíží vývojáře-kovozemědělce na poli. Pak taky nějaká ta vaječina, třídní sraz, .. Teď je špatné období na hraní si.

              1. Libor L.A.

                Plošné spoje dorazily a vypadají kvalitně. Jen jsem tam udělal malou chybku, ta se však týká pull-down odporů pro možnost emulace 2708/2716/2732, tak to snad estétům nebude moc vadit. Konkrétně jeden odpor se bude v případě potřeby emulace výše uvedených pamětí muset napájet v drátovém provedení přímo na piny emulační patice ze strany spojů. Během týdne objednám součástky (to už by mohlo být brzy) a po osazení a vyzkoušení se ozvu.

  7. Kubik

    Zdravim, taky shanim nejaky ten programator, a pokud bych si nemusel navrhovat vlastni, usetrilo by mi to dost casu, takze pokud budou desticky, rad bych si jednu-dve koupil

    Dik!

    1. Libor L.A.

      Jsem rád za Vaši reakci, protože jsem zrovna včera se zpožděním zkoušel objednat plošné spoje u AllPCB ale zjistil jsem, že jsou oproti minulému stavu dražší o 50%. Ještě jsem zkoušel poptat JLCPCB, tam je cena super (podle všeho i s dopravou za 7USD za 5ks) ale vypadá to, že nedělají potisk plošného spoje s rozložením a označením součástek.

      Otázka tedy zní: jste ochotní dát 200,- Kč za kus bez dopravy? To představuje výrobu u AllPCB, kde minule nebyly žádné problémy. Po posledních zkušenostech, kdy mi DPL ve spojení s naší celnicí zvedli tlak, jsem tu cenu mírně nadsadil, ať to pokryje i případné doměření DPH a režijní náklady s tím spojené. Reálnou cenu bych pak rozpočítal podle skutečných nákladů na výrobu. Ovšem může být i mírně větší než uvedená, záleží na tom, jaké obstrukce bude dělat celnice.

      U AllPCB je možnost snížit celkovou cenu dodávky o 10USD, pokud to pošlou přes HK POST, ale jak sami píšou, „.. je to pomalé, nespolehlivé a nepojistitelné..“ Tak nevím, proč tuto variantu vůbec nabízejí.. Na druhou stranu se mi zdá, a odezvy na internetu tomu rovněž napovídají, že DHL našlo asi druhý (a nemalý) zdroj příjmů v tom, že ochotně nabízí své služby při „celních pochybnostech“ na straně našeho státu.

  8. Clouseau

    Beru u jlcpcb dost často, a jelikož nepospíchám na desky tak vždycky HK Post a ještě se mi nestalo že by desky nedorazily…
    Jo a jinak, popis samozřejmě umí… Na obou stranách desky…

  9. Clouseau

    Není za co, bohužel i jlcpcb zdražilo, respektive dřív bylo za stejný peníze deset ks desek a teď jen 5. Ale i tak to vychází na zajímavou cenu. Jinak ještě ke konstrukci, Proč nemáš na vstupu FTDI převodník z USB na ttl seriál? Podstatně by to zvedlo použitelnost, Seriák už není dneska tak běžnej, USB ano… I Galvanický oddělení se s tím perfektně dělá….

    1. Libor L.A.

      Tu konstrukci jsem přebral z roku 200x. Jen jsem ji vylepšil v některých bodech. Pravda, vstup mohl být přes FTDI, dokonce jej mám v šuplíku. No, ale už se stalo. Možná u verze Mk IV.

      Jinak musím říci, že vstupní uživatelské rozhraní u JLCPCB mě přímo nadchlo. Včetně reálného náhledu na desku a její technologické vrstvy. To vše z dat, které jsem tam zaslal před pár vteřinami. Takže mám kontrolu nad tím, jak jsou tato data interpretována. Super. Aktuální stav: 5ks je na cestě, dodací lhůta tuším 15-25 dní.

        1. Libor L.A.

          Nevím, co na to říct.. Možná v zimě, až bude více času. Ale spíše už ne. Jedině v případě, že by se verze Mk. III (kterou se stále nemohu odhodlat oživit) nechovala rozumně. Pak bych asi hned začal práce na verzi Mk. IV.

Napsat komentář

Vaše emailová adresa nebude zveřejněna.