Está en la página 1de 49

SEALES Y RETARDOS

INDICE: 1. Caracterizacin de seales 1. Transacciones 2. Eventos 3. Drivers 2. Tipos de retardos 1. Delta 2. Inercial 3. El modelo de simulacin 4. Modelos para test 5. Resumen 6. Trabajo a realizar por el alumno
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

Cmo se comprobara el funcionamiento de un circuito en lab. Electrnica?

Seales de entrada Proporcionadas por generadores de funciones


10 MHz 20 MHz

Comprobacin del funcionamiento Visualizacin de seales de entrada y salida en un aparato tipo osciloscopio

e1
m1 e1 c
e1 e0 s e0 e1 s

e s

m1 m2

e1 s e0

Nc

m2

e0

.
SEALES Y RETARDOS

Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales
Seal real

Seal idealizada

.
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales: Transacciones

15 ns

33 ns

38 ns

63 ns

108 ns

Una seal tiene un valor en tiempo determinado Transaccin: pareja (valor, tiempo) (0, 0 ns) (0, 7 ns) (1, 15 ns) (1, 30 ns) (0, 33 ns) (1, 38 ns) (0, 63 ns) (1, 108 ns)
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales. Eventos

15 ns

33 ns

38 ns

63 ns

108 ns

Evento: Una seal tiene un cambio de valor en un tiempo determinado (0, 0 ns) (1, 15ns) (0, 33 ns) (1, 38 ns) (0, 63 ns) (1, 108 ns)
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales. Propagacin de seales

15 ns

33 ns

38 ns

63 ns

108 ns

Propagacin de seales: Las transacciones/eventos se colocan en orden ascendente en el tiempo s <= 0, 1 AFTER 15 ns, 0 AFTER 33 ns, 1 AFTER 38 ns, 0 AFTER 63 ns, 1 AFTER 108 ns;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales. Driver Un driver es una cola (tabla) de transacciones que almacena la forma de onda de la seal 0 0 15 1 33 0 38 1 63 0 108 1
Time Value

15 ns

33 ns

38 ns

63 ns

108 ns

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales. Driver El driver proyecta los valores futuros de la seal. La seal est planificada para tomar el valor indicado en su correspondiente momento 0 0 15 1 33 0 38 1 63 0 108 1
Time Value

15 ns

33 ns

38 ns

63 ns

108 ns

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales. Driver


La asignacin de una seal ejecutada por un proceso SLO modifica los valores proyectados en su driver. Aadiendo o eliminando otras transacciones ya existentes. Asignaciones diferentes de la misma seal comparten el mismo driver

0 0

15 1

33 0

38 1

63 0

108 1

Time Value

Tiempo de simulacin 0 ns, el driver tiene el valor 0 Tiempo de simulacin 18 ns, el driver tiene el valor 1
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

1. Caracterizacin de seales. Driver Cuando avanza el tiempo de simulacin transacciones ya procesadas se eliminan de la cola
0 0 15 1
pasado

las

33 0

38 1

63 108 Time (ns) 0 0 1


Value inversor

15 0

33 1

38 0

futuro

Ns

Ns <= NOT s; Tiempo actual de simulacin 38 ns


SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

10

2. Tipos de retardos en seales Un retardo es el tiempo que le cuesta llegar a una seal de un punto a otro en un circuito

s <= NOT s AFTER 5 ns;

s <= NOT s AFTER 15 ns;

Los dos circuitos hacen la misma funcin, realizan la operacin NOT pero el de 5 ns es ms rpido que el de 15 ns. NO son exactamente iguales.
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

11

2. Tipos de retardos en seales Delta () Inercial output <= NOT input; output <= NOT input AFTER 5 ns;

Transporte output <= TRANSPORT NOT input AFTER 5 ns; (Transporte no lo vamos a ver en este curso, util para modelar lineas de transmisin)

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

12

2. Tipos de retardos en seales: Delta El retardo delta, es el que se asume por defecto cuando no se especifica un retardo para la seal. Ns <= NOT s; Es un retardo infinitesimal, siempre es despreciable respecto del tiempo de simulacin, que separa la excitacin de la respuesta en un sistema fsico (causalidad).

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

13

2. Tipos de retardos en seales: Delta


La evaluacin de un elemento de la forma de onda produce una sola transaccin. La componente temporal de esta transaccin est determinada por el tiempo actual de simulacin ms el valor del retardo asociado en la sentencia de asignacin.
Tiempo actual de simulacin 38 ns

