Reti Logiche Combinatorie

Documenti analoghi
Esercitazioni di Reti Logiche. Lezione 4

Esercitazioni di Reti Logiche

senza stato una ed una sola

Reti combinatorie. Reti combinatorie (segue)

Reti Logiche Combinatorie

Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Circuiti Logici

Circuiti Combinatori

Dalla tabella alla funzione canonica

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

Il livello logico digitale

LOGICA SEQUENZIALE. Un blocco di logica puramente combinatoria è un. blocco con N variabili di ingresso e M variabili di uscita

Circuiti combinatori

I circuiti digitali: dalle funzioni logiche ai circuiti

PSPICE simulazione codificatori e decodificatori, MUX - DEMUX

Moduli Combinatori. Moduli Combinatori. Corso di Architetture degli Elaboratori

anno scolastico 2009 / 2010 ELETTRONICA per Elettrotecnica ed Automazione

Esercitazioni di Reti Logiche. Lezione 3

Costruzione di. circuiti combinatori

Elettronica Digitale. 1. Sistema binario 2. Rappresentazione di numeri 3. Algebra Booleana 4. Assiomi A. Booleana 5. Porte Logiche OR AND NOT

I Indice. Prefazione. Capitolo 1 Introduzione 1

Macchine combinatorie: encoder/decoder e multiplexer/demultiplexer

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

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

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1.

Richiami di Algebra di Commutazione

Reti logiche: introduzione

Esercitazioni di Reti Logiche. Algebra Booleana e Porte Logiche

Algebra di Boole. Fondamenti di Informatica per Meccanici Energetici - Biomedici 1. Politecnico di Torino Ottobre Mr. Boole. Variabile booleana

Lezione 7 Sommatori e Moltiplicatori

I circuiti digitali: dalle funzioni logiche ai circuiti

Sistemi Combinatori & Mappe di Karnaugh

Esercizi svolti Y Z. 1. Date le seguenti funzioni logiche ricavare le corrispondenti reti logiche realizzate con porte elementari AND, OR, NOT.

Livello logico digitale

Algebra di Boole X Y Z V. Algebra di Boole

COMPITO A. Esercizio 1 (17 punti)

Reti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Reti Sequenziali

Lezione 7 ALU: Moltiplicazione e divisione

ALGEBRA DI BOOLE. In caso di errori di battitura o se si volesse contribuire a migliorare la seguente guida contattare:

Reti Combinatorie: sintesi

Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA

COMPITO A Esercizio 1 (13 punti) Dato il seguente automa:

PSPICE simulazione di circuiti digitali Flip Flop M/S, Moltiplicatore parallelo, Memoria SRAM, sommatore, comparatore

Circuiti di commutazione, codifica e decodifica

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

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

Funzioni booleane. Vitoantonio Bevilacqua.

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

Algebra di Boole Algebra di Boole

Contatore avanti-indietro Modulo 4

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

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

Architettura degli Elaboratori

Cenni alle reti logiche. Luigi Palopoli

Esercitazioni di Reti Logiche. Lezione 5

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

Fondamenti di Informatica

Moduli combinatori Barbara Masucci

ESPERIMENTAZIONI DI FISICA 3. Traccia delle lezioni di Elettronica digitale M. De Vincenzi A.A:

Macchine combinatorie

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico

I circuiti elementari

Un quadro della situazione

Arithmetic and Logic Unit e moltiplicatore

I.3 Porte Logiche. Elisabetta Ronchieri. Ottobre 13, Università di Ferrara Dipartimento di Economia e Management. Insegnamento di Informatica

I circuiti digitali: dalle funzioni logiche ai circuiti

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio

Calcolatori Elettronici Gli Automi

Minimizzazione a più livelli di reti combinatorie Cristina Silvano

Procedimento di sintesi. Dalla tavola della verità si ricavano tante funzioni di commutazione quante sono le variabili di uscita

Sistemi digitali. Sistema digitale

Il livello logico digitale

Aritmetica binaria e circuiti aritmetici

Architetture aritmetiche

LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n 2.

Calcolatori Elettronici

Calcolatori Elettronici Lezione 4 Reti Sequenziali Asincrone

Calcolo numerico e programmazione Elementi di logica

Circuiti digitali. Operazioni Logiche: Algebra di Boole. Esempio di circuito. Porte Logiche. Fondamenti di Informatica A Ingegneria Gestionale

Fondamenti di Informatica B

I circuiti digitali: dalle funzioni logiche ai circuiti (le SOP)

Decodificatore (decoder) 1 su m

LSS: Reti Logiche. Piero Vicini A.A

PIANO DI LAVORO DEI DOCENTI

