Enterprise Forever  |  :HUN  |  Hardver  |  Topic: Z80
Author Topic: Z80  (Read 3361 times)« previous next »
lgb
EP fan
*
Offline Offline

Hungary

Posts: 238


OS:
Linux
Browser:
Safari


View Profile WWW
New Posts
« Reply #15 on: 2011.February.22. 07:56:41 »

Szegény Neumann János forog a sírjában...  Smiley
És akkor nem is lehetne futás közben módosítani a (gépi kódú) programon?

Neumann talan tulelne, elvegre a Harvard architektura pont ilyen, amit sok uC is hasznal pl (mondjuk a PIC).  Amugy pl egy modern x86-os CPU-ban (vagy lehetne mas peldat is hozni persze) 4K meretu lap szintjen lehet dolgokat szabalyozni. Nyilvan a Z80-nak nincs eppen fejlett MMU funkcionalitasa, de az is megoldas lehetne, ha nem csak "lapozni" lehet a 4db 16K-s "szeletet" a Z80 cimtartomanyanak a Dave 4 regisztere segitsegevel, hanem pl az is megadhato lenne, hogy read-only vagy read-write ...

Amugy meg a Z80 kapcsan: lehet az eZ80-al kene foglalkozni, ma is kaphato, 50Mhz orajelen is elmegy, es mivel azonos orajelen kb 4x gyorsabb mint az eredeti Z80, egy ilyen ugy erzodne mint "egy 200MHz-es Z80" ... Ami azert szep fejlodes Smiley
« Last Edit: 2011.February.22. 08:00:50 by lgb » Logged

Enterprise Forever
« Reply #15 on: 2011.February.22. 07:56:41 »

 Logged

tubybb
EP user
*
Offline Offline

Hungary

Posts: 328


OS:
Windows Server 2003
Browser:
Firefox 3.6.13


View Profile
New Posts
« Reply #16 on: 2011.February.22. 08:46:43 »

Az a baj, hogy ez a EZ80-at nehéz beszerezni.
Valami olyan RISC CPU-t kellene találni az EP II megvalósításához, amit most dögivel gyártanak, és tök olcsó. Néha bizony megéri egy rendszert egy alkatrész köré tervezni, mert olcsóbban kijön az ember. Kivéve, ha a tervezés kerül sokba, de itt most ez nem áll fenn, mert jó mérnökeink vannak, akik szívesen dolgoznak a jó ügyért Smiley
« Last Edit: 2011.February.22. 14:55:03 by tubybb » Logged

tubybb
EP user
*
Offline Offline

Hungary

Posts: 328


OS:
Windows XP
Browser:
Firefox 3.5.3


View Profile
New Posts
« Reply #17 on: 2011.February.22. 15:19:38 »

Még volna itt valami. Lehet hogy félreértettelek téged LGB, de azt tudnod kell, hogy a 386-os prociktól felfelé MINDEN alkalmazásnak (programnak, processznek) 4GB memória állt rendelkezésre, mert a processzor ennyit tudott megcímezni. Nem volt szükség lapozásra. Azért mondom, hogy mindegyik programnak (processnek), mert képes volt elszeparálni egymástól a memóriaterületeket, és ami A programnak 0x00ba13A2h memóriacímen található információ az B proginak már teljesen más értéket adott ki ugyanazon címen, nyilván azért, h. ne láthassák egymás adatait, mert akkor ha képes felülírni, beláthatatlan hibához vezet. Itt viszont már beszélhetünk "lapozásról" amikor az OP rendszer átadja mondjuk 100us időre a másik alkalmazásnak az irányítást, akkor a neki megfelelő memóriakörnyezetet is felépíti.

 - Mielőtt belekezdek szeretném kiemelni, hogy a Win95/98 másképp működött mint a Windows NT, az első DOS alapú volt nem volt benne igazi újítás, nem foglalkozok vele. Láthatjátok is, hogy amint lehetett száműzték, és minden mostani Windows-os OP rendszer NT alapú

 Szóval, mivel akkor még nem volt ennyi (4GB) EDO-RAM elérhető ezért a Windows NT virtuális memóriát használt, amit a merevlemezen tárolt. És amikor a program hozzáférést kért ehhez a memóriához, azon belül pedig ahhoz a részhez, ami éppen nem volt a RAM-ban, az Operációs Rendszer betöltötte a merevlemezről a rendszer-memóriába amire éppen szüksége volt. Ezen kívül a felső 2GB-ot úgy emlékszem nem is használta, a kompatibilitás miatt, ugyanis léteztek olyan processzorok, amik a 2GB feletti részt nem támogatták (DEC alpha)

 Természetesen nem volt olyan program, ami lefoglalt volna ilyen tetemes mennyiségű memóriát, így sosem volt kihasználva teljesen.

