CN108574477A - 可配置的延迟线 - Google Patents
可配置的延迟线 Download PDFInfo
- Publication number
- CN108574477A CN108574477A CN201810172096.8A CN201810172096A CN108574477A CN 108574477 A CN108574477 A CN 108574477A CN 201810172096 A CN201810172096 A CN 201810172096A CN 108574477 A CN108574477 A CN 108574477A
- Authority
- CN
- China
- Prior art keywords
- input
- delay
- delay element
- series
- logic gate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000000630 rising effect Effects 0.000 claims description 42
- 230000010355 oscillation Effects 0.000 claims description 35
- 230000001934 delay Effects 0.000 claims description 17
- 230000007423 decrease Effects 0.000 claims description 3
- 102100025566 Chymotrypsin-like protease CTRL-1 Human genes 0.000 description 10
- 101000856199 Homo sapiens Chymotrypsin-like protease CTRL-1 Proteins 0.000 description 10
- 230000008901 benefit Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- FGRBYDKOBBBPOI-UHFFFAOYSA-N 10,10-dioxo-2-[4-(N-phenylanilino)phenyl]thioxanthen-9-one Chemical compound O=C1c2ccccc2S(=O)(=O)c2ccc(cc12)-c1ccc(cc1)N(c1ccccc1)c1ccccc1 FGRBYDKOBBBPOI-UHFFFAOYSA-N 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000009331 sowing Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
- H03K19/21—EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/13—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
- H03K5/14—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of delay lines
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H11/00—Networks using active elements
- H03H11/02—Multiple-port networks
- H03H11/26—Time-delay networks
- H03H11/265—Time-delay networks with adjustable delay
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Nonlinear Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Pulse Circuits (AREA)
Abstract
一种延迟元件,包括第一XOR逻辑门和第二XOR逻辑门。第一XOR逻辑门的第一输入定义输入端子。第二XOR逻辑门的第一输入连接到第一XOR逻辑门的输出。第二XOR逻辑门的输出定义输出端子。第一和第二XOR逻辑门的第二输入连接到第二输入端子。
Description
优先权要求
本申请要求于2017年3月14日提交的专利号为No.1752066的法国申请的优先权,以法律能够允许的最大程度通过引用将其公开内容整体并入本文中。
技术领域
本说明书总体涉及电子电路,更具体地,涉及例如可在电子设备或电路中使用的电子功能或电路。本说明书的电子功能和电路的应用的实例是随机数发生器的生成。应用的另一实例是物理上不可克隆的功能(PUF)的生成,例如用于生成唯一标识符或唯一加密密钥。本说明书更具体地涉及延迟线的延迟元件或单元的产生。
背景技术
在许多应用中,处理单元(例如微控制器的中央处理单元(CPU))使用延迟线。
许多电路使用延迟线。例如,它可能是基于使用彼此环回的延迟线来产生随机数的电路的问题。
需要改进延迟线,例如用于随机数发生器、实现物理不可克隆功能的电路、以及更一般地在出现类似问题的其他应用中的延迟线。
发明内容
一个实施例消除了常规延迟线解决方案的全部或一些缺陷。
一个实施例提出了一种特别适用于生成用于唯一标识符、加密密钥等的随机数或物理功能的解决方案。
本说明书的一个实施例提出了延迟线的延迟元件。
一个实施例提出了用于可在电路中使用的延迟线的延迟元件,该电路的行为可被建模以出于用于产生随机数或不可克隆数的目的而生成振荡次数的发生器。
因此,一个实施例提供一种延迟元件,包括:第一XOR逻辑门,其第一输入定义元件的输入端子;第二XOR逻辑门,其第一输入连接到第一门的输出并且其输出定义元件的输出子,两个门的第二输入端子连接到元件的第二输入端子。
根据一个实施例,延迟元件是否对上升沿和下降沿施加对称的延迟或者对上升沿和下降沿施加不同的延迟取决于被施加至第二端子的信号的状态。
一个实施例提供包括至少一个延迟元件的延迟线。
一个实施例提供一组串联的延迟线,包括至少一条延迟线。
根据一个实施例,该组包括多条延迟线,其中多条延迟线中的至少一条延迟线对上升沿和下降沿施加对称延迟,并且其中多条延迟线中的至少一条延迟线对上升沿和下降沿施加不同的延迟。
根据一个实施例,该组包括插入在两条延迟线之间的至少一个多路复用器,多路复用器的第一输入连接到第一延迟线的输出,而多路复用器的第二输入连接到该第一延迟的输入。
一个实施例还提供了一种用于产生多个振荡的电路,包括:第一分支,包括至少一组诸如上述的延迟线;以及第二分支,在第一分支上环回并且包括至少一条延迟线,延迟线对上升沿和下降沿施加对称延迟。
根据一个实施例,第二分支还包括诸如上述的至少一组延迟线。
一个实施例还提供一种数字发生器,包括:用于产生多个振荡的至少一个电路;以及用于计数由所述电路产生的振荡次数的至少一个计数器。
一个实施例还提供一种包括至少一个数字发生器的电子设备,所述电路配置成产生随机次数的振荡。
根据一个实施例,所述电路配置成产生可重现的数字。
附图说明
这些特征和优点等将在以下对具体实施例的描述中详细描述,该描述是非限制性的并且参考附图给出,附图中:
图1示意性地以框图形式示出了所描述实施例所应用的类型的电子电路的一个实施例;
图2示出了用于为随机数发生器或不可克隆数发生器产生多个振荡的电路的实例;
图3A、图3B、图3C、图3D和图3E以时序图的形式示出了对多个振荡的发生器的操作的新的解释;
图4示出了振荡数的发生器的一个实施例;
图5示意性示出了可配置延迟线的单元的一个实施例;
图6示出了可编程延迟线的一个实施例;
图7示出了图6的一个变型实施例;
图8示出了图6的另一变型实施例;并且
图9示出了具有对称操作的多路复用器7的一个实施例。
具体实施方式
相同的元件在各图中以相同的参考标号引用。特别地,各个实施例共有的结构和/或功能元件可具有相同的参考标号,并且可具有相同的结构、尺寸和组成性质。为了清楚起见,仅示出并且将详细描述对所描述实施例的理解有用的那些元件。特别地,除了应用于随机振荡数的发生器的一个实例之外,未曾描述延迟线的使用以及集成这些延迟线的电路的应用,然而所描述实施例更普遍地与延迟线的常规使用和应用兼容。任意地,逻辑信号的高状态特指1状态并且其低状态特指0状态。当提及术语“大约”、“近似”或“处于…的量级”时,这意味着在10%以内,优选在5%以内。
图1示意性示出了将要描述的实施例所应用的类型的电子电路1。
电路1尤其包括:处理或计算实体12(PU),例如状态机、微处理器、可编程逻辑电路等;用于存储全部或部分数据和密钥一个或多个易失性和/或非易失性存储区14(MEM);实现与电路1所旨在的应用相关的各种功能(FCT)的一个或多个电路16,例如密码处理器、用于控制生物测定传感器的电路等;在电路1的各种内部元件之间运行的一个或多个地址和/或控制数据总线17以及用于与电路1的外部通信的输入/输出接口19(I/O);以及包括延迟线的用于产生随机数的一个或多个电路2(RNG)。
图2示出了用于为基于延迟线的随机数发生器产生多个振荡的电路的实例。
发生器10基于两条延迟线,每条延迟线由串联且彼此环回的延迟元件组成,每个延迟元件以与其输入相同的状态(1或0)返回信号。每个链的延迟元件的数量可为不同或相同的。在所示实例中,第一线11包括在第一NAND逻辑门13的输出131与第二NAND逻辑门15的第一输入端子153之间串联的四个延迟元件111、112、113和114。第二线17包括串联在第二门15的输出端子151与第一门13的第一输入133之间的三个延迟元件171、172和173。逻辑门13和15的第二相应输入135和155形成旨在接收相同控制信号CTRL(触发数的产生)的输入端子。设定随机数的振荡次数例如在第一线的输出处(即在门15的第一输入153上)被采样。作为变型,振荡的次数可在门13的输出133、门13的输出131或者门15的输出151处被采样。
由两条线施加的延迟之间的差异设定端子133和153上存在的信号的占空比。
理论上,只要信号CTRL处于1状态,图2的发生器无限期地以占空比振荡。实际上,在不存在噪声但是延迟元件(逻辑门)具有不同延迟(延迟元件的停止导致占空比充分变形从而使得振荡器停止)的情况下,发生器在经过一定次数的振荡后停止。而在存在噪声(相位抖动)的情况下,在多个振荡之后(该振荡次数的数值是变化的),发生器停止运行。
因此,发生器停止的事实本身不是一个缺点,恰恰相反,缺点是无法确定它将在哪个值(多少次振荡)附近停止。具体来说,为了使随机数的发生器正确地操作,有必要使其累积足够的噪声以及进而带来的足够次数的振荡,并且在计数器停止时有必要使得振荡次数的计数结果以其最低有效位或振荡计数器的几个(小于10)最低有效位的水平来输送足够的随机性。
下面描述的实施例的起源在于对振荡次数的发生器的行为的新的分析。
图3A、图3B、图3C、图3D和图3E通过时序图示出了图2的电路的理论操作。图3A示出了信号CTRL可采取的形式的一个实例。图3B示出了对应于存在于门13的输出131上的信号的形式的实例。图3C示出了对应于存在于第一线的输出(门13的输入133)上的信号的形式的实例。图3D示出了对应于存在于门15的输出151上的信号的形式的实例。图3E示出了对应于存在于第一线的输出(门15的输入153)上的信号的形式的实例。
假设由每个门和每个延迟元件施加的延迟等于对于所有元件和门而言均相同的值tdu。
当信号CTRL处于0状态时,输出131和151均一直处于1状态。因此,线17和11的输出133和153在1状态下是稳定的。
在时刻t30,为了激活生成,信号CTRL切换到1状态。在延迟tdu之后,输出131和151在时刻t31切换到0状态。线13和15分别将4*tdu和3*tdu的延迟施加至存在于端子131和151上的信号的上升沿和下降沿。因此,信号133在时刻t32(在时刻t31之后经过3*tdu)切换到0状态,而信号153在时刻t33(在时刻t31之后经过4*tdu)切换到0状态。
然后信号131和151分别以相对于时刻t32和t33的延迟tdu来切换到1状态,等等。
当振荡停止时,优选在输出153(或133)处振荡的振荡次数是随机的。应该注意的是,该振荡次数可在环上的任意点进行计数。
除了相位噪声之外,导致发生器停止的一个因素特别是由于信号的上升时间与下降时间之间的非均衡,即延迟元件或门从1状态切换到0状态与从0状态到1状态的时间之间的非均衡。具体而言,发生器的分支(延迟线加上NAND门)的上升时间与下降时间之间的偏移意味着到达了这样的时刻,即状态的持续时间变得短于由延迟线的元件施加的延迟的时刻。
一个问题是该“时刻”取决于线的延迟元件的数量(时间偏移的累积)。然而,期望使得在发生器停止之前的时间的长度是可控的,以便在新电路的设计期间能够确保在发生器停止之前将存在足够次数的振荡。
除了重复使用图2的实例的符号之外,如下:
t1n将表示输出131上的信号的秩n的(上升或下降)沿的时刻;
t2n将表示输出151上的信号的秩n的(上升或下降)沿的时刻;
L1n将表示输出131上的信号的秩n的低电平的持续时间(该持续时间与由第二线17加上第一门13施加的延迟有关);
H2n将表示输出151上的信号的秩n的高电平的持续时间(该持续时间与由第一线11加上第二门15施加的延迟有关);
tr1和tf1将表示输出151上的信号相对于端子131被切换的瞬间的相应上升和下降时间;并且
tr2和tf2将表示输出131上的信号相对于端子151被切换的瞬间的相应上升和下降时间。
可使用算术级数来描述发生器的行为。
特别地,可写入:
L1n=t12n+1-t12n;以及
H2n=t22n+2-t22n+1。
此外:
t12n=t22n-1+tf2;
t12n+1=t22n+tr2;
t22n-1=t12n-2+tr1;以及
t22n=t12n-1+tf1。
可推断:
L1n=H2n-1-Δfr2,其中Δfr2=tf2-tr2;以及
H2n-1=L1n-1+Δfr1,其中Δfr1=tf1-tr1。
使用这些关系,可以简单地根据上升和下降时间之间的差异表示各种持续时间的复现。
例如,对于持续时间L1n,可写入:
L1n+1=L1n+Δfr1-Δfr2。
然后,从第一项L10(n=0)开始表达级数:
L1n=L10-n*r,其中r=Δfr2-Δfr1。
因此,给定所选择的基本单元(延迟元件)的数量以及它们的上升时间与下降时间之间的差异,在设计电路期间获得算法级数,可确定其连续项之间的差值r。
可为持续时间H2写入类似的关系,其中
H2n=H20-n*r。
同样:
H1n表示输出131上的信号的秩n的高电平的持续时间(该持续时间与由第一线11加上第二门15施加的延迟有关);
L2n表示输出151上的信号的秩n的低电平的持续时间(该持续时间与由第一线11加上第二门15施加的延迟有关);并且
可获得以下关系:
H1n=H10+n*r;
L2n=L20+n*r。
如果上升时间与下降时间之间的差异(连续项之间的差值r)为负,则持续时间L1和H2增加,而持续时间L2和H1减小。相反,如果连续项之间的差r为正,则持续时间L1和H2减小,而持续时间L1和H2增加。
图4示出了利用该分析的振荡数的发生器20的一个实施例。
特别地,期望能够控制(以便获得随机发生器的期望特性)振荡发生器的时间特性,即其停止的时间。该时间不仅取决于延迟线所施加的延迟,还取决于这些线的上升和下降时间。
由于已知希望产生随机发生器的技术的基本单元(延迟元件)的行为是怎样的,因此可推导发生器将在其之后停止的振荡次数。在连续项之间具有正差r时,可在持续时间L1n变为零时设定极限,即n=L10/r。实际上,当脉冲持续时间短于延迟元件的延迟时,振荡停止。
根据本实施例,每个分支分别由延迟线21和27(被称作是对称的)组成,对称的延迟线具有相同或非常相似的上升和下降时间(上升和下降时间之间的差值小于连续项之间的差值r的十分之一),延迟线分别与元件22和24(被称作是非对称的)串联,非对称的元件的上升和下降时间彼此不同。第一分支的输入端子231连接到第一NAND逻辑门23的输出,第一NAND逻辑门的第一输入235接收触发信号CTRL,第一NAND逻辑门的第二输入233接收第二分支的输出。第一分支的输出端子253连接到第二NAND门25的第二输入,第二NAND门的第一输入255接收信号CTRL,第二NAND门的输出251连接到第二分支的输入。随机次数振荡的发生器的输出例如为端子253或端子233。如上所述,该输出以及因此所计数的振荡可作为变型而对应于门23或25的输出231或251,或者更一般地对应于环上的任意点。实际上,输出连接到振荡次数的异步计数器的输入,该异步计数器对发生器通过信号CTRL激活与振荡停止之间的振荡次数进行计数。例如,该计数器(图4中未示出)由触发器或级联的多个触发器组成,该多个触发器或第一触发器的时钟输入接收发生器的输出信号。触发器的一个或多个以一个或多个位来输送数字(取决于触发器的数量),通常仅保留一个或多个最低有效位以形成随机数。
如果需要的话,并行使用多个发生器,以增加每单位时间产生的随机比特数。
为了生成对称延迟线21和27,可使用成对的反相器,即每个线中具有偶数个反相器。例如,线21包括串联的p对反相器3,而线27包括串联的q对反相器3。数字p和q可相同或不同。
由于使用了成对的反相器,不仅来自每条线的信号输出不反相,而且每条线上的信号都具有相同或非常相似的上升和下降时间(差值小于差值r的十分之一除以p或q)。具体而言,如果在所讨论的技术中使用相同的逻辑单元,即使以该技术制造的一个反相器3具有与其下降时间不同的上升时间,一对相同的反相器3形成上升和下降时间相同的元件。在将反相器3的上升和下降时间分别表示为tr和tf时,一对反相器的上升和下降时间变成tr+tf(tr+tf或tf+tr取决于输入前端(input front)的方向)。因此,即使时间tf与tr彼此不同,它们的总和对于所有成对的反相器保持恒定。因此,线21和27施加延迟,无论转换(上升或下降)如何,该延迟均为可确定的和恒定的。
可使用任何类型的反相器(例如,由串联的两个晶体管形成的CMOS反相器、与输入互连的NOR或NAND门等),只要这些反相器满足在它们串联配对时将上升时间和下降时间相继关联的条件(反之亦然),并且因此无论前端输入如何,确保对这些时间求和。
为了产生非对称元件22和24,使用非反相逻辑放大器型元件(缓冲器),而非串联的两个相同的反相器。
根据下面参考图6描述的实施例,提供一种逻辑功能,其可仅根据单个输入而被比作为反相功能,并且其上升和下降时间不同。每个元件22和24被选择为具有与其下降时间不同的上升时间。另外,元件22和24被选择为使得其上升与下降时间之间具有不同的差异。因此,引入这方面的差异,发生器停机将取决于该差异。实际上,根据从上面给出的公式将知晓,门23和25也对每个分支的上升和下降时间之间的偏移具有影响。该效应必须分别被添加到元件24和22,以获得分别为Δfr1和Δfr2的偏移量以及因此算术级数的连续项之间的差异。
所提出的实施例的一个优点是线21和27的成对反相器的数字p和q对定义振荡的算术级数的连续项之间的差异没有影响。具体而言,仅每个级数的第一项(即切换信号CTRL以激活生成之后的第一脉冲的持续时间)依赖于所述数字。
根据一个简化的实施例,仅设置一个元件22或24,另一个分支仅包含对称延迟线。
线21和27可被放置在与它们分别相关联的元件22和24的上游或下游。作为变型,元件22和24在线21和27中均匀地插入在所述元件由其形成的反相器或成对反相器之间。
通过这样的方式来解释所生成的数字,即,对输出233和253之一上的脉冲进行计数,并且在计数周期结束时以例如随机位的方式获取最低有效位。计数周期由时钟信号设定。
图5示出了延迟线的元件(单元)的一个实施例,其可配置成产生对称延迟或非对称延迟的延迟元件。
单元8包括两个XOR逻辑门。第一门82具有连接到单元8的输入端子83(其接收信号IN8)的第一输入C。第一门82的输出连接到第二XOR逻辑门84的第一输入C,第二XOR逻辑门的输出连接到单元8的输出端子85,该输出端子输送信号OUT8。两个门82和84的第二输入D连接到端子87,用于施加允许单元的配置在对称和非对称之间切换的信号CONF。
优选地,触发器82和84的互连方向遵循它们相应输入的顺序。因此,给定输入(例如D)接收信号CONF,并且触发器82的输出连接到触发器84的输入(例如C),触发器84的输入对应于接收信号IN8的触发器82的相同类型的输入。因此,确保信号IN8在触发器82中的传播时间与由触发器82的输出传输的信号在触发器84中的传播时间相同。
根据信号CONF的状态,单元8用作对称或非对称延迟元件。
如果信号CONF处于1状态,则上升时间tr8(在信号IN8从0切换为1的作用下输出信号OUT8从0变为1所需的时间)等于第一门82的下降时间tf82与第二门84的上升时间tr84的和。下降时间tf8(在信号IN8从1切换为0的作用下输出信号OUT8从1变为0所需的时间)等于tr82+tf84,其中tr82表示门82的上升时间,而tf84表示门84的下降时间。如果门82和84被认为是相同的,则tr82=tr84并且tf82=tf84。因此,上升时间tr8和下降时间tf8之间的差为零。确实获得了对称延迟元件。
如果信号CONF处于0状态,则上升时间tr8等于门82和84的上升时间tr82与tr84的和。下降时间tf8等于下降时间tf82与tf84的和。因此,由于每个门的上升和下降时间彼此不同,因此上升时间tr8与下降时间tf8之间的差值不为零。确实获得了非对称延迟元件。
这种实施例的一个优点在于它大大简化了制造。具体而言,所有的延迟线可由相同的单元8形成,通过配置信号进行对称或非对称延迟线之间的选择。
图6示出了延迟线分支6的一个实施例,其可编程为施加对称延迟或非对称延迟。
图6的实施例可通过前述实施例中的特定实例来构成由一个或多个对称延迟线(例如21)和一个或多个非对称延迟延迟元件(例如22)组成的分支的一个实施例。
根据本实施例,多条延迟线6i(在所示实例中为6条延迟线61、62、63、64、65和66)相关联。每条线6i由串联的一个或多个单元8组成,给定线6i的单元8的输入87互连。换言之,线6i由级联的偶数个XOR逻辑门组成,全部具有共用输入:端子87。在所示实例中,线61、62、63、64、65和66分别包括32、16、8、4、2和1个可配置延迟元件(xdelt)。线61接收延迟线6的输入信号IN,而线66输送输出信号OUT。
每条线6i分别由字SEL_DLY的不同位[5]、[4]、[3]、[2]、[1]、[0]单独配置。字SEL_DLY的位的各自状态定义所讨论的线6i施加对称或非对称延迟。
在制造图4所示类型的振荡数的发生器的应用中,线6的输入端子IN连接到所讨论的分支的输出(231或251,图4和图5)。
图7示出了图6的变型实施例,其中能够使用多路复用器7i(71、73、77)而使一条或多条线6i或实际上线6'的所有线6i(在所示实例中为线61、62和63)短路。换言之,线61、62和63的输入直接连接到多路复用器71、73和77的第一输入,多路复用器71、73和77的其他输入分别连接到对应延迟线的输出。多路复用器71、73、77的输出分别连接到线62、63和64的输入。
每个多路复用器71、73、77可例如通过不同的位而单独控制。在图7的实例中,字SEL_DLY包括三个附加位[6]、[7]和[8],用于分别控制多路复用器77、73、71。
图8示出了另一个变型实施例,其中线6”包括可配置线6i和对称延迟线。在所示实例中,存在三条线212、214、216,它们优选地由一对或多对反相器(即如上所述的每个均具有相同的上升和下降时间的延迟元件)组成。线212、214、216代替图7的线61、62和63,并且分别包括32、16和8对反相器,即32、16和8个整体的对称延迟元件(sdelt)。由于线212、214和216不可配置,因此信号SEL_DLY仅包括六位,任意表示为[8]、[7]、[6]、[2]、[1]、[0]以便遵循图7的标识。
因此,延迟线6的延迟以及上升时间和下降时间之间的差异都是可编程的。
对称和非对称延迟线的数量取决于所需的做出调整的能力。非对称元件不仅具有不同的上升和下降时间,而且具有有助于延迟线的总延迟的固有延迟。
图6至图8的实施例可例如集成到给定的发生器架构中,并且允许对该架构进行编程,无论是在其设计期间还是在应用中。
图6至图8的实施例可与图4的实施例组合。
图9示出了具有对称操作(即相同的上升时间和下降时间)的复用器7的一个实施例。
图9的多路复用器7是二对一多路复用器,即,它选择其两个输入A或B中的一个,并将相应的信号作为输出Z输送。控制信号S在输入A和B之间进行选择。
复用器7包括四个二对一选择或复用元件。多路复用器7可被认为由链中相关联的4个整体的多路复用器72、74、76和78组成。多路复用器是反相多路复用器。第一多路复用器72的输入端子分别连接到输入A和B。第二多路复用器74的两个输入一起连接到第一多路复用器72的输出。第三多路复用器76的两个输入一起连接到第二多路复用器74的输出。第四多路复用器78的两个输入一起连接到第三多路复用器76的输出,并且其输出输送输出Z。信号S直接控制多路复用器72和74,并且在经过反相器75之后还控制多路复用器76和78。
多路复用器74、76和78的输出互连的事实意味着它们实际上不进行选择。然而,假设所有多路复用器72、74、76和78是相同的,它们都具有相同的上升和下降时间。此外,当对它们的第一输入施加前端时,它们都具有类似的行为,并且当对它们的第二输入施加前端时,它们都具有类似的行为。
如果上升时间表示为tr而下降时间表示为tf,并且如果这些标识被分配了第一索引A或B(取决于前端分别是被施加至输入A(所讨论的整体多路复用器的第一输入)还是被施加至输入B(所讨论的整体多路复用器的第二输入))以及指示所讨论的整体多路复用器的第二索引72、74、76或78,则可写入:
trA72=trA74=trA76=trA78=trA;
tfA72=tfA74=tfA76=tfA78=tfA;
trB72=trB74=trB76=trB78=trB;以及
tfB72=tfB74=tfB76=tfB78=tfB。
由于控制两个多路复用器76和78的信号相对于控制多路复用器72和74的信号是反相的,因此可写入多路复用器7的上升和下降时间(从输入A或B到输出Z),这取决于输入A或输入B上是否存在上升沿或下降沿f:
trAZ=tfA72+trA74+tfB76+trB78;
tfAZ=trA72+tfA74+trB76+tfB78;
trBZ=tfB72+trB74+tfA76+trA78;以及
tfBZ=trB72+tfB74+trA76+tfA78。
由于单个上升和下降时间对于给定输入是相同的,因此可推断:
trAZ=tfAZ=trBZ=tfBZ=trA+tfA+trB+tfB。
因此,无论所讨论的输入如何,多路复用器7的上升和下降时间均是相同的。因此,多路复用器与上文给出的定义是对称的。
作为变型,可规定在其他位置反转控制信号,只要两个多路复用器选择它们相应的第一输入而另外两个选择它们相应的第二输入。在这种情况下,然而需要注意确保反相器施加的传播延迟不大于整体多路复用器的最小传播时间,否则输出将被破坏。图9的实施例的一个优点在于它确保在信号(前端)已经完成通过多路复用器72和74之前,多路复用器76和78的选择是有效的。
尽管在对称性方面没有更多的优点,然而可规定使用8个、12个、16个并且更一般地四的倍数个多路复用器,只要用于控制它们的一半的信号与用于控制另一半的信号相反。这例如允许增加传播时间,而不会不利地影响操作的对称性。
图9的实施例的一个优点是它独立于整体多路复用器的内部结构。具体而言,如果使用相同的整体多路复用器,则遵循所述的操作。
如图9所示的多路复用器具有多个应用。特别地,通常有利的是具有对称操作。
作为应用的特定实例,图9的多路复用器可用于产生图7和图8的实施例的多路复用器71、73和77中的每一个。一个优点则在于,级数的连续条件之间的差异(其控制数字发生器的脉冲序列的级数)与元件8保持唯一的相关性,这使得设备参数选择更容易。
已经描述的实施例的一个优点是它们允许可靠且可确定地设计或配置随机数发生器。因此,可满足规范中设定的标准并确认发生器满足该规范。
另一个优点是所描述的解决方案与给定技术中的标准单元的使用兼容。
另一个优点是所有的发生器都可用逻辑元件制造。
对于随机数发生器,该数字在固定时间间隔之后被采样、通过发生器(信号CTRL)的激活触发并被选择为长于发生器停止所需的最长时间,或在检测到一个或多个计数器停止之后被采样。
为了产生集成电路识别器类型的不可克隆数字的发生器,选择延迟线以及算术级数的连续项之间的差以设定振荡次数。该次数在发生器停止之后被采样,如在随机数发生器中那样,并且优选仅保留一些位(最重要的)。
已经描述了各种实施例。各种变型和修改对于本领域技术人员而言将是显而易见的。特别地,由对称延迟线施加的延迟和由非对称延迟元件施加的偏移的选择取决于应用以及发生器的规格。最后,基于上面给出的功能指示,已经描述的实施例的实际实现在本领域技术人员的能力之内。
Claims (21)
1.一种延迟元件,包括:
第一XOR逻辑门,具有定义所述延迟元件的第一输入端子的第一输入;以及
第二XOR逻辑门,具有被连接到所述第一XOR逻辑门的输出的第一输入、以及定义所述延迟元件的输出端子的输出,
其中所述第一XOR逻辑门的第二输入被连接到所述第二XOR逻辑门的第二输入,所连接的第二输入定义所述延迟元件的第二输入端子。
2.根据权利要求1所述的延迟元件,其中,被施加到所述延迟元件的所述第二输入端子的配置信号的第一状态控制所述延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的输入信号的上升沿和下降沿施加对称的延迟,并且其中被施加到所述延迟元件的所述第二输入端子的配置信号的第二状态控制延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的所述输入信号的上升沿和下降沿施加不同的延迟。
3.一种延迟线,包括串联连接的多个延迟元件,其中,每个延迟元件包括:
第一XOR逻辑门,具有定义所述延迟元件的第一输入端子的第一输入;以及
第二XOR逻辑门,具有被连接到所述第一XOR逻辑门的输出的第一输入、以及定义所述延迟元件的输出端子的输出,
其中所述第一XOR逻辑门的第二输入被连接到所述第二XOR逻辑门的第二输入,所连接的第二输入定义所述延迟元件的第二输入端子。
4.根据权利要求3所述的延迟线,其中,被施加到每个延迟元件的所述第二输入端子的配置信号的第一状态控制所述延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的输入信号的上升沿和下降沿施加对称的延迟,并且其中被施加到每个延迟元件的所述第二输入端子的配置信号的第二状态控制延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的所述输入信号的上升沿和下降沿施加不同的延迟。
5.根据权利要求3所述的延迟线,还包括插入在两个串联连接的延迟元件之间的至少一个多路复用器,所述至少一个多路复用器具有连接到所述两个串联连接的延迟元件中的第一个延迟元件的输出的第一输入、并且具有连接到所述两个串联连接的延迟元件中的所述第一个延迟元件的输入的第二输入。
6.一种串联连接的多条延迟线,其中,所述多条延迟线中的至少一条延迟线包括串联连接的多个延迟元件,其中每个延迟元件包括:
第一XOR逻辑门,具有定义所述延迟元件的第一输入端子的第一输入;以及
第二XOR逻辑门,具有被连接到所述第一XOR逻辑门的输出的第一输入、以及定义所述延迟元件的输出端子的输出,
其中所述第一XOR逻辑门的第二输入被连接到所述第二XOR逻辑门的第二输入,所连接的第二输入定义所述延迟元件的第二输入端子。
7.根据权利要求6所述的多条延迟线,其中,被施加到每个延迟元件的所述第二输入端子的配置信号的第一状态控制所述延迟元件,以对在所述延迟元件的第一输入端子处接收到的输入信号的上升沿和下降沿施加对称的延迟,并且其中被施加到每个延迟元件的所述第二输入端子的配置信号的第二状态控制延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的所述输入信号的上升沿和下降沿施加不同的延迟。
8.根据权利要求6所述的多条延迟线,还包括插入在两个串联连接的延迟线之间的至少一个多路复用器,所述至少一个多路复用器具有连接到所述两条串联连接的延迟线中的第一条延迟线的输出的第一输入、并且具有连接到所述两条串联连接的延迟线中的所述第一条延迟线的输入的第二输入。
9.根据权利要求6所述的多条延迟线,还包括插入在两个串联连接的延迟元件之间的至少一个多路复用器,所述至少一个多路复用器具有连接到所述两个串联连接的延迟元件中的第一个延迟元件的输出的第一输入、并且具有连接到所述两个串联连接的延迟元件中的所述第一个延迟元件的输入的第二输入。
10.一种串联连接的多条延迟线,其中,所述多条延迟线中的每条延迟线包括串联连接的多个延迟元件,其中每个延迟元件包括:
第一XOR逻辑门,具有定义所述延迟元件的第一输入端子的第一输入;以及
第二XOR逻辑门,具有被连接到所述第一XOR逻辑门的输出的第一输入、以及定义所述延迟元件的输出端子的输出,
其中所述第一XOR逻辑门的第二输入被连接到所述第二XOR逻辑门的第二输入,所连接的第二输入定义所述延迟元件的第二输入端子。
11.根据权利要求10所述的多条延迟线,其中,被施加至每个延迟元件的所述第二输入端子的配置信号的第一状态控制所述延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的输入信号的上升沿和下降沿施加对称的延迟,并且其中被施加至每个延迟元件的所述第二输入端子的配置信号的第二状态控制延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的所述输入信号的上升沿和下降沿施加不同的延迟。
12.根据权利要求11所述的多条延迟线,其中,串联连接的所述多条延迟线中的第一条延迟线接收处于所述第一状态的所述配置信号,以控制对上升沿和下降沿的对称延迟的施加,并且其中串联连接的所述多条延迟线中的第二条延迟线接收处于所述第二状态的所述配置信号,以控制对上升沿和下降沿的不同延迟的施加。
13.根据权利要求10所述的多条延迟线,还包括插入在两个串联连接的延迟元件之间的至少一个多路复用器,所述至少一个多路复用器具有连接到所述两个串联连接的延迟元件中的第一个延迟元件的输出的第一输入、并且具有连接到所述两个串联连接的延迟元件中的所述第一个延迟元件的输入的第二输入。
14.根据权利要求10所述的多条延迟线,还包括插入在两个串联连接的延迟线之间的至少一个多路复用器,所述至少一个多路复用器具有连接到所述两个串联连接的延迟线中的第一条延迟线的输出的第一输入、并且具有连接到所述两个串联连接的延迟线中的所述第一条延迟线的输入的第二输入。
15.一种电路,包括:
第一分支,包括第一延迟线,其中所述第一延迟线被配置成对通过所述第一分支的信号的上升沿和下降沿施加对称的延迟;
第二分支,包括第二延迟线,其中所述第二延迟线被配置成对通过所述第二分支的信号的上升沿和下降沿施加不同的延迟;
其中所述第一分支的输出被耦合到所述第二分支的输入;并且
其中所述第二分支的输出被耦合到所述第一分支的输入。
16.根据权利要求15所述的电路,其中,所述第一分支还包括延迟线,所述延迟线能够被配置成对通过所述第一分支的信号的上升沿和下降沿施加不同的延迟。
17.根据权利要求15所述的电路,其中,至少所述第二延迟线包括串联连接的多个延迟元件,其中每个延迟元件包括:
第一XOR逻辑门,具有定义所述延迟元件的第一输入端子的第一输入;以及
第二XOR逻辑门,具有被连接到所述第一XOR逻辑门的输出的第一输入、以及定义所述延迟元件的输出端子的输出,
其中所述第一XOR逻辑门的第二输入被连接到所述第二XOR逻辑门的第二输入,所连接的第二输入定义所述延迟元件的第二输入端子。
18.根据权利要求17所述的电路,其中,被施加至每个延迟元件的第二输入端子的配置信号的第一状态控制所述延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的输入信号的上升沿和下降沿施加对称的延迟,并且其中被施加至每个延迟元件的所述第二输入端子的配置信号的第二状态控制延迟元件,以对在所述延迟元件的所述第一输入端子处接收到的所述输入信号的上升沿和下降沿施加不同的延迟。
19.根据权利要求17所述的电路,还包括插入在两个串联连接的延迟元件之间的至少一个多路复用器,所述至少一个多路复用器具有连接到所述两个串联连接的延迟元件中的第一个延迟元件的输出的第一输入、并且具有连接到所述两个串联连接的延迟元件中的所述第一个延迟元件的输入的第二输入。
20.根据权利要求15所述的电路,还包括至少一个计数器,所述计数器配置成对振荡的次数进行计数,所述振荡是直到振荡信号的振荡衰退的时间点为止,在从所述第一分支和所述第二分支中的一个分支输出的所述振荡信号中发生的。
21.根据权利要求20所述的电路,其中,所述振荡的次数是随机数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1752066 | 2017-03-14 | ||
FR1752066A FR3064136B1 (fr) | 2017-03-14 | 2017-03-14 | Ligne a retard configurable |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108574477A true CN108574477A (zh) | 2018-09-25 |
CN108574477B CN108574477B (zh) | 2022-06-21 |
Family
ID=59745972
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810172096.8A Active CN108574477B (zh) | 2017-03-14 | 2018-03-01 | 可配置的延迟线 |
CN201820289757.0U Active CN208063163U (zh) | 2017-03-14 | 2018-03-01 | 延迟元件、延迟线以及电路 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201820289757.0U Active CN208063163U (zh) | 2017-03-14 | 2018-03-01 | 延迟元件、延迟线以及电路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10187040B2 (zh) |
EP (1) | EP3376670B1 (zh) |
CN (2) | CN108574477B (zh) |
FR (1) | FR3064136B1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111130511A (zh) * | 2018-10-30 | 2020-05-08 | 西安电子科技大学 | 一种全数字低压低功耗钟控电压比较器 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3064136B1 (fr) * | 2017-03-14 | 2020-02-28 | Stmicroelectronics (Rousset) Sas | Ligne a retard configurable |
CN115542021A (zh) * | 2021-06-30 | 2022-12-30 | 脸萌有限公司 | 脉冲信号宽度测量装置、方法、系统和介质 |
CN118041317B (zh) * | 2023-04-27 | 2024-11-26 | 珠海极海半导体有限公司 | 一种脉冲信号捕获电路、微处理芯片 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110211417A1 (en) * | 2010-02-26 | 2011-09-01 | Elite Semiconductor Memory Technology Inc. | Memory device with pseudo double clock signals and the method using the same |
US20160004510A1 (en) * | 2014-07-02 | 2016-01-07 | Stmicroelectronics (Rousset) Sas | Random number generator |
CN208063163U (zh) * | 2017-03-14 | 2018-11-06 | 意法半导体(鲁塞)公司 | 延迟元件、延迟线以及电路 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768295A (en) * | 1995-03-10 | 1998-06-16 | Nec Corporation | System for parity calculation based on arithemtic difference between data |
US6687319B1 (en) * | 1999-02-04 | 2004-02-03 | Rambus Inc. | Spread spectrum clocking of digital signals |
FR2818847A1 (fr) * | 2000-12-26 | 2002-06-28 | St Microelectronics Sa | Circuit logique a polarite variable |
-
2017
- 2017-03-14 FR FR1752066A patent/FR3064136B1/fr not_active Expired - Fee Related
- 2017-08-29 EP EP17188291.3A patent/EP3376670B1/fr active Active
- 2017-09-11 US US15/700,475 patent/US10187040B2/en active Active
-
2018
- 2018-03-01 CN CN201810172096.8A patent/CN108574477B/zh active Active
- 2018-03-01 CN CN201820289757.0U patent/CN208063163U/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110211417A1 (en) * | 2010-02-26 | 2011-09-01 | Elite Semiconductor Memory Technology Inc. | Memory device with pseudo double clock signals and the method using the same |
US20160004510A1 (en) * | 2014-07-02 | 2016-01-07 | Stmicroelectronics (Rousset) Sas | Random number generator |
CN208063163U (zh) * | 2017-03-14 | 2018-11-06 | 意法半导体(鲁塞)公司 | 延迟元件、延迟线以及电路 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111130511A (zh) * | 2018-10-30 | 2020-05-08 | 西安电子科技大学 | 一种全数字低压低功耗钟控电压比较器 |
Also Published As
Publication number | Publication date |
---|---|
CN208063163U (zh) | 2018-11-06 |
US20180269855A1 (en) | 2018-09-20 |
CN108574477B (zh) | 2022-06-21 |
EP3376670B1 (fr) | 2022-08-17 |
FR3064136A1 (fr) | 2018-09-21 |
EP3376670A1 (fr) | 2018-09-19 |
FR3064136B1 (fr) | 2020-02-28 |
US10187040B2 (en) | 2019-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN208063163U (zh) | 延迟元件、延迟线以及电路 | |
CN107346233B (zh) | 大量振荡的生成器 | |
US10659020B2 (en) | Pulse counting circuit | |
EP2665225B1 (en) | Bit generation device and bit generation method | |
US20140244702A1 (en) | Random number generator | |
US10445068B2 (en) | Random number generator | |
KR20170019702A (ko) | 난수 발생 장치 | |
WO2010034326A1 (en) | State machine and generator for generating a description of a state machine feedback function | |
US20150199176A1 (en) | Power supply for ring-oscillator based true random number generator and method of generating true random numbers | |
US9858042B1 (en) | Configurable ring oscillator | |
US10103721B2 (en) | Multiplexer structure | |
US7979482B2 (en) | Random number generator configured to combine states of memory cells | |
JP2016126517A (ja) | 乱数生成装置及び乱数生成方法 | |
TWI579763B (zh) | 具有亂數產生模式的儲存電路 | |
US9698784B1 (en) | Level-sensitive two-phase single-wire latch controllers without contention | |
KR100735953B1 (ko) | 일련 번호 생성 장치, 그 방법 및 컴퓨터 판독가능 저장매체 | |
KR102197744B1 (ko) | 무작위 천이 규칙을 적용한 셀룰러 오토마타 기반 참 난수 생성 장치 | |
JP2013182097A (ja) | 乱数生成装置、および暗号処理装置 | |
CN106569776A (zh) | Tero随机数发生器 | |
KR100622128B1 (ko) | 병렬 처리 축소 키 생성기 | |
US10289585B1 (en) | Cross-point programming of pipelined interconnect circuitry | |
CN110390964A (zh) | 管道锁存器、使用管道锁存器的半导体装置和半导体系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |