半导体存储装置的制作方法

文档序号:11252395阅读:1332来源:国知局
半导体存储装置的制造方法

相关申请的交叉引用

本申请要求2016年3月8日提交的第62/305,476号美国临时申请和2016年9月14日提交的第15/265,759号美国非临时申请的优先权,所述申请的全部内容在此引入作为参考。

在此描述的实施例一般地涉及半导体存储装置。



背景技术:

利用磁阻效应的半导体存储装置在本领域中是已知的。



技术实现要素:

根据一个实施例,一种半导体存储装置包括存储单元和第一电路。所述第一电路被配置为基于写入命令产生写入脉冲并且根据所述写入脉冲向所述存储单元供应写入电流。当所述第一电路接收到第一写入命令时,所述第一电路产生第一写入脉冲。当所述第一电路在接收所述第一写入命令之后的第一时间内接收到第二写入命令时,所述第一电路延长所述第一写入脉冲。

本实施例的半导体存储装置是有益的,因为能够延长写入脉冲的脉冲宽度。

附图说明

图1是示出根据第一实施例的半导体存储装置和存储控制器的框图;

图2示出单元阵列的元件以及它们在第一实施例的半导体存储装置中的连接方式;

图3示出命令电路的元件的一部分以及它们在第一实施例的半导体存储装置中的连接方式;

图4示出第一实施例的半导体存储装置中的读写电路的功能块,这些功能块连同半导体存储装置的相关元件一起被示出;

图5示出第一实施例的半导体存储装置中的读写电路的功能块的其它元件,并且还示出元件的连接方式;

图6示出fin产生器的元件以及它们在第一实施例的半导体存储装置中的连接方式;

图7示出fout产生器的元件以及它们在第一实施例的半导体存储装置中的连接方式;

图8示出fifo电路的元件以及它们在第一实施例的半导体存储装置中的连接方式;

图9示出脉冲产生器的元件以及它们在第一实施例的半导体存储装置中的连接方式;

图10是示出第一实施例的半导体存储装置中的写入中的信号的时间图;

图11是示出第一实施例的半导体存储装置中的写入中的命令和信号的时间图;

图12是示出第一实施例的半导体存储装置中的写入的变形例中的命令和信号的时间图;

图13示出用于第二实施例的半导体存储装置中的写入的命令;

图14示出用于第二实施例的半导体存储装置中的写入的命令vnop;

图15示出第二实施例的半导体存储装置中的写入中产生的写入脉冲。

具体实施方式

将参考附图描述各实施例。在以下描述中,具有相同功能和配置的结构元件将由相同参考符号表示。以下描述的每个实施例仅示出实现实施例的技术理念的示例性设备和方法。所述技术理念并不限于以下描述的元件材料、形状、结构、布置等。

每个功能块可以以硬件、计算机软件或它们的组合的形式实现。功能块不需要是将如以下描述的块。例如,一个示例性功能块的部分功能可以由另一个功能块实现。此外,示例性功能块可以被分成更多的特定功能块。

一般而言,根据一个实施例,一种半导体存储装置包括存储单元和第一电路。所述第一电路被配置为基于写入命令产生写入脉冲并且根据所述写入脉冲向所述存储单元供应写入电流。当所述第一电路接收到第一写入命令时,所述第一电路产生第一写入脉冲。当所述第一电路在接收所述第一写入命令之后的第一时间内接收到第二写入命令时,所述第一电路延长所述第一写入脉冲。

[1]第一实施例

将描述根据第一实施例的半导体存储装置。

[1-1]半导体存储装置的整体配置

图1示出根据第一实施例的半导体存储装置1和存储控制器(或主机装置)2的功能块。半导体存储装置1和存储控制器2构成存储系统。例如,半导体存储装置1能够是动态ram(dram)、磁阻ram(mram)、电阻ram(reram)或相变ram(pcram)。在以下描述中,将参考其中半导体存储装置是mram的情况。

半导体存储装置1通过连接线5连接到存储控制器2。通过连接线5,半导体存储装置1接收电源电压、命令/地址信号ca、数据dq、数据选通信号dqs和时钟clk/clkb。具有后缀“b”的信号是没有后缀“b”的信号的反信号。地址信号包括地址。半导体存储装置1借助连接线5将数据dq传输到存储控制器2。

存储控制器2包括诸如中央处理单元(cpu)、ram和只读存储器(rom)之类的元件,并且通过发出命令控制半导体存储装置1。

半导体存储装置1包括存储体(bank)10(10<0>到10<3>)、ecc电路14、输入和输出电路15、控制器16和命令电路17。半导体存储装置1例如包括八个存储体10,并且在图1中示出其中的四个。