Mindezeket csak azért tudom, mert most tanulok Windows-NT-t programozni, és a memória lefoglalás esetén fontos, hogy átlássuk a működést.

Egyébként mindez a finomság arra jó, hogy párhuzamosan futhasson több alkalmazás anélkül, hogy egymást zavarnák.
« Last Edit: 2011.February.22. 15:24:13 by tubybb » Logged

Attus
EP lover
*
Offline Offline

Hungary

Posts: 887


OS:
Linux
Browser:
Firefox 3.6.13


View Profile
New Posts
« Reply #18 on: 2011.February.22. 16:12:03 »

Szerintem az EP amúgy sem szállt el túl gyakran. De lehet, csak a Windows óta érzem így. Cheesy
Nálam sűrün előfordult.
 ds_icon_redface
Egy kis végtelen ciklus, ami becsúszik, vagy a PC adatterületre állítása és annyi.
Még számtalan lehetőség kényszeríthet arra, hogy a reset gombhoz kelljen nyúlni.
 ds_icon_mrgreen
Logged

lgb
EP fan
*
Offline Offline

Hungary

Posts: 238


OS:
Linux
Browser:
Safari


View Profile WWW
New Posts
« Reply #19 on: 2011.February.22. 18:51:41 »

Még volna itt valami. Lehet hogy félreértettelek téged LGB, de azt tudnod kell, hogy a 386-os prociktól felfelé MINDEN alkalmazásnak (programnak, processznek) 4GB memória állt rendelkezésre, mert a processzor ennyit tudott megcímezni. Nem volt szükség lapozásra.

Ezt rosszul tudod. Csak eppen mas fajta lapozas, nem ugyanaz nyilvan mint amit az EP a Dave-ben csinal Smiley A 386-os maga kozvetlenul meg tud(na) cimezni 4Gbyte memoriat igen, de az un virtualis cimtartomany ennel joval nagyobb, mivel egy lapot lehet jelolni nem letezonek is. Plusz, mivel 4Gbyte memoria ritkan volt azert 386-os rendszerben meg, eleve ezt csinaltak, ez az un swapping megvalositasanak a hw alapja, akkor egy nem letezonek jelolt lap hatasara kivetel generalodik, amit az OS lekezel, es pl a disk-rol betoltodik az aktualis lap. Nem tudom miert irod, hogy 386-oson nincs szukseg lapozasra: pont az a lenyege, minden modern OS, modern CPU-n lapozast hasznal! Csak eppen lehet, belekeveredtel a fogalmakba, mert - ahogy irtam - ez a lapozas _NEM_ az a lapozas, ami EP-ben van! Ez kis felreertesre adhat okot.

Itt jon a kepbe, hogy nem akartam azt mondani, hogy implementalni kene elsore egy "advanced MMU" (a "386-os ertelmeben vett" lapozassal egyutt) jelleget, azert mondtam, hogy mar az is elorelepes lenne, ha csak az EP ertelmben vett lapozasnal egy-egy 16K-s szeletre remondhatnad, hogy a CPU szamara az read-only, igy nem tudod felulirni veletlenul legalabb. Ettol persze ez teljesen mas jellegu dolog, mint 386-oson, ahol egy lapra azt mondod, hogy read-only, azon kivul, hogy a fogalom hasonlit, teljesen mas implementaciorol van szo, termeszeten!

Quote
Azért mondom, hogy mindegyik programnak (processnek), mert képes volt elszeparálni egymástól a memóriaterületeket, és ami A programnak 0x00ba13A2h memóriacímen található információ az B proginak már teljesen más értéket adott ki ugyanazon címen, nyilván azért, h. ne láthassák egymás adatait, mert akkor ha képes felülírni, beláthatatlan hibához vezet. Itt viszont már beszélhetünk "lapozásról" amikor az OP rendszer átadja mondjuk 100us időre a másik alkalmazásnak az irányítást, akkor a neki megfelelő memóriakörnyezetet is felépíti.

