具有浮动栅极晶体管类型存储单元的随机码产生器

文档序号:1003152 发布日期:2020-10-23 浏览:17次 >En<

阅读说明:本技术 具有浮动栅极晶体管类型存储单元的随机码产生器 (Random code generator with floating gate transistor type memory cell ) 是由 古惟铭 孙文堂 陈英哲 于 2020-04-09 设计创作,主要内容包括:一种随机码产生器,包括一存储单元、两个写入缓冲器与两个感测电路。存储单元包括第一编程路径、第二编程路径、第一读取路径与第二读取路径。第一编程路径连接于第一源极线与第一位线之间,第二编程路径连接于第一源极线与第二位线之间,第一读取路径连接于第二源极线与第三位线之间,第二读取路径连接于第三源极线与第四位线之间。两个写入缓冲器分别连接至第一位线与第二位线。两个感测电路分别连接至第三位线与第四位线。两个感测电路根据读取路径上的读取电流,产生第一输出信号与第二输出信号,分别传递至对应的写入缓冲器。(A random code generator includes a memory cell, two write buffers and two sensing circuits. The memory cell includes a first programming path, a second programming path, a first reading path and a second reading path. The first programming path is connected between the first source line and the first bit line, the second programming path is connected between the first source line and the second bit line, the first reading path is connected between the second source line and the third bit line, and the second reading path is connected between the third source line and the fourth bit line. The two write buffers are respectively connected to the first bit line and the second bit line. The two sensing circuits are respectively connected to the third bit line and the fourth bit line. The two sensing circuits generate a first output signal and a second output signal according to the read current on the read path, and the first output signal and the second output signal are respectively transmitted to the corresponding write buffers.)

具有浮动栅极晶体管类型存储单元的随机码产生器

技术领域

本发明是一种随机码产生器,且特别是有关于一种具有浮动栅极晶体管类型存储单元的随机码产生器。

背景技术

一般来说,非易失性内存可区分为一次编程内存(one-time programmablememory,简称OTP内存)与多次编程内存(multi-time programmable memory,简称MTP内存)。OTP内存由多个OTP存储单元所组成,MTP内存由多个MTP存储单元所组成。另外,由浮动栅极晶体管(floating gate transistor)可以组成OTP内存单元或者MTP存储单元。

美国专利US 8,941,167中介绍了由浮动栅极晶体管所组成的OTP存储单元以及MTP存储单元。请参照图1A与图1B,其所绘示为公知由浮动栅极晶体管所组成的OTP存储单元以及偏压示意图。

OTP存储单元100包括一选择晶体管Ms与一浮动栅极晶体管Mf。选择晶体管Ms的第一端连接至一源极线SL,选择晶体管Ms的控制端连接至字线WL,浮动栅极晶体管Mf的第一端连接至选择晶体管Ms的第二端,浮动栅极晶体管Mf的第二端连接至位线BL。其中,OTP存储单元100的源极线SL与位线BL之间可作编程路径(program path)与读取路径(readpath)。亦即,提供适当的偏压(bias voltage)至字线WL、源极线SL与位线BL后,可对OTP存储单元100中的浮动栅极晶体管Mf进行编程操作(program operation)或者读取操作(readoperation)。

如图1B所示,于编程操作(PGM)时,源极线SL接收编程电压Vpp,字线WL与位线BL接收接地电压(0V)。举例来说,编程电压Vpp为8V。

此时,选择晶体管Ms开启,源极线SL与位线BL之间的编程路径产生编程电流(program current)。再者,于浮动栅极晶体管Mf中,电子由浮动栅极晶体管Mf的信道区域(channel region)注入浮动栅极,并完成编程操作。

另外,于读取操作(READ)时,源极线SL接收读取电压Vr,字线WL与位线BL接收接地电压(0V)。举例来说,读取电压Vr为3.0V。

