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)