存储体10<bk>包括单元阵列11<bk>和读写电路12<bk>。bk的值是存储体的标识符。在其中设置八个存储体10的实例中,bk的值是0或者不大于7的任何自然数。每个单元阵列11包括多个存储单元mc。存储单元mc以非易失性的方式保留数据。在存储单元阵列11的区域中设置各种信号线(未示出)。信号线包括后面描述的位线bl、源线sl和字线wl。

每个读写电路12控制针对对应单元阵列11执行的写入和读取操作。每个读写电路12包括驱动器、解码器、页缓冲器、读出放大器等。解码器选择由从存储控制器2供应的地址信号指定的存储单元mc。解码器包括行解码器和列解码器。页缓冲器临时存储要向对应存储体10供应的写入数据或者从该存储体10供应的读取数据。读写电路12通过向信号线施加各种电压或者向信号线供应各种电流,标识从选定存储单元mc供应的数据或者在选定存储单元中写入指定数据。

输入和输出电路15控制半导体存储装置1与存储控制器2之间的信号传输。输入和输出电路15连接到命令电路17、读写电路12、ecc电路14和控制器16。

输入和输出电路15从存储控制器2接收命令和地址信号,并且将它们供应给命令电路17。命令电路17接收时钟clk和clkb,并且可以按照基于时钟clk和clkb的计时输出各种信号。命令电路17向读写电路12供应基于命令和地址信号的信号。

输入和输出电路15向读写电路12供应地址信号。基于地址信号,读写电路12控制自存储单元mc的数据读取和到存储单元mc的数据写入。

ecc电路14将错误纠正代码(ecc)添加到要在存储单元mc中写入的数据。ecc电路对包括在从存储单元mc接收的数据中的ecc解码,纠正所接收数据中的错误,并且产生要读取的数据。

此外,输入和输出电路15向控制器16供应各种控制信号。控制器16包括诸如电压产生器之类的元件,并且基于所接收的控制信号控制半导体存储装置1的结构元件。

将参考图2详细描述单元阵列11。图2示出单元阵列的元件以及它们的连接方式。存储单元mc例如以矩阵模式布置。单元阵列11包括i个字线wl(wl0到wli-1)、j个位线bl(bl0到blj-1)和j个源线sl(sl0到slj-1)。ij是不小于0的自然数。一行的存储单元mc连接到一个字线wl,并且一列的存储单元mc连接到由一个位线bl和一个源线sl形成的一个对。

每个存储单元mc包括磁性隧道结(mtj)元件30和选择晶体管31。mtj元件30包括mtj,并且mtj包括两个磁性层(第一和第二磁性层)和布置在两个磁性层之间的非磁性层。第一磁性层具有固定的磁化方向或磁各向异性。第二磁性层具有可变的磁化方向。具有固定磁化方向的第一磁性层意味着磁化方向不会被流经mtj元件30的写入电流反转。

当两个磁性层的磁化方向彼此平行时,mtj元件具有最小电阻,并且当它们的磁化方向彼此反平行时具有最大电阻。示出这些不同电阻的转变状态被分配给二进制数据。当写入电流从第一磁性层流向第二磁性层时,两个层的磁化方向变得彼此平行。相反,当写入电流从第二磁性层流向第一磁性层时,两个层的磁化方向变得彼此反平行。

选择晶体管31例如是n型金属氧化物半导体场效应晶体管(mosfet)。

每个mtj元件30的一端连接到位线bl,并且另一端连接到一个选择晶体管31的漏极(或源极)。每个选择晶体管31的栅极连接到一个字线wl,并且其源极(或漏极)连接到一个源线sl。

当通过读写电路12激活一个字线wl时,连接到该字线wl的选择晶体管31被接通。当选择晶体管31被接通时,连接到选择晶体管31的mtj元件30被连接到一对位线bl和源线sl。连接到一个字线wl的一组存储单元mc将被称为“页”。

多对位线bl和源线sl属于一列。每个存储体10<kb>包括(m+1)个列(即,列0到列m)。针对其执行读取或写入操作的存储单元通过指定页地址(即,指定字线wl和列)来被指定。在读取操作的情况下,连接到由读取操作选择的字线wl的所有存储单元mc中的数据被读取和存储在页缓冲器(未示出)中。对应于一页的数据的一部分进一步由列地址指定。因此,属于一页数据的一部分并且由列地址指定的数据被读取。同样,通过指定目标页和列开始写入。连同读取命令或写入命令一起指定列地址。

