VHDL异步置位JK触发器设计与Quartus II实现及DE-1开发板测试
好的,以下是一个基于 VHDL 语言的异步置位 JK 触发器设计代码,您可以在 Quartus II 中执行,并在 DE-1 开发板上进行测试。
library ieee;
use ieee.std_logic_1164.all;
entity jk_trigger is
port (
clk : in std_logic;
j : in std_logic;
k : in std_logic;
set : in std_logic;
q : out std_logic;
qn : out std_logic
);
end jk_trigger;
architecture Behavioral of jk_trigger is
signal q_int : std_logic;
signal qn_int : std_logic;
begin
process (clk, set)
begin
if (set = '1') then
q_int <= '1';
qn_int <= '0';
elsif (rising_edge(clk)) then
if (j = '1' and k = '0') then
q_int <= '1';
qn_int <= '0';
elsif (j = '0' and k = '1') then
q_int <= '0';
qn_int <= '1';
elsif (j = '1' and k = '1') then
q_int <= not q_int;
qn_int <= not qn_int;
end if;
end if;
end process;
q <= q_int;
qn <= qn_int;
end Behavioral;
上述代码实现了一个异步置位 JK 触发器,其中根据不同的输入信号(j、k、set)进行状态的更新,并通过输出信号(q、qn)将结果显示在开发板上。 在 Quartus II 中,您需要将以上代码保存为 .vhd 文件,并进行综合、布局布线和下载等操作,以便在 DE-1 开发板上进行测试。 测试时,您需要将 CLK 信号连接到 KEY3 按键(Pin_T21),将 J、K 信号连接到拨码开关 SW1(Pin_L21)、SW0(Pin_L22),将 SET 信号连接到拨码开关 SW9(Pin_L22),将 Q、Qn 信号连接到 LEDR1(Pin_R19)和 LEDR0(Pin_R20)。 希望这个示例代码可以对您有所帮助!
原文地址: https://www.cveoy.top/t/topic/gEnY 著作权归作者所有。请勿转载和采集!