Вы находитесь на странице: 1из 31

Introduccin al Diseo de

Circuitos Integrados Digitales


Diseo Microelectrnico
Trini Sansaloni

Bibliografa
Application-Specific Integrated Circuits
M.J.S. Smith
Addison-Wesley, 1998
Este libro se encuentra en:
http://www-ee.eng.hawaii.edu/~msmith/ASICs/Files/pdf/INDEX.pdf
Tambin se pueden encontrar otros recursos en:
http://www-ee.eng.hawaii.edu/~msmith/ASICs/HTML/ASICs.htm

1. Evolucin del diseo electrnico


Rpida evolucin de la capacidad de integracin de los circuitos digitales

SSI < 100 txts (puertas lgicas), 1958

MSI [100,1000] txts (mux, cont), 1965

GLSI hasta 5Meg txt (uP), 1999


-> Aumenta la funcionalidad y la velocidad de los CI y disminuye su consumo
Debido a:

Cambio tecnolgico (Tamao de la oblea, txt ms pequeos, etc.)

Empleo de Herramientas CAD


Mercado electrnico en rpido crecimiento
Las Compaas buscan una rpida salida al mercado de sus productos para aumentar su
competitividad -> Prototipado rpido
Solucin: Field-Programmable Devices (FPDs)
Dispositivos cada vez ms grandes, ms rpidos, ms fciles de usar (System Generator, Core
Generator, etc) y ms baratos
Ej: Dispositivo Virtex-II de hasta 6M puertas con velocidad de hasta 200MHz.
Incluyen multiplicadores rpidos, memorias e incluso uP
Pueden tener ms de 800 pines I/O

Microprocessor Trends (Intel)


Year

Chip

transistors

1971

4004

10m

2.3K

1974

8080

6m

6.0K

1976

8088

3m

29K

1982

80286

1.5m

134K

1985

80386

1.5m

275K

1989

80486

0.8m

1.2M

1993

Pentium

0.8m

3.1M

1995

Pentium Pro

0.6m

15.5M

1999

Mobile PII

0.25m

27.4

2000

Pentium 4

0.18m

42M

2002

Pentium 4 (N)

0.13m

55M

Source: http://www.intel.com/pressroom/kits/quickreffam.htm

DRAM Memory Trends (Log Scale)


Source: Textbook, Industry Reports

1000
100

64

512
256
128

16

10
4

Size (Mb)

1
0,25
0,1

0,0625

0,01
1975

1980

1985

1990

1995

2000

2005

Proceso de Diseo VLSI


Consideraciones en la eleccin de la tecnologa de
implementacin:
Tiempo de Diseo
Tiempo empleado en la realizacin de modificaciones
Cantidad de lgica empleada y recursos de rutado
para un mismo tamao de dado
Retardo de propagacin (mxima frecuencia de
operacin)
Consumo de Potencia
Costes NRE y coste unitario
Volatibilidad
Posibilidades de I/O

2. Alternativas de implementacin
ASIC: Circuito
Integrados de
Aplicacin Especfica

Full-Custom

Standar Cells

Gate Arrays

FPDs

om
t
s
u
-C
i
m
e
S
SPLDs

CPLDs

Es

en
s
a
d
tudia

FPGAs

uE
D
n
g
a asi

2.1. Full-custom

ICs construidos completamente por el diseador: transistores,


conexiones, cables. Cada elemento del circuito es cuidadosamente
diseado a mano.
Emplea mscaras personales para definir cada una de las capas en
el proceso de fabricacin. El usuario controla la densidad del chip
con lo que puede conseguir una alta utilizacin del mismo.
Ventajas:
Mxima flexibilidad en el diseo
Alto rendimiento: Es posible optimizar las partes crticas del diseo
consiguiendo un diseo ms pequeo y ms rpido que el obtenido con
otras tecnologas.

Inconvenientes:
Diseo complejo y altamente especializado (cuidado con los errores)
Tiempo de desarrollo alto
Costes de diseo y desarrollo altos

Esta alternativa es interesante para producciones de elevado


volumen, donde se consiguen amortizar los costes de desarrollo
(NRE) y de test.

2.2. Mask-Programmable Gate


Arrays (MPGA):
Matrices de Puertas

Matriz de Puertas con


canales
El usuario slo define
las conexiones entre
los contactos de los
transistores

Matriz de Puertas sin


canales: Sea of gates
El usuario define los
contactos de los
transistores y sus
interconexiones

Matriz de Puertas con


funciones incrustadas
El usuario slo define
las conexiones entre
los contactos de los
transistores. Incluyen
bloques predefinidos
con memoria, uC, etc

Matriz de Puertas con