此时,选择晶体管Ms开启,源极线SL与位线BL之间的读取路径产生读取电流(readcurrent)。再者,根据浮动栅极晶体管Mf中浮动栅极是否储存电子可以决定读取电流的大小。举例来说,当浮动栅极中未储存电子时,读取电流非常小接近于零。另外,当浮动栅极中储存电子时,读取电流较大。因此,根据位线BL上读取电流的大小即可决定OTP存储单元100的储存状态。

举例来说,提供一感测放大器(sense amplifier,未绘示)连接至位线BL,并于感测放大器中设定一参考电流(reference current)。当读取电流小于参考电流时,感测放大器可决定OTP存储单元100中的浮动栅极晶体管Mf为第一储存状态。当读取电流大于参考电流时,感测放大器可决定OTP存储单元100中的浮动栅极晶体管Mf为第二储存状态。

请参照图2A与图2B,其所绘示为公知由浮动栅极晶体管所组成的MTP存储单元以及偏压示意图。

MTP存储单元200包括一选择晶体管Ms、一浮动栅极晶体管Mf、与一电容器Ce。选择晶体管Ms的第一端连接至一源极线SL,选择晶体管Ms的控制端连接至字线WL,浮动栅极晶体管Mf的第一端连接至选择晶体管Ms的第二端,浮动栅极晶体管Mf的第二端连接至位线BL。再者,电容器Ce连接于浮动栅极与抹除线EL之间。其中,MTP存储单元200的源极线SL与位线BL之间可作编程路径与读取路径,浮动栅极与抹除线EL之间作为抹除路径(erasepath)。

如图2B所示,于编程操作(PGM)时,源极线SL接收编程电压Vpp,字线WL、位线BL与抹除线EL接收接地电压(0V)。举例来说,编程电压Vpp为8V。

此时,选择晶体管Ms开启,源极线SL与位线BL之间的编程路径产生编程电流(program current)。再者,于浮动栅极晶体管Mf中,电子由浮动栅极晶体管Mf的信道区域(channel region)注入浮动栅极,并完成编程操作。

另外,于读取操作(READ)时,源极线SL接收读取电压Vr,字线WL、位线BL与抹除线EL接收接地电压(0V)。举例来说,读取电压Vr为3.0V。

此时,选择晶体管Ms开启,源极线SL与位线BL之间的读取路径产生读取电流(readcurrent)。再者,根据浮动栅极是否储存电子可以决定读取电流的大小,并决定MTP存储单元200的储存状态。相同地,提供一感测放大器连接于位线BL上,并接收读取电流。而根据读取电流的大小,感测放大器即可决定MTP存储单元200中的浮动栅极晶体管Mf为第一储存状态或者第二储存状态。

另外,于抹除操作(ERS)时,源极线SL、字线WL、位线BL接收接地电压(0V),且抹除线EL接收抹除电压Vee。举例来说,抹除电压Vee为12.0V。

此时,储存于浮动栅极上的电子会经由抹除路径退出至抹除线EL。亦即,储存于浮动栅极上的电子会穿过电容器Ce退出至抹除线,并离开浮动栅极晶体管Mf。

物理不可复制技术(physically unclonable function,简称PUF技术)是一种创新的方式用来保护半导体芯片内部的数据,防止半导体芯片的内部数据被窃取。根据PUF技术,半导体芯片能够提供一随机码(random code)。此随机码可作为半导体芯片(semiconductor chip)上特有的身分码(ID code),用来保护内部的数据。

一般来说,PUF技术是利用半导体芯片的制造变异(manufacturing variation)来获得独特的随机码。此制造变异包括半导体的制程变异(process variation)。亦即,就算有精确的制程步骤可以制作出半导体芯片,但是其随机码几乎不可能被复制(duplicate)。因此,具有PUF技术的半导体芯片通常被运用于高安全防护的应用(applications withhigh security requirements)。

美国专利号US 9,613,714公开一种具有反熔丝晶体管类型存储单元(antifusetransistor type memory cell)的随机码产生器,并利用此存储单元的储存状态来作为随机码(random code)。而利用其它类型存储单元来作为随机码产生器即为本发明所欲达成的目的。

发明内容

