diseño lógico 2 metodología de diseño julio pérez instituto de ingeniería eléctrica 2005

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

Upload: eugenio-navarro-lopez

Post on 25-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

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

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

Julio Pérez

Instituto de Ingeniería Eléctrica

2005

Page 2: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 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

Page 3: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 3

Niveles y Vistas

• Niveles de abstracción» Arquitectural» Lógico» Circuito

• Vistas

» Comportamental» Estructural» Físico

Page 4: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 4

Page 5: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 5

Niveles de abstracción

• Arquitectural» Operaciones y transferencia entre registros

• Lógico» Funciones lógicas

• Circuito» Funciones de transferencia, componentes

eléctricos, layouts

Page 6: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 6

Vistas oDominios de descripción

• Comportamental» 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)

Page 7: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 7

Niveles y Vistas

Nivel Comportamental Estructural Físico

Sistema Procesadores, memorias, buses

Gabinetes, tarjetas

Arquitectural Transferencia de registros (RT)

ALUs, registros, muxes

Chips, módulos

Lógico Ecuac. Booleanas, diag. de estado

Compuertas, FF, netlist

Asignación de celdas

Circuito Funciones de transferencia

Transistores Layout de mascaras

Page 8: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 8

Restricciones

• área• costo• retardos

Page 9: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 9

Tipos de Herramientas

• Lenguajes de descripción» textuales (verilog, vhdl, ahdl)» gráficos

• Herramientas de verificación» Simulaciones» verificación formal comparando dos

descripciones

Page 10: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 10

Tipos de Herramientas

• Herramientas de síntesis» Pasaje 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

Page 11: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 11

Tipos de Herramientas

• Herramientas de optimización» Minimizació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

Page 12: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 12

Ciclo de diseño más usual para PLDs y FPGAs

• Ingreso del diseño• "Compilación"• Optimización• Simulación• Fitting• Carga o Grabación• Test

Page 13: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Captura

esquemática

Máquina de estadosTabla de verdadAlgebra de Boole

Otros lenguajesde descripcionhardware (VHDL)

Bibliotecas

COMPILACION

MINIMIZACION

SIMULACION

CARGA o GRABACION

YTEST

Archivo

(JEDEC, POF. TTF)

Entradas

Salida gráfica

Reportes

MAPEOTECNOLOGICO

(FITTING)

Page 14: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 14

Ingreso del diseño

• Captura de esquemáticos• Tabla de verdad• Algebra de boole• Diagrama de estados• Otros Lenguajes: VHDL, Verilog, ABEL

Page 15: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Captura

esquemática

Máquina de estadosTabla de verdadAlgebra de Boole

Otros lenguajesde descripcionhardware (VHDL)

Bibliotecas

COMPILACION

MINIMIZACION

SIMULACION

CARGA o GRABACION

YTEST

Archivo

(JEDEC, POF. TTF)

Entradas

Salida gráfica

Reportes

MAPEOTECNOLOGICO

(FITTING)

Page 16: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 16

"Compilación"

• Reducción:» descripción "amigable" --> descripción

interna

• inconsistencias• errores de sintaxis

Page 17: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 17

Optimización

• Quine-McCluskey, Presto, Espresso• Opciones 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

Page 18: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Captura

esquemática

Máquina de estadosTabla de verdadAlgebra de Boole

Otros lenguajesde descripcionhardware (VHDL)

Bibliotecas

COMPILACION

MINIMIZACION

SIMULACION

CARGA o GRABACION

YTEST

Archivo

(JEDEC, POF. TTF)

Entradas

Salida gráfica

Reportes

MAPEOTECNOLOGICO

(FITTING)

Page 19: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 19

Simulación y Verificación

• Validació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)

Page 20: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 20

Simulación y VerificaciónTestbench

• 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

Entity probador is

end probador;

architecture test of probador is

signals sx1, sx2, sy: std_logic

begin

-- instanciacion de dut

-- ...

test_seq: process

begin

x1 <= '0';

x2 <= '0';

wait for 10 ns;

x1 <= '1';

x2 <= '0';

...

end

end

Page 21: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 21

Simulación y Verificación

• Inicialmente 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

Page 22: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 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”

Page 23: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 23

Adaptación a un dispositivo (fitting)

• Limitaciones» Cantidad de pines» Área (cantidad de celdas lógicas)» Conexionado interno

» Retardos» Consumo

Page 24: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Captura

esquemática

Máquina de estadosTabla de verdadAlgebra de Boole

Otros lenguajesde descripcionhardware (VHDL)

Bibliotecas

COMPILACION

MINIMIZACION

SIMULACION

CARGA o GRABACION

YTEST

Archivo

(JEDEC, POF. TTF)

Entradas

Salida gráfica

Reportes

MAPEOTECNOLOGICO

(FITTING)

Page 25: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 25

Grabación

• Resultado final: archivo a grabar• Formatos

» estándar JEDEC» formatos propietarios (pof, ttf, …)

• Variaciones según tecnología» EPROM» EEPROM» RAM

Page 26: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 26

GrabaciónTecnologías no volátiles

• FUSIBLE• ANTIFUSIBLE• EPROM• EEPROM

• Structured Asics (MPLDs, HardCopy)

Page 27: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 27

GrabaciónTecnologías Volátiles

• RAM estática• Modos de inicialización

» Serie o paralelo» Activo o pasivo

Page 28: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 28

Prueba

• Controlabilidad• Observabilidad• Métodos de barrido (boundary scan,

JTAG)• Vectores de prueba

» Se incorporan al archivo JEDEC» Chip testers

Page 29: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 29

PruebaJTAG IEEE Std 1149.1- 1990

• Especifica test de placas• Alternativa a la “cama de clavos”• Pines interfaz JTAG:

» Test Data Input» Test Data Output» Test Mode Select» Test Clock Input» Test Reset Input

Page 30: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 30

PruebaBuilt 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

Page 31: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 31

Herramientas

• "Cerradas" o "abiertas"• Formatos de intercambio

» EDIF– Electronic Design Interchange Format

» JEDEC» netlists (listas de conexiones) varios

formatos, inclusive VHDL

Page 32: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 32

Herramientas disponibles en el IIE

• Altera» MAX+PLUS II» Quartus de Altera laboratorio

• Xilinx ISE• Otros

» Synplify» Mentor Graphics» …

Page 33: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 33

• Ciclo de diseño en Quartus II

Page 34: Diseño Lógico 2 Metodología de Diseño Julio Pérez Instituto de Ingeniería Eléctrica 2005

Fac. de Ingenieria IIE 34

Referencias

• Gajski, Dutt, Wu, Lin; “High Level Synthesis”