canales
Utiliza patrones predefinidos de transistores y contactos de transistores.
La plantilla con los transistores puede fabricarse antes de tener el diseo.
El circuito se personaliza con el proceso de metalizacin.
El diseador se encarga de conectar los contactos predefinidos de los
transistores.
Las mscaras genricas crean un array de bloques funcionales.
Los transistores y sus contactos se agrupan en clulas y estas clulas se
ordenan en filas separadas por canales fijos.
La lgica de usuario implementa las funciones lgicas a realizar por los
transistores de cada mdulo y la interconexin entre mdulos.
El diseador cuenta con libreras de clulas que le facilitan el diseo.
Se cuenta tambin con software especializado que contabiliza el nmero de
clulas bsicas empleadas en el diseo y sugiere el Gate Array adecuado
para la aplicacin; tambin estima la potencia disipada por el Gate Array, los
tiempos de propagacin de las seales y permite simular el funcionamiento
del circuito.
Gate Arrays slo necesita la mscara del cableado.

Matriz de Puertas sin


canales: Sea of gates

Una clase especial de Gate Arrays son los Sea-ofGates.


Estos, al contrario que los Gate Arrays no tienen
los contactos prefabricados, por ello no son
necesarios los canales y los transistores pueden
llenar todo el chip.
El rutado se realiza sobre los transistores no
usados.
El diseo Sea of Gates slo necesita mscaras
para los contactos y los cables de metal.

MPGAs
Ventajas:
Ms fcil que el Full Custom
Tiempos de Desarrollo ms cortos
Costes de Desarrollo ms bajos
Inconvenientes:
Utilizan ms silicio y tienen peor velocidad que los
diseos Full Custom y Standard Cells
Esta tecnologa normalmente emplea herramientas CAD
de emplazamiento y rutado automtico.

2.3. Standard Cells (SCs) =


Cell-based IC (CBICs)

CBICs
Igual que en el caso de las MPGAs el proceso de diseo
viene facilitado por el uso de mdulos predeterminados.
Los diseadores seleccionan clulas de la base de datos
para implementar sus mdulos. En las bibliotecas se
encuentran clulas que implementan clulas standard. Un
diseador est limitado a la utilizacin de las partes
(componentes) de la librera que maneja aunque es posible
que no coincidan exactamente con lo que l desea.
Las clulas son bastante robustas para trabajar con distintos
diseos: FF tipo JK, D, T,SR, con reset, con mayor corriente
a la salida, etc. Esta lgica aadida hace aumentar su
tamao y el retardo del path crtico.
Otra restriccin es que las clulas se ordenan en filas dentro
del chip. Todas las clulas de las libreras tienen una altura
fija y las entradas y salidas se realizan por su parte superior e
inferior. El rutado se realiza dentro de canales.

CBICs
Una clula no se puede unir a la vecina lateralmente
sino que el rutado se realiza por las lneas de arriba o
abajo utilizando el canal. Esto complica el rutado y hace
que los canales sean ms anchos.
Los requerimientos de altura fija hacen que se pierda
espacio. Es necesario aumentar la altura de las clulas
para permitir el rutado interno de estructuras
complicadas o clulas con muchas entradas. Las dems
clulas normalmente no llenan este espacio de rutado
con lgica, por lo en las clulas simples esta altura extra
se desperdicia.

CBICs
En las Gate Arrays slo es necesario realizar la mscara
de metalizaciones, mientas que en Standard Cell hay
que realizar mscaras para todos los procesos de
produccin de los ICs.
La descripcin del circuito se realiza normalmente con
HLD (hardware description language) como Verilog y
VHDL. La compilacin de estos ficheros da lugar al
layout fsico.
El emplazamiento y el rutado son automticos con lo
que evitan gran parte del proceso de diseo fsico al
diseador.
Comparado con el diseo Full Custom consigue un
diseo menos eficiente en ocupacin pero tiene unos
costes de desarrollo menores.

2.4. Field Programmable Devices


(FPD)

FPDs es el nombre actual de los PLDs (dispositivos lgicos programables).


Son circuitos integrados programables por el usuario y empleados para
implementar hardware digital.
Igual que los Gate Arrays son elementos prefabricados. Las funciones
lgicas se implementan programando elctricamente las interconexiones y
personalizando las clulas bsicas.

Ventajas:
Rpida programacin y borrado
Tiempo de desarrollo ms corto
Facilidad de realizar cambios
Costes de desarrollo ms bajos
Inconvenientes:
Limita la flexibilidad del diseo
No aprovecha el rea de silicio
Circuito ms lento

Field Programmable Devices (FPD)


No es fcil realizar la clasificacin de los FPDs en tanto existen ms de
300 arquitecturas distintas.
Tipos:
SPLD: Simple PLD -> integran hasta 200 puertas
CPLD: Complex PLD -> normalmente hasta 5000 puertas
(MAX9000 alcanza las 12000 puertas)
FPGA: Field-Programmable Gate Array -> ms de 5000 puertas

El nmero de funciones que pueden ser implementadas en cada


dispositivo y el retardo de propagacin desde las entradas a las
salidas depende del dispositivo elegido y del circuito implementado.
Estos dispositivos han mejorado mucho en los ltimos aos
(dispositivos cada vez ms grandes, ms rpidos, ms fciles de
usar y ms baratos).
El sector de los CPLDs y FPGAs representa uno de los segmentos
con crecimiento ms rpido en la industria de semiconductores.

3. Flujo de Diseo

WebPack

EDIF
*.edf

*.vhd

