{"id":588,"date":"2018-05-12T17:33:07","date_gmt":"2018-05-12T16:33:07","guid":{"rendered":"https:\/\/www.pmd85.cz\/?page_id=588"},"modified":"2021-11-17T10:53:50","modified_gmt":"2021-11-17T09:53:50","slug":"simulator-eprom-64kb","status":"publish","type":"page","link":"https:\/\/www.pmd85.cz\/?page_id=588","title":{"rendered":"Simul\u00e1tor EPROM 64kB rev. 2.00"},"content":{"rendered":"<p>B\u011bhem v\u00fdvoje retrohra\u010dek typu Ultralight\/Diego jsem pou\u017e\u00edval sta\u0159i\u010dk\u00fd simul\u00e1tor EPROM 32kByte, kter\u00fd jsem postavil n\u011bkdy kolem roku 2000. Bohu\u017eel mi tehdy virus \u010cernobyl smazal cel\u00fd disk a tento \u010derstv\u00fd projekt jsem nestihl z\u00e1lohovat. Na popud Romana Fuleka jsem se pustil do obnovy tohoto projektu a rozhodl jsem se jej m\u00edrn\u011b vylep\u0161it a zapracovat do n\u011bj zku\u0161enosti z jeho pou\u017e\u00edv\u00e1n\u00ed. Co tedy nov\u00fd SimEPROM64k um\u00ed?<\/p>\n<ul>\n<li>Simuluje EPROM 8kB, 16kB, 32kB, 64kB (patice um\u00ed i 128kB ale zde se zrcadl\u00ed spodn\u00edch 64kB do t\u011bch horn\u00edch 64kB &#8211; co\u017e ov\u0161em n\u011bkdy nen\u00ed na z\u00e1vadu).<\/li>\n<li>Doba p\u0159\u00edstupu k dat\u016fm v emula\u010dn\u00edm re\u017eimu je nyn\u00ed d\u00e1na pouze rychlost\u00ed pam\u011bti SRAM (lze osadit typy v \u00fazk\u00e9m pozdru DIL32 s dobou p\u0159\u00edstupu kolem 20ns) a dvoj\u00edm zpo\u017ed\u011bn\u00edm na obvodech 74HC573 (adresa dovnit\u0159) a 74HC541 (data ven). D\u00e1 se tedy osadit varianta s dobou p\u0159\u00edstupu do 60nsec. S b\u011b\u017enou pam\u011bt\u00ed 55nsec je pak celkov\u00e1 doba p\u0159\u00edstupu do 100nsec.<\/li>\n<li>Na patici DIL6 je vyveden sign\u00e1l RESET pro extern\u00ed lad\u011bnou aplikaci a to v proveden\u00ed OPEN COLECTOR (jeden negativn\u00ed s NPN tranzistorem proti zemi a jeden pozitivn\u00ed s PNP tranzistorem proti VCC aplikace).<\/li>\n<li>Komunikace prob\u00edh\u00e1 s\u00e9riov\u011b po jednom p\u00e1ru vodi\u010d\u016f (TXD\/GND) a komunika\u010dn\u00ed rychlost je 57600Bd. P\u0159enos dat je signalizov\u00e1n LEDkou, zapojenou v s\u00e9rii s p\u0159ij\u00edmac\u00ed diodou opto\u010dlenu 6N136. P\u0159enos pln\u00fdch 64kB pak trv\u00e1 30sec. Jak m\u011b Roman Fulek upozornil, lze pro p\u0159enos dat pou\u017e\u00edvat r\u016fzn\u00e9 existuj\u00edc\u00ed s\u00e9riov\u00e9 termin\u00e1ly, kter\u00e9 jen p\u0159epo\u0161lou v\u00fdsledn\u00fd IntelHEX soubor. Net\u0159eba tedy \u017e\u00e1dn\u00e9ho speci\u00e1ln\u00edho SW a p\u0159echod na Win7 je tak vy\u0159e\u0161en.<\/li>\n<li>Mechanick\u00e1 konstrukce je uzp\u016fsobena pro krabi\u010dku KP24A z GME a cel\u00e1 je d\u011bl\u00e1na tak, aby p\u0159i destrukci obvod\u016f &#8222;v prvn\u00ed linii&#8220; v\u016f\u010di lad\u011bn\u00e9 aplikaci mohl b\u00fdt po\u0161kozen\u00fd obvod v patici vym\u011bn\u011bn.<\/li>\n<li>Simul\u00e1tor je nap\u00e1jen z extern\u00ed aplikace a je galvanicky izolov\u00e1n od s\u00e9riov\u00e9ho portu nad\u0159azen\u00e9ho PC. S vhodn\u00fdmi pam\u011btmi RAM funguje v rozsahu nap\u00e1jec\u00edch nap\u011bt\u00ed 3,3 &#8211; 5,0V.<\/li>\n<li>V z\u00e1v\u011bre\u010dn\u00e9 f\u00e1zi v\u00fdvoje bylo dopln\u011bno tla\u010d\u00edtko ERASE, stiskem kter\u00e9ho lze v\u0161echny bajty emula\u010dn\u00ed pam\u011bti nastavit do &#8222;pr\u00e1zdn\u00e9ho&#8220; stavu (hodnota 0xFF) a kter\u00fdm lze simul\u00e1tor &#8222;odblokovat&#8220; v p\u0159\u00edpad\u011b chyby p\u0159i p\u0159enosu dat z PC do simul\u00e1toru. Simul\u00e1tor rozli\u0161uje t\u0159i chyby: chybu \u010dasov\u00e1n\u00ed p\u0159enosov\u00e9ho r\u00e1mce UARTu, chybn\u00fd znak protokolu IntelHEX a nepovolen\u00e9 pou\u017eit\u00ed IntelHEX TAGu 2 a vy\u0161\u0161\u00edho (lze p\u0159en\u00e1\u0161et pouze bloky s TAGem 0 a 1).<\/li>\n<li>Srdcem simul\u00e1toru je jedno\u010dipov\u00fd mikroprocesor AT89C2051, kter\u00fd je nutno naprogramovat pro danou \u00falohu. Aby mohl cel\u00fd simul\u00e1tor jet od ji\u017e zm\u00edn\u011bn\u00fdch 3,3V, je nutno pou\u017e\u00edt takovou emula\u010dn\u00ed SRAM, kter\u00e1 takov\u00e9to nap\u00e1jen\u00ed zvl\u00e1dne (a je dost rychl\u00e1). U star\u00e9ho simul\u00e1toru jsem pou\u017eil BS62LV1027 (55ns\/2,4V) ale m\u00e1m taky jednu UM61512AK15 (15nsec\/3,0V).<\/li>\n<\/ul>\n<div id=\"attachment_591\" style=\"width: 160px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/mkomplet.jpg\"><img aria-describedby=\"caption-attachment-591\" loading=\"lazy\" class=\"size-thumbnail wp-image-591\" src=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/mkomplet-150x150.jpg\" alt=\"\" width=\"150\" height=\"150\" \/><\/a><p id=\"caption-attachment-591\" class=\"wp-caption-text\">Zvenku..<\/p><\/div>\n<div id=\"attachment_590\" style=\"width: 160px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/EMU_top.jpg\"><img aria-describedby=\"caption-attachment-590\" loading=\"lazy\" class=\"size-thumbnail wp-image-590\" src=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/EMU_top-150x150.jpg\" alt=\"\" width=\"150\" height=\"150\" \/><\/a><p id=\"caption-attachment-590\" class=\"wp-caption-text\">Uvnit\u0159..<\/p><\/div>\n<div id=\"attachment_592\" style=\"width: 160px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/s_label_simeprom64.jpg\"><img aria-describedby=\"caption-attachment-592\" loading=\"lazy\" class=\"size-thumbnail wp-image-592\" src=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/s_label_simeprom64-150x150.jpg\" alt=\"\" width=\"150\" height=\"150\" \/><\/a><p id=\"caption-attachment-592\" class=\"wp-caption-text\">\u0160t\u00edtek<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_589\" style=\"width: 160px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/Schema.gif\"><img aria-describedby=\"caption-attachment-589\" loading=\"lazy\" class=\"size-thumbnail wp-image-589\" src=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/Schema-150x150.gif\" alt=\"\" width=\"150\" height=\"150\" \/><\/a><p id=\"caption-attachment-589\" class=\"wp-caption-text\">Sch\u00e9ma<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/SimEPROM64kB.doc\" target=\"_blank\" rel=\"noopener noreferrer\">Popis za\u0159\u00edzen\u00ed\u00a0a\u00a0n\u00e1vod\u00a0k\u00a0pou\u017eit\u00ed<\/a><\/p>\n<p><a href=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/Kusovn\u00edk-SimEPROM64kB.xls\" target=\"_blank\" rel=\"noopener noreferrer\">Kusovn\u00edk projektu<\/a><\/p>\n<p><a href=\"https:\/\/www.pmd85.cz\/wp-content\/uploads\/simeprom.txt\" target=\"_blank\" rel=\"noopener noreferrer\">\u0158\u00eddic\u00ed program simul\u00e1toru v assembleru 8051<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>B\u011bhem v\u00fdvoje retrohra\u010dek typu Ultralight\/Diego jsem pou\u017e\u00edval sta\u0159i\u010dk\u00fd simul\u00e1tor EPROM 32kByte, kter\u00fd jsem postavil n\u011bkdy kolem roku 2000. Bohu\u017eel mi tehdy virus \u010cernobyl smazal cel\u00fd disk a tento \u010derstv\u00fd projekt jsem nestihl z\u00e1lohovat. Na popud Romana Fuleka jsem se pustil do obnovy tohoto projektu a rozhodl jsem se jej m\u00edrn\u011b vylep\u0161it a zapracovat do n\u011bj [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":292,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=\/wp\/v2\/pages\/588"}],"collection":[{"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=588"}],"version-history":[{"count":6,"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=\/wp\/v2\/pages\/588\/revisions"}],"predecessor-version":[{"id":1632,"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=\/wp\/v2\/pages\/588\/revisions\/1632"}],"up":[{"embeddable":true,"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=\/wp\/v2\/pages\/292"}],"wp:attachment":[{"href":"https:\/\/www.pmd85.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=588"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}