You are on page 1of 25

Tema 1: Metodologas de diseo de sistemas digitales

Con lgica programable.

Modelado de un sistema digital

Disear no es solo un conjunto de tcnicas o como hacer una receta, es un proceso en el que contribuyen muchas personas en los diferentes aspectos que dan lugar al producto final. Cada una de estas personas ve el producto desde un punto de vista diferente, tiene una experiencia diferente, y usa herramientas distintas. Juntos, Convierte un concepto en un producto real.

Modelado de un sistema digital


El proceso de diseo
va desde la manera de concebir su funcionamiento hasta el desarrollo de un esquema de fabricacin

Representaciones del diseo o dominios descriptivos


Como en la definicin del producto, en el diseo y el proceso de fabricacin, cada persona ve el producto ligeramente diferente y necesita informacin especfica, cada diseo/producto requiere de varias representaciones o punto de vistas. La misma representacin requiere distintos de niveles de detalle. Existen tres dominios.
Comportamental Estructural Fsica

Dominios descriptivos y niveles de abstraccin


Dominios descriptivos:
Comportamental
La funcin realizada sin informacin sobre cmo se hace
Dominio Estructural Dominio Conductual

CPU, Memoria Procesador, Subsistema

Especif. Sistema ISAs, Algoritmos Transf. RT Ec. Booleanas, FSMs Ecuaciones diferenciales

Estructural
Los bloques y las interconexiones (netlist o esquemas)

ALU, Reg,Mux Puertas, Flips-flops Transistores, conexiones

Rectngulo, polgono, layout

Fsico
Localizacin y propiedades fsicas reales
Celdas estndar Mdulos, Macroceldas Floorplanning, Bloques

Chip, Placa

Dominio Fsico

Diagrama Y de Gajsky-Khun
4

Dominios descriptivos y niveles de abstraccin


Niveles de abstraccin:
Circuito
Valores continuos, Todo es electrnica, tiempo continuo
Dominio Estructural
Nivel Sistema

Dominio Conductual

Nivel algortmico

Nivel RT CPU, Memoria Procesador, Subsistema ALU, Reg,Mux Puertas, Flips-flops Nivel circuito Nivel lgico

Especif. Sistema ISAs, Algoritmos Transf. RT Ec. Booleanas, FSMs

Lgico
Valores lgicos (T,F), slo computacin, tiempo continuo

Transistores, conexiones

Ecuaciones diferenciales

RT (Register Transfer)
Palabras con valores discretos, control y procesamiento, tiempo discreto

Rectngulo, polgono, layout

Celdas estndar

Mdulos, Macroceldas Floorplanning, Bloques

Algortmico
Estructuras abstractas, dependencias en lugar de tiempo

Sistema
Relaciones entre subsistemas, sincronizacin y protocolos

Chip, Placa

Dominio Fsico

Diagrama Y de Gajsky-Khun
5

Dominios descriptivos y niveles de abstraccin


Medidas:
Circuito
Tiempo de subida y bajada, consumos rea
Dominio Estructural
Nivel Sistema

Dominio Conductual

Nivel algortmico

Nivel RT CPU, Memoria Procesador, Subsistema ALU, Reg,Mux Puertas, Flips-flops Nivel circuito Nivel lgico

Especif. Sistema ISAs, Algoritmos Transf. RT Ec. Booleanas, FSMs

Lgico
Tiempo de conmutacin, skew, rea equivalente

Transistores, conexiones

Ecuaciones diferenciales

RT
Tiempo de ciclo, mrgenes, puertas equivalentes

Rectngulo, polgono, layout

Celdas estndar

Mdulos, Macroceldas

Algortmico
Latencia, cadencia de datos, nmero de mdulos

Sistema
Ancho de banda, MIPS.

Floorplanning, Bloques

Chip, Placa

Dominio Fsico

Diagrama Y de Gajsky-Khun
6

Dominios descriptivos y niveles de abstraccin


Transiciones:
Sntesis/Anlisis
conductual estructural
Dominio Estructural

Sntesis Anlisis

Dominio Conductual

Optimizacin
Mejora de una descripcin sin variar el nivel de abstraccin
Generacin
to en i am n ci fin c Re tra s Ab

Extraccin

Generacin / Extraccin
estructural fsico

Refinamiento / Abstraccin
Bajar/Subir el nivel de abstraccin en el mismo dominio

Optimizacin Diagrama Y de Gajsky-Khun


7

Dominio Fsico

Ejemplo
Representaciones en el dominio conductual, estructural y fsico de un reloj despertador sencillo. Especificacin
Visualizador de cristal lquido (LCD): muestra horas, minutos y segundos 5 conmutadores:
S1: ajuste de hora / S2: ajuste de alarma S3: avance de los minutos / S4: avance de las horas S5: conexin de la alarma

