半导体设备的制作方法

文档序号:13668639阅读:294来源:国知局
半导体设备的制作方法

本发明涉及半导体设备。



背景技术:

一般而言,作为降低大规模集成电路(lsi)的功耗的技术,即用于切断供给半导体芯片内部的电路(内部电路)的电源电压并将内部电路置于所谓的睡眠状态的技术,已知有所谓的功率门控。与功率门控有关的技术包括防止内部状态或内部数据在切断电源电压之后被擦除的技术。例如,专利文献1描述了通过其提供易失性寄存器和非易失性寄存器的技术。根据该技术,当电源电压的供给被切断时,数据被从易失性寄存器保存到非易失性寄存器,并且当重新开始电源电压的供给时,数据被从非易失性寄存器恢复到易失性寄存器。

例如,专利文献2描述了一种非易失性触发器电路,其在电源电压的供给被切断时使用组成非易失性存储部的磁隧道结(mtj)元件来存储内部状态和内部数据。

图11描绘了使用构成非易失性存储部的mtj元件的现有非易失性触发器电路的典型电路图。图11中所描绘的非易失性触发器电路1016包括主锁存器1030、从锁存器1032、正金属氧化物半导体(pmos)晶体管p5和p6以及mtj元件mtj1和mtj2。主锁存器1030包括反相器iv1和iv2,与非(nand)电路nand1以及传输门tg1至tg3。另外,从锁存器1032包括反相器iv5和iv6、pmos晶体管p7、nand电路nand2以及传输门tg4。传输门tg1至tg4由时钟信号cb并且由时钟信号c(具有与时钟信号clk的逻辑值相同的逻辑值)控制,所述时钟信号cb通过反相器iv10使时钟信号clk反相而获得,所述时钟信号c由反相器iv11使反相器iv10的输出反相而获取。

在图11中所描绘的现有非易失性触发器电路1016中,如果要通过功率门控来切断电源电压的供给,则控制信号sr的逻辑值被设置为“0”以使栅极被施加控制信号sr的pmos晶体管p5至p7导通。然后,连续地馈送控制信号ctrl的逻辑值“1”和“0”,从而将保持在从锁存器1032中的一位信息写入到mtj元件mtj1和mtj2。在功率门控结束时,重新开始电源电压的供给,并且控制信号sr的逻辑值被设置为“0”,以使pmos晶体管p5至p7导通。这允许通过使用mtj元件mtj1和mtj2之间的电阻值中的差异来将在进行上述写入操作时可应用的内部电路状态恢复到从锁存器1032中。

引用列表

专利文献

专利文献1:jp2014-225251a

专利文献2:jp2015-35653a



技术实现要素:

技术问题

图11中所描绘的非易失性触发器电路1016允许mtj元件mtj1和mtj2在电源电压的供给被切断之后保留数据(非易失性数据保留)。然后进行功率门控操作以将非易失性触发器电路1016和由输出信号q驱动的内部电路置于睡眠状态,从而降低能量消耗。此外,在功率门控操作之前和之后保留内部电路状态和内部数据。

然而,一个问题在于,当向mtj元件mtj1和mtj2写入数据时,诸如图11中所描绘的现有非易失性触发器电路1016消耗大量的能量。

也就是说,当非易失性触发器电路1016在功率门控时将保留的数据存储到mtj元件mtj1和mtj2中时,有必要使相对大的电流流向mtj元件mtj1和mtj2。流向mtj元件mtj1和mtj2的大电流使对mtj元件mtj1和mtj2的写入操作需要消耗大量的能量。如果功率门控的时段(睡眠时段)相对短,则尽管电源电压的供给被切断,但是对mtj元件mtj1和mtj2的写入操作的能量开销可能导致能量消耗的过度增加。即使睡眠时段相对长,对mtj元件mtj1和mtj2的写入操作所需的大量能量也可能减少可由功率门控节省的能量消耗的量。

已经设计出本发明来解决上述问题。因此,本发明的一个目的是提供一种半导体设备,其能够减少将数据写入到非易失性存储部所消耗的能量的量。

问题的解决方案

根据本发明的第一方面,提供了一种半导体设备,包括:触发器;非易失性存储部,所述非易失性存储部被配置为存储保持在触发器中的数据;以及写入控制部,所述写入控制部被配置为如果在向自身设备的电源电压或接地电压的供给被切断的情况下、存储在非易失性存储部中的数据与保持在触发器中的数据不一致,则进行控制以将保持在触发器中的数据写入到非易失性存储部,如果存储在非易失性存储部中的数据与保持在触发器中的数据一致,则写入控制部还进行控制以不将保持在触发器中的数据写入到非易失性存储部。

根据本发明的第二方面,在根据上述第一方面的半导体设备中,写入控制部保留存储在非易失性存储部中的数据,并且基于保留的数据与保持在触发器中的数据之间的比较的结果来进行控制。

根据本发明的第三方面,根据上述第一或第二方面的半导体设备还包括第一开关元件,所述第一开关元件被配置为切换触发器与非易失性存储部之间的连接和断开。写入控制部在进行控制以写入数据时使第一开关元件将触发器与非易失性存储部连接,写入控制部在进行控制以不写入数据时还使第一开关元件将触发器从非易失性存储部断开。

根据本发明的第四方面,根据上述第一至第三方面中的任一项的半导体设备还包括恢复部,所述恢复部被配置为根据外部输入的恢复控制信号来恢复写入到非易失性存储部的数据,以便在重新开始向自身设备供给先前切断的电源电压或接地电压时恢复写入到非易失性存储部的数据。

根据本发明的第五方面,在根据上述第一至第四方面中的任一项的半导体设备中,恢复部包括第二开关元件,所述第二开关元件被配置为根据恢复控制信号来切换触发器与非易失性存储部之间的连接和断开。