图3示出命令电路17的元件的一部分。命令电路17接收时钟clk和clkb,并且基于时钟clk和clkb而操作。命令电路17包括移位寄存器shr1、多路复用器mux1、“与”门ad1和ad2、“或”门or1、以及fifo寄存器组frs1和frs2。

移位寄存器shr1接收向命令电路17供应的读取命令或写入命令。基于外部时钟clk和clkb,移位寄存器shr1在从接收读取或写入命令起经过多个时钟周期(其数量基于在半导体存储装置1中设定的突发长度)之后输出信号bb<1>到bb<4>(bb<4:1>)之一。突发长度表示响应于一个读取或写入命令,输出或输入要被读取或写入的数据的次数。信号bb<1>到bb<4>对应于突发长度的周期。例如,当突发长度为4时,输出高电平信号bb<1>。例如,当突发长度为8和16时,分别输出高电平信号bb<2>和bb<4>。

通过多输入“或”门or1接收信号bb<1>到bb<4>。“或”门or1的输出用作信号bl4_bend。当由半导体存储装置1接收长度等于突发长度4的数据时,断言信号bl4_bend(设定为高电平)。以下给出的描述基于其中突发长度为4的实例。

通过“与”门ad1接收信号bl4_bend。也向“与”门ad1供应电源电位(即,高电平信号)。由fifo寄存器组frs1接收“与”门ad1的输出。可以直接向fifo寄存器组frs1供应信号bl4_bend。

fifo寄存器组frs1包括n个fifo寄存器。数量n基于半导体存储装置1的规范确定并且例如为ru(twr/tck/2),其中twr是写入恢复时间。为了开始写入,半导体存储装置1从完成写入数据的接收起需要写入恢复时间。写入恢复时间是在存储单元阵列11中写入读写电路12的页缓冲器(未示出)中的数据需要的时间。根据半导体存储装置1的写入特性预先确定写入恢复时间。符号tck代表时钟clk和clkb的1个周期时间(周期)。ru表示舍入小数点之后的数字。

使用n个fifo寄存器,当从转变为高电平信号bl4_bend起经过基于值n并且是写入恢复所需的时钟周期时,fifo寄存器组frs1输出高电平信号bnwr<bk>,并且在特定时间长度内保持输出该高电平信号bnwr<bk>。

用于产生信号bnwr<bk>的电路在配置方面类似于用于产生信号apcg<bk>的电路。用于产生信号apcg<bk>的电路包括多路复用器mux1、“与”门ad2和fifo寄存器组frs2。多路复用器mux1接收信号bb<1>、bb<2>和bb<4>。多路复用器mux1还从控制器16接收信号bl4、bl8或bl16。信号bl4、bl8和bl16基于针对半导体存储装置1设定的突发长度。如果突发长度为4,则多路复用器mux1接收信号bb<1>并且输出它作为信号bend。当由半导体存储装置1接收长度等于突发长度的数据时,断言信号bend(设定为高电平)。

通过“与”门ad2接收信号bend。“与”门ad2还接收信号apen。当由读取命令或写入命令指定自动预充电时,断言信号apen(设定为高电平)。通过fifo寄存器组frs2接收“与”门ad2的输出。当信号apen处于高电平时,fifo寄存器组frs2开始接收高电平信号bend,当经过基于值k并且是写入恢复所需的时钟周期时,开始输出信号apcg<bk>。值k表示设置的存储体数量,并且例如为8。

每个读写电路12具有如图4中所示的元件和连接。图4示出一个读写电路12<bk>的功能块和半导体存储装置1的相关元件。半导体存储装置1包括写入使能电路18。写入使能电路18从命令电路17接收信号cbank<bk>。当由写入命令或读取命令指定存储体10<bk>作为要被访问的存储体时,信号cbank<bk>上升到高电平。每次由半导体存储装置1(具体地说由命令电路17)接收指定存储体10<bk>的写入命令或读取命令时,信号cbank<bk>上升到高电平。

写入使能电路18还从命令电路17接收信号each_bl4。信号each_bl4与时钟信号clk同步,并且每次经过对应于突发长度4的时钟周期时,断言信号each_bl4(设定为高电平)。写入使能电路18基于信号cbank<bk>和each_bl4产生信号bwens<bk>,并且输出信号bwens<bk>。

读写电路12包括解码器121<bk>、重设控制电路122、fin产生器124<bk>、fout产生器125<bk>、(m+1)个fifo电路127(127<0>到127<m>)、以及(m+1)个脉冲产生器128(128<0>到128<m>)。换言之,脉冲产生器128的数量与设置的列的数量相同。

