基于晶体管的puf设备

文档序号:1158946 发布日期:2020-09-15 浏览:12次 >En<

阅读说明:本技术 基于晶体管的puf设备 (Transistor-based PUF device ) 是由 J·E·D·赫维茨 于 2020-03-06 设计创作,主要内容包括:本公开涉及基于晶体管的PUF设备。本公开涉及用于生成持久性随机数的PUF设备和方法。生成的数是随机的,因为每个特定的PUF设备实例都应生成与所有其他PUF设备的实例随机不同的数,并且是持久的,因为每个PUF设备的特定实例都应在可接受的误差纠正公差内重复生成相同的数。通过选择一个或多个PUF单元(每个均包括设计相同的匹配的晶体管对)并比较该对的导通特性(例如,导通阈值电压或栅-源电压)来确定持久性随机数。每个选定的晶体管对的导通特性差异是由晶体管之间的随机制造差异引起的。这会导致PUF设备的每个不同实例之间的随机性,并且随着时间的推移应该相对稳定以提供所生成数的持久性。(The present disclosure relates to transistor-based PUF devices. The present disclosure relates to PUF devices and methods for generating persistent random numbers. The generated numbers are random because each particular instance of a PUF device should generate a number that is randomly different from all other instances of PUF devices, and persistent because each particular instance of a PUF device should repeatedly generate the same number within an acceptable error correction tolerance. Persistent random numbers are determined by selecting one or more PUF cells (each comprising a matched pair of transistors of identical design) and comparing the turn-on characteristics (e.g., turn-on threshold voltage or gate-source voltage) of the pair. The difference in the turn-on characteristics of each selected transistor pair is caused by random manufacturing differences between the transistors. This results in randomness between each different instance of the PUF device and should be relatively stable over time to provide persistence of the generated numbers.)

基于晶体管的PUF设备

技术领域

本公开涉及基于晶体管的物理不可克隆函数(PUF)。

背景技术

物理不可克隆函数或“PUF”是一种物理实体,能够为该特定PUF所特有的给定输入(“挑战”)生成输出(“响应”),使得可以将其视为“指纹”。这种能力通常是通过设计PUF来实现的,其输出方式取决于由于制造上的细微变化而在每个装置中随机不同的特征。因此,即使完全了解其电路布局,也无法轻易地以正确的指纹来复制PUF。该响应可以用于各种不同目的,例如在加密操作中以确保与包含PUF的装置之间的通信安全,或者用于对包括PUF的装置身份进行身份验证的方法等。

发明内容

本公开涉及用于生成持久性随机数的PUF设备。数是随机的,因为每个特定的PUF设备实例都应生成与所有其他PUF设备的实例随机不同的数,并且是持久的,因为每个PUF设备的特定实例都应在可接受的误差纠正公差内重复生成相同的数。通过选择一个或多个PUF单元(每个均包括设计相同的匹配的晶体管对)并比较该对的导通特性(例如,导通阈值电压或栅-源电压)来确定随机数。每个选定的晶体管对的导通特性差异是由晶体管之间的随机制造差异引起的,这会导致PUF设备的每个不同实例之间的随机性,随着时间的推移应该相对稳定,这有助于生成数的持久性。

PUF设备可以包括一个或多个PUF单元,每个PUF单元包括:一些物理特征,这些物理特征由于制造上的微小变化而在每个设备中随机地不同;以及一些确定电路,被配置为从每个PUF单元中读出PUF值。PUF设备可以被配置为使得确定电路可以从每个PUF单元中读出随机PUF值并且基于PUF值来产生持久性随机数。然后,将持久性随机数用作确定对“挑战”的“响应”的一部分。例如,PUF设备可以从另一个电路接收“挑战”,确定电路然后可以从PUF单元读取持久随机数,并且PUF设备然后可以基于“挑战”和“持久性随机数”来确定“响应”(例如,但执行某种加密操作,例如哈希或XOR,或使用“挑战”和持久性随机数进行加密)。持久性随机数是随机的,因为其值取决于不同PUF设备之间较小的随机制造偏差。因此,尽管PUF设备的不同实例在设计上相同,但每个实例都应生成不同的持久性随机数。随机数是“永久性”的,因为随着时间的流逝,它应该保持不变或保持在可接受的范围内。例如,由PUF设备的一个或多个PUF单元生成的永久随机数在每次生成时应相同(或保持在可接受的范围内,例如以便可以使用纠错码ECC进行校正),这样它就可以充当设备的可靠指纹。

在本公开的第一方面,提供物理不可克隆函数PUF设备,包括:多个PUF单元,每个PUF单元包括:多个晶体管,其中所述多个晶体管包括:用于晶体管导通特性比较的一对匹配的晶体管,和用于选择所述PUF单元的选择机构,和其中每个PUF单元中的所述多个晶体管都是相同的晶体管类型;和确定单元,被配置为:在所述多个PUF单元中的至少一个中的每一个中使用所述选择机构来选择所述多个PUF单元中的至少一个;对于每个选定的PUF单元,至少部分地基于选定的PUF单元中的匹配的晶体管对的导通特性的比较来确定晶体管差值,其中所述晶体管差值指示选定的PUF单元中的匹配的晶体管对之间的随机制造差异;和至少部分地基于至少一个确定的晶体管差值来确定PUF输出。

选择机构可包括所述晶体管对的栅极端子,和其中确定单元被配置为通过向所述PUF单元中的匹配的晶体管对中的一个或多个栅极端子施加选择电位来选择PUF单元。

选择机构可包括与匹配的晶体管对耦合的一个或多个选择晶体管,和其中所述确定单元被配置为通过向所述一个或多个选择晶体管施加选择电位来控制所述一个或多个选择晶体管的操作以选择PUF单元。

匹配的晶体管对的导通特性的比较可包括所述匹配的晶体管对的栅-源电压的比较。

确定单元可被配置为通过以下方式来确定用于选定的PUF单元的晶体管差值:(a)将第一输入信号施加到所述匹配的晶体管对的第一晶体管;将第二输入信号施加到所述匹配的晶体管对的第二晶体管;和通过比较在施加第一输入信号时的第一晶体管的导通特性和在施加第二输入信号时的第二晶体管的导通特性,确定第一晶体管比较值;然后(b)将第二输入信号施加到所述匹配的晶体管对的第一晶体管;将第一输入信号施加到所述匹配的晶体管对的第二晶体管;和通过比较在施加第二输入信号时的第一晶体管的导通特性和在施加第一输入信号时的第二晶体管的导通特性,确定第二晶体管比较值;以及然后(c)基于所述第一晶体管比较值和所述第二晶体管比较值来确定所述晶体管差值(例如基于第一和第二晶体管比较值的总和、平均值或差异)。

确定单元(170)可被配置为:在(a)中,同时将所述第一输入信号施加到所述第一晶体管并且将所述第二输入信号施加到所述第二晶体管;和在(b)中,同时将所述第二输入信号施加到所述第一晶体管并且将所述第一输入信号施加到所述第二晶体管。

确定单元(170)还可包括:至少一个第一电流源(232x),被配置为输出第一电流信号;和第二电流源(234x),被配置为输出第二电流信号;其中所述第一输入信号包括所述第一电流信号,并且所述第二输入信号包括所述第二电流信号。

所述第一输入信号可包括所述第一电压信号,并且所述第二输入信号包括所述第二电压信号。

所述第一电压信号和所述第二电压信号中的至少一个随时间变化。

