Logica negativa
Il termine logica negativa viene utilizzato in elettronica digitale per indicare una codifica dell'informazione binaria nel quale la rappresentazione dei significati vero e falso è invertita rispetto a quella usuale. Nel caso di un segnale elettrico digitale, viene usata anche la denominazione di (segnale) active low (attivo-basso).
Principio generale
modificaLe informazioni binarie o bit sono quelle che possono assumere due soli valori, denominate di volta in volta vero/falso, attivo/inattivo, zero/uno e simili. In particolare utilizzando una opportuna rappresentazione qualsiasi numero può essere codificato usando solo informazioni binarie.
Per consentire operazioni di ordinamento fra le rappresentazioni binarie è stata adottato il criterio convenzionale che lo zero sia minore dell'uno; questa convenzione consente di affermare ad esempio che
Per estensione di questa convenzione, anche il falso è minore del vero, lo spento dell'acceso e via via per tutte le altre denominazioni che i bit possono assumere.
In elettronica digitale, che manipola informazioni binarie codificate come grandezze elettriche, i due valori logici vero/falso possono essere rappresentati dalla presenza o assenza di corrente elettrica, dalla direzione assunta dalla corrente lungo un conduttore, da due diversi livelli di tensione elettrica, dall'apertura o chiusura di un circuito e molte altre.
Anche in questo caso i due valori assunti dalla grandezza elettrica osservata sono o possono essere ordinati; ad esempio una tensione elettrica di 2 volt è minore di una di 6 volt. Se ora convenzionalmente decidiamo che il valore logico zero (minore) sia rappresentato dalla tensione più bassa, siamo in logica positiva; se al contrario assegniamo lo zero alla tensione maggiore, ci troviamo in logica negativa.
Rappresentazione
modificaLa maggior parte dei dati numerici binari (valori, indirizzi di memoria) utilizzati in un bus interno di una scheda elettronica è in logica positiva, o equivalentemente si dice essere attiva-alta. Tuttavia alcune linee di controllo possono essere in logica negativa, ovvero attive-basse. È convenzione in questo caso rappresentare i nomi delle linee con un trattino sopra il nome: la linea IRQ è una richiesta di interruzione a logica negativa, talvolta indicata anche come /IRQ.
Se una linea ha due distinti significati corrispondenti ai due valori logici è consuetudine indicarla con i due nomi separati dalla barra trasversa; ad esempio un segnale che indica la modalità di lettura ("Read") con un uno e di scrittura ("Write") con uno zero è solitamente indicata con R/W.
Talvolta in modo improprio si denomina a logica negativa il funzionamento del contatto normalmente chiuso di un relè, ossia di quel contatto che interrompe un circuito quando il relè viene attivato.
Tecnologia elettronica
modificaSu brevi distanze, ad esempio all'interno della stessa scheda, le rappresentazioni più usate per le informazioni digitali sono basate su due livelli di tensione: ogni segnale inferiore alla tensione più bassa è equivalente ad uno zero, mentre se è superiore alla tensione più elevata è considerato un uno. I valori che cadono all'interno dell'intervallo sono indeterminati e solitamente si realizzano solo durante le transizioni 0 1 e viceversa.
L'effettivo valore delle due soglie di tensione dipende dalla tecnologia utilizzata; ad esempio nella logica TTL la soglia inferiore è fissata a 0,8 volt e quella superiore a 2,2 volt; nella CMOS le soglie sono a circa un terzo e due terzi della tensione di alimentazione: se questa è a 5 volt, le soglie diventano 1,3 e e 3,7 volt[1].
Su maggiori distanze è necessario avere segnali più immuni ai disturbi ed in questi casi non è infrequente una rappresentazione a logica negativa; ad esempio nello standard seriale EIA RS-232, un uno logico viene codificato con una tensione di -12 volt ed uno zero con una tensione di 12 volt rispetto al riferimento di massa. Distanze ancora maggiori richiedono codifiche differenziali come la EIA RS-485 (correnti elettriche in una direzione per lo zero ed in direzione opposta per l'uno), oppure utilizzano transizioni di stato per rappresentare i valori logici, come nella codifica Manchester. In tutti questi casi la definizione di logica positiva o negativa sarebbe impropria.