2.1 Carga: Passiva vs Ativa
É comum em cursos introdutórios de Eletrônica começar-se com amplificadores simples, isto é, amplificadores com apenas um transistor. Importante dizer que apenas um transistor amplificador, não um transistor ao todo. Esse amplificador além de ter apenas um transistor também tinha um resistor como carga. Também é comum que se use um divisor resistivo para fornecer a tensão de polarização na entrada do amplificador. E, por fim, também é comum esse use capacitores para acoplar o circuito a fonte de sinal e à carga a qual alimentará.
O interesse aqui é que façamos um “enxugamento” do circuito: não mais usaremos os capacitores de acoplamento e faremos a substituição da carga resistiva por um transistor. Sim, usaremos um transistor como carga no lugar de um resistor. A motivação principal para essas mudanças vendo fato de que componentes passivos são muito grandes dentro de um circuito integrado. Isto é, a área que ocupam é muito maior que a área ocupada por diversos transistores.
Outro motivo muito importante para a troca do resistor de carga por um transistor é aumentar o ganho do circuito mantendo ou diminuindo pouco a faixa de passagem. Com a utilização de um transistor como carga também pode-se fazer um controle maior das impedâncias de entrada e saída do amplificador. Como já visto em cursos anteriores os transistores são componentes ativos e, por isso, chamaremos de carga ativa o transistor que substituirá o resistor como carga do amplificador.
O exemplo a seguir ilustra a diferença no comportamento de um amplificador simples com uma carga resistiva e com uma carga ativa. No exemplo temos um transistor amplificador em NMOS na configuração fonte comum. As Figuras 2.1 e 2.2 contêm o esquemático de cada um dos tipos de amplificador. Nos dois casos os transistores amplificadores terão o mesmo tamanho e serão submetidos a mesma tensão de polarização de porta. A mesma tensão dreno-fonte, VDS (VDD), será aplicada em ambos os circuitos. Como é apenas um exemplo ilustrativo a preocupação com dissipação térmica e densidade de corrente nos dispositivos não será observada aqui. O transistor amplificador possui L=0,6 μm e W=48 μm está polarizado com VGS=0,794 V.

Figura 2.1: Amplificador fonte comum NMOS com carga resistiva.

Figura 2.2: Amplificador fonte comum NMOS com carga ativa.
Importante notar que como transistor de carga, M2 precisa de uma tensão de polarização também (VB). Mais à frente veremos que o transistor nessa condição está operando como uma fonte de corrente. Para que a comparação seja feita, dois códigos de simulação8 foram elaborados e os resultados estão nas Figuras 2.3 a 2.11. As simulações usadas no exemplo estão após os resultados. A primeira simulação se refere a um amplificador com carga resistiva em que apenas a carga RD será variada em torno de 70 kΩ (40−100 kΩ) para que possamos avaliar a evolução do ganho do amplificador em função da carga. Ou seja, com a exceção da carga, todas as demais condições influentes no circuito serão mantidas constantes: polarização de porta, tensão de alimentação, temperatura de operação e o tamanho do dispositivo. Os resultados selecionados se referem a: ganho, corrente dreno-fonte, transcondutância e resistência de saída do transistor amplificador.
Conforme já esperado com o aumento da resistência de carga a corrente irá cair e com ela também a transcondutância. Como o ganho é diretamente proporcional à resistência de carga e à transcondutância, o aumento de um provoca a diminuição do outro e a curva de ganho é tal como se pode ver na Figura 2.3. Era esperado que ro também aumentasse com a diminuição de IDS, contudo, a tensão VDS também diminui (maior queda de tensão em ro), mantendo a tendência de queda em ro. O ganho final para RD=70 kΩ foi |AvR|=57,9 V/V. Lembrando que o ganho de um fonte comum é aproximado por:
Avfc = −gm(ro1||RD)

Figura 2.3: Ganho - fonte comum NMOS com carga resistiva.

Figura 2.4: IDS - fonte comum NMOS com carga resistiva.

Figura 2.5: gm - fonte comum NMOS com carga resistiva.