根据本发明的第六方面,在根据上述第一至第五方面中的任一项的半导体设备中,非易失性存储部是磁隧道结元件。

发明的有利效果

因此,本发明提供了减少向非易失性存储部写入数据所消耗的能量的量的有利效果。

附图说明

图1是描绘第一实施例的典型半导体设备的框图。

图2是第一实施例的非易失性触发器电路的电路图。

图3是用于说明第一实施例的mtj元件的层组成和操作的示意性横截面图。

图4是用于说明第一实施例的mtj元件的操作的电压-电阻图。

图5是描绘当第一实施例的非易失性触发器电路的输入信号d的逻辑值为“1”时可应用的控制序列的时序图。

图6是描绘当第一实施例的非易失性触发器电路的输入信号d的逻辑值为“0”时可应用的控制序列的时序图。

图7是第二实施例的非易失性触发器电路的电路图。

图8是第三实施例的非易失性触发器电路的电路图。

图9是描绘当第三实施例的非易失性触发器电路的输入信号d的逻辑值为“1”时可应用的控制序列的时序图。

图10是第四实施例的非易失性触发器电路的电路图。

图11是现有的非易失性触发器电路的电路图。

具体实施方式

下面参照附图描述本发明的一些优选实施例。注意,贯穿附图,相似的附图标记指示具有相似功能的相似部件,对其的说明在多余的情况下将在下文中被省略。

第一实施例

首先说明如何配置本实施例的半导体集成电路。图1是描绘本实施例的典型半导体集成电路10的框图。

本实施例的半导体集成电路10包括睡眠控制电路12、电源开关14、非易失性触发器电路16和内部电路18。

本实施例的半导体集成电路10具有通过切断对内部电路18和其它部件的电源电压vddv的供给(即,通过使相关电路进入所谓的睡眠状态)来降低功耗的功能。

睡眠控制电路12具有控制睡眠状态的功能(即,控制如何供给电源电压vddv)。本实施例的睡眠控制电路12向电源开关14输出睡眠控制信号ps_en。睡眠控制电路12还向非易失性触发器电路16输出控制信号save(保存)、sr1、sr2和ctrl,其细节将稍后讨论。

电源开关14具有根据睡眠控制信号ps_en切断电源电压vddv的供给的功能。如图2中所描绘,本实施例的电源开关14通常使用pmos晶体管p10。pmos晶体管p10的栅极与睡眠控制电路12连接。睡眠控制信号ps_en被从睡眠控制电路12输入到pmos晶体管p10的栅极。

pmos晶体管p10的源极与供给电源电压vdd的电源线连接。pmos晶体管p10的漏极与供给电源电压vddv的电源线连接。在本实施例的半导体集成电路10中,未进入睡眠状态的电路由电源电压vdd驱动;进入睡眠状态的电路由电源电压vddv驱动。在本实施例中,在睡眠控制电路12的控制下的能够在功率门控时转变为睡眠状态的电路区域(即,由电源电压vddv驱动的电路区域)被称为“功率门控(pg)区域”。

具体而言,在进行正常操作的正常状态下,睡眠控制电路12向电源开关14输出逻辑值为“0”(低电平)的睡眠控制信号ps_en。该信号由此使电源开关14的pmos晶体管p10导通,从而供给电源电压vddv。另一方面,在功率门控期间的睡眠状态下,睡眠控制电路12向电源开关14输出逻辑值为“1”(高电平)的睡眠控制信号ps_en。该信号由此关断电源开关14的pmos晶体管p10。这切断了电源电压vddv的供给并且阻止pg区域中的电路被电源电压vddv驱动,从而引起睡眠状态。

内部电路18不限于任何特定事物。这可能是功能满足用户要求的电路。内部电路18可以包括多个功能(电路)。此外,内部电路18可以包括由电源电压vdd驱动的电路或由电源电压vddv驱动的电路(pg区域),或者两者。

起本发明的半导体设备的作用的非易失性触发器电路16具有保持(锁存)输入信号d并输出与输入信号d相对应的输出信号q(即,具有与输入信号d相同的逻辑值(电平)的输出信号)的功能。本实施例的非易失性触发器电路16处于pg区域中,并由电源电压vddv驱动。

图2是本实施例的非易失性触发器电路16的电路图。如图2中所描绘的,本实施例的非易失性触发器电路16包括d型触发器主锁存器30、d型触发器从锁存器32和写入控制电路34。

主锁存器30具有在根据时钟信号clk的时间捕获和锁存从非易失性触发器电路16的外部输入的输入信号d的功能。

主锁存器30包括反相器iv1至iv3以及传输门tg1至tg3。输入信号d从非易失性触发器电路16的外部输入到反相器iv1。

传输门tg1至tg3根据时钟信号clk被控制为导通和关断。在根据时钟信号clk的时间导通和关断传输门tg1的定时与根据时钟信号clk导通和关断传输门tg2和tg3的定时相反。

从锁存器32具有如下功能:在将具有与输入信号d相同的逻辑值的输出信号q输出到非易失性触发器电路16的外部之前,在根据时钟信号clk的时间捕获和锁存从主锁存器30输出的数据。

从锁存器32包括反相器iv4至iv6、传输门tg4和负金属氧化物半导体(nmos)晶体管n7。传输门tg4被控制为在根据时钟信号clk的时间导通和关断。根据控制信号sr1,nmos晶体管n7被控制为导通和关断。在根据时钟信号clk的时间导通和关断传输门tg1的定时与根据时钟信号clk导通和关断传输门tg4的定时相同。

从锁存器32中的反相器iv6将输出信号q输出到非易失性触发器电路16的外部(即,到内部电路18)。

下面解释由本实施例的主锁存器30和从锁存器32进行的触发器操作。