0 0

15 1
pasado

33 0

38 1

63 108 Time (ns) 0 0 1


Value inversor

15 0

33 1

38 0
38 ns + = 38 ns

futuro

Ns

Ns <= NOT s;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

14

2. Tipos de retardos en seales: Delta


Tiempo TOTAL de simulacin 120 ns Ns <= NOT s;
Time (ns)

0 0 0 1

15 1 15 0

33 0 33 1

38 1 38 0

63 108 0 1

63 108 1 0

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

15

2. Tipos de retardos en seales: Inercial


Modela el comportamiento temporal de la conmutacin de los circuitos. La forma ms simplificada de expresarlo es simplemente con la clusula AFTER (hay otras opciones ms completas que no veremos en este curso)
seal <= [expresin] seal AFTER tiempo; Nc S S Cr <= <= <= NOT c a AND b c
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

AFTER 5 ns; AFTER 15 ns; AFTER 25 ns; AFTER 35 ns;


16

<= (NOT (a AND b) OR (c OR b))

2. Tipos de retardos en seales: Inercial


La evaluacin de un elemento de la forma de onda produce una sola transaccin. La componente temporal de esta transaccin est determinada por el tiempo actual de simulacin ms el valor del retardo asociado en la sentencia de asignacin.
Tiempo actual de simulacin 38 ns

0 0

15 1
pasado

33 0

38 1

63 108 Time (ns) 5 0 1


Value inversor

20 0

38 1

43 0

futuro

Ns
38 ns + 5 ns = 43 ns
17

Ns <= NOT AFTER 5 s;


SEALES Y RETARDOS

Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

2. Tipos de retardos en seales: Inercial


Tiempo TOTAL de simulacin 120 ns Ns <= NOT AFTER 5 ns;
Time (ns)

0 0 5 1

15 1 20 0

33 0 38 1

38 1 43 0

63 108 0 1

68 113 1 0

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

18

2. Tipos de retardos en seales: Inercial


Una entrada tiene que tener un valor estable durante un cierto tiempo antes de que se propague a la salida. El tiempo especifico es el que se indica despus del AFTER. La siguiente asignacin propaga a la seal output los valores de la seal input que sean iguales o mayores de 5 ns retrasados 5 ns.
output <= input AFTER 5 ns;

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

19

2. Tipos de retardos en seales: Inercial


Si la entrada no permanece estable durante el tiempo especificado la salida no se ve afectada por la entrada. La entrada se ignora!!.
Amplitud input

output <= input AFTER 5 ns;


5 10 15 20 25 30 35 40 45 50

Tiempo (ns)

Amplitud output

Tiempo (ns)
5 10 15 20 25 30 35 40 45 50

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

20

3. El modelo de simulacin
El modelo de simulacin tiene VHDL entiende cada sentencia concurrente (PROCESS, que considerar que: el asignacin concurrente de hardware opera seal, instanciacin de concurrentemente, y que las componentes, etc..), como un salidas del sistema solo PROCESO y los procesos se pueden cambiar si hay algn comunican entre ellos por cambio en sus entradas medio de seales. (eventos).
a
OR

b s c
AND

a
process-OR

I - comunicacin

b
process-AND

c
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

21

3. El modelo de simulacin. Identificacion de procesos


ARCHITECTURE behave OF circuit IS ARCHITECTURE flow OF circuit IS
[declarativa] [declarativa] [declarativa]

a b c

OR

AND

ARCHITECTURE structural OF circuit IS

BEGIN or2: PROCESS (a,b) BEGIN I <= a OR b; END PROCESS or2; and2: PROCESS (I,c) BEGIN s <= I AND c; END PROCESS and2; END behave;

BEGIN

BEGIN

Proceso 1
I <= a OR b; U0: gate_OR PORT MAP (a,b,I);

Proceso 2
s <= I AND c; END flow; U1: gate_AND PORT MAP (I,c,s); END structural;

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

22

3. El modelo de simulacin. Consideraciones previas


Cuando un sistema digital empieza a funcionar, todos sus componentes pueden activarse al mismo tiempo. Si tuviramos disponible una mquina paralela con tantos procesadores como procesos, podra asociarse un procesador con un proceso (concurrencia). Normalmente las mquinas solo tienen 1, 2, 4 procesadores, la ejecucin tiene que ser secuencial. cmo ejecutar un modelo paralelo en una mquina secuencial?, considerando que: Los resultados de simulacin tienen que ser los mismos independientemente del orden en que los procesos se escriban o se ejecuten.
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

