---
# System prepended metadata

title: Projeto de um amplificadodor diferencial em tecnologia CMOS
tags: [Eletrônica Analógica]

---

---
robots: noindex, nofollow
---

$$
\theta = 30\circ
$$

# Projeto de um amplificadodor diferencial em tecnologia CMOS

**Aluno: Maurício Taffarel**
**N=24**

O projeto deve ser realizado para uma tecnologia CMOS 130 nm, com dimensões mínimas $W_{min} = 0.16 \mu m$ e $L_{min} = 0.12 \mu m$ e com tensões de alimentação $V_{DD} = 0.6V$ e $V_{SS} = -0.6 V$.

Os parâmetros principais para utilização do modelo ACM nos cálculos manuais são listados abaixo:

<center>
    
| Parâmetro               |  Valor  |
|:----------------------- |:-------:|
| Tipo de amplificador    | Canal n |
| $A_{d0min} (dB)$        |  $28$   |
| $GBW_{min} (MHz)$       |  $150$  |
| Mínima $v_{OUTmáx} (V)$ | $0.20$  |
| Máxima $v_{OUTmin} (V)$ | $-0.20$ |
| Mínima $CMR+ (V)$       | $0.25$  |
| Máxima $CMR- (V)$       | $-0.25$ |
| $SR_{min} (V/\mu s)$    |  $40$   |
| $P_{DCmáx} (\mu W)$     |  $120$  |
| $C_L(pF)$               | $0.03$  |
    
</center>

A topologia do circuito utilizada está mostada a seguir:

<center>
    