当时钟信号clk的逻辑值从“1”变为“0”时,传输门tg1和tg4导通并且传输门tg2和tg3关断。这使得主锁存器30捕获输入信号d并使得从锁存器32保持在时钟信号clk的逻辑值改变为“0”之前捕获的信号。

当时钟信号clk的逻辑值从“0”变为“1”时,传输门tg1和tg4关断并且传输门tg2和tg3导通。这使得主锁存器30保持在时钟信号clk的逻辑值变为“1”之前捕获的信号并使得从锁存器32捕获从主锁存器30的传输门tg3输出的信号,反相器iv6输出具有与所捕获的信号相同的逻辑值的输出信号q。

本实施例的写入控制电路34暂时保留与写入到mtj元件mtj1和mtj2的数据相同的数据,并且将保留的数据与当前保持在从锁存器32中的数据进行比较。基于比较结果,写入控制电路34控制是否向mtj元件mtj1和mtj2写入正保持在从锁存器32中的数据。如果保持在mtj元件mtj1和mtj2中的数据与保持在从锁存器32中的数据一致,则写入控制电路34进行控制以不将数据写入到mtj元件mtj1和mtj2。

具体而言,本实施例的写入控制电路34包括反相器iv8和iv9、传输门tg5和tg6、双输入非异或(neor)电路neor1以及双输入或非(nor)电路nor1,如图2中所描绘的。

传输门tg5的输入端与从锁存器32中的反相器iv4的输入端(即,与主锁存器30中的传输门tg3的输出端)连接。传输门tg5的输出端与反相器iv8的输入端连接并与传输门tg6的输出端连接。反相器iv9的输出端与传输门tg6的输入端连接。传输门tg5和tg6根据控制信号save被控制为导通和关断。在根据控制信号save的时间导通和关断传输门tg5的定时与根据控制信号save导通和关断传输门tg6的定时相反。

neor电路neor1的一个输入端与反相器iv8的输出端连接并与反相器iv9的输入端连接。neor电路neor1的另一个输入端与从锁存器32中的反相器iv4的输出端(即,与反相器iv6的输入端)连接。

控制信号sr2被输入到nor电路nor1的一个输入端。nor电路nor1的另一个输入端与neor电路neor1的输出端连接。nor电路nor1输出输出信号selectw。

如图2中所描绘的,本实施例的非易失性触发器电路16还包括mtj元件mtj1和mtj2以及nmos晶体管n1至n6。顺便提及,nmos晶体管n2和n3是本发明的第一开关元件的示例,并且nmos晶体管n1和n4是本发明的恢复部和第二开关元件的示例。输入到nmos晶体管n1和n4的控制信号sr2是本发明的恢复控制信号的示例。

以下说明的是作为本发明的典型非易失性存储部的mtj元件mtj1和mtj2。图3是用于说明本实施例的mtj元件mtj1和mtj2的层组成和操作的示意性横截面图。图4是用于说明本实施例的mtj元件mtj1和mtj2的操作的电压-电阻图。如图3中所描绘的,每个mtj元件包括具有磁性并且其磁方向改变的自由层20、也具有磁性并且其磁方向为恒定的合成反铁磁性(saf)钉扎层23、以及布置在自由层20和钉扎层23之间的隧道势垒层22。钉扎层23包括参考层24。该mtj元件还包括下层26和底电极28。

如图4中所描绘的,每个mtj元件的电阻值根据施加到mtj元件的电压的幅度而改变。因此,如果使电流从自由层20流向钉扎层23,则自由层20的磁方向变得与钉扎层23的磁方向相同。这使得mtj元件具有低电阻并且引起逻辑值为“0”的数据被保留的状态。另一方面,如果使电流从钉扎层23流向自由层20,则使得自由层20的磁方向与钉扎层23的磁方向相反。这使得mtj元件具有高电阻并且引起逻辑值为“1”的数据被保留的状态。

写入到mtj元件的数据(信息)在电源电压vddv的供给被切断时被保留。因此,在进行功率门控时,在切断电源电压vddv的情况下转换到睡眠状态之前,本实施例的非易失性触发器电路16将保持在从锁存器32中的数据写入到mtj元件mtj1和mtj2用于存储在其中。在从睡眠状态出来时,非易失性触发器电路16将写入在mtj元件mtj1和mtj2中的数据读出到从锁存器32以用于数据恢复。

顺便提及,在本实施例中,将保持在从锁存器32中的数据放入mtj元件mtj1和mtj2的操作被称为“存储”,并且从mtj元件mtj1和mtj2读取数据并将其放回到从锁存器32中的操作被称为“恢复”。

本实施例中的mtj元件mtj1和mtj2在自由层20侧的端部与控制信号ctrl流动于的控制信号线连接。mtj元件mtj1在钉扎层23侧的一端与nmos晶体管n5的一端(源极)连接。mtj元件mtj2在钉扎层23侧的一端与nmos晶体管n6的一端(源极)连接。

nmos晶体管n5的一端(源极)与mtj元件mtj1连接。nmos晶体管n5的另一端(漏极)与nmos晶体管n1和n2的一端(源极)连接。nmos晶体管n6的一端(源极)与mtj元件mtj2连接。nmos晶体管n6的另一端(漏极)与nmos晶体管n3和n4的一端(源极)连接。根据控制信号sr1,nmos晶体管n5和n6被控制为导通和关断。

nmos晶体管n1和n2的另一端(漏极)与从锁存器32(反相器iv4的输入端)连接。nmos晶体管n3和n4的另一端与从锁存器32(反相器iv4的输出端)连接。根据控制信号sr2,nmos晶体管n1和n4被控制为导通和关断。nmos晶体管n2和n3根据从写入控制电路34输出的输出信号selectw而被控制为导通和关断。

