CN100337443C - 一种先入先出存储器及快速产生存储标志的方法 - Google Patents
一种先入先出存储器及快速产生存储标志的方法 Download PDFInfo
- Publication number
- CN100337443C CN100337443C CNB031482252A CN03148225A CN100337443C CN 100337443 C CN100337443 C CN 100337443C CN B031482252 A CNB031482252 A CN B031482252A CN 03148225 A CN03148225 A CN 03148225A CN 100337443 C CN100337443 C CN 100337443C
- Authority
- CN
- China
- Prior art keywords
- memory
- counter
- fifo
- cell
- read
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本发明涉及通信领域中存储器的设计及使用该存储器快速产生存储标志的方法。一种先入先出存储器(FIFO),设置有第一计数器,对存储器内存储的信元进行计数,用以作为存储器内部信元存储状况的标识,其特征在于,所述的存储器还设置有第二计数器,用以作为存储器内部空闲存储单元状况的标识,先入先出存储器根据两个计数器的计数值,为信元级FIFO提供了一种快速的空标志或满标志产生机制,其特点是开始访问FIFO时就更新相应的计数器的值,而不必等待访问完成后才更新相应的计数器的值,所以FIFO的空标志和满标志可以提前产生,无需等待信元操作结束,从而减少了两次访问FIFO之间的时间间隔,提高了FIFO的访问效率。
Description
技术领域
本发明涉及通信领域,尤其涉及通信领域中先入先出存储器(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访问出错。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (6)
1、一种先入先出存储器,设置有写地址指针模块和读地址指针模块及第一计数器,所述的第一计数器根据写地址指针模块的存储器写结束信号和读地址指针模块的存储器读开始信号作为触发信号进行计数,用以作为存储器内部存取单位存储状况的标识,其特征在于,所述的存储器还设置有第二计数器,以存储器写开始信号和存储器读结束信号为触发信号进行计数,用以作为存储器内部空闲存储单位状况的标识。
2、如权利要求1所述的先入先出存储器,其特征在于,所述的第一计数器及第二计数器所计的数值与存储器的空标志及满标志满足下述关系:
第一计数器等于计数的最小值时,存储器空标志输出有效,第二计数器等于计数的最小值时,存储器满标志输出有效。
3、如权利要求1所述的先入先出存储器,其特征在于,所述的存取单位是ATM信元。
4、如权利要求1所述的先入先出存储器,其特征在于,所述的存取单位是数据帧。
5、一种先入先出存储器快速产生存储标志的方法,利用写地址指针模块的存储器写结束信号和读地址指针模块的存储器读开始信号作为第一计数器的触发信号进行计数,以标识存储器内部存取单位存储状况,其特征在于,还利用了一个第二计数器,以存储器写开始信号和存储器读结束信号为触发信号进行计数,以标识存储器内部空闲存储单位状况。
6、如权利要求5所述的先入先出存储器快速产生存储标志的方法,其特征在于,当第一计数器等于计数的最小值时,存储器空标志输出有效,当第二计数器等于计数的最小值时,存储器满标志输出有效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031482252A CN100337443C (zh) | 2003-07-02 | 2003-07-02 | 一种先入先出存储器及快速产生存储标志的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031482252A CN100337443C (zh) | 2003-07-02 | 2003-07-02 | 一种先入先出存储器及快速产生存储标志的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1567880A CN1567880A (zh) | 2005-01-19 |
CN100337443C true CN100337443C (zh) | 2007-09-12 |
Family
ID=34472229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031482252A Expired - Fee Related CN100337443C (zh) | 2003-07-02 | 2003-07-02 | 一种先入先出存储器及快速产生存储标志的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100337443C (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101281489B (zh) * | 2007-04-03 | 2010-05-26 | 中兴通讯股份有限公司 | 一种先进先出存储器实现方法及装置 |
CN101267459B (zh) * | 2008-04-23 | 2011-11-23 | 无锡中星微电子有限公司 | 采用异步fifo寄存器输出数据的方法及寄存器 |
CN109144889B (zh) * | 2018-06-25 | 2022-11-25 | 中国科学院声学研究所 | 基于fpga的超声检测数据存储模块及fpga电路 |
CN117649332B (zh) * | 2023-12-13 | 2025-04-22 | 中国科学院长春光学精密机械与物理研究所 | 坐标图像缓存系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1035381A (zh) * | 1987-10-14 | 1989-09-06 | 北方电信有限公司 | 先进先出(fifo)缓冲控制器 |
CN1094525A (zh) * | 1993-04-19 | 1994-11-02 | 电子科技大学 | 一种大容量高速数据采集缓存方法及设备 |
JPH08124376A (ja) * | 1994-10-27 | 1996-05-17 | Fujitsu Ltd | Fifoメモリ |
CN1343050A (zh) * | 2000-09-06 | 2002-04-03 | 日本电气株式会社 | 输入数据处理电路 |
JP2003143238A (ja) * | 2001-11-07 | 2003-05-16 | Nec Miyagi Ltd | バッファ回路及びその制御方法 |
-
2003
- 2003-07-02 CN CNB031482252A patent/CN100337443C/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1035381A (zh) * | 1987-10-14 | 1989-09-06 | 北方电信有限公司 | 先进先出(fifo)缓冲控制器 |
CN1094525A (zh) * | 1993-04-19 | 1994-11-02 | 电子科技大学 | 一种大容量高速数据采集缓存方法及设备 |
JPH08124376A (ja) * | 1994-10-27 | 1996-05-17 | Fujitsu Ltd | Fifoメモリ |
CN1343050A (zh) * | 2000-09-06 | 2002-04-03 | 日本电气株式会社 | 输入数据处理电路 |
JP2003143238A (ja) * | 2001-11-07 | 2003-05-16 | Nec Miyagi Ltd | バッファ回路及びその制御方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1567880A (zh) | 2005-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1203420C (zh) | 用于移动存储块的直接存储器存取控制器及其移动方法 | |
CN100346289C (zh) | 一种先入先出存储器及其输出空满标志的方法 | |
EP2219114A1 (en) | Method and apparatus for allocating storage addresses | |
CN101079623A (zh) | 一种大容量无刷新的高速统计计数器 | |
CN114217738A (zh) | 一种动态队列式循环存储方法、装置、设备及介质 | |
CN100337443C (zh) | 一种先入先出存储器及快速产生存储标志的方法 | |
US7266650B2 (en) | Method, apparatus, and computer program product for implementing enhanced circular queue using loop counts | |
CN102193873B (zh) | 快速读写物理版图数据的方法 | |
CN108108148B (zh) | 一种数据处理方法和装置 | |
CN101079313A (zh) | 一种无读取延迟的先进先出存储器 | |
CN101493759B (zh) | 一种任意容量异步先入先出存储器的地址控制方法 | |
JPH02234242A (ja) | 部分書込み制御装置 | |
CN1740967A (zh) | 一种在表格使用中减少占用内存的方法 | |
CN100336038C (zh) | 嵌入顺序缓冲器的计算机系统及其方法 | |
CN1581100A (zh) | 一种用于网络处理器的数据老化方法 | |
CN114153758B (zh) | 具有帧计数功能的跨时钟域数据处理方法 | |
CN101894005A (zh) | 高速接口向低速接口的异步fifo传输方法 | |
CN116760985A (zh) | Dsc编码器的视频输入电路、dsc编码器系统及视频输入方法 | |
CN116405155A (zh) | 利用gpu解码vdif格式数据的方法 | |
CN115952326A (zh) | 一种链表式数据结构及其数据处理方法、存储介质、电子设备 | |
CN1731529A (zh) | 先入先出数据缓存的方法及全满空间访问先入先出存储器 | |
US5774745A (en) | Method and apparatus for writing and reading entries in an event status queue of a host memory | |
CN102685003B (zh) | 数据交换设备及回读方法 | |
CN1078720C (zh) | 输入/输出数据的规模相异的先入先出存贮器及其方法 | |
JP2828643B2 (ja) | 直線描画装置 |
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: 20070912 Termination date: 20170702 |
|
CF01 | Termination of patent right due to non-payment of annual fee |