实现芯片功能故障快速调试定位的方法及调试电路的制作方法

文档序号:5870728阅读:156来源:国知局
专利名称:实现芯片功能故障快速调试定位的方法及调试电路的制作方法
技术领域
本发明涉及芯片设计领域,特别是涉及一种能够实现芯片功能故障快速调试定位的方法。本发明涉及该方法中的调试电路。
背景技术
半导体工艺水平的发展使得集成电路(IC)集成度的进一步提高成为可能。电子工业已经从大规模集成电路时代迈进了超大规模集成电路时代。随着深亚微米工艺技术的成熟,芯片设计业面临着严峻的问题由于芯片功能和性能的需求发展,芯片规模越来越大,工作速度越来越高,开发周期越来越长,设计成本越来越高,设计质量越来越难于控制, 芯片生产后出现的设计和生产问题概率越来越大,查找故障的时间和人力成本以及复杂度也越来越大。十年前在设计3层金属层时,如果芯片有问题,可以直接研究金属层来查看电路。现在对于9层金属层和0.13mm甚至更小的金属间距,问题就不是那么简单了。当芯片出现问题,为了找出错误原因,可能需要观察芯片内部某些关键信号;通常的方法是利用聚焦离子束(FIB)探入到芯片内部。该方法不仅成本高,时间长,而且在如此小的金属间距中很容易破坏芯片或引入其他问题。

发明内容
本发明要解决的技术问题是提供一种实现芯片功能故障快速调试定位的方法,当芯片出现功能故障后,能够快速低成本的实现芯片故障的调试和定位;为此,本发明还要提供一种实现所述方法中的调试电路。为解决上述技术问题,本发明的实现芯片功能故障快速调试定位的方法是采用如下技术方案实现的在芯片电路内嵌入一调试电路,当芯片出现功能故障时,通过该芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式;对待观察的芯片内部信号进行选择;选择好的芯片内部信号通过芯片的一个预定义好的管脚进行输出;通过观察芯片工作过程中某些内部信号的波形,并与设计时该信号的期望波形相比较,实现功能故障的调试与定位。本发明实现所述方法中的调试电路详见具体实施方式
部分的描述。采用本发明的方法,可以在芯片设计时在芯片内嵌入一小块面积不大的调试电路。当芯片生产完成后,如果出现功能故障需要调试时,可以在不破坏芯片和做聚焦离子束 (FIB)工程的情况下,通过操作芯片的外部管脚就可以观察到芯片内部的某些关键信号,从而能够快速低成本的实现芯片故障的调试和定位。使得人们在芯片外部就能控制和观察芯片内部的信号,而在成本和时间预算上又不超出预定目标。


