Ciao a tutti, sto studiando come realizzare in logica CMOS delle semplici funzioni e come dimensionarle in base ai vincoli imposti sui tempi di propagazione. Gli esempi sul mio testo di riferimento si fermano a spiegare come dimensionare i MOS in semplici porte NAND e NOR, ho però difficoltà con funzioni complesse. L'unico esempio che ho è questo, potete spiegarmi come ci si arriva a quel risultato e come dimensionare i vari MOS del circuito? Grazie in anticipo.
Funzione realizzata in logica CMOS + dimensionamento
Moderatori:
carloc,
g.schgor,
BrunoValente,
IsidoroKZ
5 messaggi
• Pagina 1 di 1
1
voti
Per quanto riguarda il dimensionamento, lascio la parola ad altri... per il design del circuito, puoi seguire delle semplici "regolette":
1 - Guarda i nMOS come interruttori: in stato alto (1) sono dei corto circuiti, in stato basso (0) dei circuiti aperti. Per i pMOS, puoi ragionare dualmente (ma di fatto, come vedrai dalle regole successive, per disegnare il circuito non ti servirà ri-analizzare la parte pMOS: sfrutteremo la proprietà di dualità per semplificare le cose)
2 - Per disegnare la parte nMOS:
- Se hai un AND, metti i transistor in serie (la "catena" di transistor condurrà solo se tutti saranno in stato 1, ottenendo di fatto "l'equivalente" di una funzione AND)
- Se hai un OR, metti i transistor in parallelo (stesso ragionamento appena visto per AND)
3 - Per disegnare la parte pMOS, trasforma le serie nMOS in paralleli e i paralleli nMOS in serie
Facciamo insieme l'esercizio che hai proposto (ricordando che le porte logiche costruite saranno in logica negativa, e quindi potremo "non curarci" del NOT che "grava" sulla nostra funzione logica):
-> Prima parentesi: ABC + DE. Ovvero, A in serie a B in serie a C, tutto in parallelo alla serie di D ed E.
-> Seconda parentesi: FG+H. Ragionando come sopra, abbiamo H in parallelo alla serie di F e G.
-> Uniamo le due parentesi: tra di loro c'è un AND. Dobbiamo pertanto mettere in serie i due circuiti ricavati.
-> Sviluppiamo la parte pMOS: come abbiamo visto sopra, basta trasformare le serie in paralleli e viceversa.
-> Uniamo le due parti, e otteniamo il circuito che volevamo:
1 - Guarda i nMOS come interruttori: in stato alto (1) sono dei corto circuiti, in stato basso (0) dei circuiti aperti. Per i pMOS, puoi ragionare dualmente (ma di fatto, come vedrai dalle regole successive, per disegnare il circuito non ti servirà ri-analizzare la parte pMOS: sfrutteremo la proprietà di dualità per semplificare le cose)
2 - Per disegnare la parte nMOS:
- Se hai un AND, metti i transistor in serie (la "catena" di transistor condurrà solo se tutti saranno in stato 1, ottenendo di fatto "l'equivalente" di una funzione AND)
- Se hai un OR, metti i transistor in parallelo (stesso ragionamento appena visto per AND)
3 - Per disegnare la parte pMOS, trasforma le serie nMOS in paralleli e i paralleli nMOS in serie
Facciamo insieme l'esercizio che hai proposto (ricordando che le porte logiche costruite saranno in logica negativa, e quindi potremo "non curarci" del NOT che "grava" sulla nostra funzione logica):
-> Prima parentesi: ABC + DE. Ovvero, A in serie a B in serie a C, tutto in parallelo alla serie di D ed E.
-> Seconda parentesi: FG+H. Ragionando come sopra, abbiamo H in parallelo alla serie di F e G.
-> Uniamo le due parentesi: tra di loro c'è un AND. Dobbiamo pertanto mettere in serie i due circuiti ricavati.
-> Sviluppiamo la parte pMOS: come abbiamo visto sopra, basta trasformare le serie in paralleli e viceversa.
-> Uniamo le due parti, e otteniamo il circuito che volevamo:
-

