CN1407458A - 一种异步先进先出(fifo)数据缓存的方法 - Google Patents
一种异步先进先出(fifo)数据缓存的方法 Download PDFInfo
- Publication number
- CN1407458A CN1407458A CN 01130699 CN01130699A CN1407458A CN 1407458 A CN1407458 A CN 1407458A CN 01130699 CN01130699 CN 01130699 CN 01130699 A CN01130699 A CN 01130699A CN 1407458 A CN1407458 A CN 1407458A
- Authority
- CN
- China
- Prior art keywords
- fifo
- address
- read
- write
- full signal
- 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
Landscapes
- Communication Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种数据存储地址选择的方法,尤其涉及一种对于数据传递以块为单位的异步先进先出(FIFO)数据缓存的方法,对存储器地址分为块地址和块内偏移地址,对块地址进行格雷码编码,存储器根据接口协议的需要产生操作状态如空满信号,空满信号是以块地址为单位产生的。这种异步FIFO数据缓存的方法,满足了以数据块为单位传递的接口要求,降低接口时序处理的难度,简化处理逻辑,在FIFO地址偶然紊乱的情况下可自恢复,提高了可靠性。
Description
技术领域
本发明涉及一种数据存储地址选择的方法,更具体地说,涉及一种异步先进先出(FIFO)数据缓存的方法。
背景技术
在芯片中的接口模块设计中,一般都需要用FIFO来进行数据缓存。如果是异步时钟,还需要设计满足要求的异步FIFO来缓存数据,由于各种接口的协议不同,传送数据的方式不同,就需要根据其特点设计相匹配的异步FIFO。
目前异步FIFO的数据缓存一般是采用双口RAM实现,读写地址在读写使能的作用下加一,对读写地址进行格雷码编码后比较,由读写地址的格雷码比较来产生空满信号。对于数据传递以块为单位的接口,如UTOPIA接口是以信元为单位传递、FBUS接口是以64字节为单位传递的,采用一般的异步FIFO数据缓存的方法,其空满信号的产生与协议的需求不一致,需要外加电路进行适配,导致接口处理的复杂度上升,难度加大,可靠性下降;同时由于在FIFO地址偶然紊乱的情况下,很难恢复正常状态或者在短时间难以恢复,其可靠性和鲁棒性都较差。
发明内容
本发明目的就在于提供对于数据传递以块为单位的异步FIFO数据缓存的方法,以降低接口处理的复杂度,提高可靠性。
本发明目的是通过以下技术方案实现的:
一种异步先进先出(FIFO)数据缓存的方法,包括:
存储器的地址采用块地址和块内偏移地址,空信号或满信号以块地址为单位产生。
所述的空信号或满信号的产生包括:当读出、写入最后一个块的空间时,只要读出、写入一个单位的数据就产生空信号、满信号。
进一步的,当产生空信号或满信号时仍可以继续读出或写入,直到偏移地址完毕,或者读出、写入一个包尾时,允许读出或允许写入禁止。
上述的块地址进行格雷码编码。
由于空信号、满信号是以块地址为单位产生的,满足了以数据块为单位传递的接口要求,降低接口时序处理的难度,简化处理逻辑;同时若某块数据读写出错,少或多读、写数据,不会蔓延到其它块的数据,到下一块的时候,读写偏移指针就自动校正恢复到0,不会导致错误的延续,从而提高了可靠性。
附图说明
图1为本发明产生满信号一实施例的写时序图;
图2为本发明产生空信号一实施例的读时序图。
具体实施方式
为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
异步FIFO用深512宽40bits的双口RAM实现,将读、写地址分成块地址和偏移地址,16个偏移地址构成一个块地址,共有32个块。采用对块地址进行格雷码编码的方式,偏移地址在读写使能作用下加1,而块地址在块读使能(Rensoc)、块写使能(Wensoc)有效时加1,Rensoc、Wensoc在以下情况时有效:a、读、写偏移地址加到16;b、读出、写入一个包尾(EOP)。
当只剩一个块的空间,只要写入一个单位即产生满信号,但还可继续写,直到写到偏移地址为16或写入一个EOP时,就不能再写入,允许写入(Write-enable)为0。参见图1所示。图1为产生满信号的写时序图,图中Data-in[33]表示写入数据包的包尾标记。
同样地,当还有一个块的数据未读出,只要读出一个单位即产生空信号,但还可继续,直到读偏移地址为16或读出一个EOP时,就不能再读,允许读出(Read-enable)为0。参见图2所示。图2为产生空信号的读时序图,图中Data-out[33]表示读出数据包的包尾标记。
综上所述,空满标志的产生是以块为基础的。对于FBUS、UTOPIA等接口,它们是以数据块为单位传递的接口,同时要求FIFO中的数据在没有一块但有一个包尾数据的情况下,也必须报非空的要求,这种FIFO处理起来就很简单,因为只要FIFO中写入一个包尾EOP时,块写指针就加一,这样异步FIFO就会报非空。同时,其满信号也是以块为单位产生的,只要非满,就可至少接收一个数据块,这样就简化了接口处理逻辑。
本发明并不局限于上述实施例的具体介绍。本发明可进一步更新,或者对本发明所公开的特征加以新的组合(包括任何相关的权利要求、摘要和附图),也可对本发明所公开的任何方法或者过程进行更新或者进行新组合。
Claims (4)
1、一种异步先进先出(FIFO)数据缓存的方法,其特征在于该方法包括:存储器的地址采用块地址和块内偏移地址,空信号或满信号以块地址为单位产生。
2、根椐权利要求1所述的异步先进先出(FIFO)数据缓存的方法,其特征在于所述的空信号或满信号以块地址为单位产生包括:当读出或写入最后一个块的空间时,只要读出或写入一个单位的数据就产生空信号或满信号。
3、根椐权利要求1或2所述的异步先进先出(FIFO)数据缓存的方法,其特征在于进一步包括:当产生空信号或满信号时仍然可以继续读出或写入,直到块内偏移地址完毕时,或者读出或写入一个包尾时,允许读出或允许写入禁止。
4、根椐权利要求1所述的异步先进先出(FIFO)数据缓存的方法,其特征在于:所述的块地址进行格雷码编码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011306998A CN1293479C (zh) | 2001-08-30 | 2001-08-30 | 异步先进先出方式缓存数据时空信号或满信号的生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011306998A CN1293479C (zh) | 2001-08-30 | 2001-08-30 | 异步先进先出方式缓存数据时空信号或满信号的生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1407458A true CN1407458A (zh) | 2003-04-02 |
CN1293479C CN1293479C (zh) | 2007-01-03 |
Family
ID=4670076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB011306998A Expired - Lifetime CN1293479C (zh) | 2001-08-30 | 2001-08-30 | 异步先进先出方式缓存数据时空信号或满信号的生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1293479C (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034539B (zh) * | 2006-03-07 | 2011-01-26 | 北京中庆微数字设备开发有限公司 | 多驱动输出电路的电源噪声抑制方法 |
CN101267459B (zh) * | 2008-04-23 | 2011-11-23 | 无锡中星微电子有限公司 | 采用异步fifo寄存器输出数据的方法及寄存器 |
CN109933560A (zh) * | 2019-03-21 | 2019-06-25 | 南京威翔科技有限公司 | 一种基于fifo与随机存储器结合的模块间流控制通信方法 |
CN110188059A (zh) * | 2019-05-17 | 2019-08-30 | 西安微电子技术研究所 | 数据有效位统一配置的流控式fifo缓存结构及方法 |
CN110968538A (zh) * | 2018-09-28 | 2020-04-07 | 龙芯中科技术有限公司 | 一种数据缓冲方法和装置 |
CN113495903A (zh) * | 2021-09-08 | 2021-10-12 | 西安热工研究院有限公司 | 电力时序数据库缓存方法、系统、设备及可读存储介质 |
WO2022000324A1 (zh) * | 2020-06-30 | 2022-01-06 | 深圳市大疆创新科技有限公司 | 数据编码方法、数据解码方法、数据处理方法、编码器、解码器、系统、可移动平台与计算机可读介质 |
CN116540951A (zh) * | 2023-07-06 | 2023-08-04 | 苏州仰思坪半导体有限公司 | 存储器、数据存取方法、存储装置及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62235660A (ja) * | 1986-04-04 | 1987-10-15 | Nec Corp | 多次元配列のブロツク化アドレツシング装置 |
US5485595A (en) * | 1993-03-26 | 1996-01-16 | Cirrus Logic, Inc. | Flash memory mass storage architecture incorporating wear leveling technique without using cam cells |
JP3013800B2 (ja) * | 1997-01-30 | 2000-02-28 | 日本電気株式会社 | 非同期fifo回路 |
-
2001
- 2001-08-30 CN CNB011306998A patent/CN1293479C/zh not_active Expired - Lifetime
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034539B (zh) * | 2006-03-07 | 2011-01-26 | 北京中庆微数字设备开发有限公司 | 多驱动输出电路的电源噪声抑制方法 |
CN101267459B (zh) * | 2008-04-23 | 2011-11-23 | 无锡中星微电子有限公司 | 采用异步fifo寄存器输出数据的方法及寄存器 |
CN110968538A (zh) * | 2018-09-28 | 2020-04-07 | 龙芯中科技术有限公司 | 一种数据缓冲方法和装置 |
CN110968538B (zh) * | 2018-09-28 | 2021-07-20 | 龙芯中科技术股份有限公司 | 一种数据缓冲方法和装置 |
CN109933560A (zh) * | 2019-03-21 | 2019-06-25 | 南京威翔科技有限公司 | 一种基于fifo与随机存储器结合的模块间流控制通信方法 |
CN110188059A (zh) * | 2019-05-17 | 2019-08-30 | 西安微电子技术研究所 | 数据有效位统一配置的流控式fifo缓存结构及方法 |
CN110188059B (zh) * | 2019-05-17 | 2020-10-27 | 西安微电子技术研究所 | 数据有效位统一配置的流控式fifo缓存装置及方法 |
WO2022000324A1 (zh) * | 2020-06-30 | 2022-01-06 | 深圳市大疆创新科技有限公司 | 数据编码方法、数据解码方法、数据处理方法、编码器、解码器、系统、可移动平台与计算机可读介质 |
CN113495903A (zh) * | 2021-09-08 | 2021-10-12 | 西安热工研究院有限公司 | 电力时序数据库缓存方法、系统、设备及可读存储介质 |
CN116540951A (zh) * | 2023-07-06 | 2023-08-04 | 苏州仰思坪半导体有限公司 | 存储器、数据存取方法、存储装置及存储介质 |
CN116540951B (zh) * | 2023-07-06 | 2023-09-08 | 苏州仰思坪半导体有限公司 | 存储器、数据存取方法、存储装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN1293479C (zh) | 2007-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4692859A (en) | Multiple byte serial data transfer protocol | |
CN1050212C (zh) | 先进先出缓冲存储器 | |
CN101572552B (zh) | 基于内容可寻址存储器的高速无损数据压缩系统 | |
US7802061B2 (en) | Command-based control of NAND flash memory | |
US7251188B2 (en) | Memory access interface for a micro-controller system with address/data multiplexing bus | |
CN102662856B (zh) | 一种固态硬盘及其存取方法 | |
US20030206442A1 (en) | Flash memory bridiging device, method and application system | |
CN111563052B (zh) | 降低读延时的缓存方法、装置、计算机设备及存储介质 | |
CN113791994B (zh) | 一种基于AXI协议wrap访问的DDR控制器及处理方法 | |
CN111832240B (zh) | Fifo数据传输方法及fifo存储装置 | |
US5086388A (en) | Semiconductor serial/parallel-parallel/serial file memory and storage system | |
CN1293479C (zh) | 异步先进先出方式缓存数据时空信号或满信号的生成方法 | |
CN101403962A (zh) | 基于fpga的异步双fifo的数据缓存方法 | |
CN112199071B (zh) | 一种地址可控异步缓存器及异步缓存方法 | |
CN108089825A (zh) | 一种基于分布式集群的存储系统 | |
US20050220239A1 (en) | Asynchronous FIFO apparatus and method for passing data between a first clock domain and a second clock domain of a data processing apparatus | |
CN101825997A (zh) | 一种异步先入先出存储器 | |
EP0386719B1 (en) | Partial store control circuit | |
CN101493759B (zh) | 一种任意容量异步先入先出存储器的地址控制方法 | |
US6769040B2 (en) | System for determining status of multiple interlocking FIFO buffer structures based on the position of at least one pointer of each of the multiple buffers | |
US7457894B2 (en) | Synchronization of non-sequential moving pointers | |
CN101894005A (zh) | 高速接口向低速接口的异步fifo传输方法 | |
CN101699391B (zh) | 提高Java处理器取指令带宽的字节码缓冲装置及使用方法 | |
CN114546292A (zh) | 一种nand flash坏块管理方法及系统 | |
US6925544B2 (en) | Packet buffer memory with integrated allocation/de-allocation circuit |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210426 Address after: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee after: Honor Device Co.,Ltd. Address before: 518057 HUAWEI building, road, Shenzhen science and Technology Park Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right | ||
CX01 | Expiry of patent term |
Granted publication date: 20070103 |
|
CX01 | Expiry of patent term |