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

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

3天内不再提示

FIFO存储器的种类、IP配置及应用

FPGA设计论坛 来源:FPGA设计论坛 2026-01-13 15:15 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、FIFO全名

FIRST IN FIRST OUT(先入先出)。顾名思义,FIFO是一个数据具有先进先出的存储器。

二.FIFO种类

在vivado软件的IP catalog搜索FIFO时候,会出来很多FIFO类型

7167afe6-edc9-11f0-92de-92fbcf53809c.png

(1)AXI4-Stream FIFO 是提供对与其他IP连接的AXI4-Stream接口的内存映射访问。

(2)AXI4-Stream Data FIFO 支持 AXI4-Stream 协议,具备packet 包传输模式。

(3)AXI Data FIFO 就是数据FIFO 功能较为单一,接口为Stream接口

(4)FIFO Generator支持Native 模式,AXI Memory Mapped 模式 AXI Steam 模式功能比较齐全。通常在没有AXI时候就使用Native模式。

71c5f8da-edc9-11f0-92de-92fbcf53809c.png

其中,最常见的就是FIFO的Native模式,可以设置为同步异步FIFO。

同步FIFO仅有一个时钟输入,所有信号都与这一个时钟信号有关。

721d7f74-edc9-11f0-92de-92fbcf53809c.png

异步FIFO有写端口和读端口分别有独立的时钟。相关的写信号都同步在读时钟下,所有相关的读信号都同步在读时钟下。

7272a24c-edc9-11f0-92de-92fbcf53809c.png

三、FIFO的IP配置

1.Basic配置

Interface type:Native 模式、AXI Memory Mapped 模式、 AXI Steam 模式。

通常在没有AXI时候就使用Native模式。

common和Independent代表同步和异步,如果需要读写同步就选择common,读写异步有顺序选择异步。

其余不用修改设置

72d12966-edc9-11f0-92de-92fbcf53809c.png

2.Native Ports

StandardFIFO需要读使能后一 个时钟输出才有效。

一般选择First Word Fall Through 这样写入的数据,会先在读端口准备好。

写位宽由输入的数据位宽决定,写深度取决于需要缓存数据的个数,读数据位宽取决于个人需要读取多少位宽,读数据宽度由上述三者自动确定,不需要设置。

其余设置尽量保持相同即可。

73334fd8-edc9-11f0-92de-92fbcf53809c.png

3.Status Flags

almost full 和 almost empty flag表示FIFO的满信号和空信号,选上之后可以不用。

739203e8-edc9-11f0-92de-92fbcf53809c.png

其余配置默认即可。

四、FIFO的应用

1.半空、半满控制读写FIFO

半空是针对读FIFO计数器而言,半满是针对写FIFO计数器而言。例如FIFO输入32bit深度1024;输出128bit深度256,这里的半空值就是128,半满值就是512。

例如

写状态机,每次写出512bit数据:

状态0:当写入FIFO计数器小于512则进入状态1

状态1:当连续写入FIFO512个数据后,再次进入状态0等待 读状态机的设计,每次读出128bt数据。

读状态机设计,每次读出128bit数据:

状态0:当读FIFO计数器大于128则进入状态1

状态1:连续读出FIFO128个数据后,再次进入状态0等待(如果有问题,可以私信作者,分享代码给你)

2.标志信号控制FIFO的读写

(1)当FIFO非满的时候写。

(2)当FIFO非空的时候读。

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

    关注

    39

    文章

    7753

    浏览量

    172157
  • 接口
    +关注

    关注

    33

    文章

    9588

    浏览量

    157592
  • fifo
    +关注

    关注

    3

    文章

    407

    浏览量

    45893

