[发明专利]一种异步先进先出存储器的数据读写方法、装置及系统无效
申请号: | 200810222652.4 | 申请日: | 2008-09-19 |
公开(公告)号: | CN101373424A | 公开(公告)日: | 2009-02-25 |
发明(设计)人: | 张浩 | 申请(专利权)人: | 北京中星微电子有限公司 |
主分类号: | G06F5/14 | 分类号: | G06F5/14 |
代理公司: | 北京国昊天诚知识产权代理有限公司 | 代理人: | 顾惠忠 |
地址: | 100083北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 异步 先进 存储器 数据 读写 方法 装置 系统 | ||
技术领域
本发明涉及先进先出系统,特别是涉及一种异步先进先出存储器的数据读写方法、装置及系统。
背景技术
在现代的集成电路芯片中,随着设计规模的不断扩大,一个系统中往往含有数个时钟。多时钟域带来的一个问题就是,如何设计异步时钟之间的接口电路。异步先进先出(First In First Out,FIFO)为解决这个问题提供了一种简便、快捷的方法。
异步FIFO是一种先进先出电路,广泛用于实时数据传输接口中,用来存储、缓冲两个异步时钟之间的数据传输。它用一种时钟写入数据,而用另外一种时钟读出数据,在两个不同时钟系统之间传输实时数据。在应用中,由于读写时钟的不同步,常常会发生FIFO的上溢或下溢,为了避免这种情况,异步FIFO设置了与读时钟和写时钟同步的空标志和满标志以禁止读写操作。但是,空、满标志的产生是通过对读写地址的比较产生的,当地址变化时,由于多位地址各位变化时间不同,异步时钟对其进行采样的数值可能与地址变化的真正数值有差别,从而可能导致产生错误的空满标志,以至于FIFO操作发生错误。
为了解决地址变化引起的FIFO操作错误问题,异步FIFO使用格雷码将其发生错误的概率降低到一个可以接受的程度。格雷码是一种在相邻计数值之间只有一位发生变化的编码方式,而FIFO的地址是连续增加的,可以看出,若读写地址采用格雷码编码方式,就可以解决上面的问题。
同时,标准的格雷码是一种循环码,其对于n个位大多都具有完整的2n个不同的项,并且排序中的“第一”和“最后”项仍旧只差一位。格雷码的这种相邻位间转换时只有一位发生变化的特性,使其广泛应用于诸如异步FIFO地址编码、位移检测等情形。
然而,用于发现或产生格雷码的传统技术受限于具有2n个项的码,其中n是每个整数的比特数,即总的码子必须是2的幂次方个。因此,采用格雷码地址编码的异步FIFO也要求地址深度必须为2的幂次方个。这很不幸,因为存在一些应用,如:大部分时候,异步FIFO并不需要2n个地址的存储空间,只需要有限个非2n的格雷码地址的存储空间,在这些应用中,具有较少项数的格雷码就足够了。但是,2n格雷码的大多子集都是非循环的,例如,在从0到3,或者从0到7等2n个格雷码的情况下,当格雷码从3变到0,或7变到0,可以保证只有一个比特变化;但是对于非2n个格雷码的情况,如0到6,就不能保证6变到0时只变化一个比特位。后一种情况的存在,极大妨碍了格雷码的有用性。因为,对于那些不需要完整的2n个项的应用来说,这种不足浪费了硬件和功耗。
总之,需要本领域技术人员迫切解决的一个技术问题就是:如何能够节省上述情形下的异步FIFO系统的内存,有效降低系统的硬件和功耗。
发明内容
本发明所要解决的技术问题是提供一种异步先进先出(FIFO)存储器的数据读写方法与装置,用以节省异步FIFO系统的内存,有效降低系统的硬件和功耗。
本发明的另一个目的是提供一种异步FIFO系统,所述系统包括上述异步FIFO数据读、写装置,以实现本发明的具体应用。
为了解决上述问题,本发明实施例提供了一种异步先进先出存储器的数据写入方法,包括以下步骤:
获取写地址域的二进制写地址;
转换所述二进制写地址为格雷码写地址;
判断所述格雷码写地址是否到达所述异步先进先出存储器的非2幂次边界地址;
如果是,则将所述格雷码写地址跳转锁定后输出;如果否,则直接输出;
将写地址域时钟转换为读地址域时钟;
将所输出的格雷码写地址转换为读地址域时钟的二进制写地址;
如果所述异步先进先出存储器非满,则在所述写地址域的二进制写地址写入数据。
本发明实施例还提供了一种异步先进先出存储器的数据读取方法,包括以下步骤:
获取读地址域的二进制读地址;
转换所述二进制读地址为格雷码读地址;
判断所述格雷码读地址是否到达所述异步先进先出存储器的非2幂次边界地址;
如果是,则将所述格雷码读地址跳转锁定后输出;如果否,则直接输出;
将读地址域时钟转换为写地址域时钟;
将所输出的格雷码读地址转换为写地址域时钟的二进制读地址;
如果所述异步先进先出存储器非空,则读取所述读地址域的二进制读地址的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中星微电子有限公司,未经北京中星微电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810222652.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置