D触发器的VHDL代码

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

 D触发器的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触发器的仿真波形:

 D触发器的VHDL代码

这个 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编码与软件编程
 FPGA Verilog VHDL课程

没意见:

发表评论

热门FPGA项目