Figura 2.6: ro - fonte comum NMOS com carga resistiva.
Continuando o exemplo temos o amplificador com carga ativa e, com ele, percebemos que o transistor consegue trabalhar como fonte de corrente mantendo-a no circuito enquanto provê uma impedância de saída muito alta. E, por causa disso, o amplificador com carga ativa consegue atingir ganhos maiores com o mesmo transistor amplificador nas mesmas condições de polarização. É fato que o ganho maior depende de uma escolha adequada para o comprimento (L) e a largura (W) do transistor de carga ativa (VB). Outra questão que aparece com a carga ativa é que agora é necessário que se tenha uma fonte adicional para polarização do transistor de carga. E, além da necessidade de implementação de uma segunda fonte de polarização é preciso também um trabalho adicional para ajuste dessa tensão de polarização. Contudo, os resultados obtidos valem o esforço: o ganho final do amplificador com carga ativa foi |AvCA|=271,1 V/V. Nesse momento não analisaremos outras figuras de mérito de interesse: impedâncias de entrada/saída, faixa de passagem, frequência de ganho unitário e tensão de flutuação CC na saída, por exemplo.
Importante ressaltar que o valor da resistência de saída do transistor de carga ativa, ro2≈750 kΩ é muito maior do que os 70 kΩ do amplificador com carga resistiva, o que pode ser verificado na Figura 2.11. E esses valores são alcançados com a corrente e transcondutância em valores muito próximos tanto no caso quanto no outro. Essa é a evidência definitiva de que o transistor atuando como fonte de corrente mantém a transcondutância enquanto provê uma resistência de saída maior. Lembrando do ganho do fonte comum na Equação (2.1), trocando-se RD por ro2, mantendo-se a transcondutância em valores muito próximos, fechamos a explicação de por que o ganho com carga ativa é maior que obtido com carga resistiva.
Nas seções seguintes os detalhes do transistor funcionando como fonte de corrente serão fornecidos, principalmente na análise de pequenos sinais. Para finalizar, dentro da faixa de variação das cargas respectivamente para cada amplificador, traçou-se um histograma para o ganho em cada caso. Ambos os histogramas estão na Figura 2.7.
Figura 2.7: Histogramas para o ganho: carga passiva e carga ativa.
Os histogramas foram traçados a partir dos mesmos dados de simulação que geraram os gráficos das Figuras 2.3 e 2.8. Isto é, a Figura 2.7 é apenas uma forma diferente de se verificar os dados mostrados. E, de uma maneira clara, percebe-se as possibilidades de ganho para cada caso, lembrando que o transistor amplificador e a polarização são os mesmos, apenas a carga foi mudada.

Figura 2.8: Ganho - fonte comum NMOS com carga ativa.

Figura 2.9: IDS - fonte comum NMOS com carga ativa.

Figura 2.10: gm - fonte comum NMOS com carga ativa.

