Está en la página 1de 7

Flip Flops VHDL

Karolina Silva
Flip flop tipo D
D Q
CLK

D t

Clk
t

Q
t
t=0

Flanco de subida del CLK Flanco de bajada del CLK


Flip flop tipo JK
Una forma más compacta de
la tabla de verdad es (Q
J Q
representa el estado
CLK siguiente de la salida en el
K próximo flanco de reloj y q el
estado actual):
J-K positive going

También podemos utilizar la


Flanco de subida del CLK nomenclatura Qn (actual)
Qn+1 (próximo)
Flip flop tipo T (Toggle)
 Puede obtenerse al unir las entradas de control de
un biestable JK, unión que se corresponde a la
entrada 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’; Asíncrono
elsif ( SET = ‘1’) then -- No clocked (no depende del CLK)
Q <= ‘1’;
elsif ( CLK`event and CLK=`1` ) then
Q <= D; - - Q(n+1)=D Como se describe un FF
end if; con reset síncrono?
end process;
end A; 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
lógico) usando la instrucción “if falling_edge (clk) then…”. En
la simulación deben diseñar 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 lógico) usando la instrucción “if
rising_edge (clk) then…”. En la simulación deben diseñar 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, imágenes de la forma de onda claras (como se
pidió en clase), código en VHDL y diagrama lógico.
Registros
entity COUNTER is
port (CLK: in std_logic;
Q : out integer range 0 to 15 );
end COUNTER;
 Storage elements
architecture RTL of COUNTER is are synthesized
signal COUNT : integer range 0 to 15 ;
Begin for all signals that
are driven within a
process (CLK)
begin 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