outline del programma - hep.fi.infn.ithep.fi.infn.it/ciber/elettronica_generale_i_part01.pdf ·...

103
Outline del programma 15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 1

Upload: hoangthien

Post on 17-Feb-2019

225 views

Category:

Documents


0 download

TRANSCRIPT

Outline del programma

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 1

Logica combinatoriale:

● Porte elementari

● Algebra booleana

● Encoders, decoders

● XOR, Circuti di parità, comparatori

● Sommatore

● Look ahead logic

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 2

Logica Sequenziale

● Latch.

● Flip-Flop

● Sincronizzazione di segnali asincroni

● Contatori e shift registers

● Macchine a stati finiti

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 3

VHDL

• Verilog Description Language

● Sintassi:

● Macchine sincrone

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 4

Esperienza di Laboratorio

• E' previsto l'uso intensivo del CAD Quartus distribuito dallacompagnia ALTERA.

● Gruppi di 2

● Un pomeriggio a settimana dedicato

● Una relazione finale riguardante un progetto realizzato e portato a termine durante il corso.

● La relazione è obbligatoria e dà accesso al colloquio finale.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 5

Considerazioni

• Siete incoraggiati a prendere appunti a lezione.

• Quantomeno tenete traccia degli argomenti svolti a lezione.

• L'esame finale, orale, verterà sia sulla parte in aula che sullaesperienza di laboratorio

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 6

Elettronica generale IProf. raffaello d’alessandro

[email protected]

Prof. Sergio ricciarini

[email protected]

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 7

Perché digitale ?

• I circuiti digitali lavorano in binario.• Due stati logici possibili, i.e. 1, 0.• Valgono le regole dell’algebra Booleana.• I circuiti usano porte logiche (AND, OR, NOT).• Un circuito analogico agisce su segnali che variano con continuità• Un circuito digitale agisce su segnali discreti (discontinui).

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 8

Logica digitale

• Variabili con due soli valori possibili.

• 1,0 ; true, false ;

• Questi stati hanno varie rappresentazioni elettriche a seconda del tipo di implementazione hardware:

• TTL, ECL, CMOS

• L’algebra che descrive le operazioni sulle variabili logiche si chiama algebra booleana.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 9

Porte logiche

• Porte che realizzano funzioni dell’algebra booleana

• AND x.y

• OR x + y

• NOT x’

• L’inversione si denota anche con un cerchietto (bubble) o.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 10

Tabella della verità (truth table)

• Truth table,

• Mostra, per tutti i possibili stati d’ingresso, i valori delle uscite.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 11

X Y OUT

0 0 0

1 0 0

0 1 0

1 1 1

AND

Vantaggi dell’elettronica digitale

• Immunità dal rumore

• Progettazione in alta frequenza (si lavora in condizioni ON/OFF)

• Flessibilità grazie ai dispositivi programmabili (FPGA, CPU, DSP)

• Relativamente facili da disegnare

• Trasmissione dati a distanza più robusta

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 12

Possibili svantaggi dell’elettronica digitale

• Consumo di Potenza

• Interfacciarsi con il mondo realerichiede la conversione da Analogico a Digitale (ADC) e viceversa (DAC)

• Errori di quantizzazzione dovuti al passaggio dal continuo al discreto

• Costi elevati (cum grano salis) di progettazione

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 13

Immunità dal rumore• Analogico v digitale

• RumoreTutti i segnali diventano più deboli percorrendo lunghe distanze e inoltre possono essere soggetti a disturbi elettrici di vario tipo. (i.e. I crepitii e sibili nei programmi radiofonici).

• Segnali analogiciIl rumore aggiunge informazioni/variazioni casuali ai segnali analogici. Ogni volta che il segnale viene amplificato, anche il rumore viene amplificato. A poco a poco, il segnale diventa sempre meno simile al segnale originale e domina il rumore di fondo.

• Segnali digitaliIl rumore si sovrappone anche ai segnali digitali. Tuttavia, questo rumore è solitamente inferiore in ampiezza rispetto all'ampiezza degli stati ON/OFF. Di conseguenza, il rumore non viene trasmesso/amplificato. Ciò significa che viene mantenuta la qualità del segnale.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 14

Come nasce l’immunità dal rumore

