stringtranslate.com

Diseño de circuitos integrados

Vista de diseño de un amplificador operacional CMOS simple (las entradas están a la izquierda y el capacitor de compensación a la derecha). La capa de metal está coloreada de azul, verde y marrón son silicio dopado con N y P, el polisilicio es rojo y las vías son cruces.
Ingeniero que utiliza una de las primeras estaciones de trabajo de diseño de circuitos integrados para analizar una sección de un diseño de circuito cortado en rubí , alrededor de 1979

El diseño de circuitos integrados , diseño de semiconductores , diseño de chips o diseño de CI , es un subcampo de la ingeniería electrónica , que abarca las técnicas particulares de diseño de circuitos y lógica requeridas para diseñar circuitos integrados , o CI. Los CI consisten en componentes electrónicos miniaturizados integrados en una red eléctrica sobre un sustrato semiconductor monolítico mediante fotolitografía .

El diseño de circuitos integrados se puede dividir en las amplias categorías de diseño de circuitos integrados digitales y analógicos . El diseño de circuitos integrados digitales consiste en producir componentes como microprocesadores , FPGA , memorias ( RAM , ROM y flash ) y ASIC digitales . El diseño digital se centra en la corrección lógica, la maximización de la densidad de circuitos y la colocación de circuitos de forma que las señales de reloj y temporización se enruten de forma eficiente. El diseño de circuitos integrados analógicos también tiene especializaciones en el diseño de circuitos integrados de potencia y el diseño de circuitos integrados de RF . El diseño de circuitos integrados analógicos se utiliza en el diseño de amplificadores operacionales , reguladores lineales , bucles de enganche de fase , osciladores y filtros activos . El diseño analógico se ocupa más de la física de los dispositivos semiconductores, como la ganancia, la adaptación, la disipación de potencia y la resistencia . La fidelidad de la amplificación y el filtrado de señales analógicas suele ser fundamental y, como resultado, los circuitos integrados analógicos utilizan dispositivos activos de mayor área que los diseños digitales y suelen ser menos densos en cuanto a circuitos. [1]

Los circuitos integrados modernos son enormemente complicados. Un chip de computadora de escritorio promedio, a partir de 2015, tiene más de mil millones de transistores. Las reglas sobre lo que se puede y no se puede fabricar también son extremadamente complejas. Los procesos comunes de circuitos integrados de 2015 tienen más de 500 reglas. Además, dado que el proceso de fabricación en sí no es completamente predecible, los diseñadores deben tener en cuenta su naturaleza estadística . La complejidad del diseño de circuitos integrados modernos, así como la presión del mercado para producir diseños rápidamente, ha llevado al uso extensivo de herramientas de diseño automatizadas en el proceso de diseño de circuitos integrados. El diseño de algunos procesadores se ha vuelto lo suficientemente complicado como para ser difícil de probar por completo, y esto ha causado problemas en los grandes proveedores de la nube. [2] En resumen, el diseño de un circuito integrado mediante software EDA es el diseño, la prueba y la verificación de las instrucciones que el circuito integrado debe llevar a cabo. La inteligencia artificial se ha demostrado en el diseño de chips para crear diseños de chips que son las ubicaciones de las celdas estándar y los macrobloques en un chip. [3]

Fundamentos

El diseño de circuitos integrados implica la creación de componentes electrónicos, como transistores , resistencias , condensadores y la interconexión de estos componentes en una pieza de semiconductor, normalmente silicio . Es necesario un método para aislar los componentes individuales formados en el sustrato , ya que el silicio del sustrato es conductor y a menudo forma una región activa de los componentes individuales. Los dos métodos comunes son el aislamiento de la unión pn y el aislamiento dieléctrico. Se debe prestar atención a la disipación de potencia de los transistores y las resistencias de interconexión y la densidad de corriente de la interconexión, los contactos y las vías, ya que los CI contienen dispositivos muy pequeños en comparación con los componentes discretos, donde estas preocupaciones son un problema menor. La electromigración en la interconexión metálica y el daño por ESD a los componentes diminutos también son motivo de preocupación. Finalmente, la disposición física de ciertos subbloques del circuito suele ser crítica, para lograr la velocidad de operación deseada, para segregar las partes ruidosas de un CI de las partes silenciosas, para equilibrar los efectos de la generación de calor a través del CI o para facilitar la colocación de conexiones a circuitos fuera del CI.

