原创 触发器与锁存器的区别

2009-8-29 16:12 3652 1 1 分类: FPGA/CPLD

"触发器" 泛指一类电路结构, 它可以由触发信号 (: 时钟, 置位, 复位等) 改变输出状态, 并保持这个状态直到下一个或另一个触发信号来到时, 触发信号可以用电平或边沿操作. 锁存器是触发器的一种应用类型.


锁存器---对脉冲电平敏感,在时钟脉冲的电平作用下改变状态  


触发器---对脉冲边沿敏感,其状态只在时钟脉冲的上升沿或下降沿的瞬间改变  


CMOS 芯片内部经常使用锁存器, 但是在 PCB 板级结构上, 建议用触发器在时钟边沿上锁存数据. 这是因为在锁存器闸门开启期间数据的变化会直接反映到输出端, 所以要注意控制闸门信号的脉冲宽度. 而对于触发器, 只考虑时钟的边沿.


FPGA设计中建议多采用触发器。


VHDL中触发器的语言描述


process


begin


       wait until clk’event and clk=’<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />1’


       q <= d;


end process;


<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 


VHDL中锁存器的语言描述


process(en,d)


begin


       if en=’1’ then


       q <= d;


       end if;


end process;


 


Verilog中触发器的语言描述


always @ (posedge  clk)


begin


q<=d;


end


 


Verilog中锁存器的语言描述


always@(en,d)


begin


if(en = = 1’b1)  q<=d;


end

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
1
关闭 站长推荐上一条 /1 下一条