Calcolatori Elettronici Lezione 2 Algebra delle reti Logiche

Sintesi Sequenziale Sincrona Sintesi Comportamentale di reti Sequenziali Sincrone

Corso di Calcolatori Elettronici I A.A Algebra di Boole Lezione 4

Esercitazioni di Reti Logiche

ESAME di PROGETTAZIONE di SISTEMI DIGITALI. Nome e Cognome

Introduzione ai microcontrollori

Circuiti logici. zi=fi(x1..xn) (i=1..m)

Algebra di Boole Elementi di Informatica - Algebra di Boole 1 A. Valenzano

17/10/16. Espressioni Booleane

Logica Digitale. Fondamenti di Informatica - Prof. Gregorio Cosentino

$GGL]LRQDWRULPHWRGR &DUU\/RRNDKHDG

Marta Capiluppi Dipartimento di Informatica Università di Verona

LE PORTE LOGICHE. Ingresso B Ingresso A Uscita OUT

associate ai corrispondenti valori assunti dall uscita.

Architettura dei Calcolatori Blocchi funzionali logici combinatori

Esercitazione Informatica I (Parte 1) AA Nicola Paoletti

Le Macchine digitali sono Sistemi artificiali che elaborano informazioni

Transcript:

Reti Logiche Combinatorie Modulo 4 Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Microelettronica e Bioingegneria (EOLAB)

Logica combinatoria Un blocco di logica puramente combinatoria è un blocco con N variabili di ingresso e M variabili di uscita che sono funzione (booleana) degli ingressi presenti in un certo istante. Ad ogni istante le uscite dipendono solo dagli ingressi in quell istante e NON dalla storia passata del circuito x 1 x 2 z 1 z 2 x N z M

Logica sequenziale Un blocco di logica sequenziale è un blocco logico le cui uscite dipendono non solo dagli ingressi attuali ma anche da tutta la storia passata degli ingressi (la sequenza di ingressi) Un modello che descrive il loro comportamento è rappresentato in Figura, dove [z M,,z 0 ] rappresentano le uscite e [y K,..,y 0 ] le cosiddette variabili di stato (vedremo meglio in seguito parlando di reti logiche sequenziali) [x N,,x 0 ] [z M,,z 0 ] [y K,,y 0 ]

Combinatorio e sequenziale Il migliore esempio per distinguere un comportamento combinatorio da uno sequenziale è quello del telecomando: Quando si preme un tasto corrispondente ad un canale (1, 2, 3, etc.) il telecomando ha un comportamento combinatorio, perché sintonizza il televisore sul canale desiderato, a prescindere da quello che si sta guardando il quel momento Quando invece si preme il tasto avanti o indietro si ha un comportamento sequenziale perché il nuovo canale sintonizzato dipende da quello che si sta guardando attualmente (se sto guardando Rai2 vedrò Rai3 e così via)

Reti combinatorie: analisi La procedura di analisi di una generica rete combinatoria descritta in termini grafici per mezzo di un diagramma è molto semplice Si etichettano tutte le uscite di una porta logica che sono funzione dei soli ingressi con un nome arbitrario Si etichettano con un nome arbitrario tutte le uscite di una porta logica che siano funzione degli ingressi e dei segnali etichettati precedentemente Si ripete il processo fino ad ottenere le uscite finali della rete Si sostituisce ad ogni variabile la sua espressione logica costruendo così l espressione logica completa

Analisi: esempio T2 = ABC T1 = A+B+C F1 = T2 + T3 T3 = T1 F2 F2=AB+AC+BC

Analisi: tabella di verità La procedura per ricavare la tabella di verità è altrettanto semplice: Si determina il numero n di ingressi della rete e si crea una tabella con 2 n righe Si etichettano le uscite delle singole porte con nomi arbitrari Si determina la tabella di verità di quelle porte che sono funzione dei soli ingressi Si procede trovando la tabella di verità per quelle uscite che sono funzione degli ingressi e di segnali definiti precedentemente

Reti combinatorie : sintesi La procedura di sintesi fa uso degli strumenti dell algebra di Boole Dalle specifiche del circuito si determina il numero di ingressi ed uscite Per ogni uscita si ricavano le tabelle di verità Si minimizza l implementazione di ciascuna funzione (per mezzo di mappe di Karnaugh o metodi più sofisticati) Si disegna il diagramma circuitale con le porte logiche e se ne verifica il funzionamento

Reti combinatorie Vedremo adesso una panoramica dei principali blocchi logici combinatori utilizzati come blocchi base per l implementazione di sistemi digitali complessi Per alcuni di questi circuiti seguiremo tutta la fase di sintesi, come esempio, altri li analizzeremo solamente.