下面说明的是本实施例的非易失性触发器电路16的操作。图5是描绘本实施例的非易失性触发器电路16的控制序列的时序图。图5描绘了其中逻辑值为“1”(高电平)的输入信号d被非易失性触发器电路16捕获并保留的情况。

在初始状态下,从睡眠控制电路12输入到非易失性触发器电路16的控制信号sr2的逻辑值是“1”。同时,当控制信号sr1的逻辑值从“0”变为“1”时,在控制信号sr1的逻辑值是“1”时控制信号ctrl的逻辑值从“0”变为“1”并且然后从“1”变为“0”,mtj元件mtj1和mtj2被初始化。在mtj元件mtj1和mtj2被初始化之后,控制信号sr1的逻辑值再次被设置为“0”。在通过将控制信号save的逻辑值设置为“1”来初始化保持在写入控制电路34中的数据之后,将控制信号save的逻辑值再次设置为“0”。

然后转换到活动状态,其中输入信号d被捕获到主锁存器30和从锁存器32中。在图5中所描绘的活动1状态下,控制信号sr1的逻辑值和控制信号save的逻辑值各自被设置为“0”。因为控制信号sr1的逻辑值被设置为“0”,所以nmos晶体管n7被关断。在控制信号save的逻辑值被设置为“0”的情况下,传输门tg5关断并且传输门tg6导通。

在上述状态下,切换时钟信号clk使得主锁存器30和从锁存器32各自作为普通的触发器工作,从而如上所述捕获并保留输入信号d。

为了接下来进行功率门控,保持在从锁存器32中的数据被存储到mtj元件mtj1和mtj2中。该操作在存储状态下执行。在存储状态下,控制信号sr1的逻辑值被设置为“1”,并且控制信号sr2的逻辑值被设置为“0”。发生以下两种存储状态:

一种存储状态是图5中所描绘的存储1状态。当保持在写入控制电路34中的数据(保持在mtj元件mtj1和mtj2中的数据)与保持在从锁存器32中的数据不同时,发生该状态。

保持在写入控制电路34中的数据从反相器iv8输入到neor电路的neor1的一个输入端。保持在从锁存器32中的数据从反相器iv4输入到neor电路neor1的另一个输入端。如果两个数据项的电平彼此不一致,则neor电路neor1输出逻辑值为“0”的信号。因此,逻辑值为“0”的控制信号sr2被输入到nor电路nor1的一个输入端,并且逻辑值为“0”的信号从neor电路neor1输入到nor电路nor1的另一个输入端。结果,从nor电路nor1输出的输出信号selectw的逻辑值是“1”。

在输出信号selectw的逻辑值被设置为“1”的情况下,nmos晶体管n2和n3导通。在控制信号sr1的逻辑值被设置为“1”并且nmos晶体管n5至n7导通的情况下,将控制信号ctrl的逻辑值从“0”改变为“1”并且然后从“1”改变为“0”,使得电流在从锁存器32与mtj元件mtj1和mtj2之间流动。这使得保持在从锁存器32中的数据被写入到mtj元件mtj1和mtj2。在这种情况下,由于流向mtj元件mtj1和mtj2的电流,写入能量被消耗。

另一种存储状态是图5中所指示的存储2状态。当保持在写入控制电路34中的数据与保留在从锁存器32中的数据一致时,发生该状态。

如果两个输入数据项的电平彼此一致,则neor电路neor1输出逻辑值为“1”的信号。在这种情况下,逻辑值为“0”的控制信号sr2被输入到nor电路nor1的一个输入端,并且逻辑值为“1”的信号从neor电路neor1输入到nor电路nor1的另一个输入端。结果,从nor电路nor1输出的输出信号selectw的逻辑值是“0”。

在输出信号selectw的逻辑值被设置为“0”的情况下,nmos晶体管n2和n3关断。因为nmos晶体管n1和n4也关断,所以即使当nmos晶体管n5和n6导通时在从锁存器32与mtj元件mtj1和mtj2之间也不形成电流路径,所以没有数据被写入到mtj元件mtj1和mtj2。因为此时没有电流流向mtj元件mtj1和mtj2,所以不消耗写入能量。

存储状态下的操作之后是转换到睡眠状态。在睡眠状态下,睡眠控制信号ps_en的逻辑值被设置为“1”。这使电源开关14的pmos晶体管p10关断以切断对pg区域的电源电压(电源电压vddv)的供给。当电源电压被切断时,pg区域的电路通过泄漏而被放电。这使得从锁存器32中的每个节点的电压变为0v。结果,如图5中所描绘的,输出信号q的逻辑值从“1”逐渐变为“0”。

同样在睡眠状态下,控制信号sr1的逻辑值是“0”。因此,nmos晶体管n5和n6保持关断。

在睡眠状态终止的情况下,接下来进行恢复操作以返回到正常操作。恢复操作在恢复状态(图5中的恢复1和恢复2)下执行。在恢复状态下,睡眠控制信号ps_en的逻辑值从“1”变为“0”,控制信号sr1的逻辑值从“0”变为“1”,并且控制信号sr2的逻辑值固定在“1”。

在上述情况下,在睡眠控制信号ps_en的逻辑值被设置为“0”的情况下,电源开关14的pmos晶体管p10导通。这重新开始向pg区域供给电源电压vddv。因为逻辑信号sr1的逻辑值被设置为“1”,所以nmos晶体管n5至n7导通。而且,在控制信号sr2的逻辑值被设置为“1”的情况下,nmos晶体管n1和n4导通。这使得保持在mtj元件mtj1和mtj2中的数据被写入到从锁存器32。结果,在电源电压vddv被切断之前保持在从锁存器32中的数据被恢复。

