uni

RSS complesse

  • microoperazioni: i assegnamenti Rq<=Rsk,q(x,Rq-1,...,R0) relativi ai registri operativi.
  • microsalti: i assegnamenti STAR<=(x,R1-1,...,R0) relativi al registro di stato.
  • statement di etichetta : gli statement completi all’interno al costrutto casex .. endcase.

Precisazioni sulle microooperazioni

  1. descrive l’assegnamento del registro con i contenuti di .
  2. equivale a DUE microoperazioni:
  3. è sostanzialmente scorretta, in quanto A OGNI clock TUTTO il registro viene riassegnato, quindi equivarrebbe a:

Handshake /dav, rfd

  • /dav : data valid: se \dav=1 allora il dato fornito non è attendibile, se \dav=0 il dato è corretto e disponibile
  • rfd : ready for data: se rfd=1, il consumatore è pronto a ricevere, se rfd=0 allora il consumatore non è pronto a leggere il dato
    Funzionamento:
  1. S0: : il dato del produttore non è pronto, il consumatore è pronto a ricevere
  2. S1: : il dato è pronto
  3. S2: : il consumatore ha prelevato il dato e non è pronto a riceverne altri
  4. S3: : il produttore è pronto a produrre un nuovo byte
  5. S0: : ritorno allo stato iniziale
    Partendo da una condizione iniziale in cui rfd=1 e \dav=1:
    Il produttore compie la prima mossa: aggiorna il dato e pone \dav=0, ad indicare che il dato è adesso valido.
    Il consumatore, legge \dav=0, pone quindi rfd=0, preleva il dato, e lo elabora.
    Il produttore riporta allora \dav=1 e attende che il consumatore riport rfd=1, per ritornare alal condizione iniziale.
    Tutte queste variabili di handshake necessitano di un registro di supporto, ognuno dello stesso nome della variabile.

Handshake soc, eoc

  • soc: start of computation: soc=0 consumatore non ha bisogno di nuovo byte, soc=1 indica al produttore di fornire un nuovo byte.
  • eoc: end of computation: eoc=0 produttore ha iniziato la preparazione di un nuovo byte, eoc=1 il produttore è pronto a preparare un nuovo byte.
    Funzionamento:
  1. S0: : consumatore non è pronto a nuovo byte e produttore è disponibile ad iniziarne una nuova
  2. S1: : consumatore è pronto
  3. S2: : produttore inizia produzione
  4. S3: : consumatore notifica di aver capito e non chiede più altri dati
  5. S0: : il produttore ha finito e il consumatore preleva il dato