确定单元可被配置为:在确定用于选定的PUF单元的第一晶体管比较值期间,将所述第一电压信号施加到所述第一晶体管的栅极端子,并且将所述第二电压信号施加到所述第二晶体管的栅极端子;和在确定用于选定的PUF单元的第二晶体管比较值期间,将所述第二电压信号施加到所述第一晶体管的栅极端子,并且将所述第一电压信号施加到所述第一晶体管的栅极端子,以旋转所述PUF单元。

选择机构可包括所述匹配的晶体管对的栅极端子,和其中所述第一电压信号和所述第二电压信号还用作用于选择所述PUF单元的选择电位。

匹配的晶体管对可被配置为差分对,和其中匹配的晶体管对形成比较器的输入。

晶体管差值可包括指示所述匹配的晶体管对之间的随机制造差异的数字值,并且其中确定单元包括用于确定所述晶体管差值的模数转换器,和其中所述模数转换器包括比较器。

每个匹配的晶体管对可包括第一晶体管和第二晶体管,和其中所述第一晶体管包括第一子晶体管和第二子晶体管,和其中所述第二晶体管包括第三子晶体管和第四子晶体管,和其中所述第一子晶体管、第二子晶体管、第三子晶体管和第四子晶体管以半导体布局布置,使得所述第一晶体管的质心与所述第二晶体管的质心基本相同。

第一子晶体管、第二子晶体管、第三子晶体管和第四子晶体管可以以半导体布局布置,使得:当所述第一晶体管导通电流时,所述第一子晶体管中的沟道电流在所述半导体中沿第一方向流动,并且所述第二子晶体管中的沟道电流在所述半导体中沿第二方向流动,和当所述第二晶体管导通电流时,所述第三子晶体管和所述第四子晶体管中一个中的沟道电流沿第一方向流动,并且所述第三子晶体管和所述第四子晶体管中另一个中的沟道电流沿第二方向流动,和其中在所述半导体布局中,所述第一方向和所述第二方向是基本上相反的空间方向。

所述匹配的晶体管对的半导体布局可以被布置为使得所述第一子晶体管和所述第三子晶体管共享漏极端子,并且所述第二子晶体管和所述第四子晶体管共享另一漏极端子。

在本公开的第二方面,提供一种使用多个PUF单元确定物理不可克隆函数PUF输出的方法,每个PUF单元包括相同晶体管类型的多个晶体管,所述多个晶体管包括匹配的晶体管对和用于选择所述PUF单元的选择机构,该方法包括:在所述多个PUF单元中的至少一个中的每一个中使用选择机构选择一个或多个PUF单元(105x,y);对于每个选定的PUF单元,至少部分地基于选定的PUF单元中的匹配的晶体管对的导通特性的比较来确定晶体管差值,其中所述晶体管差值指示选定的PUF单元中的匹配的晶体管对之间的随机制造差异;和至少部分地基于至少一个确定的晶体管差值来确定PUF输出。

确定用于选定的PUF单元的晶体管差值可包括:将第一输入信号和第二输入信号分别施加到所述匹配的晶体管对的第一晶体管和所述匹配的晶体管对的第二晶体管;通过比较所述匹配的晶体管对的导通特性来确定第一晶体管比较值;将所述第一输入信号和所述第二输入信号分别施加到所述第二晶体管和所述第一晶体管;通过比较所述匹配的晶体管对的导通特性来确定第二晶体管比较值;和基于所述第一晶体管比较值和所述第二晶体管比较值来确定所述晶体管差值。

所述第一输入信号可包括第一电流和/或第一电压信号,和所述第二输入信号可包括第二电流和/或第二电压信号。

选择PUF单元可包括将选择电位施加到PUF单元中的所述匹配的晶体管对的栅极端子中的一个或多个。

在本公开的第三方面,提供设备(例如PUF设备),包括:一对晶体管,包括:第一晶体管;和第二晶体管,耦合到第一晶体管以形成所述晶体管对;其中所述第一晶体管包括第一子晶体管和第二子晶体管,和其中所述晶体管对的第二晶体管包括第三子晶体管和第四子晶体管。

所述第一子晶体管、第二子晶体管、第三子晶体管和第四子晶体管可以以半导体布局布置,使得所述第一晶体管的质心与所述第二晶体管的质心基本相同。

所述晶体管对的半导体布局可以布置为使得所述第一子晶体管和所述第三子晶体管共享漏极端子,并且所述第二子晶体管和所述第四子晶体管共享另一漏极端子。

所述第一子晶体管、第二子晶体管、第三子晶体管和第四子晶体管可以以半导体布局布置,使得:当所述第一晶体管导通电流时,所述第一子晶体管中的沟道电流在所述半导体中沿第一方向流动,并且所述第二子晶体管中的沟道电流在所述半导体中沿第二方向流动,和当所述第二晶体管导通电流时,所述第三子晶体管和所述第四子晶体管中一个中的沟道电流沿第一方向流动,并且所述第三子晶体管和所述第四子晶体管中另一个中的沟道电流沿第二方向流动,和其中在所述半导体布局中,所述第一方向和所述第二方向是基本上相反的空间方向。

该设备还可包括:另一对晶体管,具有与所述晶体管对相同的半导体设计,其中所述晶体管对和另一对晶体管以半导体布局布置,使得所述晶体管对的第二子晶体管和另一对晶体管的第一子晶体管共享源极端子。

所述晶体管对的第一晶体管的漏极端子和所述另一对晶体管的第一晶体管的漏极端子可以耦合到第一公共信号输出线,并且其中所述晶体管对的第二晶体管的漏极端子和另一对晶体管的第一晶体管的漏极端子可以耦合到第二公共信号输出线。

设备还可包括又一对晶体管,其中该设备包括:第一栅极结构,形成用于所述晶体管的第一晶体管和又一对晶体管的第一晶体管的栅极,使得所述晶体管的第一晶体管的栅极电势和又一对晶体管的第一晶体管的栅极电位基本相同;和第二栅极结构,形成用于所述晶体管的第二晶体管和又一对晶体管的第二晶体管的栅极,使得所述晶体管的第二晶体管的栅极电势和又一对晶体管的第二晶体管的栅极电位基本相同。

第一晶体管和第二晶体管可以是MOS设备(例如PMOS设备)。

设备还可包括以二维阵列布置的多对晶体管。

附图说明

参考以下附图,仅以示例的方式描述了本公开的各方面,其中:

图1示出了根据本公开的一个方面的PUF设备的示例性示意图。

图2示出了图1的PUF设备的PUF单元和确定单元的实施方式的示例性示意图。

图3示出了图2的PUF单元的阵列的示例示意图。

图4示出了图1的PUF设备的PUF单元和确定单元的另一实施方式的示例性示意图。

图5示出了表示图4的PUF设备中的操作信号的图形。

图6示出了图4的PUF单元的阵列的示例示意图。

图7示出了图1的PUF设备的PUF单元和确定单元的另一实施方式的示例性示意图。

图8示出了图示一对晶体管和部分比较器块的示意图;

图9示出了包括图8的一对晶体管和包括图8的部分比较器块的确定单元的PUF单元的阵列的示例表示;

图10A-10D示出了一对晶体管的布置的示例示意图。

图11A示出了一对晶体管的示例示意图。

图11B示出了由子晶体管实现的图11A的一对晶体管的示例示意图。

图12示出了图11B的子晶体管的示例性半导体布局。

图13示出了图12的半导体布局的阵列的示例示意图。

图14示出了包括一对晶体管和单独的选择机构的PUF单元的示例示意图。

图15示出了PUF单元的另一实施方式的示例示意图。

图16示出了PUF单元的另一实施方式的示例示意图。和

图17示出了用于使用多个PUF单元确定PUF输出的方法的图形表示。