同样在恢复状态下,在完成将数据恢复到从锁存器32时,控制信号sr1的逻辑值从“1”变为“0”并且控制信号save的逻辑值从“0”变为“1”。因为控制信号sr1的逻辑值被设置为“0”,所以nmos晶体管n5至n7关断。在控制信号save的逻辑值被设置为“1”的情况下,传输门tg5导通并且传输门tg6关断。结果,与恢复到从锁存器32的数据相同的数据被存储到写入控制电路34中。

在本实施例的非易失性触发器电路16的上述活动中,恢复操作使保持在mtj元件mtj1和mtj2中的最新数据总是保留在写入控制电路34中。因此,当在主锁存器30和从锁存器32的随后正常触发器操作(处于活动状态)之后是另一恢复操作时,保持在mtj元件mtj1和mtj2中的数据被保留在写入控制电路34中的数据代替。

在存储操作中,写入控制电路34将内部保留的数据与保持在从锁存器32中的数据进行比较,以确定是否将数据写入到mtj元件mtj1和mtj2。如果内部保留的数据与保持在从锁存器32中的数据一致,则写入控制电路34进行控制以不将数据写入到mtj元件mtj1和mtj2。结果,本实施例的非易失性触发器电路16停止对mtj元件mtj1和mtj2的冗余写入操作,从而减少浪费的写入能量消耗。

参照图5,前面的段落给出了对非易失性触发器电路16如何工作以捕获和保持逻辑值为“1”的输入信号d的详细说明。该说明也适用于保持逻辑值为“0”的输入信号d的非易失性触发器电路16。图6是描绘当本实施例的非易失性触发器电路16的输入信号d的逻辑值是“0”时可应用的控制序列的时序图。

在活动1状态下,如图6中所描绘的,切换时钟信号clk使得主锁存器30和从锁存器32以与正常触发器操作中相同的方式操作,从而如上所述捕获和保持输入信号d。因为输入信号d的逻辑值是“0”,所以在图6中所描绘的情况下输出信号q的逻辑值也是“0”。输出信号q的逻辑值在存储状态之后被保持在“0”。如果输出信号q的逻辑值是“0”,则与逻辑值为“1”时(参见图5)不同,在睡眠状态下逻辑值在“0”处保持不变。

在逻辑值为“0”的输入信号d被保留的情况下,如图6中所描绘的,除了输出信号q的逻辑值不同之外,非易失性触发器电路16的操作、从睡眠控制电路12输出的各种控制信号的状态和电源开关14的操作与以上参照图5描述的那些相同。因此,这些操作和状态将不会被进一步详细讨论。

如上所述,本实施例的半导体集成电路10(非易失性触发器电路16)不管输入信号d的逻辑值如何都抑制对mtj元件mtj1和mtj2的冗余写入操作。

第二实施例

本实施例的非易失性触发器电路16具有与第一实施例的非易失性触发器电路16不同布置的nmos晶体管n1至n6、neor电路neor1和nor电路nor1。非易失性触发器电路16的其他结构和半导体集成电路10的整体配置与第一实施例中的相同,因此在冗余的情况下将不再进一步讨论。

图7是本实施例的非易失性触发器电路的电路图。如图7中所示,nmos晶体管n5和n6与从锁存器32连接,并且nmos晶体管n1至n4与mtj元件mtj1和mtj2连接。

具体而言,nmos晶体管n5的另一端(漏极)与从锁存器32(反相器iv4的输入端)连接。nmos晶体管n6的另一端(漏极)与从锁存器32(反相器iv4的输出端)连接。如在第一实施例中那样,根据控制信号sr1,nmos晶体管n5和n6被控制为导通和关断。

nmos晶体管n1和n2的另一端(漏极)与nmos晶体管n5的一端(源极)连接,并且nmos晶体管n1和n2的一端(源极)与mtj元件mtj1连接。nmos晶体管n3和n4的另一端(漏极)与nmos晶体管n6的一端(源极)连接,并且nmos晶体管n3和n4的一端(源极)与mtj元件mtj2连接。如在第一实施例中一样,根据控制信号sr2,nmos晶体管n1和n4被控制为导通和关断。根据从写入控制电路34输出的输出信号selectw,nmos晶体管n2和n3被控制为导通和关断。

同样在本实施例的非易失性触发器电路16中,写入控制电路34中具有不同地布置的neor电路neor1和nor电路nor1。

如图7中所描绘的,控制信号sr2被输入到nor电路nor1的一个输入端。反相器iv4的输出被输入到nor电路nor1的另一个输入端。反相器iv8的输出被输入到neor电路neor1的一个输入端。nor电路nor1的输出被输入到neor电路neor1的另一个输入端。neor电路neor1输出输出信号selectw。

下面说明本实施例的非易失性触发器电路16的操作。

在上面结合第一实施例讨论的存储状态下,控制信号sr2的逻辑值是“0”,使得nor电路nor1输出通过使来自反相器iv4的输出信号的逻辑值反转而获得的信号。因此,如果保留在写入控制电路34中的数据与保持在从锁存器32中的数据一致,则输入到neor电路neor1的两个信号具有不同的逻辑值。如果这两个数据项彼此不一致,则到neor电路neor1的两个输入信号具有相同的逻辑值。

如果保留在写入控制电路34中的数据与保持在从锁存器32中的数据一致,则来自neor电路neor1的输出信号selectw的逻辑值是“0”。如果这两个数据项彼此不一致,则输出信号selectw的逻辑值是“1”。因此,写入控制电路34以与上面结合第一实施例讨论的存储状态下相同的方式输出输出信号selectw。

如上所述,当以上面结合第一实施例讨论的相同的控制序列(参见图2和图6)进行操作时,第二实施例提供与第一实施例的非易失性触发器电路16的功能相同的功能。

第三实施例

