architettura degli elaboratori 1 -...

43
25 marzo 2003 1 Internal use, DO NOT reproduce Circuiti digitali 1 Circuiti digitali 1 Architettura degli Elaboratori 1 Architettura degli Elaboratori 1 A.A. 2002 A.A. 2002 - - 03 03 © Roberto Bisiani, 2000, 2001, 2002, Fabio Marchese 2003

Upload: buianh

Post on 18-Feb-2019

217 views

Category:

Documents


0 download

TRANSCRIPT

25 marzo 2003

1

Internal use, DO NOT reproduce

Circuiti digitali 1Circuiti digitali 1

Architettura degli Elaboratori 1Architettura degli Elaboratori 1A.A. 2002A.A. 2002--0303

© Roberto Bisiani, 2000, 2001, 2002, Fabio Marchese 2003

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

2

Internal use, DO NOT reproduce

Argomenti trattati in...Argomenti trattati in...Queste trasparenzeQueste trasparenze

Patterson & HennessyPatterson & HennessyAppendice B (senza sezione su PLA)Appendice B (senza sezione su PLA)Capitolo 1, parte del 4Capitolo 1, parte del 4

Tanenbaum Cap. 3, sezioni:Tanenbaum Cap. 3, sezioni:•• 3.1 tutto3.1 tutto•• 3.2.1, 3.2.2 (PLA no), 3.2.3, 3.2.43.2.1, 3.2.2 (PLA no), 3.2.3, 3.2.4•• 3.3.1 (3.3.1 (latchlatch D no), 3.3.2 , 3.3.3 D no), 3.3.2 , 3.3.3 •• 3.3.4, 3.3.5, 3.3.63.3.4, 3.3.5, 3.3.6•• 3.4.1, 3.4.2 (non 3.4.1, 3.4.2 (non wiredwired--oror), 3.4.3), 3.4.3•• 3.6.1, 3.6.2 (fino all’arbitraggio escluso), 3.6.33.6.1, 3.6.2 (fino all’arbitraggio escluso), 3.6.3•• 3.7.23.7.2

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

3

Internal use, DO NOT reproduce

Scopi e modiScopi e modi

Durata:Durata:Circa 1 settimana Circa 1 settimana

Goal:Goal:sapere il MINIMO necessario per poter comprendere sapere il MINIMO necessario per poter comprendere il funzionamento di un calcolatore al livello il funzionamento di un calcolatore al livello architetturale (quello architetturale (quello assemblerassembler, per intenderci), per intenderci)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

4

Internal use, DO NOT reproduce

I calcolatori funzionano con I calcolatori funzionano con circuiti:circuiti:

basati su una semplice logica basati su una semplice logica

ma ...ma ...

implementabili con tecnologie molto implementabili con tecnologie molto diversediverse

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

5

Internal use, DO NOT reproduce

Funzioni logicheFunzioni logicheSono relazioni tra variabili di ingresso e di uscitaSono relazioni tra variabili di ingresso e di uscitaEs.: funzione che segnala se l’ascensore e’ Es.: funzione che segnala se l’ascensore e’ disponibile, disponibile, cioecioe’ se e’ al piano e se la porta e’ ’ se e’ al piano e se la porta e’ apertaaperta

Ingresso:Ingresso:Variabile A == 1 se l’ascensore e’ al piano, 0 altrimentiVariabile A == 1 se l’ascensore e’ al piano, 0 altrimentiVariabile B == 1 se la porta e’ aperta, 0 se e’ chiusaVariabile B == 1 se la porta e’ aperta, 0 se e’ chiusa

Uscita:Uscita:Variabile C == 1 se l’ascensore e’ disponibileVariabile C == 1 se l’ascensore e’ disponibile

C = f(A,B), C == 1 se sia A che B sono == 1C = f(A,B), C == 1 se sia A che B sono == 1

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

6

Internal use, DO NOT reproduce

Funzioni e circuitiFunzioni e circuiti

