Come implementare un half adder

Tramite: O2O 30/01/2018
Difficoltà:media
17

Introduzione

Si sente sempre più parlare di bit e di codice binario, questo perché l'elettronica si sta evolvendo e ormai la maggior parte dei dispositivi elettronici è digitale, ovvero tratta sequenze di bit.
Il caso più lampante è il computer, che possiede al suo interno milioni di dispositivi detti porte logiche che eseguono operazioni con i bit. Tra le operazioni elementari che un computer è in grado di fare c'è la somma, questa viene fatta nell'ALU (Aritmethic Logic Unit) la quale è a sua volta formata da diversi dispositivi. Tra questi c'è l'half adder, che è il dispositivo che si occupa della somma.
Ma come lavora questo dispositivo? Da cosa è costituito? Come si implementa? Cerchiamo allora di dare una risposta a queste domande. Vediamo nel dettaglio come implementare un half adder.

27

Occorrente

  • Tool per la progettazione
37

Conoscere half adder e full adder

Generalmente quando si parla di half adder non si può non parlare anche di full adder. Sono entrambi dei sommatori con la differenza che il primo presenta due ingressi (i bit da sommare) mentre il secondo ne presenta tre (oltre ai due bit da sommare c'è anche un eventuale riporto scaturito da somme precedenti).
Il numero di ingressi determina il numero di porte logiche da utilizzare. Inoltre il numero di porte logiche è determinato anche dalla tecnologia che si vuole utilizzare per l'implementazione, ovvero dai tipo di transistor utilizzati per la realizzazione delle porte logiche.
Fondamentalmente esistono due tipi di tecnologia (dette famiglie logiche), quella dei transistor bjt (di cui fanno parte le porte TTL) e quella dei CMOS.
Delle due, quella che ricopre il 99% del mercato è la CMOS, in quanto presenta prestazioni nettamente migliori dell'altra.

47

Conoscere la tecnologia da adottare

La logica CMOS (Complementary Metal-Oxide-Semiconductor) utilizza dei MOSFET, questi presentano delle dimensioni che stanno andando via via diminuendo. Quando si parla di dimensioni per questi dispositivi, si fa riferimento alla lunghezza di canale (ad oggi siamo arrivati ai 90nm, ma si punta a ridurla ulteriormente nei prossimi anni). La maggior parte degli half adder è costituita con tecnologia CMOS da 90nm.
Tali MOSFET vanno a costituire le porte logiche presenti nell'half adder. Per un half adder in particolare le porte utilizzate sono due: una XOR e una AND. In realtà una vera realizzazione tramite tecnologia CMOS richiede altre due porte logiche, in particolare due NOT, in quanto è possibile creare solo porte negate. Si creeranno quindi una XNOR e una NAND, ognuna delle quali sarà poi seguita da una porta NOT che negherà il suo ingresso (in un caso l'uscita della XNOR e nell'altro l'uscita della NAND) restituendo una XOR e una AND.

Continua la lettura
57

Implementare il circuito

Si otterranno quindi due uscite, una per ogni porta NOT. In particolare l'uscita XOR darà il risultato della somma S, mentre l'uscita AND fornirà un eventuale riporto C (Carry).
Bisogna inoltre ricordare che un tipo di half adder così implementato è un sommatore ad un bit, ovvero riesce ad eseguire la somma di un singolo bit per volta, e non di un'intera sequenza.
Quando si realizzano circuiti digitali di tale importanza si usa un'implementazione puramente integrata (quindi non con componenti discreti). Si esegue quindi un layout, ovvero un progetto dell'half adder. Esistono diversi tool molto utili che permettono di scegliere la tecnologia e l'orientazione dei componenti nello spazio. Per eseguire alla perfezione questi passi occorre tuttavia una profonda conoscenza delle tecnologie e dei processi di fabbricazione dei dispositivi. A tal fine bisogna rispettare delle regole (dette design rules), tali regole sono solitamente verificabili tramite il tool stesso con l'apposito comando DRC. Un esempio di layout di half adder è riportato al seguente link.

67

Guarda il video

77

Consigli

Non dimenticare mai:
  • Un tool utile per il layout è Microwind

Potrebbe interessarti anche

Naviga con la tastiera

Segnala contenuti non appropriati

Tipo di contenuto
Devi scegliere almeno una delle opzioni
Descrivi il problema
Devi inserire una descrizione del problema
Si è verificato un errore nel sistema. Riprova più tardi.
Segnala il video che ritieni inappropriato
Devi selezionare il video che desideri segnalare
Verifica la tua identità
Devi verificare la tua identità
chiudi
Grazie per averci aiutato a migliorare la qualità dei nostri contenuti

Guide simili

Università e Master

Come implementare un automa di Mealy

Per i meno esperti è doveroso fornire una spiegazione su cosa sia l'automa, o macchina, di Mealy.Questo è un particolare modello in cui ogni spostamento del dato (E quindi in sostanza il dato in uscita da una generica operazione) dipende da una doppia...
Università e Master

Come implementare la risoluzione di sistemi di equazioni in Matlab

Si inizia a sentir parlare di equazioni già a partire dalla scuola secondaria di primo grado, durante le lezioni di matematica e di sistemi. Come si può immaginare, saper risolvere un'equazione è fondamentale per risolvere sistemi. Infatti un sistema...
Università e Master

Come minimizzare un circuito con le mappe di karnaugh

Ormai siamo nell'era del digitale e molte delle moderne tecnologie sono basate su componenti che lavorano in modo digitale. Il digitale si differenzia dall'analogico perché qualsiasi grandezza può assumere solamente due valori, HIGH e LOW, 1 e 0. Ciò...
Università e Master

Come calcolare l'intervallo di confidenza di una media

In ambito statistico, al fine di stimare un parametro, non basta solo individuare un singolo valore, ma risulta necessario accompagnare la stima di un parametro con un intervallo di valori per quel determinato parametro. Tale considerazione, prende il...
Università e Master

Come memorizzare una lezione scolastica

A volte capita di dover affrontare un esame oppure una qualsiasi prova e non si riesce a trovare la giusta concentrazione. Questa situazione comporta difficoltà nel memorizzare tutto quello che si legge. Ricordarsi le informazioni è strettamente legato...
Università e Master

Statistica: come standardizzare una distribuzione normale

Nella teoria delle probabilità, la distribuzione normale è una distribuzione di probabilità continue, ovvero una funzione che indica la probabilità che un evento possa accadere tra due limiti reali o numeri reali, man mano la curva si avvicina a zero...
Università e Master

Cosa è l'effetto Hall

L'effetto Hall prende il nome dal fisico statunitense Edwin Hall, che nel 1879 scoprì ed interpretò il fenomeno galvano-magnetico. Grazie a questa proprietà si riesce a determinare il segno dei portatori di carica e la loro concentrazione in un materiale...
Università e Master

Il teorema di Böhm-Jacopini

I sistemi di programmazione sono numerosi e, oltre ad aggiornarsi mese per mese, cambiano e spesso è necessario imparare a dialogare con più software, molto diversi fra loro. All'inizio dell'era informatica, però, questo campo era una landa libera dove...