23

3. El modelo de simulacin. Consideraciones previas


El modelo de simulacin est controlado por eventos. Los procesos son evaluados nicamente cuando haya cambios en las seales que los activan (eventos). Las seales estn caracterizadas por sus drivers, los drivers son actualizados despus de la ejecucin de una sentencia WAIT (dentro de la sentencia concurrente PROCESS) o despus de la ejecucin de cualquier sentencia concurrente.
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

24

3. El modelo de simulacin. Consideraciones previas


Tiempo Total de simulacin (T)
Tiempo durante el cual vamos a observar el funcionamiento de nuestro circuito (100 ns)

Tiempo (actual) de simulacin (Tc)

Ciclo (paso) de simulacin ()

Tiempo especifico para el cual estamos realizando la simulacin por haberse producido un evento Este tiempo avanza as como los eventos se consumen en la cola. Supone un avance de tiempo fsico en el tiempo total de simulacin, su valor no es fijo (Ti). El tiempo fsico (simulacin) no avanza, es equivalente a un retardo tipo delta.

T1
0 ns evento1 5 ns

T2
25 ns evento2

T3
45 ns evento4 evento3

T4

T5
95 ns evento5 (Tiempo Total de simulacin T = 100 ns)

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

25

3. El modelo de simulacin.
a b c I

Como sera posible ejecutar 1000 procesos

en una mquina que solo tiene 4 procesadores? Ejemplo para 2 procesos

OR

Supongamos que en t=1ns


AND s

DRIVERS

t(ns)

a b c I s

0 0 0 1 0 0

1 1 0 1 1 0

1+ 1 0 1 1 1

Primero se ejecutase el proceso AND como I = 0, S=0 no es correcto A continuacin se ejecutase el proceso OR, hace que I = 1, provoca un evento a la entrada del proceso AND, ello implica que ha de recalcularse este proceso
SEALES Y RETARDOS

26

Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

3. El modelo de simulacin Flujo de simulacin


La simulacin puede verse como un bucle, que consta de dos etapas:
- actualizacin de seales - ejecucin de procesos y que finaliza cuando se agota el tiempo total de simulacin.

(similar al ciclo de ejecucin de una instruccin).


ACTUALIZA SEALES EJECUTA PROCESOS

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

27

3. El modelo de simulacin Flujo de simulacin


Asigna el valor

A V A N

INICIALIZACIN constantes, variables, seales

dado por el diseador o el valor por defecto

C I C L O

S I M U L C

ACTUALIZACION DE LOS DRIVERS DE LAS SEALES IMPLICADAS EN LOS PROCESOS Se generan nuevas transacciones T actual = T actual + ACTIVACION DE PROCESOS (PROCESS, asignacin concurrente seal, componente,....) se termina la ejecucin cuando se encuentre un WAIT o terminado sentencia concurrente T actual = T

C E

D E

D E

I O N

Sin avance de tiempo fsico

INCREMENTO DEL TIEMPO DE SIMULACION SI La actualizacin de los drivers produciran nuevos eventos? PROCESOS ACTIVOS NO T actual = T anterior + Ti ACTUALIZA LOS DRIVERS DE LAS SEALES DE ENTRADA PARA EL TIEMPOACTUAL NO T actual T total SI

I E M P O

F I S I C O

FIN Se ha alcanzado el tiempo mximo de simulacin

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

28

3. El modelo de simulacin-Vista completa de la simulacin

VHDL analizador
VHDL elaborador Los componentes son asociados a las entidades. La jerarqua del modelo se aplana y como resultado se obtiene un conjunto de procesos conectados mediante seales

VHDL simulador Simulacin bajo el control de un kernel controlado por eventos


SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

29

4. Estructura del TEST


Una forma de testear un modelo es escribir una ENTITY y una ARCHITECTURE La ENTITY no tiene PORTS
ENTITY nombre IS END nombre;

La ARCHITECTURE Declaracin del componente que se va testear tiene que describirse Declaracin de seales del componente en estilo Configuracin de componente STRUCTURAL instanciando el BEGIN component a testear Instanciacin del componente a testear y definiendo los Drivers de las seales drivers de las seales
END name;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

ARCHITECTURE name OF entity_name IS

30

Ejercicio:
Realizar la entidad, arquitectura y test para la funcin lgica: f = (a+b) c

Las entradas deben de tener todas las combinaciones posibles (8). Los datos han de ser tipo STD_LOGIC
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

31