原文标题:一文带你详解FIFO:种类、IP配置、应用

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    存储器的常见种类

    存储器是计算机结构的重要组成部分。存储器是用来存储程序代码和数据的部件,有了存储器计算机才具有记忆功能。基本的存储器
    发表于 10-18 16:31 9629次阅读
    <b class='flag-5'>存储器</b>的常见<b class='flag-5'>种类</b>

    FIFO IP核的使用教程

    在数字设计中,利用FIFO进行数据处理是非常普遍的应用,例如,实现时钟域交叉、低延时存储器缓存、总线位宽调整等。下图给出了FIFO生成器支持的一种可能配置
    的头像 发表于 01-03 09:36 4480次阅读
    <b class='flag-5'>FIFO</b> <b class='flag-5'>IP</b>核的使用教程

    常用存储器种类有哪些

    常用存储器存储器种类RAM存储器非易失性存储器存储器种类
    发表于 12-10 07:09

    存储器有哪些种类

    -----ROM Read Only Memory,顾名思义,它是一种只能读出事先所存的数据的固态半导体存储器。ROM中所存数据稳定,一旦存储数据就再也无法将之改变或者删除,断电后所存数据也不会消失
    发表于 12-10 06:34

    FIFO存储器的相关资料分享

    FIFO存储器是系统的缓冲环节,如果没有FIFO存储器,整个系统就不可能正常工作,它主要有几方面的功能:1)对连续的数据流进行缓存,防止在进机和存储
    发表于 01-18 10:03

    通用存储器VHDL代码库

    包括各种类存储器的VHDL描述,如FIFO,双口RAM等
    发表于 05-20 11:32 48次下载

    通用存储器 包括各种类存储器的VHDL描述,如FIFO,双

    通用存储器 包括各种类存储器的VHDL描述,如FIFO,双口RAM等VHDL代码库 --  The Free IP Proje
    发表于 06-14 09:35 74次下载

    存储器种类及各种性能参数

    存储器(Memory)是现代信息技术中用于保存信息的记忆设备。其概念很广,有很多层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫
    发表于 11-15 16:25 5.5w次阅读
    <b class='flag-5'>存储器</b>的<b class='flag-5'>种类</b>及各种性能参数

    fifo存储器芯片型号有哪些

    本文主要介绍了fifo存储器芯片型号有哪些?FIFO存储器是系统的缓冲环节,如果没有FIFO存储器
    的头像 发表于 04-08 16:11 2.7w次阅读
    <b class='flag-5'>fifo</b><b class='flag-5'>存储器</b>芯片型号有哪些

    基于Verilog HDL语言与双体存储器的交替读写机制实现32X8 FIFO设计

    本32X8 FIFO的设计,采用了双体存储器的交替读写机制,使得在对其中一个存储器写操作的同时可以对另一个存储器进行读操作;对其中一个存储器
    的头像 发表于 12-30 10:29 4527次阅读
    基于Verilog HDL语言与双体<b class='flag-5'>存储器</b>的交替读写机制实现32X8 <b class='flag-5'>FIFO</b>设计

    如何创建UltraScale存储器接口设计

    了解如何使用Vivado存储器接口生成器(MIG)创建UltraScale存储器接口设计。 本视频将向您展示如何为UltraScale器件配置MIG IP内核,包括MIG
    的头像 发表于 11-22 07:13 3455次阅读

    TMS320C67系列DSP的EMIF与异步FIFO存储器的接口设计详细资料介绍

    介绍了TI公司TMS320C67系列DSP的EMIF(外部存储器接口)与异步FIFO(先进先出)存储器的硬件接口设计,着重描述了用EDMA(扩展的直接存储器访问)方式读取
    发表于 07-31 16:40 21次下载
    TMS320C67系列DSP的EMIF与异步<b class='flag-5'>FIFO</b><b class='flag-5'>存储器</b>的接口设计详细资料介绍

    FIFO存储器的尺寸图免费下载

    本文档的主要内容详细介绍的是FIFO存储器的尺寸图免费下载。
    发表于 08-15 08:00 2次下载
    <b class='flag-5'>FIFO</b><b class='flag-5'>存储器</b>的尺寸图免费下载

    如何配置存储器保护单元(MPU)

    存储器保护单元(Memory Protection Unit,MPU)是 Cortex®-M7 内核提供的一个可选组件,用于保护存储器。它根据权限和访问规则将存储器映射分为许多区域。本文档旨在让用户熟悉 MPU
    发表于 04-01 10:43 13次下载
    如何<b class='flag-5'>配置</b><b class='flag-5'>存储器</b>保护单元(MPU)

    如何在Vivado中配置FIFO IP

    Vivado IP核提供了强大的FIFO生成器,可以通过图形化配置快速生成FIFO IP核。
    的头像 发表于 08-07 15:36 7707次阅读
    如何在Vivado中<b class='flag-5'>配置</b><b class='flag-5'>FIFO</b> <b class='flag-5'>IP</b>核