Re: pitanje za asistenta
Pazi, ne shvatas jedan detalj. Kad se kaze: "All signals are REGISTERED at
rising edge of CLK_I...", to ne postavlja nikakva eksplicitna ogranicenja
sto se tice vremena postavke signala ACK_O, to pravilo jedino kaze da:
"MASTER CE TAJ SIGNAL CITATI NA NEKU UZLAZNU IVICU". Registered ne znaci
postavljati signal nego ocitati ga.
Dalje: dijagrami ciklusa i objasnjenja uz njih govore da MASTER po
pokretanju ciklusa ceka na postavljanje ACK_O (primetiti da i tamo pise da
on to proverava na uzlaznim ivicama takta), kad REGISTRUJE ACK_O(ACK_I)
signal onda on podrazumeva da su podaci na linijama DAT_O (ako je read) i
cita ih, ili da je upis obavljen (write) pa moze da ukine adrese, podatke,
STB_O,CYC_O signale...
Ove dva prethodna objasnjenja govore da nema nikakvih problema pri
postavljanju ACK_O signala na silaznu ivicu. Potrebno je samo obezbediti da
na prvu sledecu UZLAZNU master moze da smatra da je SLAVE odradio posao
(postavio podatke na DAT_O - read, upisao podatke - write), a ispravno ce
smatrati samo ako je to stvarno uradjeno.
Nadam se da je sada jasno. ;)
2007/1/29, Igor Stojkovic <stojkovic.igor@gmail.com>:
rising edge of CLK_I...", to ne postavlja nikakva eksplicitna ogranicenja
sto se tice vremena postavke signala ACK_O, to pravilo jedino kaze da:
"MASTER CE TAJ SIGNAL CITATI NA NEKU UZLAZNU IVICU". Registered ne znaci
postavljati signal nego ocitati ga.
Dalje: dijagrami ciklusa i objasnjenja uz njih govore da MASTER po
pokretanju ciklusa ceka na postavljanje ACK_O (primetiti da i tamo pise da
on to proverava na uzlaznim ivicama takta), kad REGISTRUJE ACK_O(ACK_I)
signal onda on podrazumeva da su podaci na linijama DAT_O (ako je read) i
cita ih, ili da je upis obavljen (write) pa moze da ukine adrese, podatke,
STB_O,CYC_O signale...
Ove dva prethodna objasnjenja govore da nema nikakvih problema pri
postavljanju ACK_O signala na silaznu ivicu. Potrebno je samo obezbediti da
na prvu sledecu UZLAZNU master moze da smatra da je SLAVE odradio posao
(postavio podatke na DAT_O - read, upisao podatke - write), a ispravno ce
smatrati samo ako je to stvarno uradjeno.
Nadam se da je sada jasno. ;)
2007/1/29, Igor Stojkovic <stojkovic.igor@gmail.com>:
On 1/28/07, Rade Jakovljević <radegm@gmail.com> wrote:
> 1. MASTER postavlja signale na uzlaznu ivicu takta i signale od SLAVE-a
> ocitava na sledecu ( ili jednu od sledecih ) uzlaznu ivicu takta.
>
> Tacno.
>
> >
> > 2. Postoje 3 nacina na koji SLAVE moze zavrsiti ciklus:
>
> > 1) Asynchronous Cycle Termination -> ACK_O je KOMBINACINOG tipa. Kao u
> primeru "wishbone kompatibilnog porta" - prakticno ACK_0 = STB_I u tom
> primeru.
> > Tj -> slave ne "odgovara" ni na kakvu ivicu CLK-a ...
> > ( jedna operacija traje 1 wb ciklus )
> > - ovakvi su svi primeri u knjizi, primer tog wb porta, Sasin domaci
...
>
> To sam malopre i objasnjavao, jednostavno Slave ima obavezu da kada
postavi
> ack signal, da na sledecu uzlaznu ivicu takta ima postavljene podatke
> (recimo da je citanje iz Slave-a u pitanju), to je sva poenta koliko ja
> shvatam. A da li ces ti ack_o postaviti na silaznu ivicu takta ili
> kombinaciono (odmah po postavljanju stb_i signala) zavisi kako si ti to
> zamislio. Ako postavis odmah, onda znaci da ce ti citanje trajati 1 takt
i
> da na sledecu ivicu moras postaviti podatke. Ako ti je sistem takav da
to ne
> mozes da stignes, (kao sto je kod mene slucaj pa mi citanje traje 3
takta,
> jer je fifo sinhron), onda moras to da odlozis za par taktova. E sad
kako to
> da realizujes? Pa jedan od nacina je da postavljas na silaznu ivicu, jer
je
> lako da se na nju sinhronizujes. Mozes i na uzlaznu, zavisi...
>
> > E sad, mozda ja nesto prevodim/shvatam lose iz navedenog pravila ->
no,
> kod Asynchronous Cycle Termination - ACK_I ne zavisi od CLK_I .. da li
to
> znaci da se "kosi sa pravilom 4.10" ?
>
> Ne kosi se pravilom. Pravilo 4.10 samo kaze kada se ocekuje ocitavanje
> podataka od mastera/slave-a, a to je na uzlaznu ivicu. Kada ces
postaviti
> ack nije bitno, ako ces na sledecu ivicu imati podatke na izlazu, jer
ce
> ih master ocekivati na tu ivicu JER JE TO PRVA UZLAZNA IVICA POSLE
> POSTAVLJANJA ACK_O. Tu je veza izmedju pr 4.10 i Asynchronous Cycle
> Termination koji si ti opisao ovde.
> Ovo je opet samo moje misljenje/shvatanje wb-a
Kako se sa pravilom 4.10 ne kosi ovo da se ACK_O postavlja na silaznu
ivicu? Po meni to je najjasnije da se kosi :). ACK_O, kao sto mu
poslednje slovo kaze je OUTPUT signal a pravilo kaze:
All WISHBONE output signals are registered at the rising edge of [CLK_I]
Znaci ako ga postavljas na silaznu ivicu onda ili krsis ovo ili
smatras da ACK_O nije izlazni signal.
--
Pozdrav,
Igor Stojkovic mailto: stojkovic.igor@gmail.com
-----------------------------------------------------------------
unsubscribe:
minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20vlsi-nastava
-----------------------------------------------------------------
- Follow-Ups:
- Re: pitanje za asistenta
- From: "Igor Stojkovic" <stojkovic.igor@gmail.com>
- Re: pitanje za asistenta
- References:
- Re: pitanje za asistenta
- From: Sasa Stojanovic <stojsasa@yahoo.com>
- Re: pitanje za asistenta
- From: Nenad Tesovic <tesovicn@gmail.com>
- Re: pitanje za asistenta
- From: "Rade Jakovljević" <radegm@gmail.com>
- Re: pitanje za asistenta
- From: "Drasko Injac" <draskoi@gmail.com>
- Re: pitanje za asistenta
- From: "Rade Jakovljević" <radegm@gmail.com>
- Re: pitanje za asistenta
- From: "Igor Stojkovic" <stojkovic.igor@gmail.com>
- Re: pitanje za asistenta
Previous by date: Re: pitanje za asistenta
Next by date: Re: pitanje za asistenta
Previous by thread: Re: pitanje za asistenta Next by thread: Re: pitanje za asistenta
Previous by thread: Re: pitanje za asistenta Next by thread: Re: pitanje za asistenta