本发明的主要目的在于提出一种随机码产生器,包括:一存储单元,包括一第一编程路径、一第二编程路径、一第一读取路径与一第二读取路径,其中,该第一编程路径连接于一第一源极线与一第一位线之间,该第二编程路径连接于该第一源极线与一第二位线之间,该第一读取路径连接于一第二源极线与一第三位线之间,该第二读取路径连接于一第三源极线与一第四位线之间;一第一写入缓冲器,连接至该第一位线;一第二写入缓冲器,连接至该第二位线;一第一感测电路,连接至该第三位线,其中该第一感测电路根据该第一读取路径上的一第一读取电流,产生一第一输出信号至该第二写入缓冲器;以及一第二感测电路,连接至该第四位线,其中该第二感测电路根据该第二读取路径上的一第二读取电流,产生一第二输出信号至该第一写入缓冲器;其中,于一注册操作时,该第一编程路径与该第二编程路径进行一编程操作,该第一读取路径与该第二读取路径进行一读取操作,以及当该第一输出信号与该第二输出信号的一逻辑电平不同时,该第一编程路径与该第二编程路径其中之一停止进行该编程操作。

附图说明

为了对本发明的上述及其他方面有更佳的了解,下文特举实施例,并配合所附图式详细说明如下:

图1A与图1B为公知由浮动栅极晶体管所组成的OTP存储单元以及偏压示意图。

图2A与图2B为公知由浮动栅极晶体管所组成的MTP存储单元以及偏压示意图。

图3A为本发明随机码产生器的第一实施例。

图3B为本发明随机码产生器于注册操作时的流程图。

图4A至图4C为本发明随机码产生器进行注册操作时的偏压示意图。

图5为随机码产生器产生随机码的示意图。

图6为本发明随机码产生器于注册操作时的另一流程图。

图7为本发明随机码产生器的第二实施例。

图8为本发明随机码产生器的第三实施例。

具体实施方式

本发明利用浮动栅极晶体管的特性,设计浮动栅极晶体管类型存储单元,并作为PUF存储单元运用于随机码产生器。请参照图3A,其所绘示为本发明随机码产生器的第一实施例。随机码产生器300包括一PUF存储单元c1,两个写入缓冲器(write buffer)302、304以及两个感测电路(sensing circuit)312、314。其中,感测电路312、314可为感测放大器。

根据本发明的第一实施例,PUF存储单元c1包括两条编程路径与两条读取路径。其中,源极线SLw与位线BLw之间形成第一编程路径,源极线SLw与位线BLw'之间形成第二编程路径,源极线SLr与位线BLr之间形成第一读取路径,源极线SLr'与位线BLr'之间形成第二读取路径。再者,每一条路径中皆包括一个浮动栅极晶体管。

如图3A所示,第一编程路径包括选择晶体管Ms1与浮动栅极晶体管Mf1。选择晶体管Ms1的第一端连接至一源极线SLw,选择晶体管Ms1的控制端连接至字线WL,选择晶体管Ms1的第二端连接至节点a。浮动栅极晶体管Mf1的第一端连接至节点a,浮动栅极晶体管Mf1的第二端连接至位线BLw。

第二编程路径包括选择晶体管Ms1与浮动栅极晶体管Mf2。浮动栅极晶体管Mf2的第一端连接至节点a,浮动栅极晶体管Mf2的第二端连接至位线BLw'。

第一读取路径包括选择晶体管Ms2与浮动栅极晶体管Mf3。选择晶体管Ms2的第一端连接至一源极线SLr,选择晶体管Ms2的控制端连接至字线WL,浮动栅极晶体管Mf3的第一端连接至选择晶体管Ms2的第二端,浮动栅极晶体管Mf3的第二端连接至位线BLr。另外,第一编程路径的浮动栅极晶体管Mf1与第一读取路径的浮动栅极晶体管Mf3具有共享的浮动栅极(shared floating gate)。亦即,浮动栅极晶体管Mf1的浮动栅极连接至浮动栅极晶体管Mf3的浮动栅极。