Variabili (logiche) di:Variabili (logiche) di:ingresso (A, B)ingresso (A, B)uscita (C)uscita (C)

Morsetti (fili) di:Morsetti (fili) di:ingressoingressouscitauscita

A Cf(•,•)B

Val = 5 Val = 0f(•,•)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

7

Internal use, DO NOT reproduce

Valori logiciValori logiciDue valori Due valori EQUIVALENTIEQUIVALENTI

SpentoSpentoAccesoAccesoDispositivoDispositivoApertoApertoChiusoChiusoContattoContatto

……

Valore tensioneValore tensioneValore algebricoValore algebricoValore logicoValore logico

…………

BassaBassaAltaAlta0011

FalsoFalsoVeroVero

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

8

Internal use, DO NOT reproduce

Tabelle di Tabelle di veritaverita’’Semplice rappresentazione tabellare di Semplice rappresentazione tabellare di una funzione logicauna funzione logicaUtilizzabili Utilizzabili percheperche’ i possibili valori di una ’ i possibili valori di una funzione logica sono (relativamente) funzione logica sono (relativamente) limitatilimitatiEs.: ascensore disponibileEs.: ascensore disponibile A B C

0 0 00 1 01 0 01 1 1

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

9

Internal use, DO NOT reproduce

Valori logici / valori fisiciValori logici / valori fisiciLa mappatura di valori logici in valori fisici, La mappatura di valori logici in valori fisici, cioecioe’ dipendenti dalla tecnologia, e’ arbitrario’ dipendenti dalla tecnologia, e’ arbitrario

Tutte e due le mappature sono Tutte e due le mappature sono correttecorrette: : basta che un circuito sia basato su una sola basta che un circuito sia basato su una sola mappatura coerentemappatura coerente

Es. 1: tensione alta Es. 1: tensione alta 1 1 -- tensione bassa tensione bassa 00Es. 2: tensione alta Es. 2: tensione alta 0 0 -- tensione bassa tensione bassa 11

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

10

Internal use, DO NOT reproduce

Valori delle variabili di ingressoValori delle variabili di ingresso

Soro realizzati da dispositivi esterni (es. Soro realizzati da dispositivi esterni (es. interruttori) o dalle uscite di altri circuiti logici interruttori) o dalle uscite di altri circuiti logici con tecnologie compatibilicon tecnologie compatibili

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

11

Internal use, DO NOT reproduce

Cenni tecnologiciCenni tecnologici

Un circuito logico può essere implementato in Un circuito logico può essere implementato in molti modimolti modiLe proprietà richieste alla tecnologia sono:Le proprietà richieste alla tecnologia sono:

possibilitapossibilita’ di rappresentare due valori ben distinti’ di rappresentare due valori ben distintitensione alta/bassa; corrente alta/bassa; luce/buio; suoni di tensione alta/bassa; corrente alta/bassa; luce/buio; suoni di frequenza diversa; …frequenza diversa; …possibilitapossibilita’ di combinare valori per calcolare nuovi valori il ’ di combinare valori per calcolare nuovi valori il piupiu’ velocemente possibile (ad esempio la luce ’ velocemente possibile (ad esempio la luce puopuo’ avere ’ avere valori di valori di intensitaintensita’ distinti ma non si combina facilmente)’ distinti ma non si combina facilmente)

verranno fatti degli esempi durante l’esposizioneverranno fatti degli esempi durante l’esposizione

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

13

Internal use, DO NOT reproduce

Porte logiche Porte logiche (1)(1)

Dal punto di vista logico: una funzione tra Dal punto di vista logico: una funzione tra variabili di ingresso e di uscitavariabili di ingresso e di uscita

Dal punto di vista tecnologico: circuito Dal punto di vista tecnologico: circuito con “valori fisici” di ingresso e uscitacon “valori fisici” di ingresso e uscita

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

14

Internal use, DO NOT reproduce

Porte logiche Porte logiche (2.1)(2.1)

NOTNOTX = NOT A = AX = NOT A = A

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