具体实施方式

发明人已经发现在实现具有一个或多个PUF单元的PUF设备中的许多不同挑战。首先,PUF单元的每个可能的输出应具有相等或基本相等的概率。例如,如果将PUF单元配置为根据PUF单元的随机制造变化来输出“1”或“0”,则应该具有等于或基本相等的“1”或“0”的概率。如果未实现,则PUF单元的输出可能不会足够随机。为了实现这一点,需要每个PUF单元的电路设计和布局配置以及整个PUF设备,这将不偏爱任何一个特定的可能的输出值。

其次,就功率消耗和/或集成电路(IC)中使用的面积和/或产生PUF输出所需的时间而言,PUF设备优选是低成本的,以便可以在设备中更容易实现。例如,PUF设备对于物联网(IoT)设备安全性尤其有用,例如用于认证IoT设备的身份和/或保护到/来自IoT设备的通信。为了在物联网设备中包括PUF设备,PUF设备便宜和/或低功率和/或小是有帮助的。

为了解决这些挑战中的至少一些挑战,本文公开了一种PUF设备,其包括多个PUF单元105x,y。每个PUF单元包括全部为相同晶体管类型的多个晶体管210x,y,并且包括选择机构和匹配的一对晶体管210x,y。匹配的晶体管对在设计上是相同的,但是固有地具有一些随机的制造差异,这将导致它们的导通状态特性差异。可以使用一个或多个特定PUF单元的选择机构来选择进行测量,并为选定的一个或多个单元中的匹配晶体管对选择导通状态特性(例如栅极-源极电压)之间的差异。基于一个或多个PUF单元的导通状态特性的比较,可以生成一个持久随机数作为PUF输出。

通过使每个单元中的多个晶体管具有相同的类型(例如,全部为p型或全部为n型),可以将每个PUF单元制成非常小的尺寸,这可以增加PUF单元的密度,从而减小了PUF设备的整体尺寸。除此之外,尺寸的减小可通过减轻跨单元的由诸如掺杂梯度或氧化物梯度之类的梯度引起的对一个或另一个晶体管的任何偏置来改善每个单元的晶体管导通状态特性的随机性。此外,通过比较匹配的晶体管对的导通状态特性(例如,与故障特性相反),由于不施加高电压并且栅极氧化物不劣化,因此可以提高可靠性,并且所述晶体管对可以用于其他目的,例如用作选择机构,从而甚至进一步减小每个单元的大小。

图1示出了根据本公开的一个方面的PUF设备100的示例性示意图。PUF设备包括多个PUF单元105x,y、确定单元170和质询/响应单元180。尽管仅示出了PUF单元105x,y的2x2阵列,但是应当理解,可以以任何大小和尺寸的阵列或以任何其他合适的配置来布置任何数量的PUF单元(例如8、12、20、32、128、256等)。

确定单元170被配置为使用多个PUF单元105x,y来确定PUF输出。PUF输出是持久性随机数,这将在本公开的“背景”部分中详细解释。

质询/响应单元180被配置为从外部实体接收“质询”,从确定单元170请求并获得PUF输出,然后基于质询和PUF输出来确定并返回响应。挑战/响应单元180可以被配置为以任何合适的方式操作,这对于PUF设备领域的技术人员来说是显而易见的。质询/响应单元180可以形成单独的单元,或者可以是确定单元170的一部分。本公开具体涉及PUF单元105x,y和确定单元170的配置和操作,如下面详细描述的。因此,在本公开中没有给出对质询/响应单元180的进一步参考或解释。

图2示出了PUF单元105和被配置为确定PUF单元105的PUF值的确定单元170的示例实施方式的示意图。

图3示出了PUF单元105x,y的阵列的示意图,每个阵列以与图2中表示的PUF单元105相同的方式配置。

返回图2,PUF单元105包括匹配的晶体管对210。在本公开中,术语“匹配”是指该对晶体管具有相同的设计。尽管图2示出了一对匹配的p型FET的表示,但是应当理解,贯穿本公开,在每个不同的描述方面,匹配的晶体管对210可以是任何晶体管类型,例如p型、n型、增强、耗尽、FET(例如MOSFET、JFET、MESFET等)、BJT(例如IGBT、异质结双极晶体管等)等。为简单起见,本公开内容专门针对FET,但是应该理解,这里使用的术语“门”、“源”和“漏极”涵盖了BJT的术语“基极”、“发射极”和“收集器”。

虽然构成匹配的晶体管对210的两个晶体管具有相同的设计,但实际上在两个晶体管之间不可避免地会有小的随机制造偏差。这些制造差异可以包括以下至少之一:栅极氧化物厚度的差异、掺杂密度的差异、载流子迁移率的差异、器件尺寸的差异等。这些制造差异会导致晶体管导通状态特性/性能的差异,例如导通阈值电压的差异、β的差异、背栅效应的差异等。在本公开全文中始终使用术语“导通状态”来指代与其正常导通状态操作有关的晶体管的操作特性,例如导通阈值电压、栅极-源极电压、漏极电流、线性电阻率、饱和点、跨导。通过考虑导通状态特性,与截止状态特性(例如截止状态泄漏电流)或故障特性(例如介电击穿)相反,可以提高PUF设备100的可靠性,由于未施加高电压,栅极氧化物不会劣化等。此外,除了特性比较之外,匹配的晶体管对210还可以用于其他目的,例如形成选择机构的一部分(稍后说明)。

确定单元170被配置为至少部分地基于匹配的晶体管对210的导通状态特性的比较来确定晶体管差值,其中,该晶体管差值指示匹配的晶体管对210之间的一个或多个随机制造差异。在该实现中,匹配的晶体管对210的比较的导通状态特性是两个晶体管的栅极-源极电压(VGS)。由于一个或许多不同的随机制造差异的结果,这两个晶体管的VGS可能不同,例如,这会导致晶体管的导通阈值电压和/或β和/或背栅效应不同。

匹配的晶体管对210的漏极接地。确定单元170包括选择器电路220,该选择器电路220被配置为向匹配的晶体管对210的栅极施加合适的电压以便导通晶体管。该电压用作“选择电位”,下面参考图3更详细地解释。确定单元170还包括第一电流源232和第二电流源234,其被配置为提供彼此相同的电流。来自第一电流源232的电流可以作为第一输入信号被施加到匹配的晶体管对210的第一晶体管的源极,并且来自第二电流源234的电流可以被作为第二输入信号施加到匹配的晶体管对210的第二晶体管的第二源极。如果匹配的晶体管对210真正地相同,则它们的源极电压将完全相同。然而,由于随机的制造差异,两个晶体管的栅极-源极电压可能不同,并且由于施加到匹配的晶体管对210的栅极电压相同,因此匹配的晶体管对210的源极电压应该有所不同。

确定单元170还包括ADC 250,其被配置为测量栅极-源极电压中的差异并输出指示该差异的数字值。然而,已经认识到,由第一电流源232和第二电流源234提供的电流之间可能存在一些失配。因此,可以提供斩波电路236,使得第一输入信号(来自第一电流源232的电流)可被施加到第一晶体管,第二输入信号(来自第二电流源234的电流)可被施加到第二晶体管和由ADC 250通过比较匹配的晶体管对210的栅极-源极电压确定的第一晶体管比较值。然后,斩波电路236可以切换第一电流源232和第二电流源234的耦合,使得第一输入信号被施加到第二晶体管,第二输入信号被施加到第一晶体管和ADC 250通过比较匹配的晶体管对210的栅极-源极电压来确定的第二晶体管比较值。

