Está en la página 1de 7

Flip Flops VHDL

Karolina Silva

Flip flop tipo D


D Q

CLK

D Clk

t t t t=0

Flanco de subida del CLK

Flanco de bajada del CLK

Flip flop tipo JK


J CLK K Q

Una forma ms compacta de la tabla de verdad es (Q representa el estado siguiente de la salida en el prximo flanco de reloj y q el estado actual):

J-K positive going

Flanco de subida del CLK

Tambin podemos utilizar la nomenclatura Qn (actual) Qn+1 (prximo)

Flip flop tipo T (Toggle)

Puede obtenerse al unir las entradas de control de un biestable JK, unin que se corresponde a la entrada T.

Q T

Tipo T

Modelado de flip flops en VHDL


Library IEEE; use IEEE.Std_Logic_1164.all; entity FLOP is port ( D, CLK, RESET, SET : in std_logic; Q : out std_logic); end FLOP; architecture A of FLOP is begin

process (CLK, RESET, SET) begin if ( RESET = 1) then -- No clocked Q <= 0; elsif ( SET = 1) then -- No clocked Q <= 1; elsif ( CLK`event and CLK=`1` ) then Q <= D; - - Q(n+1)=D end if; end process; end A;

Asncrono (no depende del CLK) Como se describe un FF con reset sncrono? Como describes un FF JK?

Practica 5: FF D y JK en VHDL

P5.1 Consiste en describir y simular con VHDL el flip flop tipo JK descrito arriba pero con preset y clear (activos cuando sean cero lgico) usando la instruccin if falling_edge (clk) then. En la simulacin deben disear una forma de onda para J y K, tal que puedan explicar el cumplimiento de todos los posibles estados de preset, clear J, K y Q. P5.2 Consiste en describir y simular un flip flop tipo D con preset y clear (activos cuando sean uno lgico) usando la instruccin if rising_edge (clk) then. En la simulacin deben disear una forma de onda para D, tal que puedan explicar el cumplimiento de todos los posibles estados de D, preset, clear y Q. Fechas entrega:

Durante clase (sin reporte): 29 de Marzo Por correo (reporte completo): 31 Marzo, el reporte deben incluir la tabla de verdad del flip-flop descrito, imgenes de la forma de onda claras (como se pidi en clase), cdigo en VHDL y diagrama lgico.

Registros
entity COUNTER is port (CLK: in std_logic; Q : out integer range 0 to 15 ); end COUNTER; architecture RTL of COUNTER is signal COUNT : integer range 0 to 15 ; Begin

process (CLK) begin

Storage elements are synthesized for all signals that are driven within a clocked process

if CLK`event and CLK = `1` then if (COUNT >= 9) then COUNT <= 0; else COUNT <= COUNT +1; end if; end if; end process; Q <= COUNT ; end RTL;

También podría gustarte