44
1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

Embed Size (px)

Citation preview

Page 1: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

1

Diseño VLSI Diseño y análisis con SPICE

Enric Pastor

Dept. Arquitectura de Computadors

UPC

Page 2: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

2

Contenido Visión general de SPICE

Descripción SPICE:– Nodos – Componentes básicos– Transistores: dimensiones y capacidades– Diseño modular– Descripción de las entradas– Alimentación: medición del consumo– Conexión

Tecnología 0.35 / 0.5 Ejemplo: un inversor SPICE, Brent-Kung 32 bit adder

Page 3: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

3

SPICE: simulador eléctrico SPICE soporta múltiples tipos de componentes:

– Resistencias, capacidades, fuentes de alimentación...– Transistores NMOS, PMOS– Líneas de transmisión– Descripción modular

Comportamiento se describe con ecuaciones diferenciales:– Modelos simples para las resistencias, capacidades– Variedad de modelos para los transistores

SPICE analiza discretizando el tiempo

– Puede no converger o necesitar reducir los intervalos

– No convergencia suele implicar un error en el diseño

Page 4: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

4

Descripción SPICE: Nodos SPICE analiza redes de nodos:

– Cada nodo puede conectarse a otros mediante componentes– Cada nodo tiene asignado un nombre o número– Los nodos no tienen asignada ninguna dirección– Nodos dedicados 1 y 0

RC

In1

Out n2

In2 In3

n3

1

00

Page 5: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

5

Descripción SPICE: Componentes El tipo de componente se identifica por el primer carácter Componentes más utilizados:

– Resistencias: Rid nodo1 nodo2 valor (ohms)– Capacidades Cid nodo1 nodo2 valor (faradios)– Fuente tensión Vid nodo1 nodo2 valor (voltios)– Fuente corriente Iid nodo1 nodo2 valor

(amperios)

Rid

n1

n2

n1

n2

Cid

n1

n2

Vid+

n1

n2

Iid

Page 6: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

6

Descripción SPICE: Transistores Podemos modelar multitud de dispositivos. Nos centraremos en los transistores de tipo MOS:

Mid nodoD nodoG nodoS nodoB tipo Descripción:

– nodoD: drenador nodoG: puerta– nodoS: surtidor nodoB: substrato– tipo:NMOS / PMOS

D

S

G B

D

S

G B

Page 7: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

7

Descripción SPICE: Transistores Parámetros adicionales:

– W: anchura del canal L: longitud del canal– PD / PS: perímetros del drenador / surtidor– AD / AS: área del drenador / surtidor– tipo:NMOS / PMOS

Mid nD nG nS nB tipo W= L= PD= AD= PS= AS=

D

S

G B

D

S

G B

Page 8: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

8

Descripción SPICE: Transistores Como determinar las áreas y perímetros de un transistor?

Área = W x N

Perímetro = 2W + 2N

Page 9: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

9

Descripción SPICE: Transistores

552 6

– 2 difusión sin contacto

– 6 difusión con contacto

– 5 difusión con contacto en el extremo de la estructura

Page 10: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

10

Descripción SPICE: Transistores L y W determinan el comportamiento del transistor:

– Resistencia L/W

– L: mayor resistencia

– W: menor resistencia Transistor PMOS:

– Menos corriente queun transistor NMOS

– Penalización entre 2-3

I

Page 11: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

11

Descripción SPICE: Módulos Descripción de una celda:

.SUBCKT NombreCelda ListaNodos

*Descripción del contenido

.ENDS NombreCelda

Recomendamos:

ListaNodos:

ListaEntradas ListaSalidas 1(Vdd) 0(Gnd)

Uso de la celda:

Xid ListaNodos NombreCelda

Page 12: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

12

Descripción SPICE: Entradas Descripción de una entrada:

– Cronograma de la señal.

– Lista de puntos como pares (tiempo, valor).

– Interpolación lineal entre puntos.

Vnodo Nodo 0 pwl (Tiempo1 Valor1 Tiempo2 Valor2 ...)

Detalles de uso:

– Definir el valor para el tiempo 0.

– Los pasos de 0 a 1 o de 1 a 0 no pueden ser instantáneos.

– Cada flanco requiere dos puntos para definir la pendiente deseada en la transición.

Page 13: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

13

Descripción SPICE: Entradas Ejemplo:

Vnodo Nodo 0 pwl ( 0ns 5 3ns 0

+ 7ns 5 7.5ns 0

+ 11ns 0 11.5ns 5

+ 14.5ns 5 15ns 0)

t

V

0

5

0 3 7 117.5 11.5 14.5 15

Page 14: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

14

Descripción SPICE: Pulsos Descripción de señales periódicas:

– V1 Valor inicial.

– V1 Valor en la pulsación.

– TD Latencia inicial de la pulsación.

– TR Tiempo de subida.

– TF Tiempo de bajada.

