CN1310300C - 宽带数据通信芯片检测方法及芯片 - Google Patents

宽带数据通信芯片检测方法及芯片 Download PDF

Info

Publication number
CN1310300C
CN1310300C CNB031466249A CN03146624A CN1310300C CN 1310300 C CN1310300 C CN 1310300C CN B031466249 A CNB031466249 A CN B031466249A CN 03146624 A CN03146624 A CN 03146624A CN 1310300 C CN1310300 C CN 1310300C
Authority
CN
China
Prior art keywords
fifo
communication chip
digital communication
wide
historic state
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
Application number
CNB031466249A
Other languages
English (en)
Other versions
CN1481010A (zh
Inventor
龙刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB031466249A priority Critical patent/CN1310300C/zh
Publication of CN1481010A publication Critical patent/CN1481010A/zh
Application granted granted Critical
Publication of CN1310300C publication Critical patent/CN1310300C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种宽带数据通信芯片的检测方法,以及可实现上述方法的芯片。本发明的宽带数据通信芯片包括若干STM和FIFO,FIFO为DATCNT式FIFO,在每一FIFO上设置一DATCNT值监视模块,包括一监视器和一历史状态寄存器,监视器监视DATCNT值,在DATCNT值处于无效范围时触发历史状态寄存器,将历史状态寄存器置高,发出告警信息。本发明通过设置在FIFO上的监视模块,能够在不借助逻辑分析仪等观察仪器的情况下,快速准确判断芯片内部任一状态机和FIFO之间是否发生过配合失误,不仅大大提高了芯片的可靠性、稳定性,而且为工程师提供了快速定位问题的手段,大大提高了芯片的开发进度。可广泛应用于宽带数据通信芯片技术领域。

Description

宽带数据通信芯片检测方法及芯片
技术领域:
本发明涉及芯片领域,尤其涉及一种宽带数掘通信芯片的检测方法,以及可实现上述方法的芯片。
背景技术:
在宽带数据通信中,逻辑设计在通信设备开发中处于核心地位。因为随着现在数据通信对带宽越来越高的需求,无论是低端的二层网络交换机还是高端的太比特骨干路由器,整个设备的转发能力承受着越来越大的需求压力,作为决定转发能力的核心转发模块也越来越受到高带宽的挑战。
由于超大的数据带宽,使得任何进行软件转发的方式都显得力不从心,唯一的选择就是使用芯片进行硬件转发。
而在宽带设备的芯片设计任务中,若按照设计内容分,主要包括两个方面的设计,一个是状态机(STM)的设计,另一个方面就是先进先出存储器(FIFO)的设计,宽带数掘通信芯片基本上都可以分解为若干个FIFO和若干个状态机(如图1所示),也就是说,宽带数据芯片基本上就是由FIFO和状态机组成的。因此可以说,稳定的芯片是由稳定的FIFO、稳定的状态机以及FIFO与状态机之间可靠的配合得到的。
由于FIFO和状态机的重要性,几乎每个工程师都十分重视FIFO和状态机本身的设计,但是往往忽略考虑如何使状态机和FIFO之间有稳定的配合,常常出现由稳定的FIFO和稳定的状态机却组合不成稳定的芯片,并且由于状态机和FIFO之间的的配合失误往往会隐藏很深,即使上板调试也可能是跑上数天才出现一次,通过仿真也就更难发现了。更为致命的是,即使上板出现了问题,表现出来的现象往往是死机或者出错但又马上恢复,若是死机,还能引起工程师的高度重视,若是仅仅出错然后马上又得到恢复,则很可能就被工程师忽略掉了,那么将会导致芯片由于不稳定而失败或者部分预定功能得不到实现。
如何保证FIFO和状态机之间能够可靠配合成为了决定芯片成败的一个关键问题。一方面,我们必须通过特别的设计规则对相互配合的状态机和FIFO进行配合审查;另一方面,我们必须对状态机和FIFO的配合状况进行监视。
状态机和FIFO之所以难以配合好,并非设计非常复杂,而是由于其出错后不易重现,难以定位问题。例如在单板上工作数天才触发一次,这么长的时间,通过仿真来发现错误是无法想像的;而在单板上出现问题时,即使我们很好地保留了现场,要定位问题也非常困难,因为我们看不到芯片的内部波形,靠逻辑分析仪也是无能为力的。
如果能够在芯片一旦出现此类问题时,我们能够马上定位出是哪个状态机和FIFO之间配合失误造成的问题,那么我们再根据前面提到的特别的设计规则进行检察,一般马上就能找出问题的根源。这样,我们就能够很好地解决如何使状态机和FIFO能够可靠配合的问题。如何才能快速定位出是哪个状态机和FIFO之间配合出了问题,以及判断它们之间是否真出了问题。
发明内容:
本发明目的在于提供一种解决如何发现FIFO和状态机之间配合不可靠的芯片检测方法,避免传统方法在准确性、快速性、可操作性等方面的问题,能够在不借助逻辑分析仪等观察仪器的情况下,快速准确判断芯片内部任一状态机和FIFO之间是否发生过配合失误。
本发明的另一目的在于提供一种可实现上述方法的宽带数据通信芯片。
本发明的宽带数据通信芯片检测方法,宽带数据通信芯片包括若干STM和FIFO,FIFO为DATCNT式FIFO,其步骤包括
1)监视宽带数据通信芯片上每一FIFO上的DATCNT值;
2)在任一FIFO的DATCNT值处于无效范围(DATCNT值溢出)时,发出告警信息。
本发明在每一FIFO上设置一DATCNT值监视模块,该监视模块读取并判断DATCNT值,并在DATCNT值处于无效范围时发出告警信息。所述DATCNT值监视模块包括一监视器和一历史状态寄存器,监视器监视DATCNT值,在DATCNT值处于无效范围时触发历史状态寄存器,将历史状态寄存器置高,发出告警信息。
上述历史状态寄存器只在复位的情况下才被清零。
监视器判断条件1:(Datcnt(n)=‘1’and Datcnt(n-1 downto 0)/=0),在条件1满足时判定DATCNT值处于无效范围,将历史状态寄存器置高,发出告警信息。
本发明所有历史状态寄存器由CPU通过CPU接口定时读取。
或任一历史状态寄存器可由CPU读取;在历史状态寄存器不全为零时将中断信号置高,并通知CPU通过CPU接口查询告警的历史状态寄存器。
或将所有历史状态寄存器各位进行或(OR)操作,得到的信号通过管脚送到IO上面进行点灯告警。
本发明所述的历史状态寄存器为一D触发器。
本发明的宽带数据通信芯片,包括若干DATCNT式FIFO和若干状态机,每FIFO上设DATCNT监视模块,在DATCNT值处于无效范围时发送告警信息。DATCNT监视模块包括DATCNT值监视器和与之相连的历史状态寄存器。
历史状态寄存器只有在复位的情况下才被清零。
历史状态寄存器具有CPU接口。也可引出到中断信号。或通过管脚连接到信号灯上。
一般说来,FIFO和状态机机之间的配合失误主要是由于二者之间握手不正确,其最常见的表现是状态机对FIFO的强行操作。强行操作包括两种,一种是强行写操作,即在FIFO已经处于满状态的情况下,状态机仍然对该FIFO进行了写操作;另外一种是强行读操作,即在FIFO中已经没有有效数据的情况下,状态机仍然对该FIFO采取了读操作。强行读写所造成的后果一般是无法预料的,不同的FIFO有不同的结果,有些带防止强行操作的FIFO是可以容忍外部状态机对其任意的强行操作,FIFO本身是不会出错的,于是,很多工程师想通过设计带防强行操作的FIFO来解决FIFO和状态机之间的配合问题,显然是不能达到目的的,因为增加了FIFO的健壮性并没有解决FIFO和状态机之间握手不正确的问题,虽然FIFO还在正常工作,但是其引起的其他问题并没有被解决掉,比如内存泄漏、地址回收等问题,靠治标不治本的方法是肯定解决不了的。
本发明则根据“FIFO和状态机配合失误最常见的表现是状态机对FIFO的强行操作”这一特点,监视强行操作的存在,来判断状态机和FIFO之间的配合是否可靠,若芯片某处发生了强行操作,则证明对应的配合是存在问题的,可帮助我们快速发现和定位问题。
目前FIFO的设计基本上有固定的模式,主要分为两种,第一种通过比较读写地址的来确定当前FIFO的空满状态,第二种是通过记录当前FIFO中剩余数据单元个数(DATCNT)来确定FIFO的空满状态。我们下面以第二种方式(下面称为DATCNT方式)为例说明历史状态寄存器的设计和使用。DATCNT方式的FIFO其内部主要框图如图2所示。主要包括存储数据的双口RAM、写指针控制器WCNTP、读指针控制器RCNTP、当前数据单元记数器DATCNTP、根据DATCNT产生空满标志的状态生成器。其中写指针WCNT是在写使能WEN的控制下每次加一步进;读指针RCNT在读使能的控制下每次加一步进;DATCNT则必须根据WEN和REN二种的组合情况来决定是加一、保持还是减一。DATCNT物理实现上是一加减记数器,物理含义则是当前FIFO中还剩多少个有效数据单元。因此,根据DATCNT就可以判断出当前FIFO的空满状态。
在正常FIFO中,2n个数据单元深的FIFO,DATCNT的数据位宽为(n+1)位宽。但是,其有效值范围为[0,2n],剩余的(2n+1-2n-1)个数据均为无效值。在正常情况下,DATCNT的值是不应该处于无效值的范围内的,除非FIFO受到了外部状态机的强行操作,也就是说出现了FIFO和状态机之间的配合失误。
强行读写的出现说明我们的设计的动作并非按照我们的设计意愿而动作,即设计中存在我们不曾希望的BUG。对于DATCNT方式的FIFO,强行读写所带来的后果主要表现为DATCNT的值超出有效范围处于无效值。因此,我们只要监视DATCNT是否曾经处于无效值的范围,就可以知道该FIFO是否出现过配合失误。因此,我们在原来FIFO的基础上,增加一个对DATCNT的监视模块。该模块的主要功能就是监视DATCNT的取值是否在有效值范围内。
由于每个FIFO都增加了历史状态寄存器,因此只要整个芯片中任何地方发生状态机FIFO配合失误问题,相应的FIFO的历史状态寄存器(ERRLCK)就会马上告警,工程师只要分析与该FIFO相关的读写状态机和该FIFO的配合即可找到问题的根源,快速而准确地定位问题,消除设计隐患。
附图说明:
图1宽带数据芯片结构框图
STM   :状态机                          EXIMEM  :外部扩展存储器
FIFO  :先进先出存储器
图2传统DATCNT方式FIFO设计示意图
EF    :空标志                       FF     :满标志
WEN   :写使能                       REN    :读使能
WCNT  :写指针                       RCNT   :读指针
DATAin:输入数据                     DATAout:输出数掘
WCNTP :写使能记数进程               RCNTP  :读使能记数进程
DATCNT:数据单元记数器               DATCNTP:数据单元记数进程
图3本发明的DATCNT方式FIFO设计示意图
EF     :空标志                      FF     :满标志
WEN    :写使能                      REN    :读使能
WCNT   :写指针                      RCNT   :读指针
DATAin :输入数据                    DATAout:输出数据
WCNTP  :写使能记数进程              RCNTP  :读使能记数进程
DATCNT :数据单元记数器              DATCNTP:数据单元记数进程
Mointor:DATCNT的监视器              ERRLCK :历史状态寄存器
实施方案:
如图3所示,本发明的具体解决步骤是:
1、在DATCNT方式FIFO中增加对DATCNT值进行监视的进程
在2n个数据单元深的FIFO,DATCNT的数据位宽为(n+1)位宽,其有效取值范围为[0,2n],剩余的(2n+1-2n-1)个数据均为无效值。要监视Datcnt[n-1:0]的数据是否处于有效值,只需判断一下条件1是否满足即可(条件1的表述方式为为VHDL语言的语法):
(Datcnt(n)=‘1’and Datcnt(n-1 downto 0)/=0)--条件1
若条件1曾经满足过,即使是仅仅持续过一个时钟周期,则可以认为该FIFO已经被强行操作过了,此时需要将告警用的历史状态机寄存器ERRLCK置为高。为了确保ERRLCK信号不会丢失,该寄存器设计成只有在复位的情况下才能被清零,复位结束后,一直监视DATCNT的值是否处于有效值范围内,若是则保持原值不变,若不是则将寄存器置高,并且将该值一直保持下去,直到下一次复位才重新归零,这样可以保证该寄存器不会因为故障消失又恢复到正常值,从而使工程师误以为芯片从来没有发送过故障,丢失发现问题的机会。
2、在整个芯片中,随时监视历史状态寄存器的信号,及时送出告警
由于每个FIFO都增加了历史状态寄存器,因此只要整个芯片中任何地方发生状态机FIFO配合失误问题,相应的FIFO的ERRLCK就会马上告警,工程师只要分析与该FIFO相关的读写状态机和该FIFO的配合即可找到问题的根源,快速而准确地定位问题,消除设计隐患。
本实施方案可采用三种方式进行告警:
1)CPU读取:将历史状态寄存器作为一个CPU可读取的寄存器,CPU定时通过CPU接口查询该寄存器;
2)中断告警:将历史状态寄存器作为一个CPU可读取的寄存器,并且在历史状态寄存器不为全零时将中断信号置高,通知CPU通过CPU接口查询该寄存器;
3)点灯告警:将所有历史状态寄存器各位进行OR操作,得到的信号经过反相后送出管脚连接到LED信号灯上,若历史状态寄存器任意一位为‘1’,经OR后反相得到的信号为‘0’,送出使LED灯点亮。1、
本发明通过在FIFO上设置监视模块,能够给芯片的可观察性,而且它以极小的代价,解决了其他办法很难解决的问题,不仅大大提高了芯片的可靠性、稳定性,而且为工程师提供了快速定位问题的手段,大大提高了芯片的开发进度。按照本发明的技术方案,在宽带通信数据芯片调试过程中,所有的问题都做到了一天之内定位,这在没有监视模块的项目中是很难想像的。这个实例足以证明该方法的快速性和有效性。