Modo de operacin
Si S1 est activo (cerrado) se ajusta la hora presionando S3 S4
minutos u horas +1 y se muestran en el LCD

Si S2 est activo (cerrado) se ajusta la alarma del mismo modo


Durante el ajuste de la alarma, minutos u horas se muestran en el LCD

Si S5 est activo (cerrado) la alarma se activa y emite un sonido cuando el reloj coincide con el tiempo ajustado en la alarma
8

Ejemplo
Representaciones en el dominio conductual Una posible representacin del comportamiento (funcionamiento) del reloj despertador consiste en entenderlo como 3 procesos concurrentes (paralelos):

Reloj

Ajuste Alarma

Ejemplo
Representaciones en el dominio conductual: diagramas de flujo
Reloj

Modo de operacin
Cada pulso de 1 segundo incrementa el valor de segundos Las cuentas, mdulo 60, 60 y 12, ponen a 0 la cuenta de segundos, minutos y horas

1 entrada (Pulse) 6 variables internas (Seconds, S display, Minutes, M display, Hours, H display) 10

Ejemplo
Representaciones en el dominio conductual: diagramas de flujo
Ajuste

Modo de operacin
Si S1 est activo (cerrado) se ajusta la hora presionando S3 S4
M o H +1 al LCD

Si S2 est activo (cerrado) se ajusta la alarma del mismo modo


M o H al LCD

2 variables internas (Mwakeup, Hwakeup)


11

Ejemplo
Representaciones en el dominio conductual: diagramas de flujo
Alarma

Modo de operacin
Se comprueba que minutos y horas coincidan con los minutos y horas de la alarma y si S5 est activo se emite un sonido 1 salida (Buzz)

12

Ejemplo
Representacin en el dominio estructural: las representaciones en el dominio conductual no indican la estructura del sistema
Sin embargo, variables y asignaciones pueden implicar un modelo no siempre ptimo de la estructura Parte DIGITAL: 3 contadores (S, M y H cnt) 2 registros (Mreg, Hreg) 1 LCD (S, M y H display) 2 comparadores (Minute, Hour comparator) 1 valor constante (1 lgico)
13

Ejemplo
Representacin en el dominio estructural: las representaciones en el dominio conductual no indican la estructura del sistema
Sin embargo, variables y asignaciones pueden implicar un modelo no siempre ptimo de la estructura Parte ANALGICA: 1 oscilador / 1 altavoz 1 generador de pulsos (ADC) 1 generador de sonidos (DAC)

14

Ejemplo
Representacin en el dominio fsico:
PCB (Printed Circuit Board Placa de Circuito Impreso)
Parte analgica: oscilador, generador de pulsos y sonidos Toda la parte digital en un chip Resto de componentes: conmutadores, caja para bateras, pistas de metal, LCD

PCB

Vista externa

15

Proceso de diseo
Los pasos tomados desde la concepcin hasta la fabricacin de un producto
No es fijo, ni lineal existen iteraciones Depende de la empresa, de los equipos de trabajo, de la tecnologa, de las herramientas, del conjunto de aplicaciones, etc.

Especificaciones del diseo Bibliotecas de componentes Sntesis del diseo Anlisis del diseo Documentacin Metodologas del proceso de diseo
Arribaabajo (Top-down) Abajoarriba (Bottom-up) Mixta la aplicada en realidad
16

Proceso de diseo
Especificaciones del diseo
Definen el funcionamiento y las interfaces del producto
Diseo esquemtico de la arquitectura Diagrama de bloques de alto nivel descrito mediante lenguaje natural, pseudo-algoritmos o algoritmos Las especificaciones ejecutables permiten verificar, analizar y sintetizar mediante herramientas CAD

Biblioteca de componentes
Constituyen los bloques internos de la arquitectura
Dependientes de la tecnologa A distintos niveles de abstraccin y distintas prestaciones Diseo cerrado para un uso fiable por parte de otros equipos

Caractersticas de los componentes de la biblioteca ... /...


Funcin, interfaz y aplicaciones tpicas Encapsulado, dimensiones y localizacin fsica de entradas y salidas
17

Proceso de diseo
Caractersticas de los componentes de la biblioteca ... /...
Requisitos elctricos, rangos de tensin y corriente de las entradas Disipacin de calor, consumo de potencia Retardos, relaciones y sincronizacin entre las seales Modelos para simulacin, sntesis, diseo fsico y verificacin para las distintas herramientas CAD empleadas

Sntesis del diseo