– PW Anchura de pulso.

– PER Periodo de la pulsación.

Vnodo Nodo 0 PULSE (V1 V2 TD TR TF PW PER)

Page 15: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

15

Descripción SPICE: Pulsos Ejemplo:

Vnodo Nodo 0 PULSE ( 0 5

+ 3ns 1ns 1ns 4ns

+ 12ns)

t

V

0

5

0 3 84 9 15 2016 21

12

Page 16: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

16

Descripción SPICE: Alimentación Fuente de alimentación:

– Define los valores eléctricos para Vdd y Gnd .– Valores comunes para todo el sistema.

* 5v entre vdd (nodo 1) y gnd (nodo 0)VCC 1 0 DC 5VXSUM A15 A14 ... A2 A1 A0 B15 B14 ... B2 B1 B0 + S15 S14 ... S2 S1 S0 1 0 sum16

A B

SSUM16

Page 17: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

17

Descripción SPICE: Alimentación Fuente de alimentación:

– Sensor de corriente: corriente + consumo total acumulado .

XPS Vsupp Vpw 1 0 PmeterXSUM A15 A14 ... A2 A1 A0 B15 B14 ... B2 B1 B0 + S15 S14 ... S2 S1 S0 Vsupp 0 sum16

+Vpw

-

+

CyRyisis

Page 18: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

18

Descripción SPICE: Conexión Transmisión de datos:

– Un conductor sobre el substrato Modelos de comunicación:

– Transmission line analysis– Lumped-element analysis

Fuente CargaD

Page 19: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

19

Descripción SPICE: Transmission line Análisis por segmentos:

– Resistencia (Rdz), capacidad (Cdz), inductancia (Ldz) y leakage (Gdz) por unidad de longitud en la conexión (dz).

dz

z

RdzLdz

CdzGdzV(z) V(z+dz)

I(z) I(z+dz)

Page 20: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

20

Descripción SPICE: Transmission line Canal con perdidas:

– Resistencia (Rdz) y leakage (Gdz) producen caídas de tensión y perdidas de corriente.

dz

z

RdzLdz

CdzGdzV(z) V(z+dz)

I(z) I(z+dz)

Page 21: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

21

Descripción SPICE: Transmission line Canal sin perdidas:

– Solo tenemos capacidad (Cdz) e inductancia (Ldz) que afectan al retardo de la conexión.

dz

z

Ldz

CdzV(z) V(z+dz)

I(z) I(z+dz)

Page 22: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

22

Descripción SPICE: Lumped-Element

Simulación de un canal con perdidas:

– Utilizamos múltiples elementos de transmisión.

z

RdzLdz

CdzGdz

RdzLdz

CdzGdz

RdzLdz

CdzGdz

Page 23: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

23

Descripción SPICE: Lumped-Element

Simulación de un canal sin perdidas:

– Utilizamos múltiples elementos de transmisión.

z

Ldz

Cdz

Ldz

Cdz

Ldz

Cdz

Page 24: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

24

Descripción SPICE: Tecnología 0.35 / 0.5

Poly M4M3M2M1 M5

0.35 0.60.60.60. 5 0.6

2500 7300 7300800011000 7300

Poly M3M2M1

0.6 0.80.70. 6

3500 6900 84006900

0.35

0.5

Page 25: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

25

Descripción SPICE: Tecnología 0.35 Parámetros de Resistencia:

Poly Sheet R 10 - 30 / �N+ Sheet R 10 - 30 / �P+ Sheet R 10 - 30 / �M1-M5 Sheet R 35 - 55 - 75 m/ �High poly Sheet R 800 - 1000 - 1200 m/ �Contact R 2 - 15 /cnt

Via R 1 - 3 /cnt

Page 26: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

26

Descripción SPICE: Tecnología 0.35 Parámetros de Capacidad:

M1 to DIFF 0.036 fF/ m2

M1 to POLY 0.047 fF/ m2

M1 to SUB 0.033 fF/ m2

M2 to SUB 0.012 fF/ m2

M3 to SUB 0.008 fF/ m2

M4 to SUB 0.005 fF/ m2

M5 to SUB 0.004 fF/ m2

POLY to SUB 0.126 fF/ m2

POLY 4.93 fF/ m2

Page 27: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

27

Descripción SPICE: Tecnología 0.35 / 0.5

Parámetros de Resistencia:

Poly Sheet R 10 / � 30 / �N+ Sheet R 10 / � 90 / �P+ Sheet R 10 / � 115 / �M1-M5 Sheet R 55 m/ � 85 - 55 m/ �High poly Sheet R 1000 m/ � - - - -

Contact R 2 - 15 /cnt 40 - 80 /cnt

Via R 1 - 3 /cnt 1 - 3 /cnt

Page 28: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

28

Descripción SPICE: Tecnología 0.35 / 0.5

Parámetros de Capacidad:

M1 to DIFF 0.036 fF/ m2 0.031 fF/ m2