rugweri
5.948 2 8 13 - CRU - Account cancellato su Richiesta utente
- Messaggi: 1366
- Iscritto il: 25 nov 2016, 18:46
1
voti
DIMENSIONAMENTO
Allora ciò che si fa è fare in modo che il circuito nel caso peggiore, possa essere ricondotto ad un invertitore equivalente. Le cui generiche dimensioni di larghezza di canale sono Weq-n per i mosfet-n ed Weq-p per i mosfet-p.
Affinchè ciò sia possibile bisogna dimensionare i mosfet in maniera tale che la loro resistenza di conduzione nel caso peggiore sia la stessa dell'invertitore equivalente.
Per cui vediamo come ad esempio dimensionare sia il pull-down che il pull-up:
1- seleziono il cammino con il maggior numero di mosfet in serie (questo è il caso peggiore)
2- la loro Ron essendo collegati in serie dovrà essere Ron-eq/n, ma essendo Ron inversamente proporzionale ad W, possiamo altrettanto dire che la loro W dovrà essere Weq*n
3- dopodichè iterativamente seleziono i cammini meno peggiori, dimensionando le W proporzionalmente finché non si dimensionano tutti i mosfet.
Nel tuo caso il cammino peggiore è il cammino A-B-V-F-G che dovranno avere una Ron = Ron-eq/5, quindi W = Weq-n*5
Restano D-E-H , selezionando quindi il cammino D-E-F-G , le Ron di F e G sono Ron-eq/5 (insiemi sono 2/5 di Ron) per cui le Ron di D ed E saranno Req*(3/10), dunque W = Weq*(10/3).
Infine seleziono A-B-V-H, per cui la W di h sarà W = Weq-n*(5/2)
Nel tuo esempio Weq-n = W_1/5.
Per cui Wa = Wb = Wv = Wf = Wg = W_1.
Wd = We = W_1*(2/3)
Wh = W_1/2
Con lo stesso procedimento riesci a fare il pull-up, te lo lascio come esercizio.
Allora ciò che si fa è fare in modo che il circuito nel caso peggiore, possa essere ricondotto ad un invertitore equivalente. Le cui generiche dimensioni di larghezza di canale sono Weq-n per i mosfet-n ed Weq-p per i mosfet-p.
Affinchè ciò sia possibile bisogna dimensionare i mosfet in maniera tale che la loro resistenza di conduzione nel caso peggiore sia la stessa dell'invertitore equivalente.
Per cui vediamo come ad esempio dimensionare sia il pull-down che il pull-up:
1- seleziono il cammino con il maggior numero di mosfet in serie (questo è il caso peggiore)
2- la loro Ron essendo collegati in serie dovrà essere Ron-eq/n, ma essendo Ron inversamente proporzionale ad W, possiamo altrettanto dire che la loro W dovrà essere Weq*n
3- dopodichè iterativamente seleziono i cammini meno peggiori, dimensionando le W proporzionalmente finché non si dimensionano tutti i mosfet.
Nel tuo caso il cammino peggiore è il cammino A-B-V-F-G che dovranno avere una Ron = Ron-eq/5, quindi W = Weq-n*5
Restano D-E-H , selezionando quindi il cammino D-E-F-G , le Ron di F e G sono Ron-eq/5 (insiemi sono 2/5 di Ron) per cui le Ron di D ed E saranno Req*(3/10), dunque W = Weq*(10/3).
Infine seleziono A-B-V-H, per cui la W di h sarà W = Weq-n*(5/2)
Nel tuo esempio Weq-n = W_1/5.
Per cui Wa = Wb = Wv = Wf = Wg = W_1.
Wd = We = W_1*(2/3)
Wh = W_1/2
Con lo stesso procedimento riesci a fare il pull-up, te lo lascio come esercizio.
-

Riccardo15
10 2 - Messaggi: 6
- Iscritto il: 3 set 2016, 9:20
0
voti
Riccardo15 ha scritto:DIMENSIONAMENTO
Restano D-E-H , selezionando quindi il cammino D-E-F-G , le Ron di F e G sono Ron-eq/5 (insiemi sono 2/5 di Ron) per cui le Ron di D ed E saranno Req*(3/10), dunque W = Weq*(10/3).
Innanzitutto grazie ad entrambi per le risposte, tutto chiaro.
Sul circuito al posto della V ci dovrebbe essere una C e al posto della E più in basso una F, pardon
Tornando al problema del dimensionamento io mi sono bloccato al punto in cui ho quotato. Allora ok che le resistenze a sinistra vengono ridimensionate Ron-eq/5 ma poi perché D ed E req*(3/10)?
-

djanthony93
10 2 - Messaggi: 24
- Iscritto il: 26 gen 2017, 0:15
1
voti
Come ti ho detto in precedenza si seleziona di volta in volta i cammini con il numero maggiore di mosfet in serie (in senso decrescente).
Quindi dopo A-B-V-F-G (5 mosfet), selezioniamo D-E-F-G per dimensionare anche D ed E.
Ora la Ron di questo percorso deve essere ancora una volta uguale a quella dell'invertitore equivalente (Ron-eq).
Non possiamo considerare Ron-eq/4 per D e per E, in quanto abbiamo già dimensionato quelle di F e G ad Ron-eq/5.
Quindi la loro somma non darebbe Ron-eq se seguissimo tale strada ma (9/10)*Ron-eq.
Per cui la Ron di F e G dovrà essere Ron-eq*(3/10). (o alternativamente 1,5/5) Infatti:
Ron-F + Ron-G + Ron-D + Ron-E = Ron-eq*( 3/10 + 3/10 + 1/5 + 1/5) = Ron-eq.
Quindi in conclusione la somma delle resistenze di conduzione del percorso deve sempre dare Ron-eq.
Quindi dopo A-B-V-F-G (5 mosfet), selezioniamo D-E-F-G per dimensionare anche D ed E.
Ora la Ron di questo percorso deve essere ancora una volta uguale a quella dell'invertitore equivalente (Ron-eq).
Non possiamo considerare Ron-eq/4 per D e per E, in quanto abbiamo già dimensionato quelle di F e G ad Ron-eq/5.
Quindi la loro somma non darebbe Ron-eq se seguissimo tale strada ma (9/10)*Ron-eq.
Per cui la Ron di F e G dovrà essere Ron-eq*(3/10). (o alternativamente 1,5/5) Infatti:
Ron-F + Ron-G + Ron-D + Ron-E = Ron-eq*( 3/10 + 3/10 + 1/5 + 1/5) = Ron-eq.
Quindi in conclusione la somma delle resistenze di conduzione del percorso deve sempre dare Ron-eq.
-

Riccardo15
10 2 - Messaggi: 6
- Iscritto il: 3 set 2016, 9:20
5 messaggi
• Pagina 1 di 1
Chi c’è in linea
Visitano il forum: Nessuno e 48 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)