Ez igy nem teljesen korrekt, nem epiti fel, csak hasznalja. Az kisse "draga" lenne, ha a laptablakat ujra kene epiteni minden context switch-nel Smiley
En pont errol beszeltem, hogy alapvetoen azert nem kene elsore egy uj 386-ost tervezni Z80 utasitaskeszlettel Smiley elsore az is jo, ha a meglevo dolgokat lehetne kisse "finomitani". Itt meg arrol van szo, hogy a Z80 alapvetoen 16 bites cimbusszal rendelkezik. Ha mindenaron - bar santito - analogiat akarunk allitani, mondhatjuk, hogy a fenti peldad igaz EP-re is: amit a Z80 lat pl a 0x3AE2 cimen, az lehet mindig mas, attol fugg, mi van oda "belapozva". Persze ismetelten: vigyazzunk ezzel a "lapozas" fogalommal, mert problema, hogy azert 386-oson ez nyilvan nem ugyanazt jelenti, mint EP-n (es persze tovabbi elteres, hogy 386-oson ez a CPU resze, EP-n pedig nem, a Z80 cimbusza 16 bites, csak epp a Dave "besegit" a hianyzo cimbusz bitek eloallitasaban).

Quote
- Mielőtt belekezdek szeretném kiemelni, hogy a Win95/98 másképp működött mint a Windows NT, az első DOS alapú volt nem volt benne igazi újítás, nem foglalkozok vele. Láthatjátok is, hogy amint lehetett száműzték, és minden mostani Windows-os OP rendszer NT alapú

Jah, win 2000 elotti dolgok azok vegulis DOS felett futo, protected mode "shell" voltakeppen nemi GUI-val Cheesy Utana mar NT alapokon nyugvo rendszerrol van szo, amit erdendoen szerver OS-nek fejlesztettek, es maga a kernel nem is lenne rossz (pl VMS fejlesztok is reszt vettek benne). Csak epp annak amit tud, nagyon kis reszet hasznalja ki a windows-ban ami 'felette van' es kisse tonkrevagja a koncepciot ...

Quote
Szóval, mivel akkor még nem volt ennyi (4GB) EDO-RAM elérhető ezért a Windows NT virtuális memóriát használt, amit a merevlemezen tárolt. És amikor a program hozzáférést kért ehhez a memóriához, azon belül pedig ahhoz a részhez, ami éppen nem volt a RAM-ban, az Operációs Rendszer betöltötte a merevlemezről a rendszer-memóriába amire éppen szüksége volt. Ezen kívül a felső 2GB-ot úgy emlékszem nem is használta, a kompatibilitás miatt, ugyanis léteztek olyan processzorok, amik a 2GB feletti részt nem támogatták (DEC alpha)

Nem kell elmagyarazni, irtam OS-t 386-osra mar, szoval tisztaban vagyok a mukodesevel Smiley Amit irtal, arrol irtam fentebb: egy lapot megjelolsz nem letezonek, ez ugy muxik. Amugy az most is gond akar pl Linux alatt is, ha 4Gbyte ram-od van, mert a cimtartomanyt fel kell osztani a kernel es a userspace kozott. Ilyenkor (vagy meg tobb ram eseten) jon a kepbe pl a PAE az ujabb x86-okon, ha mindenaron 32 bites rendszer kell, ami egy ujabb absztrakcios reteget jelent a cimlekepezesben valojaban.

 Természetesen nem volt olyan program, ami lefoglalt volna ilyen tetemes mennyiségű memóriát, így sosem volt kihasználva teljesen.

Quote
Mindezeket csak azért tudom, mert most tanulok Windows-NT-t programozni, és a memória lefoglalás esetén fontos, hogy átlássuk a működést.

Vannak azert erdekes kerdesek minden OS eseten, pl memory overcommit stb, engedjunk-e tobb memoriat foglalni mint a fizikai rendelkezesre allo (hisz az valoszinu eleg durva swapolast - melleseleg szvop-nak kell ejteni, nem en irtam el, hehe) eredmenyezne kesobb.

Na bocsi, csak azert mentem bele ilyen reszleteseggel, mert ugy erzem, felreertettel, illetve osszemostad a "lapozas" fogalmat EP es 386 kozott. Remelem sikerult tisztazni, hogy mit is akartam mondani.
Logged

tubybb
EP user
*
Offline Offline

Hungary

Posts: 328


OS:
Windows XP
Browser:
Firefox 3.6.25


View Profile
New Posts
« Reply #20 on: 2012.February.03. 09:30:42 »

Tisztelt Fórumozók!

 Először is, engedjétek meg, hogy bejelentsem, sikeresen leállamvizsgáztam, mostmár hivatalosan villamosmérnök lettem.

 Lenne egy kérdésem. Mire való a Z80 processzor M1 lába? Mikor aktív, meddig aktív?
Logged

IstvanV
EP addict
*
Offline Offline

Posts: 2104

