Elettronica/Introduzioni alle reti logiche

Una rete logica è un modello che serve per rappresentare e risolvere un problema logico facendo uso di variabili booleane ovvero che possano assumere solo due valori denominati 0 e 1 logico. Alla base di questa rappresentazione c'è l'algebra booleana. Le reti logiche possono essere di due tipi: reti combinatorie e reti sequenziali. Le prime sono reti le cui uscite dipendono solo da una combinazione delle variabili in ingresso, le seconde invece hanno memoria nel senso che l'uscita non dipende solo dagli ingressi in quell'istante ma anche dalle uscite precedenti. Reti di questo tipo sono anche sincrone ovviamente perché l'istante non è un concetto generico ma è rigorosamente scandito dal clock. Il segnale di clock scandisce la temporizzazione con cui vengono campionati gli eventi che interessano il sistema. In questo capitolo saranno descritti i fondamentali dell'algebra booleana e i principali concetti alla base delle reti logiche. Una trattazione rigorosa esula dagli scopi di questo capitolo e per essa si rimanda a testi specializzati come "Reti logiche e calcolatori" di Fabrizio Luccio e Linda Pagli.

Operazioni BooleaneModifica

Le possibili operazioni booleane sono definite così come segue:

1) NOT -> è una operazione unaria che consiste nel negare una variabile booleana. Se la variabile vale 1 la sua negata vale 0 e viceversa

2) AND -> è anche nota come prodotto logico. Il risultato di questa operazione è 1 solo se tutte le variabili coinvolte valgono 1

3) OR -> è anche nota come somma logica. Il risultato è 1 se almeno una delle variabili coinvolte vale 1

4) XOR -> questa funzione è alla base dei circuiti aritmentici e può essere ottenuta per combinazione delle altre precedenti.

Per ognuna di queste funzioni è possibile definire una tabella di verità in cui vengono enunciati i valori in uscita in base ai valori in ingresso.

Teoremi dell'algebra booleanaModifica

Funzioni booleaneModifica

A partire dalle operazioni logiche fondamentali è possibile ottenere funzioni più complesse combinando assieme più variabili booleane. Da qui il nome Reti Combinatorie ovvero reti che formano una combinazione di variabili per mezzo degli operatori logici. Per esempio il termine   sarebbe mettere in AND le variabili a e b. Se abbiamo più condizioni da rispettare che possono essere congiunte tra loro entra in ballo l'operatore di OR:  ; Questo si legge come a AND b OR c AND d e significa che la rete darà in uscita un uno logico solo se saranno vere contemporaneamente a e b oppure c e d oppure ancora a, b e c ma non d oppure ancora a,c e d ma non b e così via. In pratica avremo in uscita un 1 logico purché una delle due operazioni di AND dia un 1 logico. Tutto questo può viene generalmente accompagnato da due rappresentazioni: 1) Le tabelle della verità

2) Gli schemi a porte logiche

Mentre per le tabelle di verità si è già spesa qualche parolina, vale ora la pena di descrivere un po' meglio a che serve quest'altro metodo di rappresentazione.

Le porte logicheModifica

Le porte logiche sono alla base dell'elettronica digitale. Ciascuna funzione logica che serve a ottenere il risultato voluto può venire rappresentata sotto forma di porte logiche. L'elettronica digitale si occupa di implementare fisicamente le porte logiche facendo uso di dispositivi elettronici. Quindi se vogliamo uno schema a porte logiche non è altro che l'ultimo livello dell'astratto mondo matematico booleano e la sua realizzazione pratica è il circuito su silicio vero e proprio.

Minimizzazione delle funzioni logicheModifica

Mappe di KarnaughModifica

Algoritmo di Quine - McCluskeyModifica

Automi a stati finitiModifica

Minimizzazione di automi - L'algoritmo a scalaModifica