Claims (10)

1、一种宽带数据通信芯片检测方法,宽带数据通信芯片包括若干状态机和先进先出存储器,先进先出存储器为剩余数据单元个数式先进先出存储器,其步骤包括
1)监视宽带数据通信芯片上每一先进先出存储器上的剩余数据单元个数值;
2)在任一先进先出存储器的剩余数据单元个数值处于无效范围时,发出告警信息。
3)每一先进先出存储器上设置一剩余数据单元个数值监视模块,监视模块包括一监视器和一历史状态寄存器,监视器监视剩余数据单元个数值,在剩余数据单元个数值处于无效范围时将历史状态寄存器置高,发出告警信息。
2、如权利要求2所述的宽带数据通信芯片检测方法,其特征在于历史状态寄存器为一D触发器,只有在复位的情况下才被清零。
3、如权利要求2或3所述的宽带数据通信芯片检测方法,其特征在于所有历史状态寄存器由CPU通过CPU接口定时读取。
4、如权利要求2或3所述的宽带数据通信芯片检测方法,其特征在于任一历史状态寄存器可由CPU读取;在历史状态寄存器不全为零时将中断信号置高,并通知CPU通过CPU接口查询置高的历史状态寄存器。
5、如权利要求2或3所述的宽带数据通信芯片检测方法,其特征在于将所有历史状态寄存器各位进行或操作,得到的信号通过管脚送到输入输出上面进行点灯告警。
6、一种宽带数据通信芯片,包括若干剩余数据单元个数式先进先出存储器和若干状态机,其特征在于每先进先出存储器上设剩余数据单元个数监视模块,包括剩余数据单元个数值监视器和与之相连的历史状态寄存器。
7、如权利要求8所述的宽带数据通信芯片,其特征在于历史状态寄存器为一D触发器,只有在复位的情况下才被清零。
8、如权利要求8或9所述的宽带数据通信芯片,其特征在于历史状态寄存器具有CPU接口。
9、如权利要求8或9所述的宽带数据通信芯片,其特征在于历史状态寄存器可引出到中断信号。
10、如权利要求8或9所述的宽带数据通信芯片,其特征在于历史状态寄存器可连通到信号灯。
CNB031466249A 2003-07-09 2003-07-09 宽带数据通信芯片检测方法及芯片 Expired - Fee Related CN1310300C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031466249A CN1310300C (zh) 2003-07-09 2003-07-09 宽带数据通信芯片检测方法及芯片

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031466249A CN1310300C (zh) 2003-07-09 2003-07-09 宽带数据通信芯片检测方法及芯片