15

Internal use, DO NOT reproduce

Porte logiche Porte logiche (2.2(2.2))

Tecnologia: interruttore comandato Tecnologia: interruttore comandato (relais)(relais)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

16

Internal use, DO NOT reproduce

Porte logiche Porte logiche (2.3)(2.3)

Implementazione a relais di una porta NOTImplementazione a relais di una porta NOT

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

17

Internal use, DO NOT reproduce

Porte logiche Porte logiche (2.4)(2.4)Tecnologia: Tecnologia: transistor transistor Implementazione a transistor di una porta NOTImplementazione a transistor di una porta NOT

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

18

Internal use, DO NOT reproduce

Porte logiche Porte logiche (3.1)(3.1)

ANDANDX = A X = A ·· B = ABB = AB

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

19

Internal use, DO NOT reproduce

Porte logiche Porte logiche (3.2)(3.2)Tecnologia: Tecnologia: relais relais Implementazione a relais di una porta ANDImplementazione a relais di una porta AND

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

20

Internal use, DO NOT reproduce

Porte logichePorte logiche (3.3)(3.3)Tecnologia: Tecnologia: transistor transistor Implementazione a transistor di una porta ANDImplementazione a transistor di una porta AND

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

21

Internal use, DO NOT reproduce

Porte logiche Porte logiche (4.1)(4.1)

ORORX = A + BX = A + B

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

22

Internal use, DO NOT reproduce

Porte logiche Porte logiche (4.2)(4.2)

Tecnologia: Tecnologia: diodi diodi Implementazione a diodi di una porta ORImplementazione a diodi di una porta OR

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

23

Internal use, DO NOT reproduce

Porte logiche Porte logiche (5.1)(5.1)

NANDNANDX = NOT(AB) = ABX = NOT(AB) = AB

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

24

Internal use, DO NOT reproduce

Porte logichePorte logiche (5.2)(5.2)Tecnologia: Tecnologia: transistor transistor Implementazione a transistor di una porta NANDImplementazione a transistor di una porta NAND

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

25

Internal use, DO NOT reproduce

Porte logiche Porte logiche (6.1)(6.1)

NORNORX = NOT(A+B) = A + BX = NOT(A+B) = A + B

Esercizio: implementare a transistorEsercizio: implementare a transistor

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

26

Internal use, DO NOT reproduce

Porte logiche Porte logiche (6.2)(6.2)

Soluzione dell’esercizio:Soluzione dell’esercizio:Implementazione a transistor di una porta NORImplementazione a transistor di una porta NOR

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

27

Internal use, DO NOT reproduce

Porte logiche Porte logiche (7)(7)

OR esclusivo (EXOR esclusivo (EX--OR)OR)X = A X = A ⊕⊕ B = AB + ABB = AB + AB

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

28

Internal use, DO NOT reproduce

Algebra BooleanaAlgebra BooleanaAlgebra con variabili e funzioni a due Algebra con variabili e funzioni a due valorivaloriUna funzione Booleana di n variabili ha 2Una funzione Booleana di n variabili ha 2nn

valorivaloriquindi si può rappresentare con una tabella quindi si può rappresentare con una tabella (chiamata tabella di verità)(chiamata tabella di verità)

NOT, AND, OR, ecc. sono semplici funzioni NOT, AND, OR, ecc. sono semplici funzioni BooleaneBooleane

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

29

Internal use, DO NOT reproduce

Funzioni BooleaneFunzioni Booleane

Ci sono quattro diverse funzioni di una Ci sono quattro diverse funzioni di una variabilevariabile

Quali ???Quali ???

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

30

Internal use, DO NOT reproduce

Funzioni Booleane, Funzioni Booleane, contcont..

Ci sono quattro diverse funzioni di una Ci sono quattro diverse funzioni di una variabilevariabile

A, NOT A, 0, 1A, NOT A, 0, 1

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

31

Internal use, DO NOT reproduce

Funzioni Booleane, Funzioni Booleane, contcont..