Flujo de diseño

Pasos principales en el flujo de diseño de circuitos integrados

Un ciclo típico de diseño de circuitos integrados implica varios pasos:

  1. Especificación del sistema
    1. Estudio de viabilidad y estimación del tamaño de la matriz
    2. Análisis de funciones
  2. Diseño arquitectónico o a nivel de sistema
  3. Diseño lógico
    1. Diseño, simulación y maquetación analógica
    2. Diseño y simulación digital
    3. Simulación, emulación y verificación de sistemas
  4. Diseño de circuitos
    1. Síntesis de diseño digital
    2. Diseño para pruebas y generación automática de patrones de prueba
    3. Diseño para la fabricación
  5. Diseño físico
    1. Plano de planta
    2. Lugar y ruta
    3. Extracción parasitaria
  6. Verificación física y aprobación
    1. Sincronización estática
    2. Co-simulación y sincronización
  7. Preparación de datos de máscara (posprocesamiento del diseño)
    1. Acabado de viruta con cinta fuera
    2. Disposición de la retícula
    3. Preparación del diseño a la máscara
  8. Fabricación de retícula
  9. Fabricación de fotomáscaras
  10. Fabricación de obleas
  11. Embalaje
  12. Prueba de matriz
    1. Validación e integración post silicio
    2. Caracterización del dispositivo
    3. Ajustar (si es necesario)
  13. Despliegue de chips
    1. Generación de hoja de datos (generalmente un archivo PDF )
    2. Rampa arriba
    3. Producción
    4. Análisis de rendimiento / análisis de garantía de fiabilidad
    5. Análisis de fallos en cualquier devolución
    6. Planifique el chip de próxima generación utilizando información de producción, si es posible

Los haces de iones enfocados se pueden utilizar durante el desarrollo de chips para establecer nuevas conexiones en un chip. [4] [5]

Resumen

En términos generales, el diseño de circuitos integrados digitales se puede dividir en tres partes.

Tenga en cuenta que el segundo paso, el diseño RTL, es responsable de que el chip funcione correctamente. El tercer paso, el diseño físico, no afecta en absoluto la funcionalidad (si se realiza correctamente), pero determina la velocidad de funcionamiento del chip y su costo.

Una celda estándar normalmente representa una sola puerta lógica , un diodo o componentes lógicos simples como flip-flops o puertas lógicas con múltiples entradas. [6] El uso de celdas estándar permite que el diseño del chip se divida en niveles lógicos y físicos. Una empresa fabless normalmente solo trabajaría en el diseño lógico de un chip, determinando cómo se conectan las celdas y la funcionalidad del chip, mientras sigue las reglas de diseño de la fundición en la que se fabricará el chip, mientras que el diseño físico del chip, las celdas en sí, normalmente lo realiza la fundición y comprende la física de los dispositivos transistores y cómo se conectan para formar una puerta lógica. Las celdas estándar permiten diseñar y modificar chips más rápidamente para responder a las demandas del mercado, pero esto se produce a costa de una menor densidad de transistores en el chip y, por lo tanto, tamaños de matriz más grandes. [6]