第一和第二晶体管比较值可以表示为:

第一晶体管失配值=ΔVGS+失配+噪音1

第二晶体管失配值=ΔVGS–失配+噪音2

然后可以基于第一晶体管比较值和第二晶体管比较值,例如根据第一晶体管比较值和第二晶体管比较值的和或平均值来确定PUF单元105的晶体管差值。

例如,晶体管差值可以表示为:

晶体管差值=第一失配值+第二失配值

=2*ΔVGS+噪音1+噪音2

晶体管差值=第一失配值和第二失配值的平均值

=ΔVGS+(噪音1+噪音2)/2

以这种方式,可以将由第一电流源232和第二电流源234之间的不匹配引起的任何测量误差显着减小或消除到第一阶。此外,由于噪音1和噪音2在很大程度上不相关,因此信噪比通常也可以提高大约√2。将理解的是,斩波电路236是可选的,并且确定单元170可以被配置为,例如,如果认为第一电流源和第二电流源被匹配到足够高的精度,则从栅极-源极电压的单个比较确定晶体管差值。

此外,可选地,可以在ADC 250的输入处提供另外的斩波电路240。其可以类似于斩波电路236并且与斩波电路236同时操作,以便将差分输入的耦合切换到ADC 250中的比较器。然而,在这种情况下,由于切换到ADC 250中的比较器的输入,第一晶体管比较值中的ΔVGS分量的符号将与第二晶体管比较值中的ΔVGS分量的符号不同。例如,在同时使用斩波电路236和240的情况下:

第一晶体管失配值=ΔVGS+失配+偏移+噪音1

第二晶体管失配值=-ΔVGS+失配+偏移+噪音2

其中偏移是ADC 250的偏移量。

在这种情况下,可以通过取第一晶体管比较值和第二晶体管比较值之差来确定晶体管差值。例如:

晶体管差值=第一失配值-第二失配值

=2*ΔVGS+噪音1-噪音2

以这种方式使用斩波电路236可以帮助消除ADC 250中的任何偏移以及第一电流源232和第二电流源234之间的任何失配。此外,ΔVGS分量增加了2倍,噪声1和噪声2的低频分量应该相互抵消。然而,将理解,取决于ADC 250的配置和构成ADC 250的组件的质量,斩波电路240是可选的。此外,确定单元170可以不包括ADC 250,但是可以替代地使用任何其他合适的电路来确定晶体管差值,例如仅模拟电路。

斩波电路236和另外的斩波电路240可以以任何合适的方式配置成执行上述的切换/斩波功能。例如,它们每个可包括一个或多个开关,如上所述,这些开关可被控制(例如,由图2中未示出的控制单元控制)以切换/斩波联接器。

晶体管差值指示匹配的晶体管对210中的哪个晶体管具有较大/较小的VGS。例如,如果第一晶体管的VGS大于第二晶体管的VGS,则可以简单地为“1”,如果第一晶体管的VGS小于第二晶体管的VGS,则可以简单地为“0”。替代地,它也可以指示差异的大小。例如,它可以是指示第一晶体管的VGS大于第二晶体管的VGS的数量的大小的正数,并且可以是大小的负数,其指示第一晶体管的VGS小于第二晶体管的VGS的数量。

转到图3,表示了多个PUF单元105x,y,其中x=1、2,...X-1,X和y=1、2,...Y-1,Y,使得PUF单元105x,y的总数总计X*Y。在该示例中,PUF单元105x,y布置成包括X列和Y行的阵列。选择器电路220具有Y个输出,阵列的每一行一个,并且可以看出,每一输出耦合到特定行中所有匹配的晶体管对210x,y的栅极(例如,第一输出耦合到晶体管对210x,1,第二输出耦合到晶体管对210x,2等)。为了选择PUF单元105x,y的特定行,选择器电路210向该行施加选择电位(例如,超过晶体管的导通阈值电压的电势)以便导通该行中的匹配晶体管对210x,y。非选择电位被施加到所有其他行(例如,小于晶体管的导通阈值电压的电势)。因此,可以看出,在该示例中,每个匹配的晶体管对210x,y不仅用于确定晶体管差值,而且还用作其PUF单元105x,y的选择机构。通过将每个匹配的晶体管对210x,y用于这两个目的,与包括用于确定PUF值的一对晶体管以及用于选择PUF单元的一个或多个其他晶体管的阵列相比,可以减小PUF单元阵列的尺寸。

还可以看出,确定单元170包括X个第一和第二电流源232x和234x,X个斩波电路236x,X个另外的斩波电路240x和X个ADC 250x。因此,可以并行地确定所选行中的X对晶体管210x,y的晶体管差值,从而提高了操作速度。此外,PUF阵列的一列可以共享每组第一和第二电流源232x和234x、斩波电路236x、另外的斩波电路240x和ADC 250x,从而减少了所需组件的数量,从而减少了PUF设备100的整体尺寸、成本和功耗。

图3中表示的确定单元170还包括PUF输出单元310,其:a)从每个ADC 250x接收确定的晶体管差值,或者b)从每个ADCx接收确定的第一和第二晶体管比较值,然后基于第一和第二晶体管比较值(例如,通过对它们进行平均)来确定晶体管差值。

确定单元170可以通过选择一行PUF单元105x,y并为每个选择的PUF单元确定晶体管差值来操作。随后,可以选择PUF单元105x,y的下一行,并为其确定晶体管差值。选择器电路220、斩波电路236x和另外的斩波电路240x的操作可以以任何适当的方式来控制,例如由PUF输出单元310或任何其他适当的控制器来控制。为简单起见,图3中未显示控制互连。

由PUF输出单元310确定的PUF输出是持久随机数,其可以是例如多比特数。例如,如果PUF设备100被配置为使得每个PUF单元105x,y用于确定多比特PUF输出的一位的值,则如果存在128个PUF单元105x,y,则输出单元310可以生成128位PUF输出,其中每个PUF单元105x,y的晶体管差值确定每个位的值(即“0”或“1”)。例如,如果为特定的PUF单元105x,y确定的晶体管差值指示第一晶体管的VGS大于第二晶体管的VGS,则PUF输出中的对应位可以被设置为1。如果它表示第一晶体管的VGS小于第二晶体管的VGS,因此PUF输出中的对应位可以设置为0。由于每个晶体管比较的结果取决于匹配的晶体管对210x,y之间的随机制造差异,可以看出PUF输出应该是随机的,因为PUF设备100的每个不同实例很可能产生随机不同的PUF输出。此外,每个晶体管比较的结果通常应随时间保持不变(即,如果确定第一晶体管的VGS小于第二晶体管的VGS,则该值不应随时间变化)或保持在可接受的范围内(例如,少量匹配的晶体管对105x,y的变化可能是可接受的,因为ECC可能会纠正这些更改),以便PUF输出是持久的。

在一些实现中,PUF单元105x,y的数量可以超过PUF输出中的比特数量。在这种情况下,在PUF设备100的注册期间,可以对所有PUF单元105x,y执行上述晶体管比较。在其匹配的晶体管对210x,y中发现在VGS中具有最大差异的PUF单元105x,y然后可以被注册以用于将来确定PUF输出。从那时起,可以有效地忽略其余的PUF单元105x,y。通过仅使用在VGS中具有最大差异的PUF单元105x,y,可以改善PUF输出的持久性,因为晶体管导通状态特性的差异的大小随时间的变化(例如,由组件漂移、测量噪声等引起)不大可能引起两个晶体管中哪个具有最大VGS的变化。

尽管以上具体地集中在VGS的比较上,但是应当理解,根据本公开,可以比较其他晶体管的导通状态特性。

