一种先入先出存储器及快速产生存储标志的方法

文档序号:7712458阅读:906来源:国知局
专利名称:一种先入先出存储器及快速产生存储标志的方法
技术领域
本发明涉及通信领域,尤其涉及通信领域中先入先出存储器(FIFO)的设计及使用该存储器快速产生存储标志的方法。
背景技术
在ATM网络中传输数据的基本单位为ATM信元,ATM信元为一种固定长度的数据帧。在ATM设备中,存储ATM信元的FIFO一般都是采用信元级FIFO。信元级FIFO一般都是把FIFO内部的存储器在逻辑上划分为多个相同大小的存储块,一个存储块可以存放一个ATM信元,信元级FIFO输出的空标志和满标志都是信元级的。
现有技术方案中信元级FIFO空标志和满标志的产生一般都是通过在FIFO中设计一个信元计数器实现的,信元计数器的计数值标志该FIFO中存储了多少个信元。当信元计数器的值等于最小值时,FIFO输出的空标志有效;当信元计数器的值等于最大值时,FIFO输出的满标志有效。信元计数器根据外部对该FIFO的读使能信号和写使能信号进行相应的计算。
由于读FIFO和写FIFO的速率往往是不同的,假设读的速率比写的速率高,那么只能在写操作完成以后才对信元计数器进行计数,否则信元还未完全写入FIFO,读出端已经开始读信元了,由于读的速率比写的速率高,很可能造成信元读出错误,所以FIFO的满信号只能在写使能信号结束后才能更新,这需要几个时钟周期,FIFO的写入端必须在等待满标志更新后再判断是否可以写下一个信元;同理,假设写的速率比读的速率高,FIFO的读出端必须在读使能信号结束后再等待一定的时钟周期以后再判断是否可以读下一个信元。
现有技术的缺点在于信元级FIFO输出的空标志或满标志比较慢,在进行下一次访问时需要等待相关标志更新后再判断是否可以进行下一次访问,这样造成访问FIFO的效率降低,在对带宽要求比较严格的场合不大适用。

发明内容
本发明的目的就是提供一套设计方案,解决现有设计方案中信元级FIFO产生的空标志和满标志时延较大的问题,可以快速的产生空标志和满标志,提高了FIFO的访问效率。
一种先入先出存储器(FIFO),设置有写地址指针模块和读地址指针模块及第一计数器,所述的第一计数器根据写地址指针模块的存储器写结束信号和读地址指针模块的存储器读开始信号作为触发信号,用以作为存储器内部存取单位存储状况的标识,其中所述的存储器还设置有第二计数器,以存储器写开始信号和存储器读结束信号为触发信号进行计数,用以作为存储器内部空闲存储单位状况的标识。
所述的第一计数器及第二计数器所计的数值与存储器的空标志及满标志满足下述关系第一计数器等于计数的最小值时,存储器空标志输出有效,第二计数器等于计数的最小值时,存储器满标志输出有效。
所述的第一及第二计数器的计数规则如下当读存取单位开始和写存取单位结束时,第一计数器进行相应的计数;当写存取单位开始和读存取单位结束时,第二计数器进行相应的计数。
所述的存取单位是ATM信元。
所述的存取单位是数据帧。
一种先入先出存储器快速产生存储标志的方法,利用写地址指针模块的存储器写结束信号和读地址指针模块的存储器读开始信号作为第一计数器的触发信号,以标识存储器内部存取单位存储状况,其特征在于,还利用了一个第二计数器,以存储器写开始信号和存储器读结束信号为触发信号进行计数,以标识存储器内部空闲存储单位状况。
所述的先入先出存储器快速产生存储标志的方法,当第一计数器等于计数的最小值时,存储器空标志输出有效,当第二计数器等于计数的最小值时,存储器满标志输出有效。
所述的第一及第二计数器的计数规则如下当读存取单位开始和写存取单位结束时,第一计数器进行相应的计数;当写存取单位开始和读存取单位结束时,第二计数器进行相应的计数。
本发明提供的设计方案可以为信元级FIFO快速的产生空标志和满标志,减少了两次访问FIFO之间的时间间隔,提高了FIFO的访问效率。


图1是本发明FIFO的结构示意图。
具体实施例方式
本发明的技术方案,主要是在传统的FIFO设置的一个计数器的基础上,增设另外的一个计数器,以协同工作,减少系统读取数据及写入数据时,所需等待的时间。
下面以信元级FIFO的设计为例,说明本发明的具体实施方式