Las fundiciones suministran bibliotecas de celdas estándar a empresas sin fábrica, con fines de diseño y para permitir la fabricación de sus diseños utilizando las instalaciones de la fundición. La fundición puede proporcionar un kit de diseño de procesos (PDK) que puede incluir la biblioteca de celdas estándar, así como las especificaciones de las celdas y herramientas para verificar el diseño de la empresa sin fábrica frente a las reglas de diseño especificadas por la fundición, así como para simularlo utilizando las celdas de la fundición. Los PDK pueden proporcionarse bajo acuerdos de confidencialidad. Macros/Macroceldas/Macrobloques, [7] Las matrices de macroceldas y los bloques IP tienen una mayor funcionalidad que las celdas estándar y se utilizan de forma similar. Hay macros blandas y macros duras. Las celdas estándar suelen colocarse después de las filas de celdas estándar.

Ciclo de vida del diseño

El proceso de desarrollo de un circuito integrado (CI) comienza con la definición de los requisitos del producto, pasa por la definición arquitectónica, la implementación, la puesta en marcha y, finalmente, la producción. A continuación se describen las distintas fases del proceso de desarrollo de un circuito integrado. Aunque las fases se presentan aquí de forma sencilla, en realidad hay iteraciones y estos pasos pueden repetirse varias veces.

Requisitos

Antes de definir una arquitectura , se deben definir algunos objetivos de alto nivel del producto. Los requisitos suelen ser generados por un equipo interdisciplinario que aborda las oportunidades de mercado , las necesidades de los clientes, la viabilidad y mucho más. Esta fase debería dar como resultado un documento de requisitos del producto .

Arquitectura

La arquitectura define la estructura, los objetivos y los principios fundamentales del producto. Define conceptos de alto nivel y la propuesta de valor intrínseca del producto. Los equipos de arquitectura tienen en cuenta muchas variables e interactúan con muchos grupos. Las personas que crean la arquitectura generalmente tienen una cantidad significativa de experiencia en el manejo de sistemas en el área para la que se está creando la arquitectura. El producto del trabajo de la fase de arquitectura es una especificación arquitectónica .

Microarquitectura

La microarquitectura es un paso más hacia el hardware. Implementa la arquitectura y define mecanismos y estructuras específicos para lograr esa implementación. El resultado de la fase de microarquitectura es una especificación de microarquitectura que describe los métodos utilizados para implementar la arquitectura.

Implementación

En la fase de implementación, el diseño en sí se crea utilizando la especificación microarquitectónica como punto de partida. Esto implica la definición y partición de bajo nivel, la escritura de código , la introducción de esquemas y la verificación. Esta fase finaliza con un diseño que llega a la fase de producción .

Sacar un tema

Una vez creado, grabado y fabricado un diseño, se recibe el hardware real, el "primer silicio", que se lleva al laboratorio, donde pasa por el proceso de puesta en marcha . La puesta en marcha es el proceso de encendido, prueba y caracterización del diseño en el laboratorio. Se realizan numerosas pruebas , desde pruebas muy sencillas, como garantizar que el dispositivo se encienda, hasta pruebas mucho más complicadas que intentan estresar la pieza de diversas formas. El resultado de la fase de puesta en marcha es la documentación de los datos de caracterización (qué tan bien funciona la pieza según las especificaciones) y las erratas (comportamiento inesperado).

Productividad

La producción es la tarea de llevar un diseño desde la ingeniería a la fabricación en serie. Aunque un diseño puede haber cumplido con éxito las especificaciones del producto en el laboratorio durante la fase de desarrollo, los ingenieros de productos se enfrentan a muchos desafíos cuando intentan producir en serie esos diseños. El circuito integrado debe aumentarse hasta volúmenes de producción con un rendimiento aceptable. El objetivo de la fase de producción es alcanzar volúmenes de producción en serie a un coste aceptable.

Nutritivo

Una vez que un diseño está maduro y ha llegado a la producción en masa, es necesario mantenerlo. El proceso debe supervisarse continuamente y los problemas deben solucionarse rápidamente para evitar un impacto significativo en los volúmenes de producción. El objetivo de mantenerlo es mantener los volúmenes de producción y reducir continuamente los costos hasta que el producto llegue al final de su vida útil .