![](https://i.imgur.com/dciLuCu.png)
    
</center>

## 1. Dimensionar o circuito seguindo a metodologia sugerida em classe

O dimensionamento foi realizado utilizando uma rotina criada no Octave pare o cálculo dos níveis de inversão e os valores requeridos. A saída do script (que pode ser utilizado como memorial de cálculo) está descrito a seguir:

```python
(i) Escolha dos L p calculo de VA1min e VA3min:
VAmin1 = 6.9343
VAmin3 = 8.9635

(ii) Calcular if1_max pela condição do ganho mínimo:
if1max = 58.018

(iii) Escolher if1 e obter if3max:
if1 = 11.604
f_if3_max = 11.430
if3max1 = 122.75

(iv) Encontrar outro valor de if3max:
if3max2 = 152.38

(v) Escolher if3
if3 = 85.927

(vi) Determinar um valor de if5máx:
if5max1 = 32.819

(vii) Determinar outro valor de if5máx:
if5max2 = 33.041

(viii) Escolher if5 e determinar o potencial VGG5:
if5 = 29.537
Vgg5 = -0.057643

(ix) Dimensionar divisor de tensao para Vgg5:
f_if6 = 5.0359
f_if7 = 8.9752
if6 = 29.395
if7 = 78.248
Id = 5.0000e-06
W6_L6 = 0.4813
W7_L7 = 1.2905
L6 = 0.3000
L7 = 0.2000
L7 = 0.2000
W6 = 0.1444
W7 = 0.2581
Idiv = 5.0000e-06

(x) Determinar um valor mínimo para IBIAS:
Ibiasmin1 = 6.5234e-05

(xi) Determinar outro valor mínimo para IBIAS:
Ibiasmin2 = 1.2000e-05

(xii) Determinar um valor máximo para IBIAS:
Ibiasmax = 9.5000e-05

(xiii) Escolher IBIAS
Ibias = 8.0117e-05

(xiv) Dimensionar os transistores
W1 = 1.9538e-05
W3 = 1.8831e-05
L5 = 1.0000e-06
W5 = 7.6756e-06
```

## 2. Simular o amplificador inicialmente com uma fonte de corrente ideal IBIAS substituindo a fonte ou sorvedor M5. 

> Verificar |Ad0| e GBW na simulação de pequenos sinais. Se satisfatórios, passar para o item (3). 

Com os parâmetros dos transistores dimensionados, realiza-se a simulação usando o software LTSpice:

<center>
    
![](https://i.imgur.com/3a2yfiQ.png)

![](https://i.imgur.com/vzJBZ5o.png)

</center>

A simulação foi realizada para pequenos sinais variando de $100Hz$ a $100GHz$.

| Parâmetro               |  Valor  |
|:----------------------- |:-------:|
| Tipo de amplificador    | Canal n |
| $A_{d0min} (dB)$        |  $28$   |
| $GBW_{min} (MHz)$       |  $150$  |

![](https://i.imgur.com/WCMMLvL.png)

Podemos ver que o projeto apresenta resultados satisfatórios. Segue-se para o item 3.

## 3. Acrescentar M5 com dimensões e potencial VGG5 calculados para fornecer IBIAS do item (2). 

> Simular o ponto de operação e verificar a magnitude da corrente de dreno de M5. Caso diferente de IBIAS, ajustar as dimensões de M5 e/ou VGG5 empiricamente até que |ID5|= IBIAS.

Ajustes foram realizados em $V_{GG5}$ para obter o $I_{BIAS}$:

```
(xiii) Escolher IBIAS
Ibias = 8.0117e-05
```

![](https://i.imgur.com/zEpOaXx.png)

Foi necessário diminuir o nível de inversão.

|         Antes          |        Depois        |
|:----------------------:|:--------------------:|
| $V_{gg5} = -0.057643V$ | $V_{gg5} = -0.2569V$ |

## 4. Dimensionar um divisor de tensão com cargas ativas de canal n (M6) e de canal p (M7) para prover o potencial VGG5 ajustado no item (3). 

> Ajustar uma das dimensões empiricamente para obter o valor desejado de VGG5 a partir da simulação do ponto de operação.

Com o novo valor de $V_{GG5}$ foi ajustado, foi calculado os parâmetros do transistor após o ajuste.

![](https://i.imgur.com/Jps2X5w.png)

O retorno obtido para uma rede geradora de referencial de tensão:

```
> calculoAposAjuste
f_if6 = 5.0359
f_if7 = 8.9752
if6 = 29.395
if7 = 78.248
Id = 5.0000e-06
W6_L6 = 0.4813
W7_L7 = 1.2905
L6 = 0.3000
L7 = 0.2000
W6 = 0.1444
W7 = 0.2581
```

O divisor de tensão obtido pode ser visto a seguir:

<center>

![](https://i.imgur.com/gWKyUui.png)
    
</center>

O circuito será ajustado aumentando o $W/L$ do transistor U6, o que irá fazer com que o valor se distancie do desejado, mas esse ajuste é necessário para $W > W_{min}$ devido a tecnologia.

Assim, $W_6 \rightarrow 0.16\mu m$

<center>

![](https://i.imgur.com/mYOLh6m.png)
    
</center>

E agora no sentindo de "ajudar", o $W_7$ foi aumentado para $W_7 \rightarrow 2.1\mu m$

## 5. Realizar no software SMASH as seguintes simulações sobre o circuito completo, de modo a verificar todas as características de desempenho especificadas

### 5.1. Simulação DC para gerar a característica vOUT x vDIF, com vIN(+) = -vIN(-) = vDIF/2, ou seja, com vCM = 0, e observar a excursão na saída

Utilizando o seguinte comando de simulação:

`.dc Vdif/2 -0.6 0.6 1m`

Foi obtida a característica $v_{OUT} \times v_{DIF}$ com $v_{CM}=0$:

<center>
    
![](https://i.imgur.com/sqN42sh.png)
    
</center>

### 5.2. Simulação de pequenos sinais para gerar o diagrama de Bode da magnitude do ganho diferencial e observar |Ad0| e GBW

Utilizando o seguinte comando de simulação:

`.ac dec 100 100 100G`

Foi obtida o diagrama de Bode

<center>
    
![](https://i.imgur.com/aG9Ak0P.png)

</center>

Nota que o ganho está adequado e o GBW está comprometido.

### 5.3. Simulação do ponto de operação para verificar a potência estática:

$$
P_{DC} = (V_{DD} – V_{SS})(|I_{D5}| + I_{D6})
$$

Utilizando o seguinte comando de simulação:

`.op`

Foram obtidos os valores $|I_{D5}|$ e $I_{D6}$:

```
Ix(u5:1):	 8.30219e-005	 subckt_current
Ix(u5:2):	 0	 subckt_current
Ix(u5:3):	 -8.30219e-005	 subckt_current
Ix(u5:4):	 -2.8614e-013	 subckt_current
Ix(u6:1):	 -5.19813e-006	 subckt_current
Ix(u6:2):	 0	 subckt_current
Ix(u6:3):	 5.19813e-006	 subckt_current
```

Assim, calcula-se a potência estática:

$$
P_{DC}=(0.6+0.6)(8.30219\cdot10^{-5}+5.19813\cdot10^{-6})\\
P_{DC}=105.864036\mu W
$$

Observa-se que o consumo estático através da dissipação de potência elétrica, é menor que o requisitado pelo projeto.

$$
105.864036\mu W = P_{DC} < P_{DCmáx} = 120 \mu W
$$

### 5.4. Simulação de pequenos sinais, com vIN(+) = vIN(-) = vCM, para gerar o diagrama de Bode da magnitude do ganho de modo comum e observar |Acm0|(ganho de modo comum em baixas frequências), a fim de calcular a CMRR0 = |Ad0/Acm0|dB em baixas frequências.

Para atender vIN(+) = vIN(-) = vCM, foi realizado a seguinte configuração:

![](https://i.imgur.com/aHGuPsB.png)

O diagrama de bode obtido está a seguir:

![](https://i.imgur.com/7iYYTWC.png)

Nota-se que o $ACM0 = -27.3dB$, então, calcula-se o $CMRR0$.

$$
CMRR0dB = Ad0dB - Acm0dB = 33dB - (-27.3dB) = 60.3dB
$$

### 5.5. Simulação DC com a entrada inversora em curto com a saída para gerar a característica vOUT x vIN(+) e observar a CMR

A entrada inversor foi realimentada com o sinal de saida, realizando uma configuração no seguidor de tensão. 

![](https://i.imgur.com/hpugwo3.png)

Assim, é esperado uma resposta vOUT x vIN(+) linear dentro dos limites de modo comum especificado.

![](https://i.imgur.com/2kt0UgP.png)

A faixa linear observada foi;
$$
-600mV < V_{IN(+)} < 275mV
$$

> Vale ressaltar que a entrada balanceada foi desconectada, a entrada inversora somente está conectada com o sinal de saída.
>  ![](https://i.imgur.com/yVK0ZFE.png)


### 5.6. Simulação no domínio do tempo para gerar a forma de onda vOUT(t) com a entrada inversora em curto com a saída e com uma onda retangular variando de VSS a VDD aplicada à entrada não inversora, para observar a SR+ e a SR-

A simulação foi realizada com mesmas configurações do item anterior com o capacitor de saída desacoplado, pois será realizado uma simulação do tipo transiente com o tempo de resposta do circuito.

![](https://i.imgur.com/k0GM2dp.png)

A entrada não inversora foi selecionado um sinal do tipo pulso como mostram as imagens abaixo

![](https://i.imgur.com/7dM0XXU.png)

![](https://i.imgur.com/7bXZiiH.png)

O circuito foi então simulado:

![](https://i.imgur.com/BDditjC.png)

Com um zoom na subida:

![](https://i.imgur.com/ODsPZpP.png)

Calculando a derivada numa região aproximadamente na metade da subida da tensão de saída (representado pela reta branca vertical)

![](https://i.imgur.com/QG0xucW.png)

É como taxa de variação de tensão pelo tempo um valor apróximado de $436MV/s$. A ordem de grandeza da escala de tempo nestes gráficos estão muito próximos da ordem de grandeza dos tempos escolhidos na simulação, por isso a derivada (de vermelho) apresenta valores contínuos em alguns intervalos, estamos próximos do período da amostragem da simulação. Esse valor estimado por mim seria um pouco maior, certa de $490MV/s$ ou $490V/\mu s$, valor muito maior que o desajado como requisito.

$$
490V/\mu s >> 40V/\mu s
$$

![](https://i.imgur.com/L52SGqG.png)

Simulação feita com mais pontos constatou a estimativa.

Na descida o simulador apresenta uma resposta diferente do esperado, apresentando uma resposta muito rápida, aparentando ser um erro numérico do simulador (mesmo utilizando muitos pontos).

![](https://i.imgur.com/vCClkvZ.png)

Uma forma de levantar esse slew rate, seria traçar uma imaginária e encontrar a derivada desta nova curva, mas como obtido anteriormente um valor de slew rate bem maior do projeto, e como também é esperado um valor aproximadamente teórico, irei utilizar a região que o simulador encontrou da tensão de saída que tem uma derivada menor, já que mesmo um valor menor, deve atender os requisitos de projeto.

![](https://i.imgur.com/vOpsBDM.png)

Utilizei o valor de pico da derivada, sendo $-166V/\mu s$

$$
-166V/\mu s << -40V/\mu s
$$

## 6. Tabela de resultados



| Transistor | $i_f$ | $W(\mu m)$ calculado | $W(\mu m)$ ajustado | $L(\mu m)$ calculado | $L(\mu m)$ ajustado |
|:----------:|:-----:|:--------------------:|:-------------------:|:--------------------:|:-------------------:|
|M1, M2|11.604|19.538|19.54|2|2|
|M3, M4|85.927|18.831|18.83|2|2|
|M5|29.537|7.6756|19.54|2|2|
|M6|29.395|0.1444|0.16|0.3|0.3|
|M7|78.248|0.2581|2.1|0.2|0.2|

| Parâmetro  |   Calculado   |    Ajustado    |
|:----------:|:-------------:|:--------------:|
| $I_{BIAS}$ | $80.117\mu A$ | $80.1266\mu A$ |
| $V_{GG5}$  | $−0.057643V$  |   $−0.2569V$   |


|        Parâmetro        | Especificado | Simulado |
|:-----------------------:|:------------:|:--------:|
|  Tipo de amplificador   |   Canal n    |    OK    |
|    $A_{d0min} (dB)$     |     $28$     |   $33$   |
|    $GBW_{min} (MHz)$    |    $150$     |  $200$   |
| Mínima $v_{OUTmáx} (V)$ |    $0.20$    |  $0.32$  |
| Máxima $v_{OUTmin} (V)$ |   $-0.20$    | $-0.19$  |
|    Mínima $CMR+ (V)$    |    $0.25$    | $0.275$  |
|    Máxima $CMR- (V)$    |   $-0.25$    |  $-0.6$  |
|  $SR_{min} (V/\mu s)$   |     $40$     |  $400$   |
|   $P_{DCmáx} (\mu W)$   |    $120$     |  $106$   |

###### tags: `Eletrônica Analógica`

