fpga系列 硬件(时序收敛):触发器建立时间(setuptime)

news2024/11/18 23:42:46

触发器

  • 电平触发、边沿触发和脉冲触发是三种主要的触发形式。
  • always @(posedge clk or negedge rst_n) 是一个典型的 Verilog 语句,用于定义一个带复位的触发器。D触发器是一种基本的数字存储元件,主要用于数据存储和时序控制。

D触发器的建立时间和保持时间

  • 在时钟的上升沿附近数据要保持稳定,以确保正确采样。
Layer 1 建立时间 保持时间
建立时间(Setup Time)
  • 建立时间是指在时钟信号的上升沿到来之前,数据输入(D)需要保持稳定的时间。换句话说,D输入在时钟信号的触发前必须在有效状态,并且在这个时间段内不能发生变化。DATA(D)先出发,即在CLK上升沿到来前要先稳定一段时间。
保持时间(Hold Time)
  • 保持时间是指在时钟信号的上升沿到来之后,数据输入(D)仍然需要保持稳定的时间。也就是说,在时钟信号的触发后,D输入必须在其有效状态,并且不能立即改变。保持时间去确保DATA被上传到输出端。

D触发器示例

1.主从边沿触发的 D 触发器

  • 主从边沿触发的 D 触发器基础结构 — D 锁存:
    在这里插入图片描述
  • 主从边沿触发的 D 触发器由D 锁存组成:
XCircuit Version 3.7 File "(null)" Page 1 Layer 1 D Q Q E D Q Q E Q Q D Master Slave Clock
  • 如果 Clk 为 0,则表示从锁存器的 Enable input 也为 0。所以这个 latch 的 output 不会发生任何事情。
XCircuit Version 3.7 File "(null)" Page 1 Layer 1 D Q Q E D Q Q E Q Q D Master Slave Clock 1 0 1 1 1 0
  • 但是当 Clk 从 0 变为 1 (上升沿)时,slave 锁存器的 Enable input 设置为 1。这意味着在 Clk 从 0 变为 1 的那一刻 master latch 的 output 上的任何内容都保存到 slave latch 的 output。
XCircuit Version 3.7 File "(null)" Page 1 Layer 1 D Q Q E D Q Q E Q Q D Master Slave Clock 1 1 0 1 1 1 1

2.经典的正边沿触发 D 触发器

非门(NAND gate)

下面是与非门(NAND gate)的真值表:

ABA NAND B
001
011
101
110

在这个真值表中:

  • 当输入 A 和 B 都为 1 时,输出为 0。
  • 其他情况下,输出都为 1。
Layer 1 A B A NAND B
经典的正边沿触发 D 触发器如下所示:
  • D触发器有两个主要输入:数据输入D和时钟输入CLK。当CLK信号的边缘到来时,D触发器会“锁定”D的值,然后将其输出到Q
Layer 1 CLK D Q Q'

CG

  • https://en.wikipedia.org/wiki/Flip-flop_(electronics)#Gated_D_latch

  • DUAL D-TYPE POSITIVE-EDGE-TRIGGERED FLIP-FLOPS WITH PRESET AND CLEAR SDLS119 − DECEMBER 1983 − REVISED MARCH 1988

  • 青少年电子技术基础第22讲:单稳态

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2184021.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Zabbix自动发现SNMP主机

前言 利用Zabbix监控DELL R740主机硬件,监控通过自动发现主机,链接SNMP监控模板 一、配置自动发现 自动发现脚本 cat discovery_host.pyfrom os.path import abspath, dirname, join import json import sysreload(sys) sys.setdefaultencoding(utf-8…

【2024】前端学习笔记11-网页布局-弹性布局flex

学习笔记 网页布局弹性布局:flex案例:flex布局案例 网页布局 在页面布局中,display属性用于设置一个元素的显示方式。它可以指定元素是作为块级元素、内联元素还是充当表格元素显示。 display的常见属性值: block:将…

前端——Ajax和jQuery

一、Ajax Ajax即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML), 通过 JS 异步的向服务器发送请 求并接收响应数据。 同步访问:当客户端向服务器发送请求时,服务器在处理的过程中,浏览器…

AutoGen实现多代理-Planning_and_Stock_Report_Generation(六)

1. 案例背景 本节内容是构建Agent组,通过广播模式,实现管理者对agent工作流的管理。本实验链接:传送门 2. 代码实践 2.1 环境设置 llm_config{"model": "gpt-4-turbo"}# 工作任务描述 task "Write a blogpost a…

【CSS3】css开篇基础(1)

1.❤️❤️前言~🥳🎉🎉🎉 Hello, Hello~ 亲爱的朋友们👋👋,这里是E绵绵呀✍️✍️。 如果你喜欢这篇文章,请别吝啬你的点赞❤️❤️和收藏📖📖。如果你对我的…

【树莓派系列】树莓派首次开机配置