Proceso de diseño

Microarquitectura y diseño a nivel de sistema

El proceso inicial de diseño de un chip comienza con el diseño a nivel de sistema y la planificación de la microarquitectura. En las empresas de diseño de circuitos integrados, la dirección y, a menudo, los analistas redactarán una propuesta para que un equipo de diseño comience a diseñar un nuevo chip que se adapte a un segmento de la industria. Los diseñadores de nivel superior se reunirán en esta etapa para decidir cómo funcionará funcionalmente el chip. En este paso es donde se deciden la funcionalidad y el diseño de un circuito integrado. Los diseñadores de circuitos integrados trazarán los requisitos funcionales, los bancos de pruebas de verificación y las metodologías de prueba para todo el proyecto, y luego convertirán el diseño preliminar en una especificación a nivel de sistema que se puede simular con modelos simples utilizando lenguajes como C++ y MATLAB y herramientas de emulación. Para los diseños puros y nuevos, la etapa de diseño del sistema es donde se planifica un conjunto de instrucciones y una operación, y en la mayoría de los chips se modifican los conjuntos de instrucciones existentes para una funcionalidad más nueva. El diseño en esta etapa a menudo consiste en declaraciones como codifica en formato MP3 o implementa la aritmética de punto flotante IEEE . En etapas posteriores del proceso de diseño, cada una de estas declaraciones de apariencia inocente se expande a cientos de páginas de documentación textual.

Diseño RTL

Una vez acordado el diseño del sistema, los diseñadores de RTL implementan los modelos funcionales en un lenguaje de descripción de hardware como Verilog , SystemVerilog o VHDL . Mediante el uso de componentes de diseño digital como sumadores, desplazadores y máquinas de estado, así como conceptos de arquitectura informática como canalización, ejecución superescalar y predicción de bifurcaciones , los diseñadores de RTL descompondrán una descripción funcional en modelos de hardware de componentes en el chip que trabajan juntos. Cada una de las declaraciones simples descritas en el diseño del sistema puede convertirse fácilmente en miles de líneas de código RTL , por lo que es extremadamente difícil verificar que el RTL hará lo correcto en todos los casos posibles que el usuario pueda plantearle.

Para reducir la cantidad de errores de funcionalidad, un grupo de verificación de hardware independiente tomará el RTL y diseñará bancos de pruebas y sistemas para verificar que el RTL realmente esté realizando los mismos pasos bajo muchas condiciones diferentes, clasificado como el dominio de la verificación funcional . Se utilizan muchas técnicas, ninguna de ellas perfecta pero todas útiles: simulación lógica extensa , métodos formales , emulación de hardware , verificación de código tipo lint , cobertura de código , etc. La verificación como la que realizan los emuladores se puede llevar a cabo en FPGA o procesadores especiales, [8] [9] y la emulación reemplazó a la simulación. La simulación se realizó inicialmente simulando puertas lógicas en chips, pero más tarde, se simularon RTL en chips. [10] La simulación aún se usa al crear diseños de chips analógicos. [11] Las plataformas de creación de prototipos se utilizan para ejecutar software en prototipos del diseño del chip mientras está en desarrollo utilizando FPGA, pero son más lentas para iterar o modificar y no se pueden usar para visualizar señales de hardware como aparecerían en el diseño terminado. [12]

Un pequeño error en este caso puede hacer que todo el chip quede inservible, o algo peor. El famoso error FDIV del Pentium hizo que los resultados de una división fueran incorrectos en un máximo de 61 partes por millón, en casos que ocurrieron muy infrecuentemente. Nadie se dio cuenta hasta que el chip ya llevaba meses en producción. Sin embargo, Intel se vio obligada a ofrecer reemplazar, de forma gratuita, todos los chips vendidos hasta que pudieran solucionar el error, a un costo de 475 millones de dólares (EE.UU.). [ cita requerida ]

