D 触发器 的VHDL的设计
【摘要】 时序电路是由组合电路加存储元件构成;存储元件采用触发器实现;时序电路可以没有组合电路,但必须有触发器;触发器具有存储功能;D 触发器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DFF1 ISPORT(CLK,D:IN STD_LOGIC; Q:OUT STD_LOGIC);END DFF1;ARCHITECTURE BHV OF DF...
时序电路是由组合电路加存储元件构成;
存储元件采用触发器实现;
时序电路可以没有组合电路,但必须有触发器;
触发器具有存储功能;
D 触发器
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY DFF1 IS
PORT(CLK,D:IN STD_LOGIC;
Q:OUT STD_LOGIC);
END DFF1;
ARCHITECTURE BHV OF DFF1 IS
SIGNAL Q1:STD_LOGIC;
BEGIN
PROCESS(CLK,Q1) BEGIN
IF CLK'EVENT AND CLK='1'
THEN Q1<=D;
END IF;
END PROCESS;
Q<=Q1;
END BHV;
D 触发器模块图
在时钟上升沿,输出口 D 数据更新
边沿敏感检测: CLK’EVENT AND CLK=‘1’
解释:
- EVENT包含在 STD_LOGIC_1164 里。名称:信号属性函数“ <信号名> EVENT ”
- CLK’EVENT:对 CLK 标识符的信号在当前的一个极小的时间 δ 内发生的事件的情况进行检测
- 发生事件: CLK 在其数据类型的取值范围内发生变化,从一种取值转变到另一种取值
- CLK’EVENT AND CLK=‘1’ :在 δ 时间内测得 CLK 有一个跳变,而此小时间段δ后又测得CLK为高电平 ‘ 1 ’
- 不完整条件语句与时序电路:满足条件:执行 Q1<=D ,并结束IF语句。不完整的条件语句与时序电路,没有指出所有情况
- 不满足条件则不执行任何行为,即保持原值不变。
- 对于数字电路而言,当输入改变后仍能保持原值不变,就意味着使用了具有存储功能的元件。
- 在本文中还有一个重要的知识点就是定义信号Q1,是为了在设计更大的电路时使用由此引入的信号,这是一种非常常用的时序电路设计的表述方式。在D 触发器这里也用上是为了养成良好的编程习惯。
总结:D触发器是最简单的时序电路,是后面学习的基础,因此彻底理解和掌握非常重要。而且内容非常少;就是一个上升沿函数和一个赋值操作和定义一个信号。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)