例如,解码器121<bk>从命令电路17接收信号ca<m:0>,并且还接收信号bwen2<bk>。一组信号ca<0>到ca<m>(ca<m:0>)共同指定一列。更具体地说,信号ca<0>到ca<m>(ca<m:0>)中的每一个具有用于指定要被访问的列的值(“0”或“1”)。

解码器121<bk>基于信号ca<m:0>和信号bwen2<bk>产生信号column<ca>和bwen2_sum<ca>,并且输出信号column<ca>和bwen2_sum<ca>。值“ca”是一个列的标识符(地址),并且是0或不大于m的自然数。当指定相应列0到m时,在特定时间内信号column<0>到column<m>保持被断言(保持在高电平)。在读写电路12<bk>中,当断言信号column<ca>和信号bwen2<bk>两者时,信号bwen2_sum<ca>保持被断言。

通过重设控制电路122接收信号bwen2_sum<ca>。重设控制电路122还从命令电路17接收信号reset。在预定时间内信号reset保持被断言(保持在高电平),以便操作的重设。当接收到所断言的信号reset时,重设控制电路122在特定时间内保持断言信号rst<ca>(其用于由信号bwen2_sum<ca>指定的列ca)。

fin产生器124<bk>从写入使能电路18接收信号bwens<bk>,并且从命令电路17接收信号reset。信号bwens<bk>是信号bwen2<bk>的延迟信号。fin产生器124<bk>从信号bwens<bk>产生信号bwen<0>到bwen<n>,并且输出信号bwen<0>到bwen<n>(bwen<n:0>)。通过上面描述的ru(twr/tck/2)计算n的值。

每次将信号bwens<bk>设定为高电平时,fin产生器124<bk>将信号bwen<0>到bwen<n>之一设定为高电平。更具体地说,每次接收到高电平信号bwens<bk>时,fin产生器124<bk>按照<>内的数字的升序,将信号bwen<0>到bwen<n>设定为高电平。

fout产生器125<bk>从命令电路17接收信号bnwr<bk>和信号reset。fout产生器125<bk>从信号nwr<bk>产生信号nwr<0>到nwr<n>(nwr<n:0>),并且输出信号nwr<n:0>。每次将信号bnwr<bk>设定为高电平时,fout产生器125<bk>将信号nwr<0>到nwr<n>之一设定为高电平。更具体地说,每次接收到高电平信号bnwr<bk>时,fout产生器125<bk>按照<>内的数字的升序,将信号nwr<0>到nwr<n>设定为高电平。

fifo电路127<ca>包括多个fifo寄存器,并且接收信号bwen<n:0>、信号nwr<n:0>和信号column<ca>。fifo电路127<ca>基于信号bwen<n:0>、信号nwr<n:0>和信号column<ca>产生信号wayts<ca>和wayte<ca>,并且输出信号wayts<ca>和wayte<ca>。具体地说,如果当正在接收已断言(高电平)信号column<ca>时接收到已断言信号bwen<n>(n是0或不大于n的自然数),则fifo电路127<ca>锁存高电平信号并且输出已断言(高电平)信号wayts<ca>。此外,当接收到已断言(高电平)信号nwr<n>时,fifo电路127<ca>输出已断言(高电平)信号wayte<ca>。

脉冲产生器128<ca>接收信号wayts<ca>和信号wayte<ca>。基于信号wayts<ca>和信号wayte<ca>,脉冲产生器128<ca>产生信号write_pulse<ca>并且输出该信号。基于信号wayts<ca>和信号wayte<ca>,在预定时间内信号write_pulse<ca>保持被断言(保持在高电平)。脉冲产生器128<ca>例如是设定/重设锁存器(rs锁存器)。rs锁存器接收信号wayts<ca>作为设定输入,并且接收信号wayte<ca>作为重设输入。

每个读写电路12<bk>具有如图5中所示的元件。控制器cc基于高电平信号write_pulse<ca>,激活信号gbl<ca>和信号gsl<ca>(未示出)。信号gbl<ca>选择属于列ca的位线bl,并且信号gsl<ca>选择属于列ca的源线sl。电流源电路csr<bk>和电流汇电路csk<bk>用作供电电路,并且共同允许写入电流流向存储单元mc,该存储单元mc连接到与选定字线wl相连的列ca中的字线bl和源线sl,并且然后该存储单元mc被选择。写入电流沿着基于要在存储单元mc中写入的数据的方向,流经存储单元mc。当信号write_pulse<ca>被断言期间,电流源电路csr<bk>和电流汇电路csk<bk>保持供应写入电流。

