Circuti AND, OR, NOT Porte logiche AND

Documenti analoghi
Architettura degli Elaboratori

Multiplexer. Multiplexer 2 a 1 (a 1 bit) e sua implementazione. Multiplexer 2 a 1 (a 32 bit) e sua implementazione

Architettura degli Elaboratori A Modulo 2

Algebra e circuiti elettronici

circuiti combinatori: ALU

Addizionatori: metodo Carry-Lookahead. Costruzione di circuiti combinatori. Standard IEEE754

Arithmetic Logic Unit

Circuiti combinatori ALU

Costruzione di. circuiti combinatori

Architettura degli Elaboratori e Laboratorio. Matteo Manzali Università degli Studi di Ferrara Anno Accademico

Esercitazioni su circuiti combinatori

circuiti combinatori Esercitazioni su Algebra Booleana: funzioni logiche di base Algebra booleana: equazioni

Circuiti integrati. Circuiti combinatori ALU. Esempio di chip SSI. Circuiti combinatori

Porte logiche di base. Cenni circuiti, reti combinatorie, reti sequenziali

Arch. Elab. - S. Orlando 2. circuiti comunemente incontrati nel progetto di un computer. Con tecnologia MSI, gli IC contenevano alcuni componenti base

Il Livello Logico-Digitale. Blocchi funzionali combinatori

Circuiti e reti combinatorie. Appendice A (libro italiano) + dispense

Reti combinatorie. Reti combinatorie (segue)

Reti combinatorie (segue) Reti combinatorie. Lezione 2. Architettura degli Elaboratori A. Sperduti 1

senza stato una ed una sola

Architettura degli Elaboratori. Davide Bertozzi Dipartimento di Ingegneria Università of Ferrara. Componenti Combinatori Standard

$GGL]LRQDWRULPHWRGR &DUU\/RRNDKHDG

Logica binaria. Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna

Componenti notevoli combinatori

Esercitazioni di Reti Logiche

Università degli Studi di Cassino

Tecniche di semplificazione. Circuiti digitali notevoli

Calcolatori Elettronici