Nasce dalla grande differenza che c`è tra tensione in uscita min/max per rappresentare uno stato logico (1/0) e tensione in ingresso max/min per riconsocere quello stesso stato logico.

Facciamo un esempio con VDD=5V VOLmax= 0.1 V (0)

VILmax = 1.5 V (0)

VIHmin = 3.5 V (1)

VOHmin= 4.9 V (1)

DC Noise Margin High State Noise margin: 1.4 Volt = (VOHmin-VIHmin)

Low State Noise margin : 1.4 Volt = (VILmax – VOLmax)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 15

(HIGH)

(LOW)

Undefined

0 V

0.3VDD

0.7VDD

VDD

VIHmin

VOHmin

VOLmax

VILmax

Specifiche famiglie 74xx00

• Famiglia HC HCT AC ACT

• Inp. Leak. Curr. (uA) 1 1 1 1

• InputCap. (pF) 6.5 6.5 4.5 4.5

• VILmax(V) 1.0 0.8 1.5 0.8

• VIHmin(V) 3.5 2.0 3.5 2.0

• VOLmax(V) 0.1 0.1 0.1 0.1

• VOHmin(V) 4.9 4.9 4.9 4.9

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 16

CMOS SWITCH ON/OFF• Mentre prima si usavano anche i transistor a giunzione (BJT), oramai tutte le

logiche binarie utilizzano i CMOS.

• l CMOS (acronimo di complementary metal-oxide semiconductor), è un tipo di tecnologia utilizzata in elettronica digitale per la progettazione di circuiti integrati, alla cui base sta il transistor MOSFET. La porta più semplice è il NOT, costituita da due MOS in serie uno canale P e uno canale N.

• Nel ramo tra Vdd e Vss, non scorre mai corrente (....) perché quando un MOS è acceso l’altro è spento (schema complementare).

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 17

Tempi di transizione ON/OFF

• Si passa da uno stato di interdizione a uno di saturazione (e viceversa)

• Molto importanti le capacità dei gate. E’ il tempo necessario affinchè l’uscita cambi stato :

Rise time ( tr ) : LOW-to-HIGH transition Fall time ( tf ) : HIGH-to-LOW transition

Il tempo di transizione dipende da : La resistenza ON dei transistor usati. Capacità del carico (Anche dalle capacità parassite)

Circuito di output Capacità delle piste sul circuito stampato o dei fili di collegamento Capacità d’input del carico

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 18

Dissipazione di potenza

Static Power Dissipation: ( Static ) = VDD2/( Rn+Rp) ......Valore estremamente piccolo (CMOS)

Dynamic Power Dissipation: La corrente che scorre durante le transizioni quando i due transistor sono

parzialmente ON. PT= CPD*VDD2 * f

CPD : Power Dissipation Constant, f : transizioni per secondo

Carica e scarica di CL

PL= CL * VDD2 * f

Totale:P ( Dynamic ) = (CPD+CL) . VDD2 . f

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 19

Prestazioni sempre delle serie 74xx00

Famiglia HC HCT AC ACT

Propagation Delay(ns) 36 36 9.25 10.5

Static Power Dissipation(mW) 0.04 0.04 0.04 0.04

Dynamic(mW/MHZ) 2.1 2.1 1.5 1.5

Total (mW)@100kHZ 0.25 0.25 0.19 0.19

Total (mW)@10 MHZ 21.0 21.0 15.0 15.0

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 20

Come eravamo:

Medium scale integration: TTL 74xx, ECL 10000, CMOS 4000

Bassa complessità: Porte base AND, OR.

contatori ecc. ecc.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 21

circuiti integrati digitali Un insieme di porte logiche costruite su di un singolo chip al silicio Famiglie di ICs

- Small-Scale Integration ( SSI ) : Contengono 1-20 gates( Esempio :7400- series SSI IC’s )

- Medium-Scale Integration ( MSI ) : Contengono 20-200 gates ( Esempio : contatori, decoders, multiplexers )

- Large-Scale Integration ( LSI ) : Contengono 200 to 200000 gates ( Esempio : Microprocessori, memorie, PLDs )

- Very Large Scale Integration ( VLSI ) Contengono più di 500,000 transistors( Esempio : Microprocessore Pentium (1a generazione)

ASICs : ICs progettati per applicazioni particolari (schede grafiche).

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 22

Evoluzione

La produzione di dispositivi LSI o VLSI richiede più cicli di disegno, fabbricazione, collaudo: tempi “lunghi”

costi elevati

uso di fonderie

Giustificato solo per un numero molto elevato di “pezzi”.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 23

I gate array

I gate array programmabili, le PLD ecc. offrono una soluzioneintermedia: densità di gate elevata

prestazioni leggermente inferiori

IN HOUSE design and debug

tempi molto rapidi

costi molto ridotti

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 24

Gate array/dispositive programmabili

PAL (Programmable Array Logic) o PLD Simple programmable And/Or array Può includere input/output flip-flops

CPLD (Complex Programmable Logic Device) Array of multiple PAL-like blocks Programmable interconnects between blocks

FPGA (Field Programmable Gate Array) Array of simple logic cells Interconnected via wires within routing channels

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 25

Guardiamo dentro ad una CPLD (1)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 26

Guardiamo dentro ad una CPLD (2)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 27

Guardiamo dentro ad una CPLD (3)

One macrocell is equivalent to one flip-flop.

Macrocells are arranged in local arrays.

Local arrays are connected to fast interconnects for rows and columns.

Input Output Cells connect the device to the outside world.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 28

Come vengono connessi I vari gates ?

Le connessioni sono fatte con dei MOS usati come interruttoricontrollati da memory bits di qualche tipo: EPROM - charged floating gate, UV erasable

EEPROM - charged floating gate, electrically erasable

Flash Memory - charged floating gate, electrically erasable

SRAM - Volatile memory

Antifuse - permanent connections made electrically

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 29

FPGA software (tutti più o meno rispecchianoquesto schema)• Design Entry

• Compiler

• Waveform Editor

• Simulation

• Programmer

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 30

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 31

• Compiler• Test Vector• Simulator• Programmer

Use advanced functions

• Usate HELP

• A parte le usualifunzioni TTL, usatele LPM o Mega Functions.

• Scalabili e ottimizzate.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 32

Regole di disegno e progettazione

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 33

Standard di documentazione• La documentazione di un sistema digitale deve dare l’informazione

necessaria per costruire, provare, operare e mantenere il sistema.

• Generalmente, la documentazione include:• 1) Un block diagram che mostra gli inputs, outputs, i blocchi principali del

sistema e come sono connessi.

• 2) Una Circuit description che spiega le operazioni logiche del circuito.

• 3) Un schematic diagram che mostra tutti i componenti, la loro tipologia, e tutte le interconnessioni.

• 4) Una structured logic description che spiega le funzioni delle structures complesse. Ad esempio, la tabella funzionale di un multiplexer, o il programma di una PLD ( Programmable Logic Device).

• 5) Un timing diagram che mostra i segnali logici in funzione del tempo.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 34

Block diagram• Un diagramma a blocchi deve mostrare tutti gli inputs e outputs, i

blocchi base e il nome della loro funzione, e i percorsi dei dati (segnali logici).

- I dettagli interni dei blocchi NON interessano.- Segnali logici comuni vengono disegnati con una linea spessa (BUS).

• Esempio: Min/Max Circuit

15/10/2018

Elettronica Generale I_a , Raffaello D'Alessandro

35

Comparator

Mux

Mux

Mux

X

Y

Z

MIN/MAX

X>Y

max(X,Y)

min(X,Y)

• Simboli delle porte logiche (Gates)

• OR

• NOR

• AND

• NAND

• INVERTER

• BUFFER

Schematic diagram

• Gates

• Nomi segnali e livelli attivi

• Layouts

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 36

Etichette segnale e livelli attivi

• Inputs e outputs devono avere etichette, o uguali al nome delle variabili (X,Y, A,...) ,o che riflettano azioni o condizioni particolari (ENABLE, REQUEST, /READY, ERROR, PAUSE).

• Active level: active high o active low.

• Il segnale viene asserito quando il suo livello e’ attivo e viveversa.

• Active low prefisso / al nome (anche ___ , oppure _n , ecc. ecc.)

• Esempio :- ERROR è active high = l’errore è presente quando il segnale è HIGH ( logic 1).- /READY è active low = i dati sono pronti quando il segnale è LOW ( logic 0 ).

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 37

Active Levels per i Pins

• Nei gates logici e strutture logiche la inversion bubble indical’active level del segnale

• Esempio:- 2-to- 4 Decoder

- /EN e’ active low

- A e B sono active high

- /Y0, /Y1, /Y2,/Y3 sono active low

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 38

EN

A

B

Y0

Y1

Y2

Y3

/ EN

A

B

/ Y0

/ Y1

/ Y2

/ Y3

Layout di disegno

• Inputs a sinistra, outputs a destra.

• I segnali fluiscono da sinistra a destra.

• Linee incrociate/Linee Connesse (T-type)

• Etichette Bus : DATA[0-7], CONTROL

• Un segnale estratto da un bus deve essere etichettato

• Bus Flags : - Unidirezionale - Bidirezionale

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 39

DATA[0-7]

DATA5

DATA6

Diagrammi di temporizzazione

• Ad esempio, qui si evidenziano dei «delay» che dipendono da: - Struttura interna del circuito- Famiglia dei dispositivi usati- Voltaggio- Temperatura

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 40

IN

/ENABLE

OUTLogic

CircuitIN

/ENABLE

OUT

tOUT

IN

/ENABLE

OUT

tOUTmin

tOUTmax

Timing Diagram per i segnali dei Dati (Bus)

• Varie temporizzazioni da rispettare e da specificare!

• t1 : tsetup

• t2 : toutmin

• t3 : toutmax

• t4 : thold

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 41

IN

/WRITE

Logic

Circuit

(Memory)

OUT

IN

/WRITE

OUT

t1

t2

t3

t4

old data

new data

new data

Logica combinatorialeL’uscita dipende unicamente dagli ingressi

Non si hanno elementi di memoria (flip-flop)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 42

Porte elementari

• AND Gate OR Gate NOT gate

0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 01 0 0 1 0 1 1 1 1 1 1 1

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 43

X

Y

Z X

Y

Z

X Y Z X Y Z

X X’

X X’

Con diagramma temporale

• NAND a 3 ingressi

• 0 0 0 1 0 0 1 10 1 0 10 1 1 11 0 0 11 0 1 11 1 0 11 1 1 0

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 44

X Y Z W

X

Y

Z

W

XYZ

w

time

Rappresentazione di funzioni logiche

• Come sintetizzare la logica a partire dalla tabella della verità.

• Tabella della verità con 2n righe, n: numero delle variabili

• Definizioni:-Literal: una variabile o il suo complementoEsempio: X , Y’

-n-variabili minterm : prodotto con n literalsEsempio: X’.Y.Z

-n-variabili maxterm : somma con n literalsEsempio: X+Y’+Z

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 45

maxterm

• Un Minterm è costruito con l’AND di tutte le variabili d’ingresso, (o il loro complemento)• di conseguenza la sua truth table avrà un solo 1 e 2n-1 zeri

• si denota con la lettera m (minuscola) e un subscript numerico

• eg. m4 identifica il minterm che ha 1 alla riga 4 e zero nelle altre

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 46

• Un Maxterm è costruito con l’OR di tutte le variabili d’ingresso, (o il loro

complemento)

• di conseguenza la sua truth table avrà un solo 0 e 2n-1 uni

• si denota con la lettera M (maiuscola) e un subscript numerico

• eg. M4 identifica il maxterm che ha 0 alla riga 4 e uno nelle altre

MINTERM

Esempio : F( X, Y , Z )

• Riga X Y Z F Minterms Maxterms

0 0 0 0 0 X’.Y’.Z’ X +Y +Z1 0 0 1 1 X’.Y’.Z X +Y +Z’2 0 1 0 0 X’.Y .Z’ X +Y’+Z3 0 1 1 1 X’.Y .Z X +Y’+Z’4 1 0 0 0 X .Y’.Z’ X’+Y+Z5 1 0 1 0 X .Y’.Z X’+Y+Z’ 6 1 1 0 1 X .Y .Z’ X’+Y’+Z7 1 1 1 0 X .Y. Z X’+Y’+Z’

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 47

Sintesi logica con I minterm

• Con i Minterm possiamo scrivere la funzione logica di qualsiasi truth table

• La funzione logica sarà l’OR dei Minterm corrispondenti alle righe della truth table che hanno 1 come risultato finale

• Ricordatevi che (x + 1) = 1; quindi se un MINTERM è 1 anche la funzione che abbiamo costruita darà 1

• Ricordatevi che un Minterm è uguale ad 1 SOLO per la sua riga corrispondente

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 48

Esempio : F( X, Y , Z ) con I minterm

• Riga X Y Z F Minterms Maxterms

0 0 0 0 0 X’.Y’.Z’ X +Y +Z1 0 0 1 1 X’.Y’.Z X +Y +Z’2 0 1 0 0 X’.Y .Z’ X +Y’+Z3 0 1 1 1 X’.Y .Z X +Y’+Z’4 1 0 0 0 X .Y’.Z’ X’+Y+Z5 1 0 1 0 X .Y’.Z X’+Y+Z’ 6 1 1 0 1 X .Y .Z’ X’+Y’+Z7 1 1 1 0 X .Y. Z X’+Y’+Z’

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 49

• Selezioniamo solamente i

MINTERM con F = 1

• Costruiamo la funzione F

facendo l’OR dei 3 MINTERM

scelti

• F = m1 + m3 + m6

Sintesi logica con i Maxterm

• Anche con i Maxterm possiamo scrivere la funzione logica di qualsiasi truth table

• La funzione logica sarà l’AND dei Maxterm corrispondenti alle righe della truth table uguali ad 0.

• Ricordatevi che (x.0) = 0

• Ricordatevi che un Maxterm è uguale ad 0 SOLO per la sua riga corrispondente.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 50

Esempio : F( X, Y , Z ) con i Maxterm

• Riga X Y Z F Minterms Maxterms

0 0 0 0 0 X’.Y’.Z’ X +Y +Z1 0 0 1 1 X’.Y’.Z X +Y +Z’2 0 1 0 0 X’.Y .Z’ X +Y’+Z3 0 1 1 1 X’.Y .Z X +Y’+Z’4 1 0 0 0 X .Y’.Z’ X’+Y+Z5 1 0 1 0 X .Y’.Z X’+Y+Z’ 6 1 1 0 1 X .Y .Z’ X’+Y’+Z7 1 1 1 0 X .Y. Z X’+Y’+Z’

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 51

• Selezioniamo solamente i

MAXTERM con F = 1

• Costruiamo la funzione F

facendo l’AND dei 5 MAXTERM

scelti

• F = M0 . M2 . M4 . M5 . M7

Forma Canonica e rappresentazione compatta

• La forma canonica è quella già vista:

• Esempio con i MINTERM: F = m1 + m3 + m6 = x’y’z + x’yz + xyz’

• Una forma compatta (lista) è data da:

• F = m(1,3,6)

• F = M(0,2,4,5,7)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 52

Sintesi circuiti combinatoriali

• Tab. ver. Funz. logica Circuito logico

• 1- Funzione logica:- Espressione somma canonica.- Espressione prodotto canonico.

2- Implementazioni canoniche :- AND-OR ( NAND-NAND)- OR-AND ( NOR-NOR)

• Minimizz. funzione logica : Semplificare per ridurre il numero di gates.

• Metodi di minimizzazione:1- Leggi Demorgan 2- Mappa Karnuagh

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 53

1 2

Proprietà fondamentali e leggi di De Morgan• OR: A + 0 = A; A + 1 = 1 ; A + A = A; A + A’ = 1

• AND: A • 0 = 0; A • 1 = A ; A • A = A; A • A’ = 0

• Associativa: (A + B) + C = A + (B + C) ; (A • B) • C = A • (B • C)

• Commutativa: A + B = B + A ; A • B = B • A

• Distributiva: A • (B + C) = A • B + A • C

Leggi di De Morgan • A • B • C •....... = (A’ + B’ + C’ + ....... )’

• A + B + C + ...... = (A’ • B’ • C’ • .......)’

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 54

Esempio con Booleana

• F = (A+C).(A.B+C)

A B C (A.B) (A.B)+C (A+C) F 0 0 0 0 0 0 00 0 1 0 1 1 10 1 0 0 0 0 0 0 1 1 0 1 1 11 0 0 0 0 1 01 0 1 0 1 1 11 1 0 1 1 1 11 1 1 1 1 1 1

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 55

FB

C

(A.B) (A.B)+C

(A+C)

A

Semplificazione

• F = (A+C).((A.B)+C) = A.(A.B+C)+C.(A.B+C)= A.A.B+A.C+C.A.B+C.C = A.B+A.C+A.B.C+C = (A.B+A.B.C)+(A.C+C) = (A.B.(1+C)+((A+1).C)= A.B+C

• Implementazione equivalente della funzione logica F :

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 56

A

B

C

F = A.B+C(A.B)

A

B

C

(A+B)

(B.C’)

A

B

C

(B.C’)

Rimpiazzato da:

(A+B)

F = A+B+B.C’

Esempio con De morgan• F= [ (A+B)’. (B.C’)’]’

= (A+B)’’ + (B.C’)’’ De Morgan

• = A+B +B.C’= A+B.(1+C’)= A+B.1= A+B

• Implementazione equivalente!! :

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 57

A

BF

Mappa di Karnaugh

• È una rappresentazione grafica dei minterms (Maxterms) che mette accostati termini che differiscono per un solo literal.

• In questo modo si trovano ad “occhio” le semplificazioni

• Ad esempio, una rappresentazione per una funzione con tre variabili:

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 58

00 01 11 10

0

1

00 00 00 00

00 00 00 00

ab

c

Riempiamo con I minterm la mappa per f

• Mettere un “1” nei quadrati corrispondente ai minterm della funzione:

• La mappa è continua, il bordo a destra è adiacente a quello di sinistra:

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro

59

abc f

000 0

001 1

010 1

011 1

100 0

101 0

110 1

111 0

00 01 11 10

0

1

m0 m2 m6 m4

m1 m3 m7 m5

ab

c

00 01 11 10

0

1

1 1

1 1

c

ab

b=0 b=0

00 01 11 10

0

1

1 1

1 1

ab

c

a=0 a=1

b=1

Esplicitiamo i gruppi

• Due minterm adiacenti differiscono per solo una variabile (literal) che viene eliminata.

• In questo caso la variabile “b” assume entrambi i valori 0 ed 1

• Il gruppo cerchiato corrisponde ad a=0 e c=1, con b che può assumere entrambi i valori, l’espressione minima è quindi a’c.

• Con l’algebra Booleana, a’b’c + a’bc = a’c

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 60

b=0 b=0

00 01 11 10

0

1

1 1

1 1

ab

c

a=0 a=1

b=1

Altri gruppi di due

• Il gruppo rosso da a’c.

• {a’b’c + a’bc = a’c}

• Il gruppo in verticale da a’b.

• {a’bc’ + abc = a’b}

• Il gruppo verde da bc’.

• {a’bc’ + abc’ = bc’}

• Questi tre gruppi sono ridondanti, il gruppo verticale non porta a nessuna uscita che non sia già coperta dala gruppo rosso e dal gruppo verde

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 61

b=0 b=0

00 01 11 10

0

1

1 1

1 1

ab

c

a=0 a=1

b=1

Espressione minima finale

• Selezionate il numero minimo di gruppi necessari per “coprire” gli “1” della mappa.

• f = bc’ + a’c

• Il termine eliminato è ridondante

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 62

b=1

b=0 b=0

a=0 a=1

00 01 11 10

0

1

1 1

1 1

ab

c

Comparatori e codici di parità• La porta XOR (Exclusive OR) ; XNOR (Exclusive NOR)

• XOR : XOR

• XNOR :

• Tabella Verità:

X Y XOR XNOR XNOR0 0 0 10 1 1 01 0 1 01 1 0 1

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 63

X

Y

F

X

Y

F

Applicazione XOR : Circuito di Parità• Odd Parity Circuit : output è 1 se un numero dispari di inputs sono 1

• Even Parity Circuit : output è 1 se un numero pari di inputs sono 1

• Esempio : Circuito di paritá a 4 bit:

Struttura concatenata Struttura ad albero

Input : 1101 Odd Parity output : 1Even Parity output : 0

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 64

I0

I1

I2

I3

ODD

EVEN I0

I1

I2

I3

ODD

EVEN

Parità• Ci sono varie implementazioni di codici di parità• La più semplice è proprio il conteggio di quanti bit nella parola (byte o

multipli) sono uguali tra loro• Diventa vitale nella trasmissione dati:

• La parità del dato viene calcolata in partenza (i.e. 10111001 (1) ODD PARITY)• Vengono quind trasmessi 9 bi; 8 di dati e uno di parità• Chi riceve ricalcola a sua volta la parità del dato (8 bit) e la confront con il 9 bit

trasmesso• Se non coincidono vuol dire che uno dei 9 bit ha subito un’ inversione e il dato deve

essere ritrasmesso• Molto improbabile che si abbiano 2 inversioni contemporaneamente

• Ipotesi: bit flip scorrelati tra loro !!! ; se la probabilità di un bit flip è 10-7 , quella di due sarà 10-14

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 65

Comparatori

• Comparano due parole binarie, output=1 se le due parole sono uguali

• Comparatori avanzati :

• 1-bit Comparator : XOR gate , Output = 1 if A<>B

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 66

AComparator OUTPUT

B

A

Comparator

A=B

BA>B

A<B

A

B

F

Comparatori multibit

• Comparatore parallelo Comparatore Seriale

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 67

A0

B0

A1

B1

A2

B2

A3

B3

A¹B

X Y

EQI

EQO

EQI X Y EQO0 x x 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1

X Y

EQI EQO

X0 Y0

EQ1X Y

EQI EQO

X1 Y1

EQ1X Y

EQI EQO

X(N-1) Y(N-1)

EQNEQ1(N-1)

Somma e sottrazione con i numeri binari

• Rappresentazioni binarie

• Circuiti sommatori

• Circuiti sottrattori

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 68

• Tabella somma binaria :

0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 1 1 1 1 1 1

• Esempio : 1 0 0 0 1 0 1 1 0 0 0

x 1 7 3 1 0 1 0 1 1 0 1 Numeri positivi che sommati danno altri numeri positiviy + 4 4 0 0 1 0 1 1 0 0 La rappresentazione del numero riguarda solo il cambio della base

_____ ____________ da decimale a binario.2 1 7 1 1 0 1 1 0 0 1

Regola della somma

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 69

carry(in) x y x+y carry(out)

Esempi somme

• 1 0 1 0 0 1 0 0 1 0

1 1 0 1 0 1 0 1 0 1 + 0 1 1 1 1 + 1 1 0 0 1

_________ _________

• 1 0 1 0 0 1 1 0 1 1 1 026+15 = 41 21+25=46

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 70

• Tabella sottrazionebinaria :

0 0 0 0 00 0 1 1 10 1 0 1 00 1 1 0 01 0 0 1 11 0 1 0 11 1 0 0 0 1 1 1 1 1

• Esempio : 0 1 0 0 1 1 0 1 1 1 1 0

x 2 1 0 1 1 0 1 0 0 1 0 Numeri positivi che sottratti danno altri numeri positivi (X>Y)y - 1 0 7 0 1 1 0 1 0 1 1 La rappresentazione del numero riguarda solo il cambio della base

_____ ____________ da decimale a binario.1 0 3 0 1 1 0 0 1 1 1

Regola della sottrazione

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 71

borrow(in) x y x-y borrow(out)

Esempi sottrazione (X>Y)

• 1 1 1 1 0 0 1 1 0 0

1 1 0 1 0 1 1 1 0 1 - 0 1 1 1 1 - 1 0 1 1 1

________ _________

• 0 1 0 1 1 0 0 1 1 026 - 15 = 11 29 - 23 = 6

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 72

Numeri negativi

• Cosa usiamo come segno “ - “ ?• Usiamo il MSB (Most Significant Bit) 1 = - ; 0 = +

• -6 = (1)110 (Nbit = 4)

• Dobbiamo specificare a priori quanti bit uso per la rappresentazionebinaria

• Dobbiamo fare attenzione agli “Overflow”

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 73

Rappresentazione dei numeri negativi

• Signed magnitude

• One’s complement

• Two’s complement

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 74

Rappresentazione signed magnitude

• Il MSB rappresenta il segno ( 0 = + , 1 = - )

• Con n-bit si spazia da : -(2 n-1 – 1) a +(2 n-1 - 1)

• Es. n=5* Range : da -15 a 15* 10011= -3 , 01100 = +12* 00000= 0 , 10000 = - 0

• Svantaggi :1- Due possibili rappresentazioni dello zero2- Si complicano notevolmente gli addizionatori digitali

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 75

One’s complement• Il MSB rappresenta il segno ( 0 = + , 1 = - )

• Il numero negativo è il complemento dei bits del numero positivo• Il valore decimale di un numero binario a n-bit è =

• Con n-bit si spazia da -(2 n-1 - 1) a +(2 n-1 - 1)

• Vantaggi : 1- Simmetria2- Facilità di implementazione

• Svantaggi:1- Due rappresentazioni dello zero2- Sommatori digitali complicati

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 76

esempio

• n= 8range da -127( 10000000) a 127 ( 01111111)

• +123(dec) = 01111011

-123(dec) = 10000100

• 0(dec) = 00000000

-0(dec) = 11111111

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 77

Two’s complement• Il MSB rappresenta il segno (0 = + , 1 = -)

• Il numero negativo si ricava con :1- Si fa il complemento di tutti i bits del numero positivo (complemento

a uno)2- Si somma 1

• Il valore decimale di un numero a n-bits é =

• Con n-bit si spazia da -(2 n-1 ) a +(2 n-1 - 1)

• Vantaggi :1- Unico zero2- Somma e sottrazione si fanno direttamente

• Svantaggio : Un extra numero negativo (asimmetrico)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 78

Esempio• n= 8

- range da -128( 10000000) a 127 ( 01111111)

• +115(dec) = 01110011

passo da + a - 10001100 Compl. a 11 +

_________10001101 = -115(dec) Rapp. Compl. a due

• 0(dec) = 0000000 ; 111111111 +

_________1 00000000 = 0(dec)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 79

Raffronto (N=4)• -8 - 1000

• -7 1111 1000 1001

• -6 1110 1001 1010

• -5 1101 1010 1011

• -4 1100 1011 1100

• -3 1011 1100 1101

• -2 1010 1101 1110

• -1 1001 1110 1111

• 0 0000 or 1000 0000 or 1111 0000

• 1 0001 0001 0001

• 2 0010 0010 0010

• 3 0011 0011 0011

• 4 0100 0100 0100

• 5 0101 0101 0101

• 6 0110 0110 0110

• 7 0111 0111 011115/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 80

Decimale Signed Magnitude One’s Complement Two’s Complement

Somma con la rappresentazione complemento a due

• Regole della somma ( A+B ): 1- Si usano le normali regole di somma binaria.2- Si ignora il carry dopo il bit di segno

• Se non si eccede il “range” massimo il risultato sara’ corretto incluso il bit di segno.

• Esempi (Nbit = 4, Two’s complement):1 0 0 0 1 1 1 0 0 1 1 0

(-2) 1 1 1 0 (-3) 1 1 0 1 (-3) 1 0 1 1+ (-4) 1 1 0 0 (+3) 0 0 1 1 + (3) 0 0 1 1

______ ______ ______(-6)1 1 0 1 0 (0) 1 0 0 0 0 -6 1 1 1 0

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 81

Signed Magnitude !!!

Sottrazione con la rappresentazione complemento a due

• Metodo 1 : [ A - B ]1- Usando le regole della sottrazione binaria2- Viene ignorato il borrow dopo il bit di segno

• Esempio :

1 1 0 0 0 (2) 0 0 1 0

-(4) 0 1 0 0______

(-2) 1 1 1 0

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 82

• Metodo 2 : [ A + (-B) ]Si somma A al complemento a due di B :1- Si prende il complemento a 1 di B2- Si somma ad A con Carry In iniziale =1

• Esempio ( 2 - 4)0 1 0 (1!!)0 0 1 0 (2)

+ 1 0 1 1 (Rappr. Compl. a 1 del numero -4 )___________________1 1 1 0 (-2)

Overflow

• Regole per scoprire un overflow (“range” ecceduto) :- Il bit di segno della somma è diverso dai bit di segno dei due addendi- Il carry in( Cin) e il carry out (Cout) del bit di segno sono differenti

• Esempio (n=4, complemento a due, range tra –8 e +7):0 1 0 0 0 1 0 0 0 0

(4) 0 1 0 0 (-4) 1 1 0 0+(5) 0 1 0 1 + (-5) 1 0 1 1

______ ______0 1 0 0 1 1 0 1 1 1 (Cin è diverso da Cout, e i bit di

segno sono diversi)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 83

Addizionatore/sottrattore

Half Adder

Full Adder

Ripple Adder

Full Subtractor

Ripple Subtractor

Adder/Subtractor Circuit

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 84

Half adder

• Tabella verità :X Y S=(X+Y) CO0 0 0 00 1 1 01 0 1 01 1 0 1

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 85

Y

XS

CO

Full adder

• Tabella veritá:

0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 1 1 1 1 1 1

• S = X’Y’CIN+ X’YCIN’+XY’CIN’+XYCIN

• S = X+Y+CIN

• COUT=XY+XCIN+YCIN

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 86

X Y CIN SUM COUT

Y

X

S

CIN

COUT

X Y

COUT CINS

Y

XS’

CO’

CIN

S’SUM

CO’’

COUTCO’’

1a VERSIONE 2a VERSIONE

Sommatore

• COUT=X’YCIN+XY’CIN+XYCIN’+XYCIN

• COUT=(X’+X)YCIN+(Y’+Y)XCIN+(CIN’+CIN)XY = XY+X CIN+Y CIN

• XOR=X’Y+XY’

• S=(X++Y)++CIN =(X’Y+XY’)++CIN=(X’Y+XY’)’CIN+X’YCIN’+XY’CIN’

• S=(X’Y)’(XY’)’CIN+X’YCIN’+XY’CIN’=(X+Y’)(X’+Y)CIN+X’YCIN’+XY’CIN’

• S=XX’CIN+XYCIN+Y’X’CIN+YY’CIN+X’YCIN’+XY’CIN’

• S=XYCIN+Y’X’CIN+X’YCIN’+XY’CIN’

• S = X’Y’CIN+ X’YCIN’+XY’CIN’+XYCIN

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 87

Sommatore con Ripple

• Configurazione a cascata di n Full Adders : Nbit RIPPLE ADDER

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 88

X Y

COUT CINS

X Y

COUT CINS

X Y

COUT CINS

X0 Y0X1 Y1XN YN

S0S1SN

COUT CIN

SottrattoreTabella veritá:

0 0 0 0 00 0 1 1 10 1 0 1 00 1 1 0 01 0 0 1 11 0 1 0 11 1 0 0 0 1 1 1 1 1

• D = X’Y’BIN + X’YBIN’ + XY’BIN’ + XYBIN

• D= X++Y++BIN

• BOUT=X’Y+X’BIN+Y BIN

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 89

X Y

BOUT BIND

Y

X

D

BIN

BIN X Y D=X-Y BOUT

Sommatore usato come sottrattore

• X,Y sononumeri binari unsigned a n-bit

• Addizione : S = X + Y

• Sottrazione : D = X - Y = X + (-Y) = = X+ (Complemento a due di Y)= X+ (Complemento a uno di Y) + 1= X+ Y’+ 1

• Un Sommatore Ripple Adder puo’ essere usato come sottrattore invertendo Y e impostando il carry iniziale ( CIN ) a 1

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 90

Sommatore/sottrattore• M=0 : Sommatore a ripple

• M=1 : Sottrattore a ripple

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 91

X Y

COUT CINS

X Y

COUT CINS

X Y

COUT CINS

X0 Y0X1 Y1XN YN

S0/B0SN / BN

COUT/

BOUT

S1/B1

COME ELIMINARE IL RIPPLE ?

Non possiamo più usare il Cout !

• CLL: Logica di Carry Lookahead

• I0 = C0

• Ik = ??

• Ik è funzione combinatoriale di tutti gli ingressi X e Y fino all’ordine k-1.

15/10/2018

Elettronica Generale I_a , Raffaello D'Alessandro

92

X Y

CLL

S

X Y

CLL

S

X Y

CLL

S

X0 Y0X1 Y1Xk Yk

S0S1Sk

I0Ik I1

Logiche di Carry Lookahead

X Y

CLL

S

Xn Yn

Sn

In

COUT

Yi

Xi

S

Ci

Xi-1

X0

Yi-1

Y0

C0

Carry

Lookahead

LogicIk

hs

Sommatorecon Look Ahead

Look Ahead logic

• Dobbiamo dare un’espressione per Ci generato dal circuito di Carry Lookahead.

• Il sommatore, quando produce Ci = 1 ?1) Xi-1 = 1 e Yi-1 = 1 ( il carry viene generato) Oppure quando,2) Ci-1 = 1 e (Xi-1 = 1 o Yi-1 = 1) ( il carry viene propagato )

• Algebra Booleana:Ci = (Xi-1.Yi-1) + (Xi-1+Yi-1).Ci-1 { Ricordatevi : COUT=XY+XCIN+YCIN}

• Definendo gi= Xi.Yi , pi= Xi+Yi

• Si ha : Ci = gi-1+pi-1.Ci-1 ; (C0 = 0 / 1 (Somma/Sottrazione) )

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 93

Eliminare la ricorsività

Ci = gi-1+pi-1.Ci-1 ; gi=Xi.Yi pi=Xi+Yi

- C1=g0+p0.C0

- C2=g1+p1.C1 = g1+p1.(g0+p0.C0) = g1+p1.g0+p1.p0.C0

- C3= g2+p2.C2 = g2+p2.(g1+p1g0+p1.p0.C0) = g2+p2.g1+p2.p1.g0+p2.p1.p0.C0

- C4= .................

C1, C2, C3, ..... vengono tutti generati CONTEMPORANEAMENTE con quasilo stesso ritardo, quindi il ripple viene eliminato

La logica combinatoriale si complica notevolemente già dopo i primi bit.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 94

Lookahead e riporto seriale a blocchi

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 95

74x2834bit carrylookahead

Altre rappresentazioni• Gray Code (da Frank Gray)

• Solo un bit cambia stato tra due parole di codice sequenziali

• Binary Code e Gray Code ( n = 3 ) :

0 000 0001 001 0012 010 011 3 011 0104 100 1105 101 1116 110 1017 111 100

• Applicazioni :- Elettromeccaniche (Encoding disks) –Riduzione dei disturbi dovuti alle commutazioni di un contatore

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 96

• Si ottiene il bit iesimo del Gray Code dal confronto

dei bits i e i+1 del Binary Code :

- Si aggiunge uno 0 extra alla sinistra del Binary code

- Se i bits i e i+1 del Binary code sono uguali allora il

bit i del Gray code è = 0 , altrimenti è =1.

• Esempio:

• Binario 10011

010011

• Gray Code : 11010

Rappresentazioni numeri decimali

• Per rappresentare una cifra decimale abbiamo bisogno di 4 bit.

• Eg. :- BCD (8421)- Binary Coded Decimal

• 2421Excess-3

- Altri codici decimali:

• Biquinario ( 7 bits )1 su 10 ( 10 bits )

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 97

Raffronto

• 0 0000 0000 0011 0100001 1000000000

• 1 0001 0001 0100 0100010 0100000000

• 2 0010 0010 0101 0100100 0010000000

• 3 0011 0011 0110 0101000 0001000000

• 4 0100 0100 0111 0110000 0000100000

• 5 0101 1011 1000 1000001 0000010000

• 6 0110 1100 1001 1000010 0000001000

• 7 0111 1101 1010 1000100 0000000100

• 8 1000 1110 1011 1001000 0000000010

• 9 1001 1111 1100 1010000 0000000001

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 98

Decimal BCD(8421) 2421 Excess-3 Biquinary 1-out-of-10

Codifica caratteri

• Tabella ASCII

• Ogni carattere è rappresentato da una stringa di bit

• ASCII - the American Standard Code for Information Interchange.

• I caratteri sono codificati in stringhe di 7 bits.

• Nei 128 caratteri sono inclusi:

• - lettere minuscole e maiuscole

• - numeri

• - punteggiatura

• - caratteri di controllo

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 99

Timing Hazards

• La tabella della verità determina il comportamento stazionario del circuito combinatoriale (statica)

• Comportamento nel Transiente : - Glitches in uscita quando cambiano gli ingressi.- Glitches dovuti ai diversi ritardi per i percorsi dei segnali.- Timing Hazards si riferiscono alla possibilità di avere glitches durante le transizioni dei segnali in ingresso.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 100

Definizioni• Hazard statico:* Static-1 Hazard : Due combinazioni di input che:

- differiscono per una sola variabile.- entrambe danno come risultato 1.- possono produrre un glitch di 0 durante la transizione dell’ingresso

* Static-0 Hazard : Due combinazioni di input che:- differiscono per una sola variabile.- entrambe danno come risultato 0.- possono produrre un glitch di 1 durante la transizione dell’ingresso

• Hazard dinamico: - L’uscita puo’ cambiare piu’ volte durante la transizione dell’ingresso.- Di solita e’causata dalla presenza di piu’ percorsi con ritardi differenti tra ingressi ed uscita

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 101

1

0

1

0

Esempio• F= YZ+XZ’

• Delay per ogni gate = T .

• Input cambia da XYZ=111 to 110 (Output = 1 per entrambe le configurazioni)

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 102

X

Y

Z FX

Y

Z

YZ

Z’

XZ’

F

Tglitch

1

0

1

1

1

1

1

1

0

0

0

0

0

Eliminazione dei timing hazard

• Si possono usare le mappe di Karnaugh

• In generale si cerca SEMPRE di lavorare con segnali sincroni (vedimodulo I_b sulle logiche sequenziali), ovvero con segnali che vengono“agganciati” ad un unico clock di sistema

• Un segnale asincrono può essere reso sincrono grazie all’uso dei flip-flop

• Con segnali sincroni e logiche che lavorano in sincronia si riescono a contenere I problem legati agli hazard temporali.

15/10/2018 Elettronica Generale I_a , Raffaello D'Alessandro 103