11 / 20 · Concetto
Scala a N×N e conta i fronti di completamento
Parametrizza la dimensione spaziale N separatamente dalla lunghezza di riduzione K.
Le lezioni sono gratuite. Iscriviti per salvare i progressi.
Separa dimensione spaziale e lunghezza di riduzione
Una griglia di PE N×N produce un blocco di uscita N×N. K è la dimensione di riduzione e non deve necessariamente uguagliare N. Con N=3 e K=5, A è 3×5, B è 5×3 e C è 3×3. Nove PE consumano ciascuno cinque termini, eseguendo quarantacinque MAC. N determina cablaggio e sfasamento; K determina larghezza di accumulo, conteggio dei termini e durata dell'inserimento.
Usa la convenzione stabilita: clear termina prima di E0, gli ingressi sono stabili prima di E_t, MAC e inoltro registrato avvengono a quel fronte e non esiste una pipeline aggiuntiva del moltiplicatore. A(i,k) viene inserito a k+i e percorre j collegamenti. B(k,j) viene inserito a k+j e percorre i collegamenti. Entrambi raggiungono PE(i,j) a k+i+j.
Il PE finale completa dopo E_(K+2N−3). Contando E0 incluso si ottengono K+2N−2 fronti di avanzamento. Per N=K=2, il numero dell'ultimo fronte è tre e il conteggio è quattro. Per N=3, K=5, l'ultimo numero è otto e il conteggio è nove.
Parametrizza collegamenti e contatori
Alla colonna zero, l'ingresso A di un PE proviene dal confine; altrove proviene dall'uscita A registrata del vicino sinistro. La regola per B è analoga per il confine superiore e il vicino sopra. Collega valid e i tag job/k sugli stessi collegamenti e condividi clear e advance in tutta la griglia.
Richiedi N≥1, K≥1 e AW≥2W. Un count che memorizza da zero a K richiede max(1,ceil(log2(K+1))) bit. Un tag k che memorizza da zero a K−1 richiede max(1,ceil(log2 K)) bit. Queste larghezze differiscono quando K è una potenza di due; evita dichiarazioni con larghezza zero per K=1.
L'ultimo inserimento al confine avviene a E_(K+N−2), seguito da N−1 fronti per completare il transito. I conteggi di calcolo escludono inizializzazione, caricamento della memoria e trasferimento di uscita. Con P fronti di pausa, i fronti fisici trascorsi diventano K+2N−2+P. Stadi aggiuntivi di pipeline richiedono una nuova analisi temporale.
Prova tu
Per N=4, K=3, trova i fronti MAC iniziale/finale di PE(2,1), il fronte finale della griglia, il numero di fronti di calcolo e quello di fronti fisici con due pause.
Leggi la spiegazione
PE(2,1) consuma k0 a E3 e k2 a E5. La griglia termina dopo E8, richiedendo nove fronti di avanzamento E0..E8. Due pause danno undici fronti fisici, escludendo inizializzazione e trasferimento di uscita.