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

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

3天内不再提示

为什么有时候FIF不能正常工作?

FPGA技术驿站 来源:Lauren的FPGA 作者:Lauren的FPGA 2021-04-26 11:13 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

同步控制信号

对于读/写时钟相互独立的FIFO(读/写时钟独立意味着这两个时钟是异步的,例如来自于不同的MMCM),要确保相应的控制信号只在与之对应的时钟域内被使用。如下图所示,除了rst对整个FIFO进行异步复位外,其余信号都与各自的时钟同步。例如:写使能wr_en、写数据din都与写时钟wr_clk同步;读使能rd_en、读数据dout都与读时钟rd_clk同步。和“满”相关的状态信号如full/almost_full等都与wr_clk同步;和“空”相关的状态信号如empty/almost_empty等都与rd_clk同步。

o4YBAGCGMAuAFia5AAB7kdCxKHs375.jpg

复位信号 对于读/写时钟独立的FIFO,FIFO Generator提供了复位信号,用于对所有的状态输出信号进行复位,如下图所示。这里复位信号是可选的。如果下图选项1不勾选,那么选项2和选项3则不可见,此时FIFO没有复位信号。如果勾选1,此时选项2和选项3可见,且默认均被勾选,这意味着rst尽管是异步的,但在使用时会被wr_clk和rd_clk先同步到各自的时钟域。如果勾选1,但不勾选2,此时读/写时钟域会分别有各自的复位信号wr_rst和rd_rst。当wr_rst有效时(高有效),写时钟域处于复位状态;当rd_rst有效时,读时钟域处于复位状态。由此可见,对于读/写时钟独立的FIFO,异步复位rst和同步wr_rst/rd_rst是可选的。这意味着FIFO可以没有复位信号,也可以只用一个异步复位信号rst,或者用同步复位wr_rst/rd_rst。

原文标题:你的FIFO为什么不能正常工作

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

责任编辑:haq

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

    关注

    3

    文章

    407

    浏览量

    45963
  • 同步控制
    +关注

    关注

    0

    文章

    40

    浏览量

    12839

原文标题:你的FIFO为什么不能正常工作

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    智能安全带互锁防误操作,高空作业告别人为安全隐患

    知道,人在上面,最怕的不是累,而是“失误”。有时候是卡扣没挂牢,有时候是横向移位时为了省事临时解锁,也有时候,是连续作业后身体疲劳,动作开始变形。
    的头像 发表于 05-09 17:09 1386次阅读
    智能安全带互锁防误操作,高空作业告别人为安全隐患

    RK平台上不会移植第三方系统?读懂这个脚本,轻松掌握嵌入式系统构建

    在嵌入式开发领域,我们常遇到这样的场景:花了三天编译的系统镜像,启动后却发现摄像头无法工作;明明配置了 SSH 服务,却始终连不上设备;甚至有时候,一句 "构建失败" 的报错能让整个团队卡壳半天。
    的头像 发表于 02-04 16:15 331次阅读
    RK平台上不会移植第三方系统?读懂这个脚本,轻松掌握嵌入式系统构建

    搞笑诺贝尔:科学界的邪修盛宴

    真正的智慧有时候就藏在不为人关注的日常里
    的头像 发表于 11-21 22:17 3655次阅读
    搞笑诺贝尔:科学界的邪修盛宴

    伺服电机和步进电机的核心区别

    大家在运动控制的时候是用伺服电机的还是用步进电机做定位控制了?为什么有时候用伺服电机,有时候又步进电机?这是什么原因呢?本期我们就一起来探讨一下步进电机和伺服电机的区别!
    的头像 发表于 10-15 14:32 2120次阅读
    伺服电机和步进电机的核心区别

    正点原子F407开发板BSP RTstudio配置LVGL demo界面不能触摸怎么解决?

    是开启了touch的支持,另外还增加了触摸的复位,按下电路板的复位按钮后,有时候可以读取到触摸,有时候就不行
    发表于 10-14 06:31

    H743的LPUART1接收数据有时候出错怎么解决?

    MODBUS协议,从机回复的都是正确的。LPUART1接收到就有时不正确。 波特率9600,时钟用的是内部CSI。 同一块儿板子有时出现,有时正常。有的板子出现,有的板子不出现。
    发表于 09-22 06:58

    在TriCore移植RTT的时候遇到了debug现象正常,为什么?

    我在TC377上移植RTT,在验证的时候发现正常烧录没有用,但debug的时候功能正常。怀疑是初始化或者中断问题,但能力有限实在查不出来原因,所以想请教一下
    发表于 09-10 06:51

    如何将源地址 FCANFDx FiF 0 加载到 DMA 线的 SRC 寄存器中?

    您能否提供一个示例,说明如何将源地址 FCANFDx FiF 0 加载到 DMA 线的 SRC 寄存器中? 我不想使用固定地址加载,例如: cy_stc_dma_descriptor_t
    发表于 07-18 08:06

    某车联网终端有时无法短信唤醒的故障分析

    某车企反馈车载物联网终端4G下有时无法接收短信,导致车辆无法唤醒。查询短信中心记录,下发失败原因有时是“用户不在服务区”,有时是“用户关机”。实际终端一直保持开机状态。
    的头像 发表于 07-14 10:39 982次阅读
    某车联网终端<b class='flag-5'>有时</b>无法短信唤醒的故障分析

    有一个应用是需要蓝牙以每7s的interval进行advertise,有以下疑问求解

    我有一个应用是需要蓝牙以每7s的interval进行advertise(cybt343026-01)。如下是我的配置。 我想问一下 1. 这样设置对吗?因为我有时候好像测到是7s,有时候又好像出现
    发表于 07-08 07:43

    Cyw20719B2的SPI经常不能正常工作,是什么原因导致的?

    cyw20719b2的SPI1工作于slave模式,外设发送的数据经常不能被cyw20719b2的SPI1正常接收。现象如下: 1)cyw20719b2启动后,如果SPI1第一次接收的数据正常
    发表于 07-08 06:34

    ++和--运算时数据在正数时计算是正确的,负数时有时候会溜掉计数,为什么?

    我用STM32G4做的无刷驱动板,用TIM3的霍尔模式来读取电机的霍尔值,在程序里我写了一段计数程序,当用手旋转电机正转时每次霍尔值改变计数值做++运算,反转时--运算,转动慢的时候没有任何问题
    发表于 06-23 07:25

    STM32N6570-DK 的STLINK口不能识别出STLINK,为什么?

    使用数据线连接STM32N6570-DK的CN6口和电脑,存在不能识别出STLINK的情况。这个板子集成的STLINK是连上数据线就能识别出STLINK,还是配置硬件才能识别出来?我电脑的stlink驱动和数据线应该都没有问题。因为有时候能够识别出STLINK。
    发表于 06-16 07:14

    DC纹波测试问题

    为什么在测试DC纹波的时候,为什么有时候测出来是几十mv,有时候测出来是20多V,是测试方法有问题吗,还是别的注意事项,用的200M的带宽
    发表于 06-08 22:00

    CY7C68013A跑着跑着掉线是什么原因导致的?

    RT所示,我现在用这颗USB芯片,跑的USB High Speed模式,在win10上会出现跑着跑着USB设备消失了,设备管理器中都也找不到该设备了,必须要重新插拔一下才可以,有时候1天就会出现一次,有时候3-4天出现一次。这可能是什么原因造成的?
    发表于 06-03 07:56