La logica Cuniberti cucchi-vol.1 Segnali elettrici I segnali elettrici, di tensione o di corrente, sono grandezze che variano in funzione del tempo; in base al loro andamento, o forma d’onda, possono essere classificati in analogici e digitali. Segnale analogico Un segnale è analogico quando può assumere tutti i valori compresi in un determinato campo continuo. Un tipico segnale analogico è la tensione illustrata in figura Segnale periodico di periodo T Presentano queste forme d’onda i segnali ricavati direttamente dalla rete di distribuzione elettrica, le portanti dei segnali radio, ecc. Analogica è anche, ad esempio, la tensione generata da un microfono. Segnale digitale Un segnale digitale può assumere solo un numero discreto di valori o livelli. Quando i livelli sono due, come normalmente avviene, il segnale viene detto binario. In figura è illustrato l’andamento di una tensione v che assume soltanto un valore basso VL (L=low) od un valore alto VH (H=high). Un segnale è periodico se si ripete uguale a se stesso dopo un certo intervallo di tempo T, chiamato periodo. Segnale periodico di periodo T Il numero di periodi al secondo definisce la frequenza f del segnale; vale pertanto la seguente relazione: Dispositivi digitali I livelli alto e basso di un segnale binario possono convenzionalmente essere associati a due termini antitetici qualsiasi, come per esempio si e no, aperto e chiuso, vero e falso. La logica.doc pag.1 di 7 Prof. Patti Salvatore R In Elettronica digitale si rivela particolarmente utile la notazione che fa corrispondere ai due livelli i valori logici 1 e 0; infatti, come si vedrà in seguito, risulta così immediata la corrispondenza fra i livelli di un segnale e le cifre del sistema di numerazione binario ossia i bit (binary digit). In particolare se si assegna, come comunemente avviene, 1 al livello alto e 0 al livello basso, si viene a operare nella cosiddetta logica positiva. • Se al contrario 1 indica il livello basso e 0 il livello alto, si opera in logica negativa normalmente viene adottata la convenzione della logica positiva I circuiti digitali sono dispositivi elettrici forniti di uno o più ingressi e di una o più uscite. Applicando agli ingressi i livelli logici del segnale, si ottengono sulle uscite livelli logici che dipendono dalla funzionalità specifica del circuito. Il livello logico applicato ad un ingresso viene spesso indicato come stato (alto o basso, 1 o 0) di ingresso così come il livello presente su una uscita costituisce lo stato dell’uscita. Un sistema logico può essere rappresentato con un blocco, dotato di linee di ingresso I per l’introduzione dei dati in forma digitale e di linee d’uscita U per il rilevamento dei risultati delle manipolazioni logiche che avvengono all’interno del blocco. Ingressi Uscite I Sistema logico U=f(I) U=f(I) è la funzione logica o funzione di commutazione del sistema che lega l’insieme degli ingressi all’insieme delle uscite. Le regole dell’algebra delle funzioni di commutazione sono parte dell’algebra di Boole. Queste regole consentono di analizzare delle proposizioni che possono essere solo vere o false, e espresse da simboli. La logica.doc pag.2 di 7 Prof. Patti Salvatore R Alla base di quella parte dell’algebra di Boole che si utilizza per la formulazione delle funzioni di commutazione, vi è il seguente postulato fondamentale: «Tutte le variabili, dipendenti o indipendenti, di un sistema logico hanno due soli valori possibili: 0 (falso) ed 1 (vero)». Tali variabili risultano legate tra loro unicamente mediante i tre operatori fondamentali • • • (NON) NOT: negazione (E) AND: (O) OR: prodotto logico somma logica NOT: negazione • • la negazione di uno è zero 1= 0 la negazione di zero è uno 0 =1 AND: prodotto logico il prodotto logico fra due variabili è sempre zero tranne quando ambedue le variabili hanno contemporaneamente valore 1 nel qual caso viene 1 OR: somma logica La somma logica tra due o più variabili ha sempre valore uno, tranne quando tutte le variabili assumono contemporaneamente valore zero, nel qual caso la somma logica diviene zero. I circuiti digitali o logici possono essere classificati in base alle loro caratteristiche generali di funzionamento; Si distinguono circuiti: 1. combinatori, 2. sequenziali 3. programmabili. Logica combinatoria La logica combinatoria comprende tutti i circuiti in cui lo stato delle uscite in un determinato istante dipende esclusivamente dalla combinazione degli stati degli ingressi nello stesso istante. Porte logiche (circ. Combinatori) Le Porte logiche sono circuiti combinatori che svolgono funzioni elementari e costituiscono i blocchi fondamentali su cui si basa l’Elettronica digitale. Le principali porte sono la AND e la OR, NOT . In linea di principio, collegando opportunamente più porte logiche si possono ottenere tutte le altre funzioni logiche. La logica.doc pag.3 di 7 Prof. Patti Salvatore R Codificatori (circ. Combinatori) Codificatori sono dispositivi forniti di più ingressi e più uscite, fanno corrispondere all’attivazione di ciascun ingresso una diversa combinazione degli stati delle uscite, secondo un determinato codice. Decodificatori. (circ. Combinatori) I decodificatori svolgono la funzione inversa alla precedente, ossia per ogni combinazione di stati presente sugli ingressi attivano, fra le diverse uscite, quella corrispondente secondo un determinato codice. Multiplexer. (circ. Combinatori) Detto anche selettore, il multiplexer trasferisce in uscita il dato, ovvero il livello logico, presente su uno dei suoi molteplici ingressi. La selezione fra i diversi ingressi dati è determinata dallo stato assunto da particolari ingressi, detti di selezione. Demultiplexer (circ. Combinatori) Il demultiplexer o distributore realizza la funzione opposta alla precedente, distribuendo fra varie uscite i dati presenti in ingresso. Multiplexer e Demultiplexer Il multiplexer e il demultiplexer vengono impiegati in particolare quando si debbano trasmettere su un’unica linea i dati provenienti da più linee e, in fase di ricezione, si debbano ridistribuire i dati ricevuti sulle rispettive linee. Comparatore. (circ. Combinatori) Il comparatore è un dispositivo digitale che accetta al suo ingresso due numeri binari ed indica, attivando l’uscita opportuna, se i due numeri sono uguali oppure quale dei due è il maggiore o il minore. Circuiti aritmetici. (circ. Combinatori) Questi dispositivi sono in grado di compiere operazioni aritmetiche su operandi espressi in codice binario . Poiché tutte le operazioni possono essere eseguite per mezzo dell’addizione, l’elemento base di tali circuiti è il sommatore. Logica sequenziale Nella logica sequenziale assume importanza fondamentale il tempo o meglio la sequenza con cui gli stati logici si susseguono nel tempo. Un segnale impulsivo periodico, detto clock, fornisce la cadenza con cui gli eventi si svolgono. Lo stato delle uscite dopo un certo impulso non dipende solo dallo stato degli ingressi in quell’istante, ma anche dallo stato assunto dalle uscite stesse prima di quell’impulso. La logica.doc pag.4 di 7 Prof. Patti Salvatore R I dispositivi sono dunque dotati di una memoria in grado di ricordare gli stati precedentemente assunti. Flip-flop. (Logica sequenziale) L’elemento base dei circuiti sequenziali è il flip-flop, nelle sue varie forme. Esso costituisce la cella di memoria elementare, in grado di memorizzare un bit. Registri. (Logica sequenziale) Collegando opportunamente in cascata più flip-flop si ottengono i registri, che sono pertanto dispositivi in grado di memorizzare una serie o stringa di bit. Esistono numerosi tipi di registri; i registri a scorrimento consentono ad esempio di far scorrere di una posizione verso destra o verso sinistra ad ogni impulso di clock i bit in essi contenuti. Contatori. (Logica sequenziale) Sono dispositivi sequenziali in grado di contare gli impulsi del segnale di clock e di esprimere in uscita il conteggio sotto forma di numero binario. Logica programmabile - Memorie Un vasto settore del mercato dei semiconduttori è oggi costituito dalle memorie. Si tratta di dispositivi, realizzati a flip-flop o con altre tecniche, in grado di memorizzare un elevato numero di dati espressi sotto forma di bit. Pur non essendo dispositivi programmabili in senso stretto, le memorie costituiscono uno dei blocchi essenziali dei sistemi programmabili, essendo destinate ad immagazzinare le istruzioni che regolano tali sistemi. Logica programmabile Costituzione di una memoria. Logica programmabile - Memorie Si distinguono essenzialmente due tipi di memoria a semiconduttore, la RAM (random access memory) o memoria ad accesso casuale, e la ROM (read-only memory) o memoria di sola lettura. Logica programmabile - Memorie RAM Le memorie RAM consentono sia l’operazione di scrittura che quella di lettura dei dati; esse presentano però la limitazione di essere volatili, cioè di perdere l’informazione se private della tensione di alimentazione. La logica.doc pag.5 di 7 Prof. Patti Salvatore R Logica programmabile – Memorie ROM Le ROM invece, con le loro derivate PROM, EPROM e E2PROM, possono mantenere l’informazione per un tempo indeterminato anche senza alimentazione. Esse necessitano però di essere scritte o dal costruttore stesso o dall’utente, ma al di fuori del sistema in cui verranno successivamente utilizzate. Nel loro funzionamento normale le ROM possono pertanto essere solo lette ma non scritte. Logica programmabile I dispositivi combinatori e sequenziali visti consentono di realizzare sistemi digitali adatti a implementare in modo estremamente veloce funzioni prestabilite. Una volta però che sono stati realizzati i collegamenti fra i vari dispositivi (cablaggio), non è più possibile cambiare la funzione implementata. La logica di questi sistemi viene detta cablata. Logica programmabile Microprocessore I microprocessori sono viceversa dispositivi che, una volta inseriti in un sistema circuitale, consentono di implementare funzioni diverse a seconda delle istruzioni o programmi contenuti nella memoria del sistema stesso. Questi sistemi digitali, detti a logica programmabile, presentano la struttura illustrata in fig., costituita da un processore o CPU (central processing unit), da una memoria, contenente le istruzioni e i dati, e da unità di ingresso-uscita (I/O: input/output). Schema di un sistema programmabile. La CPU, un tempo costituita da vari componenti separati, viene attualmente realizzata in un unico chip e prende il nome di microprocessore (µP). Logica programmabile Microprocessore Il processore è in grado di prelevare di volta in volta le istruzioni contenute nella memoria del sistema e di eseguirle compiendo normalmente operazioni logiche e aritmetiche su operandi, anch’essi contenuti nella memoria. I risultati delle operazioni possono venire riposti in memoria oppure avviati all’esterno del sistema attraverso l’unità di ingresso-uscita. La logica.doc pag.6 di 7 Prof. Patti Salvatore R Circuiti integrati Le porte logiche ed i diversi dispositivi digitali passati in rassegna sono al giorno d’oggi totalmente realizzati in forma di circuito integrato (IC: integrated circuit). • A seconda dei componenti elettronici impiegati, transistori bipolari (BJT) o ad effetto di campo (MOS), della configurazione circuitale base e della tecnologia adottata, si distinguono diverse famiglie logiche, ciascuna caratterizzata da livelli logici e parametri elettrici specifici. • Le famiglie più diffuse sono la TTL e la CMOS. integrato TTL 7400 La logica.doc integrato CMOS 4001 pag.7 di 7 Prof. Patti Salvatore R