Ci sono quattro diverse funzioni di una Ci sono quattro diverse funzioni di una variabilevariabile

A, NOT A, 0, 1A, NOT A, 0, 1Ci sono 16 funzioni di due variabiliCi sono 16 funzioni di due variabili

Come mai?Come mai?Quante funzioni di n variabili?Quante funzioni di n variabili?

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

32

Internal use, DO NOT reproduce

Esempio di funzione “complessa”Esempio di funzione “complessa”

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

33

Internal use, DO NOT reproduce

Dalla tabella di Dalla tabella di veritaverita’ alla ’ alla funzionefunzione

Somma di prodottiSomma di prodottiM = ABC + ABC + ABC + ABCM = ABC + ABC + ABC + ABC

La funzione e’ espressa come somma La funzione e’ espressa come somma (OR) delle combinazioni di variabili di (OR) delle combinazioni di variabili di ingresso (AND) che fanno assumere alla ingresso (AND) che fanno assumere alla funzione il valore 1funzione il valore 1

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

34

Internal use, DO NOT reproduce

Sintesi di semplici funzioni Sintesi di semplici funzioni booleanebooleane

Tabella di veritàTabella di verità

Funzione in forma di somma di prodottiFunzione in forma di somma di prodotti

Implementazione con sole porte Implementazione con sole porte NOT, AND e ORNOT, AND e OR

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

35

Internal use, DO NOT reproduce

Completezza di NAND e NORCompletezza di NAND e NORUna qualunque funzione si Una qualunque funzione si puopuo’ ’ implementare anche solo con dei NAND implementare anche solo con dei NAND (o NOR)(o NOR)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

36

Internal use, DO NOT reproduce

Completezza di NAND e NORCompletezza di NAND e NOR

Una qualunque funzione si Una qualunque funzione si puopuo’ ’ implementare anche solo con dei NAND implementare anche solo con dei NAND (o NOR)(o NOR)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

37

Internal use, DO NOT reproduce

Equivalenza dei circuiti Equivalenza dei circuiti (1)(1)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

38

Internal use, DO NOT reproduce

Equivalenza dei circuiti Equivalenza dei circuiti (2)(2)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

39

Internal use, DO NOT reproduce

Equivalenza dei circuiti Equivalenza dei circuiti (3)(3)

I due circuiti sono in un caso I due circuiti sono in un caso

“OR di AND” “OR di AND”

e nell’altro e nell’altro

“AND di OR”“AND di OR”

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

40

Internal use, DO NOT reproduce

LeggiLeggi

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

41

Internal use, DO NOT reproduce

Rappresentazioni equivalentiRappresentazioni equivalentiLa legge di De La legge di De MorganMorgan suggerisce delle suggerisce delle trasformazioni che permettono di trasformazioni che permettono di rappresentare la stessa funzione sia con porte rappresentare la stessa funzione sia con porte OR che con porte AND (OR che con porte AND (piupiu’ la negazione NOT)’ la negazione NOT)

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

42

Internal use, DO NOT reproduce

Rappresentazioni con un solo Rappresentazioni con un solo tipo di porta, esempiotipo di porta, esempio

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

43

Internal use, DO NOT reproduce

Come mai ci sono 16 diverse Come mai ci sono 16 diverse funzioni di due variabili?funzioni di due variabili?

Una funzione di due variabili ha quattro (2Una funzione di due variabili ha quattro (222) ) valori in corrispondenza delle quattro valori in corrispondenza delle quattro possibili combinazioni di ingressopossibili combinazioni di ingresso

Ci sono 16 (2Ci sono 16 (22222) combinazioni della variabile ) combinazioni della variabile di uscita di una funzione logicadi uscita di una funzione logica

25 marzo 2003 Architettura degli Elaboratori 1 – A.A. 2002-03

44

Internal use, DO NOT reproduce

E allora quante sono le diverse E allora quante sono le diverse funzioni di n variabili?funzioni di n variabili?