Ejercicio: Entidad

f = (a+b) c

LIBRARY ieee; USE ieee.STD_LOGIC_1164.all; ENTITY modelo_simula IS PORT ( a,b,c : IN STD_LOGIC; -- entradas s ); END modelo_simula;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

: OUT STD_LOGIC -- salida

32

Ejercicio: Arquitectura

f = (a+b) c

ARCHITECTURE flujo OF modelo_simula IS SIGNAL I: STD_LOGIC; BEGIN I <= a OR b; s <= I AND c; END flujo;

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

33

Ejercicio: Test

f = (a+b) c

LIBRARY ieee; USE ieee.STD_LOGIC_1164.all; -- Observese que la entidad para simular no tiene puertos ENTITY simula_test IS END simula_test;
Simula_test

SEALES Y RETARDOS

superfluo

34

Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

Ejercicio: Test

f = (a+b) c

ARCHITECTURE test_flujo OF simula_test IS --Parte declarativa --Se declara el componente que se va a simular COMPONENT modelo_simula PORT (a,b,c: IN STD_LOGIC; s: OUT STD_LOGIC); END COMPONENT; -- Se declaran las seales del componente que se va a simular SIGNAL a,b,c,s: STD_LOGIC;

SEALES Y RETARDOS

superfluo

35

Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

Ejercicio: Test

f = (a+b) c

-- Configuracion del componente


FOR U0: modelo_simula USE ENTITY WORK.modelo_simula(flujo);

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

36

Ejercicio: Test

f = (a+b) c

--Cuerpo de la arquitectura BEGIN -- Instanciacin de componente que se va a simular U0: modelo_simula PORT MAP (a => a,
Simula_test modelo_simula

b => b, c => c, s = > s);

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

37

Ejercicio: Test

f = (a+b) c

--Drivers de las seales de entrada a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 f 0 0 0 1 0 1 0 1

Simula_test
modelo_simula
a b c I f

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

38

Ejercicio: Test
a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 f 0 0 0 1 0 1 0 1

f = (a+b) c

--Drivers de las seales de entrada


0 1 0 1 0 1 0 1 0

10

12

14

16

c <=0',1 AFTER 2 NS, '0 AFTER 4 NS, '1 AFTER 6 NS, 0 AFTER 8 NS, 1 AFTER 10 NS, 0 AFTER 12 NS, 1 AFTER 14 NS, 0 AFTER 16 NS; b <=0', 1 AFTER 4 NS, 0 AFTER 8 NS, 1 AFTER 12 NS, 0 AFTER 16 NS; a <='0 ,'1 AFTER 8 NS, 0 AFTER 16 NS;
END test_flujo;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

39

Ejercicio: Test

f = (a+b) c

Drivers de las seales de entrada

