CN101833431A - 基于fpga实现的双向高速fifo存储器 - Google Patents
基于fpga实现的双向高速fifo存储器 Download PDFInfo
- Publication number
- CN101833431A CN101833431A CN200910079799A CN200910079799A CN101833431A CN 101833431 A CN101833431 A CN 101833431A CN 200910079799 A CN200910079799 A CN 200910079799A CN 200910079799 A CN200910079799 A CN 200910079799A CN 101833431 A CN101833431 A CN 101833431A
- Authority
- CN
- China
- Prior art keywords
- bus
- reading
- asynchronous
- writing
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Communication Control (AREA)
Abstract
本发明属于存储器技术领域,公开了一种基于FPGA实现的双向高速FIFO存储器,包括第一异步总线接口模块、第一通讯信箱、第一单向异步FIFO读写模块、第二异步总线接口模块、第二通讯信箱和第二单向异步FIFO读写模块。该双向高速FIFO存储器的功能与德州仪器生产的SN74ABT3614相似,能够实现可编程的输出线宽,同步或异步的输入输出时钟,双向信箱通信功能。本发明优点是利用FPGA实现双向FIFO模块稳定速度快易于实现且占用资源少,在Xilinx Spartan3系列FPGA中可编程逻辑模块占用率不到7%,同时易于与其他逻辑功能集成,从而可以有效提高***集成度减小***尺寸降低功耗。
Description
技术领域
本发明涉及FIFO存储器技术领域,尤其涉及一种基于现场可编程门阵列(FPGA)实现的双向高速先入先出(FIFO)存储器。
背景技术
FIFO在现代数字***中有举足轻重的地位。它为不同时钟域之间的大量数据传输提供了可靠保证,从时钟同步性,它分为同步FIFO和异步FIFO;从传输数据的方向性,它分为单向FIFO和双向FIFO。
目前,双向FIFO都采用定制芯片完成。不但速度慢,价格相对高,而且造成***集成度不高,无法有效降低***尺寸和功耗。FPGA是由可配置逻辑块组成的数字集成电路,设计工程师能够对其进行重复配置,实现不同的功能。它的速度快、应用灵活、成本低的特点已经引起了广泛关注,但目前还没有利用FPGA来实现的双向FIFO装置。
发明内容
(一)要解决的技术问题
有鉴于此,本发明的主要目的在于提供一种基于FPGA实现的双向高速FIFO存储器,以采用FPGA实现双向高速FIFO存储器,解决目前双向FIFO接口都采用分立元件实现,集成度不高且速度慢的问题。
(二)技术方案
为达到上述目的,本发明提供了一种基于FPGA实现的双向高速FIFO存储器,包括:
第一单向异步FIFO读写模块1,用于寄存第一总线A向第二总线B写入的数据;
第二单向异步FIFO读写模块2,用于寄存第二总线B向第一总线A写入的数据;
第一异步总线接口模块3,用于检测第一总线A存在的向第二总线B发送的数据传输请求,将第一总线A读写时序转换成内部读写时序,并选择第一通讯信箱5或第一单向异步FIFO读写模块1的读写功能;
第二异步总线接口模块4,用于检测第二总线B存在的向第一总线A发送的数据传输请求,将第二总线B读写时序转换成内部读写时序,并选择第二通讯信箱6或第二单向异步FIFO读写模块2的读写功能;
第一通讯信箱5,用于寄存第一总线A向第二总线B传输的信箱数据;
第二通讯信箱6,用于寄存第二总线B向第一总线A传输的信箱数据。
上述方案中,该存储器采用FPGA内部的单向异步FIFO读写模块完成双向FIFO读写操作,具体构成该存储器的各组成部分之间的连接关系为:
第一单向异步FIFO读写模块1,其写时钟域端口连接于第一异步总线接口模块3,读时钟域端口连接于第二异步总线接口模块4;
第二单向异步FIFO读写模块2,其写时钟域端口连接于第二异步总线接口模块4,读时钟域端口连接于第一异步总线接口模块3;
第一异步总线接口模块3,其一端连接外部的第一总线A,另一端连接于第一单向异步FIFO读写模块1的写时钟域端口、第一通讯信箱5的写入端、第二单向异步FIFO读写模块2的读时钟域端口和第二通讯信箱6的读出端;
第二异步总线接口模块4,其一端连接第一单向异步FIFO读写模块1的读时钟域端口、第一通讯信箱5的读出端、第二单向异步FIFO读写模块2的写时钟域端口和第二通讯信箱6的写入端,另一端连接外部的第二总线B;
第一通讯信箱5和第二通讯信箱6,一端连接第一异步总线接口模块3,另一端连接第二异步总线接口模块4。
上述方案中,所述第一单向异步FIFO读写模块1和所述第二单向异步FIFO读写模块2为带双独立时钟的FIFO,且读写时钟域同步。
上述方案中,所述第一异步总线接口模块3和所述第二异步总线接口模块4在向第一单向异步FIFO′读写模块1或第二单向异步FIFO读写模块2写入数据之前,判断第一单向异步FIFO读写模块1或第二单向异步FIFO读写模块2内数据是否超过门限值;在从第一单向异步FIFO读写模块1或第二单向异步FIFO读写模块2读出数据之前,判断第一单向异步FIFO读写模块1或第二单向异步FIFO读写模块2是否为空或几乎为空。
上述方案中,所述第一异步总线接口模块3和所述第二异步总线接口模块4控制选择通讯信箱或单向异步FIFO读写模块进行读写,具体操作方式为:
从第一总线A向第二总线B传输数据:
第一异步总线接口模块3接收第一总线A的写请求信号,当CSA有效、WRA有效且MBA无效时,第一异步总线接口模块3控制外部总线数据写入第一单向异步FIFO读写模块1;当CSA有效、MBA有效且WRA有效时,第一异步总线接口模块3控制外部数据写入第一通讯信箱5;
第二异步总线接口模块4接收第二总线B的读请求信号,当CSB有效、RDB有效且MBB无效时,第二异步总线接口模块4建立第一单向异步FIFO读写模块1的读时序,控制数据从第一单向异步FIFO读写模块1读出至外部总线;当CSB有效、MBB有效且RDB有效时,第二异步总线接口模块4建立第一通讯信箱5的读时序,控制数据从第一通讯信箱5读出至外部总线;
从第二总线B向第一总线A传输数据:
第二异步总线接口模块4接收第二总线B的写请求信号,当CSB有效、WRB有效且MBB无效时,第二异步总线接口模块4控制外部总线数据写入第二单向异步FIFO读写模块2;当CSB有效、MBB有效且WRB有效时,第二异步总线接口模块4控制外部数据写入第二通讯信箱6;
第一异步总线接口模块3接收第一总线A的读请求信号,当CSA有效、RDA有效且MBA无效时,第一异步总线接口模块3建立第二单向异步FIFO读写模块2的读时序,控制数据从第二单向异步FIFO读写模块2读出至外部总线;当CSA有效、MBA有效且RDA有效时,第一异步总线接口模块3建立第二通讯信箱6的读时序,控制数据从第二通讯信箱6读出至外部总线。
上述方案中,该存储器利用FPGA内部资源完成双向通讯信箱的功能,能够实现特殊数据不经过排队直接输出,即MBA信号无效时,数据由写时钟控制写入单向异步FIFO读写模块,再通过读时钟控制依次读出;MBA信号有效时,数据由写时钟控制写入单向异步FIFO读写模块,再通过读时钟直接读出;通讯信箱提供“满”“溢”标志。
上述方案中,在数据从第一总线A向第二总线B传输时,所述第一通讯信箱5或所述第二通讯信箱6由锁存器A、锁存器B、D触发器M、D触发器N构成;MBA、CSA和第一总线A写信号有效时,数据通过外部数据线进入锁存器A内,且D触发器M的Q端置1;MBFA有效MBEA无效表示AB方向的第一通讯信箱5满,第一总线A不能向第一通讯信箱5继续传送数据;第二总线B选中信箱且读信号有效时,数据从锁存器A读出到外部数据线,D触发器M的Q端置0,MBFA无效MBEA有效表示AB方向的第一通讯信箱5空,第一总线A能向第一通讯信箱5写入数据。
上述方案中,在数据从第二总线B向第一总线A传输时,MBB、CSB和第二总线B写信号有效,数据通过外部数据线进入锁存器B内,且D触发器N的Q端置1;MBFB有效MBEB无效表示BA方向的第二通讯信箱(6)满,第二总线B不能向第二通讯信箱(6)继续传送数据;第一总线A读信号有效时,数据从锁存器B读出到外部数据线,D触发器N的Q端置0,MBFB无效MBEB有效表示BA方向的第二通讯信箱(6)空,第二总线B能向第二通讯信箱(6)写入数据。
(三)有益效果
从上述技术方案可以看出,本发明具有以下优点:
1、本发明利用FPGA内部的IP核实现双向高速FIFO存储器,稳定、速度快。由于存储器的FPGA资源占用率很小,同时还可以实现其它逻辑功能,从而可以有效提高***集成度,减小***尺寸,降低功耗。另外,输入输出可编程带宽和通讯信箱通讯功能扩展了数据传输方式,为***更有效工作提供保证。
2、本发明利用FPGA实现双向FIFO存储器稳定速度快易于实现且占用资源少,在Xilinx Spartan3系列FPGA中可编程逻辑模块占用率不到7%,同时易于与其他逻辑功能集成,从而可以有效提高***集成度减小***尺寸降低功耗。
3、本发明提供的基于FPGA实现的双向高速FIFO存储器,功能与德州仪器生产的SN74ABT3614相似,可以实现可编程的输出线宽,同步或异步的输入输出时钟,双向信箱通信功能。
附图说明
图1是本发明提供的基于FPGA实现的双向高速FIFO存储器的结构示意图;
图2是本发明提供的基于FPGA实现的双向高速FIFO存储器的电路图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
本发明提供的基于FPGA实现的双向高速FIFO存储器,采用两个单向的FIFO单元,满足第一总线A和第二总线B可能同时读写的要求,并增设了通讯信箱,以解决特殊数据不经过排队直接输出的矛盾。所述FIFO(即第一单向异步FIFO读写模块1和第二单向异步FIFO读写模块2)和通讯信箱一端与第一异步总线接口模块3相连接,另外一端与第二异步总线接口模块4相连接。所述第一异步总线接口模块3和第二异步总线接口模块4控制数据向FIFO和通讯信箱进行读写。
如图1所示,图1是本发明提供的基于FPGA实现的双向高速FIFO存储器的结构示意图。该双向高速FIFO存储器包括第一异步总线接口模块3、第一通讯信箱5、第一单向异步FIFO读写模块1、第二异步总线接口模块4、第二通讯信箱6和第二单向异步FIFO读写模块2。其中第一异步总线接口模块3位于第一总线A的时钟域,第二异步总线接口模块4位于第二总线B的时钟域。
第一单向异步FIFO读写模块1,用于寄存第一总线A向第二总线B写入的数据。第二单向异步FIFO读写模块2,用于寄存第二总线B向第一总线A写入的数据。第一异步总线接口模块3,用于检测第一总线A存在的向第二总线B发送的数据传输请求,将第一总线A读写时序转换成内部读写时序,并选择第一通讯信箱5或第一单向异步FIFO读写模块1的读写功能。第二异步总线接口模块4,用于检测第二总线B存在的向第一总线A发送的数据传输请求,将第二总线B读写时序转换成内部读写时序,并选择第二通讯信箱6或第二单向异步FIFO读写模块2的读写功能。第一通讯信箱5,用于寄存第一总线A向第二总线B传输的信箱数据。第二通讯信箱6,用于寄存第二总线B向第一总线A传输的信箱数据。
该双向高速FIFO存储器采用FPGA内部的单向异步FIFO读写模块完成双向FIFO读写操作,具体构成该存储器的各组成部分之间的连接关系为:第一单向异步FIFO读写模块1,其写时钟域端口连接于第一异步总线接口模块3,读时钟域端口连接于第二异步总线接口模块4;第二单向异步FIFO读写模块2,其写时钟域端口连接于第二异步总线接口模块4,读时钟域端口连接于第一异步总线接口模块3;第一异步总线接口模块3,其一端连接外部的第一总线A,另一端连接于第一单向异步FIFO读写模块1的写时钟域端口、第一通讯信箱5的写入端、第二单向异步FIFO读写模块2的读时钟域端口和第二通讯信箱6的读出端;第二异步总线接口模块4,其一端连接第一单向异步FIFO读写模块1的读时钟域端口、第一通讯信箱5的读出端、第二单向异步FIFO读写模块2的写时钟域端口和第二通讯信箱6的写入端,另一端连接外部的第二总线B;第一通讯信箱5和第二通讯信箱6,一端连接第一异步总线接口模块3,另一端连接第二异步总线接口模块4。
第一单向异步FIFO读写模块1和第二单向异步FIFO读写模块2为带双独立时钟的FIFO,且读写时钟域同步。第一异步总线接口模块3和第二异步总线接口模块4在向第一单向异步FIFO读写模块1或第二单向异步FIFO读写模块2写入数据之前,判断第一单向异步FIFO读写模块1或第二单向异步FIFO读写模块2内数据是否超过门限值;在从第一单向异步FIFO读写模块1或第二单向异步FIFO读写模块2读出数据之前,判断第一单向异步FIFO读写模块1或第二单向异步FIFO读写模块2是否为空或几乎为空。
第一异步总线接口模块3和第二异步总线接口模块4控制选择通讯信箱或单向异步FIFO读写模块进行读写,具体操作方式为:
1)、从第一总线A向第二总线B传输数据:
第一异步总线接口模块3接收第一总线A的写请求信号,当CSA有效、WRA有效且MBA无效时,第一异步总线接口模块3控制外部总线数据写入第一单向异步FIFO读写模块1;当CSA有效、MBA有效且WRA有效时,第一异步总线接口模块3控制外部数据写入第一通讯信箱5;
第二异步总线接口模块4接收第二总线B的读请求信号,当CSB有效、RDB有效且MBB无效时,第二异步总线接口模块4建立第一单向异步FIFO读写模块1的读时序,控制数据从第一单向异步FIFO读写模块1读出至外部总线;当CSB有效、MBB有效且RDB有效时,第二异步总线接口模块4建立第一通讯信箱5的读时序,控制数据从第一通讯信箱5读出至外部总线;
2)、从第二总线B向第一总线A传输数据:
第二异步总线接口模块4接收第二总线B的写请求信号,当CSB有效、WRB有效且MBB无效时,第二异步总线接口模块4控制外部总线数据写入第二单向异步FIFO读写模块2;当CSB有效、MBB有效且WRB有效时,第二异步总线接口模块4控制外部数据写入第二通讯信箱6;
第一异步总线接口模块3接收第一总线A的读请求信号,当CSA有效、RDA有效且MBA无效时,第一异步总线接口模块3建立第二单向异步FIFO读写模块2的读时序,控制数据从第二单向异步FIFO读写模块2读出至外部总线;当CSA有效、MBA有效且RDA有效时,第一异步总线接口模块3建立第二通讯信箱6的读时序,控制数据从第二通讯信箱6读出至外部总线。
该双向高速FIFO存储器利用FPGA内部资源完成双向通讯信箱的功能,能够实现特殊数据不经过排队直接输出,即MBA信号无效时,数据由写时钟控制写入单向异步FIFO读写模块,再通过读时钟控制依次读出;MBA信号有效时,数据由写时钟控制写入单向异步FIFO读写模块,再通过读时钟直接读出;通讯信箱提供“满”“溢”标志。
在数据从第一总线A向第二总线B传输时,所述第一通讯信箱5或所述第二通讯信箱6由锁存器A、锁存器B、D触发器M、D触发器N构成;MBA和第一总线A写信号有效时,数据通过外部数据线进入锁存器A内,且D触发器M的Q端置1;MBFA有效MBEA无效表示AB方向的第一通讯信箱5满,第一总线A不能向第一通讯信箱5继续传送数据;第二总线B读信号有效时,数据从锁存器A读出到外部数据线,D触发器M的Q端置0,MBFA无效MBEA有效表示AB方向的第一通讯信箱5空,第一总线A能向第一通讯信箱5写入数据。
在数据从第二总线B向第一总线A传输时,MBB、CSB和第二总线B写信号有效,数据通过外部数据线进入锁存器B内,且D触发器N的Q端置1;MBFB有效MBEB无效表示BA方向的第二通讯信箱(6)满,第二总线B不能向第二通讯信箱(6)继续传送数据;第一总线A读信号有效时,数据从锁存器B读出到外部数据线,D触发器N的Q端置0,MBFB无效MBEB有效表示BA方向的第二通讯信箱(6)空,第二总线B能向第二通讯信箱(6)写入数据。
图2示出了本发明提供的基于FPGA实现的双向高速FIFO存储器的电路图。在A端(即第一总线A)向B端(第二总线B)传输非信箱数据时,首先判断第一单向异步FIFO读写模块1是否为满。IP核FIFO提供”满”标志信号。寄存器将其二级同步后传送给第一总线A。第一总线A判断其非满后建立写时序,将第一总线A上的数据写入第一单向异步FIFO读写模块1。第二总线B读取第一单向异步FIFO读写模块1中数据时,也首先判断第一单向异步FIFO读写模块1是否为空。如果不为空则建立读时序,将第一单向异步FIFO读写模块1中数据读出到第二总线B。
在A端向B端传输信箱数据时,首先判断第一通讯信箱信箱是否为满,当第一通讯信箱MBF为高时,表示此时不能进行通讯信箱的读写,当其为低时建立时序将总线数据写入第一通讯信箱。B端从第一通讯信箱读取数据时先判断第一通讯信箱MBE的状态,如果为高则等待,为低建立时序将信箱数据读出至第二总线B。
本发明中,FPGA采用Xilinx公司的SpartanIII3s400,它提供可配置网表形式的IP核,使用者可运行FIFO generator v3.1生成所需FIFO。含有读写时钟信号、读写使能信号、复位端、满/空标志位、几乎满/几乎空标志位。
第一总线A提供片选信号CSA,写数据信号WRA,读数据信号RDA,信箱有效信号MBA。第二总线B提供片选信号CSB,读数据信号RDB,写数据信号WRB和信箱有效信号MBB。具体控制方式如表1所示:
表1
本发明采用FPGA实现双向高速FIFO存储器,在选择的Xilinx中端产品中资源占用率不到10%。这对实现***高集成度,提高速度,降低功耗有很好影响。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于FPGA实现的双向高速FIFO存储器,其特征在于,包括:
第一单向异步FIFO读写模块(1),用于寄存第一总线A向第二总线B写入的数据;
第二单向异步FIFO读写模块(2),用于寄存第二总线B向第一总线A写入的数据;
第一异步总线接口模块(3),用于检测第一总线A存在的向第二总线B发送的数据传输请求,将第一总线A读写时序转换成内部读写时序,并选择第一通讯信箱(5)或第一单向异步FIFO读写模块(1)的读写功能;
第二异步总线接口模块(4),用于检测第二总线B存在的向第一总线A发送的数据传输请求,将第二总线B读写时序转换成内部读写时序,并选择第二通讯信箱(6)或第二单向异步FIFO读写模块(2)的读写功能;
第一通讯信箱(5),用于寄存第一总线A向第二总线B传输的信箱数据;
第二通讯信箱(6),用于寄存第二总线B向第一总线A传输的信箱数据。
2.根据权利要求1所述的基于FPGA实现的双向高速FIFO存储器,其特征在于:该存储器采用FPGA内部的单向异步FIFO读写模块完成双向FIFO读写操作,具体构成该存储器的各组成部分之间的连接关系为:
第一单向异步FIFO读写模块(1),其写时钟域端口连接于第一异步总线接口模块(3),读时钟域端口连接于第二异步总线接口模块(4);
第二单向异步FIFO读写模块(2),其写时钟域端口连接于第二异步总线接口模块(4),读时钟域端口连接于第一异步总线接口模块(3);
第一异步总线接口模块(3),其一端连接外部的第一总线A,另一端连接于第一单向异步FIFO读写模块(1)的写时钟域端口、第一通讯信箱(5)的写入端、第二单向异步FIFO读写模块(2)的读时钟域端口和第二通讯信箱(6)的读出端;
第二异步总线接口模块(4),其一端连接第一单向异步FIFO读写模块(1)的读时钟域端口、第一通讯信箱(5)的读出端、第二单向异步FIFO读写模块(2)的写时钟域端口和第二通讯信箱(6)的写入端,另一端连接外部的第二总线B;
第一通讯信箱(5)和第二通讯信箱(6),一端连接第一异步总线接口模块(3),另一端连接第二异步总线接口模块(4)。
3.根据权利要求1所述的基于FPGA实现的双向高速FIFO存储器,其特征在于:所述第一单向异步FIFO读写模块(1)和所述第二单向异步FIFO读写模块(2)为带双独立时钟的FIFO,且读写时钟域同步。
4.根据权利要求1所述的基于FPGA实现的双向高速FIFO存储器,其特征在于:所述第一异步总线接口模块(3)和所述第二异步总线接口模块(4)在向第一单向异步FIFO读写模块(1)或第二单向异步FIFO读写模块(2)写入数据之前,判断第一单向异步FIFO读写模块(1)或第二单向异步FIFO读写模块(2)内数据是否超过门限值;在从第一单向异步FIFO读写模块(1)或第二单向异步FIFO读写模块(2)读出数据之前,判断第一单向异步FIFO读写模块(1)或第二单向异步FIFO读写模块(2)是否为空或几乎为空。
5.根据权利要求1所述的基于FPGA实现的双向高速FIFO存储器,其特征在于:所述第一异步总线接口模块(3)和所述第二异步总线接口模块(4)控制选择通讯信箱或单向异步FIFO读写模块进行读写,具体操作方式为:
从第一总线A向第二总线B传输数据:
第一异步总线接口模块(3)接收第一总线A的写请求信号,当CSA有效、WRA有效且MBA无效时,第一异步总线接口模块(3)控制外部总线数据写入第一单向异步FIFO读写模块(1);当CSA有效、MBA有效且WRA有效时,第一异步总线接口模块(3)控制外部数据写入第一通讯信箱(5);
第二异步总线接口模块(4)接收第二总线B的读请求信号,当CSB有效、RDB有效且MBB无效时,第二异步总线接口模块(4)建立第一单向异步FIFO读写模块(1)的读时序,控制数据从第一单向异步FIFO读写模块(1)读出至外部总线;当CSB有效、MBB有效且RDB有效时,第二异步总线接口模块(4)建立第一通讯信箱(5)的读时序,控制数据从第一通讯信箱(5)读出至外部总线;
从第二总线B向第一总线A传输数据:
第二异步总线接口模块(4)接收第二总线B的写请求信号,当CSB有效、WRB有效且MBB无效时,第二异步总线接口模块(4)控制外部总线数据写入第二单向异步FIFO读写模块(2);当CSB有效、MBB有效且WRB有效时,第二异步总线接口模块(4)控制外部数据写入第二通讯信箱(6);
第一异步总线接口模块(3)接收第一总线A的读请求信号,当CSA有效、RDA有效且MBA无效时,第一异步总线接口模块(3)建立第二单向异步FIFO读写模块(2)的读时序,控制数据从第二单向异步FIFO读写模块(2)读出至外部总线;当CSA有效、MBA有效且RDA有效时,第一异步总线接口模块(3)建立第二通讯信箱(6)的读时序,控制数据从第二通讯信箱(6)读出至外部总线。
6.根据权利要求1所述的基于FPGA实现的双向高速FIFO存储器,其特征在于:该存储器利用FPGA内部资源完成双向通讯信箱的功能,能够实现特殊数据不经过排队直接输出,即MBA信号无效时,数据由写时钟控制写入单向异步FIFO读写模块,再通过读时钟控制依次读出;MBA信号有效时,数据由写时钟控制写入单向异步FIFO读写模块,再通过读时钟直接读出;通讯信箱提供“满”“溢”标志。
7.根据权利要求6所述的基于FPGA实现的双向高速FIFO存储器,其特征在于:在数据从第一总线A向第二总线B传输时,所述第一通讯信箱(5)或所述第二通讯信箱(6)由锁存器A、锁存器B、D触发器M、D触发器N构成;MBA、CSA和第一总线A写信号有效时,数据通过外部数据线进入锁存器A内,且D触发器M的Q端置1;MBFA有效MBEA无效表示AB方向的第一通讯信箱(5)满,第一总线A不能向第一通讯信箱(5)继续传送数据;第二总线B选中信箱并且读信号有效时,数据从锁存器A读出到外部数据线,D触发器M的Q端置0,MBFA无效MBEA有效表示AB方向的第一通讯信箱(5)空,第一总线A能向第一通讯信箱(5)写入数据。
8.根据权利要求6所述的基于FPGA实现的双向高速FIFO存储器,其特征在于:在数据从第二总线B向第一总线A传输时,MBB、CSB和第二总线B写信号有效,数据通过外部数据线进入锁存器B内,且D触发器N的Q端置1;MBFB有效MBEB无效表示BA方向的第二通讯信箱(6)满,第二总线B不能向第二通讯信箱(6)继续传送数据;第一总线A读信号有效时,数据从锁存器B读出到外部数据线,D触发器N的Q端置0,MBFB无效MBEB有效表示BA方向的第二通讯信箱(6)空,第二总线B能向第二通讯信箱(6)写入数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910079799A CN101833431B (zh) | 2009-03-11 | 2009-03-11 | 基于fpga实现的双向高速fifo存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910079799A CN101833431B (zh) | 2009-03-11 | 2009-03-11 | 基于fpga实现的双向高速fifo存储器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101833431A true CN101833431A (zh) | 2010-09-15 |
CN101833431B CN101833431B (zh) | 2012-09-05 |
Family
ID=42717511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910079799A Expired - Fee Related CN101833431B (zh) | 2009-03-11 | 2009-03-11 | 基于fpga实现的双向高速fifo存储器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101833431B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999467A (zh) * | 2012-12-24 | 2013-03-27 | 中国科学院半导体研究所 | 基于fpga实现的高速接口与低速接口转换电路及方法 |
CN105718395A (zh) * | 2016-01-28 | 2016-06-29 | 山东超越数控电子有限公司 | 一种基于fpga的多路串口通信***及方法 |
CN106502577A (zh) * | 2015-09-07 | 2017-03-15 | 龙芯中科技术有限公司 | 存储空间的写入加速方法、装置和*** |
CN109690684A (zh) * | 2016-09-14 | 2019-04-26 | 美光科技公司 | 用于柔性熔丝传输的设备与方法 |
CN111262655A (zh) * | 2020-01-15 | 2020-06-09 | 江苏方天电力技术有限公司 | 基于异步时钟的fpga万兆以太网数据高速发送方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7106098B1 (en) * | 2004-05-04 | 2006-09-12 | Xilinx, Inc. | Split FIFO configuration of block RAM |
CN100405343C (zh) * | 2006-06-21 | 2008-07-23 | 北京中星微电子有限公司 | 一种异步数据缓存装置 |
-
2009
- 2009-03-11 CN CN200910079799A patent/CN101833431B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7106098B1 (en) * | 2004-05-04 | 2006-09-12 | Xilinx, Inc. | Split FIFO configuration of block RAM |
CN100405343C (zh) * | 2006-06-21 | 2008-07-23 | 北京中星微电子有限公司 | 一种异步数据缓存装置 |
Non-Patent Citations (1)
Title |
---|
罗先哲等: "基于FPGA的高速异步FIFO存储器的设计与实现", 《中国科技信息》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999467A (zh) * | 2012-12-24 | 2013-03-27 | 中国科学院半导体研究所 | 基于fpga实现的高速接口与低速接口转换电路及方法 |
CN106502577A (zh) * | 2015-09-07 | 2017-03-15 | 龙芯中科技术有限公司 | 存储空间的写入加速方法、装置和*** |
CN105718395A (zh) * | 2016-01-28 | 2016-06-29 | 山东超越数控电子有限公司 | 一种基于fpga的多路串口通信***及方法 |
CN105718395B (zh) * | 2016-01-28 | 2018-08-21 | 山东超越数控电子有限公司 | 一种基于fpga的多路串口通信***及方法 |
CN109690684A (zh) * | 2016-09-14 | 2019-04-26 | 美光科技公司 | 用于柔性熔丝传输的设备与方法 |
CN109690684B (zh) * | 2016-09-14 | 2023-06-20 | 美光科技公司 | 用于柔性熔丝传输的设备与方法 |
CN111262655A (zh) * | 2020-01-15 | 2020-06-09 | 江苏方天电力技术有限公司 | 基于异步时钟的fpga万兆以太网数据高速发送方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101833431B (zh) | 2012-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111367495B (zh) | 一种异步先入先出的数据缓存控制器 | |
CN102981776B (zh) | 双倍数据率虚拟静态随机存取存储器及其控制器、存取与操作方法、写入与读取方法 | |
CN206557767U (zh) | 一种基于乒乓操作结构控制数据缓存的缓存*** | |
CN111832240B (zh) | Fifo数据传输方法及fifo存储装置 | |
CN101833431B (zh) | 基于fpga实现的双向高速fifo存储器 | |
CN112965689B (zh) | 一种基于源同步的分布式异步fifo数据交互方法及fifo结构 | |
CN110462599A (zh) | 用于循环缓冲器的自主硬件管理的设备和方法 | |
CN109446132A (zh) | 一种接口总线装置及数据通信协议 | |
CN104915303A (zh) | 基于PXIe总线的高速数字I/O*** | |
JP2004521426A (ja) | バスサイクル毎に選択可能な数のデータワードの読み出し及び/又は書き込みを行うことができるファーストイン・ファーストアウトバッファ | |
CN104991880B (zh) | 一种基于pci‑e接口的fc‑ae‑asm通讯板卡 | |
CN108683536A (zh) | 异步片上网络的可配置双模式融合通信机制及其接口 | |
CN107153412B (zh) | 一种具有发送fifo的can总线控制器电路 | |
CN1971543A (zh) | 一种突发机制下实现数据读写控制的方法和装置 | |
CN112948322B (zh) | 一种基于弹性缓存的虚通道及实现方法 | |
CN103412847B (zh) | 基于fpga的usb转多路链路接口电路 | |
WO2002027464A3 (en) | Asynchronous implementation of a multi-dimensional, low latency, first-in, first-out (fifo) buffer | |
CN109446126A (zh) | 基于emif总线的dsp与fpga高速通信***及方法 | |
CN110888831B (zh) | 一种多电源域异步通信装置 | |
CN110705195A (zh) | 一种基于fpga的跨时钟域深度自行配置fifo*** | |
CN113900975B (zh) | 一种同步fifo | |
CN201467129U (zh) | 一种中低速准同步复接装置 | |
CN112231261A (zh) | 一种用于axi总线的id号压缩装置 | |
US5732011A (en) | Digital system having high speed buffering | |
CN109579795A (zh) | 用于星载相机的大画幅遥感图像实时处理*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120905 Termination date: 20150311 |
|
EXPY | Termination of patent right or utility model |