trini sansaloni - introducción al diseño de circuitos integrados digitales
TRANSCRIPT
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
1/31
Introduccin al Diseo deCircuitos Integrados Digitales
Diseo Microelectrnico
Trini Sansaloni
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
2/31
BibliografaApplication-Specific Integrated Circuits
M.J.S. SmithAddison-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
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
3/31
1. Evolucin del diseo electrnicoRpida 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 crecimientoLas 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, CoreGenerator, etc) y ms baratos
Ej: Dispositivo Virtex-II de hasta 6M puertas con velocidad de hasta 200MHz.Incluyen multiplicadores rpidos, memorias e incluso uPPueden tener ms de 800 pines I/O
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
4/31
Microprocessor Trends (Intel)Year Chip L 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.42000 Pentium 4 0.18m 42M
2002 Pentium 4 (N) 0.13m 55M
Source: http://www.intel.com/pressroom/kits/quickreffam.htm
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
5/31
DRAM Memory Trends (Log Scale)Source: Textbook, Industry Reports
0,0625
0,25
1
4
16
64128
256512
0,01
0,1
1
10
100
1000
1975 1980 1985 1990 1995 2000 2005
Size (Mb)
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
6/31
Proceso de Diseo VLSIConsideraciones 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 deoperacin)
Consumo de Potencia
Costes NRE y coste unitario Volatibilidad Posibilidades de I/O
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
7/31
2. Alternativas de implementacinASIC: CircuitoIntegrados de
Aplicacin Especfica
Full-Custom Standar Cells Gate Arrays FPDs
SPLDs CPLDs FPGAs
Estudiadasenla
asignDuE
Semi-Custo
m
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
8/31
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 enel proceso de fabricacin. El usuario controla la densidad del chipcon 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 conotras 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 elevadovolumen, donde se consiguen amortizar los costes de desarrollo
(NRE) y de test.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
9/31
2.2. Mask-Programmable Gate
Arrays (MPGA):Matrices de Puertas
Matriz de Puertas confunciones incrustadas
Matriz de Puertas concanales
Matriz de Puertas sincanales: Sea of gates
El usuario slo definelas conexiones entrelos contactos de lostransistores. Incluyen
bloques predefinidoscon memoria, uC, etc
El usuario slo definelas conexiones entrelos contactos de lostransistores
El usuario define loscontactos de lostransistores y susinterconexiones
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
10/31
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 lostransistores.Las mscaras genricas crean un array de bloques funcionales.
Los transistores y sus contactos se agrupan en clulas y estas clulas seordenan en filas separadas por canales fijos.La lgica de usuario implementa las funciones lgicas a realizar por lostransistores 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 declulas bsicas empleadas en el diseo y sugiere el Gate Array adecuadopara la aplicacin; tambin estima la potencia disipada por el Gate Array, lostiempos de propagacin de las seales y permite simular el funcionamientodel circuito.
Gate Arrays slo necesita la mscara del cableado.
Matriz de Puertas concanales
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
11/31
Matriz de Puertas sincanales: Sea of gates
Una clase especial de Gate Arrays son los Sea-of-Gates.
Estos, al contrario que los Gate Arrays no tienen
los contactos prefabricados, por ello no sonnecesarios los canales y los transistores puedenllenar todo el chip.
El rutado se realiza sobre los transistores nousados.
El diseo Sea of Gates slo necesita mscaraspara los contactos y los cables de metal.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
12/31
MPGAsVentajas:
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 CADde emplazamiento y rutado automtico.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
13/31
2.3. Standard Cells (SCs) =
Cell-based IC (CBICs)
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
14/31
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 seencuentran clulas que implementan clulas standard. Undiseador est limitado a la utilizacin de las partes(componentes) de la librera que maneja aunque es posibleque no coincidan exactamente con lo que l desea.
Las clulas son bastante robustas para trabajar con distintosdiseos: FF tipo JK, D, T,SR, con reset, con mayor corrientea la salida, etc. Esta lgica aadida hace aumentar sutamao y el retardo del path crtico.
Otra restriccin es que las clulas se ordenan en filas dentrodel chip. Todas las clulas de las libreras tienen una alturafija y las entradas y salidas se realizan por su parte superior einferior. El rutado se realiza dentro de canales.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
15/31
CBICs Una clula no se puede unir a la vecina lateralmente
sino que el rutado se realiza por las lneas de arriba oabajo utilizando el canal. Esto complica el rutado y haceque los canales sean ms anchos.
Los requerimientos de altura fija hacen que se pierda
espacio. Es necesario aumentar la altura de las clulaspara permitir el rutado interno de estructurascomplicadas o clulas con muchas entradas. Las demsclulas normalmente no llenan este espacio de rutado
con lgica, por lo en las clulas simples esta altura extrase desperdicia.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
16/31
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 deproduccin de los ICs.
La descripcin del circuito se realiza normalmente conHLD (hardware description language) como Verilog y
VHDL. La compilacin de estos ficheros da lugar allayoutfsico. 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 undiseo menos eficiente en ocupacin pero tiene unoscostes de desarrollo menores.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
17/31
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 funcioneslgicas se implementan programando elctricamente las interconexiones ypersonalizando las clulas bsicas.
Ventajas: Rpida programacin y borrado Tiempo de desarrollo ms corto Facilidad de realizar cambios Costes de desarrollo ms bajosInconvenientes: Limita la flexibilidad del diseo No aprovecha el rea de silicio Circuito ms lento
2.4. Field Programmable Devices
(FPD)
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
18/31
Field Programmable Devices (FPD)No es fcil realizar la clasificacin de los FPDs en tanto existen ms de300 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 cadadispositivo y el retardo de propagacin desde las entradas a lassalidas 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 deusar y ms baratos).
El sector de los CPLDs y FPGAs representa uno de los segmentoscon crecimiento ms rpido en la industria de semiconductores.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
19/31
3. Flujo de Diseo
WebPack
WebPack
GXSLOAD
WebPack
EDIF
*.edf
*.bit
*.vhd
3. Flujo de Diseo
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
20/31
La descripcin de sistemas digitales se puede realizar condistintos niveles de abstraccin:
Nivel de Sistema: cajas o mdulos de los que no seespecifica 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
3.1. Niveles de descripcin de un
circuito
enDu
E
enDu
E
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
21/31
Niveles de Abstraccin VLSISpecification
(what the chip does, inputs/outputs)
Architecturemajor resources, connections
Register-Transfer
logic blocks, FSMs, connections
Circuittransistors, parasitics, connections
Layoutmask layers, polygons
Logicgates, flip-flops, latches, connections e
nDuE
enDuE
Fuente: foghorn.cadlab.lafayette.edu/ ece425/notes/01_425_F02.ppt
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
22/31
3.2. Herramientas CAD El empleo de estas herramientas es esencial
debido a lo sofisticado que resulta configurarmanualmente estos dispositivos.
Implementacin:Xilinx ISE HDL para descripcin lgica de alto nivel
Sntesis lgica
Mapear
Emplazar y rutar
Programar o cargar
Simulacin:Active HDL
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
23/31
3.3. Simulacin y Validacin
Synthesis
Implementation
Download
Implement yourdesign usingVHDL or Verilog
FunctionalSimulation
TimingSimulation
In-CircuitVerification
HDLHDL
Synthesize thedesign to create
an FPGA netlist
Translate,place androute and
generate abitstream todownload inthe FPGA
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
24/31
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
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
25/31
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 conGate 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 de10.000 unidades) o $2$4 por circuito;
Una FPGA equivalente costara $20.
Tiene sentido utilizar FPGAs?.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
26/31
4.2. Costes del productoCoste total del producto =
Costes fijos + Costes variables* nmero de unidades vendidas
Los costes fijos son: coste de los chips, costes de ensamblado yotros costes de fabricacin.
Los costes fijos se amortizan con el volmen de ventas -> A msvolmen 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 demscaras, simulacin, test)
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
27/31
Ejemplo
2000 unidades
4000 unidades
20000 unidades
FPGA: $21,800 (fijos) $39 (variable)
MGA: $86,000 (fijos) $10 (variable)
CBIC $146,000 (fijos) $8 (variable)
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
28/31
4.3. Costes Fijos
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
29/31
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 eltamao del ASIC, y depende de la experiencia del diseador, lasherramientas utilizadas y la complejidad del circuito. Es ms fcil disearcon FPGAs.
Costes de Diseo para test: Es importante que el diseo funcione bien. EnFPGAs no aparece este coste puesto que el dispositivo FPGA vieneprobado de fbrica. Los costes de test tras la programacin vamos aincluirdos 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.
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
30/31
4.4. Costes variables
-
7/25/2019 Trini Sansaloni - Introduccin Al Diseo de Circuitos Integrados Digitales
31/31
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.