一次性可编程微控制器芯片的测试电路及测试方法

文档序号:10623932阅读:454来源:国知局
一次性可编程微控制器芯片的测试电路及测试方法
【专利摘要】本发明公开一种基于一次性可编程微控制器芯片的测试电路,包括:一解锁单元,该解锁单元接收一电平信号以及一串行数据信号,当该电平信号以及该串行数据信号满足一特定时序时,该解锁单元发送一解锁信号;一译码单元,该译码单元与该解锁单元连接,该译码单元接收到该解锁信号后接收该串行数据信号和一串行时钟信号并生成一测试信号和测试时钟信号;一测试单元,该测试单元与该译码单元连接,该测试单元在接收到该测试信号后接收该串行数据信号和该测试时钟信号,该测试单元将该串行数据信号中的测试数据发送至一处理器,并将该测试时钟信号作为该处理器的时钟信号。
【专利说明】
一次性可编程微控制器芯片的测试电路及测试方法
技术领域
[0001]本发明涉及集成电路领域,特别涉及该领域中一种OTP型微控制器芯片的测试方法。
【背景技术】
[0002]OTP(One Time ProgramabIe) 一次性可编程存储器,由于其价格便宜,面积小,存储数据可靠,广泛应用于8位/16位/32位的微控制器芯片中,存储用户程序或数据。在芯片出厂时,OTP存储的内容全为1,用户可以根据需要将其中的某些单元写入数据0,以实现对其“编程”的目的。OTP的典型产品是“双极性熔丝结构”,如果要改写某些单元,则可以给这些单元通以足够大的电流(高压编程),并维持一定的时间,这些单元相关的熔丝即可熔断,这样就达到了将某些单元写成I的效果。由于OTP的数据修改是通过物理永久性改变的方式实现的,所以OTP的数据只能进行一次性烧写,烧写后的数据无法修改。
[0003]在OTP型微控制器芯片的测试中,通常的做法是将芯片的OTP存储器划分成两部分,其中一部分用于存储用户正常使用的程序,另一部分用于存储测试程序。然而由于OTP存储器一次性可编程的特点,一旦测试程序写入将无法进行修改,要更改某些由测试程序产生的控制信号,只能更换芯片,使用不灵活。其次,由于OTP存储器在芯片中所占的面积比较大,如果芯片的测试程序多的话,所需要的OTP存储空间将会增加,随之会大大增加芯片的面积。

【发明内容】

