Welcome, Guest. Please login or register.


Author Topic: Memoria idozites (Read 14117 times)

Offline geco

  • EP addict
  • *
  • Posts: 7223
  • Country: hu
    • Támogató Támogató
Re: Memoria idozites
« Reply #15 on: 2021.February.22. 11:51:06 »
Pusztán teoretikus kérdés: lehet-e különbség a VRAM-ban futó és bővítő RAM-ot elérő, illetve a bővítő RAM-ban futó és VRAM-ot elérő azonos utasítások végrehajtási ideje között?
Én úgy tudom, hogy ha már a kód a VRAM-ban fut, akkor már mind1, hogy az adatot honnan kapja. A RAM-ban futó, VRAM-ot elérőt mutatja az RV oszlop.

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1346
  • Country: hu
  • Stray cat from Commodore alley
Re: Memoria idozites
« Reply #16 on: 2021.February.22. 14:15:32 »
Arra az esetre gondoltam, amikor két byte-os az opkód. A VVR mintázat nem lehet, hogy el fog térni az RRV-től?

Offline geco

  • EP addict
  • *
  • Posts: 7223
  • Country: hu
    • Támogató Támogató
Re: Memoria idozites
« Reply #17 on: 2021.February.22. 14:25:10 »
Na ezt nem értem, az op kód mind a két darabja ugyanúgy ugyanabban a RAM-ban van.

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1346
  • Country: hu
  • Stray cat from Commodore alley
Re: Memoria idozites
« Reply #18 on: 2021.February.22. 16:45:50 »
Nyilván. Csak hipotetikusan az egyik esetben két memória hozzáférésnél lesz nyújtva az órajel ciklus, míg fordítva meg egynél. VVR = két nyújtott meg egy sima, RRV = két sima meg egy nyújtott.

Offline geco

  • EP addict
  • *
  • Posts: 7223
  • Country: hu
    • Támogató Támogató
Re: Memoria idozites
« Reply #19 on: 2021.February.22. 16:56:52 »
bit x,(hl) pl 2 op kódos, az add a,(hl) 1, meg lehet nézni a táblázatban, hogy mi a stájsz (emulátoron :D )

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14779
  • Country: hu
    • http://enterprise.iko.hu/
Re: Memoria idozites
« Reply #20 on: 2021.February.22. 19:23:54 »
Mondjuk az ilyen "fixen ennyi órajel" becsléseknek túl sok értelme nincsen :oops:
Valóságban a 14.2375362676056338 MHz-es Nick (IstvánV számolta ki: 4433618.75 / 568 * 2 * 57 * 16 ), és a 4/6/10 MHz-es Z80 aktuális viszonyát kell kiszámolni, fél órajel pontossággal (ugye az utasítás olvasás fél órajellel rövidebb mint a normál RAM művelet).
A Nick fix időzítéssel adja a hozzáférési ablakokat, amit vagy ki tud használni a Z80, vagy vár, és addig szünetel az órajele, amely szünet aztán Nick órajelekben számolható ki.
Errefelé raktam be szkópos méréseket, amin látszik, pl, hogy NOP (vagy más azonos ideig tartó utasítás) esetén 4MHz-en nem is tudja az összes hozzáférési ablakot kihasználni a Z80, míg 6MHz-en már igen.
Bonyolultabb kódoknál is sokat számíthat az utasítások sorrendje, IstvánV már sokszor tett javaslatokat különböző program kódokhoz, hogyha fel van cserélve pár utasítás, akkor gyorsabb lesz, mivel jobban elkapja a Nick hozzáférési ablakokat.
Turbosítással sem biztos, hogy lineárisan változik a program sebessége, ha ugyanannyi vagy nem sokkal több ablakot tud elkapni a kód, akkor nem gyorsul nagyon, míg olyan proci sebességnél ahol már mondjuk kétszer annyi ablakot kap el, akkor hirtelen meglódul a program.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 10101
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Memoria idozites
« Reply #21 on: 2021.February.22. 20:04:06 »
Errefelé raktam be szkópos méréseket
Ha minden igaz, ilyenről loptam a profilképem egy részét.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline geco

  • EP addict
  • *
  • Posts: 7223
  • Country: hu
    • Támogató Támogató
Re: Memoria idozites
« Reply #22 on: 2021.February.22. 20:52:22 »
Mondjuk az ilyen "fixen ennyi órajel" becsléseknek túl sok értelme nincsen :oops:
Valóságban a 14.2375362676056338 MHz-es Nick (IstvánV számolta ki: 4433618.75 / 568 * 2 * 57 * 16 ), és a 4/6/10 MHz-es Z80 aktuális viszonyát kell kiszámolni, fél órajel pontossággal (ugye az utasítás olvasás fél órajellel rövidebb mint a normál RAM művelet).
A Nick fix időzítéssel adja a hozzáférési ablakokat, amit vagy ki tud használni a Z80, vagy vár, és addig szünetel az órajele, amely szünet aztán Nick órajelekben számolható ki.
Errefelé raktam be szkópos méréseket, amin látszik, pl, hogy NOP (vagy más azonos ideig tartó utasítás) esetén 4MHz-en nem is tudja az összes hozzáférési ablakot kihasználni a Z80, míg 6MHz-en már igen.
Bonyolultabb kódoknál is sokat számíthat az utasítások sorrendje, IstvánV már sokszor tett javaslatokat különböző program kódokhoz, hogyha fel van cserélve pár utasítás, akkor gyorsabb lesz, mivel jobban elkapja a Nick hozzáférési ablakokat.
Turbosítással sem biztos, hogy lineárisan változik a program sebessége, ha ugyanannyi vagy nem sokkal több ablakot tud elkapni a kód, akkor nem gyorsul nagyon, míg olyan proci sebességnél ahol már mondjuk kétszer annyi ablakot kap el, akkor hirtelen meglódul a program.
Jogos, erről megfeledkeztem