una rete combinatoria è un circuito logico avente n ingressi (x 1

Il livello logico digitale

Forme canoniche, circuiti notevoli, criteri di ottimizzazione

Logica binaria. Cap. 1.1 e 2.1 dispensa

Informatica e Bioinformatica: Circuiti

Reti logiche: analisi, sintesi e minimizzazione. Giovedì 9 ottobre 2014

Circuiti combinatori notevoli

La seconda forma canonica Circuiti notevoli. Sommario

Reti logiche: analisi, sintesi e minimizzazione Esercitazione. Venerdì 9 ottobre 2015

Esercitazioni di Reti Logiche. Lezione 4

Circuiti combinatori notevoli

I circuiti digitali: dalle funzioni logiche ai circuiti

LEZIONE N 91. Introduzione agli elementi architetturali principali. Roberto Giorgi, Universita di Siena, C116L91, Slide 1

Reti Logiche Combinatorie

Unità Aritmetico-Logica

Tutorato architettura degli elaboratori modulo I (lezione 3)

Fondamenti di Informatica B

Corso di Architettura degli Elaboratori. Porte logiche (I) Architetture degli Elaboratori. Porte logiche (III) Porte logiche (II)

Algebra di Boole e reti logiche. 6 ottobre 2017

Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 19 Febbraio Attenzione:

Dalla tabella alla funzione canonica

Prefazione del Prof. Filippo Sorbello... VII. Prefazione del Prof. Mauro Olivieri... Prefazione degli autori...

LSS : Reti Logiche: circuiti combinatori

Moduli combinatori Barbara Masucci

Esercizio , (+61,81) CA2: , = , (-61,81)

Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 20 Giugno Attenzione:

Reti Logiche Combinatorie

Moduli Combinatori. Moduli Combinatori. Corso di Architetture degli Elaboratori

CIRCUITI DIGITALI. La grandezza fisica utilizzata nella maggior parte dei circuiti digitali è la differenza di potenziale (tensione).

Calcolatori Elettronici

Minimizzazione di reti/funzioni logiche con le Mappe di Karnaugh. 12 ottobre 2015

Il Processore: l Unità di Controllo della ALU Barbara Masucci

Moltiplicazione e ALU

Reti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Circuiti Addizionatori

Introduzione ed elementi dell'algebra di Boole

Architetture 1 AA Canale EO Andrea Sterbini 26 Gennaio Parte 1

Calcolatori Elettronici A a.a. 2008/2009

Richiami di Algebra di Commutazione

Un quadro della situazione

Livello logico digitale

Porte logiche di base. Cenni circuiti, reti combinatorie, reti sequenziali

Logica Digitale. Fondamenti di Informatica - Prof. Gregorio Cosentino

Porte logiche. Porte logiche. Corso di Architettura degli Elaboratori. Algebra Booleana

Esercizio 1. Sintesi ottima SP e NAND

anno scolastico 2009 / 2010 ELETTRONICA per Elettrotecnica ed Automazione

Circuiti combinatori

Algebra di Boole. Tavole di verità. Fondamenti di Informatica Algebra di Boole. Si basa su tre operazioni logiche: AND (*) OR (+) NOT (!

Implementazione di circuiti

Fondamenti dell Informatica Algebra di Boole. Prof.ssa Enrica Gentile

Mux X I 7..0 O 3 S 2..0 X 1 X 2

Aritmetica in virgola mobile Algebra di Boole e reti logiche Esercizi. Mercoledì 8 ottobre 2014

Algebra Booleana. 13. Rif:

Rappresentazione dell informazione

Virtual CPU (Eniac): parte 2

La ALU. Prof. Alberto Borghese Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Tutorato di Calcolatori Elettronici Battista Biggio - Sebastiano Pomata. Corso di Laurea in Ingegneria Elettronica

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica Operazioni logiche

Parte IV Indice. Algebra booleana. Esercizi

Algebra di Boole. Modulo 2. Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Elettronica (EOLAB)

ESERCITAZIONE 4.5. Approfondimento Circuiti Logici e Sequenziali

Algebra di Boole X Y Z V. Algebra di Boole

Y = A + B e si legge A or B.

Arithmetic and Logic Unit e moltiplicatore

Circuiti Combinatori

Esercizi assortiti di Architetture

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio

Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati

Circuiti combinatori

Sommatori e Moltiplicatori. Sommario

Circuiti Logici. Pagina web del corso:

Transcript:

Circuti AND, OR, NOT Porte logiche AND OR NOT A B C Esempio E = ~((AB) + (~BC)) E

NAND e NOR NAND (AND con uscita negata): ~(A B) NOR (OR con uscita negata): ~(A+B) Si può dimostrare che le operazioni NAND o NOR (e le corrispondenti porte) sono sufficienti per implementare qualsiasi funzione logica

Sintesi di circuiti combinatori Ogni funzione logica può essere rappresentata come equazione logica o come tabella di verità Data una tabella di verità o una equazione logica, come si sintetizza il circuito combinatorio che la implementa? Ogni equazione logica può essere scritta in forma canonica tramite l uso degli operatori AND, OR e NOT Forma canonica SP (somma di prodotti) Primo livello AND, secondo livello OR Forma canonica PS (prodotto di somme) Primo livello OR, secondo livello AND Esistono tecniche per minimizzare il numero di porte: Mappe di Karnaugh Algoritmo di Quine McCluskey

Esercizio Dati tre ingressi A, B, C realizzare un circuito che fornisca in uscita tre segnali: D è vera se almeno uno degli ingressi è vero E è vera se esattamente due input sono veri F è vera se tutti e tre gli input sono veri Intuitivamente le equazioni sono: D = A + B + C F = ABC E = ( AB + BC + AC) (ABC)

Esercizio Dati tre ingressi A, B, C realizzare un circuito che fornisca in uscita tre segnali: D è vera se almeno uno degli ingressi è vero E è vera se esattamente due input sono veri F è vera se tutti e tre gli input sono veri A B C D E F 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 1 1 0 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1 1 0 1

Esercizio Dati tre ingressi A, B, C realizzare un circuito che fornisca in uscita tre segnali: D è vera se almeno uno degli ingressi è vero E è vera se esattamente due input sono veri F è vera se tutti e tre gli input sono veri A B C D E F 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 1 1 0 Prodotto di somme D = (A + B + C) 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1 1 0 1

Esercizio Dati tre ingressi A, B, C realizzare un circuito che fornisca in uscita tre segnali: D è vera se almeno uno degli ingressi è vero E è vera se esattamente due input sono veri F è vera se tutti e tre gli input sono veri A B C D E F 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 1 1 0 Prodotto di somme E = (A+B+C) (A+B+ C) (A+ B+C) ( A+B+C) ( A+ B+ C) 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1 1 0 1

Esercizio Dati tre ingressi A, B, C realizzare un circuito che fornisca in uscita tre segnali: D è vera se almeno uno degli ingressi è vero E è vera se esattamente due input sono veri F è vera se tutti e tre gli input sono veri A B C D E F 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 1 1 0 1 0 0 1 0 0 Prodotto di somme F = (A+B+C) (A+B+ C) (A+ B+C) (A+ B+ C)( A+B+C) ( A+B+ C)( A+ B+C) 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1 1 0 1

Esercizio Dati tre ingressi A, B, C realizzare un circuito che fornisca in uscita tre segnali: D è vera se almeno uno degli ingressi è vero E è vera se esattamente due input sono veri F è vera se tutti e tre gli input sono veri A B C D E F 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 1 1 0 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 1 0 Somma di prodotti D = ( A BC)+( AB C)+( ABC)+ (A B C)+(A BC)+(AB C)+(ABC) E = ( ABC)+(A BC)+(AB C) F = ABC 1 1 1 1 0 1

Esercizio E = ( ABC)+(A BC)+(AB C) A B C E

PLA La rappresentazione SP corrisponde a una comune implementazione chiamata Array a Logica Programmabile Ha 2 livelli di logica un array di porte AND (input termini prodotto) un array di porte OR (termini prodotto output) Esempio:

Decoder Circuito combinatorio con n input e 2 n output Traduce gli n bit di input nell equivalente valore binario, e abilita a 1 l uscita corrispondente, mentre le altre uscite sono disabilitate a 0 Esiste anche l encoder, che esegue l operazione inversa Esempio di un decoder a 3 bit:

Multiplexer Due insiemi di input n input dati log 2 n input selettori L output corrisponde al valore del dato di input selezionato dai valori dei selettori di input Multiplexer 2 a 1 (a 1 bit) e sua implementazione Multiplexer 2 a 1 (a 32 bit) e sua implementazione

Arithmetic Logic Unit Circuito combinatorio all interno del processore per l esecuzione di istruzioni macchina di tipo aritmetico/ logiche (e di confronto) Quindi l ALU deve essere in grado di eseguire: somme (add) sottrazioni (sub) istruzioni di confronto (slt, beq, bne) funzioni logiche (and, or) Vediamo come è costruita una semplice ALU

Addizionatore L ALU deve includere un addizionatore per realizzare le somme di numeri interi in complemento a 2 Potremmo costruire un unico circuito combinatorio che implementa un addizionatore a n bit dati 2n input: A n-1 A 0 B n-1 B 0 n+1 diverse funzioni di output: Rip C n-1 C 0 solo due livelli di logica, ma con porte AND e OR con molti input fan-in delle porte molto elevato (non ammissibile) Soluzione di compromesso, basata su una serie di 1-bit adder collegati in sequenza il segnale deve attraversare più livelli di logica porte con fan-in limitato (ammissibile) circuito che usa lo stesso metodo usato dall algoritmo carta e penna a cui siamo abituati

Addizionatore a singolo bit A B Rip Sum Rip_out 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Rip Rip AB 0 1 AB 0 00 01 11 10 0 1 0 1 1 0 1 0 Sum 00 01 11 10 0 0 1 0 1 0 1 1 1 Sum = ~A ~B Rip + ~A B ~Rip + A B Rip + A ~B ~Rip Rip_out Rip_out = Rip B + A B + Rip A

Porta XOR La funzione Sum non può essere semplificata ben 4 porte AND La costruzione di un addizionassero a 1 bit diventa più semplice impiegando porte XOR funzione logica che vale 0 (F) se entrambi gli ingressi sono uguali, ovvero entrambi 0 (F) o entrambi 1 (T) esempio di or esclusivo (XOR) nel linguaggio comune: o rimango a casa oppure vado al cinema A B XOR 0 0 0 0 1 1 1 0 1 1 1 0

Addizionatore a 1 bit e XOR Visto che la somma tra una coppia di bit A e B si esprime con A xor B abbiamo: Sum = A xor B xor Rip Rip_out = A B + (A xor B) Rip A B Rip Sum Rip_out 0 0 0 0 0 0 0 1 1 0 A B Rip Sum 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Rip_out

1-bit ALU 1-bit ALU usata per eseguire le istruzioni macchina seguenti: and $2, $3, $4 or $2, $3, $4 CarryIn Operation add $2, $3, $4 Operation è un segnale di controllo a 2 bit usato per selezionare quale ingresso del multiplexer deve uscire a 0 1 Result determina il tipo di operazione che l ALU deve eseguire l ALU è la tipica componente che fa parte del Datapath (Parte Operativa) del processore La Parte Controllo comanda l esecuzione delle varie istruzioni settando opportunamente i segnali di controllo dell ALU (e delle altre componenti della Parte operativa) b CarryOut 2

32-bit ALU catena di 1-bit ALU con propagazione del Carry segnali di controllo per determinare l operazione che l ALU deve eseguire Operation: propagato a tutte le 1-bit ALU

Sottrazione La 1-bit ALU precedente può essere resa più complessa per poter eseguire: sub $2, $3, $4 Operazione di sottrazione: trasformata in: $2 = $3 - $4 $2 = $3 + (-$4) (-$4) significa che bisogna prima determinare l opposto (il complemento a 2) del numero signed contenuto in $4 il complemento a 2 si ottiene 1. effettuando l inversione (complemento a 1 bit-a-bit) 2. sommando 1 l ALU deve quindi possedere i circuiti predisposti per invertire il secondo operando e sommare 1 per sommare 1, basta porre ad 1 il carry-in dell ALU Binvert Operation Istruzione 0 00 and 0 01 or 0 10 sum 1 11 sub

Componente ALU Simbolo usato per rappresentare la componente ALU nel progetto della CPU. ALU operation comprende i segnali di controllo Bnegate e Operation.