图15示出了PUF单元105的示例配置,其中所比较的晶体管导通状态特性是沟道或漏极电流ID。在这种布置中,如上面参考图2和图3所描述的,可以由选择器电路220选择匹配的晶体管对210,并且它们可以共享单个电流源1510。如果匹配的晶体管对210完全相同,通过该对的第一晶体管的沟道电流ID1将与通过该对的第二晶体管的沟道电流ID2相同。但是,由于随机制造差异,ID1和ID2之间可能存在差异。确定单元170包括电流测量单元1520,电流测量单元1520被配置为测量电流之间的差,基于该电流差可以确定PUF输出(类似于以上参考图3的描述)。可选地,确定单元170可以包括***240,从而可以减轻电流测量单元1520中的任何不平衡。在这种情况下,电流测量单元1520可以被配置为基于ID1和ID2的比较来确定第一晶体管比较值,然后斩波器240将输入切换到电流测量单元1520,并且电流测量单元1520然后确定第二晶体管比较值。然后可以基于第一和第二晶体管比较值来确定晶体管差值,例如,在不使用斩波240的情况下,通过取第一和第二晶体管比较值的平均值或总和,或者在使用斩波240的情况下,通过取第一和第二晶体管比较值之间的差。

此外,尽管在图2、图3和图15的布置中,匹配晶体管对210中的两个晶体管被同时选择,所以它们的晶体管导通状态特性可以直接彼此比较,在替代实施方式中,可以在单独的时间选择每个晶体管,并测量其晶体管的导通特性。然后可以将两个测量值进行比较以确定晶体管差值。

图16示出了这种布置的一种特定示例实施方式。确定单元170包括电流源1610和选择器电路1620,选择器电路1620被配置为将选择电位施加到匹配的晶体管对1620的第一晶体管,并且将非选择电位施加到匹配的晶体管对210的第二晶体管,因此只有该对中的第一晶体管导通。MUX 1630被配置为将第一晶体管的源极电压输出至ADC 1640,使得ADC1640可以测量第一晶体管的晶体管导通状态特性,在该示例中为源极电压。选择器电路1620然后可以将选择电位施加到第二晶体管,并且将非选择电位施加到第一晶体管。然后,MUX 1630将第二晶体管的源极电压输出到ADC 1640,使得ADC可以测量第二晶体管的晶体管导通状态特性。然后可以比较第一和第二晶体管的导通状态特性,例如,通过PUF输出单元或耦合到ADC 1640并配置为接收和记录晶体管导通状态特性的测量值的一些其他合适的单元。选择器电路1620和MUX 1630的操作可以由任何合适的实体来控制,例如,由确定单元170中的控制单元来控制。此外,技术人员将理解,通过适当地改变配置,例如以上参照图16说明的配置,可以在匹配的晶体管对中分别选择每个晶体管并测量它们的晶体管导通状态特性,可以扩展到这里描述的所有其他布置。

图4示出了根据本公开的一方面的PUF设备100的另一示例配置。在图4所示的PUF设备100中,PUF单元105包括以与图2相同的方式被配置为源极跟随器的匹配的晶体管对210。此外,确定单元170包括第一电流源232,第二电流源234和斩波器236,它们的操作均如上参考图2所述。例如,可以控制第一电流源232、第二电流源234和斩波236的操作,但是可以控制PUF输出单元310或任何其他合适的模块/单元。

然而,与图2所示的布置相反,该示例中的确定单元170还包括DAC 410和比较器430,该DAC 410的操作由PUF输出单元310控制。在下文中,DAC 410、PUF输出单元310和比较器430被配置为一起作为斜率转换器ADC操作,以便比较匹配的晶体管对210的晶体管导通状态特性。现在,确定单元170的操作将参照图5进行描述。

DAC 410输出两个“斜坡信号”–从+满刻度到–满刻度倾斜的第一斜坡信号411,和从–满刻度到+满刻度倾斜的第二斜坡信号412。PUF输出单元310例如通过将增加/减少的数字计数器值提供给DAC 410来控制该操作,将DAC 410的数字计数器值转换为模拟斜坡信号。为此,PUF输出单元310可以包括至少一个值递增或递减的计数器。这可以在图5的“DAC斜坡信号”图中看到,图中显示了两次重复的斜坡信号-一个重复用于“转换1”,另一个重复用于“转换2”。选择器电路420被配置为输出一对电压信号422。在“转换1”期间,对于选定行y,第一输入信号被施加到匹配的晶体管对210的第一晶体管,该第一输入信号包括来自第一电流源232的第一电流信号和来自选择器电路420的第一电压信号。第一电压信号是第一斜坡信号411。第二输入信号被施加到匹配的晶体管对210的第二晶体管,该第二输入信号包括来自第二电流源234的第二电流信号和来自选择器电路420的第二电压信号。第二电压信号是第二斜坡信号412。

将理解的是,匹配的晶体管对210的源极电压应随着施加到晶体管的栅极的斜坡信号而变化。比较器430的输入端子分别耦合到匹配的晶体管对210的源极端子。如本领域技术人员将理解的,当一个输入端子处的信号变得大于另一输入端子处的信号时,比较器430的输出应从低电平改变为高电平,反之亦然。参考图5,如果匹配的晶体管对210绝对相同,则您可以期望比较器430的输出在两个斜坡信号411和412交叉的瞬间发生实质性变化(即,基本上在–满刻度和+满刻度之间的中点)。然而,由于两个晶体管之间的随机制造差异,它们的导通阈值电压可能会不同,这意味着对于相同的栅极电压,它们的栅极-源极电压可能会不同。因此,源极电压相交并且比较器430输出改变的时刻不太可能与斜坡电压411和412相交的时刻相同。这在图5中由Δ1示出,Δ1是在比较器430的输出改变的时刻匹配的一对晶体管210的栅极电压之间的差。比较器430输出中的该改变可以触发PUF输出单元310存储用于控制DAC 410的计数器的M位值。在比较器430输出改变的时刻,计数器的M位值指示匹配的晶体管对210的导通阈值电压之间的差。该M位值在这里被称为“转换1”。

然而,转换1可能受到第一电流源232与第二电流源234之间的任何失配和/或比较器430x的输入端子之间的任何固有偏移和/或电路内的任何延迟的影响。

在某些情况下,这些不准确度可能很小,可以忽略不计。在这种情况下,可以将转换1用作晶体管差值,该晶体管差值指示匹配的晶体管对210之间的随机制造差异,该随机的制造差异已经导致匹配的晶体管对210的导通阈值电压/栅极-源极电压之间的差异。在这种情况下,根本不需要转换2,并且PUF输出可以至少部分地基于晶体管差值来确定(如先前参考图2和图3所描述的)。

然而,在其他情况下,这些对不准确性的贡献中的任何一个或多个都可能太大而不能忽略,而不会导致晶体管差值的随机性的不期望的降低,并因此降低了PUF设备100产生足够随机的PUF值的有效性。在这种情况下,可以执行第二转换,其中切换到PUF单元105的输入信号,并且可选地,切换到比较器430的输入端子。

在第二转换中,第一输入信号被施加到第二晶体管,第一输入信号包括来自第一电流源232的第一电流信号和来自选择器电路420的第一电压信号。第一电压信号是第一斜坡信号411。第二输入信号被施加到第一晶体管,第二输入信号包括来自第二电流源234的第二电流信号和来自选择器电路420的第二电压信号。第二电压信号是第二斜坡信号412。电流信号的这种切换可以通过斩波电路236以与之前参考图2和3所描述的相同的方式来实现。电压信号的切换可以通过选择器电路420改变将斜坡信号411和422中的哪一个施加到电压信号对422中的哪一个来实现。可选地,斩波电路240还可以将输入切换到比较器430,尽管在某些情况下,比较器430的偏移可能足够小,以致可以忽略不计,并且可以省略斩波电路240。为此,PUF输出单元310可以被配置为控制斩波电路236、斩波电路240和选择器电路420。