树莓派首次开机配置 文章目录 树莓派首次开机配置1.镜像烧录2.开启串口调试1.无屏幕2.有屏幕3.串口登录系统 3.配置网络VNC与SSH的区别 4.更新vim5.固定IP地址6.开启SSH,网络登录开发板7.xrdp图形化登录开发板XRDP与VNC区别8.更新国内下载镜像源9.vscode连接开发板1…

C语言 | Leetcode C语言题解之第450题删除二叉搜索树中的节点

题目: 题解: struct TreeNode* deleteNode(struct TreeNode* root, int key){struct TreeNode *cur root, *curParent NULL;while (cur && cur->val ! key) {curParent cur;if (cur->val > key) {cur cur->left;} else {cur c…

OpenAi FunctionCalling 案例详解

源码详细讲解 pdf 及教学视频下载链接:点击这里下载 FunctionCalling的单一函数调用 天气预报查询(今天长沙的天气如何?) import json import requests from openai import OpenAIclient OpenAI()location "长沙"…

`git restore` 和 `git checkout` 用于丢弃工作区的改动, `git switch` 和 `git checkout` 用来切换分支

git restore 和 git checkout 都可以用于丢弃工作区的改动 但它们有一些区别,尤其是在 Git 2.23 引入了新的命令后。 主要区别 git checkout 是一个多用途命令: 它用于切换分支。它还可以用于恢复工作区中特定文件的更改。由于功能过于复杂&#xff0c…

Cortex微控制器软件接口标准(CMSIS)

Cortex微控制器软件接口标准 目前,软件开发已经是嵌入式系统行业公认的主要开发成本,通过将所有Cortex-M芯片供应商产品的软件接口标准化,能有效降低这一成本,尤其是进行新产品开发或者将现有项目或软件移植到基于不同厂商MCU的产…

Golang | Leetcode Golang题解之第450题删除二叉搜索树的节点

题目: 题解: func deleteNode(root *TreeNode, key int) *TreeNode {var cur, curParent *TreeNode root, nilfor cur ! nil && cur.Val ! key {curParent curif cur.Val > key {cur cur.Left} else {cur cur.Right}}if cur nil {retur…

回首往事,感受change

今早,我收到了CSDN发来的消息,当我看了内容才发现,我不知不觉已经在CSDN里面创作了730天(2年)也是个非常值得纪念的日子。 今天,我来回顾一下我的以往,感受一下我的成长与变化。 梦的开始 大家…

【Python报错已解决】 Failed building wheel for opencv-python-headless

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

2024多模态大模型发展调研

随着生成式大语言模型应用的日益广泛,其输入输出模态受限的问题日益凸显,成为制约技术进一步发展的瓶颈。为突破这一局限,本文聚焦于研究多模态信息的协同交互策略,旨在探索一种能够统一理解与生成的多模态模型构建方法。在此基础…

C# 无边框窗体,加阴影效果、多组件拖动、改变大小等功能完美实现优化版效果体验

一、预览效果 国庆节第一天,祝祖国繁荣昌盛! 1.1 效果图 (WinForm无边框窗体,F11可全屏) 拖动窗体时半透明效果(拖动时参考窗体后面释放位置) 说明:本功能的实现基于网友的原型完善而来,更多代码可以参考他的文章 h

智能平衡移动机器人-平台硬件电路

目录 硬件电路主要模块包括: 主控制器 TMS320F28069数字信号处理器 电池 电机驱动电路 直流电机的驱动 编码器 传感器与外设模块 APP 为了使智能平衡移动机器人达到更好的平衡控制效果,机器人的本体设计更为轻便、集中。机器人的硬件电路也进行集…

课设实验-数据结构-单链表-文教文化用品品牌

题目&#xff1a; 代码&#xff1a; 正解&#xff1a; #include<stdio.h> #include<stdlib.h> #include<string.h> #define MaxSize 10 //定义顺序表最大长度static int result; //字符串比较结果 static int i; //循环初始值 static bool flag; //记录结…

Typora使用与Markdown语法详细教程

Typora 基本介绍 Typora 是一款由 Abner Lee 开发的轻量级 Markdown 编辑器。Markdown 是一种 轻量级标记语言&#xff0c;它允许人们使用易读易写的纯文本格式编写文档&#xff0c;然后转换成有效的 XHTML&#xff08;或者 HTML&#xff09;文档。 安装 下载地址&#xff…

C语言 getchar 函数完全解析:掌握字符输入的关键

前言 在C语言中&#xff0c;getchar 是一个非常实用的函数&#xff0c;用于从标准输入流&#xff08;通常是键盘&#xff09;读取单个字符。这对于处理文本输入非常有用&#xff0c;尤其是在需要逐个字符处理的情况下。本文将深入探讨 getchar 函数的用法和特点&#xff0c;并…

开放式耳机是什么意思?哪个品牌好?开放式蓝牙耳机测评分享

开放式耳机是目前比较流行的一种蓝牙耳机类型&#xff0c;它凭借佩戴舒适、安全性高、透气性好以及健康卫生等等特点成为了很多人的耳机选择。但其实并没有太多人了解开放式耳机&#xff0c;不知道什么是开放式耳机、开放式耳机是否比封闭式耳机强、什么样的人适合开放式耳机以…