本发明专利技术公开了一种FIFO异常处理方法及装置。本发明专利技术的异常处理方法包括:在至少一个FIFO组的工作过程中,对各个FIFO组中的FIFO进行异常检测;当检测到FIFO存在异常时,对异常FIFO所在的FIFO组进行同步复位;本发明专利技术的方法能够对多个FIFO组进行有效的异常检测,保证各个FIFO数据传输的正确性。
【技术实现步骤摘要】
本专利技术涉及存储器领域,尤其涉及一种FIFO异常处理方法及装置。
技术介绍
随着新技术的演进和发展,相关业务的处理速率变得越来越高,芯片内部所使用的FIFO (First Input First Output,先进先出寄存器)数量越来越多,以往使用单个FIFO来处理的模式已经不能满足现代数据业务处理的需求,这种情况下,我们往往需要使用一组或者多组FIFO来同时处理相关业务,例如在存在多个FIFO时,一般地,技术人员会对多个FIFO分组,采用多个FIFO组来处理相关业务。而伴随使用多组FIFO处理相关业务时,FIFO组内的某个FIFO存在异常时,比如一定概率出现比如偶发性空满、同组FIFO读写地址不同步,由于各个FIFO的地址都是独立控制的,采用单独对异常FIFO进行同步复位,也不能保证同组FIFO中数据传输的正确,现有技术中并没有有效的对多个FIFO组进行异常检测的方法。
技术实现思路
本专利技术要解决的主要技术问题是,提供一种FIFO异常处理方法及装置,能够对多个FIFO组进行有效的异常检测,保证各个FIFO数据传输的正确性。为解决上述技术问题,本专利技术提供一种FIFO异常处理方法,其特征在于,包括如下步骤:在至少一个FIFO组的工作过程中,对各个FIFO组中的FIFO进行异常检测;当检测到FIFO存在异常时,对异常FIFO所在的FIFO组进行同步复位。进一步地,所述异常检测包括:检测FIFO是否存在地址不同步,或者检测FIFO是否出现空或满状态。进一步地,所述检测FIFO是否存在地址不同步的过程包括:在对当前FIFO进行检测时,获取当前时刻所有FIFO的地址;获取当前FIFO所在FIFO组的第一个FIFO当前时刻的地址;比较当前FIFO的地址与所述第一个FIFO当前时刻的地址,如果不同,则该FIFO存在地址不同步;所述对异常FIFO所在的FIFO组进行同步复位的过程包括:获取与该异常FIFO同组的所有FIFO ;对该异常FIFO所在FIFO组中所有FIFO同时进行同步复位。进一步地,所述方法在对各个FIFO组中的FIFO进行异常检测之前还包括:配置各个FIFO组中FIFO的控制标识信息;所述对各个FIFO组中的FIFO进行异常检测步骤包括:根据所述控制标识信息对同一个FIFO组中的FIFO进行异常检测;所述获取当前FIFO所在FIFO组的第一个FIFO当前时刻的地址的步骤包括:根据所述控制标识信息获取当前FIFO所在FIFO组的第一个FIFO当前时刻的地址;所述获取与该异常FIFO同组的所有FIFO的步骤包括:根据所述控制标识信息获取与该异常FIFO同组的所有FIFO。进一步地,所述方法在获取当前时刻所有FIFO的地址之前还包括:锁存所有FIFO当前时刻的地址进一步地,所述方法还包括:对各个FIFO进行读写使能的初始化处理;所述方法在获取当前时刻所有FIFO的地址之前还包括:检测当前FIFO的初始化是否已经完成,若完成,则获取当前时刻所有FIFO的地址。同样为了解决上述的技术问题,本专利技术还提供了一种FIFO异常处理装置,包括:检测模块和同步复位模块;所述检测模块用于在至少一个FIFO组的工作过程中,对各个FIFO组中的FIFO进行异常检测;所述同步复位模块用于当所述检测模块检测到FIFO存在异常时,对异常FIFO所在的FIFO组进行同步复位。进一步地,所述异常检测包括:检测FIFO是否存在地址不同步,或者检测FIFO是否出现空或满状态。进一步地,所述检测模块用于检测检测FIFO是否存在地址不同步的过程包括:在对当前FIFO进行检测时,获取当前时刻所有FIFO的地址;获取当前FIFO所在FIFO组的第一个FIFO当前时刻的地址;比较当前FIFO的地址与所述第一个FIFO当前时刻的地址,如果不同,则该FIFO存在地址不同步;所述同步复位模块用于获取与该异常FIFO同组的所有FIF0,对该异常FIFO所在FIFO组中所有FIFO同时进行同步复位。进一步地,所述装置还包括配置模块;所述配置模块用于在对各个FIFO组中的FIFO进行异常检测之前,配置各个FIFO组中FIFO的控制标识信息;所述检测模块用于根据所述控制标识信息对同一个FIFO组中的FIFO进行异常检测,在异常检测过程中,根据所述控制标识信息获取当前FIFO所在FIFO组的第一个FIFO当前时刻的地址;所述同步复位模块用于根据所述控制标识信息获取与该异常FIFO同组的所有FIFO。进一步地,所述检测模块还用于在获取当前时刻所有FIFO的地址之前锁存所有FIFO当前时刻的地址。进一步地,所述装置还包括:初始化处理模块;所述初始化处理模块用于对各个FIFO进行读写使能的初始化处理;所述检测模块还用于在获取当前时刻所有FIFO的地址之前检测当前FIFO的初始化是否已经完成,若完成,则获取当前时刻所有FIFO的地址。本专利技术的有益效果是:本专利技术提供了一种FIFO异常处理方法及装置可以对多个FIFO组进行有效的异常检测,保证各个FIFO数据传输的正确性。具体地,本专利技术的异常处理方法包括:在至少一个FIFO组的工作过程中,对各个FIFO组中的FIFO进行异常检测;当检测到FIFO存在异常时,对异常FIFO所在的FIFO组进行同步复位;本专利技术的方法可以对每个FIFO组中所有的FIFO进行实时异常检测,当发现有FIFO存在异常时,对该异常FIFO所在的FIFO组进行同步复位,即对该FIFO组内所有的FIFO同步复位,这样保证了该FIFO组传输数据的正确性,与现有技术相比,本专利技术的方法可以实现多个FIFO组的异常检测和同步复位,从而保证同组FIFO数据传输的正确性。【附图说明】图1本专利技术实施例一提供的一种FIFO异常处理方法的流程示意图;图2为本专利技术实施例一提供的另一种FIFO异常处理方法的流程示意图;图3为本专利技术实施例二提供的第一种FIFO异常处理装置的结构示意图;图4为本专利技术实施例二提供的第二种FIFO异常处理装置的结构示意图;图5为本专利技术实施例二提供的第三种FIFO异常处理装置的结构示意图;图6为本专利技术实施例三提供的一种FIFO异常处理系统的结构示意图;图7为本专利技术实施例三提供的状态机九种状态的表格;图8为本专利技术实施例收纳提供的一种地址检测模块检测FIFO异常的流程示意图。【具体实施方式】下面通过【具体实施方式】结合附图对本专利技术作进一步详细说明。实施例一:如图1所示,本实施例提供了一种FIFO异常处理方法,具体包括如下步骤:步骤101:在至少一个FIFO组的工作过程中,各个FIFO组中的FIFO进行异常检测。本实施例方法适用于一组或者多组FIF0,其可以对所有FIFO进行检测,例如可以轮询检测所有FIFO组中的FIFO进行异常检测。本实施例方法可以是在对多个FIFO进行分组后,对FIFO组中FIFO进行异常检测。本实施例方法中异常检测的内容可以包括:检测FIFO是否存在地址不同步,或者检测FIFO是否出现空或满状态。例如可以检测:FIF0偶发性空满、FIFO读写地址是否同步以及其他FIFO可能出现的异常情况。步骤102:当检测到FIFO存在异常时,对异常FIFO所在的FIFO组进行同步复位。本实施例对异常FIFO所在的FIFO组进行同步复位具本文档来自技高网...
【技术保护点】
一种FIFO异常处理方法,其特征在于,包括如下步骤:在至少一个FIFO组的工作过程中,对各个FIFO组中的FIFO进行异常检测;当检测到FIFO存在异常时,对异常FIFO所在的FIFO组进行同步复位。
【技术特征摘要】
【专利技术属性】
技术研发人员:何翔,杨湘鄂,冷钢,
申请(专利权)人:中兴通讯股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。