trini sansaloni - introducción al diseño de circuitos integrados digitales

Upload: fernando-sanchez-hernandez

Post on 26-Feb-2018

241 views

Category:

Documents


0 download

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.