El diseño de circuitos integrados se puede dividir aproximadamente en dos categorías: diseño de circuitos integrados digitales y diseño de circuitos integrados analógicos. Ver: Circuitos analógicos y circuitos integrados de señal mixta
Otra gran rama del diseño de circuitos integrados es el diseño de circuitos integrados analógicos. Esta rama suele centrarse en circuitos integrados de potencia, circuitos integrados de radiofrecuencia, etc. Dado que las señales del mundo real son analógicas, los circuitos integrados para la conversión de analógico a digital y de digital a analógico también se utilizan ampliamente en productos electrónicos. Los circuitos integrados analógicos incluyen amplificadores operacionales, rectificadores lineales, bucles de bloqueo de fase, circuitos osciladores, filtros activos, etc. En comparación con el diseño de circuitos integrados digitales, el diseño de circuitos integrados analógicos tiene una mayor relación con las propiedades físicas del dispositivo semiconductor, como su ganancia, coincidencia de circuitos, disipación de potencia, impedancia, etc. La amplificación y filtrado de señales analógicas requiere que el circuito tenga cierta fidelidad a la señal. Por lo tanto, los circuitos integrados analógicos utilizan más dispositivos de área grande que los circuitos integrados digitales y su nivel de integración es relativamente bajo.
Antes de la aparición de los microprocesadores y los métodos de diseño asistido por ordenador, los circuitos integrados analógicos se diseñaban íntegramente mediante métodos manuales. Debido a la capacidad limitada de los seres humanos para abordar problemas complejos, los circuitos integrados analógicos en ese momento solían ser circuitos relativamente básicos, y los circuitos integrados con amplificadores operacionales eran un ejemplo típico. En aquellos días, un circuito integrado de este tipo podía incluir una docena de transistores y las interconexiones entre ellos. Para que el diseño de circuitos integrados analógicos alcance el nivel de producción industrial, los ingenieros deben realizar múltiples iteraciones para probar y solucionar problemas. La reutilización de diseños que han sido diseñados y verificados puede formar circuitos integrados más complejos. Después de la década de 1970, el precio de las computadoras bajó gradualmente y cada vez más ingenieros pudieron utilizar esta herramienta moderna para ayudar en el diseño. Por ejemplo, utilizaron programas informáticos preparados para realizar simulaciones, lo que les permitió lograr mejores resultados que antes. cálculos y diseños manuales de precisión. SPICE es el primer software para simulación de circuitos integrados analógicos, que literalmente significa "Programa de simulación con énfasis en circuitos integrados (inglés: Programa de simulación con énfasis en circuitos integrados)". Las herramientas de simulación de circuitos basadas en diseño asistido por computadora pueden adaptarse a circuitos integrados modernos más complejos, especialmente circuitos integrados para aplicaciones específicas. El uso de computadoras para la simulación también puede permitir que se descubran algunos errores en el diseño del proyecto antes de que se fabrique el hardware, reduciendo así una gran cantidad de costos causados por pruebas y resolución de problemas repetidas. Además, las computadoras a menudo pueden completar algunas tareas extremadamente complejas y tediosas que los humanos son incapaces de realizar, lo que hace posible realizar tareas como el método Monte Carlo. Las herramientas de simulación por computadora también pueden simular y procesar desviaciones que encontrarán los circuitos de hardware reales y que son inconsistentes con las condiciones ideales, como desviaciones de temperatura y desviaciones de concentración de dopaje de semiconductores en los dispositivos. En resumen, el diseño y la simulación de circuitos computarizados pueden mejorar el rendimiento del diseño de circuitos y garantizar mejor su capacidad de fabricación. A pesar de esto, en comparación con los circuitos integrados digitales, el diseño de circuitos integrados analógicos tiene requisitos más estrictos en cuanto a experiencia, compensaciones y otras habilidades de los ingenieros. Ver: Circuitos digitales
En términos generales, los circuitos integrados digitales se pueden dividir en los siguientes pasos básicos: definición del sistema, diseño del nivel de transferencia de registros y diseño físico. Según el nivel de abstracción de la lógica, el diseño se divide en nivel de comportamiento del sistema, nivel de transferencia de registros y nivel de puerta lógica. Los diseñadores deben escribir código funcional correctamente, configurar herramientas de síntesis, verificar el rendimiento de la sincronización lógica, planificar estrategias de diseño físico y más. En puntos específicos del proceso de diseño, se requieren múltiples inspecciones y depuración de funciones lógicas, restricciones de tiempo y reglas de diseño para garantizar que los resultados finales del diseño cumplan con los objetivos de convergencia del diseño original.
Definición del sistema
Ver: Síntesis avanzada
La definición del sistema es la planificación inicial para el diseño de circuitos integrados. En esta etapa, los diseñadores deben considerar las funciones macroscópicas de. el sistema.
Los diseñadores pueden utilizar algunos lenguajes y herramientas de modelado muy abstractos para completar la descripción del hardware, como lenguajes de modelado a nivel de transacción como lenguaje C, C, SystemC y SystemVerilog, así como herramientas como Simulink y MATLAB para modelar señales. Aunque la corriente principal actual se centra en el diseño de niveles de transferencia de registros, existen algunas síntesis de alto nivel (o síntesis de nivel de comportamiento) y herramientas de verificación avanzadas que se transforman directamente de una descripción a nivel de sistema a una descripción de nivel abstracto bajo (como la puerta lógica). descripción de la estructura de niveles) Se encuentra en etapa de desarrollo.
En la etapa de definición del sistema, los diseñadores también planifican los indicadores de rendimiento esperados, como el proceso, el consumo de energía, la frecuencia del reloj y la temperatura de funcionamiento del chip.
Diseño de niveles de transferencia de registros
Ver: nivel de transferencia de registros, lenguaje de descripción de hardware, Verilog y VHDL
El diseño de circuitos integrados actuales a menudo se lleva a cabo en la transferencia de registros nivel, utiliza un lenguaje de descripción de hardware para describir el almacenamiento de señales de circuitos integrados digitales y la transmisión de señales entre unidades lógicas como registros, memorias, dispositivos lógicos combinacionales y buses. Al diseñar un código de nivel de transferencia de registro, el diseñador traduce la definición del sistema en una descripción del nivel de transferencia de registro. Los dos lenguajes de descripción de hardware más utilizados por los diseñadores en este nivel de abstracción son Verilog y VHDL, que fueron estandarizados por el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) en 1995 y 1987 respectivamente. Debido al lenguaje de descripción de hardware, los diseñadores pueden centrarse más en la implementación de funciones, lo cual es mejor que el método anterior de diseñar directamente cableado lógico a nivel de puerta (el uso de lenguajes de descripción de hardware aún puede diseñar directamente listas de red a nivel de puerta, pero Menos la gente trabaja de esta manera) con mayor eficiencia.
Verificación del diseño
Ver: verificación funcional, verificación formal, análisis de tiempo estático, lenguaje de verificación de hardware y verificación avanzada
Después de que el diseñador completa el diseño del nivel de transferencia de registro Se utilizarán plataformas de prueba, verificación formal, afirmaciones, etc. para realizar la verificación funcional y verificar la exactitud del diseño del proyecto. Si hay errores, es necesario detectar lagunas en los archivos de diseño anteriores. En todo el proceso de diseño de los circuitos VLSI modernos, la verificación requiere cada vez más tiempo y esfuerzo, superando incluso el nivel de transferencia de registros del propio diseño. Se han desarrollado nuevas herramientas y lenguajes específicamente para la verificación.
Por ejemplo, para implementar un sumador simple o una unidad lógica aritmética más compleja, o usar flip-flops para implementar una máquina de estados finitos, los diseñadores pueden escribir códigos de lenguaje de descripción de hardware de diferentes tamaños. La verificación funcional es una tarea compleja. El verificador necesita establecer un entorno externo virtual para el diseño bajo prueba, proporcionar señales de entrada para el diseño bajo prueba (esta señal agregada artificialmente a menudo se expresa con el término "estímulo") y luego observar el diseño bajo prueba Si la función del puerto de salida diseñado cumple con las especificaciones de diseño.
Cuando el circuito diseñado no consiste simplemente en unos pocos puertos de entrada y salida, dado que la verificación debe considerar todas las condiciones de entrada tanto como sea posible, la definición de la señal de excitación se volverá más complicada, a veces incluso formal. Se requieren métodos de verificación. A veces, los ingenieros utilizan ciertos lenguajes de programación (como Perl, Tcl) para escribir programas de verificación y utilizan el procesamiento de alta velocidad de programas informáticos para lograr una mayor cobertura de prueba. Los lenguajes de verificación de hardware modernos pueden proporcionar algunas características específicas de verificación, como variables aleatorias con restricciones, cobertura, etc. Como lenguaje unificado para el diseño y verificación de hardware, SystemVerilog se desarrolla en base a Verilog, por lo que tiene características de diseño y características de plataforma de prueba, e introduce la idea de programación orientada a objetos, por lo que la escritura de la plataforma de prueba está más cerca. pruebas. Para la síntesis de alto nivel, también se están investigando herramientas de automatización de diseño electrónico para verificación de alto nivel.
La frecuencia de reloj de los circuitos integrados modernos ha alcanzado el nivel de megahercios y las relaciones de sincronización dentro de una gran cantidad de módulos y entre módulos son extremadamente complejas. Por lo tanto, además de verificar la función lógica del circuito, También se requiere un análisis de temporización, es decir, se comprueba el retraso de la señal en la ruta de transmisión para determinar si cumple con los requisitos de cierre de temporización.
Síntesis lógica
Artículo principal: Síntesis lógica
El código del lenguaje de descripción de hardware diseñado por ingenieros generalmente se encuentra en el nivel de transferencia de registros y debe usarse antes. Diseño físico Las herramientas de síntesis lógica convierten el código de nivel de transferencia de registro en listas de red lógicas de nivel de puerta específicas del proceso y completan la reducción lógica.
De manera similar a la optimización lógica manual que requiere la ayuda de mapas de Karnaugh, las herramientas de automatización de diseño electrónico también requieren algoritmos específicos (como el algoritmo Quine-McCluskey, etc.) para completar la síntesis lógica y simplificar el proceso de diseño. Función lógica definida. Los archivos de entrada a la herramienta de síntesis automática incluyen código de lenguaje de descripción de hardware de nivel de transferencia de registro, biblioteca de procesos y archivos de restricciones de diseño. El formato de estos archivos puede ser diferente en diferentes sistemas de conjunto de herramientas de automatización de diseño electrónico. La herramienta de síntesis lógica generará una lista de red optimizada a nivel de puerta, pero esta lista de red todavía se basa en un lenguaje de descripción de hardware, y el cableado de esta lista de red en el chip semiconductor se completará en el diseño físico.
Seleccionar bibliotecas de procesos correspondientes a diferentes dispositivos (como circuitos integrados de aplicaciones específicas o conjuntos de puertas programables en campo, etc.) para la síntesis lógica, o establecer diferentes estrategias de restricción durante la síntesis, producirá diferentes resultados de síntesis. El código de nivel de transferencia de registros afectará la eficiencia de la lista de red sintetizada debido a factores como la división lógica y el estilo de estructura del lenguaje del proyecto de diseño.
En la actualidad, la mayoría de las herramientas de síntesis maduras se basan en la descripción del nivel de transferencia de registros, mientras que las herramientas de síntesis de alto nivel basadas en la descripción del nivel del sistema aún se encuentran en la etapa de desarrollo.
Dado que la biblioteca de procesos contiene información de tiempo en formato de retardo estándar, se puede realizar un análisis de tiempo estático más preciso de la lista de red a nivel de puerta bajo el proceso después de la síntesis lógica, lo que garantiza aún más que el diseño antes y después de la síntesis pueda lograr la misma función.
Diseño Físico
Artículo principal: Diseño Físico
Ver también: Plano de Planta, Layout (Circuitos Integrados), Cableado (Circuitos Integrados), Layout de Circuito Integrado y Baja -diseño de energía
Una vez completada la síntesis lógica, al introducir la información del proceso proporcionada por la empresa fabricante del dispositivo, el diseño previamente completado ingresará a las etapas de planificación, diseño y cableado. Los ingenieros deben considerar el retraso. , consumo de energía, información de restricción como el área, establezca razonablemente los parámetros de la herramienta de diseño físico y depure continuamente para obtener el mejor diseño del circuito integrado, determinando así la ubicación física de los componentes en la oblea.
A medida que los tamaños de las características de los circuitos integrados modernos continúan disminuyendo, los circuitos integrados de muy gran escala han entrado en la etapa submicrónica profunda, y el impacto del retardo de la línea de interconexión en el rendimiento del circuito ha alcanzado o incluso superado el Impacto del retardo de la puerta lógica. En este momento, los factores que deben considerarse incluyen el efecto capacitivo de la red de cables y el efecto de inductancia de la red de cables. La caída de voltaje causada por la gran corriente en la línea eléctrica dentro del chip y la resistencia de la red de cables también afectarán. la estabilidad del circuito integrado. Para resolver estos problemas y aliviar los efectos negativos de la desviación del reloj y los parámetros parásitos del árbol del reloj, el diseño y el enrutamiento razonables son tan importantes como procesos como el diseño lógico y la verificación funcional. Con el desarrollo de los dispositivos móviles, el diseño de bajo consumo de energía se ha vuelto cada vez más prominente en el diseño de circuitos integrados. En la etapa de diseño físico, el diseño se puede convertir en una representación geométrica, lo que se denomina diseño de circuito integrado. Existen varios formatos de archivo estandarizados en la industria para regularlo.
Cabe señalar que las funciones implementadas por el circuito han sido determinadas en el diseño del nivel de transferencia de registros anterior. En la etapa de diseño físico, los ingenieros no solo no pueden permitir que las funciones lógicas y de sincronización previamente diseñadas se dañen durante el diseño en esta etapa, sino que también optimizan aún más el rendimiento del chip en términos de tiempo de retardo, consumo de energía, área y otros aspectos. cuando se ejecuta correctamente. Después de que el diseño físico genera archivos de diseño preliminares, los ingenieros deben verificar nuevamente las funciones, la sincronización, las reglas de diseño, la integridad de la señal, etc. del circuito integrado para garantizar que el diseño físico genere archivos de diseño de hardware correctos.
Seguimiento: Fabricación de procesos específicos
Ver: fabricación de dispositivos semiconductores, empresas de semiconductores sin fábrica y fundiciones de obleas
Finalmente se completa la fábrica de fabricación de semiconductores según el Diseño físico, se pueden utilizar archivos de diseño estandarizados que hayan pasado varias inspecciones para crear circuitos físicos reales.
Este paso ya no pertenece al ámbito del diseño de circuitos integrados y la ingeniería informática, sino que entra directamente en el campo del proceso de fabricación de semiconductores. El foco de atención también se ha centrado en la producción de materiales y dispositivos específicos, como la fotolitografía. , grabado, física, deposición de vapor, deposición química de vapor, etc.
Las empresas de circuitos integrados tradicionales pueden completar el diseño y la fabricación de circuitos integrados al mismo tiempo. Dado que los equipos y las materias primas necesarios para la fabricación de circuitos integrados son caros, las empresas comunes y corrientes simplemente no pueden permitírselos. Una vez que se produce un cambio de nodo de proceso (como pasar de un proceso de 65 nanómetros a uno de 45 nanómetros), es posible que las empresas deban gastar costos considerables para reemplazar el equipo de proceso existente, lo que impone una carga financiera considerable a muchas empresas. Ahora, algunas empresas están abandonando gradualmente el modelo de diseño y fabricación, reduciendo su ámbito de negocio al diseño y la verificación en sí, y confiando flujos de procesos de semiconductores específicos a fábricas que se especializan en la fabricación de circuitos integrados. Las empresas que no tienen ningún proceso de fabricación (sin fábrica) y solo realizan diseño y verificación se denominan empresas de semiconductores sin fábrica. Los ejemplos típicos incluyen Qualcomm, AMD, Nvidia, etc., mientras que las empresas que son específicamente responsables de la fabricación se denominan fundiciones de obleas. TSMC y otros. Existe un tipo especial de empresas de semiconductores sin fábrica que no envían directamente proyectos de diseño a las fábricas para su fabricación, sino que empaquetan estos proyectos en forma de núcleos IP y los venden como productos básicos a otras empresas de semiconductores sin fábrica.