0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA学习-边沿检测技术

FPGA设计论坛 来源:未知 2022-11-26 10:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

所谓边沿检测,就是检测输入信号即上升沿或者下降沿的检测。
边沿检测的电路很好实现:上一时刻为低电平,而当前时刻为高电平,此时就为上升沿;上一时刻为高电平,而当前时刻为低电平,此时就为上升沿。
通过边沿采样技术实现上升沿捕获进而实现外部信号的上升沿触发。

边沿检测电路的实现方法;

1、always @ (posedge signal)

FPGA不便于处理此类触发信号,除非外部输入信号作为全局时钟使用。另外众所周知由于电路不能能避免抖动现象,所以用这个检测方法是明显不合理的。

2、一级D触发器实现; 我们先看下代码,

module shizhong
(
input clk,
input rst_n,
input spi_cs,
output mcu_write_done
);
reg spi_cs_r0;
always@(posedge clk or negedge rst_n)
begin
if(!rst_n)
begin
spi_cs_r0 <= 1; 
end
else
begin
spi_cs_r0 <= spi_cs;        
end
end

assign mcu_write_done = (~spi_cs_r0 & spi_cs) ? 1'b1 : 1'b0; //posedge

endmodule

代码综合后RTL视图如下:
正常工作,没有复位的情况下,工作流程如下:
(1)D触发器经过时钟clk的触发,输出spi_cs信号,保存了t0时刻的信号。
(2)同时由spi_cs直接输出到与门,保留了当前时刻t1的触发信号
(3)经过与门输出信号pos_edge,neg_edge
a) 只有t0时刻为高,且t1时候为低的时候,与门输出高,此时为下降沿。
b) 只有to时候为低,且t1时候为高的时候,与门输出高,此时为上升沿。

一级D触发器在寄存器比较时,前一时刻通过D触发器已经统一到FPGA的时钟域,而当前时刻直接从外部输入,与FPGA整体逻辑电路不在同一时钟域,为提高系统的稳定性我们可以采用第三种方法即二级D触发器。

3、二级D触发器;我们仍然先看代码:

module shizhong
(
input clk,
input rst_n,
input spi_cs,
output mcu_write_done
);
reg spi_cs_r0, spi_cs_r1;
always@(posedge clk or negedge rst_n)
begin
if(!rst_n)
begin
spi_cs_r0 <= 1; spi_cs_r1 <= 1;
end
else
begin
spi_cs_r0 <= spi_cs; spi_cs_r1 <= spi_cs_r0;
end
end

assign mcu_write_done = (~spi_cs_r1 & spi_cs_r0) ? 1'b1 : 1'b0;

endmodule

代码综合后RTL视图如下:
正常工作,没有复位的情况下,工作流程如下:
(1)一级D触发器经过时钟clk的触发,输出当前spi_cs信号,保存了t0时刻的信号。送往与门。
(2)二级D触发器经过时钟clk的触发,输出上一时刻spi_cs信号,保存了t1时刻的信号。通过非们送往与门。
(3)经过与门输出信号pos_edge,neg_edge
a) 只有t0时刻为高,且t1时候为低的时候,与门输出高,此时为下降沿。
b) 只有to时候为低,且t1时候为高的时候,与门输出高,此时为上升沿。
利用CLK打两拍,实现了上一时刻信号和本时刻信号和FPGA整体逻辑电路统一到同一时钟域。
这里要加两级的触发器的另一个原因,因触发器跳转产生滞后信号只能在时钟的上升沿,而被检测信号tigger并不一定是在一级触发器跳转的时钟上升沿到来,这样一级触发器所产生的滞后信号与tigger相差就达不到一个CLK周期,所以产生的脉冲信号就小于一个CLK周期了,不利于后面电路对其的应用。
边沿检测应用:
(1)将时钟边沿使能转换为边沿检测使能,使时钟同步化。
(2)捕获信号的突变(UART,SPI等信号使能突变)
(3)逻辑分析仪中信号的边沿检测。
实现指标及存在缺陷:
(1)增大CLK信号可以增强边沿检测的效率,但不能滤去跳变的杂波。
(2)减少CLK可以有效滤去跳变的杂波,但不能及时检测到边沿跳变。
(3)增加DFF能更好的滤除杂波,寄存信号,但同时检测延时大。





精彩推荐



至芯科技12年不忘初心、再度起航11月12日北京中心FPGA工程师就业班开课、线上线下多维教学、欢迎咨询!
FPGA学习-CRC校验
FPGA学习-你真的理解IIC吗?
扫码加微信邀请您加入FPGA学习交流群




欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!


点个在看你最好看





原文标题:FPGA学习-边沿检测技术

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1656

    文章

    22292

    浏览量

    630406