WebPack

*.bit
WebPack
GXSLOAD

3. Flujo de Diseo

3.1. Niveles de descripcin de un


circuito
La descripcin de sistemas digitales se puede realizar con
distintos niveles de abstraccin:
Nivel de Sistema: cajas o mdulos de los que no se
especifica cmo se implementan
Nivel Algortmico: procesos, instrucciones
Nivel RTL (Register Transfer Level) o de flujo de datos:
tablas de verdad, ecuaciones lgicas
Nivel lgico: Puertas lgicas y flip-flops
Nivel de conmutadores: Interruptores analgicos
Nivel elctrico: Transistores (con parmetros elctricos)
Nivel fsico: Mscaras

E
u
D
n
e

Niveles de Abstraccin VLSI


Specification
(what the chip does, inputs/outputs)

Architecture
major resources, connections

Register-Transfer
logic blocks, FSMs, connections

Logic

E
u
D
n
e

gates, flip-flops, latches, connections

Circuit
transistors, parasitics, connections

Layout
mask layers, polygons

Fuente: foghorn.cadlab.lafayette.edu/ ece425/notes/01_425_F02.ppt

3.2. Herramientas CAD


El empleo de estas herramientas es esencial
debido a lo sofisticado que resulta configurar
manualmente estos dispositivos.
Implementacin: Xilinx ISE

HDL para descripcin lgica de alto nivel


Sntesis lgica
Mapear
Emplazar y rutar
Programar o cargar

Simulacin: Active HDL

3.3. Simulacin y Validacin


HDL

Implement your
design using
VHDL or Verilog

Synthesis

Synthesize the
design to create
an FPGA netlist

Functional
Simulation

Implementation

Timing
Simulation

Download

In-Circuit
Verification

Translate,
place and
route and
generate a
bitstream to
download in
the FPGA

4. Los costes del diseo de ASICs


4.1. Comparacin entre las tecnologas
4.2. Costes del producto
4.3. Costes fijos
4.4. Costes variables

4.1. Comparacin entre las


tecnologas

Nos interesa comparar el coste por circuito (part cost).

El coste por puerta en FPGAs es entre 2 y 5 veces mayor que con


Gate Arrays (MGAs) y Standard Cells (tambin llamadas CBICs
(Cell-based IC)).
Full-custom > CBCIs > MGAs > FPGA

Ejemplo:
En un circuito ASIC realizado con una MGA de 0.5 um y 20 k puertas,
cada puerta cuesta 0.010.02 cntimos/puerta (en volmenes de
10.000 unidades) o $2$4 por circuito;
Una FPGA equivalente costara $20.

Tiene sentido utilizar FPGAs?.

4.2. Costes del producto


Coste total del producto =
Costes fijos + Costes variables* nmero de unidades vendidas

Los costes fijos son: coste de los chips, costes de ensamblado y


otros costes de fabricacin.
Los costes fijos se amortizan con el volmen de ventas -> A ms
volmen de ventas menos costes fijos.

El volmen de ventas es el nmero de unidades vendidas

Los costes fijos cuando utilizamos FPGAs son bajos (slo


necesitamos SW de diseo y programacin y HW)
Los costes fijos en MGAs y CBICs son mayores (fabricacin de
mscaras, simulacin, test)

Ejemplo
FPGA: $21,800 (fijos) $39 (variable)
MGA: $86,000 (fijos) $10 (variable)
CBIC $146,000 (fijos) $8 (variable)
4000 unidades

20000 unidades
2000 unidades

4.3. Costes Fijos

4.3. Costes fijos

Costes de Formacin: necesarios para aprender el sistema EDA


(Electronic design automation)
Costes de HW y SW: Placas y programas de desarrollo, infraestructura
Costes de Diseo: Se trata de medir la productividad de un diseador de
ASICs en puertas o transistores/da. Esta productividad aumenta con el
tamao del ASIC, y depende de la experiencia del diseador, las
herramientas utilizadas y la complejidad del circuito. Es ms fcil disear
con FPGAs.
Costes de Diseo para test: Es importante que el diseo funcione bien. En
FPGAs no aparece este coste puesto que el dispositivo FPGA viene
probado de fbrica. Los costes de test tras la programacin vamos a
incluirdos dentro de los costes del chip.
Los costes Non-recurring-engineering (NRE):
Fabricacin de Mscaras (3 4 en MGAs, 15 ms en CBICs)
SW de Simulacin
Desarrollo de Programas de Test

Costes de rediseo: Si el primer diseo falla aumentan los costes NRE.

4.4. Costes variables

Precio por puerta

Para un nuevo proceso tecnolgico el precio/puerta baja un 40% el primer


ao y un 30% el segundo. Despus se estabiliza.
Cada dos aos aparece un nuevo proceso.
El precio inicial de cada nuevo proceso es un 10% ms caro que el proceso
al que sustituye.
Las FPGAs aparecen 1 ao ms tarde que las CBICs del mismo proceso.
El precio inicial de las FPGAs es un 10% ms caro que el de las CBICs o
MGAs de la misma tecnologa.

Вам также может понравиться