图6示出fin产生器124<bk>的元件以及它们的连接方式。fin产生器124<bk>包括移位寄存器。移位寄存器包括(n+1)个触发器1241<0>到1241<n>。触发器1241<0>到1241<n>分别提供输出b0到bn。触发器1241<0>到1241<n>分别接收输出bn到bn-1。触发器1241在其时钟输入端处接收信号iclk1,并且在其反转后的时钟输入端处接收信号iclk1b。信号iclk1与信号bwens<bk>具有相同的逻辑。

分别通过“与”门ad11<0>到ad11<n>接收输出b0到bn。“与”门ad11<0>到ad11<n>接收延迟信号bwens<bk>。“与”门ad11<0>到ad11<n>分别输出信号bwen<0>到bwen<n>。

图7示出fout产生器125<bk>的元件以及它们的连接方式。fout产生器125<bk>包括以与fin产生器124<bk>相同的方式连接的元件。但是,应该注意,每个节点处的信号不同于fin产生器124<bk>的对应节点处的信号。fin产生器124<bk>中的信号bwens<bk>对应于fout产生器125<bk>中的信号bnwr<bk>。信号iclk2和iclk2b分别对应于信号iclk1和iclk1b。信号nwr<0>到nwr<n>分别对应于信号bwen<0>到bwen<n>。输出c0到cn分别对应于输出b0到bn。

图8示出读写电路12<bk>的fifo电路127<ca>的元件以及它们的连接方式。如图8中所示,每个fifo电路127<ca>包括(n+1)个fifo寄存器fr<0>到fr<n>。每个fifo寄存器fr按照基于在端子pin处接收的高电平信号的计时,锁存在端子pi处接收的信号的逻辑。每个fifo寄存器fr按照基于在端子pout处接收的高电平信号的计时,从端子po输出锁存的逻辑(数据)。

fifo寄存器fr<0>到fr<n>在端子pi处接收信号column<ca>,并且在端子rst处接收信号rst<ca>。fifo寄存器fr<0>到fr<n>在其各个端子pin处接收信号bwen<0>到bwen<n>。fifo寄存器fr<0>到fr<n>在其各个端子pout处接收信号nwr<0>到nwr<n>。

每个fifo寄存器fr的端子po连接到锁存电路l的输入端,并且还通过晶体管qn1被接地。晶体管qn1例如是n型mosfet,并且在其栅极处接收从控制器16供应的信号porb。晶体管qn1被接通以便重设锁存电路l中的数据。锁存电路l的输出被反相器iv1反相并且用作信号an。

fifo电路127进一步包括“与非”门nd1和nd2、反相器iv5和iv6、多输入“或”门or11、以及延迟电路d1和d2。“与非”门nd1接收信号bwens<bk>和column<ca>。向串联的延迟电路d1和反相器iv5供应“与非”门nd1的输出。反相器iv5的输出用作信号wayts<ca>。

“或”门or11接收信号nwr<0>到nwr<n>,并且借助延迟电路d2向“与非”门nd2供应其输出。“与非”门nd2还接收信号an,并且向反相器电路iv6供应其输出。反相器iv6的输出用作信号wayte<ca>。

图9示出读写电路12<bk>的脉冲产生器128<ca>的配置。脉冲产生器128<ca>包括“与非”门nd11、nd12和nd13、“或非”门nr11、以及反相器iv11和iv12。“与非”门nd11接收信号wayts<ca>和“或非”门nr11的输出。“或非”门nr11接收信号wayte<ca>和信号reset,并且被施加基准电压vss(低电平)。向“与非”门nd12供应“与非”门nd11的输出。向“与非”门nd11和nd13供应“或非”门nr11的输出。“与非”门nd12接收“与非”门nd11的输出和“与非”门nd13的输出。“与非”门nd13接收“或非”门nr11的输出和“与非”门nd12的输出。向反相器iv11供应“与非”门nd12的输出,并且向反相器iv12供应反相器iv11的输出。反相器iv12输出信号write_pulse<ca>。

当供应高电平信号wayts<ca>时(此时,信号wayte<ca>和信号reset处于低电平),在脉冲产生器128<ca>中信号write_pulse上升到高电平。当供应高电平信号wayte<ca>时,信号write_pulse<ca>下降到低电平。即,当供应高电平wayts<ca>时,信号write_pulse<ca>上升到高电平,从而允许写入电流流向存储单元mc。当供应高电平wayte<ca>时,信号write_pulse<ca>下降到低电平,从而停止向存储单元mc供应写入电流。