下面结合pmos晶体管代替在上述实施例的非易失性触发器电路16中使用的nmos晶体管n1至n7的情况来说明第三实施例。将不再进一步描述与上述实施例中的非易失性触发器电路16和半导体集成电路10的结构和操作相同的结构和操作。

图8是本实施例的非易失性触发器电路的电路图。如图8中所描绘的,本实施例的非易失性触发器电路116包括代替上述实施例的非易失性触发器电路16中的nmos晶体管n1至n7的pmos晶体管p1至p7。顺便提及,pmos晶体管p2和p3是本发明的第一开关元件的示例,并且pmos晶体管p1和p4是本发明的恢复部和第二开关元件的示例。输入到pmos晶体管p1和p4的控制信号sr2是本发明的恢复控制信号的示例。

因此,在本实施例的半导体集成电路110中,功率开关114不同于上述实施例的功率开关14。如图8中所描绘的,本实施例的功率开关114通常使用nmos晶体管n10。通过使从睡眠控制电路12输出的睡眠控制信号ps_en的逻辑值反转而获得的反相信号被输入到nmos晶体管n10的栅极。

在正常状态下,逻辑值为“1”的信号(睡眠控制信号ps_en的反相信号)被输入到nmos晶体管n10以使之导通。这使虚拟地(vgnd)电压降至地(gnd)电压(vgnd>gnd)。同时,在功率门控时,逻辑值为“0”的信号(睡眠控制信号ps_en的反相信号)被输入到nmos晶体管n10以使之关断。这将供给pg区域的gnd电压切换为vgnd电压。即,在正常状态(nmos晶体管n10导通)下,将gnd电压作为地供给pg区域。另一方面,在功率门控(nmos晶体管n10关断)时,gnd电压的供给被切断,所以地变成vgnd电压。在这种情况下,vgnd大于gnd。因为地电势升高,pg区域停止被驱动并被置于睡眠状态。

另外,因为在本实施例的非易失性触发器电路116中使用pmos晶体管p1至p7,所以布置在本实施例的写入控制电路134中的逻辑电路也不同于上述实施例中的逻辑电路。

如图8中所描绘的,本实施例的写入控制电路134包括作为逻辑电路的neor电路neor1和or电路or1。

反相器iv8的输出被输入到neor电路neor1的一个输入端。反相器iv4的输出被输入到neor电路neor1的另一个输入端。通过使控制信号sr2的逻辑值反转而获得的反相信号被输入到or电路or1的一个输入端。neor电路neor1的输出被输入到or电路or1的另一个输入端。or电路or1输出输出信号selectw。

下面说明本实施例的非易失性触发器电路116的操作。图9是描绘本实施例的非易失性触发器电路116的控制序列的时序图。图9描绘了逻辑值为“1”的输入信号d被非易失性触发器电路116捕获并保留的情况。

在初始状态下,从睡眠控制电路12输入到非易失性触发器电路116的控制信号sr2的逻辑值是“0”。当控制信号sr1的逻辑值从“1”变为“0”时,并且当控制信号sr1的逻辑值为“0”时控制信号ctrl的逻辑值从“1”变为“0”然后从“0”变为“1”时,mtj元件mtj1和mtj2被初始化。在mtj元件mtj1和mtj2被初始化之后,控制信号sr1的逻辑值再次变为“1”。而且,在通过将控制信号save的逻辑值设置为“1”来初始化保留在写入控制电路134中的数据之后,将控制信号save的逻辑值再次设置为“0”。

然后转换到输入信号d被捕获到主锁存器30和从锁存器32中的活动状态。在图9中所描绘的活动1状态下,控制信号sr1的逻辑值被设置为“1”,并且控制信号save的逻辑值被设置为“0”。因为控制信号sr1的逻辑值是“1”,所以pmos晶体管p7关断。此外,因为控制信号save的逻辑值是“0”,所以传输门tg5关断并且传输门tg6导通。

在上述状态下,切换时钟信号clk使得主锁存器30和从锁存器32以与普通触发器相同的方式操作,从而如上所述捕获并保持输入信号d。

为了接下来进行功率门控,保持在从锁存器32中的数据首先被存储到mtj元件mtj1和mtj2中。在存储状态下,控制信号sr1的逻辑值被设置为“0”,并且控制信号sr2的逻辑值被设置为“1”。

以下说明的是保持在写入控制电路34中的数据(即,保持在mtj元件mtj1和mtj2中的数据)与保留在从锁存器32中的数据不同的存储1状态。

保持在写入控制电路134中的数据从反相器iv8输入到neor电路neor1的一个输入端。保持在从锁存器32中的数据从反相器iv4输入到neor电路neor1的另一个输入端。如果这两个输入数据项的电平彼此不一致,则neor电路neor1输出逻辑值为“0”的信号。

因为控制信号sr2的逻辑值是“1”,所以通过使控制信号sr2反转而获得的逻辑值为“0”的信号被输入到or电路or1的一个输入端。逻辑值为“0”的信号从neor电路neor1输入到or电路or1的另一个输入端。因此,从or电路or1输出的输出信号selectw的逻辑值是“0”。

因为输出信号selectw的逻辑值是“0”,所以pmos晶体管p2和p3导通。在控制信号sr1的逻辑值被设置为“0”并且pmos晶体管p5至p7导通的情况下,将控制信号ctrl的逻辑值从“1”变为“0”然后从“0”变为“1”使得电流在从锁存器32与mtj元件mtj1和mtj2之间流动。这使得保持在从锁存器32中的数据被写入mtj元件mtj1和mtj2。在这种情况下,由于流向mtj元件mtj1和mtj2的电流,消耗写入能量。

接下来说明存储2状态,其中,相比之下,保持在写入控制电路34中的数据与保留在从锁存器32中的数据一致。