第二读取路径包括选择晶体管Ms3与浮动栅极晶体管Mf4。选择晶体管Ms3的第一端连接至一源极线SLr',选择晶体管Ms3的控制端连接至字线WL,浮动栅极晶体管Mf4的第一端连接至选择晶体管Ms3的第二端,浮动栅极晶体管Mf4的第二端连接至位线BLr'。另外,第二编程路径的浮动栅极晶体管Mf2与第二读取路径的浮动栅极晶体管Mf4具有共享的浮动栅极。亦即,浮动栅极晶体管Mf2的浮动栅极连接至浮动栅极晶体管Mf4的浮动栅极。

再者,随机码产生器300中的写入缓冲器302连接至位线BLw,写入缓冲器304连接至位线BLw',感测电路312连接至位线BLr,感测电路314连接至位线BLr'。

根据本发明的第一实施例,于随机码产生器300进行注册操作(enrollingoperation)时,感测电路312可以产生一输出信号Out至写入缓冲器304用以中断写入缓冲器304操作。相同地,感测电路314可以产生一输出信号Out'至写入缓冲器302用以中断写入缓冲器302操作。

请参照图3B,其所绘示为本发明随机码产生器于注册操作时的流程图。

首先,开始注册操作(步骤S320)。于注册操作时,随机码产生器300的第一编程路径与第二编程路径进行编程操作,第一读取路径与第二读取路径进行读取操作。

接着,当输出信号Out与输出信号Out'不相同时(步骤S322),随机码产生器300仅利用单一编程路径进行编程操作(步骤S324)。亦即,当输出信号Out与输出信号Out'其中之一改变逻辑电平时,随机码产生器300利用第一编程路径与第二编程路径其中之一来继续进行编程操作,而另一编程路径则停止编程操作。之后,随机码产生器300即完成注册操作(步骤S326)。以下详细说明之。

请参照图4A至图4C,其所绘示为本发明随机码产生器进行注册操作时的偏压示意图。

如图4A所示,于注册操作时,字线WL接收接地电压(0V),源极线SLw接收编程电压Vpp,源极线SLr与源极线SLr'接收读取电压Vr。另外,写入缓冲器302提供接地电压(0V)至位线BLw,写入缓冲器304提供接地电压(0V)位线BLw',感测电路312提供第一电压(例如0.4V)至位线BLr,感测电路314提供第一电压(例如0.4V)至位线BLr'。举例来说,编程电压Vpp为7.25V,读取电压Vr为3.6V,第一电压为0.4V。当然,第一电压也可以等于接地电压(0V)。亦即,编程电压Vpp大于读取电压Vr,读取电压Vr大于第一电压,第一电压大于等于接地电压(0V)。

此时,选择晶体管Ms1~Ms3开启,PUF存储单元c1开始进行注册操作。亦即,第一编程路径与第二编程路径开始进行编程操作,而第一读取路径与第二读取路径开始进行读取操作。

根据本发明的第一实施例,于PUF存储单元c1进行注册操作的初期,由于浮动栅极晶体管Mf1、Mf3的共享浮动栅极并未储存电子,所以第一读取路径的第一读取电流Ir1非常小,接近于零。相同地,由于浮动栅极晶体管Mf2、Mf4的共享浮动栅极并未储存电子,所以第二读取路径的第二读取电流Ir2非常小,接近于零。因此,感测电路312中的参考电流大于第一读取电流Ir1,使得输出信号Out产生第一逻辑电平"1",代表浮动栅极晶体管Mf1、Mf3为第一储存状态。另外。感测电路314中的参考电流也大于第二读取电流Ir2,使得输出信号Out'产生第一逻辑电平"1",代表浮动栅极晶体管Mf2、Mf4为第一储存状态。举例来说,感测电路312与314内的参考电流可设定为2μA。

如图4B所示,由于半导体制程的制造变异(manufacturing variation),使得第一编程路径的浮动栅极晶体管Mf1与第二编程路径的浮动栅极晶体管Mf2会有些微差异。而此差异将造成注册操作时,大部分的电子会注入两个浮动栅极晶体管Mf1、Mf2其中之一。