图5示出了第二转换,并且可以看出,在比较器430输出改变的时刻,斜坡电压之间的差是Δ2。在那时,PUF输出单元310可以被触发以存储M位计数值,该M位计数值指示匹配的晶体管对210的导通阈值电压之间的差。从此处开始,此M位值称为“转换2”。

转换1的M位计数值可以表示为:

转换1=ΔVGS+失配/偏移+延迟+噪音1

在这个例子中,转换1是第一晶体管比较值。

转换2的M-位计数值可以表示为:

转换2=-ΔVGS+失配/偏移+延迟+噪音2

在这个例子中,转换2是第二晶体管比较值。

可以看出,由于切换输入电压信号,ΔVGS的符号在转换1和转换2之间发生了变化。因此,如果我们采用转换1和转换2之间的差,我们将得到:

晶体管差值=转换1–转换2=2*ΔVGS+(噪音1-噪音2)

因此,通过以这种方式进行两个转换并从另一个中减去一个,可以将两个转换之间的任何相关误差和噪声(例如失配/偏移和电路中的延迟)显着降低或消除为一阶。此外,ΔVGS分量增加了2倍,噪音1和噪音2的低频分量应大部分相互抵消。因此,提高了作为测量匹配的晶体管对210的栅极-源极电压之间的差的量度的晶体管差值的精度。可以至少部分地基于晶体管差值来确定PUF输出(如先前参考图2和图3所描述的),由于晶体管差值的精度增加,其可以是更可靠的随机数。

应当理解,在该示例中,施加到匹配的晶体管对210的第一电压信号和第二电压信号都是斜坡信号,这可以提高电路的共模抑制比(CMRR),并使测量过程更加纯净。然而,在替代实施方式中,第一电压信号和第二电压信号中的仅一个可以是斜坡电压(增大或减小),另一个电压信号是静态参考电压,该静态参考电压设置为斜坡信号的上限和下限之间的任何适当值。

在另一替代实现中,例如,包括DAC 410、比较器430和PUF输出单元310的ADC可以被配置为SAR ADC,例如,借助于PUF输出单元310,根据SAR ADC的操作而不是根据斜率ADC的操作,通过将数字值施加到DAC 410来不同地控制DAC 410。在该替代方案中,PUF输出单元310可以不包括计数器,而是可以根据SAR ADC的操作以任何其他合适的方式来设置数字值。使用SAR ADC可能有助于提高转换速度,但由于无法在一行中的所有单元之间共享SARADC的DAC输入,因此需要将一个单独的DAC连续分配给每个PUF单元105x,y

图6示出了PUF单元105x,y的阵列的示意图,每个PUF单元105x,y以与图4中表示的PUF单元105相同的方式配置。可以看出,选择器电路420具有Y对电压信号422y。如前所述,通过将电压信号对422y中的一个设置为选择电位(在该示例中为两个斜坡信号411和412),选择该行中的所有PUF单元105x,y。从选择器电路420输出的另一对电压信号422y被保持在非选择电位,其低于匹配的晶体管对210x,y的导通阈值电压,使得PUF单元105x,y的其他行中的晶体管被截止,因此未被选择。对于PUF单元105x,y的每一列,提供第一电流源232x、第二电流源234x、斩波电路236x、另一斩波电路240x和比较器430x。PUF输出单元310被配置为接收每个比较器430x的输出,使得对于每个列,其可以在各个比较器430x输出切换时存储计数器值。如上所述,PUF输出单元430或任何其他合适的单元可以控制DAC 410、选择器电路420、斩波电路236x和另一斩波电路240x的操作。

在操作中,选择器电路420可以选择一行PUF单元105x,y,例如第一行PUF单元105x,1。可以并行地为每个选择的PUF单元确定晶体管差值。选择器电路420然后可以选择PUF单元105x,y的不同行,例如PUF单元105x,2的第二行。然后可以并行地为每个选择的PUF单元确定晶体管差值。以这种方式,可以为所有PUF单元105x,y确定晶体管差值,然后可以由PUF输出单元310基于晶体管差值来确定PUF输出,如先前关于图3所描述的。

在一些实现中,PUF单元105x,y的数量可以超过PUF输出中的比特数量。在这种情况下,在PUF设备100的注册期间,可以对所有PUF单元105x,y执行上述晶体管比较。被发现在晶体管之间的导通阈值电压上具有最大差异的PUF单元105x,y然后可以被注册以用于将来确定PUF输出。从那时起,可以有效地忽略其余的PUF单元105x,y。通过仅使用具有导通阈值电压的最大差异的PUF单元105x,y,可以改善PUF输出的持久性,因为晶体管导通状态特性差异的大小随时间的变化(例如,由组件漂移、测量噪声等引起的变化)不太可能导致两个晶体管中哪个晶体管的导通阈值电压最大的变化。

通过并行地为选定行中的X对晶体管210x,y确定晶体管差值,可以提高PUF设备100的操作速度。此外,PUF阵列的一列可以共享每组第一和第二电流源232x和234x、斩波电路236x、其他斩波电路240x和ADC 250x,从而减少了所需组件的数量,从而减少了PUF设备100的整体尺寸、成本和功耗。此外,确定单元170仅需要在PUF输出单元310中包括一个DAC 410和一个计数器(或类似的计数器),从而最大化了整个PUF阵列的资源共享,并且最小化了所需组件的数量,从而最小化了PUF设备100的整体尺寸、成本和功耗。因此,可以使PUF设备100相对较小、密集并且低功耗。

应当理解,在图4和图6所示的PUF设备100的另一实施方式中,PUF设备100可以被配置为根据不同的晶体管导通状态特性(例如以上参考图15所述的特性)确定一个或多个PUF单元105x,y的晶体管差值。

图7示出了根据本公开的一方面的PUF设备100的另一示例配置。图7中表示的PUF设备100与图4中表示的PUF设备非常相似,不同之处在于PUF单元105包括被配置为差分对的匹配的晶体管对210,并且可以为差分对的尾电流提供单个电流源720。此外,比较器730可以与图4的比较器430不同地实现,如稍后更详细地解释。

比较器730耦合到匹配的晶体管对210的漏极,使得当其中一个漏极电流变得大于另一个时,比较器730的输出应当改变。由于每个晶体管的栅极电压被保持为一对电压422的电位,并且每个晶体管的源极电压被电流源720保持,所以可以借助于匹配的晶体管对210的漏极电流的差异来检测匹配的晶体管对210之间的随机制造差异(例如,引起导通阈值电压的差异,并且因此引起栅极-源极电压的差异)。为了确定晶体管差值,可以如上面参考图5所述执行两次转换,唯一的区别在于,因为存在单个电流源720,所以第一输入信号仅包括第一电压信号(第一斜坡信号411),第二输入信号仅包括第二电压信号(第二斜坡信号412),并且匹配的晶体管对210的漏极电流交叉时(而不是源极电压交叉时),比较器730的输出发生变化。每次转换都会生成一个晶体管比较值,该值指示匹配的晶体管对210的导通阈值电压/VGS的差异。

如前所述,转换1的M-位计数值可以表示为:

转换1=ΔVGS+偏移+延迟+噪音1

