Tesi Robotica Analisi, progettazione e implementazione... | Page 128
i
i
“LP_Tesi” — 2013/10/17 — 18:27 — page 128 — #128
i
128
i
6. SECONDA RELEASE
Nella fase di estrazione invece le regole deque aspettano che i Processor relativi abbiano finito la computazione della coppia di righe omologhe, fra queste
la prima a sparare sarà quella il cui indice è contenuto nella testa della FIFO
sorter, tenendo presente così dell’ordine in cui i Processor sono stati riempiti.
Quando tutti gli elementi di disparità sono stati estratti la FIFO viene aggiornata dequando l’elemento in testa grazie alla regola outManager.
In questo modo i Processor vengono riempiti nel modo più veloce possibile
checkando ogni volta chi per primo è diventato libero, e allo stesso tempo questi
vengono svuotati mantenendo l’ordine in cui sono stati riempiti.
Infine in Alg:6.5 sono presenti gli unici due metodi del modulo, essendo sintetizzato sull’FPGA l’interfaccia presentata all’esterno è molto semplice, si osserva il
metodo put che permette l’inserimento di pixel all’interno della FIFO di ingresso
e il metodo get che svuota la FIFO di uscita quando viene chiamato.
Algoritmo 6.4 Regole del Top
1
2
3
4
5
6
7
8
rule inManager (inCnt==fromInteger(width));
inCheck<=incr(i nCheck);
if (! processors [inCheck]. isFull ) begin
inCnt<=0;
inIndex<=inCheck;
sorter .enq(inCheck);
end
endrule
9
10
11
12
13
14
15
for (Integer i=0; i