例如,当向命令电路17供应一个写入命令时,脉冲产生器128接收高电平信号wayts<ca>并且导致信号write_pulse<ca>上升到高电平。信号write_pulse<ca>一直保持在高电平,直到接收到高电平wayte<ca>。当接收到高电平wayte<ca>时,信号write_pulse<ca>下降到低电平。因此,脉冲产生器128输出具有预定脉冲宽度的信号write_pulse<ca>。

基于信号bwen2<bk>,将写入数据传输到页缓冲器并且重设fifo电路127<ca>。随后,产生信号write_pulse<ca>。

[1-2]写入操作

图10是示出针对第一实施例的半导体存储装置1执行的写入的时间图,并且其中示出信号在写入周期中的状态。具体地说,图10与针对存储体10<bk>的列0(ca=0)执行的写入相关。所述信号以与针对写入相同的方式而改变,与针对其执行写入的存储体无关。

在图10中所示的操作的开始时间,所有指示的信号都处于低电平(无效)。当向半导体存储装置1供应写入命令(在下文中被称为第一写入命令)时,将第一写入命令从输入和输出电路15传输到命令电路17。将第一写入命令从命令电路17传输到解码器121<bk>。

在接收到第一写入命令时,解码器121<bk>基于第一写入命令,在时间t1处将信号bwen2_sum<0>(w1)设定为高电平。信号bwen2_sum<0>在预定时间长度内被保持在高电平,并且在时间t2处下降到低电平。信号bwen2_sum<0>(w1)是响应于第一写入命令的输入而产生的信号的延迟信号。在输入第一写入命令之后必须一直待机,直到写入数据被输入并且后续被重写在页缓冲器中。由于此原因,产生信号bwen2_sum<0>(w1),其被延迟从输入第一写入命令起到完成在页缓冲器中记录写入数据的时间长度。

在时间t2处信号bwen2_sum<0>(w1)到低电平的转变导致fifo电路127<0>将信号wayts<0>转变为高电平。信号wayts<0>是响应于输入第一写入命令(或信号bwen2_sum<0>(w1))而产生的信号的延迟信号。在以下描述中,假设信号wayts<0>到高电平的转变与信号bwen2_sum<0>转变到低电平的时间t2同步,然而实际上信号wayts<0>到高电平的转变可能稍微迟于时间t2。

在时间t2处信号wayts<0>到高电平的转变导致脉冲产生器128<0>输出高电平信号write_pulse<0>。由于信号write_pulse<0>到高电平的转变,读写电路12<bk>在时间t2处开始向列0的存储单元mc供应写入电流。在时间t3处信号wayts<0>返回到低电平。

在输入第一写入命令之后的预定时间处,输入下一个写入命令(在下文中被称为第二写入命令)。当向半导体存储装置1供应第二写入命令时,将第二写入命令从输入和输出电路15传输到命令电路17。将第二写入命令从命令电路17传输到解码器121<bk>。

在接收到第二写入命令时,在时间t4处解码器121<bk>将信号bwen2_sum<0>(w2)设定为高电平。在时间t5处信号bwen2_sum<0>下降到低电平。上述预定时间是比响应于输入一个写入命令而产生的信号write_pulse<0>的脉冲宽度的时间短的时间。

在时间t5处信号bwen2_sum<0>到低电平的转变导致fifo电路127<0>将信号wayts<0>转变为高电平。在时间t5处信号wayts<0>到高电平的转变导致脉冲产生器128<0>开始在时间t5处输出高电平信号write_pulse<0>。因为由于输入第一写入命令而已经将信号write_pulse<0>设定为高电平,信号write_pulse<0>维持高电平。因为信号write_pulse<0>维持高电平,读写电路12<bk>保持向列0的存储单元mc供应写入电流。在时间t6处信号wayts<0>返回到低电平。

在时间t7,即,在信号wayts<0>转变为高电平之后的预定时间处,信号wayte<0>上升到高电平。信号wayte<0>是响应于输入第二写入命令(或信号bwen2_sum<0>(w2))而产生的信号的延迟信号。更具体地说,信号wayte<ca>是借助采用移位寄存器、计时器、计数器等的延迟电路,通过使响应于输入第二写入命令(或信号bwen2_sum<0>(w2))产生的信号延迟而获得的信号。在输入信号bwen2_sum<0>(w2)之后的预定时间处,信号wayte<ca>从低电平转变为高电平。

在时间t7处信号wayte<ca>到高电平的转变导致脉冲产生器128<0>输出低电平信号write_pulse<0>。由于信号write_pulse<0>到低电平的转变,在时间t7处读写电路12<bk>停止向列0的存储单元mc供应写入电流。

