D 触发器 的VHDL的设计

举报
吴梦青 发表于 2022/05/27 15:44:55 2022/05/27
【摘要】 时序电路是由组合电路加存储元件构成;存储元件采用触发器实现;时序电路可以没有组合电路,但必须有触发器;触发器具有存储功能;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’
解释:

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

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。