Diseño físico

Pasos de diseño físico dentro del flujo de diseño digital

El RTL es solo un modelo de comportamiento de la funcionalidad real de lo que se supone que debe hacer funcionar el chip. No tiene relación con un aspecto físico de cómo funcionaría el chip en la vida real en lo que respecta a los materiales, la física y la ingeniería eléctrica. Por este motivo, el siguiente paso en el proceso de diseño de circuitos integrados, la etapa de diseño físico , es convertir el RTL en representaciones geométricas reales de todos los dispositivos electrónicos, como condensadores, resistencias, puertas lógicas y transistores que se instalarán en el chip.

A continuación se enumeran los pasos principales del diseño físico. En la práctica, no existe una progresión sencilla: se requiere una iteración considerable para garantizar que se cumplan todos los objetivos simultáneamente. Este es un problema difícil en sí mismo, llamado cierre del diseño .

Diseño analógico

Antes de la llegada de los microprocesadores y las herramientas de diseño basadas en software, los circuitos integrados analógicos se diseñaban utilizando cálculos manuales y piezas de kit de proceso. Estos circuitos integrados eran circuitos de baja complejidad, por ejemplo, amplificadores operacionales , que normalmente implicaban no más de diez transistores y pocas conexiones. A menudo era necesario un proceso iterativo de prueba y error y una "sobreingeniería" del tamaño del dispositivo para lograr un circuito integrado fabricable. La reutilización de diseños probados permitió construir circuitos integrados progresivamente más complicados a partir de conocimientos previos. Cuando el procesamiento informático económico estuvo disponible en la década de 1970, se escribieron programas informáticos para simular diseños de circuitos con mayor precisión que la práctica mediante cálculos manuales. El primer simulador de circuitos para circuitos integrados analógicos se llamó SPICE (Programa de simulación con énfasis en circuitos integrados). Las herramientas de simulación de circuitos informáticos permiten una mayor complejidad de diseño de circuitos integrados que la que se puede lograr con los cálculos manuales, lo que hace que el diseño de ASIC analógicos sea práctico.

Como en el diseño analógico se deben tener en cuenta muchas restricciones funcionales, el diseño manual sigue estando muy extendido hoy en día, en contraste con el diseño digital, que está altamente automatizado, incluido el enrutamiento y la síntesis automatizados. [14] Como resultado, los flujos de diseño modernos para circuitos analógicos se caracterizan por dos estilos de diseño diferentes: de arriba hacia abajo y de abajo hacia arriba. [15] El estilo de diseño de arriba hacia abajo hace uso de herramientas basadas en optimización similares a los flujos digitales convencionales. Los procedimientos de abajo hacia arriba reutilizan el "conocimiento experto" con el resultado de soluciones previamente concebidas y capturadas en una descripción procedimental, imitando la decisión de un experto. [15] Un ejemplo son los generadores de celdas, como PCells .

Cómo afrontar la variabilidad

Un desafío crítico para el diseño de circuitos integrados analógicos involucra la variabilidad de los dispositivos individuales construidos en el chip semiconductor. A diferencia del diseño de circuitos a nivel de placa, que permite al diseñador seleccionar dispositivos que han sido probados y agrupados según el valor, los valores de los dispositivos en un circuito integrado pueden variar ampliamente, lo cual es incontrolable para el diseñador. Por ejemplo, algunas resistencias de circuito integrado pueden variar ±20% y β de un BJT integrado puede variar de 20 a 100. En los últimos procesos CMOS, β de transistores PNP verticales puede incluso ir por debajo de 1. Para aumentar el desafío del diseño, las propiedades de los dispositivos a menudo varían entre cada oblea de semiconductor procesada. Las propiedades de los dispositivos pueden incluso variar significativamente en cada circuito integrado individual debido a los gradientes de dopaje . La causa subyacente de esta variabilidad es que muchos dispositivos semiconductores son muy sensibles a variaciones aleatorias incontrolables en el proceso. Pequeños cambios en la cantidad de tiempo de difusión, niveles de dopaje desiguales, etc. pueden tener grandes efectos en las propiedades del dispositivo.

