Smitizzare il computer
Pietro Montini
1983
Indice :
Valigetta Schede : ……………………………………………………………………...pag. 2
Sistema Decimale : …………………………………………………………………… pag. 3
Sistema Binario : ……………………………………………………………………….pag. 4
Sistema Esadecimale : …………………………………………………………………pag. 5
Scheda Binary : ………………………………………………………………………...pag. 8
Scheda Display : ……………………………………………………………………….pag. 9
Scheda Counter : ……………………………………………………………………….pag. 10
Scheda Comparatore e Shift Register : …………………………………………………pag. 12
Scheda Multivibratori : …………………………………………………………………pag.14
Scheda Memories : ……………………………………………………………………..pag. 25
Eproms : ……………………………………………………………………………….. pag. 32
Alimentatore in C.C. : …………………………………………………………………..pag. 33
Tastiera ………………………………………………………………………………….pag. 41
Video : aggiornamenti nel 1986……………………………………………………...…pag. 45
Mouse …………………………………………………………………………………...pag. 50
Tabelle ASCII ………………………………………………………………………….pag. 53
1
Valigetta Schede
Flat Cable : I Flat Cable ad 8 linee, che uniscono le varie schede, sono crimpati su speciali zoccoletti
degli integrati in modo che gli 8 conduttori facciano contatto con gli 8 pin degli zoccoletti che fungeranno
poi da connettore.
2
Sistemi di numerazione
Breve introduzione tra i sistemi di numerazione : Decimale, Binario, Esadecimale
Sistema Decimale
Sappiamo che il sistema di numerazione decimale si avvale di 10 simboli, per cui ha come base
il numero 10. I simboli sono :
0
1
2
3
4
5
6
7
8
9
I valori maggiori di 9 si formano accostando tali simboli in diverse combinazioni.
Ad esempio nel numero 888, dove compare un solo simbolo ripetuto tre volte, la cifra di sinistra
vale 800, quella centrale 80, quella più a destra 8.
Il valore del numero si desume dalla seguente relazione :
10²
centinaia
8 x 10² + 8 x 10¹ + 8 x 10°
10¹
decine
=
10°
unità
800 + 80 + 8 = 888
Altro esempio :
10³
migliaia
10²
centinaia
10¹
decine
10°
unità
Alle potenze di 10 si dà il nome di “Pesi”.
Infatti 10° ha peso 1 perché 10 elevato alla potenza zero dà come risultato 1.
10¹ ha peso 10 e così via.
Per quanto riguarda i numeri frazionari, i pesi attribuiti alle cifre che si trovano a destra della
Virgola. Sono potenze con esponente negativo poiché le stesse cifre hanno significato di decimi,
centesimi, millesimi, etc.
Così, ad esempio, sarà :
423,758 = 4 x 10² + 2 x 10¹ + 3 x 10° + 7 x 10⁻¹ + 5 x 10⁻² + 8 x 10⁻³
che dà : 400 + 20 + 3 + 7/10 + 5/100 + 8/1000
Portando lo spostamento della virgola verso destra o verso sinistra di uno, due, tre, ecc. posti,
equivale a moltiplicare o dividere il numero per 10, 100, 1000, ecc.
3
Sistema Binario
Ha come base il numero 2, pertanto si avvarrà di due simboli : 0 ed 1
Le cifre dei numeri binari vengono posizionate dai relativi “pesi”, che naturalmente sono potenze di due.
Ad esempio il numero binario :
100111
(leggi : uno, zero, zero, uno, uno, uno)
Può essere espresso nel seguente modo :
2⁵ 2⁴ 2³ 2² 2¹ 2°
1 0 0 1 1 1 =
1 x 2⁵ + 0 x 2⁴ + 0 x 2³ + 1 x 2² + 1 x 2¹ + 1 x 2°
Quindi, il valore decimale corrispondente a tale numero binario è dato dalla
somma di tutti i prodotti dei Bit ad 1moltiplicato per i pesi relativi, ossia
1 x 2⁵ + 1 x 2² + 1 x 2¹ + 1 x 2° = 32 + 4 + 2 + 1 = 39
Ciò appare evidente in quanto un qualsiasi numero moltiplicato per zero sarà uguale a zero.
I numeri frazionari vengono rappresentati con criteri analoghi a quelli osservati per i numeri frazionari
del sistema decimale.
Anche in questo caso, lo spostamento della virgola verso destra o verso sinistra raddoppia o
dimezza il valore degli stessi.
Consideriamo, ad esempio, il numero binario :
1, 1 0 0 1 0
Il suo equivalente decimale è :
1 x 2° + 1 x 2⁻¹ + 0 x 2⁻² + 0 x 2⁻³ + 1 x 2⁻⁴ + 0 x 2⁻⁵ = 1 + ½ + 1/16 = 25/16
Infatti :
1 x 2° = 1
1 x 2⁻¹ = 1 x ½ = ½
1 x 2⁻⁴ = 1 x 1/16 = 1/16
0 x 2⁻² = 0 x ¼ = 0
0 x 2⁻³ = 0 x 1/8 = 0
0 x 2⁻⁵ = 0 x 1/32 = 0
Spostando la virgola di un posto verso destra, il numero diventa : 1 1, 0 0 1 0
Mentre i suo equivalente decimale deve essere 50/16, infatti :
1 1, 0 0 1 0 = 1 x 2¹ + 1 x 2° + 0 x 2⁻¹ + 0 x 2⁻² + 1 x 2⁻³ + 0 x 2⁻⁴ che darà
= 2 + 1 + 1/8 = 3 + 2/16 = 50/16
Il risultato è infatti raddoppiato !!
4
5
6
7
Sistema esadecimale
Questo sistema lo si vedrà utilizzato nella scheda “Display”, e non è altro che una rappresentazione
facilitata di un numero binario.
Ha come base il numero 16, ossia le cifre che compongono il numero esadecimale si susseguono secondo
la potenza di 16 (analogamente, come abbiamo visto, ai sistemi decimale e binario le cui cifre si
susseguono secondo le potenze di 10 e 2 rispettivamente).
Ovviamente, per questo sistema di numerazione saranno necessari 16 simboli, da far corrispondere ai
numeri tra 0 e 15.
I primi dieci simboli del sistema esadecimale sono le consuete cifre da 0 a 9, per le successive si dovrà
ricorrere alle lettere dell’alfabeto.
Si hanno così le seguenti corrispondenze :
Esadecimale
Decimale
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
I numeri risulteranno perciò composti da cifre e lettere. Esempio :
12516 = 29310
Quanto scritto si legge : uno, due, cinque in base sedici, che è uguale a 293 in base dieci
Notare l’indicazione della base, necessaria per evitare confusione.
Il calcolo del valore corrispondente al 125 si fa in modo analogo al sistema binario, tenendo conto della
successione dei “pesi” in base 16.
12616 = 1 x 16² + 2 x 16¹ + 5 x 16° = 256 + 32 + 5 = 293
Invece il numero :
A20C
sarà uguale a :
10 x 16³ + 2 x 16² + 0 x 16¹ + 12 x 16° = 40.460 + 512 + 0 + 12 = 41.484
La trasformazione di un numero Binario nel corrispondente Esadecimale viene effettuata suddividendo il
numero Binario in gruppi di 4 cifre a partire da destra (cioè dalla parte dei numeri con i “pesi” meno
significativi) e completando eventualmente con zeri il gruppo più a sinistra.
A questo punto si scrivono le cifre esadecimali corrispondenti a ciascun gruppo e la trasformazione
è terminata. Ad esempio :
111110100101001
Dividendolo in gruppi di 4 cifre, partendo da destra :
0111 1111
0010
1001
Nel gruppo alla sinistra, lo zero è stato aggiunto per completare il gruppo.
Il numero Esadecimale corrispondente diverrà :
7D29
8
che è sicuramente meno laborioso da pronunciare perché, se ci esprimessimo in linguaggio binario,
dovremmo dire del numero precedente : zero uno, uno uno, uno, uno, zero, zero, etc….
e non riusciremmo a memorizzarlo.
La base dell’Algebra dei circuiti venne gettata da Claude Elwood Shannon (1916 -2001, fisico americano,
uno dei fondatori della storia dell’informazione), partendo dalle leggi della logica binaria formulate da Gottfried
Wilhelm Leibniz (1646 - 1716, presidente dell’Accademia Prussiana delle scienze), George Boole (1815 – 1864,
matematico inglese), ed altri matematici.
Il motivo che ha determinato l’utilizzazione nel computer della matematica binaria e quindi dell’ algebra booleana ,
è dato dal fatto che la tecnologia attuale non permette di riconoscere con precisione i dieci “livelli “ utilizzati dalla
matematica decimale. Infatti, ad ogni livello da 0 a 9 dovrebbe, nel computer, essere attribuito un diverso livello di
tensione, in modo tale che ognuno di questi 10 numeri possa essere sicuramente riconosciuto, e come tale,
utilizzato nelle operazioni matematiche interne.
Dal punto di vista tecnico, sarebbe anche possibile riuscire a discriminare i diversi livelli di tensione, ma
risulterebbe troppo complesso e laborioso.
Vediamo perché :
Nella figura qui sopra è stata rappresentata la suddivisione di una tensione di 5 Volt (come quella che alimenta le
nostre schede) utilizzando varie rappresentazioni matematiche.
Al crescere del numero dei gradini, si può notare come diventi sempre più piccola la sicurezza con la quale
possono essere riconosciti i vari gradini e come ci si avvicini sempre più all’andamento continuo del segnale.
Prendiamo ad esempio dei classificatori per dimostrare come diminuisca la “sicurezza di riconoscimento” di un
segnale al crescere nel numero dei gradini :
9
Talvolta, per riconoscere in numero d’ordine dei raccoglitori, si usa incollare una striscetta colorata sul
dorso in modo che, andando da un estremo all’altro, la strisciolina venga a trovarsi sempre più in alto. Si
rende così immediatamente riconoscibile un eventuale scambio di posizione fra due raccoglitori.
Questo può avvenire facilmente nel caso di due o tre raccoglitori, ma allorché essi aumentano, la distanza
fra le striscioline diminuisce a tal punto da rendere via via più difficile la loro collocazione.
E così lo sarebbe allorché una tensione venisse suddivisa in più parti dove ciascuna di esse avesse un ben
preciso significato.
Si è ricorsi così alla matematica binaria che si basa semplicemente su due numeri (0 ed 1) che vengono
denominati BIT (abbreviazione delle parole inglesi Binary Digit, ovvero, cifra binaria),
e da qui la “logica digitale”.
È quindi facilmente intuibile come ciò renda più facile il suo accostamento all’elettronica.
Al numero 0 si attribuisce, ad esempio, il livello di tensione 0 o mancanza di tensione.
Al numero 1 si attribuisce invece la presenza di tensione o circuito chiuso.
Non ci addentreremo nella matematica binaria. Ci basterà sapere che quando un Dato della linea 0, come
nel caso della scheda “Binary” ha il relativo “led” acceso (ossia ad 1), il suo valore assume un certo
“peso” a seconda della posizione che esso occupa sulla linea.
Viene assunto, come si è visto, che il numero meno significativo si trovi alla destra (o verso il basso,
come sulle schede) e raddoppi man mano che ci si sposta verso sinistra (o verso l’alto).
128 64 32 16 8 4 2 1  successioni delle potenze di un numero binario o “pesi”
7
6 5 4 3 2 1 0
b7 b6 b5 b4 b3 b2 b1 b0  N° di linee o bit
La cifra in alto è quindi il valore che si assume allorché il rispettivo bit della linea sottostante ha valore
1 (o led acceso) e che, sommato a tutti gli altri pesi, i cui bit sono ad 1, dà il valore della linea, che nel
caso di 8 bits, viene anche chiamata Byte.
Quindi, vediamo un esempio su 4 bit :
Si nota che il 1° ed il 3° interruttore sono chiusi per cui, circolando corrente in quei due rami, le rispettive
lampadine sono accese.
Se noi volessimo trasformare questa rappresentazione in codice binario, avremo che :
0 1 0 12 = 0 + 4 + 0 + 1 = 510
10
Scheda Binary
Componenti :
SW1 = switch a 8 vie
LD1 = led rossi
R1  R8 = 180 ohm
IC1 – IC2 = SN 7400N quadruplo NAND
Premendo un interruttore di SW1 verrà visualizzato sul relativo led il codice binario corrispondente.
IC1 ed IC2 servono ad impedire che, a switches aperti, il segnale “volante” venga codificato come
segnale vero.
LED : sono diodi emettitori di luce usati per indicare lo stato od altre informazioni all’utente.
Questo diodo ha un salto di tensione di 1,2  1,4 volt, secondo il tipo.
È un componente che emette una luce visibile su una stretta banda di lunghezza d’onda.
I “led” più usati sono quelli “rossi”.
Ne esistono anche di verdi, giallo, arancio e all’infrarosso, ma talvolta non di pari efficienza.
La corrente che passa attraverso il “led” determina la sua intensità luminosa.
La formula è all’incirca :
I = 3,5/R
per una alimentazione di 5 volt.
Correnti tipiche vanno da 2 a 20 mA
11
Scheda Display
Componenti :
ICU _ IC2 = F9368
Display
A1 -- A4
Decodifiche per display a 7 segmenti ed a catodo comune. Non abbisogna di
resistenze limitatrici sulle uscite, essendo stabilizzate.
TH2010 a catodo comune
Dati in ingresso in codice binario
Note : se all’accensione si vuol avere la visualizzazione dello “zero”, bisogna collegare
il piedino 4 RBO al +5
12
Scheda Counter
Componenti :
IC1 : SN7400N quadruplo NAND
IC2 - IC3 : contatori binari SN74LS93/1
IC4
: NE555
SW1 : deviatore
P1
: potenziometro 470 ohm
R1 - R2 : 1 K ohm
R3
: 100 ohm
C1
: 100 uF elettr.
TP1
: Test Point per il Clock
NE555
SN7400N
Il contatore binario è formato da una serie di Flip Flop in cascata e può contare sino a 16.
Se i Flip Flop son 4, sarà : 24 = 16
Sono Flip Flop formati da Transistors NPN : SN74LS93
13
L’uscita Y di ciascun Flip Flop viene utilizzata come Trigger per quello seguente.
Se all’ingresso T del primo Flip Flop vengono applicati impulsi Trigger negativi, le forme d’onda
dei singoli Flip Flop appaiono come sotto :
Dal grafico si nota che il 1° F.F. commuta ad ogni fronte negativo del segnale in ingresso.
Così facendo, gli F.F. successivi commutano sul fronte negativo del segnale d’uscita del F.F.
precedente.
Possiamo quindi sfruttare le due uscite del 2° e 4° F.F. che vanno “alte” al 10° impulso per riportare
a zero la conta del SN7493 attraverso i piedini 2 e 3 (R0) che settano a zero il F.F. e la conta riparte al
sopraggiungere del primo impulso.
Un Flip Flop è quindi un circuito binario, per cui n binari permetteranno di contare sino a 2n.
Descrizione della Scheda Counter :
Le uscite D e B del Counter “UNITÀ”, essendo all’ accensione a livello basso (L), portano un livello L
in 2 e 3 del NE555, così da abilitare la conta (infatti debbono essere basse durante la conta) che è scandita
dagli impulsi in ingresso al piedino 14 e provenienti dall’oscillatore.
D e B rimangono ad “L” sino a 10.
A questo punto cambieranno stato e porteranno il livello “H” ai piedini 2 e 3 del Counter stesso, che
resetterà e ripartirà poi da zero.
Inoltre il piedino 11 del NAND, andando a livello “L” al 10° impulso, incrementerà di una decina il
contatore “Decine” che si resetterà con il medesimo sistema già visto, ma al 100° impulso, ovvero quando
il suo piedino 14 ha ricevuto il 10° impulso.
N.B. : l’oscillatore verrà analizza nella Scheda Multivibratori.
L’ SN7493 ha la medesima piedinatura del SN7490, ma mentre il 7490 è un contatore decimale
(0 – 9), il 7493 è un contatore binario (0 – 15) e da qui la possibilità di prelevare un impulso al 10° clock.
Il 7490 permette però di resettare anche a 9 il contatore Rg (1) Rg (2)
14
Scheda Comparatore + Shift Register
Comparatore :
LD1 – 3 : led gialli 3 mm
R1 – R3 : 220 ohm
IC1
: F9324 (comparatore)
Shift Register :
LD1 – 8 : led verdi 3 mm
R1 – R 8 : 220 ohm
IC1 – IC4 : DM 74164N (Shift
Register)
C1
: 0,33 uF
TP1
: Input Clock
SW1
: Switch impulsivo
C2
: 0,1 uF (sotto la scheda)
Rx
: 1 K ohm (sotto la scheda)
Comparatore :
Vengono utilizzati solo 4 dei 5 ingressi disponibili per ognuno dei due canali potendo disporre di un Bus
di solo 8 bits.
Il confronto fra A e B avverrà quindi fra due numeri il cui valore massimo potrà essere 16 (24 = 16).
Uno dei tre led gialli si accenderà a seconda dell’esito del confronto fra i valori espressi dai due canali
A e B.
15
Shift Register :
Un registro a scorrimento è composto da elementi di memoria binari (Flip Flop).
Esso ha la capacità di immagazzinare informazioni e di farle muovere.
Prendiamo ad esempio, un registro a scorrimento a 4 bit, costituito da F.F. J.K.
Le uscite Q e
Sono collegate ciascuna agli ingressi J e K del F.F. seguente.
L’impulso di commutazione viene mandato contemporaneamente a tutti i F.F..
All’ingresso E del registro a scorrimento è collegato un invertitore tra l’ingresso J e l’ingresso K.
Così l’ingresso K è sempre presente, con polarità invertita, il segnale presente all’ingresso J.
Se all’ingresso del registro a scorrimento si manda un’informazione (livello “H”), all’impulso successivo
del clock essa viene immagazzinata nel 1° F.F.
Con un altro impulso l’informazione viene fatta avanzare di un posto nel registro, mentre il primo posto
può accogliere una nuova informazione.
Si può dire che in un registro a scorrimento, dopo “n” impulsi, un’informazione viene fatta avanzare
di “n” posti.
Quando l’informazione arriva all’ultimo F.F. , con l’impulso successivo, andrà perduta.
Il nostro circuito viene innescato premendo SW1.
L’impulso negativo del piedino 3 di IC2 fa scattare a livello “H” il piedino 11, poi portato all’ingresso
dello Shift e fatto quindi avanzare con la cadenza del clock al piedino 8.
Dopo 8 impulsi questo giungerà all’uscita QH e da lì, al piedino 1 di IC2, riportando la sua uscita 3 a
livello “H”, e quindi allo stato iniziale.
Per evitare di memorizzare all’ingresso AB l’impulso che gli perviene dal piedino 11 di IC2, l’uscita Q A
viene collegata ai piedini 12 e 13 di IC4, così che dopo il 1° impulso, gli ingressi A e B ritornano a
livello 1.
16
Scheda Multivibratori
Componenti :
Bistabile :
IC1
R1 – R3
R2
Ld1 – LD2
SW1
Monostabile :
: SN7400N
: 220 ohm
: 1 K ohm
: led rossi 5 mm
: deviatore
IC2
: SN74121 (multivibratore mono)
R4 –R5 : 220 ohm
R6
: 10 K ohm
C1
: 50 uF elettrolitico
C2
: 100 uF elettrolitico
SW2 : deviatore
SW3 : interruttore impulsivo
LD1 – Ld4 : led rossi 5 mm
Astabile :
IC3
IC4
R7 – R11
R10
R8
R9
C3
LD5 – LD6
P1
TP1 – TP2
: SN7400N
: NE555
: 237 ohm
: 1,1 K ohm
: 1,1 K ohm
: 363 ohm
: 100 uF
: led rossi 5 mm
: Potenziometro 1 M ohm (47 k ohm)
: impulsi in uscita con livello 1 e durata diversa
17
Prendiamo in considerazione dapprima il Multivibratore Astabile il quale possiede due condizioni di
equilibrio metastabili.
Per ciascun transistor TR1 e TR2 si trova periodicamente per un certo tempo nello stato OFF (stato di
interdizione) e, nel rimanente tempo, nello stato di ON (stato di conduzione).
Comunemente i due Transistors vengono fatti operare tra la saturazione (stato ON) e l’interdizione (stato
OFF), ed in corrispondenza a questi due stati si ha :
Saturazione :
Tensione di collettore
Tensione di base
Corrente di collettore
= VCE saturazione
= VBE saturazione
= ECO / RC
Tensione di collettore
Tensione di base
= EcO
= Tensione di interdizione
Interdizione :
min. di 0 per Trans. NPN
magg. 0 per Trans. PNP
Si prenda in considerazione il MV Astabile ad “accoppiamento di collettore” :
Se
C1 = C2
Rb1 = Rb2
E le resistenze di carico Rc sono uguali,
si ha il “MV Astabile Simmetrico” e la forma
d’onda che si preleva sul collettore di TR1
è identica a quella che si preleva sul collettore
di TR2. In caso contrario si ha un
“MV Astabile asimmetrico”.
Supponiamo di trovarci nel 1° caso e che, poco prima dell’ istante t0, siano :
TR2 = conduttore E TR1 = interdetto, e la capacità C2 si trova carica alla tensione
VC0 = Ec – Vbe saturazione 2 con polarità come da figura a lato
18
Nell’istante t0 (si è tenuto conto della corrente inversa ICB0 che circola nel TR2 in stato di OFF),
C2 tende a caricarsi con polarità opposta alla carica precedentemente acquistata.
N.B. : Ec = V CE
saturazione
+ VBE saturazione
Per Transistors al Silicio, abbiamo VCE = 0,3 Volt
VBE = 0,7 Volt
Per cui, quando necessitano calcoli rigorosi si può ritenere che :
VB2 (to) = -EC
Da cui si conclude che, se in t0 è VB2 << 0 si avrà TR2 = OFF e poi, con una costante di tempo pari a
T = RB2 x C2 la tensione VB2 decresce dal suo valore negativo iniziale e per t = infinito
la VB2 tende al valore = EC
Però accade che nell’istante t = t1, la tensione VB2 raggiunga il valore di soglia VB2 ON, il quale porta
il TR2 in conduzione.
Tale valore di soglia è poco superiore a 0 Volt (= 0,5 per TR al silicio)
19
Se il tempo T1, utilizzando un TR al Silicio e trascurando il termine della formula generale RB x ICB0
e considerando che a temperatura ambiente possono essere trascurati
VCE satur. = 0,3 V - VBE satur. = 0,7 V
- Vb ON = 0,5V
che sono insignificanti rispetto a E C
Si ha :
T1 = RB2 x C2 x loge 2 = 0,69 x RB2 x C2
T2 = 0,69 x RB1 x C1
20
Circuito MV Astabile con NE555 realizzato sulla scheda :
-----------------------------------------------------------
MV Bistabile (Flip Flop) :
Trova largo impiego nei circuiti logici, ed a seconda di come vengono utilizzati i loro ingressi (in corrente
continua ed in corrente alternata), possono servire come elementi di memoria e di conteggio.
Questo MV deriva il suo nome dal fatto che possiede due stati STABILI corrispondenti alle condizioni in
cui un transistor è in conduzione e l’altro è in interdizione.
La commutazione tra i due stati può avvenire tramite un impulso esterno di comando, chiamato
comunemente “trigger”.
N.B. : Nel progetto di tale MV bisogna calcolare i valori del circuito che assicurino il cambiamento di
stato.
Affinché TR2 = ON (saturazione) occorre che la corrente di base IB2 sia superiore, o almeno pari,
a IC sat / hfe min
21
IB2 magg. o uguale IC sat / hfe min
dove :
hfe min è il minimo valore di coefficiente di amplificazione di corrente del transistor in regione attiva.
Affinché TR1 = OFF è necessario che la tensione VB1, essendo il transistor NPN, sia negativa e che sia
inferiore o, al limite, uguale alla tensione di interdizione -VBE OFF
Temperatura : il calcolo della formula, di cui sopra, deve essere fatto mettendosi nelle peggiori
condizioni, cioè deve tener conto delle variazioni dei parametri del transistor. Gli effetti della temperatura
sulle resistenze sono trascurabili, mentre debbono essere considerati per i Transistor.
Per questi, alle temperature limite, si hanno le seguenti condizioni :
Bassa temperatura
VBE ON = MAX
hfe = Minimo
VCE sat = Minimo
Alta temperatura
ICB0 = Max
VCE sat. = MAX
Questi valori Max e Minimi si ricavano dal foglio delle caratteristiche dei Tansistors.
Si deduce che le peggiori condizioni di commutazione, dalla interdizione alla conduzione, si vengono ad
avere alle Basse Temperature, mentre alle Alte Temperature si hanno le peggiori condizioni di
commutazione dalla conduzione all’interdizione.
Tempo di commutazione : è l’intervallo durante il quale la conduzione si trasferisce da un Transistor
all’altro.
Condensatori di speed-up : Sono C = 1 e C2 che riducono di molto il tempo di commutazione
Tempo risolutivo : è l’intervallo di tempo minimo che possono avere i due impulsi di comando esterno
affinché il secondo impulso sia capace di indurre una nuova commutazione al bistabile.
Se C1 e C2 si aumentano troppo, può peggiorare il Tempo risolutivo.
L’inverso del Tempo risolutivo determina la massima frequenza del F.F.
22
Tempo di carica e scarica di C1 e C2 : Sia TR1 = ON e TR2 = OFF (interdetto)
C1 risulta carico all’incirca al valore Ec
C2 risulta carico all’incirca alla tensione VB2
Se un impulso di comando esterno (Trigger) provoca la commutazione, C1 si scarica dal valore Ec
al valore VB1, mentre C2 si carica dal valore VB2 al valore EC.
Il tempo necessario per questa carica e scarica stabilisce così l’intervallo che si deve avere affinché il
bistabile si porti nelle condizioni stazionarie definitive del nuovo stato.
Quindi, se C1 e C2
aumentano
diminuisce il Tempo di commutazione
peggiora il Tempo risolutivo
perché aumenta il tempo di carica e scarica.
Quindi, stabilito che un Tempo risolutivo Δ Tr’ deve essere :
Rk x C < Δ Tr’
Storage Time :
Un limite alla frequenza massima di funzionamento è imposto anche dalle cariche immagazzinate nella
base dei Transistor saturati e determina lo Storage Time (Tempo di immagazzinamento).
Siccome occorre del tempo per spazzar via le cariche, la velocità di funzionamento ne risulta limitata.
Questo valore dovrebbe essere all’incirca :
CK = K x QS / EC
dove :
QS = carica immagazzinata dalla base, necessaria alla saturazione del Transistor
K = fattore empirico di sicurezza il cui valore va da 1,5 a 2.
23
Circuito bistabile con SN7400N realizzato su scheda :
MV Monostabile :
Analizziamo un MV Monostabile con accoppiamento di emittore (ne esistono altri tipi)
I MV Monostabili sono caratterizzati da uno stato stabile di funzionamento, in cui il Transistor è
normalmente conduttore e l’altro interdetto.
Mediante un impulso di comando esterno, il circuito passa in uno stato metastabile con gli stati dei due
Transistors commutati fra di loro.
La durata di questo dipende dalle caratteristiche dei componenti del circuito.
Nello schema sopra, il TR2 è normalmente saturato ed il TR1 interdetto.
Quando un impulso positivo di Trigger (comando esterno), di livello appropriato, viene applicato alla
base di TR1, questo si satura e l’impulso negativo che si genera sul suo collettore, si trasmette tramite C
sulla base di TR2 portando quest’ultimo all’interdizione.
Però questa posizione non è stabile, in quanto la capacità C tende a scaricarsi, attraverso R,
24
dal valore –Ec al valore +EC riportando il circuito nello stato originario, con TR2 saturato e TR1
interdetto.
Il tempo intercorso fra lo stato di TR1 saturato e TR2 interdetto definisce il periodo del MV Monostabile.
Regime statico (assenza di comando esterno) :
TR1 = interdetto
TR2 = saturazione
e, affinché sia TR2 in saturazione, deve essere :
E, se si tiene conto che generalmente si ha : RC2 >> RE ed Ec x RC2 << (Rc2 x VBE sat2 - RE x VCE sat2),
si potrà trovare una relazione tra RC2, R ed hFE min.
R < Rc2 x hfe min
È la condizione che assicura lo stato di saturazione di TR2
La tensione di saturazione tra collettore e massa di TR2 è :
VCE sat = VCE sat2 + IC2 x RE
dove :
IC2 = EC - VCE sat2 / RC2
Lo stato di interdizione di TR1 : si ha se la tensione VE (dovuta alla corrente di saturazione di TR2
passante per RE), è :
Regime dinamico :
Naturalmente la capacità C è caricata alla tensione EC - VB2 sat.
Quando si comanda il MV dall’esterno con un impulso positivo di appropriata ampiezza ed applicato alla
base del TR1 , quest’ultimo si satura.
Sul suo collettore si genera un corrispondente impulso negativo che, trasmesso attraverso C alla base del
TR2, porta quest’ultimo all’interdizione.
25
La tensione base - massa si porta al valore - (EC - VBE sat).
Questa posizione però non è stabile, in quanto la capacità C tende a scaricarsi, attraverso R, al valore
EC.
Sicché la tensione VB2 , dal valore – (EC – VB2 sat) tende esponenzialmente al valore EC.
Ma quando essa raggiunge il valore (RE x IE sat + VBE sat2) sia ha commutazione TR2 = saturato
e TR1 = interdetto.
Si nota che IE sat1 è la corrente di saturazione di emittore di TR1.
Affinché TR1 = saturazione su comando Trigger, sarà :
IB1 > IB1 sat
IB1sat
= IC1 sat /
hfe min
IC1 sat = EC / Rc1
Calcolo di RC1 ed Rc2 : I collettore di 2N744 = 10 mA e se Ec > VCE sat + Ic x RE
Se avrò RC1 = Rc2 = 12V / 10 mA = 1,2 K
Calcolo di R :
R < RC2 x hFE min
Calcolo di RE :
deve essere sufficientemente grande per garantire la interdizione di TR1.
In genere sarà RE x IE = 0,5 V
Sicché : RE = 0,5 V / 10 mA = 50 ohm
Calcolo di C :
EC < BVEB0, però l’effettivo valore della tensione di rottura emittore – base
è, nel nostro caso :
BV’EB02 = BVEB02 - VE + VB2 sat = 6,3 – 0,5 + 1,6 = 7,4 V
da cui si ha :
e se T = 80 u sec
da cui
R < 24 K ohm, cioè R = 15 K ohm
T = 0,48 x Rc
si ha
C = T / 0,48 x R = 0,011 uF = 0,01 uF
26
Circuito Monostabile con SN74121 realizzato su scheda :
Ricapitolando :
Il MV Monostabile (One Shot) è un circuito analogico che, ricevendo un impulso in ingresso (Go),
presenta in uscita un impulso di lunghezza variabile.
La durata dell’impulso in uscita non è però dipendente da quella in ingresso, bensì da due componenti :
Condensatore e Resistenza.
I Monostabili sono pertanto utili allorché si debba allungare la durata di un impulso come, ad esempio,
quello di Reset o un’interruzione.
Essendo però esso un circuito analogico, non è molto protetto contro i disturbi, poiché è sensibile al
rumore della alimentazione. Presenta inoltre problemi di disaccoppiamento.
27
Scheda Memories
R1
R2
R3 – R 10
IC1 – IC4
IC2 - IC3
IC5
SW1
LD1
Sw2
= 1,1 K ohm
= 220 K ohm
= 5,1 K ohm
= SN74LS244N
= 2114 (RAM)
= 2716 (EPROM)
= deviatore
= led rosso 10 mA
= 8 micro switsches
Le memorie sono dei dispositive nei quali si può introdurre un Dato (informazione) per poi poterlo
riprendere all’occorrenza.
Esistono memorie che sanno ritenere questi Dati anche quando è stata loro tolta la tensione di
alimentazione, o che possono essere lette.
E ne esistono altre che possono essere lette e riscritte innumerevoli volte o che perdono le informazioni
allorché viene loro tolta la tensione di alimentazione.
Distinguiamo i vari tipi :
RAM :
Random Access Memory = Memoria ad accesso casuale
È questa una memoria a lettura e scrittura, ma che perde i Dati allorché le si toglie la
alimentazione.
ROM :
Read Only Memory = Memoria a sola lettura.
È questa appunto la memoria che contiene dei Dati che possono essere letti e che vi sono
stati introdotti con dispositivi particolari. Essa ritiene le informazioni quando le viene tolta
l’alimentazione.
PROM :
Programmable Read Only Memory
Ovvero è una memoria a sola lettura, ma programmabile anche dall’utente con una tecnica
simile alla bruciatura di un fusibile.
Un bit è infatti programmato facendo saltare un microscopico fusibile.
EPROM :
Anche questa è una memoria Programmabile a sola lettura in cui i dati vengono scritti con
la tecnica di accumulo delle cariche. Questi Dati possono però essere cancellati esponendo
il componente, per circa 15 minuti, ai raggi ultravioletti e quindi ricodificati.
28
Essa è cancellabile anche elettricamente per cui può essere impiegata come RAM, ma
sono necessari più di 100 msec per cancellare la codifica, per cui potrebbe essere utilizzata
come memoria tampone (scratch pad) per calcoli o manipolazione di Dati.
Vediamo ora la costituzione interna di una ROM.
Essa è del tipo matriciale, ovvero un’informazione (nel disegno un quadretto) è raggiungibile attraverso
l’incrocio di una riga con una colonna.
Questo quadretto è raggiunto codificando opportunamente i bit di indirizzamento.
Come abbiamo imparato dallo studio del sistema binario, se disponiamo di 10 bit, la loro combinazione
massima è pari a 1024 per cui, se un Package dispone di 10 piedini di indirizzamento, essi
indirizzeranno 25 = 32 righe e 25 = 32 colonne, da cui :
32 x 32 = 1024 che sono le possibili posizioni di Memoria.
Vedere nella pagina seguente :
29
A0 - A4 = 5 bit che permettono di indirizzare 32 righe (25 = 32)
A5 - A9 = 5 bit che permettono di indirizzare 32 colonne (25 = 32)
Q1 - Q8 = 8 bit di uscita (uno per ogni Package), relativi all’indirizzamento, righe – colonne, selezionato
per ogni Package
30
Il disegno della pagina precedente rappresenta 8 chip di ROM che hanno le linee di indirizzamento in
parallelo fra loro.
Ciò significa che un indirizzo seleziona il medesimo “cubetto” negli 8 chip
Ogni chip ha poi una propria uscita Q1 -> Q8 che può essere diversa dalle altre, a seconda del Dato che
era immagazzinato nel cubetto dei 10 bit che lo hanno indirizzato.
Così, ad esempio, se volessimo leggere il Dato che è immagazzinato negli 8 cubetti indirizzati in “A”
(vedi figura), l’indirizzamento sarà così effettuato :
20 21 22 23 24
A0 A1 A2 A3 A4
0
1 0
1
0
---------------------------righe
20 21 22 23 24
A5 A6 A7 A8 A9
0
0
0
1 0
--------------------------colonne
riga --------- 23 = 8
riga ---------- 21 = 2
da cui
8 + 2 = 10
colonna ------- 23 = 8
da cui
8
pesi
indirizzi
valore dei bit di indirizzo
L’intersecazione della riga 10 con la colonna 8 in ogni Package seleziona il cubetto indirizzato ed il
relativo Dato si presenterà sull’uscita Q di ogni chip.
Se invece volessimo leggere i dati registrati nel cubetto “B” :
essendo esso a riga 32 ed a colonna 20, l’indirizzo sarà così composto :
1
A0
0
2
A1
0
4
A2
1
8 16
A3 A4
0
1
1
A5
1
2
A6
1
4
A7
1
8 16
A8 A9
1
1
pesi
linee di indirizzamento
bit di indirizzo
I Dati contenuti nei cubetti contrassegnati dai puntini e che hanno avuto il medesimo indirizzamento, si
presenteranno alle uscite Q1 -- Q8 e costituiranno il DATO letto (WORD).
Poiché ogni Package ha una sola uscita, esso si dirà : a Parallelismo 1.
Il Parallelismo è 8 se invece è tutto contenuto in un unico chip, per cui esso avrà 8 uscite.
Lo stesso discorso lo si può fare anche per una RAM, con la differenza che i Dati tra Q1 -- Q8,
una volta saranno Dati in uscita (e quindi letti), ed una volta in ingresso (e quindi scritti) e ciò sarà
stabilito da un altro piedino del Package che ad esempio, allorché avrà valore 1 significherà che si è in
Lettura, e quando avrà valore 0, si sarà in Scrittura.
Ricapitolando :
Si voglia registrare l’istruzione esadecimale 67 ad indirizzo 100 di una zona di memoria :
Il 67 esadecimale equivale a :
b7 b6 b5 b4
b3 b2 b1 b0
0 1
1 0
0 1 1 1
Per cui ognuno di questi bit verrà registrato nel relativo chip di RAM alla locazione di memoria (ovvero
indirizzo) 100 che sul Bus indirizzi avrà questa forma :
31
512
A9
256
A8
128
A7
64
A6
32
A5
---------------------------------------------------
0
colonne
0
0
1
1
16
8
4 2 1
A4 A3 A2 A1 A0
---------------------------righe
0
0
1
0 0
64 + 32 + 4 = 100
Inoltre il piedino WE del chip andrà a livello 0 in modo che la istruzione 67 possa essere registrata.
= Write Enable
La linea tracciata sulle due lettere significa che il segnale ha significato
quando è negativo, ovvero ha valore 0.
32
Analizziamo ora la parte della scheda di Memoria a Lettura – Scrittura.
La Memoria è una 4096 bit statica, organizzata (ogni chip) in 1024 Words di 4 bit per cui saranno
necessari 2 chip per avere 1024 parole di un Byte. La RAM statica, al contrario di quella dinamica, non
33
ha bisogno di un circuito di rinfresco esterno per mantenere in memoria i Dati scritti, poiché tale circuito
esiste nel chip 2114.
Operazione di Scrittura in Memoria :
SW1 su Write
Accensione del Led rosso
Apertura del Bus, del Bus Driver SN74LS244
Ovvero, i Dati selezionati dal Dip Switch della piastrina Binary collegata, entrano tra E0 – E7
Ed escono tra Q0 -- Q7 per andare sulle linee tra I/O 1 – 8 delle due ROM ed allocati all’indirizzo
selezionato dai micro switches di SW2.
Il 2° Bus Driver è sempre selezionato, sia in Read che in Write, ma serve a disaccoppiare la piastrina da
quella del Display, che altrimenti varierebbe l’intensità luminosa a seconda del valore dei Dati in ingresso
(chiusura a massa sulla Scheda Binary).
Sul Bus di Address vi sono 8 Resistenze di circa 5 K ohm con un capo ai + 5V.
Ciò evita la variazione, non desiderata degli indirizzi, se il relativo Switch non è stato selezionato (a
massa) per cui sarebbe rimasta volante la relativa linea di indirizzo.
Operazione di Lettura in Memoria :
SW1 su Read
Spegnimento de Led rosso
L’uscita del Bus Driver 1 viene scollegata dall’ingresso per cui i Dati indirizzati e letti sono quelli che vi
erano depositati in precedenza.
Memoria a sola lettura :
EPROM 2716 di 2 KByte
L’indirizzamento dei Dati viene fatto dalla Scheda Binary tramite il Bus A0 -- A7
34
35
Alimentatore in C. C.
I circuiti elettronici che necessitano di un’alimentazione in Corrente Continua (C. C.) possono prelevare
quest’ultima dalle pile (o dagli accumulatori) o da appositi dispositivi, gli Alimentatori, che ci accingiamo
ora a trattare.
Infatti, allorché l’utilizzatore ha un assorbimento di qualche decina di mA, è antieconomico ricorrere alla
pile.
Trasformatore :
È necessario per ridurre la Tensione di rete, e portarla ad un valore prossimo a quello che dovrà essere poi
l’alimentazione delle nostre schede.
La scelta del Trasformatore dovrà tenere conto dei seguenti
parametri :
V
V
Iu max
P
Esempio :
sia
alimentazione (primario)
uscita “alternata” (secondario)
corrente che assorbirà l’utilizzatore
Potenza del Trasformatore
Vx = 5V
Iu = 1 A
avremo :
P = V x x Iu
calcoliamo : 5 x 1 = 5
P = 5W
La Potenza di un trasformatore si misura in Watt (W), anche se sarebbe più giusto in VA avendo
il Trasformatore carattere reattivo.
Raddrizzamento della Tensione alternata :
VP
VS
VC
IC
=
=
=
=
Tensione Primario
Tensione Secondario
Tensione sul carico
Corrente nel carico
La relazione tra la VS e la VC è :
VS = 2,22 x VC
e la corrente :
IS = 1,57 x IC
La Potenza :
P = VS x Is = 2,22 x Vc x 1,57 x IC = 3,49 Vc x IC
36
Andamento della V e della I sul carico in un raddrizzamento a
mezz’onda.
Rendimento di conversione : esprime la frazione di Potenza erogata dal Trasformatore ed utilizzata dal
carico.
KU = VC x IC / VS x IS = 1 / 3,49 = 0,286
Il Rendimento di conversione da Alternata a Continua è abbastanza basso.
Infatti viene utilizzato circa il 20% dell’intera potenza VS x IS fornita dal Trasformatore.
Ad onda intera :
Tra la VS e la VC (la VS di ogni secondario) esiste la relazione :
VS = 1,11 x Vc
e la corrente
IS = 0,785 x Ic
per cui il secondario sarà dimensionato per la Potenza
P = 2 x VS’ x Is
da cui
KU = VC x IC / 2 x VS’ x IS
2 x 1,11 x VC x 0,785 x IC = 1,75 x VC x IC
= 1 / 1,75
= 0,572 = 58%
37
A Ponte di Graetz :
La relazione tra VS e VC
VS = 1,11 x VC
e la corrente :
IS = 1,11 x IC
E la Potenza che dovrà erogare il Trasformatore :
P = VS x I S
=
1,11 x VC x IC = 1,23 VC x IC
KU = VC x IC / VS x IS
=
1 / 1,23 = 0,81
80%
Filtraggio della Tensione raddrizzata :
Come si nota dalla forma d’onda dei tre sistemi precedenti, le forme d’onda sul carico hanno un
andamento pulsante ed un metodo per ridurre questa ondulazione è di disporre fra il Positivo ed il
Negativo dell’uscita, un Condensatore.
Questa entità di ondulazione che rimane, si chiama Ripple Factor (F) ed è definito come il rapporto fra il
valore efficace della Tensione Alternata ancora presente in uscita e la Tensione Continua (valor medio) in
uscita.
Per cui il Ripple = Residuo di Tensione Alternata presente nella Tensione Continua in uscita.
Con Condensatore presente :
F = 2,28 / CR
dove C è in uF
R è in K ohm
38
Esempio : se IC = 1 A
e VC = 20V
e C = 500 uF
F = 2,9 / CR = 2,9 / 500 x 0,020 = 0,29
sarà :
(senza condensatore sarebbe stato 0,48)
Scelta dei Diodi :
È bene che siano in grado di sostenere un valore di picco ripetitivo di corrente IFRM dato
dall’espressione :
IFRM = IC x 6,28 √ fRC
dove f = 50 Hz
e riprendendo l’esempio, sarà :
IFRM = 1 x 6,28 √ 50 x 20 x 500 uF
Resistenza interna :
= 1 x 6,28 x 0,7
= 4,39 A
è presente ai morsetti di uscita dell’ALI (RUf)
RUf = 1 / 4fC
In funzione di questa Resistenza si ha una maggiore o minore stabilità della Tensione ai capi del carico.
Al limite, se RUf fosse uguale a zero (Alimentatore ideale), la Tensione di uscita si manterrebbe costante
anche con carichi molto elevati. Per ottenere un RUf di 2 ohm si deve impiegare però un condensatore di
elevata capacità. Es. :
C = 1 / 4f x RUf
= 1 / 4 x 50 x 2
= 2500 uF
Ricapitolando :
l’introduzione del Condensatore di filtro riduce l’ondulazione (Ripple) e permette
di ottenere notevoli tensioni in uscita, ma presenta lo svantaggio di richiamare nei diodi notevoli correnti
impulsive.
A questo inconveniente si può ovviare ricorrendo alla stabilizzazione della Tensione d’uscita.
39
Ali con stabilizzatore di Tensione a 3 terminali :
C1 = 1000 uF elettrolitico
C1 - C2 = 0,1 uF (100 KpF) poliestere da saldare vicino ai terminali dello stabilizzatore.
Elimina componenti rumore in Alta Frequenza.
N.B. : In parallelo a C2, per migliorare la reiezione in alternata (Ripple rejection) ovvero inteso come
rapporto fra la Tensione efficace del Ripple in ingresso e la Tensione efficace del Ripple residuo presente
ai morsetti di uscita, può essere messo un altro condensatore di capacità da 1 a 25 uF, se al Tantalio, e
fino a 220 uF se elettrolitico normale.
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57