Publications (2)

Publication Number Publication Date
CN1481010A CN1481010A (zh) 2004-03-10
CN1310300C true CN1310300C (zh) 2007-04-11

Family

ID=34156090

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031466249A Expired - Fee Related CN1310300C (zh) 2003-07-09 2003-07-09 宽带数据通信芯片检测方法及芯片

Country Status (1)

Country Link
CN (1) CN1310300C (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104133751A (zh) * 2014-08-06 2014-11-05 浪潮(北京)电子信息产业有限公司 一种对芯片进行调试的方法和芯片
CN112505527B (zh) * 2020-12-10 2024-03-22 杭州迪普信息技术有限公司 一种检测集成电路缺陷的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1223730A (zh) * 1996-06-27 1999-07-21 交互数字技术公司 并行分组模块间仲裁的高速控制和数据总线
US6170048B1 (en) * 1997-03-24 2001-01-02 Texas Instruments Incorporated PC circuits, systems and methods
JP2001249823A (ja) * 2000-03-03 2001-09-14 Ricoh Co Ltd マイクロコンピュータ開発支援装置
CN1360422A (zh) * 2000-12-21 2002-07-24 Lg电子株式会社 在用户单元中恢复异常控制信元的装置和方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1223730A (zh) * 1996-06-27 1999-07-21 交互数字技术公司 并行分组模块间仲裁的高速控制和数据总线
US6170048B1 (en) * 1997-03-24 2001-01-02 Texas Instruments Incorporated PC circuits, systems and methods
JP2001249823A (ja) * 2000-03-03 2001-09-14 Ricoh Co Ltd マイクロコンピュータ開発支援装置
CN1360422A (zh) * 2000-12-21 2002-07-24 Lg电子株式会社 在用户单元中恢复异常控制信元的装置和方法

Also Published As

Publication number Publication date
CN1481010A (zh) 2004-03-10

Similar Documents

Publication Publication Date Title
US10810074B2 (en) Unified error monitoring, alerting, and debugging of distributed systems
US7877642B2 (en) Automatic software fault diagnosis by exploiting application signatures
Do et al. Limplock: Understanding the impact of limpware on scale-out cloud systems
US6615371B2 (en) Trace reporting method and system
US7698691B2 (en) Server application state
CN1129857C (zh) 多处理器转换装置和主处理器转换方法
US7757129B2 (en) Generalized trace and log facility for first error data collection
CN1801106A (zh) 用于计算机系统中的多个分区的错误监视的方法
US7930165B2 (en) Procedure and device for emulating a programmable unit providing system integrity control
US20080010497A1 (en) Selecting a Logging Method via Metadata
JPH10105427A (ja) 電子相互接続バス上でのメモリアクセスに関する状態論理データを表示するためのコンピュータ操作可能な方法
US20080320336A1 (en) System and Method of Client Side Analysis for Identifying Failing RAM After a User Mode or Kernel Mode Exception
US11567899B2 (en) Managing dependent delete operations among data stores
CN1967539A (zh) 用于监控和调试查询执行对象的装置和方法
CN105243023B (zh) 并行运行时错误检测方法
GB2483111A (en) Monitoring connections to servers and memory management
CN1310300C (zh) 宽带数据通信芯片检测方法及芯片
CN1777018A (zh) 基于dsp芯片的励磁控制器通讯系统及其usb协议实现的方法
CN1838568A (zh) 用于检测光纤信道线缆错连事件的装置、系统与方法
CN1725184A (zh) 信息处理设备和错误检测方法
CN2713739Y (zh) 宽带数据通信芯片
CN100361093C (zh) 一种处理器中使用缓存区的方法
CN1831785A (zh) 应用于固件程序除错的微处理器与方法
US20060248531A1 (en) Information processing device, information processing method and computer-readable medium having information processing program
CN101059758A (zh) 屏幕转换程序生成方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: HUAWEI TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: GANGWAN NETWORK CO., LTD.

Effective date: 20061020

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20061020

Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant after: Huawei Technologies Co., Ltd.

Address before: 100089, No. 21 West Third Ring Road, Beijing, Haidian District, Long Ling Building, 13 floor

Applicant before: Harbour Networks Holdings Limited

C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070411

Termination date: 20110709