发明的具体实施方式
在下文中,参照附图详细说明本发明的实施例。图中的同一符号,表示相同或相当的部分。
[实施例1]
参照图1,本发明实施例1的MRAM装置1,响应来自外部的控制信号CMD及地址信号ADD而进行随机存取,并执行写入数据DIN的输入及读出数据DOUT的输出。
MRAM装置1,备有响应控制信号CMD而控制MRAM装置1的整体动作的控制电路5、及具有按行列状配置的多个MTJ存储单元的存储器阵列10。
存储器阵列10,包含按行列状配置的多个MTJ存储单元。MTJ存储单元的结构,与图21中所示相同。在图1中,示出1个典型的MTJ存储单元、以及与其对应的字线WL、写入数字线WDL、写入位线WBL及读出位线RBL的配置。字线WL及写入数字线WDL,与存储单元行对应配置。在实施例1的结构中,字线WL,以分级的方式设置按各多个存储单元行配置的主字线MWL、及按每个存储单元行配置的副字线SWL。读出位线RBL及写入位线WBL,与存储单元列对应配置。
当写入数据时,将与选择存储单元对应的存储单元行(以下,也称选择行)的写入数字线WDL及与选择存储单元对应的存储单元列(以下,也称选择列)的写入位线WBL激活,并分别流过数据写入电流。而当读出数据时,将与选择存储单元对应的字线WL(副字线SWL)激活为高电压状态,并使读出电流(数据读出电流)Is通过选择存储单元及读出位线RBL。
关于存储器阵列10中的MTJ存储单元及上述信号线群的配置,将在后文中详细说明。此外,在下文中,将信号、信号线及数据线等的二值的高电压状态(电源电压Vcc)及低电压状态(接地电压Vss)也分别称为「H电平」及「L电平」。
MRAM装置1,还备有对由地址信号ADD表示的行地址RA进行译码并输出用于执行存储器阵列10的行选择的译码结果的行译码器20、对由地址信号ADD表示的列地址CA进行译码并输出用于执行存储器阵列10的列选择的译码结果的列译码器25、及读出/写入控制电路30和35。
读出/写入控制电路30和35,是写入数据时用于使数据写入电流流过写入位线WBL的电路、读出数据时用于使读出电流流过读出位线RBL的电路、读出数据时用于检测读出位线RBL的电压并生成读出数据的电路等的总称。
参照图2,存储器阵列10,被细分为由子字驱动器区52及子列驱动器区55围绕的存储单元块50。在整个存储器阵列10中,存储单元块50,按m行×n列(n、m:自然数)的行列状配置。在下文中,将选择存储单元所属的存储单元块简称为选择存储单元块。
在列方向上彼此相邻的m个存储单元块,构成同一个存储体。因此,存储器阵列10,被划分为n个存储体BK1~BKn。同样,在行方向上彼此相邻的n个存储单元块,构成同一个块组。因此,存储器阵列10,被划分为m个块组BGL1~BGLm。
在各存储单元块50中,MTJ存储单元,按行列状配置。对每个存储单元行配置数据读出用的副字线SWL、数据写入用的写入数字线WDL。即,写入数字线WDL,在每个子块中以独立的方式与各存储单元行对应配置。在实施例1的结构中,将主写入字线MWL作为用于行选择的上位信号线而与副字线SWL及写入数字线WDL进行分级配置。主字线MWL,按各多个存储单元行以共用的方式横跨沿行方向彼此相邻的n个存储单元块配置。
主字驱动器60,分别与主字线MWL对应配置。各主字驱动器60,根据行译码器20的行选择结果,将对应的主字线MWL激活。
与各存储单元列对应地配置数据写入用写入位线WBL及读出位线RBL。在实施例1的结构中,写入位线WBL及读出位线RBL,以共用的方式横跨沿列方向彼此相邻的m个存储单元块配置。当与字线一样将这些位线按分级方式配置成上位位线和下位位线时,在子列驱动器区55内设置用于控制两者之间的连接的电路群,
沿列方向配置段译码线SGDL。段译码线SGDL,根据行译码器20的译码结果而激活,并传送用于控制副字线SWL及写入数字线WDL的激活范围的信号。段译码线SGDL,设置成通过子字驱动器区,并如后文所述包含着存储体选择线BSL、选择线SL及复位线RSL。对段译码线SGDL,按每个存储体独立地进行控制。
在子字驱动器区52内,配置着用于根据对应的段译码线SGDL及主字线MWL控制对应的副字线SWL及写入数字线WDL的激活的电路群。
参照图3,在子字驱动器区52内,与各存储单元行对应地配置在子字驱动器70及子行译码器80。
在图3中,作为一例,假定对每4个存储单元行设置1条主字线MWL。即,在各存储单元块中,1条主字线MWL,与4条副字线SWL及写入数字线WDL相对应。选择与1条主字线MWL对应的4条副字线(读出数据时)及写入数字线WDL(写入数据时)中的哪一条副字线SWL及写入数字线WDL,根据选择线SL中的1条的激活(H电平)指定。复位线RSL1~RSL4,是为将暂时保持在子字驱动器内的译码结果复位而配置的。此外,当统称选择线SL1~SL4及复位线RSL1~RSL4时,分别称为选择线SL及复位线RSL。存储体选择线BSL,当对应的存储体内包含选择存储单元块时,激活为H电平。
子字驱动器70,包含栅极电压由存储体选择线BSL控制并设置在主字线MWL与内部结点N0之间的选择晶体管71、由内部结点N0控制栅极电压并连接在选择线SL中的1条(例如SL0)与用于保持译码结果的结点Nd之间的晶体管72、栅极电压由与晶体管72相同的选择线(SL0)控制并连接在内部结点N0与结点Nd之间的晶体管73。进一步,子字驱动器70,还包含栅极电压由复位线RSL控制并设置在结点Nd与接地电压Vss之间的晶体管74。
存储体选择线BSL,当激活时设定为H电平(电源电压Vcc),在译码结果由结点Nd保持后,变为L电平(接地电压Vss)。这时,利用由晶体管72和73构成的锁存电路保持该存储体选择线BSL的激活状态。对选择线SL及复位线RSL的电压电平,以彼此互补的方式进行控制。
在等待动作时,存储体选择线BSL为L电平(接地电压Vss),选择线SL为L电平(接地电压Vss),而复位线RSL则为H电平(电源电压Vcc)。在激活动作时,首先,使对应的复位线变为L电平(接地电压Vss)的非激活状态,同时,将与选择行对应的存储体选择线BSL激活而变为H电平(电源电压Vcc)。
接着,与选择行对应的主字线MWL被激活而变为H电平(电源电压Vcc)。大致在与该主字线MWL激活的同时,选择线SL中的与选择行对应的1条,被设定为H电平(电源电压Vcc)。与此相应地,与选择行对应的结点Nd,变为H电平、即(Vcc-Vth)电平。这里,Vth是晶体管71及73的阈值电压之和。
在这之后,存储体选择线BSL,变为L电平(接地电压Vss)的非激活状态,并利用由子字驱动器70中的晶体管72和73构成的锁存电路将电荷封存在结点Nd内。在这种状态下,如使选择线SL中的被选择的1条的电压电平上升到H电平(电源电压Vcc),则在选择存储单元块中,与选择行对应的结点Nd的电压,上升且被锁存到电源电压Vcc的电平。
复位时,将存储体选择线BSL设定为H电平(电源电压Vcc),同时将选择线SL设定为L电平(接地电压Vss)。进一步,将复位线RSL激活为H电平(电源电压Vcc),从而使结点Nd内所蓄存的电荷放电。通过采用这种结构,可以只用4个N沟道MOS晶体管元件构成子字驱动器70,因而能够减少元件数。
进一步,主字线MWL的激活,援用单触发脉冲信号进行。即,在选择存储单元块内的选择行上,一旦由子字驱动器70中的晶体管72和73保持主字线的激活状态(H电平)后,主字线MWL的电压电平可以复位为L电平。
在这种结构中,如图2所示,即使多个存储体共有同一主字线,但只要存储体选择线BSL未被激活,主字线MWL的电压电平就不会对各子字驱动器70造成影响。因此,可以使沿行方向相邻的多个存储单元块作为独立的存储体而进行动作。
在其他的子字驱动器中,也具有相同的结构。通过采用这种结构,可以在激活主字线MWL的同时进一步将存储体选择线BSL激活,并有选择地将选择线SL的任何一条激活。从而将选择存储单元块内的与选择行对应的结点Nd设定为激活状态(H电平:电源电压Vcc)并保持该激活状态。即,可以将译码结果(行选择结果)保持在子字驱动器70内。
另一方面,通过有选择地将复位线RSL激活而放电到接地电压,可以将暂时保持在子字驱动器内的译码结果(行选择结果)复位。
子行译码器80,按每个存储单元行交错配置。即,子行译码器80,利用与1个存储单元块邻接的2个子字驱动器区52并按每1行交替地配置在与副字线SWL及写入数字线WDL的一端对应的子字驱动器区及与副字线SWL及写入数字线WDL的另一端对应的子字驱动器区中的一个内。按照这种结构,能在小面积上有效地配置子行译码头器80。
子行译码器80,根据保持在子字驱动器70内的对应存储单元行的译码结果,控制副字线SWL及写入数字线WDL的激活。副字线SWL及写入数字线WDL,在各存储单元块内,配置成与属于同一存储单元行的MTJ存储单元MC相对应。另一方面,对属于同一存储单元列的MTJ存储单元MC,配置写入位线WBL及读出位线RBL。
进一步,对每个存储单元行,配置用于在除数据读出以外的包括数据写入的期间内将副字线SWL固定于接地电压Vss的晶体管开关90、及用于将写入数字线WDL的一端与接地电压Vss连接的晶体管开关92。
晶体管开关90,在栅极上接收当读出数据时被激活为H电平的控制信号RE的反相信号/RE,并设置在副字线SWL与接地电压Vss之间。晶体管开关92,具有与电源电压Vcc连接的栅极,并设置在写入数字线WDL与接地电压Vss之间。
写入数字线WDL的另一端,由子行译码器80根据行选择结果有选择地设定为H电平(电源电压Vcc)。因此,可以使数据写入电流Ip沿着从子行译码器80到晶体管开关92的方向流过被激活了的写入数字线WDL。
图4是详细地表示子行译码器80的结构的电路图。
在图4中,代表性地示出与1条主字线MWL对应的4个存储单元行。与各存储单元行对应的子行译码器80具有相同的结构,所以,这里以与1个存储单元行对应的结构为代表进行说明。
参照图4,子行译码器80,具有设置在保持译码结果的结点Nd与写入数字线WDL之间的晶体管开关82、及设置在结点Nd与副字线SWL之间的晶体管开关84。在晶体管开关82的栅极上,施加当写入数据时被激活为H电平的控制信号WE。在晶体管开关84的栅极上,输入当读出数据时被激活为H电平的控制信号RE。
在各子行译码器80中,当写入数据时,使晶体管开关82接通,同时使晶体管开关84断开,当读出数据时,使晶体管开关84接通,同时使晶体管开关82断开。
当读出数据时及写入数据时,分别将对应的存储单元行的译码结果保持在结点Nd内。即,与选择存储单元块的选择行对应的结点Nd,设定为H电平(电源电压Vcc),在其他情况下,将结点Nd设定为L电平(接地电压Vss)。
当写入数据时,晶体管开关82,响应控制信号WE而接通,并根据结点Nd的电压、即对应的存储单元行的译码结果,将对应的写入数字线WDL激活。被激活后的写入数字线WDL,与已设定为H电平(电源电压Vcc)的结点Nd连接,所以,使数据写入电流Ip沿着从子行译码器80到接通状态的晶体管开关92的方向流过。
因此,通过将用于使行方向的数据写入电流Ip流过的写入数字线WDL按每个存储单元块进行细分,可以使数据写入电流Ip只流过与选择存储单元块对应的写入数字线WDL。
另一方面,设置在图1所示的读出/写入控制电路30和35内的写入位线驱动器(图中未示出),将与选择列对应的写入位线WBL的两端分别设定为H电平(电源电压Vcc)或L电平(接地电压Vss)。写入位线WBL的两端的电压设定,根据写入数据的电平进行切换。因此,流过写入位线WBL的列方向的数据写入电流,具有与存储数据的电平对应的方向(+Iw或-Iw)。在下文中,当统称两个方向的数据写入电流时,记为数据写入电流±Iw。
通过采用上述结构,使数据写入电流Ip只流过包含作为数据写入对象的选择存储单元的最小限度的必要区域。即,在选择存储单元所属的选择存储体以外的其他存储体中,没有行方向的数据写入电流Ip流过。因此,与不是对写入数字线WDL进行分级配置、即配置成由行方向上相邻的存储单元块之间共有的结构相比,能够抑制对非选择存储单元的数据误写入的危险性。
当读出数据时,由晶体管开关90将各副字线SWL与接地电压Vss切断。进一步,晶体管开关84,响应控制信号RE而接通,并根据结点Nd的电压、即对应的存储单元行的译码结果,将对应的副字线SWL激活。被激活后的副字线SWL,与已设定为H电平(电源电压Vcc)的结点Nd连接,响应这种状态,使与选择行对应的各存取晶体管ATR导通,并将磁隧道结MTJ以电气方式连接在读出位线RBL与写入位线WBL之间。
进一步,通过在选择列上供给用于流过选择存储单元的磁隧道结MTJ及读出位线RBL的读出电流Is而检测读出位线RBL的电压,即可读出选择存储单元的存储数据。
如上所述,通过设置子行译码器80,可以使写入数字线WDL与副字线SWL共有译码器。即,可以使数据读出用的副字线SWL和数据写入用的写入数字线WDL共有行译码器20及子字驱动器70,所以,可以减小与行选择动作有关的电路面积,从而能实现MRAM装置的小面积化。
[实施例2]
在实施例2中,说明用于使列方向的数据写入电流±Iw流过的写入位线WBL的分级配置结构。
参照图5,在实施例2的分级的位线配置中,副写入位线SWBL,在每个存储单元块50中,与各存储单元对应配置。另一方面,主写入位线MWBL,以由属于同一存储体的m个存储单元块共用的方式,按各多个存储单元列进行配置。
在实施例2中,作为一例,示出对每2个存储单元列配置1条主写入位线MWBL的结构。即,在各存储单元块中,使2条副写入位线SWBL1及SWBL2与1条主写入位线MWBL相对应。此外,将副写入位线SWBL1及SWBL2都统称并简记为副写入位线SWBL。
参照图6,在以分级方式配置写入位线的MTJ存储单元中,用于使列方向的数据写入电流±Iw流过的副写入位线SWBL,相当于图22所示的写入位线WBL,并配置在靠近磁隧道结MTJ的位置。主写入位线MWBL,配置在比副写入位线SWBL更高的上层,因此,副写入位线SWBL,配置在离磁隧道结MTJ(MTJ存储单元)比主写入位线MWBL更近的位置。
在选择存储单元块中,列方向的数据写入电流,流过副写入位线SWBL。另一方面,在非选择的子块中,数据写入电流±Iw,流过主写入位线MWBL。
按照这种结构,在非选择的存储单元块中,可以减弱由数据写入电流±Iw作用于磁隧道结MTJ的磁场强度。此外,MTJ存储单元部分的其他部分的结构,与图22所示相同,所以其详细说明不再重复。
再来参照图5,读出/写入控制电路30和35,包含分别与各主写入位线MWBL的两端对应设置的写入位线驱动器31和36。写入位线驱动器31,当根据列选择结果选择了对应的主写入位线MWBL时,根据写入数据DIN的数据电平,将主写入位线MWBL的一端与电源电压Vcc及接地电压Vss中的一个连接。写入位线驱动器36,当选择了对应的主写入位线MWBL时,以与写入位线驱动器31互补的方式,将对应的主写入位线MWBL的另一端与电源电压Vcc及接地电压Vss中的另一个连接。
即,所选定的主写入位线MWBL的两端,根据写入数据DIJN的数据电平,以互补的方式各与电源电压Vcc及接地电压Vss中的一个连接。因此,可以使方向与写入数据DIJN的数据电平对应的数据写入电流±Iw流过所选定的主写入位线MWBL。
在各存储单元块中,配置用于控制1条主写入位线MWBL与2条副写入位线SWBL1及SWBL2之间的连接的选择晶体管开关200、210a、210b、220a、220b。
这些选择晶体管开关,将选择存储单元块中的与选择列对应的副写入位线SWBL与主写入位线MWBL连接。而将其他的副写入位线SWBL与主写入位线MWBL电气切断。
另外,分别与m个块组对应地设置块组选择信号/BGSL1~/BGSLm。各块组选择信号/BGSL1~/BGSLm,由属于同一个块组的多个子块所共有。块组选择信号/BGSL1~/BGSLm中的与选择存储单元块对应的一个被激活为L电平,而其余的均为H电平的非激活状态。此外,将块组选择信号/BGSL1~/BGSLm都统称为块组选择信号/BGSL。
图7是详细说明实施例2的选择开关的配置的电路图。
在各存储单元块中,与各主写入位线MWBL对应的选择晶体管开关的配置方式相同,所以,在图7中,代表性地示出1个存储单元块中的与1条主写入位线MWBL对应的结构。
参照图7,写入位线驱动器31,具有逻辑门32、构成CMOS反相器的激励晶体管33和34。逻辑门32,输出作为主写入位线MWBL的选择信号的主列选择信号MCSL与写入数据DIN的NAND(“与非”)逻辑运算结果。激励晶体管33,由P沟道MOS晶体管构成,并设置在主写入位线MWBL的一端与电源电压Vcc之间。激励晶体管34,由N沟道MOS晶体管构成,并设置在主写入位线MWBL的一端与接地电压Vss之间。各激励晶体管33和34的栅极电压,由逻辑门32的输出控制。
写入位线驱动器36,具有逻辑门37、构成CMOS反相器的激励晶体管38和39。逻辑门37,输出作为主写入位线MWBL的选择信号的主列选择信号MCSL与写入数据DIN的反相信号/DIN的NAND逻辑运算结果。激励晶体管38,由P沟道MOS晶体管构成,并设置在主写入位线MWBL的另一端与电源电压Vcc之间。激励晶体管39,由N沟道MOS晶体管构成,并设置在主写入位线MWBL的另一端与接地电压Vss之间。各激励晶体管38和39的栅极电压,由逻辑门37的输出控制。
因此,在与非选择的主写入位线MWBL对应的写入位线驱动器31和36中,逻辑门32和37的输出,设定为L电平。所以,将非选择的主写入位线MWBL的两端与接地电压Vss连接。
另一方面,所选定的主写入位线MWBL的两端,由写入位线驱动器31和36根据写入数据DIN的数据电平将其各与电源电压Vcc及接地电压Vss的一方连接。当写入数据DIN为H电平(“1”)时,写入位线驱动器31,将主写入位线MWBL的一端与电源电压Vcc连接,写入位线驱动器36,将主写入位线MWBL的另一端与接地电压Vss连接。
相反,当写入数据DIN为L电平(“0”)时,写入位线驱动器31,将主写入位线MWBL的一端与接地电压Vss连接,写入位线驱动器36,将主写入位线MWBL的另一端与电源电压Vcc连接。
选择晶体管开关200,在每个存储单元块中,以串联的方式插接在主写入位线MWBL上。选择晶体管开关200,配置在结点N1和N2之间,用于在选择存储单元块中切断主写入位线MWBL的电流路径。在选择晶体管开关的栅极上,施加块组选择信号/BGSL。
选择晶体管开关210a,设置在副写入位线SWBL1的一端与主写入位线MWBL上的结点N1之间。选择晶体管开关220a,设置在副写入位线SWBL1的另一端与主写入位线MWBL上的结点N2之间。在选择晶体管开关210a和220a的栅极上,输入副列选择信号SCSL1。副列选择信号SCSL1及SCSL2,是用于选择与1条主写入位线MWBL对应的2条副写入位线中的1条的信号。
选择晶体管开关210b,设置在副写入位线SWBL2的一端与结点N1之间。选择晶体管开关220b,设置在副写入位线SWBL2的另一端与结点N2之间。选择晶体管开关210b和220b的栅极,接收副列选择信号SCSL2。
进一步,还配置用于将副写入位线SWBL1与接地电压Vss连接的选择晶体管开关230a和240a。此外,在副写入位线SWBL2与接地电压Vss之间,也以电气方式连接着选择晶体管开关230b和240b。在选择晶体管开关230a的栅极上,输入副列选择信号SCSL2,在选择晶体管开关230b的栅极上,输入副列选择信号SCSL1。在各选择晶体管开关230b和240b的栅极上,输入块组选择信号/BGSL。对图7所示的这些选择晶体管开关,通常采用N沟道MOS晶体管。
在图8中,示出对图中以“S”表示的选择存储单元写入H电平(“1”)数据时的数据写入电流的电流路径。
参照图8,为产生用于写入H电平的写入数据DIN的数据写入电流+Iw,写入位线驱动器31,将对应的主写入位线MWBL的一端与电源电压Vcc连接,写入位线驱动器36,将对应的主写入位线MWBL的另一端与电源电压Vss连接,
在选择存储单元块中,对应的块组选择信号/BGSL,被激活为L电平。因此,各选择晶体管开关200、240a、240b断开。另一方面,在非选择存储单元块中,选择晶体管开关200接通。
因此,在同一存储体内的非选择存储单元块中,列方向的数据写入电流+Iw,通过主写入位线MWBL。另一方面,在选择存储单元块中,为使数据写入电流+Iw流过副写入位线SWBL,由选择晶体管开关200将主写入位线MWBL上的电流路径切断。
在选择存储单元块中,为使数据写入电流流过副写入位线SWBL2,使副列选择信号SCSL1变为L电平的非激活状态,并将副列选择信号SCSL2激活为H电平。
因此,使各选择晶体管开关210b、220b、230a为接通状态,并将各选择晶体管开关210a、220a、230b设定为断开状态。按照这种方式,由选择晶体管开关200将主写入位线MWBL上的电流路径切断后的数据写入电流+Iw,通过选择晶体管开关210b和220b,流入副写入位线SWBL2。进一步,根据行选择结果,使行方向的数据写入电流Ip流过与选择存储单元对应的写入数字线WDL,所以,可以将H电平的数据写入选择存储单元。
在图9中,示出对图中以“S”表示的选择存储单元写入L电平(“0”)数据时的数据写入电流的电流路径。
参照图9,为产生用于写入L电平的写入数据DIN的数据写入电流-Iw,将主写入位线MWBL的两端电压设定为与图8时相反的电平。即,写入位线驱动器31,将对应的主写入位线MWBL的一端与电源电压Vss连接,写入位线驱动器36,将对应的主写入位线MWBL的另一端与电源电压Vcc连接,
块组选择信号/BGSL及副列选择信号SCSL1、SCSL2,设定为与图8相同。因此,与图8的情况一样,各选择晶体管开关200、240a、240b断开,各选择晶体管开关210b、220b、230a接通,各选择晶体管开关210a、220a、230b断开。
因此,由选择晶体管开关200将主写入位线MWBL上的电流路径切断后的数据写入电流-Iw,通过选择晶体管开关210b和220b,流入副写入位线SWBL2。进一步,根据行选择结果,使行方向的数据写入电流Ip流过与选择存储单元对应的写入数字线WDL,所以,可以将L电平(“0”)的数据写入选择存储单元。
再来参照图7,在同一存储体内的非选择存储单元块中,由于使块组选择信号/BGSL为H电平的非激活状态,所以使各选择晶体管开关200、240a、240b接通。进一步,由于使各副列选择信号SCSL1及SCSL2也变为L电平的非激活状态,所以使各选择晶体管开关210a、220a、210b、220b、230a、230b断开。
按照这种方式,在非选择存储单元块中,各副写入位线SWBL1及SWBL2,与主写入位线MWBL电气切断,并固定于接地电压Vss。因此,在同一存储体内的非选择存储单元块中,列方向的数据写入电流,不会流过与磁隧道结MTJ邻接的副写入位线SWBL,而是由离隧道结MTJ较远的主写入位线MWBL旁路流过。另外,在读出数据时,也是使各副写入位线SWBL变为非激活状态,并将其两端设定为接地电压Vss。
通过采用上述结构,在包含选择存储单元的存储体内,可以防止发生对属于非选择存储单元块的MTJ存储单元的数据误写入。
[实施例2的变形例]
参照图10,在实施例2的变形例的结构中,代替分别配置在主写入位线MWBL的两端的写入位线驱动器31和36,而只在主写入位线MWBL的一端配置写入位线驱动器40。此外,在各存储单元块中,配置用于控制主写入位线MWBL与副写入位线SWBL1及SWBL2之间的连接的选择晶体管开关250a、255a、250b、255b、260a、265a、260b、265b。这些选择晶体管开关,在选择存储单元块中,根据写入数据DIN数据的数据电平,将副写入位线SWBL的一端及另一端各与主写入位线MWBL及接地电压Vss中的一方连接。
图11是详细说明实施例2的变形例的选择开关的配置的电路图。
在图11中,也是代表性地示出1个存储单元块中的与1条主写入位线MWBL对应的结构。
参照图11,写入位线驱动器40,具有构成CMOS反相器的激励晶体管41和42。激励晶体管41,由P沟道MOS晶体管构成,并设置在电源电压Vcc与主写入位线MWBL之间。激励晶体管42,由N沟道MOS晶体管构成,并设置在接地电压Vss与主写入位线MWBL之间。
在各激励晶体管41和42的栅极上,输入用于选择主写入位线MWBL的主列选择信号MCSL的反相信号。因此,非选择的主写入位线,通过激励晶体管42与接地电压Vss连接。另一方面,所选定的主写入位线MWBL,通过激励晶体管41与电源电压Vcc连接。
从后面的说明可以看出,在实施例2的变形例中,由于不需要根据写入数据切换主写入位线MWBL的两端电压的设定,所以也可以采用将各主写入位线MWBL始终充电到电源电压Vcc的结构。但是,如上所述,通过采用根据主列选择信号(列选择结果)将各主写入位线MWBL与电源电压Vcc连接的结构,可以由预先设有的备用主写入位线补救替换与其他配线之间发生了短路路径的主写入位线MWBL。
逻辑门270,输出副列选择信号SCSL1与写入数据DIN的NOR(“或非”)逻辑运算结果,作为选择信号SD1a。逻辑门272,输出副列选择信号SCSL2与写入数据DIN的NOR逻辑运算结果,作为选择信号SD2a。逻辑门274,输出副列选择信号SCSL1与写入数据DIN的NOR逻辑运算结果,作为选择信号SD1b。逻辑门276,输出副列选择信号SCSL2与写入数据DIN的NOR逻辑运算结果,作为选择信号SD1b。
因此,当副写入位线SWBL1与选择存储单元相对应时,即当选择了副写入位线SWBL1时,根据写入数据DIN将选择信号SD1a及SD1b中的一个分别设定为H电平及L电平。
另一方面,当副写入位线SWBL1与选择存储单元不对应时,即当未选择副写入位线SWBL1时,由于对应的副列选择信号SCSL1设定为L电平,所以将各选择信号SD1a及SD1b设定为L电平。对选择信号SD2a及SD2b也按同样方式设定。
选择晶体管开关250a,由P沟道MOS晶体管构成,并设置在副写入位线SWBL1的一端与主写入位线MWBL上的结点N1之间。选择晶体管开关255a,由N沟道MOS晶体管构成,并设置在副写入位线SWBL1的一端与接地电压Vss之间。选择晶体管开关250a和255a,构成一个CMOS驱动器。在各选择晶体管开关250a和255a的栅极上,输入选择信号SD1a。
选择晶体管开关260a,由P沟道MOS晶体管构成,并设置在副写入位线SWBL1的另一端与主写入位线MWBL上的结点N2之间。选择晶体管开关265a,由N沟道MOS晶体管构成,并设置在副写入位线SWBL1的另一端与接地电压Vss之间。选择晶体管开关260a和265a,构成一个CMOS驱动器。在各选择晶体管开关260a和265a的栅极上,输入选择信号SD1b。
选择晶体管开关250b,由P沟道MOS晶体管构成,并设置在副写入位线SWBL2的一端与结点N1之间。选择晶体管开关255b,由N沟道MOS晶体管构成,并设置在副写入位线SWBL2的一端与接地电压Vss之间。选择晶体管开关250b和255b,构成一个CMOS驱动器。在各选择晶体管开关250b和255b的栅极上,输入选择信号SD2a。
选择晶体管开关260b,由P沟道MOS晶体管构成,并设置在副写入位线SWBL2的另一端与结点N2之间。选择晶体管开关265b,由N沟道MOS晶体管构成,并设置在副写入位线SWBL2的另一端与接地电压Vss之间。选择晶体管开关260b和265b,构成一个CMOS驱动器。在各选择晶体管开关260b和265b的栅极上,输入选择信号SD2b。
在图12中,示出用于对图中以“S”表示的选择存储单元写入H电平(“1”)数据的数据写入电流+Iw的电流路径。
参照图12,写入位线驱动器40,响应主列选择信号MCSL的激活(H电平),将与选择存储单元对应的主写入位线MWBL与电源电压Vcc连接。进一步,为选择副写入位线SWBL2,将副列选择信号SCSL2设定为H电平,并将副列选择信号SCSL1设定为L电平。
因此,由逻辑门270和274分别输出的各选择信号SD1a和SD1b,被设定为H电平。另一方面,由于写入数据DIN为H电平,所以由逻辑门272和276分别输出的各选择信号SD2a和SD2b被分别设定为L电平和H电平。
按照这种方式,对非选择的副写入位线SWBL1,选择晶体管开关255a和265a接通,而选择晶体管开关250a和260a断开。因此,副写入位线SWBL1,与主写入位线MWBL电气切断,同时将其两端与接地电压Vss连接。
另一方面,对所选定的副写入位线SWBL2,选择晶体管开关250b和265b接通,而选择晶体管开关255b和260b断开。因此,由选择晶体管开关250b将副写入位线SWBL2的一端与设定为电源电压Vcc的主写入位线MWBL连接。而副写入位线SWBL2的另一端,则通过选择晶体管开关265b与接地电压Vss连接。因此,使用于写入H电平的写入数据DIN的数据写入电流+Iw流过所选定的副写入位线SWBL2。
进一步,通过使行方向的数据写入电流Ip流过与选择存储单元对应的写入数字线WDL,即可将H电平的数据写入选择存储单元。
在图13中,示出对图中以“S”表示的选择存储单元写入L电平(“0”)数据时的数据写入电流+Iw的电流路径。
参照图13,写入位线驱动器40,与图12的情况一样,将与选择存储单元对应的主写入位线MWBL与电源电压Vcc连接。
另外,与图12的情况一样,将副列选择信号SCSL2设定为H电平,并将副列选择信号SCSL1设定为L电平。因此,由逻辑门270和274分别输出的各选择信号SD1a和SD1b,被设定为H电平。所以,由选择晶体管开关250a、255a、260a、265a将非选择的副写入位线SWBL1与主写入位线MWBL电气切断,同时将其两端与接地电压Vss连接。
另一方面,由于写入数据DIN为L电平,所以由逻辑门272和276分别输出的各选择信号SD2a和SD2b,与图12的情况相反,被分别设定为H电平和L电平。因此,对所选定的副写入位线SWBL2,选择晶体管开关250b和265b断开,而选择晶体管开关255b和260b接通。因此,副写入位线SWBL2的一端,通过选择晶体管开关255b与接地电压Vss连接。而副写入位线SWBL2的另一端,则通过选择晶体管开关260b与设定为电源电压Vcc的主写入位线MWBL连接。其结果是,使用于写入L电平的写入数据DIN的与图12方向相反的数据写入电流-Iw流过所选定的副写入位线SWBL2。
进一步,通过使行方向的数据写入电流Ip流过与选择存储单元对应的写入数字线WDL,即可将L电平的数据写入选择存储单元。
再来参照图11,在非选择的存储单元块中,由于对应的副列选择信号SCSL1及SCSL2都变为L电平的非激活状态,所以各选择信号SD1a、SD1b、SD2a、SD2b都被设定为H电平。
因此,在非选择的存储单元块中,各选择晶体管开关250a、250b、260a、260b断开,而各选择晶体管开关255a、255b、265a、265b接通。因此,各副写入位线SWBL1及SWBL2,与主写入位线MWBL电气切断,同时将其两端设定为接地电压Vss。
通过采用上述结构,对于按每个存储单元进行细分后配置的副写入位线SWBL,可以使列方向的数据写入电流±Iw只流过与选择存储单元对应的副写入位线SWBL。即,不使列方向的数据写入电流流过非选择的副写入位线SWBL。
另外,与实施例2的结构相比,由于仅在主写入位线MWBL的一端配置写入位线驱动器,所以能够减小存储器阵列周围部分的电路面积。进一步,即使在所选定的主写入位线上,也不会有列方向的数据写入电流±Iw流过从选择存储单元向前延伸的部分(远离写入位线驱动器40的一侧)。
因此,与实施例2的结构相比,由于进一步缩小了列方向的数据写入电流的流过区域,所以能够更可靠地防止对非选择存储单元的数据误写入。
另外,在本实施例中,给出了使与1条主写入位线MWBL对应的副写入位线SWBL的条数为2条的例,但本发明的应用并不限定于这种情况。即,也可以采用使1条主写入位线MWBL与3条以上的任意条数的副写入位线相对应的结构。在这种情况下,只需按同样的方式对各副写入位线SWBL配置图7和图11中说明过的副列选择信号SCSL1、SCSL2及选择晶体管开关即可。
另外,通过将实施例1与实施例2或其变形例组合,可以构成使行方向及列方向的数据写入电流都只流过必要的最小范围的结构。如采用这种结构,则能够更加可靠地防止对选择存储单元以外的其他非选择存储单元的数据误写入。
[实施例3]
在实施例3中,说明用于在各MTJ存储单元内有效地测试对数据误写入的耐受性的结构。在下文中,将用于评价对数据误写入的耐受性的动作测试称为“干扰测试”
图14是表示实施例3的与干扰测试时的行选择有关的电路配置的电路图。
参照图14,在实施例3的结构中,配置多重选择门310及多重选择控制电路320和330,当进行干扰测试时,用于执行在实施例1的分级配置的字线结构中以并行的方式将多个存储单元行激活的「行多重选择」。
多重选择门310,按每条主字线MWL配置,并输出用于将对应的主字线激活的行选择信号MRSL(译码结果)与多重选择信号MSL的OR(“或”)逻辑运算结果。多重选择信号MSL,当进行干扰测试时被激活为H电平。各主字线MWL,根据对应的多重选择门310的输出有选择地激活。因此,各主字线MWL,响应多重选择信号MSL的激活而被激活为选择状态(电源电压Vcc)。
多重选择控制电路320和330,按每个存储体配置。多重选择控制电路320和330,接收多重选择信号MSLa及MSLb。多重选择控制电路320,在对应的存储体中,控制选择线SL1~SL4的激活。多重选择控制电路330,在对应的存储体中,控制复位线RSL1~RSL4的激活。
图15是表示多重选择控制电路320和330的结构的电路图。
参照图15,译码信号S1~S4,分别与选择线SL1~SL4相对应,在将对应的选择线激活时设定为H电平。
多重选择控制电路320,包含输出译码信号S1与多重选择信号MSLa的OR逻辑运算结果的逻辑门321、输出译码信号S2与多重选择信号MSLb的OR逻辑运算结果的逻辑门322、输出译码信号S3与多重选择信号MSLa的OR逻辑运算结果的逻辑门323、输出译码信号S4与多重选择信号MSLb的OR逻辑运算结果的逻辑门324。选择线SL1~SL4,分别由逻辑门321~324驱动。
多重选择控制电路330,包含输出译码信号S1与多重选择信号MSLa的NOR逻辑运算结果的逻辑门331、输出译码信号S2与多重选择信号MSLb的NOR逻辑运算结果的逻辑门332、输出译码信号S3与多重选择信号MSLa的NOR逻辑运算结果的逻辑门333、输出译码信号S4与多重选择信号MSLb的NOR逻辑运算结果的逻辑门334。复位线RSL1~RSL4,分别由逻辑门331~334驱动。
通过采用上述结构,选择线SL和复位线RSL的对应的各条线,以互补的方式激活。此外,在将多重选择信号MSLa激活时,选择线SL1及SL2被强制性地激活(H电平),并强制性地使复位线RSL1及RSL3变为非激活状态(L电平)。另一方面,在将多重选择信号MSLb激活时,选择线SL2及SL4被强制性地激活(H电平),并强制性地使复位线RSL2及RSL4变为非激活状态(L电平)。
在将多重选择信号MSLa和MSLb两者都激活时,选择线SL1~SL4全部被强制性地激活。另一方面,当多重选择信号MSLa和MSLb两者都为非激活状态时,根据行选择结果将选择线SL1~SL4之一激活。
因此,按照实施例3的结构,当进行干扰测试时,可以根据多重选择信号MSLa、MSLb而以并行的方式将多条写入数字线WDL激活,并使行方向的数据写入电流流过。
例如,在将多重选择信号MSLa和MSLb两者都激活时,能以并行的方式将存储器阵列上的所有写入数字线WDL激活。而当只将多重选择信号MSLa和MSLb中的一个激活时,则能以并行的方式将存储器阵列上的1/2的写入数字线WDL激活。特别是,通过将多重选择信号MSLa和MSLb交替地激活,可以交替地将每一条写入数字线WDL激活。另一方面,当使多重选择信号MSLa和MSLb两者都为非激活状态时,能以并行的方式将存储器阵列上的1/4的写入数字线WDL激活。
图16是表示实施例3的子译码器区的结构的电路图。
参照图16,在实施例3的结构中,不同点在于,配置当进行干扰测试时利用图4所示的子行译码器80使中间的数据写入电流Ipt流过写入数字线WDL用的测试电流供给电路350。
测试电流供给电路350,包含用于切换子行译码器中的晶体管开关82的栅极电压的切换开关352和355、及中间电压发生电路360。
对控制切换开关352和355,响应多重选择信号MSL而进行控制。在正常动作时,切换开关352和355将子行译码器80中的晶体管开关82的栅极与接收到控制信号WE的结点连接。而当记进行干扰测试时,切换开关352和355将晶体管开关82的栅极与结点Nm连接。
中间电压发生电路360,包含连接在电源电压Vcc与结点Nm之间的电流源362、及连接在结点Nm与接地电压Vss之间的可变电阻364。可变电阻364的电阻值,可以由控制信号CLV调整。因此,中间电压发生电路360,在结点Nm上生成与控制信号CLV对应的中间电压Vm(Vcc>Vm>Vss)。
通过采用上述结构,子行译码器80中的晶体管开关82的栅极电压,在正常动作时,被设定为与控制信号WE的激活状态对应的电源电压Vcc。这时,根据结点Nd的电压,使常规的数据写入电流Ip流过被激活后的写入数字线WDL。而当进行干扰测试时,根据多重选择信号,使与中间电压Vm对应的中间的数据写入电流Ipt流过被激活后的写入数字线WDL。
这里,常规的数据写入电流Ip,设定为可将与图24所示的星形特性线的外侧区域相当的数据写入磁场施加于磁隧道结MTJ的电平,但由中间的数据写入电流Ipt施加于磁隧道结MTJ的数据写入磁场则被调整到星形特性线的内侧区域。
如上所述,当进行干扰测试时,使其电平从理论上说不能进行数据写入的中间数据写入电流Ipt流过,并检查是否更新了各MTJ存储单元的存储数据,从而测试各MTJ存储单元对数据误写入的耐受性。这时,通过执行多重选择,即可将多个存储单元行并行地作为干扰测试的对象。
或者,也可以在进行动作测试时根据同样的多重选择信号将行多重选择应用于字线。按照这种方式,可以在字线与其他结点之间、或在字线之间在短时间内有效地执行对电场耐受性的可靠性测试。
以下,说明干扰测试时的副写入位线SWBL的多重选择。
图17是表示实施例3的与副写入位线SWBL的多重选择有关的部分结构的电路图。
在图17中,示出当进行干扰测试时用于对图7所示的实施例2的写入字线的分级配置执行以并行的方式将多个存储单元列激活的「列多重选择」的结构。
参照图17,在第1条主写入位线MWBL1的两端,代替写入位线驱动器31和36而分别配置写入位线驱动器400和410。
写入位线驱动器400,与图7所示的写入位线驱动器31相比,其不同点在于,还备有逻辑门402和404。逻辑门402,将逻辑门32的输出与多重选择信号MSL的OR逻辑运算结果输出到激励晶体管33的栅极。逻辑门404,将与逻辑门402相同的运算结果输出到激励晶体管34的栅极。
因此,当进行将多重选择信号MSL激活为H电平的干扰测试时,激励晶体管33和34的栅极,被设定为L电平(接地电压Vss)。因此,第1条主写入位线MWBL的一端,通过写入位线驱动器400与电源电压Vcc连接。而当进行使多重选择信号MSL为L电平的非激活状态的正常动作时,逻辑门402和404,将逻辑门32的输出直接传送到激励晶体管33和34的栅极。
写入位线驱动器410,与图7所示的写入位线驱动器36相比,其不同点在于,还备有逻辑门412和414。逻辑门412,将逻辑门37的输出与多重选择信号MSL的OR逻辑运算结果输出到激励晶体管38的栅极。逻辑门424,将逻辑门37的输出与多重选择信号MSL的反相信号的AND(“与”)逻辑运算结果输出到激励晶体管39的栅极。
因此,当进行将多重选择信号MSL激活为H电平的干扰测试时,逻辑门412和414的输出,分别固定为H电平和L电平。所以,使各激励晶体管38和39截止。而当进行使多重选择信号MSL为L电平的非激活状态的正常动作时,逻辑门412和414,将逻辑门37的输出直接传送到各激励晶体管38和39的栅极。
除最后的一条主写入位线MWBL以外,配置在随后的各主写入位线MWBL的两端的写入位线驱动器,具有与主写入位线驱动器410相同的结构。因此,这些主写入位线MWBL的每一条,当进行干扰测试时,与电源电压Vcc及接地电压Vss都不连接,而被设定为浮置状态。
进一步,还设有用于将相邻的各主写入位线MWBL之间短路的多重选择控制开关420。相邻的各主写入位线MWBL,由多重选择控制开关420响应多重选择信号MSL的激活而以电气方式连接在一起。进一步,当进行干扰测试时,在各块组中,将副列选择信号SCSL1及SCSL2的任何一个激活。
图18是表示实施例3的列多重选择的第1例的概念图。
参照图18,在整个存储器阵列中,可以配置k条主写入位线MWBL1~MWBLk(k:自然数)。当进行干扰测试时,在第1条主写入位线MWBL1的一端,通过图17所示的激励晶体管33与电源电压Vcc连接。主写入位线MWBL1和MWBL2的另一端,由多重选择控制开关420连接在一起。以下,同样,相邻的主写入位线MWBL的一端及另一端,依次响应多重选择信号MSL而连接在一起。进一步,最后一条主写入位线MWBLk的一端,与接地电压Vss连接。
如上所述,当进行动作测试时,由写入位线驱动器及多重选择控制开关将主写入位线MWBL1~MWBLk彼此串联地连接在电源电压Vcc及接地电压Vss之间。因此,可以使列方向的数据写入电流以正常动作时的1条主写入位线MWBL的电流消耗流过各条主写入位线MWBL1~MWBLk。
按照这种方式,在对1条主写入位线MWBL配置h条(h:自然数)副写入位线SWBL的结构中,将所有的1/h的副写入位线SWBL与主写入位线MWBL1~MWBLk串联连接,并接收所供给的列方向的数据写入电流。或者,在图17中,如在所有的块组内将副列选择信号SCSL1及SCSL2都激活,则可以使列方向的数据写入电流流过存储器阵列内的所有副写入位线SWBL。
另外,也可以变更与主写入位线MWBL1~MWBLk对应的写入位线驱动器的结构,并执行对图18中以实线示出的将主写入位线MWBL1及MWBLk分别与电源电压Vcc及接地电压Vss连接的第1测试模式与图18中以虚线示出的将主写入位线MWBL1及MWBLk分别与电源电压Vss及接地电压Vcc连接的第2测试模式的切换。如采用这种结构,则可以在第1和第2测试模式中分别流过方向相反的数据写入电流。其结果是,即使在MTJ存储单元对数据误写入的耐受性随存储数据的极性而不同的情况下,也能精确地进行干扰测试。
图19是表示实施例3的列多重选择的第2例的概念图。
在图18中,示出了在相邻的主写入位线MWBL之间分别配置多重选择控制开关420的结构,但实施例3的结构,并不限定于对这种情况的应用。即,也可以配置成由多重选择控制开关420将每K条(K:2以上的自然数)的主写入位线MWBL连接在一起。
在图19中,示出K=2时的结构。在这种情况下,用于将奇数序号的主写入位线连接在一起的多重选择控制开关420a及用于将偶数序号的主写入位线连接在一起的多重选择控制开关420b,分别由不同的多重选择信号MSLc及MSLd控制。
在这种结构中,在整个存储器阵列内,以并行方式对所有的1/(K×h)条副写入位线SWBL供给数据写入电流。按照这种方式,可以根据多重选择控制开关的配置形态任意设定能以并行方式流过数据写入电流的副写入位线SWBL的条数。
图20是实施例3的干扰测试的流程图。
参照图20,当开始进行干扰测试时(步骤S100),首先,根据测试模式1执行干扰测试(步骤S105)。在测试模式1中,首先对所有MTJ存储单元写入例如“0(L电平)”的数据(步骤S110)。
接着,根据多重选择信号MSLa及MSLb的设定,将整个存储器阵列的1/4、1/2或所有的写入数字线WDL并行地激活,并使其各自流过中间的数据写入电流Ipt(步骤S120)。进一步,在第1条主写入位线MWBL1及最后一条主写入位线MWBLk分别与电源电压Vcc及接地电压Vss连接的状态下,将整个存储器阵列的1/4、1/2或所有的副写入位线SWBL激活,并按照测试模式1的方向流过列方向的数据写入电流。在这种情况下,如图18和图19中所述,列方向的数据写入电流,流过将激活后的主写入位线MWBL及副写入位线SWBL彼此串联地连接在电源电压Vcc及接地电压Vss之间的电流路径(步骤S130)。
测试模式1中的列方向数据写入电流的方向,设定为改写在步骤S110中写入的数据。当在步骤S110中写入“0(L电平)”的数据时,测试模式1中的列方向数据写入电流,设定为写入“1(H电平)”
当数据写入电流的供给结束时,依次对副字线SWL进行扫描并检测对应的读出位线的电压,从而执行对整个存储空间的访问(步骤S140)。由此,即可检查是否由在步骤S120和130中进行的仿真数据写入而错误地改写了各MTJ存储单元的存储数据(步骤S150)。
然后,根据测试模式2执行干扰测试(步骤S155),以便执行与测试模式1极性相反的干扰测试。在测试模式2中,首先对所有的MTJ存储单元写入与步骤S110极性相反的数据、例如“1(H电平)”的数据(步骤S160)。
接着,与步骤S120一样,将整个存储器阵列的1/4、1/2或所有的写入数字线WDL并行地激活,并使其各自流过中间的数据写入电流Ipt(步骤S170)。进一步,与步骤S130相反,在第1条主写入位线MWBL1及最后一条主写入位线MWBLk分别与电源电压Vss及接地电压Vcc连接的状态下,将整个存储器阵列的1/4、1/2或所有的副写入位线SWBL激活,并按照测试模式2的方向流过列方向的数据写入电流。与步骤S130一样,列方向的数据写入电流,流过将激活后的主写入位线MWBL及副写入位线SWBL彼此串联地连接在电源电压Vcc及接地电压Vss之间的电流路径(步骤S180)。
测试模式2中的列方向数据写入电流的方向,设定为改写在步骤S160中写入的数据。当在步骤S160中写入“1(H电平)”的数据时,测试模式2中的列方向数据写入电流,设定为写入“0(L电平)”
当数据写入电流的供给结束时,与步骤S140一样,执行对整个存储空间的访问(步骤S190)。由此,即可检查是否由在步骤S170和180中进行的仿真数据写入而错误地改写了各MTJ存储单元的存储数据(步骤S200)。
接着,当需要进一步变更测试条件时(步骤S210),改变图16所示的中间电压Vm的值,以增大或减小中间的数据写入电流Ipt,并在更严格或更宽松的条件下反复执行同样的测试。当基于规定测试条件(数据写入电流Ipt)的测试全部完成时,结束干扰测试(步骤S230)。
如上所述,按照实施例3的结构,可以将多个MTJ存储单元作为对象在短时间内以并行方式有效地进行用于评价MTJ存储单元对数据误写入的耐受性的干扰测试。
进一步,通过采用使列方向的数据写入电流流过将激活后的主写入位线MWBL及副写入位线SWBL串联连接的电流路径的结构,可以抑制干扰测试时将多个存储单元列并行地激活所引起的耗电量的增加。
或者,也可以执行将通过列多重选择所选定的多条主写入位线连接在相同电压之间(电源电压Vcc之间、或接地电压Vss之间)的动作测试。在这种动作测试中,可以在主写入位线与其他结点之间、或在主写入位线之间在短时间内有效地评价对电场的耐受性。