以图4B为例,于注册操作时,第一编程路径上的第一编程电流Ip1大于第二编程路径上的第二编程电流Ip2。换言之,大部分的电子注入浮动栅极晶体管Mf1。

由于浮动栅极晶体管Mf1、Mf3的共享浮动栅极开始储存电子,并且随着储存电子的数目越多,在第一读取路径上浮动栅极晶体管Mf3产生的第一读取电流Ir1也越来越大。另外,由于浮动栅极晶体管Mf2、Mf4的共享浮动栅极仅储存少量的电子,使得第二读取路径上浮动栅极晶体管Mf4产生的第二读取电流Ir2上升的速度远小于第一读取电流Ir1上升的速度。

由于第一读取电流Ir1与第二读取电流Ir2正在上升,但尚未超过感测电路312、314内的参考电流,所以感测电路312的输出信号Out与感测电路314的输出信号Out'皆维持在第一逻辑电平"1"。

如图4C所示,当浮动栅极晶体管Mf1、Mf3的共享浮动栅极注入特定量的电子之后,第一读取路径上的第一读取电流Ir1将大于感测电路312中的参考电流,使得输出信号Out产生第二逻辑电平"0",代表浮动栅极晶体管Mf1、Mf3改变为第二储存状态。

再者,感测电路312产生第二逻辑电平"0"的输出信号Out至写入缓冲器304,使得写入缓冲器304停止操作,并进一步控制位线BLw'为浮接状态(floating)。因此,第二编程路径停止编程操作,电子不再注入浮动栅极晶体管Mf2的浮动栅极,使得浮动栅极晶体管Mf2、Mf4维持在第一储存状态。同时,由于感测电路314的输出信号Out'仍维持在第一逻辑电平"1",将使得第一编程路径上的浮动栅极晶体管Mf1仍持续注入电子。

换言之,当感测电路312的输出信号Out与感测电路134的输出信号Out'不同时,PUF存储单元c1中仅剩下单一编程路径继续进行编程操作,而另一编程路径即停止编程操作。因此,当注册操作完成后,浮动栅极晶体管Mf1、Mf3改变为第二储存状态,浮动栅极晶体管Mf2、Mf4则维持在第一储存状态。

在另外一种情况,随机码产生器300进行注册操作时,可能第二编程路径的第二编程电流Ip2大于第一编程路径的第一编程电流Ip1,使得大部分的电子注入浮动栅极晶体管Mf2。因此,当注册操作完成后,浮动栅极晶体管Mf2、Mf4改变为第二储存状态,浮动栅极晶体管Mf1、Mf3则维持在第一储存状态。其详细操作原理类似,此处不再赘述。

由以上的说明可知,由于半导体制程的制造变异,随机码产生器300在注册操作时,并无法预测PUF存储单元c1中哪个浮动栅极晶体管会被注入大量的电子,因此本发明第一实施例的随机码产生器300确实可运用PUF技术来产生随机码。

于完成注册操作后,随机码产生器300即可再次进行读取操作并获得随机码。根据本发明的实施例,随机码产生器300仅由第一读取路径或者第二读取路径来进行读取操作即可使随机码产生器产生随机码。

以利用第一读取路径以及感测电路312来进行读取操作为例来说明。请参照图5,其所绘示为随机码产生器产生随机码的示意图。当随机码产生器300注册操作完成后进行读取操作时。字线WL接收接地电压(0V),源极线SLr接收读取电压Vr,感测电路312提供第一电压(例如0.4V)至位线BLr。另外,由于第一编程路径、第二编程路径与第二读取路径不用操作,因此写入缓冲器302、304及感测电路314维持待机(standby),使得位线BLw、BLw'、BLr'在浮接状态。

如图5所示,当浮动栅极晶体管Mf1、Mf3的共享浮动栅极中储存电子时,第一读取路径上产生的第一读取电流Ir1大于感测电路312中的参考电流,感测电路312即产生第二逻辑电平"0"的输出信号Out,并作为随机码中的一个位。