如果不输入第二写入命令,则响应于输入第一写入命令(或信号bwen2_sum<0>(w1))而产生高电平信号wayte<0>。但是,在该实例中,在产生对应于第一写入命令的高电平信号wayte<0>之前输入第二写入命令。因此,不产生对应于第一写入命令的高电平信号wayte<0>。响应于输入第二写入命令而产生高电平信号wayts<0>,并且此后产生高电平信号wayte<0>。

针对列1到m执行的写入类似于针对列0执行的写入。

图11是示出第一实施例的写入中的某些信号的时间图。当半导体存储装置1在其接收活动命令之后首次接收到写入命令(第一写入命令)时,开始图11中所示的操作。

从存储控制器2向输入和输出电路15供应时钟clk和clkb、信号ca0到ca9、数据选通信号dqs和数据dq。信号ca0到ca9包括存储体地址、列地址和命令。

首先,在时间t0处,输入活动命令。活动命令指定访问(写入)目标存储体10<bk>(在该实例中为存储体a)。在输入活动命令之后,在时间t1处输入第一写入命令。在接收第一写入命令之后,半导体存储装置1在写入延迟wl(对应于三个时钟)内保持待机,并且在时间t4处接收数据选通信号dqs和写入数据dq。在数据选通信号dqs上升或下降的计时处接收写入数据dq。向读写电路12<bk>的页缓冲器(未示出)供应所接收的写入数据dq。

在接收第一写入数据之后的预定时间,在时间t3处接收下一个写入命令(第二写入命令)。在接收第二写入命令之后,半导体存储装置1在写入延迟wl(对应于三个时钟)内保持待机,并且开始接收数据选通信号dqs和写入数据dq。在该实例中,输入与针对第一写入命令输入的写入数据相同的写入数据作为虚拟数据(dummydata)。因此,能够针对同一列的存储单元延长写入脉冲而不改变写入数据。

图12是示出根据第一实施例的变形例的写入中的某些信号的时间图。根据该变形例,不输入与第一写入命令的写入数据相同的数据作为第二写入命令的写入数据。相反,使用伴随第二写入命令的输入写入数据作为数据屏蔽(datamask)。

如图12中所示,从时间t6a到时间t8a输入伴随第二写入命令的写入数据dq。在该实例中,从时间t6a到t8a将数据屏蔽信号dm保持在高电平。因此,忽略从时间t6a到时间t8a输入的写入数据,并且在时间t4a到时间t6a处输入的写入数据dq保持在页缓冲器中。如在图11中所示的实例中,能够针对同一列的存储单元mc延长写入脉冲而不改变写入数据。图12中所示的其它信号和操作类似于图11中所示的信号和操作。

[1-3]第一实施例的优点

第一实施例的半导体存储装置是有益的,因为能够延长写入脉冲的脉冲宽度而不受电路布局的限制,即,不需要采用诸如移位寄存器、计时器和计数器之类的用于延长写入脉冲的电路。

例如,如果使用电路延长写入脉冲的脉冲宽度,则额外使用此类电路导致电路面积的增大。本实施例的半导体存储装置首先接收第一写入命令,并且然后在接收第一写入命令的预定时间内接收第二写入命令。与其中仅接收一个写入命令的情况相比,能够更多地延长写入脉冲的脉冲宽度。在接收第一写入命令之后的预定时间短于与其中仅接收一个写入命令的情况的写入脉冲的脉冲宽度对应的时间。

在第一实施例中,由信号wayts<ca>确定写入脉冲的脉冲宽度的增加,如图10中所示。信号wayts<ca>基于信号bwens<bk>,并且信号bwens<bk>基于信号cbank<bk>和信号each_bl4。此外,信号cbank<bk>和信号each_bl4基于包括写入命令的信号ca。因此,信号wayts<ca>是基于写入命令产生的信号。

此外,由信号wayte<ca>确定写入脉冲的脉冲宽度的下降。信号wayte<ca>基于信号nwr<n:0>和信号an,并且信号nwr<n:0>基于信号bnwr<bk>。信号bnwr<bk>基于信号bl4_bend,并且信号bl4_bend基于信号bb<4:1>。此外,信号bb<4:1>基于包括写入命令的信号ca。因此,信号wayte<ca>是基于写入命令产生的信号。

因为在产生基于第一写入命令的信号wayte<ca>之前输入第二写入命令,基于第一写入命令的信号wayte<ca>的产生被取消,并且开始基于第二写入命令的信号wayts<ca>和信号wayte<ca>的产生。相应地,基于第一写入命令产生信号wayts<ca>,并且基于第二写入命令产生wayte<ca>。因此,能够延长信号write_pulse<ca>的写入脉冲的脉冲宽度。

