用于PUF的电路结构以及获得PUF值的方法与流程

文档序号:17048527发布日期:2019-03-05 19:48阅读:629来源:国知局
用于PUF的电路结构以及获得PUF值的方法与流程
本发明涉及半导体
技术领域
,特别涉及一种用于puf(physicalunclonablefunction,物理不可克隆功能)的电路结构以及获得puf值的方法。
背景技术
:目前,用于识别一个器件最好的私密钥匙,就是利用所谓的物理不可克隆功能(puf)计算得出的密钥,puf基于器件生产制造期间随意产生的物理特性,由于加工过程中微小的不可控的随机变化,使得这些特点成为每个器件独一无二的特点。虽然这些变化无法预先确定或控制,但是如果它们可以在足够低的噪声中测量或足够稳定,则它们可以用于puf。这些测量可用于建构该器件特有的私有密钥,puf是无生命器件的生物测定特征,与人类的指纹或视网膜类似。与由相同dna“制造”却具有独特指纹的双胞胎一样,采用相同蓝本的工艺制造的无生命物体故有的puf也是独一无二的。由于无法避免的小的变化,在一定程度上,完美的克隆实际上是不可能的,而puf正是利用了这一事实来提供优势。目前,在一些情况下,可以利用传统的sram(staticrandomaccessmemory,静态随机存取存储器)或锁存器作为puf。但是,随着器件越做越小,芯片的产量也越来越大,因此随着数量的增大,传统的sram(或锁存器)puf数量也直线上升,而且每个sram包括六个晶体管(每个锁存器包括四个晶体管),从而导致puf面积比重增加。技术实现要素:本发明的发明人发现上述现有技术中存在问题,并因此针对所述问题中的至少一个问题提出了一种新的技术方案。根据本发明的第一方面,提供了一种用于物理不可克隆功能puf的电路结构,包括:晶体管阵列,所述晶体管阵列包括n×m个晶体管,其中n和m为正整数,且n≥1,m≥2;其中每个所述晶体管的第一电极适于被施加电源电压;第一解码器,其包括n个第一信号端,其中,第i个所述第一信号端通过第i条字线连接第i行的晶体管的栅极,其中0≤i≤n-1,且i为整数;所述第一解码器用于选择任意一行的晶体管并使得该行晶体管导通;第二解码器,其包括m个第二信号端,其中,第j个所述第二信号端通过第j条位线连接第j列的晶体管的第二电极,其中0≤j≤m-1,且j为整数;所述第二解码器用于在被选择导通的所述行的晶体管中选择两个晶体管,并通过对应的两个第二信号端获得这两个晶体管中的第一个晶体管的第二电极的第一输出电压和第二个晶体管的第二电极的第二输出电压,并将所述第一输出电压和所述第二输出电压输送至比较单元;以及所述比较单元,用于比较第一输出电压和第二输出电压的大小,并根据比较结果确定puf值并输出该puf值。在一个实施例中,所述比较单元若判断所述第一输出电压大于或等于所述第二输出电压,则确定puf值为1;若判断所述第一输出电压小于所述第二输出电压,则确定puf值为0。在一个实施例中,所述晶体管为nmos晶体管,所述第一电极为漏极,所述第二电极为源极;或者,所述晶体管为pmos晶体管,所述第一电极为源极,所述第二电极为漏极。在一个实施例中,所述第二解码器包括:第一输出端和第二输出端;所述比较单元包括:第一放大器、第二放大器和比较器;所述第二解码器的第一输出端连接至所述第一放大器的输入端,所述第一放大器的输出端连接至所述比较器的第一输入端;所述第二解码器的第二输出端连接至所述第二放大器的输入端,所述第二放大器的输出端连接至所述比较器的第二输入端;其中,所述第一放大器从所述第二解码器接收所述第一输出电压,将所述第一输出电压放大后输出至所述比较器;所述第二放大器从所述第二解码器接收所述第二输出电压,将所述第二输出电压放大后输出至所述比较器;所述比较器比较被放大后的所述第一输出电压和被放大后的所述第二输出电压的大小,根据比较结果确定puf值并输出该puf值。在一个实施例中,所述第一放大器对接收到的所述第一输出电压的放大倍数与所述第二放大器对接收到的所述第二输出电压的放大倍数相等。在一个实施例中,根据所述晶体管阵列确定所述电路结构的比特数量为在一个实施例中,所述电路结构还包括:逻辑控制单元,与所述第二解码器的控制端连接,用于向所述第二解码器输出第一控制编码信号,控制所述第二解码器选择与所述第一控制编码信号对应的两个晶体管来获得相应的第一输出电压和第二输出电压。在一个实施例中,所述逻辑控制单元用于接收数字编码信号,并将所述数字编码信号转换为第一控制编码信号,将所述第一控制编码信号输出到所述第二解码器。在一个实施例中,所述逻辑控制单元的第二控制输出端与所述第一解码器的控制端连接;所述逻辑控制单元还用于向所述第一解码器输出第二控制编码信号,控制所述第一解码器选择一行晶体管并使得该行晶体管导通。在本发明的实施例中,提供了一种用于puf的电路结构。在该电路结构中,每个比特单元仅需一个晶体管,与现有技术中的传统的srampuf电路或锁存器puf电路相比,本发明的电路结构可以显著减小puf的面积。根据本发明的第二方面,提供了一种利用如前所述的电路结构获得puf值的方法,其特征在于,包括:对所述晶体管阵列中的每个所述晶体管的第一电极施加电源电压;利用所述第一解码器选择任意一行的晶体管并使得该行晶体管导通;利用所述第二解码器在被选择导通的所述行的晶体管中选择两个晶体管,并获得这两个晶体管中的第一个晶体管的第二电极的第一输出电压和第二个晶体管的第二电极的第二输出电压,并将所述第一输出电压和所述第二输出电压输送至比较单元;以及利用所述比较单元比较所述第一输出电压和所述第二输出电压的大小,并根据比较结果确定puf值并输出该puf值。在一个实施例中,根据比较结果确定puf值的步骤包括:若所述第一输出电压大于或等于所述第二输出电压,则确定puf值为1;若所述第一输出电压小于所述第二输出电压,则确定puf值为0。在一个实施例中,利用所述第二解码器在被选择导通的所述行的晶体管中选择两个晶体管的步骤包括:利用逻辑控制单元向所述第二解码器输出第一控制编码信号,控制所述第二解码器选择与所述第一控制编码信号对应的两个晶体管来获得相应的第一输出电压和第二输出电压。在一个实施例中,利用逻辑控制单元向所述第二解码器输出第一控制编码信号的步骤包括:所述逻辑控制单元接收数字编码信号,并将所述数字编码信号转换为第一控制编码信号,将所述第一控制编码信号输出到所述第二解码器。在一个实施例中,利用所述第一解码器选择任意一行的晶体管并使得该行晶体管导通的步骤包括:利用所述逻辑控制单元向所述第一解码器输出第二控制编码信号,控制所述第一解码器选择一行晶体管并使得该行晶体管导通。通过上述方法,利用本发明实施例的电路结构实现了获得puf的方法。通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。附图说明构成说明书的一部分的附图描述了本发明的实施例,并且连同说明书一起用于解释本发明的原理。参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:图1a是示意性地示出现有技术中具有一个实施例的puf的sram的电路结构图。图1b是示意性地示出现有技术中具有另一个实施例的puf的sram的电路结构图。图2a是示意性地示出现有技术中的锁存器(latch)的电路结构图。图2b是示意性地示出现有技术中具有一个实施例的puf的锁存器的电路结构图。图2c是示意性地示出现有技术中具有另一个实施例的puf的锁存器的电路结构图。图3是示意性地示出根据本发明一个实施例的用于puf的电路结构示意图。图4是示意性地示出根据本发明一个实施例的用于puf的电路结构的连接图。图5是示意性地示出根据本发明另一个实施例的用于puf的电路结构的连接图。图6示意性地示出根据本发明一个实施例的比较单元的电路连接图。图7是示出利用本发明的一个实施例的电路结构的检测结果示意图。图8是示出利用根据本发明一个实施例的电路结构获得puf值的方法的流程图。具体实施方式现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。图1a是示意性地示出现有技术中具有一个实施例的puf的sram的电路结构图。图1b是示意性地示出现有技术中具有另一个实施例的puf的sram的电路结构图。这里的sram表示srampuf的电路结构的一个比特单元。如图1a和图1b所示,sram包括:两个pmos(p-channelmetaloxidesemiconductor,p沟道金属氧化物半导体)晶体管p1和p2(作为pu(pullup,上拉)晶体管),以及两个nmos(n-channelmetaloxidesemiconductor,n沟道金属氧化物半导体)晶体管n1和n2(作为pd(pulldown,下拉))。本领域技术人员应该理解,sram还包括两个pg(passgate,通过门)晶体管,只是图1a和图1b未示出。如图1a所示,在p1的阈值电压的绝对值|vtp1|大于p2的阈值电压的绝对值|vtp2|的情况下,节点out的数据为“0”,而另一节点outb的数据为“1”,在这样的情况下,该sram输出一个puf值,例如可以为1。如图1b所示,在p1的阈值电压的绝对值|v’tp1|小于p2的阈值电压的绝对值|v’tp2|的情况下,节点out的数据为“1”,而另一节点outb的数据为“0”,在这样的情况下,该sram输出另一个puf值,例如可以为0。图2a是示意性地示出现有技术中的锁存器(latch)的电路结构图。图2b是示意性地示出现有技术中具有一个实施例的puf的锁存器的电路结构图。图2c是示意性地示出现有技术中具有另一个实施例的puf的锁存器的电路结构图。这里的锁存器表示锁存器puf的电路结构的一个比特单元。如图2a、图2b和图2c所示,该锁存器有两个反相器21和22。第一个反相器21可以包括一个pmos晶体管p1和一个nmos晶体管n1(图中未示出),第二个反相器22可以包括一个pmos晶体管p2和一个nmos晶体管n2(图中未示出)。如图2a所示,在第一个反相器的pmos晶体管p1的阈值电压的绝对值|vtp1|大于或等于第二个反相器的pmos晶体管p2的阈值电压的绝对值|vtp2|的情况下,节点out的数据为“-1”,而另一节点outb的数据为“-0”。需要说明的是,这里的“-1”和“-0”的负号仅是为了与其他状态(图2b和图2c的状态)区分开,并不一定真实地存在该负号。实际上,现有技术中通常出现图2b和图2c所示的状态。如图2b所示,在第一个反相器的pmos晶体管p1的阈值电压的绝对值|vtp1|小于第二个反相器的pmos晶体管p2的阈值电压的绝对值|vtp2|的情况下,节点out的数据为“0”,而另一节点outb的数据为“1”。在这样的情况下,该锁存器输出一个puf值,例如可以为0。如图2c所示,在第一个反相器的pmos晶体管p1的阈值电压的绝对值|vtp1|远大于第二个反相器的pmos晶体管p2的阈值电压的绝对值|vtp2|的情况下,节点out的数据为“1”,而另一节点outb的数据为“0”。在这样的情况下,该锁存器输出另一个puf值,例如可以为1。随着器件越做越小,芯片的产量也越来越大,因此随着数量的增大,传统的sram或者锁存器的puf数量也直线上升,而且每个sram包括六个晶体管,每个锁存器可以包括四个晶体管,从而导致puf面积比重增加。图3是示意性地示出根据本发明一个实施例的用于puf的电路结构示意图。如图3所示,该电路结构可以包括晶体管阵列30。该晶体管阵列30可以包括n×m个晶体管,其中n和m为正整数,且n≥1,m≥2。其中每个晶体管的第一电极适于被施加电源电压。在后面的描述中,将结合图4或图5详细描述该晶体管阵列。在该实施例中,每个晶体管可以作为一个比特单元。如图3所示,该电路结构还可以包括第一解码器31。该第一解码器31可以包括n个第一信号端(图3中未示出)。其中,第i个该第一信号端通过第i条字线连接第i行的晶体管的栅极,其中0≤i≤n-1,且i为整数。该第一解码器用于选择任意一行的晶体管并使得该行晶体管导通,例如使得该行晶体管的栅极被施加栅极电压以使得该行的晶体管导通。如图3所示,该电路结构还可以包括第二解码器32。该第二解码器可以包括m个第二信号端(图3中未示出)。其中,第j个该第二信号端通过第j条位线连接第j列的晶体管的第二电极,其中0≤j≤m-1,且j为整数。该第二解码器用于在被选择导通的所述行的晶体管中选择两个晶体管,并通过对应的两个第二信号端获得这两个晶体管中的第一个晶体管的第二电极的第一输出电压和第二个晶体管的第二电极的第二输出电压,并将该第一输出电压和该第二输出电压输送至比较单元33。如图3所示,该电路结构还可以包括比较单元33。该比较单元33用于比较第一输出电压和第二输出电压的大小,并根据比较结果确定puf值并输出该puf值。在一个实施例中,该比较单元33若判断第一输出电压大于或等于第二输出电压,则确定puf值为1;若判断第一输出电压小于第二输出电压,则确定puf值为0。由于在制造过程中,每个晶体管与另一个晶体管不会完全相同,因此可以利用这些晶体管的物理特性来获得puf,例如,在晶体管被施加栅极电压从而导通后,这些晶体管的导通电阻不完全相同,因此在晶体管的第一电极(例如漏极或源极)施加电源电压后,在第二电极(例如源极或漏极)将获得输出电压,这些输出电压是不完全相等的,这样在被选择导通的所述行的晶体管中任意选择两个晶体管,比较这两个晶体管的输出电压的大小,从而可以确定puf值。在本发明的实施例中,提供了一种用于puf的电路结构。在该电路结构中,每个比特单元仅需一个晶体管,而传统的srampuf电路中每个比特单元需要由6个晶体管组成,传统的锁存器puf电路中每个比特单元需要4个晶体管组成,因此本发明的电路结构可以显著减小puf的面积。在一个实施例中,如图3所示,该电路结构还可以包括逻辑控制单元34。该逻辑控制单元34的第一控制输出端与第二解码器32的控制端连接。该逻辑控制单元可以用于向第二解码器32输出第一控制编码信号,控制该第二解码器32选择与该第一控制编码信号对应的两个晶体管来获得相应的第一输出电压和第二输出电压。例如,该逻辑控制单元34可以用于接收数字编码信号(例如可以称为第一数字编码信号),并将该数字编码信号转换为第一控制编码信号,将该第一控制编码信号输出到第二解码器。在一个实施例中,该逻辑控制单元34的第二控制输出端与第一解码器31的控制端连接。该逻辑控制单元34还可以用于向该第一解码器31输出第二控制编码信号,控制该第一解码器31选择一行晶体管并使得该行晶体管导通。例如,该逻辑控制单元34可以用于接收另一数字编码信号(例如可以称为第二数字编码信号),并将该数字编码信号转换为第二控制编码信号,将该第二控制编码信号输出到第一解码器。图4是示意性地示出根据本发明一个实施例的用于puf的电路结构的连接图。如图4所示,该电路结构包括晶体管阵列301,该晶体管阵列301是图3所示的晶体管阵列30的一个具体实施方式。在该实施例中,如图4所示,该晶体管可以为nmos晶体管,其中,该nmos晶体管的第一电极为漏极,该nmos晶体管的第二电极为源极。如图4所示,该晶体管阵列301可以包括n×m个nmos晶体管,其中n和m为正整数,且n≥1,m≥2。其中每个nmos晶体管的漏极(即第一电极)适于被施加电源电压。以nmos晶体管41为例,该nmos晶体管41的漏极411适于被施加电源电压(power)。在该实施例中,每个nmos晶体管可以作为一个比特单元。该晶体管阵列可以减少puf的面积。在一个实施例中,根据晶体管阵列确定该电路结构的比特数量为该比特数量可以是puf值的数量。由于在实际生产中,m的数量比较大,例如可以是8个、10个或更多个等,因此相比现有技术中的srampuf电路结构的比特数量(传统的电路是根据单元数量来确定比特数量,例如具有n×m个sram单元的电路结构的比特数量为n×m),在这样的情况下,本发明的电路结构的比特数量可以显著增加,这样在得到与现有技术相同的比特数量的情况下,本发明所需要的比特单元的数量更少,电路面积也更小。因此,本发明除了可以减少面积,还可以增加比特数量,换言之,本发明可以有效的大幅度提升单位面积可产生的比特数量。如图4所示,该电路结构还可以包括第一解码器31。该第一解码器31可以包括n个第一信号端311。其中,第i个第一信号端311i通过第i条字线连接第i行的晶体管的栅极,其中0≤i≤n-1,且i为整数。例如,第0个第一信号端3110通过第0条字线wl0连接第0行的nmos晶体管的栅极(例如nmos晶体管41的栅极413)。又例如,第1个第一信号端3111通过第1条字线wl1连接第1行的nmos晶体管的栅极。又例如,第n-1个第一信号端311n-1通过第n-1条字线wln-1连接第n-1行的nmos晶体管的栅极。该第一解码器31用于选择任意一行的nmos晶体管并使得该行nmos晶体管的栅极被施加栅极电压以使得该行的晶体管导通。例如,第一解码器31选择哪一行的nmos晶体管,就通过对应该行晶体管的第一信号端311向对应的字线输出栅极电压(例如可以是高于或等于栅极阈值电压(对于nmos晶体管,该栅极阈值电压为正电压)的正电压),从而使得该行的晶体管导通。如图4所示,该电路结构还可以包括第二解码器32。该第二解码器32可以包括m个第二信号端322。其中,第j个该第二信号端322通过第j条位线连接第j列的nmos晶体管的源极(即第二电极),其中0≤j≤m-1,且j为整数。例如,第0个第二信号端3220通过第0条位线bl0连接第0列的nmos晶体管的源极(例如nmos晶体管41的源极412)。又例如,第1个第二信号端3221通过第1条位线bl1连接第1列的nmos晶体管的源极。又例如,第m-1个第二信号端322m-1通过第m-1条位线blm-1连接第m-1列的nmos晶体管的源极。该第二解码器32还可以包括:第一输出端326和第二输出端328。该第二解码器32通过该第一输出端326和该第二输出端328与比较单元33相连。此外,该第二解码器32还包括控制端324,该第二解码器32通过该控制端324与逻辑控制单元34相连。该第二解码器32用于在被选择导通的所述行的nmos晶体管中选择两个nmos晶体管,并通过对应的两个第二信号端322获得这两个nmos晶体管中的第一个nmos晶体管的源极的第一输出电压v1和第二个nmos晶体管的源极的第二输出电压v2,并将该第一输出电压v1和该第二输出电压v2输送至比较单元33。如图4所示,该电路结构还可以包括比较单元33。该比较单元33用于比较第一输出电压v1和第二输出电压v2的大小,并根据比较结果确定puf值并输出该puf值。例如,若v1≥v2,则确定puf值为1;若v1<v2,则确定puf值为0。如图4所示,该电路结构还可以包括逻辑控制单元34。该逻辑控制单元34的第一控制输出端341与第二解码器32的控制端324连接。该逻辑控制单元34可以用于接收数字编码信号,并将该数字编码信号转换为第一控制编码信号,将该第一控制编码信号输出到第二解码器,控制该第二解码器32选择与该第一控制编码信号对应的两个晶体管来获得相应的第一输出电压和第二输出电压。表1数字编码信号转换为第一控制编码信号的数据转换表m3m2m1m0s5s4s3s2s1s00000000011000100010100100010010011010001010010000101010001100110001010011101001010001000101001001100101001010010111001001100011000110110100011100000001111000000表1是根据本发明一个实施例的逻辑控制单元将数字编码信号转换为第一控制编码信号的数据转换表。在该实施例中,假设晶体管阵列有6列晶体管(即第0列至第5列)。在表1中,m0~m3表示数字编码信号,s0~s5表示第一控制编码信号,用于控制选择某一行的第0列至第5列晶体管中的两个晶体管。这里的数字编码信号可以是逻辑控制单元接收到的矩形波信号,第一控制编码信号可以是逻辑控制单元发出的矩形波信号。例如,第一解码器选择第1行的晶体管导通,逻辑控制单元34接收到数字编码信号0000,则将该数字编码信号转换为第一控制编码信号000011,并将该第一控制编码信号000011输出到第二解码器32,控制该第二解码器32选择该第1行的晶体管中的第0列和第1列晶体管来获得相应的第一输出电压和第二输出电压,例如,可以将该导通的第1行的第0个晶体管输出的电压作为第一输出电压,该导通的第1行的第1个晶体管输出的电压作为第二输出电压。第二解码器在获得这两个输出电压后,将这两个输出电压输送到比较单元。比较单元通过比较这两个输出电压的大小来确定puf值,例如第一输出电压小于第二输出电压,则确定puf值为0,从而得到该电路结构的第1行第0列晶体管和第1行第1列晶体管所确定的puf值是0。在一个实施例中,如图4所示,该逻辑控制单元34的第二控制输出端342与第一解码器31的控制端312连接。该逻辑控制单元34还可以用于向第一解码器31输出第二控制编码信号,控制该第一解码器31选择一行晶体管并使得该行晶体管导通。在本发明的实施例中,上述电路结构可以被设置在芯片上。当检测某个芯片是不是所需要的芯片时,可以检测上述电路结构的第1行第0列晶体管和第1行第1列晶体管所确定的puf值是否为0,如果为0,则检测通过,所检测的芯片即为所需的芯片。当然,上述实施例只是利用某一行的两个晶体管的物理特性作为该电路结构的puf值,实际上,还可以确定多个puf值来组成puf序列值。例如,还可以在第1行晶体管导通的情况下,逻辑控制单元34接收到数字编码信号0001、0010、0100、0101等,从而得到相应的puf值,或者还可以在第2行晶体管导通的情况下,逻辑控制单元34接收到数字编码信号0000、0001、0100、0101等,从而得到相应的puf值,将得到的这些puf值按照一定的顺序排列起来,就可以得到puf序列值。图5是示意性地示出根据本发明另一个实施例的用于puf的电路结构的连接图。如图5所示,该电路结构包括晶体管阵列302,该晶体管阵列302是图3所示的晶体管阵列30的另一个具体实施方式。在该实施例中,如图5所示,该晶体管可以为pmos晶体管,其中,该pmos晶体管的第一电极为源极,该pmos晶体管的第二电极为漏极。图5所示的电路结构与图4所示的电路结构基本相同,所不同的是:图4所示的电路结构中的晶体管阵列是nmos晶体管阵列,而图5所示的电路结构的晶体管阵列是pmos晶体管阵列。如图5所示,该晶体管阵列302可以包括n×m个pmos晶体管,其中n和m为正整数,且n≥1,m≥2。其中每个pmos晶体管的源极(即第一电极)适于被施加电源电压。以pmos晶体管51为例,该pmos晶体管51的源极511适于被施加电源电压。这些pmos晶体管的栅极被连接到第一解码器31的相应的第一信号端311,例如该pmos晶体管51的栅极513被连接到第一解码器31的第0个第一信号端3110。这些pmos晶体管的漏极(即第二电极)连接至第二解码器32的相应的第二信号端322,例如该pmos晶体管51的漏极512被连接到第二解码器32的第0个第二信号端3220。关于图5所示的电路结构的其他器件或单元,例如第一解码器31、第二解码器32、比较单元33和逻辑控制单元34在前面已经详细描述,这里不再赘述。这里需要说明的是,在图5中,由于晶体管阵列采用pmos晶体管阵列,因此,第一解码器31在选择某一行的晶体管导通时,输出的栅极电压是低于栅极阈值电压(对于pmos晶体管,该栅极阈值电压是负电压)的负电压。图6示意性地示出根据本发明一个实施例的比较单元的电路连接图。如图6所示,该比较单元33可以包括:第一放大器331、第二放大器332和比较器333。第二解码器32的第一输出端326连接至该第一放大器331的输入端,该第一放大器331的输出端连接至该比较器333的第一输入端3331。第二解码器32的第二输出端328连接至该第二放大器332的输入端,该第二放大器332的输出端连接至该比较器333的第二输入端3332。该第一放大器331从第二解码器32接收第一输出电压,将该第一输出电压放大后输出至比较器333。第二放大器332从第二解码器32接收第二输出电压,将该第二输出电压放大后输出至比较器333。例如,该第一放大器331对接收到的第一输出电压的放大倍数与该第二放大器332对接收到的第二输出电压的放大倍数相等。该比较器333比较被放大后的第一输出电压和被放大后的第二输出电压的大小,根据比较结果确定puf值并输出该puf值。通常,第一输出电压和第二输出电压都比较小,不容易比较它们的大小,因此,在该实施例中,可以先将第一输出电压和第二输出电压放大相同的倍数,然后比较放大后的这两个输出电压,从而更容易确定puf值。图7是示出利用本发明的一个实施例的电路结构的检测结果示意图。该结果图是检测了1000个样品的某两个相同位置的晶体管后的puf输出(横坐标)以及相应的样品数量(纵坐标)。从图7中可以看出,puf值更趋向于输出低电位(即“0”)和高电位(即“1”)。表2检测得到的晶体管输出电压与puf的对应数据表表2是从图7的样品抽取的检测得到的晶体管的部分输出电压与puf的对应数据表。其中,“la”表示左边的晶体管(可以看作两个晶体管中的第一个晶体管)对应的输出电压(例如第一输出电压),“ra”表示右边的晶体管(可以看作两个晶体管中的第二个晶体管)对应的输出电压(例如第二输出电压)。例如第一组数据,la=337mv,ra=469.3mv,la<ra,则输出puf值为0,其他数据类似。图8是示出利用根据本发明一个实施例的电路结构获得puf值的方法的流程图。在步骤s801,对晶体管阵列中的每个晶体管的第一电极施加电源电压。在步骤s802,利用第一解码器选择任意一行的晶体管并使得该行晶体管导通。在一个实施例中,该步骤s802可以包括:利用逻辑控制单元向第一解码器输出第二控制编码信号,控制该第一解码器选择一行晶体管并使得该行晶体管导通。在步骤s803,利用第二解码器在被选择导通的该行的晶体管中选择两个晶体管,并获得这两个晶体管中的第一个晶体管的第二电极的第一输出电压和第二个晶体管的第二电极的第二输出电压,并将第一输出电压和第二输出电压输送至比较单元。在一个实施例中,利用第二解码器在被选择导通的该行的晶体管中选择两个晶体管的步骤可以包括:利用逻辑控制单元向第二解码器输出第一控制编码信号,控制第二解码器选择与该第一控制编码信号对应的两个晶体管来获得相应的第一输出电压和第二输出电压。在一个实施例中,利用逻辑控制单元向第二解码器输出第一控制编码信号的步骤可以包括:该逻辑控制单元接收数字编码信号,并将该数字编码信号转换为第一控制编码信号,将该第一控制编码信号输出到第二解码器。在步骤s804,利用比较单元比较第一输出电压和第二输出电压的大小,并根据比较结果确定puf值并输出该puf值。在一个实施例中,根据比较结果确定puf值的步骤可以包括:若第一输出电压大于或等于第二输出电压,则确定puf值为1;若第一输出电压小于第二输出电压,则确定puf值为0。通过上述方法,利用本发明实施例的电路结构实现了获得puf的方法。进一步地,利用得到的该puf可以检测芯片是否为所期望的芯片。在一个实施例中,可以确定多个puf值,并将这些puf值按照一定的顺序排列起来,从而组成puf序列值。至此,已经详细描述了本发明。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1