Download Introducción al CAD-EDA
Document related concepts
no text concepts found
Transcript
Introducción al CAD-EDA − Evolución del diseño electrónico − Modelado de sistemas − Lenguajes de descripción de hardware − Metodologías y flujos de diseño EVOLUCIÓN DEL DISEÑO ELECTRÓNICO. Años 70: •Tecnologías más usadas: CI digitales: NMOS CI analógicos: bipolar •CI componentes estándar diseñados e implementados en las fábricas. •Diseño altamente manual, concentrado en niveles eléctricos (conexiones y caracterísicas a nivel de transistor) y topográficos (layouts) •Herramienta CAD: SPICE. •Memorias DRAM de 1 Kbit (1970). µP 4004 (PMOS) de 4 bits (1971). Finales de la década: memorias de 16 Kbits y procesadores de 16 bits (8086). •Estos avances facilitan la aparición de nuevas plataformas Hw. Nacimiento de los miniordenadores; fin de los mainframes. EVOLUCIÓN DEL DISEÑO ELECTRÓNICO. Años 80: •Tecnologías más usadas: CI digitales: CMOS CI analógicos y mixtos: bipolar A finales de la década: BiCMOS, facilita el desarrollo de circuitos mixtos A/D •Desfase entre tecnología y diseño. La escasez de herramientas y metodologías de diseño dificultan y encarecen la fabricación de CI complejos. •CI siguen desarrollando componentes estándar de mayor complejidad. Aparecen los CI que pueden ser diseñados por los ingenieros de la aplicación. EVOLUCIÓN DEL DISEÑO ELECTRÓNICO. Años 80: •Cronológicamente: – Full-custom. El diseñador acomete los niveles eléctricos y geométricos. ) s t i Grandes volúmenes o/y proyectos con grandes restriccionescu (area, tamaño, r i consumo...) C d e t – Matrices de puertas predifundidas (semi-custom/gate arrays). ra g te Estructura regular de dispositivos básicos I(transistores) prefabricada, n personalizable mediante un conexionado fic específico. Diseño a base de i c biblioteca de celdas. pe S on i – Celdas estándar precaracterizadas (semi-custom/estándar-cells). No t a lic existe estructura fijapprefabricada. Se cuenta con bibliotecas de celdas y p A módulos precaracterizados y específicos para cada tecnología. Bastante ( C I libertadA de Sdiseño pero el desarrollo exige un proceso de fabricación completo. – Lógica programable (FPGA, CPLD). Dispositivos totalmente fabricados y verificados, personalizables desde el exterior mediante técnicas de programación (RAM, fusibles ...). Diseño basado en bibliotecas y mecanismos específicos de mapeado de funciones. La implementación tan solo requiere de una fase de programación que puede realizar el propio diseñador. EVOLUCIÓN DEL DISEÑO ELECTRÓNICO. Años 80: • Herramientas CAD: – Nivel físico: Diseño eléctrico y geométrico de celdas y bloques básicos mediante técnicas de diseño a medida. Procesos de ubicación y conexionado (place & route) de celdas y bloques para generar la topografía del circuito a partir de su esquema de componentes y conexionado. Procesos de verificación eléctrica y geométrica presentes en ambos contextos. – Nivel de puertas (estructural: componentes y conexiones): captura de esquemas, simulación funcional y de faltas, análisis de tiempos, generación de estructuras y vectores de test, etc. – La herramientas CAD forman entornos integrados que comparten una base de datos y un interfaz único. – Se empiezan a desarrollar métodos y herramientas para abordar el diseño a nivel funcional. En 1987 nace el VHDL cuya implantación definitiva tendrá lugar en la década siguiente Iteraciones de corrección, retroanotación y validación Nivel funcional Fabricación test y producción Diseño a nivel Diseño a arquitectural nivel físico estructural Requisitos, restricciones y especificaciones funcionales Captura de diseño (esquemático) Simulaciones (pre/post-diseño físico): funcional-lógica, temporal, fallos Ubicación y conexionado (layout) Biblioteca de celdas Estímulos de simulaciones + Vectores de test Verificación y análisis Fabricación Test de prototipos Producción Flujo genérico de diseño ascendente de circuitos semicustom ASIC y FPGA Diseño físico distinto en ASIC y FPGA, Los FPGA no necesitan test estructural EVOLUCIÓN DEL DISEÑO ELECTRÓNICO. Años 90: • Tecnologías utilizadas: CMOS 75% de mercado. Bipolares/ECL 15% BiCMOS crece hasta un 5% NMOS, TTL, AsGa 5% • Nuevas tecnologías de encapsulado: módulos multichip (MCM multichip modules): Chips en forma de dado sobre diversos tipos de sustratos en los que previamente se habrán implementado las conexiones entre los distintos chips. Técnica que aumenta las prestaciones (consumo, velocidad) y reduce el tamaño de los sistemas electrónicos. • Avances en tecnologías submicrónicas (procesos CMOS capaces de albergar millones de transistores en pocos mm2). Posibilidad de incluir sistemas completos en un chip de silicio (SoC, systems on chip;SoS systems on silicon). El cuello de botella está más en el diseño que en la tecnología. • Los diseños complejos se basan en macro bloques funcionales (CPU, DSP, microcontrolador...) desarrollados a nivel Sw (ejem. Código VHDL sintetizable) u optimizados a nivel Hw (layout o topografías específicas). • Aumento del diseño A/D (BiCMOS). Avances en diseños A/D/P. • Los ASIC (custom y semicustom) pierden relevancia frente a las enormes prestaciones y complejidad de los dispositivos programables. Solo se utilizan en producciones elevadas o con requisitos muy restrictivos. EVOLUCIÓN DEL DISEÑO ELECTRÓNICO. Años 90: • Metodologías: –Implantación progresiva de lenguajes de descripción de software (Verilog y VHDL) que junto con herramientas de simulación y síntesis promueven metodologías de diseño descendente (top-down). –El esfuerzo del diseño se concentra en el nivel funcional arquitectural → diseños independientes de la tecnología. –Simulación mixta multinivel (funcional, RT y lógica). –Síntesis: comportamental en fase de desarrollo. RT, lógica y física conocida y utilizada. –Globalización del diseño electrónico ha permitido la evolución y especialización del CAD genérico en EDA que a su vez desarrolla la ingeniería concurrente: simultanear las diferentes fases del desarrollo de un diseño, de forma que los resultados de algunas de ellas puedan influir en pasos previos. •Toda esta evolución ha sido posible gracias al enorme desarrollo de las plataformas Hw/Sw, que son elemento donde se ha cimentado la evolución del diseño electrónico. MODELADO DE SISTEMAS El modelo es la representación de un sistema, en el que se representa la información con un grado de abstracción determinado: comportamiento, entrada/salida, estructura, etc. El modelado es útil en diversas fases del diseño de sistemas digitales: • Se puede utilizar un modelo para especificar sin ambigüedad los requerimientos que ha de cumplir un circuito digital a diseñar. • Para mostrar el funcionamiento de un diseño. • Para verificar el correcto funcionamiento de un diseño mediante simulación. • Utilización de procedimientos de síntesis automática de circuitos a través de modelos. DOMINIOS Y NIVELES DE ABSTRACCIÓN EN EL MODELADO DE SISTEMAS DIAGRAMA DE GAJSKI-KUHN ESTRUCTURAL FUNCIONAL Procesador memoria Algortimos Transferencia de registros Lenguaje de transferencia de registros Puertas lógicas Ecuaciones lógicas transistores Ecuaciones diferenciales Trazado (Layout) Plano base Grupo de bloques Particiones físicas GEOMÉTRICO + ABSTRACCIÓN MODELADO CON HDL: NIVELES DE ABSTRACCIÓN Y ESTILOS DESCRIPTIVOS. TIPOS DE DATOS Enteros Bits Funcional o comportamental: Sistema: relación entre las entradas y salidas sin hacer Relaciones causales referencia a la implementación. Descripciones al estilo sin planificación de Sw de alto nivel, que reflejan la funcionalidad de los temporal módulos (algorítmicas) Arquitectural o de transferencia de registros (RT). División en bloques funcionales, con planificación en el Acciones agrupadas en distintos estados tiempo de las acciones a desarrollar (ciclos de reloj). sincronizadas por un Descripciones basadas en ecuaciones y expresiones reloj que reflejan el flujo de datos y las dependencias entre datos y operaciones. Lógico o de puertas. Componentes del circuito expresados en términos de Retrasos de ecuaciones lógicas o puertas y elementos de una componentes y biblioteca. Descripciones estructurales: se especonexiones cifican componentes, conexiones y puertos de E/S Abstractos y def. usuario PRECISIÓN TEMPORAL Nivel de abstracción: grado de detalle de una descripción HDL respecto a la implementación física. LENGUAJES DE DESCRIPCIÓN DE HARDWARE. • Lenguajes de alto nivel con sintaxis similar a los lenguajes de alto nivel (C, ADA, PASCAL) con una semántica y sintaxis orientada al modelado y descripción de circuitos electrónicos. • Los HDL permiten descripciones de circuitos con alto nivel de abstracción e independientes de la implementación tecnológica final, que puede ser detallada en distintas fases del diseño hasta llegar a la implementación física dependiente de la tecnología. • En la actualidad se utilizan fundamentalmente VHDL, Verilog y SystemC . Otro HDL, el UDI/L se utiliza exclusivamente en Japón. •VHDL (Very High Speed Integrated Circuit Hardware Description Language). Nace como proyecto del Departamento de Defensa (DoD) de EEUU (año 82) para disponer de una herramienta estándar, independiente para la especificación (modelado y/o descripción) y documentación de los sistemas electrónicos. El IEEE lo adopta y estandariza. •Verilog: Sw de la firma Gateway y posteriormente de Cadence. Estándar industrial hasta que apareció el VHDL como estándar IEEE. En 1990 Cadence lo hace público y el IEEE lo estandariza en 1995. •SystemC: es una extensión del C++, que utiliza unas bibliotecas de clase para describir y simular circuitos digitales. Se publicó en 1.999 . VENTAJAS DE USAR HDL •Interpretable por personas: Modelado intercambiable de diseños, documentación de proyectos, mantenimiento de diseños etc. por máquinas: Simulación, síntesis y verificación. •Disponibilidad pública: definidos, documentados y mantenidos por instituciones como IEEE. •Descripciones con múltiples niveles de abstracción. •Utilizar un solo lenguaje a lo largo de todo el proceso de diseño (modelado, simulación, verificación, etc.) reduce el número de herramientas y formatos a utilizar. •Al ser lenguajes estandarizados proporcionan portabilidad de los modelos para simulaciones. No tanto en síntesis pues no está totalmente estandarizada por el IEEE. •Reutilización del código en diseños sobre distintas tecnologías (CMOS, BiCMOS; etc) o implementaciones(ASIC, FPGA, CPLD,..) METODOLOGÍAS Y FLUJOS DE DISEÑO Diseño Botton-up: • En la descripción del diseño se empieza por los componentes (pueden pertenecer a una librería) más pequeños del sistema. • Se agrupan estos componentes forman o bloques de mayor complejidad y así sucesivamente. • Ineficiente para diseños complejos • Dependiente de la tecnología as ce nd en te n Composición de mayor complejidad po si ci ó de sc en de nt e Arquitectura Proceso automático om Proceso manual C De sc om po Especicicación sic ió funcional n Bloques y módulos básicos Composición de mayor complejidad Biblioteca de celdas METODOLOGÍAS Y FLUJOS DE DISEÑO Diseño Top-down: •Concepción del sistema a nivel funcional. Incluyendo la descripción y simulación de especificaciones. •Se suceden sucesivas etapas de descomposición en susbsistemas y bloques hasta llegar a una descripción RT que sea sintetizable. •Descripciones independientes de la tecnología: aumenta la reutilización del diseño. METODOLOGÍAS Y FLUJOS DE DISEÑO Diseño: especificaciones funcionales en HDL HDL: simulación y análisis Refinamiento gradual en HDL Diseño: modelo HDL a nivel arquitectural-RT Síntesis RT-lógica Diseño: lista de componentes e interconexiones (Netlist) Diseño físico: ubicación y conexionado Layout (en función de la implementación)