M1 to POLY 0.047 fF/ m2 0.049 fF/ m2

M1 to SUB 0.033 fF/ m2 0.031 fF/ m2

M2 to SUB 0.012 fF/ m2 0.011 fF/ m2

M3 to SUB 0.008 fF/ m2 0.007 fF/ m2

M4 to SUB 0.005 fF/ m2 - - - -

M5 to SUB 0.004 fF/ m2 - - - -

POLY to SUB 0.126 fF/ m2 0.12 fF/ m2

POLY 4.93 fF/ m2 2.56 fF/ m2

Page 29: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

29

Ejemplo: inversor Estructura de la puerta:

D

S

GB

D

S

GB

In Out

OutIn

Page 30: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

30

Ejemplo: inversor Layout Valores conocidos de L/W:

– Lp = 1u Wp = 8u

– Ln = 1u Wn = 4u

Perímetros:

– PDp = PSp = 8u * 6(0.5u) = 24p

– PDn = PSn = 4u * 6(0.5u) = 12p

Áreas:

– ADp = ASp = 2(8u + 6u) = 28u

– ADn = ASn = 2(4u + 6u) = 20u

Vdd

Gnd

PMOS

OutIn

NMOS

Page 31: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

31

Ejemplo: inversor Estructura de la puerta:

OutIn

D

S

GB

D

S

GB

In Out

Page 32: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

32

Ejemplo: inversor Modelo SPICE

*CELDA INVERSORA In Out

.SUBCKT inv In Out 1 0

*Transistor de pull-up de Out

M1 1 In Out 1 tp L=1U W=8U AS=28P AD=28P PS=24U PD=24U

*Transistor de pull-down de Out

M2 Out Pi 0 0 tn L=1U W=4U AS=20P AD=20P PS=12U PD=12U

*Capacidades entrada/salidaC1 In 0 24PC2 Out 0 10P

.ENDS inv

Page 33: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

33

Ejemplo: inversor LayoutVdd

Gnd

PMOS

OutIn

NMOS

Capacidad de entrada metal:

– Área: 5u * 2.5u = 12.5 u2

– C = 0.45 fF

Capacidad de entrada poly:

– Área: (3u * 3u) + (2u * 4u) = 17 u2

– C = 2.142 fF

Capacidad de salida metal:

– Área: (12u * 2.5u)+(3u * 2.5u) = 31.5 u2

– C = 1.134 fF

Page 34: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

34

Ejemplo: inversor Layout

Capacidad de la puerta:

– Área: (2u * 4u)+(2u * 8u) = 24 u2

Capacidad de las difusiones:

– Área: (5u * 4u) + (5u * 8u) = 60 u2

Estas capacidades son consideradas directamente por SPICE.

Vdd

Gnd

PMOS

OutIn

NMOS

Page 35: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

35

Ejemplo: inversor Simulación*Include de los modelos

.INCLUDE model.spi

.INCLUDE inv.spi

*Puerta a simular

X1 In Out 1 0 inv

*5v entre vdd y vss

VCC 1 0 DC 5V

*Entradas variables

Vin In 0 pwl(0ns 0 3ns 0 3.5ns 5 6ns 5 6.5ns 0)

*Duración de la simulación

.TRAN 1ns 10ns

.END

Page 36: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

36

Ejemplo: puerta compleja Layout Función:

F

Entradas:

A, B, C, D

Objetivo:

Extraer función

Capacidades parásitas

Page 37: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

37

Ejemplo: Brent-Kung Adder Sumador Brent-Kung de 32 bits:

– Lógica CMOS estática.

– Modelado con SPICE sin considerar conexiones.

Page 38: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

38

Ejemplo: Brent-Kung Adder

Page 39: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

39

Ejemplo: Brent-Kung Adder Level 0: bits Pi’ (propagación) y Gi’ (generación)

Page 40: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

40

Ejemplo: Brent-Kung Adder Level 1: bits Pi (propagación) y Gi (generación)

Page 41: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

41

Ejemplo: Brent-Kung Adder Level 2: bits Pi (propagación) y Gi (generación)

Page 42: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

42

Ejemplo: Brent-Kung Adder Buffers: negación bits Pi y Gi

Suma: generación suma final

Page 43: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

43

Ejemplo: Brent-Kung Adder Sumador Brent-Kung de 32 bits:

– Simulacion de dos vectores de entrada:

Page 44: 1 Diseño VLSI Diseño y análisis con SPICE Enric Pastor Dept. Arquitectura de Computadors UPC

44

Conclusiones Simulación eléctrica de circuitos digitales.

Nivel de detalle muy superior que en los simuladores lógicos:

– Capacidades, resistencias, transistor.

– Puede modelar líneas de transmisión.

Tiempos de cálculo muy elevados.

No modela otros fenómenos importantes:

– Cross-talk.

– Power consumption / energy.