Hay una forma ms compacta de definirlas (con el operador not forma algortmica
c <= NOT c AFTER 2 ns; b <= NOT b AFTER 4 ns; a <= NOT a AFTER 8 ns;
END test_flujo;
0 1 0 1 0 1 0 1 0

10

12

14

16

Para que la secuencia arranque es IMPRESCINDIBLE inicializar las seales a,b y c a un valor (0 1) cuando se declaran SIGNAL a,b,c: STD_LOGIC := '0';

T=16

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

40

Ejercicio: Simulacin

f = (a+b) c

a 0 0 0 0 1 1 1 1

b 0 0 1 1 0 0 1 1

c 0 1 0 1 0 1 0 1

f 0 0 0 1 0 1 0 1
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

Escala a 0,2 ns

41

Ejercicio: Simulacin

f = (a+b) c
ns Delta 0 0 0 1 0 2 2 0 4 0 4 1 6 0 6 1 8 0 8 1 10 0 10 1 12 0 12 1 14 0 14 1 16 0 16 1
SEALES Y RETARDOS

T0

T2

T4

T6

T8

T10

T12

T14

T16

Obsrvese los tiempos actuales de simulacin y los ciclos delta o pasos de simulacin

A U 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0

B U 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0

I U U 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0

C U 0 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0

S U U 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0
42

Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

4. Resumen Una seal est caracterizada por su driver El modelo de simulacin de VHDL esta controlado por eventos El driver de una seal se actualiza despus de la ejecucin de una sentencia concurrente El test para simulacin puede hacerse mediante una entidad que no tiene PORTS y una arquitectura tipo estructural
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

43

5. Resumen Los tipos de retardos que vamos a usar en las sentencias de asignacin de seal: Delta (causalidad) Inertial (conmutacin de circuitos)

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

44

6. Trabajo a realizar por el alumno


Modelar las unidades de diseo necesarias (entidad y arquitectura) para testear cada una de las arquitecturas diseadas para el decodificador de 2:4 realizado en clases anteriores. Las formas de onda de las seales de entrada debern contemplar todas las posibles combinaciones de las mismas. La forma de onda de la seal de mayor periodo deber ser de 8 ns. La configuracin de las arquitecturas a la entidad podr realizarse dentro de la arquitectura para test o bien mediante la unidad de configuracin. La entrega del ejercicio deber realizarse manuscrito en clase

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

45

7. Anexo Copia de fichero Entidad/Arquitectura Ejercicio (a+b)c


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--Este diseo es propietario el autor y puede ser utilizado con fines de estudio -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Proyecto Modelo de simulacin en VHDL -- Diseo: Entidad y arquitectura de (a+b)c -- Nombre del fichero: modelo_simula.vhd --- Autor: V. Rodellar -- Fecha: 13/2/2012 -- Versin: 1.0 -- Resumen: Este fichero contiene una entidad y una arquitectura -en estilo flujo de datos de la funcin (a+b)c -Se han utilizando tipo de datos STD_LOGIC. --- Modificaciones: --- Fecha Autor Versin Descripcin del cambio --====================================================================================================================== ---======================================================================================================================

Parte I

-- Definicin de librerias y paquetes LIBRARY ieee; USE ieee.STD_LOGIC_1164.all; --Modelo de entidad ENTITY modelo_simula IS PORT ( a,b,c : IN STD_LOGIC; -- entradas s : OUT STD_LOGIC -- salida ); END modelo_simula;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

46

7. Anexo Copia de fichero Entidad/Arquitectura Ejercicio (a+b)c


-- Declaracin de seales intermedias SIGNAL I: STD_LOGIC; -- Aquitectura BEGIN I <= a OR b; s <= I AND c; -- Tambien hubiese podido realizarse con una unica sentencia -- elimininando la necesidad de declarar la seal I. La -- sentencia se pone comentada -- s <= (a OR b) AND I; END flujo;

Parte II

SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

47

7. Anexo Copia de fichero de test Ejercicio (a+b)c


--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Este diseo es propietario el autor y puede ser utilizado con fines de estudio --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Proyecto Modelo de simulacin -- Diseo: Modelo de test para (a+b)c -- Nombre del fichero: modelo_simula_tb.vhd --- Autor: V. Rodellar -- Fecha: 13/12/2012 -- Versin: 1.0 -- Resumen: Este fichero contiene una entidad y una arquitectura para test -para el componente combinacional que realiza la funcin (a+b)c -Los drivers de las seales de entrada se generan algoritmicamente -en lugar de describir cada uno de los eventos -Se han utilizando tipo de datos STD_LOGIC. --- Modificaciones: --- Fecha Autor Versin Descripcin del cambio --========================================================================================================================== ---========================================================================================================================

Parte I

-- Definicn de librerias LIBRARY ieee; USE ieee.STD_LOGIC_1164.all; --Modelo de entidad ENTITY simula_test IS END simula_test;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

48

7. Anexo Copia de fichero de test Ejercicio (a+b)c


-- Modelo de arquitectura ARCHITECTURE test1 OF simula_test IS --Parte declarativa --Se declara el componente que se va a simular COMPONENT modelo_simula PORT (a,b,c: IN STD_LOGIC; s: OUT STD_LOGIC); END COMPONENT;

Parte II

-- Se declaran las seales del componente que se va a simular -- Observese que las seales de entrada se han inicializado a cero para generar sus drivers de forma algoritmica con el operador NOT SIGNAL a,b,c: STD_LOGIC := '0'; SIGNAL s: STD_LOGIC; -- Configuracion del componente FOR U0: modelo_simula USE ENTITY WORK.modelo_simula(flujo); --Cuerpo de la arquitectura BEGIN -- Instanciacin de componente que se va a simular y conexionado de sus puertos U0: modelo_simula PORT MAP ( a => a, b => b, c => c, s => s); c <= NOT c AFTER 2 ns; b <= NOT b AFTER 4 ns; a <= NOT a AFTER 8 ns; END test1;
SEALES Y RETARDOS
Grupo de Tecnologa de Computadores.- V. Rodellar Departamento de Arquitectura y Tecnologa de Sistemas Informtic Facultad de Informtica Universidad Politcnica de Madrid

49

También podría gustarte