Red de conocimiento informático - Problemas con los teléfonos móviles - Programación de claves VHDL

Programación de claves VHDL

Es el nivel bajo 0 antes de presionar el botón (si es el nivel alto, CLR

Archivo inferior 1 (contador 1-9)

Biblioteca ieee

Utilice IEEE.STD_logic_1164.all;

Utilice IEEE.STD_logic_unsigned.all;

La entidad cnt es

port(clk: en STD _ logic;

clr: in std_logic;

q: out STD _ logic _ vector(3 hasta 0));

Entidad final cnt

El comportamiento estructural de los nanotubos de carbono es

Recuento de señales: STD _ logic _ vector (3 hasta 0

Inicio

Proceso(reloj)

Inicio

Proceso(reloj)

p>

Iniciar

if(clr lt;='0') y luego contar lt="0000";

elsif(clk' evento y clk='1 ') entonces

si (cuenta lt; 9) entonces

cuenta lt= cuenta 1

si no cuenta lt="0001 ";

>Finalizar si;

Finalizar si;

Finalizar proceso;

q lt=count;

Finalizar comportamiento;

Archivo inferior 2 (antirrebote de clave)

Biblioteca ieee

Utilice IEEE.STD_logic_1164.all;

Utilice IEEE .STD_logic_unsigned .all;

La entidad debounce_low es

puerto(clk: en STD_logic;

key_in: en std_logic;

key_out: fuera de STD_logic);

fin debounce_low;

arquitectura debounce_low Uno es

Señal dout1, dout2, dout3, buff: STD_logic;

Inicio

Proceso (reloj)

Iniciar

IF (clk'event y clk='1') luego

dout 1 lt;= key _ in

dout2 lt= dout 1;

p>

dout3 lt= dout2

buff lt=not(dout1 o dout2 o dout3) y buff

Finalizar si;

Finalizar proceso;

key _ out lt=dout1 o dout2 o dout3

Finalizar uno;

Archivo de nivel superior

Biblioteca ieee

Usar IEEE.STD_logic_1164.all;

Usar IEEE.STD_logic_unsigned.all;

Entidad cnt_9 es

Puerto ( clkk: en std_logic;

clave: en std_logic;

cq: vector lógico estándar de salida (3 cae a 0)

);

Entidad terminal CNT_9;

Las características estructurales del nanotubo de carbono 9 son

Componente Qudu

puerto(clk: en STD_logic;

key_in: en std_logic;

key_out: fuera de STD_logic);

Fin del componente;

El componente cnt es

port(clk: in STD_logic;

clr: in std_logic;

q: out STD_logic_vector(3 hasta 0));

Fin del componente;

Señal a: STD_logic;

Inicio

u1: asignación de puerto qudou (clk = gtclkk, key_in = gtkey, key_out = gta);

u2: mapeo de puerto cnt (clk = gtclkk, clr = gta, q = gtCQ);

Finalizar comportamiento;