[0004]本发明的目的在于提供一种OTP型微控制器芯片的可测试性电路及测试方法,从而使芯片的面积减少,降低了芯片成本,测试灵活性增强。
[0005]为了实现上述目的,本发明公开一种基于一次性可编程微控制器芯片的测试电路,包括:一解锁单元,该解锁单元接收一电平信号以及一串行数据信号,当该电平信号以及该串行数据信号满足一特定时序时,该解锁单元发送一解锁信号;一译码单元,该译码单元与该解锁单元连接,该译码单元接收到该解锁信号后接收该串行数据信号和一串行时钟信号并生成一测试信号和测试时钟信号;一测试单元,该测试单元与该译码单元连接,该测试单元在接收到该测试信号后接收该串行数据信号和该测试时钟信号,该测试单元将该串行数据信号中的测试数据发送至一处理器,并将该测试时钟信号作为该处理器的时钟信号。
[0006]更进一步地,该特定时序指:在大于等于I毫秒的复位时间内,满足:该电平信号为Vl时,该解锁单元连续接收X个脉冲的串行数据信号;该电平信号为V2时,该解锁单元连续接收Y个脉冲的串行数据信号;电平信号为Vl时,该解锁单元连续接收M个脉冲的串行数据信号;该电平信号为V2时,该解锁单元连续接收N个脉冲的串行数据信号;当该V1、V2分别为高电平\低电平,或低电平\高电平,该X、Y、M、N均大于等于I。
[0007]更进一步地,该串行数据信号包括:s位的二进制的指令编码以及g位的二进制的测试数据;其中s>l,g为8或16或32。
[0008]本发明同时公开一种集成电路,该集成电路为一次性可编程存储器控制器电路,包括:一电平输入端口,用于向该集成电路输入一电平信号;一串行时钟输入端口,用于向该集成电路输入一串行时钟信号;一串行数据输入端口,用于向该集成电路输入一串行数据信号;一测试电路,该测试电路与一处理器连接,当该电平信号以及该串行数据信号满足一特定时序时,该测试电路开始工作并向该处理器发出测试数据。
[0009]更进一步地,该集成电路还包括一时钟发生器,用于为该处理器提供一时钟信号,该时钟发生器与该测试电路和处理器连接,当该测试电路开始工作,该处理器的时钟信号为该串行时钟信号。
[0010]更进一步地,该集成电路还包括一多路选择器,该多路选择器的输入端连接该测试电路与该一次性可编程存储器,输出端连接该处理器;当该测试电路开始工作,该多路选择器将该测试数据输出至该处理器,当该测试电路不工作时,该多路选择器将该一次性可编程存储器中的数据输出至该处理器。
[0011 ] 更进一步地,该电平信号是高压电平信号。该集成电路还包括一高压检测电路,用于将该高压电平信号转换为一同相位的低压电平信号并发送至该测试电路。
[0012]更进一步地,该特定时序指:在大于等于I毫秒的复位时间内,满足:该电平信号为Vl时,该测试电路连续接收X个脉冲的串行数据信号;该电平信号为V2时,该测试电路连续接收Y个脉冲的串行数据信号;电平信号为Vl时,该测试电路连续接收M个脉冲的串行数据信号;该电平信号为V2时,该测试电路连续接收N个脉冲的串行数据信号;当该V1、V2分别为高电平\低电平,或低电平\高电平,该X、Y、M、N均大于等于I。
[0013]更进一步地,该串行数据信号包括:s位的二进制的指令编码以及g位的二进制的数据;其中s>l,g为8或16或32。
[0014]更进一步地,该集成电路还包括一串行数据输出端口,用于从该集成电路输出一串行数据信号。
[0015]本发明同时公开一种基于一次性可编程存储器的测试方法,包括:步骤一、接收一电平信号以及一串行数据信号,当该电平信号以及该串行数据信号满足一特定时序时,发送一解锁信号;步骤二、接收该串行数据信号和一串行时钟信号并生成一测试信号和测试时钟信号;步骤三、将该测试时钟信号作为主时钟信号并接收该串行数据信号中的测试数据发送至一处理器运行。
[0016]更进一步地,该特定时序指:在大于等于I毫秒的复位时间内,满足:该电平信号为Vl时,接收X个脉冲的串行数据信号;该电平信号为V2时,该测试电路连续接收Y个脉冲的串行数据信号;电平信号为Vl时,该测试电路连续接收M个脉冲的串行数据信号;该电平信号为V2时,该测试电路连续接收N个脉冲的串行数据信号;当该V1、V2分别为高电平\低电平,或低电平\高电平,该X、Y、M、N均大于等于I。
[0017]与现有技术相比较,本发明中所提供的可测试性电路与测试方法可使测试程序随时修改,该特征相对于传统的采用特定OTP存储器区域存储测试程序的方法,大大提高了测试灵活性,减少了芯片面积,节约成本。并且测试端口可以与编程端口复用,以减少使用额外的端口资源。
[0018]本发明采用了特定的芯片解锁时序,使芯片的抗干扰性、用户数据安全度增加。否贝1J,在应用环境中,稍有干扰,就有可能使芯片解锁,或者不法分子可非常容易的获取用户在OTP存储器中存储的程序。
[0019]本发明所提供的串行数据格式及命令码,可非常容易的完成芯片的测试。
【附图说明】
[0020]关于本发明的优点与精神可以通过以下的发明详述及所附图式得到进一步的了解。
[0021]图1是本发明所述OTP型微控制器芯片的电路结构图;
[0022]图2是本发明所述OTP型微控制器芯片的解锁时序图;
[0023]图3是本发明所述OTP型微控制器芯片的数据传输帧格式;
[0024]图4是本发明所述OTP型微控制器芯片的测试流程图。
【具体实施方式】
[0025]下面结合附图详细说明本发明的具体实施例。
[0026]本发明的目的在于提供一种测试灵活性高、芯片面积小、抗干扰性强、用户数据安全的OTP型微控制器芯片的可测试性电路及测试方法。
[0027]为了实现上述目的,本发明公开一种OTP型微控制器芯片的可测试性电路。如图1所示,包括:串行时钟输入端口 PSCK,用于向该芯片输入串行时钟信号;串行数据输入端口 PSDI,用于向该芯片输入串行数据信号;串行数据输出端口 PSD0,用于从该芯片输出串行数据信号;外部时钟输入端口 CLK,用于向该芯片提供正常工作的主时钟;测试电路10,用于接收外部的测试指令及测试程序完成芯片的测试;0ΤΡ存储器20,用于存储用户程序并且在正常工作时向芯片提供控制信号;CPU50,用于执行测试程序及用户程序。
[0028]本发明还包括高压电平输入端口 VPP,用于向所述集成电路的高压检测电路30输入一高压电平信号。高压检测电路30,用于将所述高压电平信号VPP转换为同相位的低压电平信号VPP_ACT。多路选择器40,用于选择送入芯片控制电路的控制信号及送向CPU的运行程序是来自于OTP存储器20的用户程序还是来自于测试电路10测试程序;芯片控制电路(图中未视出),用于控制整个微控制器芯片的运行;时钟发生器60,用于产生芯片工作的主时钟CCLK。
[0029]在该串行时钟信号PSCK的控制下,通过串行数据输入端口 PSDI向测试电路10输入解锁指令、测试指令及测试程序;通过串行数据输出端口可以将内部的电路信号输出已对其进行测试。
[0030]该串行时钟输入端口、串行数据输入端口和串行数据输出端口可以和芯片的程序烧写端口共用,从而避免使用额外的端口资源。该测试电路10接收测试指令及测试程序,生成用于芯片测试的测试时钟及用于芯片控制电路的控制信号,并且该测试电路将测试程序暂存后送向CPU50执行。该测试电路10还可以通过测试指令将芯片内部的关键信号通过串行数据输出端口输出,从而对其进行检测、校准等操作.该测试时钟CL0CK_FT是由串行输入时钟经过使能控制后生成的时钟,两时钟同相位。该时钟发生器60在正常工作时选择外部时钟作为芯片的主时钟,在测试模式下,该时钟发生器选择测试时钟作为芯片的主时钟。
[0031]为了解释说明本发明,本实施例中定义芯片的内部复位时间长度为10ms,OTP存储器的烧写电压值高电平等于7.5V,X等于4,y等于1,m等于2,η等于I。
[0032]为了实现该上述发明目的,本发明公开一种OTP型微控制器芯片的可测试性电路结构图。如图1所示,该OTP型微控制器芯片的可测试性电路结构图包括:测试电路10、0ΤΡ存储器20、高压检测电路30、多路选择器40、CPU50、时钟发生器60。该可测试性电路还包括高压烧写引脚VPP、串行时钟输入引脚PSCK、串行数据输入引脚PSD1、串行数据输出引脚PSD0,外部时钟输入引脚CLK,其中VPP的低电平电压等于芯片的工作电压VDD,VPP的高电平电压等于OTP存储器的烧写电压值VH(VH>VDD),其他的PSCK、PSDI, PSDO引脚的逻辑电平值与通常的CMOS电路一致。
[0033]高压检测电路30用于检测引脚VPP的输入,并生成用于测试电路10解锁用的VPP.ACTo VPP_ACT是逻辑电平值与通常的CMOS电路一致的数字信号,其相位关系与VPP —致。
[0034]如图2所示,当整个芯片处于内部复位状态时,在VPP等于7.5V期间,PSDI引脚连续输入4个脉冲信号;接着在VPP等于低电平期间,PSDI引脚连续输入I个脉冲信号;接着在VPP等于高电平期间,PSDI引脚连续输入2个脉冲信号;接着在VPP等于低电平期间PSDI引脚连续输入I个脉冲信号。芯片内部的测试电路10对该输入信号序列进行监测,如符合图4所示的时序,则芯片进入解锁状态并将解锁标志信号hv_deteCt信号置I。在进入解锁状态之后,内部复位信号立刻变为无效状态。
[0035]如图3所示,本实施例中定义指令码的长度s为6,输入输出数据的长度g为16。在芯片进入解锁状态之后,PSCK、PSD1、PSD0引脚按照图3所示串行数据格式及命令码的定义,向OTP控制器中的测试电路10输入指令并输入数据或输入指令并读出数据。
[0036]如图4所示,图4是OTP型微控制器芯片的测试流程图。芯片的测试具体过程如下:
[0037]S101,如图2所示,当整个芯片处于内部复位状态时,在VPP等于7.5V期间,PSDI引脚连续输入4个脉冲信号;接着在VPP等于低电平期间,PSDI引脚连续输入I个脉冲信号;接着在VPP等于高电平期间,PSDI引脚连续输入2个脉冲信号;接着在VPP等于低电平期间PSDI引脚连续输入I个脉冲信号;芯片内部的测试电路对该输入信号序列进行监测,如符合图2所示的时序,则芯片进入解锁状态。在进入解锁状态之后,内部复位信号立刻变为无效状态。
[0038]S102,如图3所示,本实施例中定义指令码的长度s为6,输入/输出数据的长度g为16。在芯片进入解锁状态之后,PSCK、PSD1、PSDO引脚按照图3所示数据传输帧格式,向芯片测试电路输入指令并输入测试程序。所述的串行指令码为6位的功能测试指令。
[0039]S103,测试电路接收到正确的功能测试指令后,进入功能测试状态,并接收由串行数据输入端口 PSDI送来的测试程序,同时测试电路生成有效的测试模式信号M0D_FT与测试时钟CL0CK_FT ;时钟发生器选择来自于测试电路的测试时钟CL0CK_FT作为芯片工作的主时钟;
[0040]S104,在功能测试状态下,测试电路将串行的测试程序暂存转换成并行的测试程序并且生成相关的控制信号,将其一起送向多路选择器;
[0041]S105,在功能测试状态下,多路选择器将来自于测试电路的控制信号与测试程序分别送向控制电路与CPU ;
[0042]S106,在功能测试状态下,在控制电路的控制下,芯片CPU执行测试程序完成芯片的功能测试。
[0043]重复步骤SlOl至S106即可完成对整个芯片的测试。
[0044]与现有技术相比较,本发明中所提供的可测试性电路与测试方法可使测试程序随时修改,该特征相对于传统的采用特定OTP存储器区域存储测试程序的方法,大大提高了测试灵活性,减少了芯片面积,节约成本。并且测试端口可以与编程端口复用,以减少使用额外的端口资源。
[0045]本发明采用了特定的芯片解锁时序,使芯片的抗干扰性、用户数据安全度增加。否贝1J,在应用环境中,稍有干扰,就有可能使芯片解锁,或者不法分子可非常容易的获取用户在OTP存储器中存储的程序。
[0046]本发明所提供的串行数据格式及命令码,可非常容易的完成芯片的测试。
[0047]本说明书中所述的只是本发明的较佳具体实施例,以上实施例仅用以说明本发明的技术方案而非对本发明的限制。凡本领域技术人员依本发明的构思通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在本发明的范围之内。
【主权项】
1.一种基于一次性可编程微控制器芯片的测试电路,其特征在于,包括: 一解锁单元,所述解锁单元接收一电平信号以及一串行数据信号,当所述电平信号以及所述串行数据信号满足一特定时序时,所述解锁单元发送一解锁信号; 一译码单元,所述译码单元与所述解锁单元连接,所述译码单元接收到所述解锁信号后接收所述串行数据信号和一串行时钟信号并生成一测试信号和测试时钟信号; 一测试单元,所述测试单元与所述译码单元连接,所述测试单元在接收到所述测试信号后接收所述串行数据信号和所述测试时钟信号,所述测试单元将所述串行数据信号中的测试数据发送至一处理器,并将所述测试时钟信号作为所述处理器的时钟信号。2.如权利要求1所述的测试电路,其特征在于,所述特定时序指:在大于等于I毫秒的复位时间内,满足:所述电平信号为Vl时,所述解锁单元连续接收X个脉冲的串行数据信号;所述电平信号为V2时,所述解锁单元连续接收Y个脉冲的串行数据信号;电平信号为Vl时,所述解锁单元连续接收M个脉冲的串行数据信号;所述电平信号为V2时,所述解锁单元连续接收N个脉冲的串行数据信号;当所述V1、V2分别为高电平\低电平,或低电平\高电平,所述X、Y、M、N均大于等于I。3.如权利要求1所述的测试电路,其特征在于,所述串行数据信号包括位的二进制的指令编码以及g位的二进制的测试数据;其中s>l,g为8或16或32。4.一种集成电路,所述集成电路为一次性可编程存储器控制器电路,其特征在于,包括: 一电平输入端口,用于向所述集成电路输入一电平信号; 一串行时钟输入端口,用于向所述集成电路输入一串行时钟信号; 一串行数据输入端口,用于向所述集成电路输入一串行数据信号; 一测试电路,所述测试电路与一处理器连接,当所述电平信号以及所述串行数据信号满足一特定时序时,所述测试电路开始工作并向所述处理器发出测试数据。5.如权利要求4所述的集成电路,其特征在于,所述集成电路还包括一时钟发生器,用于为所述处理器提供一时钟信号,所述时钟发生器与所述测试电路和处理器连接,当所述测试电路开始工作,所述处理器的时钟信号为所述串行时钟信号。6.如权利要求4所述的集成电路,其特征在于,所述集成电路还包括一多路选择器,所述多路选择器的输入端连接所述测试电路与所述一次性可编程存储器,输出端连接所述处理器;当所述测试电路开始工作,所述多路选择器将所述测试数据输出至所述处理器,当所述测试电路不工作时,所述多路选择器将所述一次性可编程存储器中的数据输出至所述处理器。7.如权利要求4所述的集成电路,其特征在于,所述电平信号为高压电平信号。8.如权利要求7所述的集成电路,其特征在于,所述集成电路还包括一高压检测电路,用于将所述高压电平信号转换为一同相位的低压电平信号并发送至所述测试电路。9.如权利要求4所述的集成电路,其特征在于,所述特定时序指:在大于等于I毫秒的复位时间内,满足:所述电平信号为Vl时,所述测试电路连续接收X个脉冲的串行数据信号;所述电平信号为V2时,所述测试电路连续接收Y个脉冲的串行数据信号;电平信号为Vl时,所述测试电路连续接收M个脉冲的串行数据信号;所述电平信号为V2时,所述测试电路连续接收N个脉冲的串行数据信号;当所述V1、V2分别为高电平\低电平,或低电平\高电平,所述X、Y、M、N均大于等于I。10.如权利要求4所述的集成电路,其特征在于,所述串行数据信号包括:s位的二进制的指令编码以及g位的二进制的数据;其中s>l,g为8或16或32。11.如权利要求4所述的集成电路,其特征在于,所述集成电路还包括一串行数据输出端口,用于从所述集成电路输出一串行数据信号。12.—种基于一次性可编程存储器的测试方法,其特征在于,包括: 步骤一、接收一电平信号以及一串行数据信号,当所述电平信号以及所述串行数据信号满足一特定时序时,发送一解锁信号; 步骤二、接收所述串行数据信号和一串行时钟信号并生成一测试信号和测试时钟信号; 步骤三、将所述测试时钟信号作为主时钟信号并接收所述串行数据信号中的测试数据发送至一处理器运行。13.如权利要求12所述的测试方法,其特征在于,所述特定时序指:在大于等于I毫秒的复位时间内,满足:所述电平信号为Vl时,接收X个脉冲的串行数据信号;所述电平信号为V2时,所述测试电路连续接收Y个脉冲的串行数据信号;电平信号为Vl时,所述测试电路连续接收M个脉冲的串行数据信号;所述电平信号为V2时,所述测试电路连续接收N个脉冲的串行数据信号;当所述V1、V2分别为高电平\低电平,或低电平\高电平,所述X、Y、Μ、N均大于等于I。
【文档编号】G01R31/28GK105988074SQ201510075394
【公开日】2016年10月5日
【申请日】2015年2月12日
【发明人】杨维, 张文荣, 陆健, 王成, 王鹏, 徐学良
【申请人】上海晟矽微电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1