Addizionatore La specifica di un circuito addizionatore è puramente discorsiva: si tratta di un circuito in grado di prendere in ingresso due numeri binari a N bit (A e B) e generare in uscita la somma su N bit (S) ed un bit di riporto A[3:0] A 0 B 0 A 1 B 1 A 2 B 2 HA FA FA S 0 C 0 S 1 C 1 S 2 C 2 B[3:0] + S[4:0] A 3 B 3 FA S 3 C 3 = S 4

Addizionatore: sintesi Gli ingressi sono in totale 2N (N bit di A e N di B) Le uscite sono N+1 (N bit per la somma S più un bit di riporto Cout) Piuttosto che implementare direttamente tutta la rete se ne può sfruttare la natura gerarchica esplicitata nello schematico del lucido precedente Si possono cioè sviluppare due blocchi HA: Half-adder, somma due bit e genera la somma ed il riporto FA: Full-adder, somma tre bit e ne genera somma e riporto L addizionatore completo è poi ottenuto dall opportuna interconnessione di blocchi HA e FA

HA: sintesi B 0 1 A 0 1 1 1 S=A B+AB A B S C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 B 0 1 A 0 1 1 C=AB Le due mappe non sono minimizzabili ulteriormente

Implementazione Questa funzione è l operatore XOR

FA: sintesi A B Cin S C 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 S=AB Cin +A BCin +A B Cin+ABCin AB Cin 00 01 11 10 0 1 1 1 1 1 C=AB+BCin+ACin AB Cin 00 01 11 10 0 1 1 1 1 1

FA: sintesi L espressione di S non è ulteriormente minimizzabile ma può essere ulteriormente manipolata: (A B) S = Cin (A B+AB ) + Cin (AB+A B ) (A B) Per DeMorgan: (A B+AB ) = ((A B) (AB ) ) = = (A+B ) (A +B) = AA +AB+A B +B B = = AB+A B S = (A B) Cin

Implementazione (1) Implementazione diretta con porte AND e OR

Implementazione (2) HA HA Implementazione con due HA ed una porta OR

Sommatore / sottrattore Avendo un sommatore fatto di soli FA si può implementare facilmente un circuito sommatore/sottrattore ricordando che per sottrarre due numeri basta sommare il primo all opposto del secondo In complemento a 2, per generare l opposto di un numero basta complementare tutti i bit e sommare 1 Usando un sommatore fatto di soli full-adder per sommare 1 basta portare ad 1 il carry in ingresso del primo FA

Implementazione M=0, il circuito è un semplice sommatore M=1, il circuito è un sottrattore (le XOR complementano i bit in ingresso e M entra nel carry)

Moltiplicatore binario Circuito per la moltiplicazione di due numeri a 2 bit

Decoder Un decoder è un circuito con N segnali di ingresso e M segnali di uscita A seconda della combinazione in ingresso viene selezionata una delle linee d uscita (la combinazione di ingresso viene decodificata) Il decoder più importante è quello binario che ha in ingresso N bit ed in uscita 2 N segnali A seconda della combinazione binaria in ingresso viene selezionata una delle uscite (se in ingresso ho il codice 0 seleziono l uscita 0, se ho il codice 1 l uscita 1 e così via)

Implementazione Decoder con abilitazione (E). Le mappe non sono evidentemente minimizzabile perché per ogni codice di ingresso una ed una sola linea d uscita va alta

Decoder complessi All aumentare del numero di ingressi posso realizzare il decoder utilizzando decoder più piccoli in parallelo

Logica combinatoria con decoder Un decoder può essere usato per implementare qualsiasi funzione logica. A seconda della combinazione d ingresso una sola uscita è alta, si mettono in OR le uscite che corrispondono alle righe per cui la funzione deve essere 1

Encoder Un encoder svolge l operazione inversa, dati N ingressi, genera M uscite per identificare quale degli ingressi era alto tramite un opportuno codice Come sempre, il codice binario è il più semplice, avrò allora N ingressi e log 2 N uscite che codificano quale linea d ingresso è risultata alta Siccome più ingressi possono essere alti contemporaneamente, si stabilisce un meccanismo di priorità in base al quale se più ingressi sono alti si mette in uscita il codice che corrisponde all ingresso a massima priorità

Implementazione

Implementazione

Multiplexer Un multiplexer è un circuito che, in base ad un codice di ingresso, fa passare in uscita il valore di uno di N segnali in ingresso Se N sono gli ingressi, il codice di selezione deve essere composto da log 2 N bit

Implementazione

Logica combinatoria con multiplexer Anche i multiplexer possono essere dei blocchi base per implementare una qualsiasi funzione logica