一种基于芯片生命周期的JTAG控制方法及装置与流程

文档序号:31879458发布日期:2022-10-21 22:48阅读:167来源:国知局
一种基于芯片生命周期的JTAG控制方法及装置与流程
一种基于芯片生命周期的jtag控制方法及装置
技术领域
1.本发明涉及芯片数据安全技术领域,具体涉及一种基于芯片生命周期的jtag控制方法及装置。


背景技术:

2.jtag(joint test action group,联合测试行动小组)是一种国际标准测试协议,主要用于芯片测试、程序下载和在线调试。jtag可以访问到芯片内部所有资源,如总线、sram、各模块的寄存器等。这给调试带来极大方便的同时,也严重威胁到了芯片内部数据的安全。
3.现有的jtag控制方法一般有以下两种:
4.(1)基于otp(one time programmable)中的单个控制位。jtag控制模块通过读取jtag控制位来控制jtag的开关,若控制位被熔断,则关闭jtag,否则使能jtag。此方法的优点是从可以从物理层面彻底禁止jtag,但由于otp的特性,此方法的缺点是jtag的禁止是不可逆的,jtag一旦被关闭就无法再次打开,在设备返修时无法再次通过jtag调试。
5.(2)基于口令和密钥的安全认证。芯片内部存在一个认证模块来控制jtag的开关,在使用jtag时,需要通过上位机输入口令或者密钥,认证模块对数据进验证,验证通过,使能jtag,否则关闭jtag。此方法的优点是从逻辑上禁止jtag,操作可逆,但缺点是操作特别繁杂,需要上位机工具的配合,且芯片每次上电都需要重新输入口令或密钥,降低了调试效率。
6.因此,急需一种既能够保证调试便利性,又能够保证jtag控制可逆性的jtag控制方法及装置。


技术实现要素:

7.本发明提出了一种基于芯片生命周期的jtag控制方法及装置,该方法及装置在不影响调试便利性的前提下,解决了数据安全的防护问题。
8.为实现上述目的,本发明采用了以下技术方案:
9.根据本发明的第一方面,提供了一种基于芯片生命周期的jtag控制方法,该方法包括:
10.获取芯片当前的生命周期状态;
11.根据芯片当前的生命周期状态,确定jtag当前的状态;
12.获取芯片生命周期状态转换方向,根据生命周期状态转换方向,对jtag状态进行调整。
13.如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述芯片生命周期状态包括研发、出货和返修三种状态。
14.如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述芯片的生命状态转换方向包括由研发状态转换到出货状态和由出货状态转换到返修状态两种。
15.如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述获取芯片生命周期状态转换方向,根据生命周期状态转换方向,对jtag状态进行调整,包括:
16.获取芯片生命周期转换方向,若芯片生命周期状态由研发状态到出货状态,则jtag状态由使能变为关闭;若芯片生命周期状态由出货状态转换到返修状态,则jtag状态由关闭变为使能。
17.如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述芯片生命周期状态转换为单向不可逆,通过otp存储器的一次性编程实现。
18.如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述jtag状态由关闭变为使能时,采用公钥密码算法中的签名验签机制进行安全认证。
19.所述采用公钥密码算法中的签名验签机制进行安全认证,包括:
20.上位机发起认证请求,认证模块返回随机数;上位机使用私钥对随机数进行签名,并将签名值发送至认证模块;认证模块对签名值进行验签,验签通过后,烧写otp,将芯片生命周期由出货状态变迁为返修状态。
21.根据本发明的第二方面,提供了一种基于芯片生命周期的jtag控制装置,该控制装置包括:
22.状态获取模块,用于获取芯片当前的生命周期状态,并根据芯片当前的生命周期状态,确定jtag当前的状态;
23.转换方向获取模块,用于获取芯片生命周期状态转换方向;
24.jtag状态调整模块,用于根据生命周期状态转换方向,对jtag状态进行调整。
25.如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,该控制装置还包括认证模块;所述认证模块,用于在jtag状态由关闭变为使能时,采用公钥密码算法中的签名验签机制进行安全认证。
26.与现有技术相比,本发明具有以下有益效果:
27.本发明在otp中存储芯片生命周期,通过读取芯片的生命周期状态来控制jtag的使能与关闭;而且芯片生命周期状态的变更需要通过口令认证,以此来保证从低权限状态到高权限状态变更的安全性。本发明在保证了调试便利性的同时,也能保证jtag控制的可逆性。
附图说明
28.图1是本发明中jtag控制方法的方法流程图;
29.图2是本发明中芯片生命周期、jtag状态、otp中存储值和所有人的关系图;
30.图3是本发明中芯片生命周期状态变更示意图;
31.图4是本发明中安全认证方法的流程图;
32.图5是本发明中jtag控制逻辑图;
33.图6是本发明中jtag控制装置的方框图。
具体实施方式
34.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本发明保护的范围。
35.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
36.本发明提出了一种基于芯片生命周期的jtag控制方法及装置,该控制方法及装置通过将芯片生命周期分成三个阶段,通过获取芯片当前的生命周期状态来控制jtag的使能,而且芯片生命周期状态的变更需要通过口令认证,以此来保证从低权限状态到高权限状态变更的安全性。本发明在保证了调试便利性的同时,也能保证jtag控制的可逆性。
37.图1示出了本发明中jtag控制方法100的方法流程图。
38.在框110中,获取芯片当前的生命周期状态。所述芯片生命周期状态包括研发、出货和返修三种状态。三个生命周期的状态变迁是单向且不可逆的,由otp的一次性编程特性来保证(即otp中一个bit只能从0编程为1,不能从1编程为0)。
39.在框120中,根据芯片当前的生命周期状态,确定jtag当前的状态。图2给出了芯片生命周期、jtag状态、otp中存储值和所有人的关系图。如图2所示,当芯片的生命周期状态为研发状态时,jtag状态为开,即jtag为使能状态,此时otp中存储值为00,芯片的所有人为厂商。当芯片的生命周期状态为出货状态时,jtag状态为关闭,此时otp中存储值为01,芯片的所有人为用户。当芯片的生命周期状态为返修状态时,jtag状态为开,即jtag为使能状态,此时otp中存储值为11,芯片的所有人为厂商。
40.在框130中,获取芯片生命周期状态转换方向,根据生命周期状态转换方向,对jtag状态进行调整。如图3所示,芯片生命周期状态会在三种状态之间进行转换,转换方向有由研发状态转换到出货状态和由出货状态转换到返修状态两种。当芯片生命周期由研发状态转换到出货状态时,jtag状态由使能状态变为关闭状态,不需要进行安全认证。当芯片生命周期由出货状态转换到返修状态时,jtag状态从关闭状态变为使能状态,需要进行安全认证。安全认证方法如图4所示,采用公钥密码算法中的签名验签机制,otp中存储验签用的公钥,具体流程如下:
41.上位机发起认证请求,认证模块返回随机数;上位机使用私钥对随机数进行签名,并将签名值发送至认证模块;认证模块对签名值进行验签,验签通过后,烧写otp,将芯片生命周期由出货状态变迁为返修状态。
42.图5示出了本发明中jtag控制逻辑图,从图5中可以看出,jtag最初的状态为关闭状态,即初始化时,jtag的状态为关闭状态。先获取芯片当前的生命周期状态,判断一下当前的生命周期状态是否为出货状态,若是出货状态,则继续运行;若不是出货状态,则说明当前的生命周期状态为研发状态或者返修状态,将jtag打开,即令jtag为使能状态,然后继续运行。所述继续运行,指的是返回到图5中的读取生命周期状态这个方框,继续执行该程序。
43.图6示出了一种基于芯片生命周期的jtag控制装置600,该控制装置600包括:状态获取模块610、转换方向获取模块620、jtag状态调整模块630和认证模块640。
44.状态获取模块610,用于获取芯片当前的生命周期状态,并根据芯片当前的生命周期状态,确定jtag当前的状态。
45.转换方向获取模块620,用于获取芯片生命周期状态转换方向。
46.jtag状态调整模块630,用于根据生命周期状态转换方向,对jtag状态进行调整。
47.认证模块640,用于在jtag状态由关闭变为使能时,采用公钥密码算法中的签名验签机制进行安全认证。
48.相比于仅仅在otp中存储jtag使能标识,本发明具有可逆性,在返厂时可以再次通过jtag调试。相较于单纯的口令认证方式,本发明操作简单,不用每次都输入口令进行验证。
49.以上所述实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1