转换1的第一晶体管比较值并且偏移是比较器730的偏移。

转换2的M-位计数值可以表示为:

转换2=-ΔVGS+偏移+延迟+噪音2

转换2是第二晶体管比较值。

如前所述,

晶体管差值=转换1–转换2=2*ΔVGS+(噪音1-噪音2)

因此,可以通过减轻偏移和延迟的不准确性来更准确地确定指示ΔVGS并因此指示随机制造差异的晶体管差异值。但是,如前所述,在一些将偏移和延迟视为足够小而可以忽略的实现中,可以从单个转换例如转换1或转换2中找到晶体管差值,是晶体管差值。

此外,尽管在该示例中,第一电压信号是第一斜坡信号411,第二电压信号是第二斜坡信号412,但是在替代方案中,电压信号中的仅一个可以是斜坡信号(上升或下降),并且第二电压信号可以是固定为任何合适值的固定参考电压(如前所述)。在另一替代方案中,如前所述,PUF输出单元310可以配置为驱动DAC 410,而不是用作斜率ADC,以使ADC用作SAR ADC。

发明人已经认识到,通过将匹配的晶体管对210实现为差分对,匹配的晶体管对210可以形成比较器730的输入晶体管。这可以从图8更充分地理解。

图8示出了示意图,其示出了匹配的晶体管对210和部分比较器模块830,它们一起形成完整的比较器。如本领域技术人员将理解的,匹配的晶体管对210在完整比较器的输入处形成差分对,其中完整比较器的差分输入被施加到差分对的栅极。本领域技术人员还将认识到,部分比较器块830中的晶体管构成了完整比较器的其余前置放大器,并且锁存电路完成了完整比较器。因此,在该示例中的其中匹配的晶体管对210形成差分对的确定单元170可以被配置为具有完整的比较器730和匹配的晶体管对210两者,或者它可以配置有部分比较器模块830和匹配的晶体管对210。

图9示出了根据本公开的这个方面的PUF单元105x,y的阵列的示例表示,其中使用了部分比较器块830x。晶体管差值和PUF输出的确定可以从前面关于图4、6和7的描述中理解。但是,从图10可以理解,通过利用部分比较器模块830x,每列需要少两个晶体管,因为列x的完整比较器的输入差分对是由列x中选定的匹配的晶体管对210x,y形成的。这进一步减小了PUF设备100的整体尺寸和功耗,从而增加了密度并降低了成本。此外,这意味着由完整比较器的输入差分对210引起的任何比较器偏移实际上是由ΔVGS引起的,因此,不会导致上述“转换1”和“转换2”的“偏移”分量。由于现在较少的分量导致了不希望的“偏移”分量(只有部分比较器模块830中的分量对输入参考偏移具有相对较小的影响),因此可以将“偏移”减小到可以忽略的水平,因此,仅需一次转换即可确定晶体管差值,在这种情况下,可以省略另外的斩波电路240x。然而,在某些情况下,部分比较器块830的偏移可能足以需要另外的斩波电路240x和上述的两次转换。

晶体管匹配对布局

现在将描述匹配的晶体管对210x,y的示例性晶体管布局。

发明人已经认识到整个PUF单元上的一个或多个半导体层的厚度/掺杂浓度/杂质中的梯度可能不利地影响组成匹配的晶体管对210x,y的两个晶体管之间的差异的随机性。例如,如果栅极氧化层的厚度从一端到另一端在整个管芯上逐渐增加,则其中一个晶体管上的栅极氧化物厚度可能总是比另一个晶体管稍大。例如,参见图3、6和9,如果在每个PUF单元105x,y中,跨PUF单元阵列的栅极氧化物厚度具有从左到右的递增梯度,则与每个PUF单元105x,y右侧的晶体管相比,每个PUF单元105x,y左侧的晶体管更可能具有稍微更薄的栅极氧化物。这可能会使晶体管比较的可能性偏离50:50,从而使一个晶体管比另一个晶体管具有更大的晶体管导通状态特性(例如VTH或VGS或ID)的机会不再为50:50。

已经确定可以通过将匹配的晶体管对210x,y设计为尽可能小并尽可能靠近来减小这种影响。此外,还已经确定,所谓的“公共质心”布置可以进一步改善梯度抑制,从而提高晶体管比较基本上为50:50的可能性。

图10显示了一个示例晶体管的示意图,该晶体管的位置有助于说明“公共质心”的布置。在图10A中,一起构成匹配的晶体管对210x,y的第一晶体管TA和第二晶体管TB彼此隔开很长的距离。在这种情况下,匹配的晶体管对210x,y很容易受到梯度的影响,特别是在图中的向上/向下方向上。图10B示出了类似的布置,但是其中第一晶体管TA和第二晶体管TB靠近放置。这可能有助于减少渐变的影响,尤其是在图形的向上/向下方向上。

图10C显示了一个示例“公共质心”排列。在该示例中,第一晶体管TA由第一子晶体管TA1和第二子晶体管TA2组成。第二晶体管TB由第三子晶体管TB1和第四子晶体管TB2组成。由于子晶体管的定位,第一晶体管TA的质心或质心处于与第二晶体管TB的质心或质心基本相同的位置。因此,对于匹配的晶体管对210x,y,PUF单元105x,y上的任何线性或一阶梯度的总体效果应当被均衡,从而实现梯度抑制。

图10D显示了另一个示例“公共质心”排列。再次,由于子晶体管的定位,第一晶体管TA的质心或质心处于与第二晶体管TB的质心或质心基本相同的位置。因此,对于匹配的晶体管对210x,y,PUF单元105x,y上的任何梯度的总体效果应当被均衡,从而实现梯度抑制。

现在将参考图11-13描述示例“公共质心”布置的细节。

图11A示出了匹配的晶体管对210x,y的示例表示。这是上面参考图7描述的PUF设备的一部分的简化表示。匹配的晶体管对210x,y中的第一晶体管被标记为TA,而该对中的第二晶体管被标记为TB。将第一晶体管TA的漏极电压标记为VDa,并且将第二晶体管TB的漏极电压标记为VDb

图11B示出了如何通过子晶体管来实现匹配的晶体管对210x,y的示例表示。第一晶体管TA包括第一子晶体管STA1和第二子晶体管STA2。第二晶体管TB包括第三子晶体管STB1和第四子晶体管STB2

图12示出了图11B中所示的匹配的晶体管对210x,y的示例性半导体布局。匹配的晶体管对210x,y被布置为具有共同的质心构造,对应于图10C中所示的构造。掺杂的阱或背栅区域(例如,用于p型FET的n型衬底)由参考数字1110表示。第一子晶体管STA1包括源极触点S1和漏极触点D1,每个阱区可以是半导体衬底内的高掺杂阱区(例如,用于p型FET的p+阱)。第一子晶体管STA1还包括栅极GA1。第三子晶体管STB1包括源极触点S2和漏极触点D1,它们中的每一个可以是半导体衬底内的高掺杂阱区(例如,用于p型FET的p+阱)。因此,可以看出第一和第三子晶体管共享漏极触点D1。第三子晶体管STB1还包括栅极GB1。第四子晶体管STB2包括源极触点S2和漏极触点D2,每个阱区可以是半导体衬底内的高掺杂阱区(例如,用于p型FET的p+阱)。因此,可以看出第三和第四子晶体管共享源极触点S2。第四子晶体管STB2还包括栅极GB2。第二子晶体管STA1包括源极触点S3和漏极触点D2,它们中的每一个可以是半导体衬底内的高掺杂阱区(例如,用于p型FET的p+阱)。因此,可以看出第二和第四子晶体管共享漏极触点D2。第二子晶体管STA2还包括栅极GA2

