问:关于上升沿和下降沿触发的讨论

答:发现一些同仁提出上升沿和下降沿计数的问题,工作中也碰到一些同事问及此问题。现在我把我多年
来一直采用的办法奉上,但愿对初学者有所帮助。 
以一个最简单的计数器为例:

Port(
     clock:in std_logic; 
    pulse:in std_logic;
   q:out std_logic_vector(3 downto 0)
);
q输出为对pulse跳变沿的递增计数。clock为系统高速时钟。 
Process(clock) begin
if rising_edge(clock) then
dly1pul <= pulse;
dly2pul <= dly1pul;
end if;
End process;

en <= dly1pul and not dly2pul;--上升沿
--en <= not dly1pul and dly2pul;--下降沿
--en <= dly1pul xor dly2pul;--上升沿和下降沿
Process(clock) begin
if rising_edge(clock) then
if en = '1' then
cnt <= cnt + 1;
end if;
end if;
End process;
q <= cnt;
单对于此小问题,当然采用倍频实现双沿计数也是可行的,但是我们不要忘记,倍频器在很多CPLD
或FPGA中是不支持的,即便支持其资源也是很宝贵的。 
我看到的一些设计中,动辄采用某一信号作为时钟,应该说这种做法是欠妥的。因为不是全局时钟的
时钟信号最大扇出是有限的,其很难保证时钟延时应小于信号延时的基本要求。当遇到要对某个信号
的跳变沿处理时,建议采用上述小例子中en信号的处理办法。

转载于:https://www.cnblogs.com/FPGA_DSP/archive/2010/03/09/1681485.html

问:关于上升沿和下降沿触发的讨论相关推荐

  1. LabVIEW用布尔控件实现上升沿和下降沿触发

    我们利用了第三方布尔控件来记录摇杆的高低电平状态,并和摇杆布尔控件组成布尔数组,转换成十进制数进行判断上升沿和下降. 上升沿触发.例如一开始第三方布尔控件为T,夹紧松开布尔控件为F,然后我这时把摇杆控 ...

  2. PHP实现上升沿,可编程控制器(PLC)编程如何使用ST语言实现上升沿和下降沿触发...

    上升沿,下降沿在工业自动化中的应用非常广泛,在梯形图时代,它的实现非常容易,只需一个简单的符号就可以实现. 梯形图实现上升沿 如上图所示,PLC采集到变量A的上升沿的时候,变量B有输出.说到边沿触发, ...

  3. 外部中断----高低电平触发,(边沿触发)上升沿触发和下降沿触发区别

    外部中断可以分为电平触发和边缘触发两种,那么这两种中断有什么区别,我们今天讲解下 1什么是中断 CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生): CPU暂时中断当前的工作, ...

  4. 高低电平触发,(边沿触发)上升沿触发和下降沿触发 中断区别

    外部中断可以分为电平触发和边缘触发两种,那么这两种中断有什么区别.中断基本概念是: CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生): CPU暂时中断当前的工作,转去处理事件 ...

  5. IIC协议驱动EEPROM的Verilog实现与竞争冒险与下降沿触发、多重驱动

    文章目录 一.前言 二.软硬件平台 软件平台 硬件平台 三.IIC与EEPROM IIC简介 1. 写操作大致步骤 2. 读操作大致步骤 3. IIC总线有以下几种状态 1. 空闲状态 2. 起始信号 ...

  6. 上升沿_输入输出的上升沿和下降沿是怎么来的,一起看看

    高电平.低电平.上升沿和下降沿的区别 数字电路中,电平从低电平(逻辑信号为0)变为高电平(逻辑信号为1)的那一瞬间叫作上升沿,电平从高电平(逻辑信号为1)变为低电平(逻辑信号为0)的那一瞬间叫作下降沿 ...

  7. 课程9:PLC常用指令之上升沿与下降沿(工控PLC工程师入门必读,5天可上手调试)

    什么是上升沿?什么是下降沿? 使用"检测信号上升沿"指令,可以检测输入 CLK 的从"0"到"1"的状态变化.如果该指令检测到输入 CLK ...

  8. PLC上升沿与下降沿的特点

    数字电路中,把电压的高低用逻辑电平来表示.逻辑电平包括高电平和低电平这两种. 不同的元器件形成的数字电路,电压对应的逻辑电平也不同. 在TTL门电路中,把大于3.5伏的电压规定为逻辑高电平,用数字1表 ...

  9. 基于stm32f4外部输入上升沿或下降沿的采集处理

    最近在调试stm32f4的UCOSIII操作系统中,外部中断的使用.发现当触发了相应的外部输入中断,会多次进入外部中断处理函数.(测试方式是在外部中断函数中写下代码t++,然后用windows窗口查看 ...

最新文章

  1. 11.18-11.19总结(transform,transition,媒体查询,弹性盒子)
  2. NVIDIA将全面支持笔记本混合显卡技术
  3. json 插入数据_Power BI数据回写SQL Server(2)——存储过程一步到位
  4. 演变模型_开放组织的演变
  5. hibernate id生成策略 mysql_Hibernate中ID生成策略
  6. pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host=”files.pythonhosted.org“,
  7. 完整版linux下android源码下载、编译、模拟器启动运行
  8. erp采购总监个人总结_ERP采购总监总结
  9. 解决OneNote导出PDF图片模糊的问题
  10. linux趋势杀毒安装目录,趋势杀毒软件在AX3.0上的安装
  11. html教程转换mp3,kgm转换mp3图文版教程,值得收藏
  12. 清除显卡右键菜单批处理.bat
  13. BERT源码深度剖析之create_pretraining_data.py
  14. 如何设计好的RESTful API之安全性
  15. layui table动态选中_ODME与动态交通分配——DTALite使用测评
  16. 磁盘空间linux命令fdisk,解决fdisk与df命令显示的磁盘空间不一样
  17. 汇编语言—常见汇编指令汇总
  18. 南京哪个211计算机好一点,南京市所有985,211大学及其王牌专业,哪个更好
  19. Amazon技术图书近期热点
  20. 让电脑显示的字体更加圆润清晰

热门文章

  1. jquery总结_代码收藏
  2. 动态页面加载速度太慢
  3. 修改android framework学习
  4. Mongoose快速入门
  5. c++-swap nodes in pairs
  6. 老男孩Linux学习 -- 关于添加第二块磁盘的那些事
  7. Linux命令学习笔记之一目录与文件基本操作
  8. Golang二进制转换十进制代码
  9. 我的notepad++
  10. 【152】C# 操作 Excel 杂记