[zxspectrum] Re: studio ULA
- From: Luca Bisti <lucbisti@xxxxxx>
- To: zxspectrum@xxxxxxxxxxxxx
- Date: Sun, 30 Jul 2006 17:21:56 +0200
- istanti di lettura della ULA della VRAM sul suo bus privato
- primo istante di contesa (memoria e I/O)
Queste due le abbiamo, giusto?
Yes :)
- lettura via floating bus del contenuto della locazione 0x4000 sul
bus con una IN A,(255)
- snow effect: fetch di un'istruzione in memoria contesa con registro
I=0x40 (IR indirizzo conteso) - snow effect
Per essere sicuro, qui avrei bisogno di un riferimento software da
far girare. Domani dovrei poter fare le prove.
Per il floating bus usa il mio programma FloatSpy, che ha anche
un'interfaccia BASIC con la quale puoi spostare in avanti e indietro
nel tempo l'operazione di IN con precisione di un singolo tstate. La
routine che legge il floating bus all'istante specificato inizia a
32924 (chiamata dalla linea 250 del BASIC). Occhio che fa un giochino
particolare: il primo frame lo passa ad effettuare contese per
fissare la fase iniziale con cui lo Z80 accettera' l'interrupt
successivo. In questo modo siamo sicuri che la prima istruzione del
ciclo di attesa che portera' poi all'istante desiderato per
effettuare la IN inizi sempre allo stesso t-state dall'inizio del
quadro, cioe' il riferimento temporale e' fisso. Usare le contese e'
l'unico modo per avere questa certezza, se non lo fai ti puo'
capitare che la tua routine una volta parta diciamo a T=26, al quadro
successivo a T=27, poi T=26 di nuovo ecc, rendendo instabili le
misure. La nostra routine dovrebbe essere perfettamente stabile.
Ovviamente puoi modificare la IN con qualsiasi altra istruzione per
testare anche le contese. A 0xC000 ci finisce il loop di ritardo
eseguito dentro il vettore di interruzione e a 0xC011 c'e' la IN
A,(0xFF) con cui testiamo il floating bus. I valori dei tstates
stampati nell'interfaccia BASIC sono relativi alla base di
RealSpectrum, quindi l'IM2_OFS e' quello da stabilire con certezza
per stabilire la base dei tempi assoluta in modo che il tstate di
lettura/contesa assuma il valore misurato sperimentalmente con la CPLD.
Per lo snow effect ti faccio sapere :)
Luca
- References:
- [zxspectrum] studio ULA
- From: Alessandro
- [zxspectrum] Re: studio ULA
- From: Luca Bisti
- [zxspectrum] Re: studio ULA
- From: Alessandro
- [zxspectrum] Re: studio ULA
- From: Luca Bisti
- [zxspectrum] Re: studio ULA
- From: Alessandro
Other related posts:
- » [zxspectrum] studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- » [zxspectrum] Re: studio ULA
- istanti di lettura della ULA della VRAM sul suo bus privato - primo istante di contesa (memoria e I/O)
Queste due le abbiamo, giusto?
Yes :)
- lettura via floating bus del contenuto della locazione 0x4000 sul bus con una IN A,(255) - snow effect: fetch di un'istruzione in memoria contesa con registro I=0x40 (IR indirizzo conteso) - snow effect
Per essere sicuro, qui avrei bisogno di un riferimento software da far girare. Domani dovrei poter fare le prove.
- [zxspectrum] studio ULA
- From: Alessandro
- [zxspectrum] Re: studio ULA
- From: Luca Bisti
- [zxspectrum] Re: studio ULA
- From: Alessandro
- [zxspectrum] Re: studio ULA
- From: Luca Bisti
- [zxspectrum] Re: studio ULA
- From: Alessandro