通过以这种方式共享源极和漏极接触,可以使匹配的晶体管对210x,y更小,同时仍然实现公共质心布置。这不仅有助于减少/消除梯度效应,而且还意味着可以用成对的晶体管210x,y更密集地封装PUF阵列,从而减小PUF设备100的尺寸。例如,图12所示的半导体设计可以制造为以下尺寸:

X间距=1.66um

Y间距=3.6um

面积=5.976um^2

工艺尺寸=0.18um

像元面积(标准化为工艺最小尺寸)=33.2F^2

由于每个PUF单元105x,y可以仅包括匹配的晶体管对210x,y,因此每个PUF单元105x,y有可能实现上面确定的尺寸,同时还实现公共的质心布置。这意味着可以实现非常小的高密度PUF阵列。

应当注意,如果替代地使用非公共质心布置,则可以将Y节距减半并且获得PUF单元105x,y为上述面积的一半。尽管这样的布置将不会具有普通质心布置的好处,但它可能会导致更小、更高密度的PUF阵列。

图13示出了可以如何使用图12的晶体管布局来创建PUF单元105x,y的阵列的示例表示。图13中表示的PUF阵列对应于图9中表示的PUF阵列。可以看出,一列中的相邻的成对的晶体管210x,y被布置为共享源极触点。例如,晶体管对210x,y中的第二子晶体管STA2的源极触点与晶体管对210x,y+1中的第一子晶体管STA1的源极触点共享。这不仅增加了PUF单元105x,y的堆积密度,而且还减少了与每列中的电流源720x所需的互连数量,从而简化了制造并降低了布线/通孔的复杂性。应当理解,虽然在该示例中相邻的PUF单元105x,y共享源极接触,但是在替代配置中(例如,对应于图3中所示的布置),它们可以替代地共享漏极接触。因此,一列中的相邻晶体管对210x,y可以被布置成共享源极或漏极的沟道接触。

在图12和13所示的布局中,子晶体管被配置为使得当第一晶体管TA导通电流时,第一子晶体管STA1中的沟道电流在半导体中的第一方向上从漏极D1流向源极S1。在图12所示的图示中,该第一方向显示为“向上”。第二子晶体管STA2中的沟道电流在半导体中的第二方向上从漏极D2流向源极S3,该第二方向与第一方向基本相反。该第二方向在图12所示的状态中显示为“向下”。当第二晶体管TB导通电流时,第三子晶体管STB1中的沟道电流沿第二方向从D1流向源极S2,而第四子晶体管STB2中的沟道电流沿第一方向从漏极D2流向源极S2,尽管可以理解的是,在替代方案中,第三子晶体管STB1和第四子晶体管STB2的位置可以被切换,使得第三子晶体管STB1中的沟道电流在第一方向上流动,第四子晶体管STB2中的沟道电流在第二方向上流动。

通过布置子晶体管,使得构成晶体管的每个子晶体管中的沟道电流沿基本相反的方向流动,可以进一步消除梯度效应,从而改善梯度抑制,从而改善晶体管差值的随机性。

图12和13示出了一个示例的示例,该示例说明了如何布置子晶体管以实现共同的质心,通道接触共享和基本相反的沟道电流方向,子晶体管可以以不同的方式布置并且仍然实现这些效果中的一些或全部。例如,对于不同类型的晶体管(例如,n型或p型等),布置可以不同,和/或它们可以以不同的共心形布置(例如,图10D的布置)布置。

图17示出了用于使用多个PUF单元确定PUF输出的方法的图形表示。可以通过以上公开的确定单元170和PUF单元105x,y的任何配置来执行该方法。

在S1710中,例如通过向一个或多个PUF单元105x,y的选择机构施加选择电位来选择一个或多个PUF单元105x,y。在一些情况下,一次可以选择一个PUF单元105105x,y,而在其他情况下,可以一次选择多个PUF单元105x,y(例如,PUF单元阵列的特定行中的部分或全部PUF单元)。

在S1720中,对于每个选择的PUF单元105x,y,至少部分地基于在选择的PUF单元105x,y中的匹配的晶体管对210x,y的导通状态特性的比较来确定晶体管差值,其中晶体管差值指示在选定的一个或多个PUF单元105x,y中的匹配的晶体管对210x,y之间的随机制造差异。

可选地,如果还有另一个PUF单元105x,y仍要被选择并且具有确定的晶体管差值,则该方法可以返回到S1710以选择那个PUF单元105x,y,然后确定对应的晶体管差值。例如,在为前一行确定了晶体管差值之后,它可能会移动到PUF阵列的下一行。一旦已经选择了所有PUF单元105x,y并且确定了它们的晶体管差值,则该方法然后可以进行到S1730。替代地,例如在所有PUF单元105x,y可以被选择并且在S1710和S1720的单次迭代中确定它们的晶体管差值的情况下,该方法可以总是直接从S1720进行到S1730。

在S1730中,如前所述,至少部分地基于至少一个确定的晶体管差值来确定PUF输出。

技术人员将容易地理解,可以在不脱离本公开的范围的情况下对本公开的上述方面进行各种改变或修改。

例如,尽管在所有上述公开的方面中,每个PUF单元105x,y仅包括匹配的晶体管对210x,y,其同时充当选择机构和要比较以确定晶体管差值的晶体管,在替代实施方式中,PUF单元105x,y可以包括两个以上的晶体管。例如,它们可以包括匹配的晶体管对210x,y,以及配置为选择机构的一个或多个晶体管。

图14示出了包括选择晶体管1410x,y的示例PUF单元105x,y的示意图,其作为选择机构。在该示例中,选择晶体管1410x,y包括两个p型FET。可以通过施加选择电位以选择PUF单元105x,y来选择PUF单元105x,y,其中,选择电位是足以导通选择晶体管1410x,y的电位。在特定时间不被选择的任何PUF单元105x,y可以具有施加到选择晶体管1410x,y的非选择电位,使得选择晶体管1410x,y被截止。因此,为了确定来自特定PUF单元105x,y的晶体管差值,将选择电位施加至“选择”(例如,通过选择器电路420),并且,分别将第一和第二信号施加到匹配的晶体管对210x,y(例如,通过电流源和/或选择器电路420,或一些其他合适的电路/单元)。在替代方案中,每个PUF单元105x,y可以仅存在单个选择晶体管,例如,在图8所示的布置中耦合在匹配的晶体管对210的源极与电流源720之间。此外,选择晶体管1410x,y与配置为差分对的匹配的晶体管对210x,y结合在一起表示,应当理解,选择晶体管1410x,y可以与匹配的晶体管对210x,y的任何配置结合使用(例如,结合图2或4)。

选择晶体管1410x,y具有与匹配的晶体管对210x,y相同的晶体管类型,使得PUF单元105x,y中的多个晶体管都具有相同的晶体管类型。这并不意味着它们都是相同的设计,而是全部为n型或全部为p型。通过这样做,PUF单元105x,y中的多个晶体管可以被更密集地封装,从而减小PUF设备的整体尺寸并且还减小上述梯度问题。

在本公开全文中使用的术语“联接”既包括部件之间的直接连接又包括间接连接,其中在联接中可以存在一个或多个中间部件。

本文公开的PUF单元的阵列可以具有任何尺寸和形状,例如仅具有一行和许多列,反之亦然。此外,尽管本公开通常是在PUF单元的阵列的上下文中,但是应当理解,可以以任何合适的方式而不是阵列地布置多个PUF单元。

38页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种高速电平转换电路

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!