下面结合附图与具体实施方式
对本发明作进一步详细的说明
图1是本发明的实施例一各信号波形图;图2是本发明的实施例二各信号波形图;图3是嵌入在芯片内部的调试电路一实施例结构图。
具体实施例方式在一实施例中所述实现芯片功能故障快速调试定位的方法是,在芯片设计时在其内部嵌入一块调试电路。当芯片出现功能故障时,通过该芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式;对待观察的芯片内部信号进行选择;选择好的芯片内部信号通过芯片的一个预定义好的管脚进行输出;通过观察芯片工作过程中某些内部信号的波形,并与设计时该信号的期望波形相比较,实现功能故障的调试与定位。当芯片出现功能故障时,对待观察的芯片内部信号进行选择有两种实现方式,可以根据芯片实际情况选择使用。第一种方式是,通过芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式,并根据所述输入的预定义好的信号对待观察的芯片内部信号进行选择。参见图1所示,例如,从芯片的100管脚输入高电平信号,从IOl管脚输入时钟信号,从102、103、104管脚输入预定义好的信号;其中,从104管脚输入的为串行数据,经转换后变为并行数据;从104管脚输入的前8个数据为“A5” (当然,输入的前8个数据也可是其它数据,例如“9A”;目的是在芯片内嵌入的调试电路中如果设定的是A5,那么只有当从 104管脚输入的前8个数据为“A5”时,即两者匹配了,才能进入调试模式一,将待观察的芯片内部信号输出到,否则不能实现芯片内部信号调试功能),并与从I00、I01、I02、I03管脚输入的信号一起使芯片进入调试模式一。从104管脚输入的后6个数据产生待观察的芯片内部信号的选择信号,用于对待观察的芯片内部信号进行选择。将选择的要观察的芯片内部信号从105管脚输出。第二种方式是,通过芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式二,然后由芯片内部的CPU向一寄存器写入对待观察的芯片内部信号的选择数值,对待观察的芯片内部信号进行选择。参见图2所示,例如,从芯片的100管脚输入低电平信号,从IOl管脚输入时钟信号,使芯片进入调试模式。然后由芯片内部的CPU向一寄存器写入对待观察的芯片内部信号的选择数值,产生待观察的芯片内部信号的选择信号,被选择的芯片内部信号从105管脚输出。第一种实现方式对芯片内部是否有CPU均适用,特别是当芯片内部没有CPU或CPU 不能正常工作时更加适合。如果芯片上电后不能正常工作,可以通过操作芯片外部的管脚去察看芯片内部信号的工作状态,使得能够快速进行功能故障的错误定位;而且不需要芯片内部有CPU或CPU必须能正常工作。第二种实现方式在于如果芯片上电后不能正常工作,但是芯片中有CPU,而且CPU 在上电后能正常工作,可以通过操作CPU产生待观察的芯片内部信号的选择信号;使用的芯片管脚数量少,而且不需要另外从外部输入复杂的数字0、1序列信号,控制灵活方便,成本低,效率高,安全可靠;但适用范围不如第一种实现方式。结合图3所示,在一实施例中,所述调试电路包括调试模式产生模块、64个待观察的内部信号产生模块、串并转换模块、6位寄存器、选择信号选择器、观察信号选择器和观察信号输出控制器。所述调试模式产生模块,用于产生调试模式信号,使芯片进入调试模式。调试模式信号,可以由调试模式产生模块根据从芯片的一个管脚输入的预定义好的信号,或者从芯片的几个管脚同时输入的不同的预定义好的信号来实现。在图1、2、3所示的实施例中,调试模式信号是由从芯片的管脚100、101、102、103、104同时输入的不同的预定义好的信号实现的。由于本发明具有两种调试模式,即调试模式一(即前面所述的第一种实现方式) 和调试模式二(即前面所述的第二种实现方式),具体使芯片进入哪种调试模式,由芯片管脚100确定(当然也可以选择其它某一管脚)。当管脚100输入高电平(也可以是低电平) 时,配合管脚101、102、103、104同时输入的不同的预定义好的信号,由调试模式产生模块使芯片进入调试模式一;当管脚100输入低电平(也可以是高电平,即与调试模式一相反的电平信号)时,配合管脚IOl同时输入的预定义好的时钟信号,由调试模式产生模块使芯片进入调试模式二。串并转换模块,将从芯片管脚104输入的串行数据转换成并行数据,即用于产生调试模式一工作方式,又用于产生对待观察的内部信号进行选择的选择信号。其中,当串行输入的前8个数据为“A5”时,用于参与选择调试模式一;进入调试模式一后串行输入的后 6个数据用于对待观察的内部信号进行选择。64个待观察的内部信号模块,用于产生待观察的芯片内部信号,从芯片的几千个内部信号中挑选出对功能调试起关键作用的信号。芯片复杂度越高,需选择的待观察的内部信号也越多,当然成本会增加;在本发明的实施例中只选择了 64个关键待观察的内部信号。6位寄存器,在调试模式二时,由芯片内部的CPU向该寄存器中写入期望的数值, 在CPU的控制下,产生对待观察的内部信号进行选择的选择信号。选择信号选择器,与6位寄存器和串并转换模块相连接,在芯片100管脚的控制下,用于选择采用6位寄存器产生的选择信号或串并转换模块产生的选择信号。观察信号选择器,与64个待观察的内部信号模块和选择信号选择器相连接,在选择信号的控制下选择相应的待观察的内部信号作为观察信号输出。观察信号输出控制器,与调试模式产生模块和观察信号选择器相连接,在调试模式信号的控制下,选择输出观察信号或芯片的正常功能信号。当芯片处于调试模式,芯片可以根据选择信号通过预先定义好的某一个管脚输出被选中的内部信号。如图1、2所示,通过芯片的管脚105输出观察信号(即待观察的内部信号)。结合图1、2所示,在一实施例中,所述方法采用了芯片的六个管脚,分别为100、 101、102、103、104、105,这六个管脚除了在出现功能故障时用于调试外,也可以用于芯片的正常输入输出功能,实现调试与正常使用时的管脚复用。当芯片设计完成并生产完毕后,在测试中发现该芯片有功能故障时,可以通过操纵该芯片的上述六个管脚来观察芯片的某些内部信号,具体过程是,调试模式一从管脚 100输入高电平,管脚IOl输入时钟序列,从管脚102输入高电平信号,从管脚103输入低电平信号,从管脚104输入特定串行0、1序列信号。当芯片中的调试电路同时检测到管脚 100,102的信号为高电平,管脚103的信号为低电平,管脚104输入的0、1序列经串并转换为十六进制数“A5”,则进入预先设计好的调试模式一。一旦芯片进入调试模式,则管脚104输入的6个串行数据信号经串并转换模块,产生对待观察的内部信号进行选择的选择信号,如图1中的选择信号“010001”(二进制数)。 选择信号选择器选择由串并转换模块产生的选择信号“010001”,则观察信号选择器从64 个待观察的内部信号模块中选择调试模式预定义的第18个内部信号,经管脚105输出到芯片外。通过观察该输出信号的波形,就可以推断出芯片内部其他信号的工作状态,从而实现芯片故障的调试和定位。调试模式二 从管脚100输入低电平,管脚IOl输入时钟序列,通过内部程序让 CPU写期望值到芯片内部一个被选择寄存器中,产生待观察的内部信号的选择信号,进行内部观察信号的选择。如写05,则被观察信号中的第5个信号经管脚105输出到芯片外。通过观察该输出信号的波形,就可以推断出芯片内部其他信号的工作状态,从而实现芯片故障的调试和定位。以上通过具体实施例对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本发明的保护范围。
权利要求
1.一种实现芯片功能故障快速调试定位的方法,其特征在于在芯片电路内嵌入一调试电路,当芯片出现功能故障时,通过该芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式;对待观察的芯片内部信号进行选择;选择好的芯片内部信号通过芯片的一个预定义好的管脚进行输出;通过观察芯片工作过程中某些内部信号的波形,并与设计时该信号的期望波形相比较,实现功能故障的调试与定位。
2.如权利要求1所述的方法,其特征在于使芯片进入调试模式并对待观察的芯片内部信号进行选择有两种实现方式第一种方式是,通过芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式,并根据所述输入的预定义好的信号对待观察的芯片内部信号进行选择;第二种方式是,通过芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式,然后由芯片内部的CPU向一寄存器写入对待观察的芯片内部信号的选择数值,对待观察的芯片内部信号进行选择。
3.如权利要求2所述的方法,其特征在于所述两种实现方式由芯片的某一管脚输入的高电平信号或低电平信号,并配合其它管脚输入的预定义好的信号进行选择。
4.实现权利要求1所述方法中的调试电路,其特征在于,包括 调试模式产生模块,用于产生调试模式信号,使芯片进入调试模式;所述调试模式包括调试模式一和调试模式二两种;串并转换模块,将从芯片一管脚输入的串行数据转换成并行数据,即用于产生调试模式一工作方式,又用于产生对待观察的芯片内部信号进行选择的选择信号;其中,串行输入的前8个数据用于参与选择调试模式一;进入调试模式一后串行输入的后6个数据用于对待观察的芯片内部信号进行选择;待观察的内部信号模块,用于产生多个待观察的芯片内部信号; 6位寄存器,在调试模式二时,由芯片内部的CPU向该寄存器中写入期望的数值,在CPU 的控制下,产生对待观察的芯片内部信号进行选择的选择信号;选择信号选择器,与6位寄存器和串并转换模块相连接,在芯片一管脚输入电平信号的控制下,用于选择采用6位寄存器产生的选择信号或串并转换模块产生的选择信号;观察信号选择器,与待观察的内部信号模块和选择信号选择器相连接,在选择信号的控制下选择相应的待观察的内部信号作为观察信号输出;观察信号输出控制器,与调试模式产生模块和观察信号选择器相连接,在调试模式信号的控制下,选择输出观察信号或芯片的正常功能信号。
5.如权利要求4所述的调试电路,其特征在于,当芯片的某一管脚输入高电平时,并配合其它管脚同时输入的不同的预定义好的信号,由调试模式产生模块使芯片进入调试模式一;当前述的某一管脚输入低电平时,并配合其它管脚同时输入的不同的预定义好的信号, 由调试模式产生模块使芯片进入调试模式二。
全文摘要
本发明公开了一种实现芯片功能故障快速调试定位的方法,在芯片电路内嵌入一调试电路,当芯片出现功能故障时,通过该芯片的一个或多个管脚输入一段预定义好的信号使芯片进入调试模式;对待观察的芯片内部信号进行选择;选择好的芯片内部信号通过芯片的一个预定义好的管脚进行输出;通过观察芯片工作过程中某些内部信号的波形,并与设计时该信号的期望波形相比较,实现功能故障的调试与定位。本发明还公开了实现所述方法中的调试电路。在芯片出现功能故障后,本发明能够快速低成本的实现芯片故障的调试和定位。
文档编号G01R31/28GK102236066SQ20101015502
公开日2011年11月9日 申请日期2010年4月22日 优先权日2010年4月22日
发明者舒海军 申请人:上海华虹集成电路有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1