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

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

3天内不再提示

XILINX FPGA IP之FIFO Generator

CHANBAEK 来源: FPGA自学笔记分享 作者: FPGA自学笔记分享 2023-09-07 18:31 次阅读

在数字设计中,fifo是数据操作任务所需的普遍结构,如跨时钟域、低延迟内存缓冲和总线宽度转换。

图片

XILINX FIFO Generator IP生成先进先出(FIFO)存储器队列,特别适于需要按次序进行数据存储和检索的应用。该IP为 FIFO 配置提供优化的解决方案,使用少量资源实现最高的性能(高达 500MHz)。用户可自定义:宽度、深度、状态标志、存储器类型以及读写端口长宽比等。

该IP的主要特性为:

  • FIFO 深度可达 4,194,304 个字
  • 原生 FIFO 配置支持从 1 到 1,024 位的 FIFO 数据宽度,而 AXI FIFO 配置的该数据宽度则高达 4,096 位
  • 非对称长宽比(读写端口比可从 1:8 到 8:1)
  • 支持独立或通用时钟域
  • 可选存储器类型(Block RAM、分布式 RAM、移位寄存器或内建 FIFO)
  • 原生接口或 AXI 接口(AXI4、AXI4-Lite 或 AXI4-Stream)
  • 同步或异步复位选项
  • 支持数据包模式
  • 支持纠错 (ECC) 和注入特性,适用于特定配置
  • 支持首字直接通过 (FWFT)
  • 支持嵌入式寄存器选项,适用于基于 Block RAM 和内建 FIFO 原语的实现方案
  • 支持 — 空/满、基本空/满和可编程空/满信号

原始接口下该IP的接口为:

图片

AXI 接口派生自本来接口fifo,因此它们之间的许多行为是共同的。ready信号是基于FIFO中空间的可用性生成的,并且 保持高位以允许对FIFO进行写操作。只有在FIFO中没有剩余空间来执行额外的写操作时,ready信号才会被拉低。根据FIFO中数据的可用性生成vaild信号,并保持高电平以允许从 FIFO执行读取。只有当没有数据可从 FIFO读取时,vaild信号才被拉低。AXI接口如下图:

图片

将information信号映射到Native 接口fifo的din和dout总线上。AXI FIFO的宽度是通过连接AXI接口的所有information信号来确定的。information信号包括所有的AXI 信号,除了有效的和准备好的握手信号。

XILINX FIFO Generator IP支持Block RAM、分布式 RAM、移位寄存器或内建 FIFO,每种ram够成特性如下:

图片

在ip的gui界面上同样有上述信息的详细描述如下图,在实际使用时根据需要使用的特性,选择一种合适的底层资源即可。

图片

FPGA使用FIFO最常用的就是跨时钟域处理,处理流程如下图。写时钟域,根据限写使能wr_en产生写数据计数器然后将其转换为gray码,多bit跨时钟域到读侧。读时钟域,根据限读使能rd_en产生读数据计数器然后将其转换为gray码,多bit跨时钟域到读侧。读侧根据自己时钟域产生的读计数器和跨时钟域过来的写计数器值,得到fifo内的数据量,从而产生相应的empty/almost empty/prog empty/rd_data_count.写侧根据自己时钟域产生的写计数器和跨时钟域过来的读计数器值,得到fifo内的数据量,从而产生相应的full/almost full/prog full/wr_data_count.

图片

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

    关注

    1625

    文章

    21663

    浏览量

    601666
  • Xilinx
    +关注

    关注

    71

    文章

    2163

    浏览量

    120971
  • fifo
    +关注

    关注

    3

    文章

    387

    浏览量

    43532
  • 总线
    +关注

    关注

    10

    文章

    2864

    浏览量

    87973
  • 数字设计
    +关注

    关注

    0

    文章

    46

    浏览量

    22286
收藏 人收藏

    评论

    相关推荐

    XILINX FPGA IPClocking Wizard详解

    锁相环基本上是每一个fpga工程必不可少的模块,之前文档xilinx 7 系列FPGA时钟资源对xilinx fpga的底层时钟资源做过说明
    发表于 06-12 17:42 5213次阅读
    <b class='flag-5'>XILINX</b> <b class='flag-5'>FPGA</b> <b class='flag-5'>IP</b><b class='flag-5'>之</b>Clocking Wizard详解

    XILINX FPGA IPMMCM PLL DRP时钟动态重配详解

    上文XILINX FPGA IPClocking Wizard详解说到时钟IP的支持动态重配的,本节介绍通过DRP进行MMCM PLL的重
    发表于 06-12 18:24 1.1w次阅读
    <b class='flag-5'>XILINX</b> <b class='flag-5'>FPGA</b> <b class='flag-5'>IP</b><b class='flag-5'>之</b>MMCM PLL DRP时钟动态重配详解

    Xilinx FPGA IPBlock Memory Generator功能概述

    Xilinx Block Memory Generator(BMG)是一个先进的内存构造器,它使用Xilinx fpga中的嵌入式块RAM资源生成面积和 性能优化的内存。
    的头像 发表于 11-14 17:49 2535次阅读
    <b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b> <b class='flag-5'>IP</b><b class='flag-5'>之</b>Block Memory <b class='flag-5'>Generator</b>功能概述

    XILINX FPGA IPAXI Traffic Generator

    AXI Traffic Generator IP 用于在AXI4和AXI4-Stream互连以及其他AXI4系统外设上生成特定序列(流量)。它根据IP的编程和选择的操作模式生成各种类型的AXI事务。是一个比较好用的AXI4协议测
    的头像 发表于 11-23 16:03 2338次阅读
    <b class='flag-5'>XILINX</b> <b class='flag-5'>FPGA</b> <b class='flag-5'>IP</b><b class='flag-5'>之</b>AXI Traffic <b class='flag-5'>Generator</b>

    Xilinx FIFO IP 使用

    最近收集了一些 xilinx FIFO IP的资料整理了一下拿出来大家分享分享。
    发表于 05-11 08:36

    Xilinx FPGA无痛入门,海量教程免费下载

    显示乘法器IP解析Lesson36 特权Xilinx FPGA SF-SP6入门指南 -- 超声波测距终极结果显示除法器
    发表于 07-22 11:49

    Xilinx FPGA入门连载52:FPGA片内FIFO实例FIFO配置

    Xilinx FPGA入门连载52:FPGA片内FIFO实例FIFO配置特权同学,版权所有配套
    发表于 02-29 13:35

    Xilinx FPGA入门连载52:FPGA片内FIFO实例FIFO配置

    Xilinx FPGA入门连载52:FPGA片内FIFO实例FIFO配置特权同学,版权所有配套
    发表于 02-29 13:35

    Xilinx FPGA入门连载56:FPGA片内异步FIFO实例FIFO配置

    `Xilinx FPGA入门连载56:FPGA片内异步FIFO实例FIFO配置特权同学,版权所
    发表于 03-09 10:49

    【正点原子FPGA连载】第十三章IPFIFO实验-领航者ZYNQFPGA开发指南

    原子公众号,获取最新资料第十三章IPFIFO实验FIFO的英文全称是First In First Out,即先进先出。FPGA使用的
    发表于 09-23 17:27

    FPGA零基础学习:IP CORE FIFO设计

    CORE FIFO设计 本篇实现基于叁芯智能科技的SANXIN -B01 FPGA开发板,以下为配套的教程,如有入手开发板,可以登录官方淘宝店购买,还有配套的学习视频。 SANXIN-B01
    发表于 03-15 16:19

    IP CORE FIFO 设计- ISE 操作工具

    不多说,上货。IP CORE FIFO 设计- ISE 操作工具本篇实现基于叁芯智能科技的SANXIN -B02 FPGA开发板,如有入手开发板,可以登录官方淘宝店购买,还有配套的
    发表于 04-11 20:50

    利用XILINX提供的FIFO IP进行读写测试

    FIFOFPGA应用当中非常重要的模块,广泛用于数据的缓存,跨时钟域数据处理等。学好FIFOFPGA的关键,灵活运用好FIFO是一个
    的头像 发表于 02-08 17:08 3031次阅读
    利用<b class='flag-5'>XILINX</b>提供的<b class='flag-5'>FIFO</b> <b class='flag-5'>IP</b>进行读写测试

    XILINX FPGA IPFIFO Generator例化仿真

    上文XILINX FPGA IPFIFOXILINX F
    的头像 发表于 09-07 18:31 1784次阅读
    <b class='flag-5'>XILINX</b> <b class='flag-5'>FPGA</b> <b class='flag-5'>IP</b><b class='flag-5'>之</b><b class='flag-5'>FIFO</b> <b class='flag-5'>Generator</b>例化仿真

    FIFO GeneratorXilinx官方手册

    FIFO作为FPGA岗位求职过程中最常被问到的基础知识点,也是项目中最常被使用到的IP,其意义是非常重要的。本文基于对FIFO Generator
    的头像 发表于 11-12 10:46 133次阅读
    <b class='flag-5'>FIFO</b> <b class='flag-5'>Generator</b>的<b class='flag-5'>Xilinx</b>官方手册