Algunas técnicas de diseño utilizadas para reducir los efectos de la variación del dispositivo son: [16]

Vendedores

Las tres empresas más grandes que venden herramientas de automatización de diseño electrónico son Synopsys , Cadence y Mentor Graphics . [17]

Véase también

Referencias

  1. ^ Parker Brakus (17 de mayo de 2022). «CI analógico: comprensión de su importancia, funciones y aplicaciones». Quarktwin – vía www.quarktwin.com.
  2. ^ "Para su información: los chips de computadora actuales son tan avanzados que son más 'mercuriales' que precisos, y aquí está la prueba".
  3. ^ "Ahora Google está usando IA para diseñar chips, mucho más rápido de lo que los ingenieros humanos pueden hacer el trabajo". ZDNet .
  4. ^ Jacob Ridley (26 de diciembre de 2022). "Dentro de Intel: esto es lo que se necesita para fabricar una CPU de vanguardia para juegos". PC Gamer – vía www.pcgamer.com.
  5. ^ Shimpi, Anand Lal. "Dentro de Intel: del silicio al mundo". www.anandtech.com .
  6. ^ ab Chen, Wai-Kai (3 de octubre de 2018). Manual de VLSI. CRC Press. ISBN 978-1-4200-0596-7.
  7. ^ Tokuda, T.; Korematsu, J.; Shimazu, Y.; Sakashita, N.; Kengaku, T.; Fugiyama, T.; Ohno, T.; Tomisawa, O. (7 de diciembre de 1988). "Un enfoque de macrocelda para el diseño de procesadores VLSI". IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems . 7 (12): 1272–1277. doi :10.1109/43.16805 – vía IEEE Xplore.
  8. ^ "Cadence presenta Palladium XP II". 18 de febrero de 2024.
  9. ^ "Procesadores para emular procesadores: el Palladium II | Museo CPU Shack". 21 de octubre de 2016.
  10. ^ "Emulación basada en transacciones". 24 de marzo de 2024.
  11. ^ "Cadence contraataca a Synopsys con una nueva herramienta de simulación de circuitos". 21 de mayo de 2021.
  12. ^ "Los primeros emuladores de Spring". 13 de abril de 2021.
  13. ^ J. Lienig, J. Scheible (2020). "Capítulo 3.3: Datos de máscara: posprocesamiento de diseño". Fundamentos del diseño de circuitos electrónicos. Springer. págs. 102-110. doi :10.1007/978-3-030-39284-0. ISBN 978-3-030-39284-0. Número de identificación del sujeto  215840278.
  14. ^ https://www-group.slac.stanford.edu/ais/publicDocs/presentation137.pdf [ URL básica PDF ]
  15. ^ por J. Lienig, J. Scheible (2020). "Cap. 4.6: Flujos de diseño analógico y digital". Fundamentos del diseño de trazado para circuitos electrónicos. Springer. págs. 151–159. doi :10.1007/978-3-030-39284-0. ISBN 978-3-030-39284-0. Número de identificación del sujeto  215840278.
  16. ^ Basu, Joydeep (9 de octubre de 2019). "Del diseño a la producción en cinta en la tecnología de fabricación de circuitos integrados CMOS de 180 nm SCL". Revista de Educación IETE . 60 (2): 51–64. arXiv : 1908.10674 . doi :10.1080/09747338.2019.1657787. S2CID  201657819.
  17. ^ "Desarrollos de modelos multi-CAD" (PDF) . Tendencias del mercado IC CAD 2015. 2015-07-11.

Lectura adicional