Figura 2.11: ro - fonte comum NMOS com carga ativa.
2.1.1 Código de Simulação: fonte comum com carga resistiva
Código de simulação do fonte comum com carga resistiva, para NGSpice, usado para obtenção dos resultdos mostrados no exemplo anterior.
*** Fonte Comum com carga resistiva
*** Estudo preliminar para comparacao
*** com o FC com carga ativa
.global gnd vdd vss
.options savecurrents
.options filetype=ascii
.options wnflag=1
.options numdgt=10
.options measdgt=10
*** Circuito completo do Amplificador
** Transistor amplificador: nome dreno porta fonte corpo modelo L= W=
0.6u W=48u
M1 vo vin gnd gnd N_1u L=** Resistor no coletor, com valor de resistencia dado pela variavel .param rd=70k
Rd vdd vo {rd}
*** Definicao de parametros e inclusao de arquivos
.include "..\..\modelos\cmosedu_models.txt" ; precisa ser modificado para o seu computador
.param offset=0.794 ; flutuacao continua da senoide de entrada
.param amp=1m ; define a amplitude da senoide de entrada
.param rd=70k ;define o valor da carga resistiva
.param vd=5 ;valor de Vdd
*** Definicao das fontes do circuito
** Fonte CC de alimentacao do circuito
vdd vdd gnd dc {vd}** Fonte de sinal aplicada a entrada
1
v1 vin gnd sine ({offset} {amp} 10k) AC
.end
.control
set color0=white ; cor de fundo dos graficos = branco
set color1=black ; cor da grade dos graficos = preto
let start=40k100.5k
let stop=0.5k
let passo=
let total=(stop-start)/passo
let resistencia=start0
let i=
let ganho = unitvec(total)
let rd = unitvec(total)
let vom = unitvec(total)
let gm = unitvec(total)
let ro = unitvec(total)
let rt = unitvec(total)
let id = unitvec(total)
* Cria arquivo para armazenar os dados
.txt
echo rd ganho gm ro id vom > fc_nmos_res_cmosedu
while resistencia <= stop* Altera o valor de Rd no circuito
*alter rd resistencia ;ou alternativamente
alter @rd[resistance] = resistencia0.1u 0.4m ; executa a analise transitoria
tran
meas tran vo_medio avg v(vo) from=50u to=150u ; mede valor medio na saida
meas tran vopp pp v(vo) from=50u to=150u ; mede pico-a-pico na saida
meas tran vipp pp v(vin) from=50u to=150u ; mede pico-a-pico na entrada
meas tran id_medio avg @m1[id] from=50u to=150u ; mede valor medio da corrente dreno-fonte
let g=vopp/vipp ; calculo do ganho dessa rodada de simulacao $&g ; armazena ganho no vetor
let ganho[i]=
let gm1 = @m1[gm] ; transcondutancia dessa rodada$&gm1 ; armazena transcondutancia dessa rodada
let gm[i] = 1/@m1[gds] ; resistencia de saida dessa rodada
let ro1 = $&ro1 ; armazena resistencia de saida dessa rodada
let ro[i] = $&id_medio ; armazena corrente dreno-fonte dessa rodada
let id[i] = $&vo_medio ; armazena o valor medio de saida da rodada
let vom[i]=$&resistencia ; armazena o valor da resistencia da rodada
let rd[i]=$&resistencia*$&ro1/($&resistencia+$&ro1) ; calcula a resistencia de saida do amplificador
let rt[i]=
* Incrementa o arquivo com os dados da rodada
$&resistencia $&g $&gm1 $&ro1 $&id_medio $&vo_medio >> fc_nmos_res_cmosedu.txt
echo
* Incrementa a rodada e continua
1
let i = i +
let resistencia = resistencia + passo
end
plot ganho vs rd
plot ro vs rd
plot gm vs rd
plot id vs rd
plot vom vs rd*rt vs rd
plot ganho vs rd gm
** Exportar os graficos para arquivo
1 ; ajusta fundo branco para figuras salvas
set hcopypscolor=* Salva em formato EPS os graficos gerados
* observe que apos nome do arquivo a chamada e identica
* a chamada anterior com o comando 'plot'
.eps ganho vs rd
hardcopy fc_nmos_res_ganho_vs_rd.eps ro vs rd
hardcopy fc_nmos_res_ro_vs_rd.eps gm vs rd
hardcopy fc_nmos_res_gm_vs_rd.eps id vs rd
hardcopy fc_nmos_res_id_vs_rd.eps ganho vs rd gm*rt vs rd
hardcopy fc_nmos_res_compara_ganhos.eps vom vs rd
hardcopy fc_nmos_ca_vom_vs_rd
* Mostra as variaveis calculadas
display
.endc
2.1.2 Código de Simulação: fonte comum com carga ativa
Código de simulação do fonte comum com carga ativa, para NGSpice, usado para obtenção dos resultdos mostrados no exemplo anterior.
*** Fonte Comum com carga resistiva
*** Estudo preliminar para comparacao
*** com o FC com carga ativa
.global gnd vdd vss
.options savecurrents
.options filetype=ascii
.options wnflag=1
.options numdgt=10
.options measdgt=10
*** Circuito completo do Amplificador
** Transistor amplificador: nome dreno porta fonte corpo modelo L= W=
0.6u W=48u
M1 vo vin gnd gnd N_1u L=** Transistor de carga ativa
2.4u W=24u ;L=1.0u W=12u
M2 vo vb vdd vdd P_1u L=
*** Definicao de parametros e inclusao de arquivos
.include "..\..\modelos\cmosedu_models.txt" ; precisa ser modificado para o seu computador
.param offset=0.794 ; flutuacao continua da senoide de entrada
.param amp=1m ; define a amplitude da senoide de entrada
.param vd=5 ;valor de Vdd
.param vb=3.443 ; polarizacao da carga ativa para ganho maximo
*** Definicao das fontes do circuito
** Fonte CC de alimentacao do circuito
vdd vdd gnd dc {vd}** Fonte de sinal aplicada a entrada
1
v1 vin gnd sine ({offset} {amp} 10k) AC ** Fonte CC para polarizacao da carga ativa
vb vb gnd dc {vb}.end
.control
set color0=white ; cor de fundo dos graficos = branco
set color1=black ; cor da grade dos graficos = preto
3.4 ; 3.4
let start=3.61 ; 3.601
let stop=
let passo=10m
let total=(stop-start)/passo
let bias=start0
let i=
let vbias = unitvec(total)
let ganho = unitvec(total)
let vom = unitvec(total)
let gm = unitvec(total)
let ron = unitvec(total)
let rop = unitvec(total)
let rt = unitvec(total)
let id = unitvec(total)
let vdsatn = unitvec(total)
let vdsatp = unitvec(total)
let vgsn = unitvec(total)
let vgsp = unitvec(total)
* Cria arquivo para armazenar os dados
.txt
echo vb ganho gm ro1 ro2 id vom > fc_nmos_ca_cmosedu
while bias <= stop* Altera a tensao de polarizacao e simula
alter @vb[dc] = bias0.1u 0.4m ; executa a analise transitoria
tran
meas tran vo_medio avg v(vo) from=50u to=150u ; mede valor medio na saida
meas tran vopp pp v(vo) from=50u to=150u ; mede pico-a-pico na saida
meas tran vipp pp v(vin) from=50u to=150u ; mede pico-a-pico na entrada
meas tran id_medio avg @m1[id] from=50u to=150u ; mede valor medio da corrente dreno-fonte
let g=vopp/vipp ; calculo do ganho dessa rodada de simulacao $&g ; armazena ganho no vetor
let ganho[i]=
let gm1 = @m1[gm] ; transcondutancia dessa rodada$&gm1 ; armazena transcondutancia dessa rodada
let gm[i] = 1/@m1[gds] ; resistencia de saida NMOS dessa rodada
let roa = $&roa ; armazena resistencia de saida NMOS dessa rodada
let ron[i] = 1/@m2[gds] ; resistencia de saida PMOS dessa rodada
let rob = $&rob ; armazena resistencia de saida PMOS dessa rodada
let rop[i] = $&id_medio ; armazena corrente dreno-fonte dessa rodada
let id[i] = $&vo_medio ; armazena o valor medio de saida da rodada
let vom[i]=$&roa*$&rob/($&roa+$&rob) ; calcula a resistencia de saida do amplificador
let rt[i]=
let vdsatn[i] = @m1[vdsat] ; armazena tensao de saturacao NMOS dessa rodada
let vdsatp[i] = @m2[vdsat] ; armazena tensao de saturacao NMOS dessa rodada$&bias ; armazena o valor da polarizacao dessa rodada da carga ativa
let vbias[i]=
* Incrementa o arquivo com os dados da rodada
$&bias $&g $&gm1 $&roa $&rob $&id_medio $&vo_medio >> fc_nmos_ca_cmosedu.txt
echo
* Incrementa a rodada e continua
1
let i = i +
let bias = bias + passo
end
plot ganho vs vbias
plot ron vs vbias
plot rop vs vbias
plot ron vs vbias rop vs vbias ylog
plot gm vs vbias
plot id vs vbias
plot vom vs vbias
plot vdsatn vs vbias
plot vdsatp vs vbias*rt vs vbias
plot ganho vs vbias gm
** Exportar os graficos para arquivo
1 ; ajusta fundo branco para figuras salvas
set hcopypscolor=* Salva em formato EPS os graficos gerados
* observe que apos nome do arquivo a chamada e identica
* a chamada anterior com o comando 'plot'
.eps ganho vs vbias
hardcopy fc_nmos_ca_ganho_vs_vb.eps ron vs vbias
hardcopy fc_nmos_ca_ron_vs_vb.eps rop vs vbias
hardcopy fc_nmos_ca_rop_vs_vb.eps ron vs vbias rop vs vbias ylog
hardcopy fc_nmos_ca_ron_rop_vs_vb.eps gm vs vbias
hardcopy fc_nmos_ca_gm_vs_vb.eps id vs vbias
hardcopy fc_nmos_ca_id_vs_vb.eps ganho vs vbias gm*rt vs vbias
hardcopy fc_nmos_ca_compara_ganhos.eps vom vs vbias
hardcopy fc_nmos_ca_vom_vs_vb
* Mostra as variaveis calculadas
display
.endc