OS:
Linux 64 bit
Browser:
Firefox 5.0


View Profile
New Posts
« Reply #21 on: 2012.February.03. 10:11:10 »

Lenne egy kérdésem. Mire való a Z80 processzor M1 lába? Mikor aktív, meddig aktív?

Az M1 az utasítások első byte-jának az olvasása közben (MREQ+M1), illetve megszakítás kérés elfogadásakor (IORQ+M1) aktív, a pontos időzítése megtalálható a Z80 dokumentációban. CBh, DDh, EDh, és FDh prefixes utasításoknál a prefix utáni utasítás byte olvasása közben is aktív az M1 (normál esetben, tehát ha nincs pl. több DDh prefix egymás után, legfeljebb 2 M1 memória művelet történik egy utasításban). Az ilyen típusú memória hozzáférésnek más az időzítése, és DRAM frissítést is végez. Ezt a fenti PDF file részletesen leírja.
Logged

lgb
EP fan
*
Offline Offline

Hungary

Posts: 238


OS:
Linux
Browser:
Safari


View Profile WWW
New Posts
« Reply #22 on: 2012.February.03. 13:09:24 »

Először is, engedjétek meg, hogy bejelentsem, sikeresen leállamvizsgáztam, mostmár hivatalosan villamosmérnök lettem.ig aktív?

Grats! En csak nem hivatalosan vagyok az, es mivel evek ota igy all, ez mar igy is marad Sad
Logged

tubybb
EP user
*
Offline Offline

Hungary

Posts: 328


OS:
Windows XP
Browser:
Firefox 3.6.25


View Profile
New Posts
« Reply #23 on: 2012.February.05. 23:49:26 »

Jelzi valami a Z80-nak, hogy fogadta/kitette az adatokat az adatbuszra?
 Csak azért kérdezem, mert ha késik a másik HW, akkor a Z80 rossz adatot olvas ki a memóriából, és kész a baj.
Logged

Ferro73
EP user
*
Offline Offline

Hungary

Posts: 317

OS:
Windows XP
Browser:
Firefox 10.0.2


View Profile
New Posts
« Reply #24 on: 2012.March.05. 17:03:05 »

Jelzi valami a Z80-nak, hogy fogadta/kitette az adatokat az adatbuszra?
 Csak azért kérdezem, mert ha késik a másik HW, akkor a Z80 rossz adatot olvas ki a memóriából, és kész a baj.
Nem jelzi semmi egy megadott eltelt időtől és ideig kell az adatnak aktív lennie. Lásd az időzítő diagramokat.
Ez van mikor egy nem létező szegmensről másolsz általában 0FFh lesz az érték de valamikor 07Fh.
Logged

lgb
EP fan
*
Offline Offline

Hungary

Posts: 238


OS:
Linux
Browser:
Safari


View Profile WWW
New Posts
« Reply #25 on: 2012.March.05. 19:48:01 »

Jelzi valami a Z80-nak, hogy fogadta/kitette az adatokat az adatbuszra?
 Csak azért kérdezem, mert ha késik a másik HW, akkor a Z80 rossz adatot olvas ki a memóriából, és kész a baj.

Imho egy orajelvezerelt digitalis rendszerben ez az idozitesen mulik (ez a szinkron - alias orajelvezerelt - megoldas, ha pedig kulon jel kell, hogy "kesz" az az aszinkron), es nem kell jelezni semmivel. Az mas kerdes, hogy esetleg egy lassu periferia alkalmazhat trukkoket pl "megallitja" a CPU-t egy idore, ha neki nem eleg a "normalisan jaro" ido, vagy hasonlo ...
Logged

Ferro73
EP user
*
Offline Offline

Hungary

Posts: 317

OS:
Windows XP
Browser:
Firefox 10.0.2


View Profile
New Posts
« Reply #26 on: 2012.March.05. 20:28:24 »

Igen a WAIT ha kell pár ciklus órajel
Logged

Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611


OS:
Windows 7
Browser:
Firefox 10.0.2


View Profile WWW
New Posts
« Reply #27 on: 2012.March.05. 20:31:14 »

Igen a WAIT ha kell pár ciklus órajel
Ezt csinálja a Dave, ha engedélyezve van neki.

Amúgy manapság már nem lehet olyan lassú cuccot kapni, amihez kéne
Logged

Tags:
Enterprise Forever  |  :HUN  |  Hardver  |  Topic: Z80

Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks

Template made by Mr.Prise
Page created in 0.13 seconds with 23 queries.
Google visited last this page 2012.May.17. 05:24:38
Follow ep4ever_news on Twitter