80 likes | 224 Views
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.
E N D
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_0e 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.
Schematico Ciò mantiene CE a 0 durante la sola presenza del primo bit delle due basi azotate Se A1 è diverso da B1 e A2 è diverso da B2, le basi sono complementari. Se A1 è diverso da B1 o A2 è diverso da B2, le basi sono differenti.
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 VALIDcorrisponde il primo bit significativo. Ogni due bit significativi COUPLE_OF_BASES rimane ad un 1 per un periodo, in questo periodo la rete analizza la coppia di basi azotate trasmesse 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 A=1 A=1 B=0 B=0 Ho portato in uscita anche COUPLE_OF_BASES per evidenziare come la rete vada ad incidere sulle uscite soltanto ogni due bit, quando la coppia di basi azotate è completa, oltre naturalmente ad essere valida. uguali differenti 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 A=0 B=0 B=1 A=0 A=1 B=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 A=0 A=1 B=0 B=1 uguali uguali uguali (il valore delle uscite non viene mai incrementato)