将写入脉冲的脉冲宽度的下降描述为基于信号wayte<ca>而被执行。替代地,可以使用用于导致写入脉冲的脉冲宽度下降的电路。具体地说,在输入wayts<ca>之后通过信号wayts<ca>增加写入脉冲的脉冲宽度,并且在预定时间之后该电路降低写入脉冲的脉冲宽度而不产生信号wayte<ca>。

[2]第二实施例

根据第二实施例,通过从存储控制器2向半导体存储装置1供应命令而延长程序脉冲。第二实施例的总体配置和电路类似于第一实施例的总体配置和电路。在下面,将主要给出区分第二实施例与第一实施例的特性的描述。

[2-1]写入操作

图13示出用于根据第二实施例的写入的命令输入。如图13中所示,将活动命令(active)、第一写入命令(write)、命令(vnop:变量无操作)和第二写入命令(writew/dm)(具有数据屏蔽)按顺序从存储控制器2输入到半导体存储装置1。在下面,将采取存储体地址ba[2:0]和列c[5:2](页地址)作为实例。

响应于第一写入命令和第二写入命令,针对同一存储体地址0和同一列0执行写入操作。因为伴随第二写入命令的写入数据是数据屏蔽的,所以不会将该写入数据输入到页缓冲器,并且在页缓冲器中按原样保留伴随第一写入命令的写入数据。

命令vnop确定第一写入命令的输入与第二写入命令的输入之间的时间长度。根据写入脉冲的脉冲宽度被延长的时间长度改变命令vnop的值。

假设写入脉冲的脉冲宽度被延长的时间长度为x[ns(纳秒)],则根据时钟clk和clkb的时钟频率[mhz(兆赫)](或时钟的周期tck[ns])改变命令vnop的值。

图14示出当写入脉冲的脉冲宽度被延长的时间长度x为10或20[ns]时,时钟的周期数是多少。例如,如果当时钟频率为533并且时钟周期为1.875时,写入脉冲的脉冲宽度应被延长10ns,则将命令vnop设定为“5个周期”。如果当时钟频率为400并且时钟周期为2.5时,写入脉冲的脉冲宽度应被延长20ns,则将命令vnop设定为“7个周期”。命令vnop的值由“vnop=ru(x/tck)-1”给出,其中ru表示舍入小数点之后的数字,如上所述。

图15示出应用了图14中所示实例的写入脉冲。当时钟频率为400mhz,时钟周期为2.5ns并且命令vnop为“3个周期”时,使用写入脉冲。如图15的(b)处所示,写入脉冲的脉冲宽度为(30+x)ns。如图15的(a)处所示,写入脉冲的未延长脉冲宽度(即,其中输入一个写入命令的情况的脉冲宽度)为30ns。

如果将写入目标列更改为另一列,则在输入第二写入命令之后输入命令nop(无操作),如图13中所示。然后,按顺序输入写入命令(write)、命令vnop和写入命令(writew/dm)。以这种方式,将写入目标列从“0”更改为“1”,并且能够延长写入脉冲的脉冲宽度。命令nop表示在相关的一个周期内不执行操作。

注意,根据第二实施例输入命令vnop,代替命令vnop,可以输入命令nop。

[2-2]第二实施例的优点

如上所述,通过在输入第一写入命令之后输入命令vnop,能够改变执行第二写入命令的计时。因此,能够控制写入脉冲的脉冲宽度被延长的时间长度。例如,如果通过编程按顺序输入活动命令(active)、第一写入命令(write)、命令(vnop)、以及第二写入命令(writew/dm),则能够容易地延长写入脉冲的脉冲宽度。

例如,各实施例能够应用于类似mram的电阻变化型存储器,例如reram(电阻随机存取存储器)和pcram(相变随机存取存储器),所述电阻变化型存储器包括用于使用元件的电阻变化来存储数据的元件。

各实施例能够应用于包括这样的元件的半导体存储装置:该元件用于通过施加必要的电流或电压,使用该元件的电阻变化来存储数据,或者用于通过将取决于该元件的电阻变化的电阻差转换成电流差或电压差,读取存储到该元件的数据。

尽管描述了特定实施例,但这些实施例仅通过实例的方式提供,并且它们并非旨在限制实施例的范围。实际上,可以以各种其它形式体现在此描述的新颖方法和系统;此外,可以对在此描述的方法和系统的形式进行各种省略、替换和更改而不偏离实施例的精神。所附权利要求及其等效物旨在覆盖落入实施例的精神和范围内的这些形式或修改。

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