技术背景
作为低耗电的可进行非易失性数据存储的存储装置,MRAM(Magnetic Random Access Memory)装置为人们所关注。MRAM装置是这样一种存储装置,它利用形成于半导体集成电路的多个薄膜磁性体进行非易失性数据存储,可以对各个薄膜磁性体作随机存取。
尤其近年来有报导称,通过使用以利用磁隧道结(MTJ:MagneticTunnel Junction)的薄膜磁性体作为存储单元,使MRAM装置的性能取得了长足的进步。关于包含带磁隧道结存储单元的MRAM装置,公开了诸如“一种采用磁隧道结与各单元FET开关的10纳秒读写非易失存储阵列”(ISSCC Digest of Technical Papers,TA7.2,Feb.2000)和“基于磁隧道结元件的非易失性RAM”(ISSCC Digest ofTechnical Papers,TA7.3,Feb.2000.)等技术文献。
图14是表示带磁隧道结部分的存储单元(以下简称为“MTJ存储单元”)的结构的概略图。
如图14所示,MTJ存储单元中有:按存储数据的级改变电阻的隧道磁致电阻元件TMR,以及用以形成数据读出时通过隧道磁致电阻元件TMR的读出电流Is路径的存取晶体管ATR。存取晶体管ATR,(例如)可以由场效应晶体管形成,连接在隧道磁致电阻TMR和固定电压(接地电压Vss)之间。
MTJ存储单元中设有:指示数据写入的写入字线WWL,执行数据读出的读出字线RWL,以及用以在数据读出和数据写入时,传送对应存储数据数据级(デ-タレベル)的电信号的数据线即位线BL。
图15是说明从MTJ存储单元读出数据的概念图。
如图15所示,隧道磁致电阻元件TMR包含:具有规定磁化方向的强磁性体层(以下简称为“固定磁化层”)FL,以及在由外部施加的磁场确定的方向上磁化的强磁性体层(以下简称为“自由磁化层”)VL。在固定磁化层FL和自由磁化层VL之间,设有用绝缘体膜形成的隧道势垒TB。根据存储数据的数据级,自由磁化层VL在与固定磁化层FL相同的方向上或不同方向上被磁化。
数据读出时,随着读出字线RWL被激活,存取晶体管ATR导通。由此,读出电流Is就可通过电流路径“位线BL~隧道磁致电阻元件TMR~存取晶体管ATR~接地电压Vss”。
隧道磁致电阻元件TMR的电阻,按照固定磁化层FL与自由磁化层VL的磁化方向的相对关系改变。具体而言,当固定磁化层FL的磁化方向与写入自由磁化层VL的磁化方向平行(相同)时跟二者的磁化方向相反时相比,隧道磁致电阻元件TMR的电阻要变小。以下,本说明书中将分别用R1和R0表示对应存储数据“1”和“0”的隧道磁致电阻元件TMR的电阻。这里,设R1>R0。
如此,隧道磁致电阻元件TMR的电阻随磁化方向而改变。因此,通过使隧道磁致电阻元件TMR中的自由磁化层VL的两个磁化方向分别对应于存储数据的级(“1”和“0”),就可实现对数据的存储。
由读出电流Is引起的隧道磁致电阻元件TMR中的电压,按照自由磁化层的磁化方向即存储数据的级而改变。因此,(例如)当使位线BL处于被加电至预定电压状态后,如果让读出电流Is流过隧道磁致电阻元件TMR,通过检测位线BL的电压电平的变化就可读出MTJ存储单元的存储数据。
图16是说明对MTJ存储单元的数据写入动作的概念图。
如图16所示,数据写入时,读出字线RWL不被激活,存取晶体管ATR被截止。在该状态下,用以使自由磁化层VL在对应于写入数据的方向磁化的数据写入电流,分别流过写入字线WWL和位线BL。自由磁化层VL的磁化方向,由分别流过写入字线WWL和位线BL的数据写入电流的方向组合决定。
图17是说明数据写入时数据写入电流的方向和磁化方向之间的关系的概念图。
如图17所示,横轴Hx表示因流过位线BL的数据写入电流而产生的数据写入磁场H(BL)的方向。另一方面,纵轴Hy表示因流过写入字线WWL的数据写入电流而产生的数据写入磁场H(WWL)的方向。
自由磁化层VL的磁化方向,只在数据写入磁场H(BL)与H(WWL)之和到达图中所示的星形特性曲线的外侧区域时,可被重新改写。
换言之,当所施加的数据写入磁场具有相当于星形特性曲线内侧区域的强度时,自由磁化层VL的磁化方向不发生变化。因此,为了更新MTJ存储单元的存储数据,必须有不低于规定电平的电流在写入字线WWL和位线BL二者中流过。隧道磁致电阻元件一旦被写入的磁化方向(即MTJ存储单元的存储数据),在新的数据写入之前一直被非易失地保持。
数据读出时,读出电流Is也流过位线BL。但是,由于读出电流Is一般设定得比上述的数据写入电流小1~2个“位”数,数据读出时因读出电流Is的影响而使MTJ存储单元的存储数据被误改写的可能性很小。
上述技术文献公开了,将这样的MTJ存储单元集成于半导体基片上来构成随机存取存储器MRAM的技术。
图18是表示成行列状集成布置的MTJ存储单元的概念图。
在半导体基片上行列状布置MTJ存储单元,可以实现高集成化的MRAM装置。图18中,示出了n行×m列(n、m为自然数)布置的MTJ存储单元的结构。如上说明,对每个MTJ存储单元均需设置位线BL、写入字线WWL及读出字线RWL。因此,对于行列状布置的(n×m)个MTJ存储单元,要布置n条写入字线WWL1~WWLn和读出字线RWL1~RWLn,以及m条位线BL1~BLm。
数据读出时,由邻接于存储阵列布置的数据读出电路500供给数据读出电流即读出电流Is。数据读出电路500包含:位线BL1~BLm共用的电流供给单元510、数据总线DB以及分别对应于存储单元列设置的列选择门CSG1~CSGm。
电流供给单元510,向数据总线DB供给读出电流Is。数据总线DB,经由列选择门CSG1~CSGm跟位线BL1~BLm连接。
列选择线CSL1~CSLm,对应各存储单元列设置,根据列选择结果被有选择地激活。同样地,将根据行选择结果从读出字线RWL1~RWLn中选择的一条字线激活。通过组合上述的行选择结果和列选择结果,指定作为数据读出对象的被选存储单元。
利用这种结构,可以通过为整个存储单元10共用的电流供给单元510,向由被选存储单元下拉的位线有选择地供给读出电流Is,使读出电流Is通过被选存储单元的隧道磁致电阻元件TMR。结果,基于对数据总线DB的电压变化的检测,可以读出被选存储单元的存储数据。
但是,MTJ存储单元中的隧道磁致电阻元件,是具有10KΩ左右的较高的电阻的电阻器;另一方面,以为整个存储阵列10共用的方式布置的数据总线DB,具有较大的寄生电容。因此,在图18所示的这种被选存储单元经由位线BL与数据总线DB连接、基于对数据总线DB电压变化的检测而读出数据的结构中,读出电流Is路径的RC时间常数较大,这可能影响数据读出的高速性。
并且,为了让读出电流Is流过被选择的MTJ存储单元,如图15所示,须在隧道磁致电阻元件TMR的两端加偏压。但是,该偏压一大,作用于隧道势垒TB处的过大的电场会使绝缘膜受到破坏,有可能使MTJ存储单元的可靠性受损。
另一方面,近年来,要求存储装置同时进行多“位”数据并行处理。有代表性的是,在数据处理等领域,为了能高速且低耗电地进行数据处理,在被应用于系统LSI(大规模集成电路)的存储装置中,该LSI与处理器等逻辑电路集成于同一半导体芯片,与该逻辑电路之间的数据往来传送必须以多位、并行的方式进行。
但是,在对MRAM装置的数据写入时,因为需要产生用以改写MTJ存储单元的磁化方向的数据写入磁场,在位线BL和写入字线WWL中需要流过较大的电流。因此,在MRAM装置应用于这种系统LSI的场合,如果只是采用能简单地进行多位数据并行数据写入的结构,由于电流消耗、特别是峰值电流过大,会使电源系统的负荷增大,从而有可能因电源电压变动的影响而产生误动作。
具体实施方式
以下参照附图对本发明的实施例进行详细说明。图中相同的符号表示相同或相当的部分。
实施例1
如图1所示,依据本发明实施例的MRAM装置1,响应外部控制信号CMD和地址信号ADD进行随机存取,并执行写入数据DIN的输入和读出数据DOUT的输出。
MRAM装置1中设有:响应控制信号CMD来控制MRAM装置1的整体动作的控制电路5,以及包含行列状布置的多个MTJ存储单元的存储阵列10。关于存储阵列10的结构的详细说明将在后文给出。对应于MTJ存储单元的行(以下简称为“存储单元行”)设置多条写入字线WWL和读出字线RWL,并且对应于MTJ存储单元的列(以下简称为“存储单元列”)设置位线BL。
MRAM装置1中还设有:行译码器20、列译码器25、字线驱动器30、字线电流控制电路40和读出/写入控制电路50、60。
行译码器20,按照由地址信号ADD所示的行地址RA,进行存储阵列10上的行选择。列译码器25,按照由地址信号ADD所示的列地址CA,进行存储阵列10上的列选择。字线驱动器30,基于行译码器20的行选择结果,有选择地激活读出字线RWL或写入字线WWL。通过行地址RA和列地址CA,确定被指定作为数据读出或数据写入对象的存储单元(以下,称为“被选存储单元”)。
字线电流控制电路40,为数据写入时使数据写入电流流入写入字线WWL而设置。读出/写入控制电路50、60是设于邻接存储阵列10的区域的电路群的总称,这些电路用来在数据读出和写入时使数据写入电流和读出电流(数据读出电流)流入位线BL。
如图2所示,存储阵列10包含n行×m列(n、m:自然数)布置的MTJ存储单元MC。每个MTJ存储单元的结构和图14所示的相同,其中有作为按存储数据的级改变电阻的磁性存储部分工作的隧道磁致电阻元件TMR和作为存取门工作的存取晶体管ATR。
对应第一至第n个存储单元行,分别设有读出字线RWL1~RWLn和写入字线WWL1~WWLn。对应第一至第m存储单元列,分别设有构成位线对BLP1~BLPm的位线BL1、/BL1~BLm、/BLm。
以下,将假读出字线DRWL1和DRWL2统称为假读出字线DRWL;在总体表示写入字线、读出字线、位线和位线对的场合,分别采用符号WWL、RWL、BL(/BL)和BLP表示,但是在表示特定的写入字线、读出字线、位线和位线对时,则用上述符号加后缀表示,如RWL1、WWL1、BL1(/BL1)、BLP1等。
MTJ存储单元MC,在每1行跟位线BL和/BL中的任一条连接。例如,以属于第一存储单元列的MTJ存储单元进行说明,第一行的MTJ存储单元,跟位线/BL1连接;第二行的MTJ存储单元,跟位线BL1连接。以下类同,各MTJ存储单元中,凡位于奇数行的跟作为位线对中的一条位线即/BL1~/BLm连接,凡位于偶数行的跟作为位线对中的另一条位线即BL1~BLm连接。
存储阵列10还包含分别跟位线BL1、/BL1~BLm、/BLm连接的多个假存储单元DMC。假存储单元DMC以2行×m列的方式布置,以对应于假读出字线DRWL1和DRWL2中的某一条字线。跟假读出字线DRWL1对应的假存储单元,分别跟位线BL1、BL2~BLm连接。另一方面,跟假读出字线DRWL2对应的剩余的假存储单元,分别跟位线/BL1、/BL2~/BLm连接。
假存储单元DMC,(例如)具有在图14所示的MTJ存储单元的结构中用假电阻元件(未作图示)替换隧道磁致电阻元件TMR后的结构。假电阻元件的电阻为Rd,其值设于分别对应MTJ存储单元MC处的存储数据的级“1”和“0”的电阻R1和R0之间,也就是R1>Rd>R0。
按照行选择结果选择奇数行后,位线/BL1~/BLm各自跟MTJ存储单元MC连接时,假读出字线DRWL1被激活,位线BL1~BLm各自跟假存储单元DMC连接。相反,按照行选择结果选择偶数行后,位线BL1~BLm各自跟MTJ存储单元MC连接时,假读出字线DRWL2被激活,位线/BL1~/BLm各自跟假存储单元DMC连接。
以下,将信号和信号线的高电压状态(电源电压Vcc1、Vcc2、Vcc3)和低电压状态(接地电压Vss)分别称为“H电平”或“L电平”。
字线电流控制电路40,隔着存储阵列10,在字线驱动器30的对侧区域,将各写入字线WWL跟接地电压Vss连接。由此,可以使预定方向的数据写入电流Ip流向经由字线驱动器有选择地连接电源电压的写入字线。
分别对应第一至第m存储单元列,设置用以进行列选择的写入列选择线WCSL1~WCSLm和读出列选择线RCSL1~RCSLm。
数据写入时,列译码器25按照列地址CA的译码结果即列选择结果,将写入列选择线WCSL1~WCSLm中的一条激活至选择状态(H电平)。在数据读出时,列译码器25按列选择结果,将读出列选择线RCSL1~RCSLm中的一条激活至选择状态(H电平)。
另外,独立设置用以传送写入数据的写入数据总线对WDBP和用以传送读出数据的读出数据总线对RDBP。写入数据总线对WDBP包含互为补充的写入数据总线WDB和/WDB,读出数据总线对RDBP包含互为补充的读出数据总线RDB和/RDB。
读出/写入控制电路50包含:数据写入电路51W,数据读出电路51R,分别对应存储单元列设置的读出列选择门RCSG1~RCSGm,读出门RG1~RGm,读出驱动器选择门RCDG1~RCDGm,以及写入列选择门WCSG1~WCSGm。
分别对应存储单元列设置的各个读出列选择门RCSG1~RCSGm,各个读出门RG1~RGm,各个读出驱动器选择门RCDG1~RCDGm,各个写入列选择门WCSG1~WCSGm,分别具有相同的结构,因此,用对应位线BL1、/BL1设置的读出列选择门RCSG1、读出门RG1、读出驱动器选择门RCDG1和写入列选择门WCSG1的结构进行代表性的说明。
读出驱动器选择门RCDG1包含,在位线BL1与/BL1和电源电压Vcc2之间分别电连接的晶体管开关。这些晶体管开关,基于读出列选择线RCSL1的电压通过或断开。换言之,当读出列选择线RCSL1被激活至选择状态(H电平)时,读出驱动器选择门RCDG1使位线BL1与/BL1跟电源电压Vcc2电连接。
读出列选择门RCSG1与读出门GR1,串联连接在读出数据总线RDB、/RDB与接地电压Vss之间。读出列选择门RCSG1包含:电连接于读出数据总线RDB与结点N1a之间的晶体管开关,以及电连接于读出数据总线/RDB与结点N1b之间的晶体管开关。这些晶体管开关,基于读出列选择线RCSL1的电压导通或截止。换言之,读出列选择线RCSL1被激活于选择状态(H电平)时,读出列选择门RCSG1,使读出数据总线RDB与/RDB分别跟结点N1a与N1b电连接。
读出门RG1包含,分别将结点N1a与结点N1b跟接地电压Vss电连接的N型MOS晶体管Q11与Q12。晶体管Q11与Q12的栅极,分别跟位线/BL1与BL1连接。因此,结点N1a与N1b的电压由分别基于位线/BL1与BL1的电压的驱动力拉至接地电压Vss。
具体而言,当位线BL1的电压高于位线/BL1的电压时,由于通过晶体管Q12结点N1b被驱动至较强的接地电压Vss,因此使结点N1a的电压高于N1b的电压。相反,当位线BL1的电压低于位线/BL1的电压时,就使结点N1b的电压高于结点N1a的电压。
写入列选择门WCSG1包含:电连接于写入数据总线WDB与位线B1之间的晶体管开关,以及电连接于写入数据总线/WDB与位线/BL1之间的晶体管开关。这些晶体管开关,基于写入列选择线WCSL1的电压导通或截止。换言之,当写入列选择线WCSL1被激活至选择状态(H电平)时,写入列选择门WCSG1分别将写入数据总线WDB与/WDB跟位线BL1与/BL1电连接。
以下,也可将读出列选择线RCSL1~RCSLm、写入列选择线WCSL1~WCSLm、读出列选择门RCSG1~RCSGm、读出门RG1~RGm、读出驱动器选择门RCDG1~RCDGm以及写入列选择门WCSG1~WCSGm分别总称为读出列选择线RCSL、写入列选择线WCSL、读出列选择门RCSG、读出门RG、读出驱动器选择门RCDG以及写入列选择门WCSG。
读出/写入控制电路60中有分别对应于存储单元列设置的短路开关晶体管62-1~62-m。短路开关晶体管62-1~62-m,分别响应写入列选择线WCSL1~WCSLm而导通或截止。例如,短路开关晶体管62-1对应第一存储单元列设置,它对写入列选择线WCSL1的激活状态(H电平)作出响应,将位线BL1与/BL1的一端(写入列选择门WCSG1的对侧)相互电连接。
分别对应其他存储单元列设置的短路开关晶体管62-2~62-m也一样,对写入列选择线WCSL2~WCSLm的激活状态分别作出响应,在对应的存储单元列中将构成位线对BLP的位线BL与/BL的一端相互电连接。
读出/写入控制电路60中,在位线BL1、/BL1~BLm、/BLm和接地电压Vss之间分别设有预充电晶体管64-1a、64-1b~64-ma、64-mb。预充电晶体管64-1a、64-1b~64-ma、64-mb,响应位线预充电信号BLPR的激活状态而导通,于是将位线BL1、/BL1~位线BLm、/BLm预充电至接地电压Vss。
以下,也可将短路开关晶体管62-1~62-m和预充电晶体管64-1a、64-1b~64-ma、64-mb分别总称为短路开关晶体管62和预充电晶体管64。
在MRAM装置1的激活期间,由控制电路5产生的位线预充电信号BLPR至少在进行数据读出前的预定期间被激活至H电平。另一方面,在MRAM装置1的激活期间内的数据读出动作与写入动作中,位线预充电信号BLPR被去激活至L电平,使预充电晶体管64截止。
接着,就数据读出电路和数据写入电路的结构进行说明。
如图3所示,数据读出电路51R包含:被供给电源电压Vcc1,分别以预定电流供给内部结点Ns1与Ns2的电流源161与162;电连接于内部结点Ns1与读出数据总线RDB之间的N型MOS晶体管163;电连接于内部结点Ns2与读出数据总线/RDB之间N型MOS晶体管164;以及使内部结点Ns1与Ns2之间的电压电平差放大并输出读出数据DOUT的放大器165。
在N型MOS晶体管163与164的各栅极上,分别加上基准电压Vrr。电阻166与167,是为了将内部结点Ns1与Ns2下拉至接地电压Vss而设置的。通过这样的结构,数据读出电路51R可以在数据读出时分别向读出数据总线RDB与/RDB提供相等的电流。
数据读出时,通过对应于被选存储单元行的读出门RG,将读出数据总线RDB与/RDB以不同的驱动力下拉至接地电压Vss。因此,通过数据读出电路51R,能够以将内部结点Ns1与Ns2之间的电压差放大的手段,读出被选存储单元的存储数据。
如图4所示,依据另一例电路结构的数据读出电路52R包含:用作预充电晶体管的P型MOS晶体管171与172;用作开关晶体管的N型MOS的N型MOS晶体管173与174;互耦放大器175;用作互耦放大器工作电流供给开关的N型MOS晶体管180;以及倒相器182与184。
P型MOS晶体管171与172,分别电连接于电源电压Vcc1与内部结点Nr与/Nr之间。在数据读出前的预定期间激活至L电平的预充电信号φpr被输入至P型MOS晶体管171与172各自的栅极。
N型MOS晶体管173与174,分别电连接于内部结点Nr与/Nr和读出数据总线RDB与/RDB之间。在数据读出时的预定期间激活至L电平的触发脉冲φtr被输入至MOS晶体管173与174各自的栅极。
互耦放大器175包含:交叉耦合的P型MOS晶体管176与177,N型MOS晶体管178与179。N型MOS晶体管180,电连接于互耦放大器175与接地电压Vss之间,其栅极被输入读出信号φs。在数据读出时,读出信号φs包含至少和触发脉冲φtr相重叠的激活期(H电平)。
数据读出前,响应预充电信号φpr的激活状态,结点Nr与/Nr各自被预充电至电源电压Vcc1。在结点Nr与/Nr和读出数据总线RDB与/RDB分别被电连接的状态下,开始数据读出动作。另外,在数据读出动作开始后的预定时序,响应触发脉冲φtr的激活状态(L电平),N型Mos晶体管173与174将读出数据总线RDB与/RDB跟内部结点Nr与/Nr电气上断开。
互耦放大器175,响应读出信号φs的激活状态,从N型MOS晶体管180得到工作电流,将内部结点Nr与/Nr之间的电压差放大至电源电压Vcc1与接地电压Vss之间的振幅。换言之,在通过数据读出动作使读出数据总线RDB的电压高于读出数据总线/RDB的场合,内部结点Nr与/Nr被分别设于电源电压Vcc1与接地电压Vss。
倒相器182与184,将内部结点Nr与/Nr的电压电平反相,分别产生读出数据/DOUT与DOUT。也就是,读出数据DOUT与/DOUT的极性跟读出数据总线RDB与/RDB的极性一致。
如图5所示,数据写入电路51W包含:用以向内部结点Nw0供给恒定电流的P型MOS晶体管151;构成用以控制通过晶体管151的电流的电流反射镜电路的P型MOS晶体管152与电流源153;以及经由内部结点Nw0获得工作电流的倒相器154、155与156。倒相器154、155与156各自在所供给的电源电压Vcc3与接地电压Vss下工作。
倒相器154将写入数据DIN的电压电平反相后传送给写入数据总线WDB。倒相器155将写入数据DIN的电压电平反相后传送给倒相器156的输入结点。倒相器156将倒相器154的输出反相后传送给写入数据总线/WDB。因此,数据写入电路51W,根据写入数据DIN的电压电平,将内部结点Nw1与Nw2的电压各设于电源电压Vcc3与接地电压Vss之一。
接着,用图6对依据实施例1的MRAM装置中的数据读出与数据写入动作进行说明。
首先,说明数据读出动作。
数据读出前,读出数据总线RDB、/RDB被预充电至电源电压Vcc1,位线BL、/BL被预充电至接地电压Vss。
数据读出时,通过对应的读出驱动器选择门RCDG,对应于被选存储单元的位线BL与/BL被分别和电源电压Vcc2电连接。
进而,读出字线RWL中对应被选存储单元的那条字线,被按照行选择结果激活至选择状态(H电平)。结果,被选存储单元被电连接于位线BL与/BL之一和接地电压Vss之间。并且,假读出字线DRWL1与DRWL2之一被激活,不与MTJ存储单元MC连接的位线BL与/BL的另一端跟假存储单元DMC连接。
另一方面,写入字线WWL与写入列选择线WCSL被去激活至L电平(接地电压Vss)。无电流流入写入字线WWL与写入数据总线WDB、/WDB。
如此,数据读出时,位线BL与/BL各自经由充当电阻的被选存储单元或假存储单元DMC,被下拉至接地电压Vss。并且,在被选存储单元列中,对应的位线BL与/BL各自被读出驱动器选择门RCDG上拉至电源电压Vcc2。因此,位线BL与/BL的电压取决于上拉力(至Vcc2)与下拉力(至Vss)的平衡,也就是决定于充当电阻器的被选存储单元或假存储单元的电阻。
例如,被选存储单元的存储数据的级为“1”(电阻R1)时,在跟存储单元连接的位线BL与/BL中的一条位线上产生的电压变化ΔV1,大于跟假存储单元DMC连接的位线BL与/BL中的另一条位线上产生的电压变化ΔVm。构成对应被选存储单元的位线对BLP的位线BL与/BL的电压间的相对关系,随被读出的存储数据的级改变。如此,根据位线BL与/BL之间的电压差,读出数据总线RDB与/RDB的电位被读出门RG驱动。
换言之,当位线BL的电压高于位线/BL的电压时,读出数据总线/RDB比读出数据总线RDB更强地被读出门RG驱动至接地电压Vss侧(图6中电压变化ΔVb1>ΔVbm)。
以上述方式产生的读出数据总线RDB与/RDB之间的电压差,通过数据读出电路51R或52R放大,从而可以输出H电平的读出数据DOUT。采用数据读出电路52R的场合,预充电信号φpr在数据读出动作中被去激活至H电平。并且,在从数据读出动作开始的预定时间经过后,读出信号φs被激活至H电平,触发脉冲φtr被激活至L电平,其激活期间跟读出信号φs相重叠。
相反,被选存储单元保持为“0”(电阻R0)时,即位线/BL的电压高于位线BL的电压的场合,读出数据总线RDB比读出数据总线/RDB更强地被读出门RG驱动至接地电压Vss侧。基于这样产生的读出数据总线RDB与/RDB之间的电压差,可以输出L电平的读出数据DOUT。
如此,通过经由读出门RG驱动读出数据总线RDB与/RDB电位的结构,进行数据读出时可以将寄生电容大的读出数据总线RDB与/RDE从流经被选存储单元(或假存储单元)与位线的读出电流路径中排除。由此,可以减轻通过被选存储单元与假存储单元的读出电流路径的RC负载,在位线BL与/BL中迅速产生数据读出所需的电压变化。这样,可以高速进行数据读出,实现对MRAM装置的高速存取。
另外,为了抑制MTJ存储单元中的隧道磁致电阻元件TMR两端所加的电压,要确定数据读出时上拉位线BL与/BL的电源电压Vcc2。一般而言,如果考虑作为隧道磁致电阻元件的隧道势垒的绝缘膜可靠性,须将该偏置电压设于约400mV或更小。结果,可以保证MTJ存储单元的动作可靠性,并可实现高速数据读出。
并且,由于以位线BL与/BL的预充电电压作为接地电压,在非被选列中不会出现这样的现象,即响应被选行的读出字线RWL的激活状态经由导通的存取晶体管从位线BL与/BL产生放电电流。结果,可以减少因位线BL与/BL中伴随预充电的充放电导致的电力消耗。
接着,对数据写入时的动作进行说明。
对应于列选择结果的写入列选择线WCSL被激活至选择状态(H电平)后,对应的写入列选择门WCSG导通。于是,对应被选存储单元的选择列的位线BL与/BL各自的一端,分别跟写入数据总线WDB与/WDB连接。
并且,数据写入时,对应的短路开关晶体管62导通,被选列的位线BL与/BL的另一端(位于写入列选择门WCSG的对侧)之间相互短接。
如上说明,数据写入电路51W,将写入数据总线WDB与/WDB各设定于电源电压Vcc3与接地电压Vss中的一个电压。例如,写入数据DIN的数据级为L电平时,流过用以向写入数据总线WDB写入L电平数据的数据写入电流-Iw。数据写入电流-Iw,经由写入列选择门WCSG供给选择列的位线BL。
流向选择列的位线BL的数据写入电流-Iw,被短路开关晶体管62折返。由此,在另一位线/BL上流过相反方向的数据写入电流+Iw。流过位线/BL的数据写入电流+Iw,经由写入列选择门WCSG被送至写入数据总线/WDB。
另外,写入字线WWL中的一条字线,按照行选择结果被激活至选择状态(H电平:电源电压Vcc3),于是流过数据写入电流Ip。结果,在对应的写入字线WWL与位线BL(/BL)中都有数据写入电流流入的被选存储单元,进行数据写入。经折返而流过被选列的位线BL与/BL的数据写入电流±Iw的方向,根据写入数据DIN的数据级反向。
数据写入时,读出字线RWL被保持在非选择状态(L电平)。还有,在数据读出电路52R中,数据写入时,预充电信号φpr被激活至H电平。另一方面,读出信号φs被去激活至L电平,触发脉冲φtr被去激活至H电平。
并且,在数据写入时,通过将位线预充电信号BLPR激活至H电平,数据写入时位线BL与/BL的电压也被设在相当于数据读出时的预充电电压电平的接地电压Vss上。
同样,读出数据总线RDB与/RDB,被设定在相当于数据读出时预充电电压的电源电压Vcc1上。如此,使得对应于非被选列的位线BL、/BL和读出数据总线RDB、/RDB的数据写入时的电压跟准备数据读出的预充电电压相一致,从而不需要数据读出前新的预充电动作,可以高速完成数据读出动作。
接着,对数据读出与数据写入电路系统的电源电压电平进行说明。数据读出电路51R、52R的工作电源电压Vcc1和位线BL、/BL的预充电电压Vcc2被设为:Vcc1>Vcc2,目的在于使位线振幅减小以抑制加于隧道磁致电阻元件两端的电压,同时增加读出数据总线RDB、/RDB的振幅电压。
另一方面,数据写入时,被选存储单元的隧道磁致电阻元件TMR必须被充分磁化。为此,数据写入电路51W的工作电源电压Vcc3,经由写入数据总线WDB、/WDB设定在高于电源电压Vcc1与Vcc2的电压上,以供给足够的数据写入电流,即设为:Vcc3>Vcc1>Vcc2。
例如,将MRAM装置外部供给的外部电源电压直接用作电源电压Vcc3,而且将该外部电源电压通过降压电路(未作图示)降压,如该电路具有产生电源电压Vcc1与Vcc2的结构,就可按照上述的Vcc3>Vcc1>Vcc2的关系高效率地提供电源电压。
如图7所示,跟依据实施例1的结构相比,依据实施例1改型的结构的不同点在于:数据写入电路51W为数据写入电路52W所代替,且读出驱动器选择门RCDG1~RCDGm被省略。
如图8所示,依据实施例1的改型的数据写入电路52W,在用以供给数据写入电流的数据写入电路51W的结构上增加了上拉电路53。
上拉电路53包含:分别设置在电源电压Vcc2与写入数据总线WDB与/WDB之间的上拉晶体管157与158。上拉晶体管157与158,例如可以由P型MOS晶体管构成,其栅极接受数据写入时被激活至H电平、数据读出时被去激活至L电平的写入控制信号WE。相当于数据写入电路51W的那部分结构跟图5所示相同,不再细述。
数据写入时,上拉晶体管157与158被截止,因此跟数据写入电路51W相同,可以向写入数据总线WDB与/WDB供给数据写入电流±Iw。另一方面,数据读出时,相当于数据写入电路51W的部分的数据写入电流±Iw供给被停止,写入数据总线WDB与/WDB各自被导通的上拉晶体管157与158上拉至电源电压Vcc2。
如图9所示,在依据实施例1的改型的结构中,数据读出时,对应于被选列的写入列选择线WCSL也被激活至H电平。结果,被上拉至电源电压Vcc2的写入数据总线WDB与/WDB,分别跟被选列的位线BL与/BL电连接。
也就是,跟依据实施例1的结构比较,依据实施例1改型的结构的不同点在于:被选列的位线BL与/BL被数据写入系统电路(数据写入电路52W)上拉。在被上拉至电源电压Vcc2的位线BL与/BL和在由读出门RG驱动至接地电压Vss的读出数据总线RDB、/RDB中产生的电压变化,以及通过检测这些电压变化而读出数据的动作,均跟图6所示的相同,不再详述。
并且,数据写入时的动作也跟图6所示的相同,因此不再详述。
在依据实施例1改型的结构中,可以不设置读出驱动器选择门RCDG1~RCDGm,以高效率地上拉对应于选择列的位线BL与/BL。还有,由于写入数据总线WDB与/WDB可在数据写入以外的时间预先上拉至电源电压Vcc2,就不会造成数据读出开始时动作速度的下降。
至于电源电压Vcc1、Vcc2与Vcc3的电压电平,可以跟实施例1同样地进行设置。
实施例2
在实施例2中,就从/向外部并行地接收/发送多位数据的MRAM装置进行说明。
如图10所示,依据实施例2的存储阵列中有沿列方向设置的N个(N:不小于2的整数)存储体MB1~MBN。各存储体MB1~MBN,具有跟依据实施例1的存储阵列10相同的结构。
沿列方向布置为存储体MB1~MBN所共用的M个(M:不小于2的整数)数据总线对DBP1~DBPM。例如,数据总线对DBP1包含互补的数据总线DB1与/DB1。以下,简单地将数据总线对DBP1~DBPM总称为DBP,将数据总线DB1~DBM总称为数据总线DB,将数据总线/DB1~/DBM总称为数据总线/DB。
读出/写入控制电路50、60包含:分别对应数据总线对DBP1~DBPM设置的数据读出电路RDV1~RDVM和数据写入电路WDV1~WDVM。数据读出电路RDV1~RDVM,分别响应读出控制信号RE1~REM进行工作。同样地,数据写入电路WDV1~WDVM,分别响应写入控制信号WE1~WEM进行工作。
各数据读出电路RDV1~RDVM也可以采用在图3与图4所示的数据读出电路51R与52R的结构。也就是,在数据读出电路51R与52R中,如采用检测并放大对应的数据总线DB与/DB(取代读出数据总线RDB与/RDB)的电压的结构,可以进行同样的数据读出。
特别是,通过将各存储体MB1~MBK设置成具有跟实施例1相同的用读出门进行数据读出的结构,可以采用不具读出电流Is供给能力的、适合小型化的数据读出电路52R,因此,可以保证数据读出的高速化与MTJ存储单元的动作可靠性,同时可以在大多设有数据读出电路的结构中,减少芯片面积。
并且,采用具有读出电流Is供给能力的数据读出电路51R的场合,跟传统技术一样,可以通过使读出电流Is经由数据总线DB(/DB)与位线BL(/BL)流入被选存储单元进行数据读出。
各数据写入电路WDV1~WDVM,可以采用图5与图8中分别所示的数据写入电路51W与52W的结构。也就是,数据写入电路51W与52W中,如采用驱动对应的数据总线DB与/DB(取代写入数据总线WDB与/WDB)的结构,可以进行同样的数据写入。
特别是,在各存储体MB1~MBK采用跟实施例1相同的读出门进行数据读出的结构的场合,可以通过使用数据写入电路52W来缩减芯片面积。
通过采用这种结构,各数据总线对DBP可独立地向/从被选存储单元发送/接收数据。因此,可以同时使用多个数据对DBP,进行多位的并行数据读出与写入。
数据总线对DBP,在每k个(k:自然数)存储单元处设置。
图11是说明数据总线对布置的电路图。由于数据总线对DBP1~DBPM以相同的方式布置,在图11中仅以数据总线对DBP1的布置为代表进行表示。
如图11所示,列译码器25有选择地激活,用以在对应于同一数据总线对的k个存储单元列之间作列选择的读出列选择线RCSL1~RCSLk与写入列选择线WCSL1~WCSLk。
对应于第一至第k个存储单元列分别设置,跟实施例1相同的写入列选择门WCSG、读出列选择门RCSG和读出门RG与读出驱动器选择门RDCG。并且,MTJ存储单元MC、假存储单元DMC、短路开关晶体管62与预充电晶体管64,也按跟图2所示的存储阵列相同的方式进行布置。
读出列选择门RCSG,响应对应的读出列选择线RCSL的激活状态,将数据总线DB1与/DB1和对应的位线BL与/BL电连接。同样地,写入列选择门WCSG,按照对应的写入列选择线WCSL的电压,分别将对应的位线BL与/BL和数据总线DB1与/DB1电连接。
通过这样的结构,可以实现k个存储单元列共用一个数据总线对DBP。
数据总线DB1与/DB1,跟位线BL、/BL沿同一方向布置。另一方面,读出列选择线RCSL与写入列选择线WCSL,沿着跟位线BL、/BL相交的方向(即行方向)布置。由此,可以避免与位线BL、/BL同一方向的布线集中,保证布线的间距。
又如图10所示,存储体MB1~MBN,按照存储体地址(未作图示)加以选择。在被选存储体中,通过一次数据读出命令与一次数据写入命令,向/从外部发送/接收M’位(M’:不大于M的自然数)读出数据DOUT与写入数据DIN。
因此,数据读出时,可以并行读出最大为M位的数据。结果,可以构成这样的MRAM装置,该装置特别适合于跟逻辑电路并装于同一芯片的系统LSI等。
另一方面,数据写入时,由于必须在位线BL、/BL中流过较大的数据写入电流,如果取较多的并行写入数据的位数(以下也称“并行写入位数”),其数据耗电也就按比例增大。特别是,在并行读出多位的结构中,如果并行读出的读出数据的位数(以下也称“并行读出位数”)跟并行写入位数相同,会使峰值电流过大,从而增大电源系统的负担。结果,由于电源电压波动的影响,有可能产生误动作。
因此,在依据实施例2的结构中,通过控制电路5所包含的写入选择电路6,将并行写入位数设定得小于并行读出位数。
例如,在并行读出M位数据的场合,存储阵列10中同时并行写入的数据的位数,被设定为N’位(N’:小于M’的自然数)。
接着,用图12A与图12B说明控制电路5对数据读出电路与数据写入电路的动作控制。
在图12A与12B中,所设置的数据总线对DBP的布置数M,跟一次数据读出动作与数据写入动作所发送/接收数据的位数M’相等,现以M=M’=8的场合为代表进行说明。
如图12A所示,数据读出时,在时刻tr0开始一次数据读出命令,读出控制信号RE1~RE8被同时激活,于是8位(M’位)的数据被并行读出。还有,在此M=M’的场合,也可以采用响应共同的读出控制信号RE来激活各数据读出电路的结构。
如图12B所示,数据写入时,为了抑制峰值电流的增加,将并行写入位数N’设定得小于并行读出位数M’。例如,当一次数据写入命令开始后,分为不同的时刻tw0、tw1、tw2与tw3,由写入选择电路6一部分一部分地激活写入控制信号WE1~WEM。
响应写入控制信号WE1~WEM中一个对应信号的激活和去激活状态,各数据写入电路WDV1~WDVM被激活和被去激活。在被激活的数据写入电路中,向图5所示的倒相器154~156供给工作电流,用对应的数据总线对DBP进行数据写入。另一方面,在被去激活的数据写入电路中,停止向图5所示的倒相器154~156供给工作电流。
在图12B的示例中,并行地进行每2位(N’位)的数据写入。也就是,将一次数据写入命令中输入的8位(M’位)的写入数据分为4份,进行每2位(N’位)的并行数据写入。
如此,在能够在存储阵列10中进行多位数据读出与数据写入结构中,将并行写入位数N’设为小于并行读出位数M’,或者设为N’=1,一位一位串行地进行存取的结构,这样可以有效减小数据写入时的峰值电流。结果,可以提高MRAM装置数据读出时的数据速率,同时可以通过抑制数据写入时的峰值电流而减轻电源系统的负担,改善其工作可靠性。
特别是,通过以每N’位(N’:小于M’的自然数)地(M’/N’)次反复并行写入的方式构成进行M’位数据写入的一次数据写入命令,可以使一次数据读出命令的字长(位数)跟一次数据写入命令的字长(位数)相同。
实施例2的改型
图13是表示依据实施例2改型的存储阵列10及其周边电路结构的概略框图。
在依据实施例2改型的结构中,数据总线对DBP被分为读出数据总线对RDBP与写入数据总线对WDBP。另外,在整个存储阵列10中,读出数据总线对RDBP的布置数与写入数据总线对WDBP的布置数不同。
图13示出了,在整个存储阵列10中设置M个读出数据总线对RDBP1~RDBPM和H个(H:H<M的自然数)写入数据总线对WDBP1~WDBPH的结构。
跟依据实施例2的结构相同,每k个存储单元列设置一个读出数据总线对RDBP1~RDBPM。另一方面,每k’个(k’:k’>k的自然数)存储单元列设置一个写入数据总线对WDBP1~WDBPH。
跟实施例2相同,对应各读出数据总线对RDBP1~RDBPM,设置数据读出电路RDV1~RDVM。同样地,跟实施例2相同,对应写入数据总线对WDBP1~WDBPH,设置数据写入电路WDV1~WDVH。其他部分的结构跟实施例2相同,在此不再赘述。
通过设置这样的结构——以并行写入位数小于并行读出位数为前提的结构,可以减少数据写入电路WDV的设置个数。由此,可以提高电路布局的自由度,并缩小MRAM装置所占的芯片面积。
另外,如果将写入数据总线对WDBP与读出数据总线对RDBP的设置个数的比例设定得合适,就无必要进行数据写入电路与数据读出电路的激活选择控制。例如,设定写入数据总线对WDBP的设置个数与并行写入位数相等(H=N’),并设定读出数据总线对RDBP的设置个数与并行读出位数相等(M=M’),通过这一手段,可以在数据读出时基于共同的读出控制信号RE并行地激活各数据读出电路,而另一方面,即使采用“响应共同的写入控制信号WE而并行地激活数据写入时各数据写入电路”这样的结构,也可以取得跟实施例2相同的效果。由此,可以简化各数据写入电路与各数据读出电路的动作控制。
并且,跟实施例2相同,通过每N’位(N’:小于M’的自然数)地(M’/N’)次反复M’位数据写入来构成一次数据写入命令,就可使一次数据读出命令的字长(位数)与一次数据写入命令的字长(位数)相同。
特别是,如上所述,如果在设定为H=N’与M=M’后,将写入数据总线对WDBP与读出数据总线对RDBP的设置个数的比例(M/H)设为整数,且对应一次数据写入命令分别用不同的存储体(M/H)次反复H位并行数据写入,就可以不进行对各数据写入电路与各数据读出电路的激活的选择控制,使一次数据读出命令的字长(位数)跟一次数据写入命令的字长(位数)相同。