原文标题:FPGA学习-边沿检测技术

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    GPIO中断设计中边沿触发和电平触发的区别是什么

    在嵌入式系统中,GPIO中断的边沿触发(Edge-Triggered)和电平触发(Level-Triggered)是两种核心中断检测机制,其设计差异直接影响系统稳定性与实时性。 边沿触发:信号跳变
    发表于 11-17 06:59

    FPGA和GPU加速的视觉SLAM系统中特征检测器研究

    特征检测是SLAM系统中常见但耗时的模块,随着SLAM技术日益广泛应用于无人机等功耗受限平台,其效率优化尤为重要。本文首次针对视觉SLAM流程开展硬件加速特征检测器的对比研究,通过对比现代SoC平台
    的头像 发表于 10-31 09:30 306次阅读
    <b class='flag-5'>FPGA</b>和GPU加速的视觉SLAM系统中特征<b class='flag-5'>检测</b>器研究

    基于FPGA的肤色检测方案简介

    的白色区域扩大,从而抵消腐蚀操作对图像带来的变化。通过腐蚀和膨胀,可以在几乎不改变图像的前提下消除干扰,提高肤色检测准确度。其效果如下所示: 在FPGA中,实现腐蚀和膨胀操作最主要的就是按照
    发表于 10-28 07:07

    25年11月上海FPGA算法实现与应用技术高级研修分享

    。希望有更多的朋友参与其中,一起深入研究和探讨,一起成长。   适合参加的对象:适合于使用FPGA器件进行科研和产品开发的工程技术人员,也适合于相关领域的教师和研究生。参加学习的学员只需要具有
    发表于 10-11 11:55

    FPGA在机器学习中的具体应用

    随着机器学习和人工智能技术的迅猛发展,传统的中央处理单元(CPU)和图形处理单元(GPU)已经无法满足高效处理大规模数据和复杂模型的需求。FPGA(现场可编程门阵列)作为一种灵活且高效的硬件加速平台
    的头像 发表于 07-16 15:34 2639次阅读

    机器学习异常检测实战:用Isolation Forest快速构建无标签异常检测系统

    本文转自:DeepHubIMBA无监督异常检测作为机器学习领域的重要分支,专门用于在缺乏标记数据的环境中识别异常事件。本文深入探讨异常检测技术的理论基础与实践应用,通过Isolatio
    的头像 发表于 06-24 11:40 1204次阅读
    机器<b class='flag-5'>学习</b>异常<b class='flag-5'>检测</b>实战:用Isolation Forest快速构建无标签异常<b class='flag-5'>检测</b>系统

    进群免费领FPGA学习资料!数字信号处理、傅里叶变换与FPGA开发等

    进群免费领FPGA学习资料啦!小编整理了数字信号处理、傅里叶变换与FPGA开发等FPGA必看资料,需要的小伙伴可以加小助手(微信:elecfans123)或进 QQ 群:9135011
    发表于 04-07 16:41

    数字电路—20、边沿触发器

    边沿触发器:靠CP脉冲上升沿或下降沿进行触发。
    发表于 03-26 14:52

    行业首创:基于深度学习视觉平台的AI驱动轮胎检测自动化

    全球领先的轮胎制造商 NEXEN TIRE 在其轮胎生产检测过程中使用了基于友思特伙伴Neurocle开发的AI深度学习视觉平台,实现缺陷检测率高达99.96%,是该行业首个使用AI平台技术
    的头像 发表于 03-19 16:51 788次阅读
    行业首创:基于深度<b class='flag-5'>学习</b>视觉平台的AI驱动轮胎<b class='flag-5'>检测</b>自动化

    外部中断触发类型为双边沿触发,进入中断回调后有什么办法判断该边沿是上升沿还是下降沿?

    外部中断触发类型为双边沿触发,进入中断回调后有什么办法判断该边沿是上升沿还是下降沿
    发表于 03-11 06:05

    MRAM存储替代闪存,FPGA升级新技术

    优化的架构设计和成熟的制程技术,具备内置的硬擦除器、错误检测和校正机制,为用户提供了可靠的开发环境。用户可利用最新的Radiant工具,直接实现MRAM的编程接口,支持多种存储容量和数据速率。利用这些FPGA器件,用户可以受益于
    发表于 03-08 00:10 1644次阅读

    【国产FPGA入学必备】国产FPGA权威设计指南+配套FPGA图像视频教程

    一、《国产FPGA权威设计指南》简介 为更好地服务广大FPGA工程师和高等学校师生,2025,紫光同创携手金牌方案提供商小眼睛科技,组织了数十位应用技术专家,共同编写《国产FPGA权威
    发表于 02-20 15:08

    基于FPGA的图像边缘检测设计

    今天给大侠带来基于 FPGA 的图像边缘检测设计,话不多说,上货。 设计流程如下:mif文件的制作→ 调用 ip 核生成rom以及仿真注意问题→ 灰度处理→ 均值滤波:重点是3*3 像素阵列的生成
    的头像 发表于 02-10 11:30 1101次阅读
    基于<b class='flag-5'>FPGA</b>的图像边缘<b class='flag-5'>检测</b>设计

    CAN差分波形的边沿如此缓慢怎么办?

    现场进行CAN通信故障排查时,常常遇见因边沿缓慢导致的通信错误,那边沿缓慢是由什么原因导致的呢?下面通过一个案例带大家一起看一看。现场测试数据图1是通过ZPS-CANFD采集的现场CAN网络的报文
    的头像 发表于 01-21 11:47 1293次阅读
    CAN差分波形的<b class='flag-5'>边沿</b>如此缓慢怎么办?

    FPGA在AI方面有哪些应用

    随着人工智能技术的飞速发展,对计算性能的需求也日益增长。FPGA(现场可编程门阵列)作为一种高性能、低功耗、可灵活编程的硬件平台,正逐渐在 AI 领域崭露头角,展现出独特的优势,为 AI 应用的落地
    的头像 发表于 01-06 17:37 2115次阅读