现有技术中的FIFO内部设计有一个计数器,利用该计数器对FIFO的存储状况进行标识,如图1所示,是本发明FIFO的结构示意图,从图中可以看出,本发明的存储器包括有一个双端口RAM,一个写地址指针模块,一个读地址指针模块,和一个信元计数器,这与现有技术中的FIFO类似,本发明在此基础上增加了一个空闲计数器,其以存储器写开始信号和存储器读结束信号为触发信号进行计数,用以作为存储器内部空闲存储单位状况的标识。本发明中信元计数器,表明FIFO内部存储有多少个信元,空闲计数器,表明FIFO内部允许写入多少个信元。两个计数器结合工作,可以方便地显示存储器的存储情况。
在初始状态或复位时,信元计数器等于计数的最小值,空闲计数器等于计数的最大值。当信元计数器等于计数的最小值时,空标志输出有效,当空闲计数器等于计数的最小值时,满标志输出有效。
信元计数器用来产生空标志指示可否继续读出,空闲计数器用来产生满标志指示可否继续写入,两个计数器的和等于存储器可存储信元的深度。这两个计数器的计数规则如下当读信元开始和写信元结束时,信元计数器进行相应的计数;当写信元开始和读信元结束时,空闲计数器进行相应的计数。这样,当读信元开始时,信元计数器就进行了计数,当该次读信元完成前FIFO的空标志就已经完成更新,FIFO的读出端能够马上判断是否可以读下一个信元;同样,当写信元开始时空闲计数器就进行了计数,当该次写信元完成前FIFO的满标志就已经完成更新,FIFO的写入端能够马上判断是否可以写下一个信元。
本发明介绍的方法不但可以用于存储单位为ATM信元的信元级FIFO的设计中,也可以用于存储单位为数据帧的FIFO设计中。
本发明提供的设计方案可以为信元级FIFO快速地产生空标志和满标志,减少了两次访问FIFO之间的时间间隔,提高了FIFO的访问效率。
本发明的技术关键点在于信元级FIFO内部设计两个计数器,一个是信元计数器,另外一个是空闲计数器,FIFO的空标志和满标志是分别根据这两个计数器的值产生的,这样可以在开始访问FIFO时就更新相应的计数器的值,而不必等待访问完成后才更新相应的计数器的值,所以FIFO的空标志和满标志可以提前产生而不会造成FIFO访问出错。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
权利要求
1.一种先入先出存储器(FIFO),设置有写地址指针模块和读地址指针模块及第一计数器,所述的第一计数器根据写地址指针模块的存储器写结束信号和读地址指针模块的存储器读开始信号作为触发信号,用以作为存储器内部存取单位存储状况的标识,其特征在于,所述的存储器还设置有第二计数器,以存储器写开始信号和存储器读结束信号为触发信号进行计数,用以作为存储器内部空闲存储单位状况的标识。
2.如权利要求1所述的先入先出存储器,其特征在于,所述的第一计数器及第二计数器所计的数值与存储器的空标志及满标志满足下述关系第一计数器等于计数的最小值时,存储器空标志输出有效,第二计数器等于计数的最小值时,存储器满标志输出有效。
3.如权利要求2所述的先入先出存储器,其特征在于所述的第一及第二计数器的计数规则如下当读存取单位开始和写存取单位结束时,第一计数器进行相应的计数;当写存取单位开始和读存取单位结束时,第二计数器进行相应的计数。
4.如权利要求1所述的先入先出存储器,其特征在于所述的存取单位是ATM信元。
5.如权利要求1所述的先入先出存储器,其特征在于所述的存取单位是数据帧。
6.一种先入先出存储器快速产生存储标志的方法,利用写地址指针模块的存储器写结束信号和读地址指针模块的存储器读开始信号作为第一计数器的触发信号,以标识存储器内部存取单位存储状况,其特征在于,还利用了一个第二计数器,以存储器写开始信号和存储器读结束信号为触发信号进行计数,以标识存储器内部空闲存储单位状况。
7.如权利要求6所述的先入先出存储器快速产生存储标志的方法,其特征在于当第一计数器等于计数的最小值时,存储器空标志输出有效,当第二计数器等于计数的最小值时,存储器满标志输出有效。
8.如权利要求7所述的先入先出存储器快速产生存储标志的方法,其特征在于所述的第一及第二计数器的计数规则如下当读存取单位开始和写存取单位结束时,第一计数器进行相应的计数;当写存取单位开始和读存取单位结束时,第二计数器进行相应的计数。
全文摘要
本发明涉及通信领域中存储器的设计及使用该存储器快速产生存储标志的方法。一种先入先出存储器(FIFO),设置有第一计数器,对存储器内存储的信元进行计数,用以作为存储器内部信元存储状况的标识,其特征在于,所述的存储器还设置有第二计数器,用以作为存储器内部空闲存储单元状况的标识,先入先出存储器根据两个计数器的计数值,为信元级FIFO提供了一种快速的空标志或满标志产生机制,其特点是开始访问FIFO时就更新相应的计数器的值,而不必等待访问完成后才更新相应的计数器的值,所以FIFO的空标志和满标志可以提前产生,无需等待信元操作结束,从而减少了两次访问FIFO之间的时间间隔,提高了FIFO的访问效率。
文档编号H04L12/24GK1567880SQ0314822
公开日2005年1月19日 申请日期2003年7月2日 优先权日2003年7月2日
发明者雷春, 李腾跃, 谢建湘, 周伟宁, 涂君 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1