Departamento de Arquitectura y Tecnología de Sistemas Informáticos - Facultad de Informática -. Universidad Politécnica de Madrid - V. Rodellar. 1. PARTE I.
TEMA 3. Modelos de sistemas digitales 3.1 Sistemas combinacionales 3.1.1 Modelado de retardos en funciones lógicas y estilos de descripción de arquitecturas. 3.1.2 Modelado de multiplexores en los estilos: algorítmico, flujo y estructural 3.1.3 Modelado de decodificadores en los estilos: algorítmico, flujo y estructural
3.2 Sistemas de memoria 3.2.1 Realización de biestables y latches en estilos: comportamiento, flujo y estructural. Entradas de control asíncronas y asíncronas. Relojes. 3.2.2 Realización de registros en estilo estructural. Reusabilidad. Bucles hardware. 3.2.3 Otros ejemplos.
3.3 Sistemas secuenciales 3.3.1 Modelos para máquinas de estados finitos 3.3.2 Realización de una máquina de Moore 3.3.3 Realización de una máquina de Mealy
Resumen
NOTA: Los apartados 3.1 y 3.2 han sido desarrollados en las clases de teoría de temas anteriores y en las clases de laboratorio.
Máquina de Moore Retardo en la operación de lectura en una memoria RAM Read (R)
Slow (S)
Write (W) Clock
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.all; ST_READ R=1 W=0
ST_WRITE
S=0
R=0 W=1
S=1 ST_DELAY R=0 W=0
ENTITY fsm_bad IS PORT ( clock: IN STD_LOGIC; -- flanco subida slow: IN STD_LOGIC; -- entrada control read, write: OUT STD_LOGIC -- salidas ); END fsm_bad;
Modelado algorítmico de una FSM - Un mal modelo Retardo en la operación de lectura en una memoria RAM ST_READ R=1 W=0
ST_WRITE
S=0
R=0 W=1
S=1 ST_DELAY R=0 W=0
Máquina de Moore
ARCHITECTURE bad OF fsm_bad IS BEGIN PROCESS TYPE state_type IS (ST_read, ST_write, ST_delay); VARIABLE state :state_type := ST_read; BEGIN WAIT UNTIL rising_edge(clock); CASE state IS WHEN ST_read => read