Rete Sincrona
La rete elabora dati ricevuti in ingresso relativi a porzioni di codice genetico.
Attraverso due ingressi A e B sono trasmesse serialmente due sequenze di 6 bit.
Ognuna delle due sequenze di fatto non ha interruzioni, ma idealmente è divisa in tre
coppie di bit.
Ogni coppia di bit codifica una base azotata presente nella porzione di DNA in analisi, e
precisamente:
• 00 -> adenina
• 11 -> timina
• 01 -> citosina
• 10 -> guanina
Una sequenza di 6 bit è pertanto la traduzione in codice binario di un codone(tripletta).
Un segnale VALID si attiva contemporaneamente all’acquisizione, da parte della rete,
del primo bit significativo, tornando a zero alla fine della ricezione delle sequenze.
La rete ha un segnale di RESET utile a ripristinare il sistema alla condizione di partenza.
Dispone anche di un unico CLOCK per sincronizzare i vari componenti.
In base ad un segnale di controllo CTRL, che non varia durante l’arrivo dei
dati utili, si distinguono due differenti funzioni, i cui risultati vengono
mostrati attraverso le due uscite OUT_0 e OUT_1 :
• CTRL=1
La rete verifica se i due filamenti di DNA possono essere appaiati.
Alle tre basi azotate di un codone devono dunque corrispondere, nell’altra
tripletta, basi complementari.
(Adenina<->Timina , Citosina<->Guanina)
A tal fine si deve contare quante delle tre coppie di basi azotate sono
complementari, portando tale numero nelle due uscite.
La possibilità di un corretto appaiamento si avrà pertanto solo in caso di
uscita 11.
• CTRL=0
La rete verifica l’uguaglianza dei due filamenti di DNA.
A tal fine si deve contare quante delle tre coppie di basi azotate sono
differenti, portando tale numero nelle due uscite.
L’identità dei due codoni si avrà pertanto solo in caso di uscita 00.
Esempi
Simulazione Behavioral
Finchè RESET rimane ad 1 le uscite sono tutte a 0, quando RESET va a 0 la rete può iniziare ad
elaborare i dati.
Al fronte di salita di VALID corrisponde il primo bit significativo. Ogni due bit significativi la rete
analizza la coppia di basi azotate codificate attraverso gli ingressi A e B.
Al fronte successivo del CLOCK, in base al valore di CTRL, viene segnalata la loro differenza o
complementarità incrementando il valore delle uscite OUT_0 e OUT_1.
Simulazione Post-Route (1/3)
CTRL=0 -> la rete
conta le differenze
A=0 A=0
B=1 B=1
A=1 A=0
B=1 B=0
differenti
A=1 A=1
B=0 B=0
uguali
differenti
(incrementa) (conserva) (incrementa)
Simulazione Post-Route (2/3)
CTRL=1 -> la rete conta
le complementarità
A=1 A=1
B=0 B=0
A=1
B=0
A=0
B=1
A=0
B=1
A=1
B=0
complementari complementari complementari
(il valore delle uscite viene sempre incrementato)
Simulazione Post-Route (3/3)
CTRL=0 -> la rete
conta le differenze
A=1 A=1
B=1 B=1
A=1 A=0
B=1 B=0
uguali
A=0 A=1
B=0 B=1
uguali
uguali
(il valore delle uscite non viene mai incrementato)
Scarica

Presentazione