Conversin de una especificacin/descripcin de comportamiento a una estructura con componentes de la biblioteca
El comportamiento se redefine y se divide en bloques ms detallados Se vuelven a dividir y estructurar, bajando el nivel de abstraccin El ltimo escaln son los componentes de la biblioteca Los componentes no existentes se disean o se adquieren

Tipos de sntesis ... /...


Distintas sntesis dependiendo de los distintos niveles de abstraccin

18

Proceso de diseo
Tipos de sntesis ... /...
Sntesis de sistema: especificacin procesadores, memorias y ASICs Sntesis de alto nivel: algoritmos, ISAs registros, ALUs, multiplexores Sntesis lgica: expresiones booleanas puertas y biestables Sntesis fsica: puertas esquemas geomtricos, configuraciones elctricas

Anlisis del diseo


Evaluacin de la bondad del diseo respecto a los requisitos de la especificacin o entre las distintas alternativas de materializacin
Existen distintas medidas de bondad: costes, prestaciones, testabilidad Costes: el aumento de rea (ASIC, PCB), del nmero de entradas y salidas (encapsulados), el consumo de potencia (tamao y peso) incrementa el precio Prestaciones: frecuencia de reloj, tiempo de ejecucin de las instrucciones, tiempo de ejecucin de algoritmos de prueba (benchmarks) Testabilidad: mide el nmero de fallos detectables y es funcin del nmero de patrones de test entradas con salidas conocidas y del tiempo
19

Proceso de diseo
Documentacin
Detalla todos los aspectos del proceso de diseo
Se debe realizar durante todo el ciclo de vida del diseo Esquemtica para los consumidores, y centrada en el comportamiento y en los interfaces fsicos y temporales Detallada para el reuso interno en otros productos de la compaa

20

Herramientas CAD
El proceso de diseo est apoyado en herramientas informticas de ayuda al diseo, herramientas CAD Computer Aided Design
Hay herramientas muy especializadas y consolidadas desde hace tiempo Hay un campo de trabajo muy amplio en la creacin de herramientas Existen distintas herramientas para distintas tareas

Captura y modelado Sntesis Verificacin y simulacin Diseo fsico Test

21

Herramientas CAD
Captura y modelado
Permiten describir el diseo en distintos dominios y niveles
Captura de esquemas grficos geometras, puertas lgicas, bloques, etc. tiles para modelar en dominios estructurales y de nivel de abstraccin medio-bajo. En desuso. Los lenguajes de descripcin de hardware VHDL, Verilog permiten modelar en todos los dominios y casi todos los niveles de abstraccin. Mejoran la documentacin y el anlisis. En consolidacin. Las descripciones ejecutables avanzan hasta el nivel de sistema. Mejoran la verificacin. En expansin.

Sntesis
Automatizan la creacin de estructuras desde comportamientos ... / ...
Sntesis lgica: convierte ecuaciones booleanas en esquemas con puertas lgicas, minimizando su nmero, reduciendo el retardo y el consumo Sntesis secuencial: convierte comportamientos en mquinas finitas de estados con el mnimo nmero de elementos de memoria y de estados, y con codificaciones que reducen costes combinacionales
22

Herramientas CAD
Automatizan la creacin de estructuras desde comportamientos ... / ...
Sntesis de alto nivel o comportamental: convierten expresiones aritmticas, flujos de datos y control, o algoritmos en estructuras RT, minimizando tiempos de ejecucin y rea consumida

Verificacin y simulacin
Comprueban si el funcionamiento del diseo es el deseado
Esto no es posible si no se dispone de una especificacin ejecutable Se puede asegurar que la estructura sintetizada desde el comportamiento es correcta por construccin verificacin formal mediante manipulacin algebraica o demostradores de teoremas Se puede asegurar que los caminos crticos verificacin temporal respetan los requisitos temporales Ambas verificaciones son muy lentas al explorar todas las posibilidades de las entradas La tcnica ms utilizada es la simulacin prueba de un conjunto reducido de todas las posibles combinaciones de las entradas Disear una simulacin adecuada es una tarea valiosa, pero difcil y lenta
23

Herramientas CAD
Diseo fsico
Permiten colocar e interconectar los componentes fsicos en Chips o PCBs
Herramientas de colocacin Placement optimizan la colocacin de celdas y componentes en funcin de sus dimensiones e interfaces minimizando el rea Herramientas de interconexin Routing optimizan el tipo, longitud y retardos de los cables de interconexin entre celdas y componentes. Esto incluye alimentaciones, seales de inicio y relojes

Test
Detectan fallos en los circuitos
Generan patrones de test Test Pattern Generators previos y posteriores a la fabricacin capaces de detectar fallos comprobando el mximo nmero de caminos Detectan cortocircuitos, circuitos abiertos, etc. con ndices de cobertura cercanos al 100%
24

Dudas
?

25

You might also like