反之,如果浮动栅极晶体管Mf1、Mf3的共享浮动栅极中未储存电子时,第一读取路径上产生的第一读取电流Ir1小于感测电路312中的参考电流,感测电路312即产生第一逻辑电平"1"的输出信号Out,并作为随机码中的一个位。

再者,在实际的设计中,随机码产生器300的字线WL可以连接至多个PUF存储单元,例如8个PUF存储单元。再者,对连接至字线WL的一列PUF存储单元先进行注册操作后再进行读取操作时,即可产生8个位(一个字节)的随机码。

另外,本发明图3B所示的注册操作的流程图也可以进一步修改。举例来说,于注册操作且输出信号Out与输出信号Out'相同时,随机码产生器300提供编程电压Vpp至源极线SLw。当确认输出信号Out与输出信号Out'不相同后,随机码产生器300对单一写入路径进行编程操作时(步骤S324),更可以将编程电压Vpp提高,例如(由7.25V提高至7.5V),如此可以提升此单一写入路径的编程效率,并且注入更多电子于此单一编程路径上的浮动栅极晶体管。

另外,当随机码产生器300完成注册操作后,PUF存储单元c1中浮动栅极晶体管Mf1~Mf4的储存状态已经固定,不会再改变。因此,有心人士可利用电子束检测(electronsbeam inspection)来扫描PUF存储单元c1,并进一步推导出浮动栅极晶体管Mf1~Mf4的储存状态以及随机码。如此,随机码产生器300的随机码可能会被破解,导致半导体芯片内部的数据被窃取。

请参照图6,其所绘示为本发明随机码产生器于注册操作时的另一流程图。相较于图3B,增加了对第二编程路径进行扰乱操作(scramble operation)(步骤S610)。

由于随机码产生器300利用第一读取路径以及感测电路312来进行读取操作并产生随机码。亦即,第二读取路径以及第二编程路径中浮动栅极晶体管Mf2、Mf4的储存状态可以任意改变而不会影响随机码的内容。因此,随机码产生器300可以针对第二编程路径进行扰乱动作。举例来说,扰乱动作包括随机编程操作(random program operation)。

举例来说,随机码产生器300中包括8个PUF存储单元。随机码产生器300对8个PUF存储单元中的第二编程路径进行随机编程操作(random program operation)。亦即,随机地改变第二编程路径中浮动栅极晶体管Mf2的储存状态。而完成随机编程操作之后,就算利用电子束检测(electrons beam inspection)来扫描8个PUF存储单元的内容,也不容易推导出随机码。因此,可以更有效地防止半导体芯片内部的数据被窃取。

当然,如果随机码产生器300利用第二读取路径以及感测电路314来进行读取操作并产生随机码。则随机码产生器300可以针对第一编程路径进行扰乱动作。

请参照图7,其所绘示为本发明随机码产生器的第二实施例。第二实施例随机码产生器700与第一实施例随机码产生器300的差异在于感测电路312、314的结构。以下仅介绍此差异。

感测电路312包括一开关(switch)702与一感测放大器704,开关702的第一端连接至位线BLr,开关702的第二端连接至感测放大器704,开关702的控制端接收输出信号Out'。

感测电路314包括一开关712与一感测放大器714,开关712的第一端连接至位线BLr',开关712的第二端连接至感测放大器714,开关712的控制端接收输出信号Out。其中,开关702、712可为传输门(transmission gate)。

根据本发明的第二实施例,于随机码产生器700进行注册操作时,开关702、712为闭合状态(close state),感测放大器704、714分别接收第一读取电流Ir1与第二读取电流Ir2,并产生输出信号Out、Out'。

另外,当两个输出信号Out、Out'其中之一改变输出逻辑电平时,授控的开关即变为打开状态(open state)。举例来说,当感测放大器704的输出信号Out由第一逻辑电平"1"变化为第二逻辑电平"0"时,除了使得写入缓冲器304停止操作之外,更进一步控制感测电路314中的开关712成为打开状态,使得第二读取路径停止操作。亦即,第二读取路径不再产生第二读取电流Ir2。如此,可使得随机码产生器700降低耗能。

