CircuitiLogici
x1x1 x2x2 f x1x1 x2x2 f(x 1,x 2 ) f(x 1,x 2 ) = x 1 +x 2 = x 1 x 2 OR
Proprietà della funzione OR Commutativa: x 1 + x 2 = x 2 + x 1 Estesa a più variabili x 1 + x 2 + x 3 + … + x n = 1 se x i = 1 (i=1,…,n) 1 + x = 10 + x = x Associativa:(x 1 + x 2 )+ x 3 = x 1 + (x 2 + x 3 ) Inoltre:
x1x1 x2x2 f x1x1 x2x2 f(x 1,x 2 ) f(x 1,x 2 ) = x 1x 2 = x 1 x 2 AND
Proprietà della funzione AND Commutativa: x 1 x 2 = x 2 x 1 Estesa a più variabili x 1 x 2 x 3 … x n = 1 x i = 1 (i=1,…,n) 1 x = x0 x = 0 Associativa:(x 1 x 2 ) x 3 = x 1 (x 2 x 3 ) Inoltre:
x1x1 x2x2 f x1x1 x2x2 f(x 1,x 2 ) f(x 1,x 2 ) = x 1 x 2 Exclusive OR 1 1
Proprietà della funzione Exclusive OR Commutativa: x 1 x 2 = x 2 x 1 Estesa a più variabili x 1 x 2 x 3 … x n = 1 se x i = 1 e x k = 0 i k (i,k=1,…,n) 1 x = x0 x = x Associativa: (x 1 x 2 ) x 3 = x 1 (x 2 x 3 ) Inoltre:
x1x1 f x1x1 f(x 1 ) f(x) = x NOT 1
V ingresso < Vlim V uscita = V alim. V ingresso > Vlim V uscita = Vmassa V uscita V massa V alimentazione Transistor Bipolare (BJT) collettore emettitore base resistenza V ingresso
V AND x1x1 x2x2 f y x 1 yx2x2 f
V OR x1x1 x2x2 f y x 1 yx2x2 zf z
Tecnologie microelettroniche Transistor bipolari (o a giunzione) o Transistor BJT (Bipolar Junction Transistor) Tecnologia TTL (Transistor Transistor Logic) Tecnologia ECL ( Emitter Couple Logic) Transistor ad effetto di inversione o Transistor MOS (Metal Oxide Semiconductor) Tecnologia CMOS (Complementary Metal Oxide Semiconductor)
Simboli standard per porte logiche x1x1 x2x2 x1x1 x2x2 x1x1 x2x2 x x 1 + x 2 x 1 x 2 x OR AND NOT EX-OR
x2x2 x1x1 f f = x 1 x 2 + x 1 x 2 x 1 x 2 f
x 1 x 2 x 3 f f = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3
x2x2 x1x1 f x3x3
x2x2 x1x1 f f = x 1 x 2 + x 2 x 3 x 1 x 2 x3x3 f x3x3
Minimizzazione di funzioni logiche ORAND Commutativax+y=y+x xy=yx Associativa(x+y)+z=x+(y+z) (xy)z=x(yz) Distributivax+yz=(x+y)(x+z) x(y+z)=xy+xz Idempotenzax+x=x xx=x Involuzionex = x Complemento x + x= 1 x x= 0 De Morgan x+y = x y xy = x + y 1+x=1 0 x=0 0+x=x1 x=x
Minimizzazione di funzioni logiche x 1 x 2 x 3 f f = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3
x 1 x 2 x 3 f x1x2x1x2 x3x Mappa di Karnaugh
Minimizzazione di funzioni logiche x1x2x1x2 x3x x 1 x 2 x 2 x 3 f = x 1 x 2 + x 2 x 3
x1x2x1x2 x3x x 1 x 2 x 3 f
Minimizzazione di funzioni logiche x 2 x 1 x 3 f = x 2 + x 1 x x1x2x1x2 x3x
x1x2x1x2 x3x4x3x4 x 1 x 4 x 2 x 3 x 4 f = x 2 x 3 x 4 + x 1 x 4
x1x2x1x2 x3x4x3x4 x 2 x 3 x 4 x 2 x 4 f = x 2 x 4 + x 1 x 3 + x 2 x 3 x 4 x 1 x 3
x1x2x1x2 x3x4x3x4 x 2 x 3 x4 x4 f = x 4 + x 2 x 3
x1x2x1x2 x3x4x3x4 x2x3x4x2x3x4 x 1 x 2 x 3
x1x2x1x2 x3x4x3x4 x2x3x4x2x3x4 x 1 x 2 x 3 x 1 x 3 x 4
x1x2x1x2 x3x4x3x4 x2x3x4x2x3x4 x 1 x 2 x 3 x 1 x 2 x 4
Altre Porte logiche x1x1 x2x2 x 1 x 2 NAND x1x1 x2x2 x 1x
Altre Porte logiche x1x1 x2x2 x1+x2x1+x2 x 1 x x1x1 x2x2 NOR
x 1 x 2 = x 1 x 2 = x 1 + x 2 Proprietà x 1 x 2 = x 1 +x 2 = x 1 x 2 x 1 x 2 … x n = x 1 x 2 … x n = x 1 + x 2 +…+ x n x 1 x 2 … x n = x 1 +x 2 + …+ x n = x 1 x 2 … x n Non vale la proprietà associativa
Circuiti logici solo con porte NAND (x 1 x 2 ) (x 3 x 4 ) = (x 1 x 2 ) (x 3 x 4 ) = x 1 x 2 + x 3 x 4 = x 1 x 2 + x 3 x 4 x2x2 x1x1 x4x4 x3x3 x2x2 x1x1 x4x4 x3x3
Associatività Associativa(x+y)+z=x+(y+z) (xy)z=x(yz) x2x2 x1x1 x3x3 x2x2 x1x1 x3x3
Non Associatività x2x2 x1x1 x3x3 x2x2 x1x1 x3x3
Realizzazione di Porte Logiche Nei circuiti elettronici per rappresentare le variabili logiche Sono utilizzati sia livelli di tensione che di corrente Per stabilire una corrispondenza tra livelli di tensione e valori logici si usa una soglia (threshold) V max V min Soglia V0V0 V1V1
V in V 0 V out > V 1 V in V 1 V out < V 0 V out VsVs NOT V in VsVs R V out
AND V x1x1 V x1x1 x2x2 f y x2x2 f NAND
OR V x1x1 x2x2 f y z V x1x1 x2x2 f NOR
Criteri per la realizzazione di P.L. Velocità ( Ritardo di propagazione e tempo di transizione) Potenza Densità di packaging Immunità al rumore Caratteristica di carico Capacità di carico fan-in fan-out
Definizione di Circuiti Circuiti il cui stato dipende solo dagli ingressi Circuiti Combinatori Circuiti il cui stato dipende non solo dagli ingressi ma dalle configurazioni precedenti Circuiti Sequenziali SRQ n+1 00QnQn X
Memorie: Bistabile (Flip-Flop) R S QaQa QbQb SRQaQa QbQb 000/11/ Bistabile RS
Memorie: Bistabile (Flip-Flop) R S QaQa QbQb
Bistabile Sincroni R S QaQa QbQb Cl SRQ n+1 00QnQn X
Memorie: Bistabile Sincrono S R QaQa QbQb Cl 0 1
Bistabile Sincroni R S QaQa QbQb Cl D Bistabile D
Altri Bistabili RS Master-Slave (Bistabili JK) Edge-Triggered (Bistabili D) Bistabili JK JKQ n+1 00QnQn Q n S=J Q R=KQ
Shift Register F1F1 F2F2 F3F3 F4F4 J K Q Q J K Q Q J K Q Q J K Q Q In Cl Out
Shift Register F1F1 F2F2 F3F3 F4F4 J K Q Q J K Q Q J K Q Q J K Q Q Clock In Shift/ Load
Contatori F1F1 F2F2 F3F3 F4F4 J K Q Q J K Q Q J K Q Q J K Q Q Cl 1 Ripple
Decodificatori x1x1 x2x
Multiplexer x1x1 x4x4 x2x2 x3x3 w1w1 w2w2 z
Dispositivi Logici Programmabili Array di elementi combinatori che possono essere programmati Per realizzare funzioni logiche esprimibili come somma di prodotti PLD Programmable Logic Devices x1x1 xnxn f1f1 fmfm In Buff. E invert. Array di AND Array di OR Out Buff
Dispositivi Logici Programmabili PLA : Programmable Logic Array Dispositivi in cui sia le connessioni delle porte AND che quelle delle porte OR sono programmabili PAL : Programmable Array Logic Dispositivi in cui sono programmabili solo le porte AND FPGA : Field Programmable Gate Array Blocchi logici interconnessi da una rete di commutazione programmabile
Contatore Bidirezionale S0S0 S1S1 S3S3 S2S2 x=0 / z=0 x=1 / z=0 x=0 / z=1 x=0 / z=0 x=0 / z=1 x=1 / z=0 x=0 / z=0 Diagramma degli Stati
Contatore Bidirezionale Stato Presente Stato Prossimo Uscita z x=0x=1x=0x=1 S0S0 S1S1 S3S3 00 S1S1 S2S2 S0S0 00 S2S2 S3S3 S1S1 11 S3S3 S0S0 S2S2 00 Tabelli degli Stati
Contatore Bidirezionale Stato Presente Stato Prossimo Uscita z Y2Y1Y2Y1 Y2Y1Y2Y1 x=0x= Assegnamento degli Stati
FPGA Implementation ALTERA Stratix Dalsa-Coreco ANACONDA (XILINX)
Stratix III L Family Variants DeviceEP3S L50 EP3S L70 EP3SL 110 EP3SL 150 EP3SL 200 EP3SE260EP3SL 340 Adaptive Logic Modules (ALMs) 19,00027,00042,60056,80079,560101,760135,200 Equivalent Logic Elements (LEs) 47,50067,500106,500142,000198,900254,400338,000 Registers38,00054,00085,200113,600159,120203,520270,400 M9K Memory Blocks ,144 M144K Memory Blocks Embedded Memory (Kbits) 1,8362,2144,2035,4997,66814,68817,208 MLAB (Kbits) ,3311,7752,4863,1804,225 18x18 Multipliers FPGA ALTERA