En la automatización del diseño electrónico , una regla de diseño es una restricción geométrica impuesta a los diseñadores de placas de circuitos , dispositivos semiconductores y circuitos integrados (CI) para garantizar que sus diseños funcionen de manera adecuada, confiable y puedan producirse con un rendimiento aceptable. Los ingenieros de procesos desarrollan reglas de diseño para la producción en función de la capacidad de sus procesos para hacer realidad la intención del diseño. La automatización del diseño electrónico se utiliza ampliamente para garantizar que los diseñadores no violen las reglas de diseño; un proceso llamado verificación de reglas de diseño ( DRC ). La DRC es un paso importante durante la aprobación de la verificación física del diseño, que también involucra verificaciones LVS ( diseño versus esquema ), verificaciones XOR, ERC ( verificación de reglas eléctricas ) y verificaciones de antena. La importancia de las reglas de diseño y la DRC es mayor para los CI, que tienen geometrías de micro o nanoescala; para procesos avanzados, algunas fábricas también insisten en el uso de reglas más restringidas para mejorar el rendimiento.
Las reglas de diseño son una serie de parámetros proporcionados por los fabricantes de semiconductores que permiten al diseñador verificar la exactitud de un conjunto de máscaras . Las reglas de diseño son específicas de un proceso de fabricación de semiconductores en particular. Un conjunto de reglas de diseño especifica ciertas restricciones geométricas y de conectividad para garantizar márgenes suficientes para tener en cuenta la variabilidad en los procesos de fabricación de semiconductores, de modo de garantizar que la mayoría de las piezas funcionen correctamente.
Las reglas de diseño más básicas se muestran en el diagrama de la derecha. Las primeras son reglas de una sola capa. Una regla de ancho especifica el ancho mínimo de cualquier forma en el diseño. Una regla de espaciado especifica la distancia mínima entre dos objetos adyacentes. Estas reglas existirán para cada capa del proceso de fabricación de semiconductores, siendo las capas más bajas las que tienen las reglas más pequeñas (normalmente 100 nm a partir de 2007) y las capas de metal más altas las que tienen reglas más grandes (quizás 400 nm a partir de 2007).
Una regla de dos capas especifica una relación que debe existir entre dos capas. Por ejemplo, una regla de encapsulamiento puede especificar que un objeto de un tipo, como un contacto o una vía, debe estar cubierto, con un margen adicional, por una capa de metal. Un valor típico a partir de 2007 podría ser de aproximadamente 10 nm.
Existen muchos otros tipos de reglas que no se ilustran aquí. Una regla de área mínima es simplemente lo que implica el nombre. Las reglas de antena son reglas complejas que verifican las proporciones de las áreas de cada capa de una red para configuraciones que pueden generar problemas cuando se graban las capas intermedias. [1] Existen muchas otras reglas similares y se explican en detalle en la documentación proporcionada por el fabricante del semiconductor.
Las reglas de diseño académico suelen especificarse en términos de un parámetro escalable, λ , de modo que todas las tolerancias geométricas de un diseño se puedan definir como múltiplos enteros de λ . Esto simplifica la migración de los diseños de chips existentes a procesos más nuevos. Las reglas industriales están más optimizadas y solo se aproximan a un escalamiento uniforme. Los conjuntos de reglas de diseño se han vuelto cada vez más complejos con cada generación posterior de procesos de semiconductores. [2]
El objetivo principal de la verificación de reglas de diseño (DRC) es lograr un alto rendimiento general y confiabilidad para el diseño. Si se violan las reglas de diseño, el diseño puede no ser funcional. Para cumplir con este objetivo de mejorar el rendimiento de las matrices, la DRC ha evolucionado desde simples mediciones y verificaciones booleanas hasta reglas más complejas que modifican las características existentes, insertan nuevas características y verifican todo el diseño para detectar limitaciones de proceso, como la densidad de capas. Un diseño completo consta no solo de la representación geométrica del diseño, sino también de datos que brindan soporte para la fabricación del diseño. Si bien las verificaciones de reglas de diseño no validan que el diseño funcionará correctamente, se construyen para verificar que la estructura cumple con las restricciones del proceso para un tipo de diseño y una tecnología de proceso determinados.
El software DRC generalmente toma como entrada un diseño en el formato estándar GDSII y una lista de reglas específicas para el proceso de semiconductores elegido para la fabricación. A partir de esto, genera un informe de violaciones de las reglas de diseño que el diseñador puede decidir corregir o no. A menudo se utiliza el "estiramiento" o la omisión cuidadosa de ciertas reglas de diseño para aumentar el rendimiento y la densidad de los componentes a expensas del rendimiento.
Los productos DRC definen reglas en un lenguaje para describir las operaciones que se deben realizar en DRC. Por ejemplo, Mentor Graphics utiliza el lenguaje Standard Verification Rule Format (SVRF) en sus archivos de reglas DRC y Magma Design Automation utiliza un lenguaje basado en Tcl . [3] Un conjunto de reglas para un proceso en particular se conoce como conjunto de ejecución, conjunto de reglas o simplemente conjunto de reglas.
La DRC es una tarea muy intensiva en términos computacionales. [4] Por lo general, las comprobaciones de DRC se ejecutarán en cada subsección del ASIC para minimizar la cantidad de errores que se detectan en el nivel superior. Si se ejecuta en una sola CPU, los clientes pueden tener que esperar hasta una semana para obtener el resultado de una comprobación de reglas de diseño para diseños modernos. La mayoría de las empresas de diseño requieren que la DRC se ejecute en menos de un día para lograr tiempos de ciclo razonables, ya que la DRC probablemente se ejecutará varias veces antes de completar el diseño. Con la potencia de procesamiento actual, las DRC de chip completo pueden ejecutarse en tiempos mucho más cortos, tan rápido como una hora, dependiendo de la complejidad y el tamaño del chip.
Algunos ejemplos de DRC en el diseño de circuitos integrados incluyen:
Los principales productos en el área de EDA en la República Democrática del Congo incluyen: