的VHDL代码 D触发器 在此项目中介绍。 D触发器的Verilog代码 这里 。 D触发器有几种类型,例如高级异步复位D触发器,低级异步复位D触发器,同步复位D触发器, 上升沿D触发器 ,下降沿D触发器,在此通过VHDL实现 VHDL项目 .

的VHDL代码 上升沿D触发器 :
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 rising edge D flip flop Library IEEE; USE IEEE.Std_logic_1164.all; entity RisingEdge_DFlipFlop is port( Q : out std_logic; Clk :in std_logic; D :in std_logic ); end RisingEdge_DFlipFlop; architecture Behavioral of RisingEdge_DFlipFlop is begin process(Clk) begin if(rising_edge(Clk)) then Q <= D; end if; end process; end Behavioral;
具有同步复位的上升沿D触发器的VHDL代码:
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 Rising edge D flip flop with Synchronous Reset input Library IEEE; USE IEEE.Std_logic_1164.all; entity RisingEdge_DFlipFlop_SyncReset is port( Q : out std_logic; Clk :in std_logic; sync_reset: in std_logic; D :in std_logic ); end RisingEdge_DFlipFlop_SyncReset; architecture Behavioral of RisingEdge_DFlipFlop_SyncReset is begin process(Clk) begin if(rising_edge(Clk)) then if(sync_reset='1') then Q <= '0'; else Q <= D; end if; end if; end process; end Behavioral;
具有异步复位高电平的上升沿D触发器的VHDL代码:
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 Rising edge D flip flop with Asynchronous Reset high Library IEEE; USE IEEE.Std_logic_1164.all; entity RisingEdge_DFlipFlop_AsyncResetHigh is port( Q : out std_logic; Clk :in std_logic; sync_reset: in std_logic; D :in std_logic ); end RisingEdge_DFlipFlop_AsyncResetHigh; architecture Behavioral of RisingEdge_DFlipFlop_AsyncResetHigh is begin process(Clk,sync_reset) begin if(sync_reset='1') then Q <= '0'; elsif(rising_edge(Clk)) then Q <= D; end if; end process; end Behavioral;
具有异步复位低电平的上升沿D触发器的VHDL代码:
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 Rising edge D flip flop with Asynchronous Reset low Library IEEE; USE IEEE.Std_logic_1164.all; entity RisingEdge_DFlipFlop_AsyncResetLow is port( Q : out std_logic; Clk :in std_logic; sync_reset: in std_logic; D :in std_logic ); end RisingEdge_DFlipFlop_AsyncResetLow; architecture Behavioral of RisingEdge_DFlipFlop_AsyncResetLow is begin process(Clk,sync_reset) begin if(sync_reset='0') then Q <= '0'; elsif(rising_edge(Clk)) then Q <= D; end if; end process; end Behavioral;
下降沿D触发器的VHDL代码:
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 falling edge D flip flop Library IEEE; USE IEEE.Std_logic_1164.all; entity FallingEdge_DFlipFlop is port( Q : out std_logic; Clk :in std_logic; D :in std_logic ); end FallingEdge_DFlipFlop; architecture Behavioral of FallingEdge_DFlipFlop is begin process(Clk) begin if(falling_edge(Clk)) then Q <= D; end if; end process; end Behavioral;
具有同步复位的下降沿D触发器的VHDL代码:
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 Falling edge D flip flop with Synchronous Reset input Library IEEE; USE IEEE.Std_logic_1164.all; entity FallingEdge_DFlipFlop_SyncReset is port( Q : out std_logic; Clk :in std_logic; sync_reset: in std_logic; D :in std_logic ); end FallingEdge_DFlipFlop_SyncReset; architecture Behavioral of FallingEdge_DFlipFlop_SyncReset is begin process(Clk) begin if(falling_edge(Clk)) then if(sync_reset='1') then Q <= '0'; else Q <= D; end if; end if; end process;end Behavioral;
具有异步复位高电平的下降沿D触发器的VHDL代码:
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 Falling edge D flip flop with Asynchronous Reset high Library IEEE; USE IEEE.Std_logic_1164.all; entity FallingEdge_DFlipFlop_AsyncResetHigh is port( Q : out std_logic; Clk :in std_logic; sync_reset: in std_logic; D :in std_logic ); end FallingEdge_DFlipFlop_AsyncResetHigh; architecture Behavioral of FallingEdge_DFlipFlop_AsyncResetHigh is begin process(Clk,sync_reset) begin if(sync_reset='1') then Q <= '0'; elsif(falling_edge(Clk)) then Q <= D; end if; end process; end Behavioral;
具有异步复位低电平的下降沿D触发器的VHDL代码:
-- FPGA projects using VHDL/ VHDL -- fpga4student.com -- 的VHDL代码 D Flip FLop -- 的VHDL代码 Falling edge D flip flop with Asynchronous Reset low Library IEEE; USE IEEE.Std_logic_1164.all; entity FallingEdge_DFlipFlop_AsyncResetLow is port( Q : out std_logic; Clk :in std_logic; sync_reset: in std_logic; D :in std_logic ); end FallingEdge_DFlipFlop_AsyncResetLow; architecture Behavioral of FallingEdge_DFlipFlop_AsyncResetLow is begin process(Clk,sync_reset) begin if(sync_reset='0') then Q <= '0'; elsif(falling_edge(Clk)) then Q <= D; end if; end process; end Behavioral;
D触发器的仿真波形:

这个 tutorial 详细解释 触发器原理图及其工作原理: 这里 .
了解更多有关 触发器的建立和保持时间 , 看看这个 这里 .
推荐的 VHDL项目 :
1. 什么是FPGA? VHDL如何在FPGA上工作
2. FIFO存储器的VHDL代码
3. FIR滤波器的VHDL代码
4. 8位微控制器的VHDL代码
5. 矩阵乘法的VHDL代码
6. 开关尾环计数器的VHDL代码
7. FPGA上数字闹钟的VHDL代码
8. 8位比较器的VHDL代码
9. 如何使用VHDL将文本文件加载到FPGA中
10。 D触发器的VHDL代码
11。 完整加法器的VHDL代码
12 具有可变占空比的VHDL中的PWM发生器
13 ALU的VHDL代码
14。 带测试平台的计数器的VHDL代码
15 16位ALU的VHDL代码
16。 VHDL中的移位器设计
17。 VHDL中的非线性查找表实现
18岁 VHDL中的密码协处理器设计
19 Verilog和VHDL :通过示例解释
20 FPGA上时钟分频器的VHDL代码
21 如何生成时钟使能信号而不是创建另一个时钟域
22 VHDL代码,用于反跳FPGA上的按钮
23。 交通信号灯控制器的VHDL代码
24 用于简单2位比较器的VHDL代码
25岁 单端口RAM的VHDL代码
22 VHDL代码,用于反跳FPGA上的按钮
23。 交通信号灯控制器的VHDL代码
24 用于简单2位比较器的VHDL代码
25岁 单端口RAM的VHDL代码
26 使用FSM的停车场系统的VHDL代码
27。 VHDL编码与软件编程
1. 什么是FPGA? VHDL如何在FPGA上工作
2. FIFO存储器的VHDL代码
3. FIR滤波器的VHDL代码
4. 8位微控制器的VHDL代码
5. 矩阵乘法的VHDL代码
6. 开关尾环计数器的VHDL代码
7. FPGA上数字闹钟的VHDL代码
8. 8位比较器的VHDL代码
9. 如何使用VHDL将文本文件加载到FPGA中
10。 D触发器的VHDL代码
11。 完整加法器的VHDL代码
12 具有可变占空比的VHDL中的PWM发生器
13 ALU的VHDL代码
14。 带测试平台的计数器的VHDL代码
15 16位ALU的VHDL代码
16。 VHDL中的移位器设计
17。 VHDL中的非线性查找表实现
18岁 VHDL中的密码协处理器设计
19 Verilog和VHDL :通过示例解释
20 FPGA上时钟分频器的VHDL代码
21 如何生成时钟使能信号而不是创建另一个时钟域
22 VHDL代码,用于反跳FPGA上的按钮
23。 交通信号灯控制器的VHDL代码
24 用于简单2位比较器的VHDL代码
25岁 单端口RAM的VHDL代码
22 VHDL代码,用于反跳FPGA上的按钮
23。 交通信号灯控制器的VHDL代码
24 用于简单2位比较器的VHDL代码
25岁 单端口RAM的VHDL代码
26 使用FSM的停车场系统的VHDL代码
27。 VHDL编码与软件编程
没意见:
发表评论