Diseño Lógico 2 Metodología de Diseño

1 Diseño Lógico 2 Metodología de DiseñoJulio Pérez Instit...
Author: Eugenio Navarro López
0 downloads 2 Views

1 Diseño Lógico 2 Metodología de DiseñoJulio Pérez Instituto de Ingeniería Eléctrica 2005

2 Metodología y herramientas de diseño"Puente" entre especificación inicial del diseño y el equipo funcionando Uso creciente de herramientas de CAD Permite atacar proyectos cada vez más complejos con una cantidad de horas-persona manejable

3 Niveles y Vistas Niveles de abstracción Vistas ArquitecturalLógico Circuito Vistas Comportamental Estructural Físico

4

5 Niveles de abstracciónArquitectural Operaciones y transferencia entre registros Lógico Funciones lógicas Circuito Funciones de transferencia, componentes eléctricos, layouts

6 Vistas o Dominios de descripciónComportamental Describe la función, no la implementación Especificación de un diseño nuevo Rapidez en tener un modelo simulable Estructural Interconexión de componentes Esquemáticos, netlist Físico Partición, colocación y enrutamiento (Place&Route)

7 Niveles y Vistas

8 Restricciones área costo retardos

9 Tipos de Herramientas Lenguajes de descripcióntextuales (verilog, vhdl, ahdl) gráficos Herramientas de verificación Simulaciones verificación formal comparando dos descripciones

10 Tipos de Herramientas Herramientas de síntesisPasaje automático de un nivel al siguiente o de vista comportamental a vista estructural Más desarrollados en los niveles más bajos. P. ej. generación automática de la configuración de un PLD

11 Tipos de Herramientas Herramientas de optimizaciónMinimización optimización de retardos Herramientas de implantación física Partición Place and Route Herramientas de verificación de reglas de diseño

12 Ciclo de diseño más usual para PLDs y FPGAsIngreso del diseño "Compilación" Optimización Simulación Fitting Carga o Grabación Test

13 Máquina de estados Otros lenguajes Captura Tabla de verdad de descripcion esquemática Algebra de Boole hardware (VHDL) Bibliotecas COMPILACION MINIMIZACION Entradas MAPEO SIMULACION TECNOLOGICO (FITTING) Salida gráfica Reportes Archivo (JEDEC, POF. TTF) CARGA o GRABACION Y TEST

14 Ingreso del diseño Captura de esquemáticos Tabla de verdadAlgebra de boole Diagrama de estados Otros Lenguajes: VHDL, Verilog, ABEL

15 Máquina de estados Otros lenguajes Captura Tabla de verdad de descripcion esquemática Algebra de Boole hardware (VHDL) Bibliotecas COMPILACION MINIMIZACION Entradas MAPEO SIMULACION TECNOLOGICO (FITTING) Salida gráfica Reportes Archivo (JEDEC, POF. TTF) CARGA o GRABACION Y TEST

16 "Compilación" Reducción: inconsistencias errores de sintaxisdescripción "amigable" --> descripción interna inconsistencias errores de sintaxis

17 Optimización Quine-McCluskey, Presto, EspressoOpciones según objetivos de diseño Area vs. Velocidad Opciones según arquitectura destino Por pin (PAL) o como función de salida múltiple (compartiendo productos) Herramientas del fabricante o “plugins” para herramientas genéricas

18 Máquina de estados Otros lenguajes Captura Tabla de verdad de descripcion esquemática Algebra de Boole hardware (VHDL) Bibliotecas COMPILACION MINIMIZACION Entradas MAPEO SIMULACION TECNOLOGICO (FITTING) Salida gráfica Reportes Archivo (JEDEC, POF. TTF) CARGA o GRABACION Y TEST

19 Simulación y VerificaciónValidación del diseño Con diferentes modelos de abstracción ¿Por qué no anda si me simuló OK? Inicialización de registros Retardos especificación de la simulación: vectores de prueba dibujo de formas de onda de entrada y salida esperada lenguajes (VHDL)

20 Simulación y Verificación TestbenchEntity probador is end probador; architecture test of probador is signals sx1, sx2, sy: std_logic begin -- instanciacion de dut -- ... test_seq: process x1 <= '0'; x2 <= '0'; wait for 10 ns; x1 <= '1'; ... end Testbench entidad sin I/O una instancia del “device under test” señales internas para manejar entradas / verificar salidas del DUT en general no sintetizable

21 Simulación y VerificaciónInicialmente se examina el resultado en forma visual Es importante poder repetir las simulaciones en modo batch y solo reportar si algún test da mal. Comparando con corridas anteriores. Comando assert

22 Adaptación a un dispositivo (fitting)cabe un diseño dado en un chip dado? dado un diseño y criterios, lista ordenada de chips en los que cabe partición minimizar cantidad de chips minimizar cantidad de señales retardos Si cabe: “place and route”

23 Adaptación a un dispositivo (fitting)Limitaciones Cantidad de pines Área (cantidad de celdas lógicas) Conexionado interno Retardos Consumo

24 Máquina de estados Otros lenguajes Captura Tabla de verdad de descripcion esquemática Algebra de Boole hardware (VHDL) Bibliotecas COMPILACION MINIMIZACION Entradas MAPEO SIMULACION TECNOLOGICO (FITTING) Salida gráfica Reportes Archivo (JEDEC, POF. TTF) CARGA o GRABACION Y TEST

25 Grabación Resultado final: archivo a grabar Formatosestándar JEDEC formatos propietarios (pof, ttf, …) Variaciones según tecnología EPROM EEPROM RAM

26 Grabación Tecnologías no volátilesFUSIBLE ANTIFUSIBLE EPROM EEPROM Structured Asics (MPLDs, HardCopy)

27 Grabación Tecnologías VolátilesRAM estática Modos de inicialización Serie o paralelo Activo o pasivo

28 Prueba Controlabilidad ObservabilidadMétodos de barrido (boundary scan, JTAG) Vectores de prueba Se incorporan al archivo JEDEC Chip testers

29 Prueba JTAG IEEE Std 1149.1- 1990 Especifica test de placasAlternativa a la “cama de clavos” Pines interfaz JTAG: Test Data Input Test Data Output Test Mode Select Test Clock Input Test Reset Input

30 Prueba Built In Self-Test (BIST)Cada módulo se auto-testea generando internamente una secuencia seudoaleatoria de vectores de test Se comanda externamente el inicio del test. Se obtiene como resultado un “hash” de la secuencia de resultados que externamente se puede comparar con el valor esperado

31 Herramientas "Cerradas" o "abiertas" Formatos de intercambio EDIFElectronic Design Interchange Format JEDEC netlists (listas de conexiones) varios formatos, inclusive VHDL

32 Herramientas disponibles en el IIEAltera MAX+PLUS II Quartus de Altera  laboratorio Xilinx ISE Otros Synplify Mentor Graphics

33 Ciclo de diseño en Quartus II

34 Referencias Gajski, Dutt, Wu, Lin; “High Level Synthesis”