同理,当感测放大器714的输出信号Out'由第一逻辑电平"1"变化为第二逻辑电平"0"时,除了使得写入缓冲器302停止操作之外,更进一步控制感测电路312中的开关702成为打开状态,使得第一读取路径停止操作。

请参照图8,其所绘示为本发明随机码产生器的第三实施例。第三实施例随机码产生器800与第一实施例随机码产生器300的差异在于PUF存储单元ca的结构,PUF存储单元ca中更增加了两个控制路径。以下仅介绍此差异。

PUF存储单元ca中更包括两个电容器C1、C2。电容器C1的第一端连接至浮动栅极晶体管Mf1、Mf3的共享浮动栅极,电容器C1的第二端连接至一控制线CL1,并形成第一控制路径。电容器C2的第一端连接至浮动栅极晶体管Mf2、Mf4的共享浮动栅极,电容器C2的第二端连接至一控制线CL2,并形成第二控制路径。

再者,控制线CL1、CL2可以接收抹除电压Vee使得PUF存储单元ca中的控制路径成为抹除路径用以退出浮动栅极晶体管Mf1~Mf4中的电子。因此,PUF存储单元ca即为MTP存储单元。其中,浮动栅极晶体管Mf1、Mf3的共享浮动栅极与控制线CL1之间为第一抹除路径,浮动栅极晶体管Mf2、Mf4的共享浮动栅极与控制线CL2之间为第二抹除路径。举例来说,抹除电压Vee为12.0V。

由以上的说明可知,随机码产生器800更可进行抹除操作(erase operation),使得浮动栅极晶体管Mf1、Mf3所储存的电子经由第一抹除路径退出PUF存储单元ca,而浮动栅极晶体管Mf2、Mf4所储存的电子经由第二抹除路径退出PUF存储单元ca。

另外,由于随机码产生器800的PUF存储单元ca为MTP存储单元。因此,随机码产生器800进行注册操作过程中,对第二编程路径进行扰乱操作过程更可包括抹除操作。

假设随机码产生器800利用第一读取路径以及感测电路312来进行读取操作并产生随机码。随机码产生器800可以针对第二编程路径进行扰乱动作也不会改变随机码。再者,扰乱动作包括抹除操作以及随机编程操作。

举例来说,随机码产生器800中包括8个PUF存储单元。随机码产生器800对8个PUF存储单元中的第二抹除路径先进行抹除操作,使得第二编程路径中的浮动栅极晶体管回复为第一储存状态。接着,随机码产生器800再对8个PUF存储单元的第二编程路径进行随机编程操作。因此,完成随机编程操作之后,就算利用电子束检测来扫描8个PUF存储单元的内容,也不容易推导出随机码。因此,可以更有效地防止半导体芯片内部的数据被窃取。

当然,如果随机码产生器800利用第二读取路径以及感测电路314来进行读取操作并产生随机码。则随机码产生器800可以针对第一抹除路径进行抹除操作。之后,对再第一编程路径进行随机编程操作。

在此特别说明,以上所描述的随机码产生器300、700及800的结构也可以因外部需求(如面积考虑)做出调整。例如随机码产生器300、700及800中的源极线SLr及SLr可以共享一井区使得该些源极线相连接,进而达到面积缩小的目的。

由以上的说明可知,本发明提出一种具浮动栅极晶体管类型存储单元的随机码产生器。PUF存储单元中包括两个编程路径与两个读取路径,经过注册操作后可以使得两个编程路径上的两个浮动栅极晶体管具有相异的储存状态。由于无法准确预测两个编程路径上的两个浮动栅极晶体管的储存状态。因此,本发明的随机码产生器确实可运用PUF技术来产生随机码。

综上所述,虽然本发明已以实施例公开如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视后附的权利要求书所界定者为准。

【符号说明】

100,200:存储单元

300,700,800:随机码产生器

302,304:写入缓冲器

312,314:感测电路

702,712:开关

704,714:感测放大器

S320~S326,S610:步骤流程

21页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于DSP的伪随机序列的生成方法和装置、存储介质

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!

技术分类