如果这两个输入数据项的电平彼此一致,则neor电路neor1输出逻辑值为“1”的信号。因此,通过使控制信号sr2反转而获得的逻辑值为“0”的信号被输入到or电路or1的一个输入端。逻辑值为“1”的信号从neor电路neor1输入到or电路or1的另一个输入端。结果,从or电路or1输出的输出信号selectw的逻辑值是“1”。

因为输出信号selectw的逻辑值是“1”,所以pmos晶体管p2和p3关断。因为pmos晶体管p1和p4也关断,所以即使当pmos晶体管p5和p6导通时在从锁存器32与mtj元件mtj1和mtj2之间也不形成电流路径,所以没有数据被写入到mtj元件mtj1和mtj2。因为此时没有电流流向mtj元件mtj1和mtj2,所以不消耗写入能量。

存储状态下的操作之后是转换到睡眠状态。在睡眠状态下,睡眠控制信号ps_en的逻辑值被设置为“1”。所产生的反相信号控制电源开关114关断其nmos晶体管n10,从而切断对pg区域的gnd电压的供给。在gnd电压被切断的同时,pg区域的电路中的所有节点都通过来自电源电压vdd的泄漏而被充电。这使得从锁存器32中的每个节点的电压与电源电压vdd相同。

同样在睡眠状态下,控制信号sr1的逻辑值是“1”。因此,pmos晶体管p5和p6保持关断。

在睡眠状态终止的情况下,接下来进行恢复操作以返回到正常操作。在恢复状态下,睡眠控制信号ps_en的逻辑值从“1”变为“0”,控制信号sr1的逻辑值从“1”变为“0”,并且控制信号sr2的逻辑值固定在“0”。

电源开关14中的nmos晶体管n10导通。这重新开始向pg区域供给gnd电压,从而使地电势从vgnd电压降至gnd电压。因为控制信号sr1的逻辑值被设置为“0”,所以pmos晶体管p5至p7导通。此外,在控制信号sr2的逻辑值被设置为“0”的情况下,pmos晶体管p1和p4导通。这使得保持在mtj元件mtj1和mtj2中的数据被写入到从锁存器32。结果,在gnd电压被切断之前保留在从锁存器32中的数据被恢复。

同样在恢复状态下,在完成将数据恢复到从锁存器32时,控制信号sr1的逻辑值从“0”变为“1”,并且控制信号save的逻辑值从“0”变为“1”。因为控制信号sr1的逻辑值被设置为“1”,所以pmos晶体管p5至p7关断。在控制信号save的逻辑值被设置为“1”的情况下,传输门tg5导通并且传输门tg6关断。结果,与恢复到从锁存器32的数据相同的数据被存储到写入控制电路34中。

如上所述,本实施例的非易失性触发器电路116提供与上述实施例的非易失性触发器电路16的功能相同的功能。因此,本实施例的非易失性触发器电路116抑制对mtj元件mtj1和mtj2的冗余写入操作,从而减少浪费的写入能量消耗。

第四实施例

本实施例的非易失性触发器电路116与第三实施例的非易失性触发器电路116的不同之处在于pmos晶体管p1至p6的布置以及写入控制电路134中的逻辑电路的布置。非易失性触发器电路116的其他结构和半导体集成电路110的整体配置与上述实施例的那些相同,因此将不再进一步讨论。

图10是本实施例的非易失性触发器电路的电路图。如图10中所描绘的,pmos晶体管p5和p6与从锁存器32连接。pmos晶体管p1至p4与mtj元件mtj1和mtj2连接。

具体而言,pmos晶体管p5的一端(源极)与从锁存器32(反相器iv4的输入)连接。pmos晶体管p6的一端(源极)与从锁存器32(反相器iv4的输出)连接。如在第三实施例中一样,根据控制信号sr1,pmos晶体管p5和p6被控制为导通和关断。

pmos晶体管p1和p2的一端(源极)与pmos晶体管p5的另一端(漏极)连接。pmos晶体管p1和p2的另一端(漏极)与mtj元件mtj1连接。同时,pmos晶体管p3和p4的一端与pmos晶体管p6的另一端(漏极)连接。pmos晶体管p3和p4的另一端(漏极)与mtj元件mtj2连接。如在第三实施例中一样,根据控制信号sr2,pmos晶体管p1和p4被控制为导通和关断。根据从写入控制电路134输出的输出信号selectw,pmos晶体管p2和p3被控制为导通和关断。

如图10中所描绘的,本实施例的写入控制电路134还包括nor电路nor1和异或(eor)电路eor1作为逻辑电路。

通过使控制信号sr2的逻辑值反转而获得的反相信号被输入到nor电路nor1的一个输入端。反相器iv4的输出被输入到nor电路nor1的另一个输入端。反相器iv8的输出被输入到eor电路eor1的一个输入端。nor电路nor1的输出被输入到eor电路eor1的另一个输入端。eor电路eor1输出输出信号selectw。

下面说明本实施例的非易失性触发器电路116的操作。

在上面结合第三实施例讨论的存储状态中,因为控制信号sr2的逻辑值是“1”并且反相信号的逻辑值是“0”,所以nor电路nor1输出通过使来自反相器iv4的输出信号的逻辑值反转而获得的信号。因此,如果保持在写入控制电路134中的数据与保留在从锁存器32中的数据一致,则输入到eor电路eor1的两个信号具有不同的逻辑值。如果这两个数据项彼此不一致,则到eor电路eor1的两个输入信号具有相同的逻辑值。

如果保持在写入控制电路134中的数据与保留在从锁存器32中的数据一致,则从eor电路eor1输出的输出信号selectw的逻辑值是“1”。如果这两个数据项彼此不一致,则输出信号selectw的逻辑值是“0”。因此,写入控制电路134以与上面结合第三实施例讨论的存储状态下相同的方式输出输出信号selectw。

