# Open collector

Un open collector (collettore aperto), è un tipo di porta logica avente come uscita fisica il collettore del BJT costituente l'ultimo stadio del suo circuito.
Questo tipo di porta viene utilizzato quando si ha la necessità di pilotare dei dispositivi che richiedono una corrente maggiore e valori di tensione di alimentazione diversa rispetto a quella del dispositivo logico di pilotaggio.
In questo modo, il circuito finale può essere completato a piacimento dimensionando opportunamente la resistenza di collettore (esterna al chip) assegnando alla corrente il valore desiderato in funzione della tensione scelta.
I limiti di tensione e corrente nominali delle porte open-collector sono generalmente più alti di quelli delle porte normali, anche se esistono dei dispositivi che non permettono di lavorare con tensioni e correnti più elevate, un tipico esempio è costituito dal chip 7406, facente parte della serie 7400 in tecnologia TTL.

## Funzionamento

Nella figura sopra, la base del transistor è chiamata “IC Output”, cioè uscita del circuito integrato. Questa è un'uscita interna proveniente dal circuito logico interno. Dal punto di vista del transistor questo è l'ingresso che controlla la sua commutazione. L'uscita esterna viene presa sul collettore del transistor e quest'ultimo agisce come interfaccia tra l'IC interno e la circuiteria esterna.
L'uscita essenzialmente lavora o come un circuito aperto, cioè connesso a nulla, o come connesso a massa. Solitamente all'uscita si trova una resistenza di pull-up che fa salire la tensione d'uscita quando il transistor viene spento. Quando il transistor connesso a questa resistenza viene acceso, l'uscita va al valore 0, essendo connessa a massa. Le uscite dei circuiti open-collector sono molto utili nelle operazioni analogiche matematiche.
Un dispositivo three-state è differente da un open-collector poiché composto da transistor che funzionano da pozzi e da sorgenti di corrente in entrambi gli stati logici, oltre a un controllo che permette di spegnere entrambi i transistor e isolare l'uscita.

## Applicazioni dei dispositivi open-collector

Poiché le resistenze di pull-up non necessitano di connessione all'alimentazione interna, all'uscita può essere usata una qualunque tensione entro i limiti di sicurezza del dispositivo. I circuiti open-collector permettono pertanto di interfacciare famiglie di dispositivi che hanno differenti valori di tensione di funzionamento e possono sopportare tensioni superiori a quelle di alimentazione. Questi dispositivi sono comunemente usati per pilotare altri dispositivi come i tubi Nixie e il Display fluorescente a vuoto, che richiedono alte tensioni di alimentazione rispetto alla tensione nominale di 5 volt.
Un altro vantaggio è il fatto che le uscite di più dispositivi open-collector possono essere connesse a una singola linea elettrica. Se tutte le uscite connesse alla linea si trovano nello stato di alta impedenza (cioè tutti i transistor di uscita sono spenti), la resistenza esterna di pull-up mantiene la linea al livello logico alto (livello 1). Se anche solo una delle uscite si trova invece al livello logico basso (livello 0), la linea risulta dunque connessa a massa e nella resistenza di pull-up o nel carico scorre corrente.
Questo tipo di collegamento si presta a diversi utilizzi. I dispositivi open-collector sono, infatti, spesso utilizzati per collegare più dispositivi a un'unica linea di interrupt o a un bus condiviso, come quello I²C; in effetti, l'open-collector permette ad ogni singolo dispositivo connesso al bus condiviso di pilotare il bus stesso, senza rischiare che le uscite inattive degli altri dispositivi possano interferire con il segnale logico basso presentato dal dispositivo pilotante stesso. Se, in un caso del genere, non si utilizzassero dispositivi open-collector (che, normalmente, presentano un'uscita logica a livello logico alto), le uscite dei dispositivi in quel momento inattivi interferirebbero col segnale di uscita a livello basso del dispositivo pilotante cercando di mantenere il livello del bus alto, causando dunque uno stato logico finale imprevedibile.
Tramite la connessione delle uscite di più open-collector assieme, il nodo comune forma le cosiddette porte “AND cablato” (in logica positiva) o “OR cablato” (in logica negativa). Una porta AND cablata in logica positiva si comporta come la normale funzione booleana AND di due (o più) porte, pertanto l'uscita è allo stato logico 1 se e solo se tutti gli ingressi sono a livello logico 1; diversamente l'uscita è allo stato logico 0. Una porta OR cablata in logica negativa si comporta anch'essa come una normale OR in logica negativa: l'uscita è bassa se uno qualsiasi degli ingressi è basso.
I dispositivi SCSI-1 usano un open-collector per i segnali elettrici. SCSI-2 and SCSI-3 possono usare il EIA-485.
Un problema degli open-collector riguarda il consumo di energia, poiché la resistenza di pull-up dissipa potenza ogniqualvolta l'uscita si trova al livello logico basso; inoltre, anche nel caso in cui si trovino nello stato 'off', sono spesso caratterizzati da qualche nanoampere di corrente di dispersione (la quantità esatta varia in funzione della temperatura).

## MOSFET

La controparte MOSFET dell'open-collector è la connessione open-drain. Le uscite open-drain possono risultare utili, come l'open-collector, nelle implementazioni tramite elettronica analogica di operazioni matematiche. Un terminale di drain aperto viene connesso a massa quando un valore di tensione alto (livello 1) viene applicato al gate, presenta un'alta impedenza quando viene invece applicato al gate un basso valore di tensione (livello 0). L'alta impedenza rende l'uscita flottante (floating), ovvero a una tensione non definita (floating), quindi questo dispositivo necessita di una resistenza di pull-up esterna connessa all'alimentazione positiva (livello 1) per garantire il livello logico 1 all'uscita.
I dispositivi microelettronici che usano segnali a drain aperto, come i microcontrollori, possono presentare una resistenza “interna” di leggero pull-up (weak pull-up) per connettere il terminale in questione con l'alimentazione positiva, come la V$_{dd}$, del dispositivo. Questa resistenza di weak pull-up, dell'ordine dei 100 kΩ e fa in modo che il valore della tensione in uscita non sia flottante. Resistenze esterne di pull-up, dell'ordine di 3 kΩ, sono in grado di ridurre il tempo di salita di un segnale, come nel caso di I²C, e di minimizzare il rumore, come sui sistemi dei reset degli ingressi. In molti dispositivi le resistenze di pull-up interne possono essere disabilitate qualora si usassero resistenze esterne o semplicemente non fossero necessarie.