«« ( Date ) »» // «« ( Thread ) »» // vlsi-nastava - 2004

Re: Block Read pitanje

by mprinc
sreda, 28. januar 2004 - 07:25.

Evo moj kratak (?) pogled na ovu problematiku, iliti tekstualno opis
asistentove slike :))

NAJBITNIJE 1: WB slave interface ne treba da vidi razliku izmedju single i
block ciklusa
NAJBITNIJE 2: i blok ciklus moze biti sa WS taktovima, dakle kome je sve ovo
komplikovano neka pravi sve sinhrono u 2 takta, a sa ACK neka odgovara tek u
2. taktu (u 1. taktu ACK je '0')

u block-u
- CYC definise zauzece magistrale i da je ciklus na magistrali u toku.
Na njega ne treba da se obazire preterano slave, jer je on vise za arbitera
magistrale.
- STB se ne treba nikada obarati, obaranje je samo odraz uzimanja daha
mastera (tj. WS takt) (ako nije oboren slave ce vec odmah na pocetku
slijedeceg kloka pripremati nove podatke)
- analogno je sa ACK ali gledano sa strane SLAVE-a

generalno:
- master postavi CYC i STB na samom pocetku takta 0, a moze i 1% pred
kraj takta 0
- slave reaguje asinhrono (rijetki su slucajevi gdje moze sinhrono) na
ACK i priprema se za transfer (dakle, izlaz FIFO-a je asinhron, mada sam ja
uradio jedan "sinhroni" pristup)
- nije problem ako slave ne moze za 1% pred kraj da se pripremi, nikakav
data-leak nece da se desi, samo se cijeli ciklus rasteze jos jedan takt
- master/slave na pocetku takta 1, FINALNO reaguje na signale i to samo
ako su oni i dalje aktivni (dakle ulaz FIFO-a je sinhron)

Zakljucak 1: WISHBONE radi pripremne radnje asinhrono, a sve verifikuje i
konacno odsjeca sinhrono (N-ti takt od pocetka ciklusa (n = 1..beskonacno)

Zakljucak 2 Testbench asistenta Gvozdena dozvoljava ubacivanje WS taktova,
dakle mogu i potpuno sinhroni memorijski blokovi :)

pozdrav,

Sasa