使第四实施例的非易失性触发器电路116以与上面结合第三实施例(参见图9)说明的控制序列相同的方式工作。以这种方式工作,第四实施例的非易失性触发器电路116提供与第三实施例的非易失性触发器电路116的功能相同的功能。

如上所述,每个上述实施例中的非易失性触发器电路16(116)包括主锁存器30、从锁存器32、写入控制电路34(134)、mtj元件mtj1和mtj2以及nmos晶体管n1至n6(pmos晶体管p1至p6)。

写入控制电路34(134)暂时存储与mtj元件mtj1和mtj2相同的数据。当电源电压在功率门控时被切断(为了储存)时,写入控制电路34(134)将其保留的数据与保持在从锁存器32中的数据进行比较,以控制是否将数据写入到mtj元件mtj1和mtj2。如果保留的数据与保持在从锁存器32中的数据不一致,则写入控制电路34(134)使用输出信号selectw进行控制以将数据写入到mtj元件mtj1和mtj2。如果这两个数据项彼此一致,则写入控制电路34(134)使用输出信号selectw进行控制以不将数据写入到mtj元件mtj1和mtj2。

在每个上述实施例中,nmos晶体管n2和n3(pmos晶体管p2和p3)被布置在从锁存器32与mtj元件mtj1和mtj2之间的电流路径上。根据从写入控制电路34(134)输出的输出信号selectw,nmos晶体管n2和n3(pmos晶体管p2和p3)被控制为导通和关断。

如果保留的数据与保持在从锁存器32中的数据一致,则写入控制电路34(134)输出输出信号selectw以使nmos晶体管n2和n3(pmos晶体管p2和p3)关断。这防止在从锁存器32与mtj1和mtj2之间形成电流路径。结果,保持在从锁存器32中的数据不被写入mtj元件mtj1和mtj2。

如果保留的数据与保持在从锁存器32中的数据不一致,则输出信号selectw使nmos晶体管n2和n3(pmos晶体管p2和p3)导通,从而在从锁存器32与mtj元件mtj1和mtj2之间形成电流路径。这允许保持在从锁存器32中的数据被写入到mtj元件mtj1和mtj2。

在功率门控时,不管mtj元件mtj1和mtj2的状态如何,现有的非易失性触发器电路(参见图11中的非易失性触发器电路1016)都使写入电流流动。也就是说,在现有的非易失性触发器电路中,如果保留在mtj元件mtj1和mtj2中的数据具有与将被写入的数据的逻辑值相同的逻辑值,则仍然使电流流动以执行结果是冗余的写入操作。因为现有的非易失性触发器电路未设置有根据保持在mtj元件mtj1和mtj2中的数据来控制写入操作的技术,所以存在浪费的写入能量消耗。

相比之下,在每个上述实施例的非易失性触发器电路16(116)中,如果保持在mtj元件mtj1和mtj2中的数据与保留在从锁存器32中的数据一致,则在从锁存器32与mtj元件mtj1和mtj2之间不形成电流路径,没有电流在其间流动。

每个上述实施例中的非易失性触发器电路16(116)因此减少了用来将数据写入到mtj元件mtj1和mtj2的能量。

布置在每个上述实施例的非易失性触发器电路16(116)中的写入控制电路34(134)消耗能量。然而,将数据写入到mtj元件mtj1和mtj2所消耗的能量比由写入控制电路34(134)所消耗的能量大大约一个数量级。因此,在将写入控制电路34(134)添加到每个上述实施例的非易失性触发器电路16(116)的情况下,仍然可以显著降低能量消耗。

尽管上面结合每个实施例说明了在半导体集成电路10(110)中布置一个非易失性触发器电路16(116),但是非易失性触发器电路16(116)的数量不受限制。因为每个非易失性触发器电路16(116)存储一位数据,所以可以设置与要存储的数据的位数一样多的非易失性触发器电路16(116)。

如果假设半导体集成电路10(110)包括多个非易失性触发器电路16(116)并且每个非易失性触发器电路16(116)有50%的概率保持逻辑值为“1”的数据和50%的概率保持逻辑值为“0”的数据,则全部非易失性触发器电路16(116)的一半可能需要将其数据重新写入到mtj元件mtj1和mtj2。在这种情况下,用本发明的非易失性触发器电路16(116)写入数据的能量减少到现有的非易失性触发器电路16(116)的写入能量的一半。

上面结合每个实施例说明了写入控制电路34(134)进行控制以将保持在从锁存器32中的数据写入到mtj元件mtj1和mtj2。替代地,可以用将数据写入到mtj元件mtj1和mtj2的软件来代替写入控制电路34(134)。在这种情况下,可以提供包括中央处理单元(cpu)的控制部,以预先获取保持在mtj元件mtj1和mtj2中的数据以供临时存储或者在存储操作时获取该数据。控制部将该数据与保留在从锁存器32中的数据进行比较。控制部输出具有反映这两个数据项是否彼此一致的逻辑值的输出信号selectw。

上面还结合每个实施例说明了mtj元件mtj1和mtj2被用作非易失性存储部的示例。然而,这不是对本发明的限制。替代地,可以利用任何(非易失性)存储部,只要其在电源电压(地电压)的供给被电源开关14(114)切断之后保留所存储的数据即可。

上述实施例中的半导体集成电路10(110)、非易失性触发器电路16(116)和其他组件的配置和操作仅是示例,并且显然可以在不脱离本发明的精神和范围的情况下根据需要被修改或变化。

附图标记列表

10、110半导体集成电路

14、114电源开关

16、116非易失性触发器电路

30主锁存器

32从锁存器

34、134写入控制电路

mj1、mj2mtj元件

n1至n7、n10nmos晶体管

p1至p7、p10pmos晶体管

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1