BR112015018950B1 - Memória de alteração de fase, método de gravação de dados e sistema de armazenamento de dados - Google Patents

Memória de alteração de fase, método de gravação de dados e sistema de armazenamento de dados Download PDF

Info

Publication number
BR112015018950B1
BR112015018950B1 BR112015018950-4A BR112015018950A BR112015018950B1 BR 112015018950 B1 BR112015018950 B1 BR 112015018950B1 BR 112015018950 A BR112015018950 A BR 112015018950A BR 112015018950 B1 BR112015018950 B1 BR 112015018950B1
Authority
BR
Brazil
Prior art keywords
mask
cells
memory
data
array
Prior art date
Application number
BR112015018950-4A
Other languages
English (en)
Other versions
BR112015018950A2 (pt
Inventor
Daniel J. Chu
Original Assignee
Intel Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corporation filed Critical Intel Corporation
Publication of BR112015018950A2 publication Critical patent/BR112015018950A2/pt
Publication of BR112015018950B1 publication Critical patent/BR112015018950B1/pt

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0097Erasing, e.g. resetting, circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • G11C7/1009Data masking during input/output
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0038Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • G11C2013/0076Write operation performed depending on read result
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2263Write conditionally, e.g. only if new data and old data differ

Landscapes

  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

MÁSCARA DE MEMÓRIA DE ALTERAÇÃO DE FASE. Trata-se de uma tecnologia para gravar dados em um arranjo de memória de alteração de fase. Em um exemplo, um método pode incluir identificar a lógica de máscara para mascarar células no arranjo de memória de alteração de fase e rotear a lógica de máscara para as células. O método pode incluir adicionalmente rotear dados de entrada para as células. Os pulsos definidos e redefinidos para as células podem ser seletivamente impedidos ou inibidos com base na lógica de máscara.

Description

CAMPO DA TÉCNICA
[0001] As modalidades descritas no presente documento referem- se, de modo geral, a memória de alteração de fase.
ANTECEDENTES
[0002] As memórias de alteração de fase usam os materiais de alteração de fase, (isto é, materiais que podem ser eletricamente comutados entre estados amorfos e cristalinos), como uma memória eletrônica. Um tipo de elemento de memória utiliza um material de alteração de fase que pode ser, em uma aplicação, eletricamente comutado entre ordens locais geralmente amorfa e geralmente cristalina ou entre estados detectáveis de ordem local através de todo o espectro entre estados completamente amorfo e completamente cristalino.
[0003] Os materiais típicos adequados para tal aplicação incluem vários elementos calcogeneto. O estado dos materiais de alteração de fase também não volátil. Quando a memória é definida em qualquer um dentre um estado cristalino, semicristalino, amorfo ou semiamorfo que representa um valor de resistência, esse valor é retido até que reprogramado, mesmo se a força for removida. Isso é devido ao fato de que o valor de programa representa uma fase ou estado físico do material (por exemplo, cristalino ou amorfo).
[0004] O estado dos materiais de alteração de fase também é não volátil na medida em que, quando definido em qualquer um dentre um estado cristalino, semicristalino, amorfo ou semiamorfo que representa um valor de resistência, esse valor é retido até ser alterado por meio de um outro evento de programação, uma vez que esse valor representa uma fase ou estado físico do material (por exemplo, cristalino ou amorfo). O estado é não afetado removendo-se a força elétrica.
BREVE DESCRIÇÃO DOS DESENHOS
[0005] Outros recursos e vantagens da revelação serão evidentes a partir da descrição detalhada a seguir, tomados em conjunto com os desenhos anexos que ilustram juntos, por meio de exemplo, os recursos da revelação e, em que:
[0006] A Figura 1 ilustra uma tabela de lógica de máscara de bit a bit de acordo com um exemplo;
[0007] a Figura 2 ilustra um diagrama de blocos de um arranjo de memória de acordo com um exemplo;
[0008] a Figura 3 ilustra um receptor de memória de acordo com um exemplo;
[0009] a Figura 4 ilustra um diagrama do sistema de memória de acordo com um exemplo;
[0010] a Figura 5 ilustra a aplicação de uma máscara para permitir um pulso definido e pulso redefinido em bits não inibidos de acordo com um exemplo;
[0011] a Figura 6 ilustra um diagrama de fluxo de um método de gravação de dados em um arranjo de memória de alteração de fase de acordo com um exemplo; e
[0012] a Figura 7 ilustra um diagrama do sistema de memória de acordo com um exemplo.
[0013] Será feita referência, agora, às modalidades exemplificati- vas ilustradas e a linguagem específica será usada no presente documento para descrever as mesmas. Ficará, contudo, entendido que nenhuma limitação do escopo ou quanto às modalidades específicas é, assim, pretendida.
DESCRIÇÃO DAS MODALIDADES
[0014] Antes de as modalidades da invenção serem reveladas e descritas, deve-se compreender que nenhuma limitação às estruturas específicas, etapas de processo ou materiais revelados no presente documento é pretendida, mas também inclui equivalentes dos mesmos conforme seria reconhecido por aqueles de habilidade comum nas técnicas relevantes. Deve-se entender também que a terminologia empregada no presente documento é usada para fins de descrever os exemplos em particular e não é destinada a ser limitante. As mesmas referências numéricas em diferentes desenhos representam o mesmo elemento. Os números fornecidos nos fluxogramas e processos são fornecidos por questão de clareza nas etapas e operações de ilustração e não indicam necessariamente uma ordem ou sequência específica.
MODALIDADES EXEMPLIFICATIVAS
[0015] Uma visão geral inicial das modalidades de tecnologia é fornecida abaixo e as modalidades da tecnologia específica são, então, descritas em mais detalhes. Esse sumário inicial é destinado a ajudar os leitores na compreensão da tecnologia mais rapidamente, mas não é destinado a identificar os recursos chave ou essenciais da tecnologia nem é destinado a limitar o escopo da matéria reivindicada.
[0016] A memória de alteração de fase tem a capacidade de fazer gravações alteráveis por bit relativamente rápidas, conforme comparadas com a memória NAND. No entanto, as velocidades de gravação de memória de alteração de fase podem ser mais lentas do que as velocidades de gravação de DRAM (Memória de Acesso Aleatório Dinâmico). Um objetivo dos programadores de memória de alteração de fase é fornecer velocidades de leitura e de gravação que podem ser comparáveis com DRAM, mantendo ao mesmo tempo uma área/tamanho de molde comparável com NAND, mantendo ao mesmo tempo, também, a energia razoavelmente baixa. Por exemplo, um custo da velocidade de gravação relativamente rápida da memória de alte-ração de fase em comparação com a memória NAND a é mais alto em termos de energia por bit do que é usada nas tecnologias NAND.
[0017] Determinadas modalidades da presente tecnologia forne cem a arquitetura de máscara de gravação programável para a memória de alteração de fase que permite a configuração seletiva do comportamento de gravação desejado. Por exemplo, o comportamento de máscara de dados de gravação para cada um dos bits em um arranjo pode ser configurado a partir de um local central. As configurações diferentes podem ser usadas para diferentes algoritmos de gravação e o comportamento pode ser reconfigurado pós-silício com o uso de fusíveis.
[0018] Com referência à Figura 1, uma tabela 100, que inclui a ló gica de máscara de bit a bit é ilustrada de acordo com um exemplo da presente tecnologia. De acordo com a tabela 100 na Figura 1, qualquer combinação de dados de entrada desejados e dados detectados previamente pode permitir ou inibir um pulso definido ou redefinido subsequente. Por exemplo, um controlador de sequência pode enviar a lógica de máscara às células em um arranjo. As diferentes definições na lógica (como as oito definições ilustradas na tabela da Figura 1) podem ser colocadas em fusíveis, registros temporários ou outro armazenamento para células individuais. Nota-se que a lógica na Figura 1 é exemplificativa e várias configurações diferentes podem ser implantadas para permitir diferentes operações nas células quando os dados de entrada são recebidos dependendo da máscara atual.
[0019] A tabela na Figura 1 ilustra diferentes combinações poten ciais ade dados de entrada e existentes (mostrados como "Data In" e "Old Data", respectivamente). Um "1" nos dados pode indicar que um bit é definido ou deve ser definido enquanto um "0" nos dados pode indicar que um bit é redefinido ou deve ser redefinido. Várias operações podem ser realizadas com base em um método de programação desejado ou com base em como os dados de entrada se comparam com os dados existentes. Por exemplo, quando os dados de entrada e dados existentes são os mesmos para um dado bit, como tanto os dados de entrada quanto os dados existentes que indicam um "1" ou um "0", nenhuma programação pode ser realizada no bit. Quando os dados existentes são um "1" e os dados de entrada são um "0", o bit pode ser redefinido. Quando os dados existentes são um "0" e os dados de entrada são um "1", o bit pode ser definido.
[0020] A máscara pode incluir inúmeras configurações para definir e/ou redefinir um bit. Um "1" na máscara pode indicar inibir uma ação, tais como ações de definição ou de redefinição. Um "0" na máscara pode indicar permitir uma ação. Assim, as definições setmask podem incluir, por exemplo: s_pass_00=1 (data in = 0, dados existentes = 0, inibir definição); s_pass_01=1 (data in = 0, dados existentes = 1, inibir definição); s_pass_10=0 (data in = 1, dados existentes = 0, permitir de-finição); e s_pass_11=1 (data in = 1, dados existentes = 1, inibir definição);
[0021] Semelhantemente, as definições setmask podem incluir, por exemplo: s_pass_00=1 (data in = 0, dados existentes = 0, inibir redefinição); s_pass_01=0 (data in = 0, dados existentes = 1, permitir re-definição); s_pass_10=1 (data in = 1, dados existentes = 0, inibir redefinição); e s_pass_11=1 (data in = 1, dados existentes = 1, inibir redefinição).
[0022] A tabela 100 da Figura 1 pode ser uma tabela-verdade pro- gramável para a lógica de máscara de bit a bit que pode ser reprogramada para as configurações diferentes da configuração ilustrada a fim de realizar diferentes opções com base em um método de programação desejado, cujos alguns exemplos são descritos mais tarde. Também, embora a tabela da Figura 1 ilustra o uso de oito definições de máscara (inclusive quatro definições setmask e quatro redefinições setmask), uma quantidade diferente de definições também pode ser usada para implantar várias modalidades da presente tecnologia.
[0023] Com referência à Figura 2, pode ser visto que as definições definidas pela máscara podem ser roteadas para os bits ou células em um arranjo. Por exemplo, cada uma das definições (r_pass_00 a s_pass_11) pode ser roteada para cada um dos bits 210 a 213 (isto é, bit 0 a bit 3). Embora a Figura 2 ilustre quatro bits em um arranjo, qualquer quantidade de bits pode ser incluída em um arranjo individual e uma implantação real pode incluir muito mais bits do que o exemplo ilustrado simplificado.
[0024] Cada um dos bits no arranjo pode incluir um amplificador de sentido ou trava de sentido (isto é, "data_sense") que retém os dados lidos a partir do arranjo (isto é, dados existentes ou "old data" como na Figura 1). Um sinal de data_in separado (data_in<0> a data_in<3>) pode ser roteado para cada bit. Cada bit pode ter qualquer uma dentre as 4 combinações de data_in e data_sense (isto é, "00", "01", "10" e "11").
[0025] Com referência à Figura 3, dentro de cada bit pode estar um receptor 300 para receber a configuração de máscara. O receptor 300 pode avaliar a combinação de data_in e data_sense junto com os oito sinais de máscara globais r_pass_00/01/10/11 e s_pass_00/01/10/11. O receptor 300 pode determinar se inibe ou impede (isto é, "mask out") um pulso definido ou um pulso redefinido com base na combinação de data_in e data_sense junto com os oito sinais de máscara globais. As máscaras definidas e redefinidas podem ser travas no receptor com um sinal clk_maskload global. Quando uma operação de gravação começa, a operação de gravação pode aplicar pulsos definidos e redefinidos aos bits que têm máscaras claras ou não inibidas para a definição ou redefinição. Em outras palavras, os bits que permitem uma operação de definição terão uma operação de gravação definida aplicada aos mesmos e os bits que permitem uma operação de redefinição terão uma operação de gravação redefimida aplicada aos mesmos. No exemplo ilustrado, o receptor 300 inclui uma ou mais portas AND-OR-INVERT seguidas por um inversor para as aplicações de máscara definida ou redefinida. No entanto, o receptor 300 também pode ser implantado com diferentes portas lógicas. Na prática, o receptor 300 pode receber uma configuração de máscara de um controlador de sequência ou outro dispositivo configurado para definir ou dedicar a configuração de máscara. O receptor 300 pode receber os dados existentes (isto é, data_sense) e os dados de entrada (isto é, data_in) em paralelo com o recebimento da configuração de máscara. O receptor 300 pode, então, avaliar os dados existentes e de entrada à luz da configuração de máscara recebida para determinar se permite ou inibie uma ação de definição e se permite ou inibe uma ação de redefinição.
[0026] As tecnologias anteriores implantaram mascaramento de gravação, mas o mascaramento de gravação foi conectado por fio aos circuitos de gravação. Por exemplo, alguns projetos de memória de porta NOR podem usar um único bit de máscara que permite a programação ou não. No entanto, a tecnologia de memória de alteração de fase não é tão madura quanto as tecnologias de NAND e DRAM e, então, pode ter que ser mais flexível com o fato de como os métodos de leitura e de gravação são implantados em comparação com os algoritmos de leitura e de gravação para NAND e DRAM. As modalida- des da presente tecnologia fornecem exemplos de flexibilidade, em que o mascaramento de gravação não é conectado por fio aos circuitos de gravação, mas é, em vez disso, programável e reconfigurável, mesmo em tempo de execução. Nota-se que alguns dispositivos de memória que utilizam determinadas modalidades da presente tecnologia, ao mesmo tempo que têm máscaras de gravação programáveis, podem ser programados para operar de uma maneira definida sem possibilitar variações de tempo de execução. Por exemplo, um dispositivo de memória pode ser fabricado e, então, testado para determinar qual dentre uma pluralidade de métodos de programação funciona melhor para o dispositivo de memória e, então, tal método de programação pode ser implantado por meio da máscara programável. Alguns métodos de programação exemplificativos serão descritos agora.
[0027] Para diminuir a energia de gravação geral, os dados anteri ores e existentes em um arranjo podem ser lidos e comparados aos dados de entrada. Se um estado de bit for alterado dos dados existentes para os dados de entrada, então, tais bits podem ser programados, mas a programação pode ser evitada quando os dados existentes e os dados de entrada para uma célula em particular se equipararem. Por exemplo, se uma célula no arranjo for definida ("1") e os dados de bit de entrada indicarem um "1", uma operação pode não ser realizada nesse bit. Os dados podem ser deixados inalterados de modo que a energia não seja gasta programando esse bit. Em média, considerando os dados anteriores aleatórios no arranjo e os dados de entrada aleatórios, 25% dos bits serão definidos e 25% redefinidos. Assim, tal estratégia de programação pode reduzir os custos de energia por tanto quanto 50% em média. Para ver essa redução de energia, pode ter circuitos que armazenam as regras definidas e redefinidas para cada bit programado em paralelo. Esse exemplo pode ser implantado através da máscara programável com o uso de uma tabela-verdade seme- lhante à tabela (100) da Figura 1.
[0028] Nota-se, no entanto, que pode haver situações em que o uso de método de programação com economia de energia não é desejado. Por exemplo, um usuário pode desejar ignorar os dados de arranjo existente e gravar os dados no arranjo com base no padrão de entrada independente do que pode ser atualmente programado. Tal estratégia pode ser usada, por exemplo, para redefinir todas as células primeiro e, então, definir algumas das células com base em um padrão de dados de entrada. Como um outro exemplo, tal estratégia pode ser usada, alternativamente, para definir primeiro todas as células e, então, redefinir algumas das células com base em um padrão de dados de entrada. Em um outro exemplo, nenhuma célula pode ser definida e as células que são um "0" no padrão de dados de entrada podem ser redefinidas.
[0029] Conforme foi previamente descrito, a seleção de métodos de programação para programar as células pode ser realizada pós- fabricação, conforme desejado. Em algumas ocasiões, as placas de memória fabricadas podem exibir dificuldades inesperadas com as células de programação, conforme desejado. No entanto, com o uso de várias modalidades da presente tecnologia, um método de programação pode ser alterado pós-fabricação para um método de programação diferente que pode naõ exibir as mesmas dificuldades inesperadas.
[0030] Em um exemplo, os perfis de programação podem ser sal vos para diferentes métodos de programação (como uma gravação de baixa energia padrão, uma gravação à força e assim em diante, como métodos de programação exemplificativos). Esses perfis podem ser reconfigurados pós-fabricação para alterar o comportamento de gravação do dispositivo de memória. Os perfis podem ser implantados ou roteados para as células em um arranjo para alterar o comportamento de gravação para diferentes operações de gravação (por exemplo, uma gravação padrão contra uma gravação à força) ou para direcionar uma limitação de tecnologia pós-fabricação (por exemplo, mais baixa energia para os bits definidos, mas gravação à força para os bits redefinidos).
[0031] Em alguns exemplos, um sistema pode incluir conjunto de circuitos, software ou firmware para alterar periodicamente uma máscara. Em outras palavras, um controlador de sequência ou outro dispositivo pode gerar ou rotear definições de máscara que se alteram em intervalos predeterminados ou quando as condições predeterminadas forem satisfeitas, como para as operações de gravação quando a integridade dos dados for considerada mais importante do que a gravação com baixo consumo de energia ou quando um nível limite de erros de leitura for excedido e uma gravação à força for desejada. Em um exemplo, as definições de máscara podem ser roteadas para as células em paralelo com cada recebimento de dados de entrada nas células. Em outro exemplo, as definições de máscara podem ser armazenadas no receptor até que novas definições de máscara sejam recebidas, como quando as definições devem ser alteradas por uma operação de gravação específica.
[0032] As modalidades da presente tecnologia permitem o uso de mais do que um método de mascaramento de gravação. As modalidades da presente tecnologia também permitem que as máscaras de gravação sejam reconfiguradas para diferentes operações em placa ou implementem os procedimentos de gravação de modo diferente. Além disso, determinadas modalidades da presente tecnologia podem fornecer uma ou mais configurações globais da lógica de mascaramento que pode ser alterada dinamicamente ou pode ser salva sem alteração. As configurações de máscara podem facilitar a pulsação definida ou redefinida com base em qualquer combinação de dados de entrada de bit individual e dados existentes. O receptor de configuração de máscara em cada circuito de controle do bit pode alterar o comportamento do mascaramento de gravação com base na configuração de máscara recebida.
[0033] Com referência à Figura 4, em uma modalidade, a presente tecnologia pode ser adicionalmente utilizada para aprimorar o tempo de gravação de memória de alteração de fase, a área e a energia com o uso de um único controlador de encadeamento para realizar os pulsos redefinidos e definidos simultâneos.
[0034] As tecnologias de memória convencionais realizam opera ções de gravação com pulsos redefinidos e definidos executados em série. No entanto, a realização das operações de redefinição e definição ao mesmo tempo pode aprimorar o tempo para a memória de alteração de fase. As operações de definição e de redefinição simultâneas podem ser realizadas com um controlador de único encadeamento devido ao fato de que o pulso definido é mais longo do que o pulso redefinido. Por exemplo, o pulso definido pode ser iniciado em alguns bits, o pulso redefinido concorrente ou subsequentemente iniciado e, então, finalizado em alguns bits e, mais tarde, o pulso definido pode ser finalizado nos bits que tinham o pulso definido em execução. De acordo com modalidades da presente tecnologia, as máscaras por bit permitem que cada bit "saiba" se responde aos sinais do controlador para permitir um pulso definido, se permite um pulso redefinido ou se ignora os pulsos definidos e redefinidos (isto é, se inibe o bit).
[0035] A Figura 4 ilustra um sistema que inclui um controlador de sequência 420 para rotear uma configuração de máscara para as to células individuais 415 a 417 (bit 0 a bit 2) ou, de preferência, para um receptor 410 a 412 para as células 415 a 417. Os dados podem ser lidos dentro ou fora das células 415 a 417 por meio dos receptores 410 a 412. Um único controlador de sequência de encadeamento único 420 pode ser usado para facilitar gravações mais rápidas ao fazer um pulso redefinido ao mesmo tempo que um pulso definido sem comprometer a área de molde ou as técnicas de redução de energia. A área pode ser mantida baixa com o uso de pequenos circuitos que repetem todo bit (por exemplo, dados de configuração de máscara) e circuitos grandes (por exemplo, controlador de sequência de tensão flexível) mantidos para um único encadeamento com uma área amortizada em muitos bits. A energia pode ser mantida baixa mantendo-se a capacidade de alteração de bit e a redução de pulsos definidos e redefinidos de bits sem comprometer a área ou a velocidade de gravação.
[0036] A Figura 5 ilustra uma implantação de arquitetura exemplifi- cativa de um pulso redefinido durante um pulso definido com o uso de macros executados em série. Um único controlador de sequência pode gerar sinais de sequência de corrente/tensão. Os sinais podem ser enviados para muitos receptores. Os receptores podem reter um re- set_mask e set_mask que determina se o bit para um receptor específico aceitará os sinais do controlador e enviará os sinais para o bit ou se o receptor ignorará os sinais e impedirá que os sinais alcancem o bit.
[0037] Na Figura 5, as operações de pré-leitura 510 e de carga de máscara 515 podem ser executadas em bits em paralelo. A operação de pré-leitura 510 pode carregar os dados existentes (isto é, "old data") assim como os dados de entrada (isto é, "data in"). Adicionalmente, a operação de pré-leitura 510 pode receber dados de configuração de máscara em paralelo com os old data e data in. A operação de carga de máscara 515 pode carregar uma máscara com o uso de dados antigos e de entrada para determinar se produz o reset_mask e set_mask "0" (isto é, permite uma operação de redefinição ou definição para aquele) ou "1" (isto é, não permite uma operação de redefinição ou de definição para aquele bit). A lógica para isso pode seguir uma tabela-verdade, como a tabela ilustrada na Figura 1.
[0038] Um macro pode ser executado no controlador que envia sinais para começar um pulso definido (isto é, "iniciar definição" 520). Esses sinais podem ser recebidos em bits que têm uma máscara com set_mask = 0. O bit 1, nesse exemplo, tem uma máscara de definição igual a 0. Outros bits com set_mask = 1 irão ignorar o sinal de iniciar definição. Um macro de redefinição pode ser executado no controlador que envia sinais para produzir o pulso redefinido 525. Esses sinais podem ser recebidos para os bits com reset_mask = 0. O bit 2, nesse exemplo, tem uma máscara de redefinição igual a 0. Outros bits com reset_mask = 1 irão ignorar o sinal de iniciar redefinição. No exemplo ilustrado, os bits 0 e 3 têm set_mask = 1 e reset_mask = 1 e irão ignorar, então, os sinais de definição e de redefinição.
[0039] Uma operação única, como definição ou redefinição, pode ser realizada em uma dada célula em um dado tempo. A lógica de bit pode ser projetada de modo que se um pulso redefinido for recebido enquanto o pulso definido está em execução, o pulso redefinido será inibido. Assim, os bits que devem ser definidos podem ter, opcionalmente, tanto set_mask = 0 quanto reset_mask = 0 sem efeito prejudicial uma vez que a redefinição não pode ser realizada nos bits que são definidos enquanto os bits estão sendo definidos.
[0040] Devido ao fato de que a operação de definição pode ser mais longa em duração de tempo do que a operação de redefinição, um atraso 530 pode ser fornecido para os bits que executam o pulso definido para continuarem. Após o atraso, o pulso definido pode ser finalizado 535.
[0041] Em alguns exemplos, um pulso definido pode ter uma dura ção suficiente que multiplica os pulsos redefinidos, pode ser enviado para um bit individual durante a duração de um único pulso definido. Por exemplo, se um limite de tensão desejado não for alcançado no bit a ser redefinido após um pulso redefinido inicial, um pulso redefinido subsequente pode ser enviado no lugar ou durante o atraso enquanto aguarda pelo pulso definido ser concluído a fim de alcançar o limite de tensão desejado.
[0042] Nota-se que os projetos de memória NOR e NAND não permitem a programação durante o apagamento (por exemplo, redefinição durante definição) devido às limitações de tecnologia. Por exemplo, em NOR, as máscaras de gravação são 1 bit por célula e só podem armazenar um valor de "programa" ou "sem programa". Os projetos de NAND armazenam múltiplos dados por bit para a programação de célula de múltiplos níveis, mas as operações de colocação de V- ésimo no arranjo são realizadas em série. As tecnologias de memória de alteração de fase convencionais podem permitir uma gravação alterável por bit, mas os pulsos definidos e redefinidos são controlados através de circuitos globais e irão realizar as operações em série.
[0043] Ao invés de duplicar todos os circuitos e executar cada cir cuito em um modo diferente para implantar operações de redefinição e de definição simultâneas, em pelo menos uma modalidade, a presente tecnologia pode usar um único circuito de controlador e receptores repetidos menores. Os receptores podem armazenar dois bits de informações de máscara para permitir ou bloquear ações provenientes do controlador. Os dois bits de informações de máscara podem ser determinados com base nos sinais de configuração de máscara recebidos, dados existentes e dados de entrada.
[0044] As operações de definição e de redefinição simultâneas ini ciadas em série podem ser alcançadas através das máscaras programáveis implantadas em várias modalidades da presente tecnologia ou com o uso de máscaras fixas ou não programáveis.
[0045] Em uma modalidade, o material de alteração de fase usado no dispositivo de armazenamento pode ser adequado para o armaze- namento de dados em memória não volátil. O material de alteração de fase pode ser um material que tem propriedades elétricas (por exemplo, resistência) que podem ser alteradas através da aplicação de energia como, por exemplo, calor, luz, potencial de tensão ou corrente elétrica.
[0046] Os exemplos de materiais de alteração de fase podem in cluir um material de calcogeneto. Um material de calcogeneto pode ser um material que inclui pelo menos um elemento da coluna VI da tabela periódica ou pode ser um material que inclui um ou mais dos elementos de calcogênio, por exemplo, qualquer um dentre os elementos de telúrio, enxofre ou selênio. Os materiais de calcogeneto podem ser materiais de memória não volátil que podem ser usados para armazenar informações que fiquem retidas mesmo após a força elétrica ser removida.
[0047] Em uma modalidade, o material de alteração de fase pode ser uma composição de elemento de calcogeneto da classe do material de telúrio-germânio-antimônio (TexGeySbz) ou uma liga de GeSbTe, como o tipo 2,2,5 embora outros materiais de calcogeneto adequados possam ser usados e devam ser considerados como dentro do escopo da revelação.
[0048] Em uma modalidade, se o material da memória for um ma terial de alteração de fase não volátil, o material da memória pode ser programado para um de pelo menos dois estados de memória aplicando-se um sinal elétrico à material da memória. Um sinal elétrico pode alterar a fase do material da memória entre um estado substancialmente cristalino e um estado substancialmente amorfo, em que a resistência elétrica do material da memória no estado substancialmente amorfo é maior do que a resistência do material da memória no estado substancialmente cristalino.
[0049] A programação do material da memória para alterar o esta- do ou fase do material pode ser alcançada selecionando-se a célula através da aplicação de uma tensão relativamente baixa, como zero volt para a linha selecionada e uma corrente na coluna selecionada, a partir de uma fonte de corrente para redefinir uma célula para uma resistência maior ou de outra fonte de corrente com um corrente mais baixa ou borda posterior mais lenta para redefinir uma resistência inferior gerando, desse modo, um potencial de tensão através do material da memória. Uma corrente elétrica pode fluir através de uma porção do material da memória em resposta aos potenciais de tensão aplicados e pode resultar no aquecimento do material da memória.
[0050] Esse aquecimento controlado e resfriamento controlado subsequente podem alterar o estado ou fase da memória do material de memória. A alteração da fase ou do estado do material da memória pode alterar uma característica elétrica do material da memória. Por exemplo, a resistência do material pode ser alterada alterando-se a fase do material da memória. Ou toda ou uma parte da memória de alteração de fase material pode ser alterada durante o pulso de gravação. Em um exemplo, uma porção de material da memória que sofre alteração pode ser uma região que é adjacente a um eletrodo que faz contato com o dispositivo de armazenamento da célula para armazenar o bit. O material da memória pode ser um material resistivo programável ou simplesmente um material de resistência programável.
[0051] Em uma modalidade, um pulso de tensão com uma diferen ça de potencial de cerca de 1,5 volt pode ser aplicado através de uma porção do material da memória aplicando-se cerca de 0 volt a uma linha e uma corrente de cerca de 2 mA a partir de uma fonte de corrente de gravação em uma linha selecionada diferente. Por exemplo, a tensão em uma linha selecionada em relação a uma outra linha selecionada pode ser positiva ou a célula ou as tensões podem ser invertidas. Uma corrente que flui através do material da memória em respos- ta aos potenciais de tensão aplicados pode resultar no aquecimento do material da memória. Esse aquecimento e resfriamento controlado subsequente, determinado pela taxa de borda posterior de pulso de corrente de gravação, podem alterar o estado ou fase de memória do material após o material da memória ser resfriado, a partir da resistência mais alta para a mais baixa, da resistência mais baixa para a mais alta ou regravar o estado existente para reforçar o estado existente.
[0052] Em um estado "redefinido", o material da memória pode estar em um estado amorfo ou semiamorfo e em um estado "definido", o material da memória pode estar em um estado cristalino ou semicris- talino. A resistência do material da memória no estado amorfo ou se- miamorfo pode ser maior do que a resistência do material no estado cristalino ou semicristalino. A associação de redefinição e definição com os estados amorfos e cristalinos, respectivamente, é uma convenção. Outras convenções podem ser adotadas.
[0053] As informações armazenadas no material da memória po dem ser lidas medindo-se a resistência do material da memória. Como um exemplo, uma corrente de leitura pode ser fornecida ao material da memória com o uso da fileira e da coluna selecionadas e uma tensão de leitura resultante através do material da memória pode ser comparada com uma tensão de referência. A tensão de leitura resultante na coluna pode ser proporcional à resistência exibida pelo dispositivo de armazenamento em memória selecionado quando uma corrente de leitura for forçada na coluna.
EXEMPLOS
[0054] Os exemplos a seguir pertencem às modalidades adicio nais.
[0055] Em referência à Figura 6, o Exemplo 1 é um diagrama de fluxo de um método de gravação de dados em um arranjo de memória de alteração de fase de acordo com um exemplo da presente tecnolo- gia. O método pode incluir identificar 610 a lógica de máscara para mascarar as células no arranjo de memória de alteração de fase e rotear 620 a lógica de máscara para as células. O método pode incluir adicionalmente rotear 630 dados de entrada para as células. Os dados existentes nas células podem ser lidos 640. Os pulsos definidos e redefinidos para as células podem ser seletivamente impedidos 650 ou inibidos com base na lógica de máscara e, adicionalmente, com base nos dados de entrada e nos dados existentes.
[0056] Em um exemplo do método, a lógica de máscara pode ser definida por um perfil para uma operação identificada selecionada para a gravação alterável por bit no arranjo de memória de alteração de fase. Qualquer quantidade de perfis com lógica de máscara diferente pode estar disponível. Em outras palavras, o perfil pode ser um dentre uma pluralidade de perfis, cada um associado à lógica de máscara diferente. Pelo menos um dentre a pluralidade de perfis pode ser um perfil de economia de energia e outro pelo menos um dentre a pluralidade de perfis pode ser um perfil de gravação a força. Pelo menos um dentre a pluralidade de perfis pode ser um perfil de minimização de pulso definido ou redefinido e um outro pelo menos um dentre a pluralidade de perfis pode ser um pulso definido ou redefinido aplicado a todos os perfis de células. Outros perfis também são contemplados e são considerados como estando dentro do escopo desta revelação.
[0057] Em um exemplo, a lógica de máscara pode ser programá vel. Por exemplo, o método pode incluir alterar uma lógica de máscara existente para uma lógica de máscara alterada. A lógica de máscara existente pode ser alterada para uma lógica de máscara alterada. O método também pode incluir reverter a lógica de máscara alterada para a lógica de máscara existente após a lógica de máscara alterada ser roteada para as células. Em alguns exemplos, a lógica de máscara existente pode ser alterada para a lógica de máscara alterada ou a ló- gica de máscara alterada invertida para a lógica de máscara existente em intervalos predeterminados. A lógica para alterar a lógica de máscara ou para alterar entre a lógica de máscara pode ser baseada em tempo, ciclos de leitura, ciclos de gravação, medição de célula ou qualquer um dentre uma variedade de outros fatores.
[0058] Em um exemplo, uma combinação de dados existentes e dos dados de entrada pode ser comparada à lógica de máscara para obter um resultado. Uma determinação pode ser feita quanto a se impede um pulso definido ou redefinido com base no resultado.
[0059] Em um exemplo, o método pode incluir enviar um pulso de finido para as células definidas não inibidas pela lógica de máscara e subsequentemente enviar um pulso redefinido para redefinir as células não inibidas pela lógica de máscara antes de o pulso definido ser concluído. O método também pode incluir atrasar ainda mais as operações até que o pulso definido esteja concluído e/ou realizar as operações de redefinição adicionais ou, em vez disso, enviar os pulsos redefinidos adicionais, antes de o pulso definido ser concluído.
[0060] Os recursos dos sistemas ou aparelhos descritos anterior mente ou mais tarde também podem ser implantados em relação ao método ou quaisquer processos descritos no presente documento e vice-versa. Também, as especificações nos exemplos podem ser usadas em qualquer lugar em uma ou mais modalidades.
[0061] No Exemplo 2 e com referência à Figura 7, um sistema 700 de acordo com uma modalidade da invenção é fornecido. O sistema 700 pode ser usado em dispositivos sem fio ou móveis como, por exemplo, um assistente digital pessoal (PDA), um computador do tipo laptop ou portátil com capacidade sem fio, um computador do tipo tablet apenas para navegação na internet, um telefone sem fio, um pager, um do dispositivo de mensagens instantâneas, um reprodutor de música digital, uma câmera digital ou outros dispositivos que possam ser adaptados para transmitir e/ou receber informações de modo sem fio. O sistema 700 pode ser usado em qualquer um dentre os sistemas exemplificativos seguintes: um sistema de rede de área local sem fio (WLAN), um sistema de rede de área pessoal sem fio (WPAN) ou uma rede celular. O sistema 700 também pode ser usado em outros sistemas não especificamente citados.
[0062] O sistema 700 pode incluir um controlador 710, um disposi tivo de entrada/saída (I/O) 720 (por exemplo, um teclado numérico, visor), uma memória 730 e uma interface sem fio 740 acoplados entre si por meio de um barramento 750. Uma bateria 770 ou outra fonte de alimentação pode ser usada em algumas modalidades. Deve-se notar que tais componentes são meramente exemplificativos e outros componentes não especificamente citados poderiam ser usados no lugar de um ou mais componentes citados acima ou incluídos ao longo dos mesmos.
[0063] O controlador 710 pode compreender, por exemplo, um ou mais microprocessadores, processadores de sinal digital, microcontro- ladores ou semelhantes. A memória 730 pode ser usada para armazer mensagens transmitidas para ou através do sistema 700. A memória 730 também pode ser opcionalmente usada para armazenar instruções que são executadas pelo controlador 710 durante a operação do sistema 700 e pode ser usada para armazenar dados de usuário. A memória 730 pode ser fornecida por um ou mais tipos diferentes de memória. Por exemplo, a memória 730 pode compreender qualquer tipo de memória de acesso aleatório, uma memória volátil, uma memória não volátil como uma memória flash e/ou uma memória como a memória discutida no presente documento.
[0064] O dispositivo de I/O 720 pode ser usado por um usuário pa ra gerar uma mensagem. O sistema 700 pode usar a interface sem fio 740 para transmitir e receber mensagens para e a partir de uma rede de comunicação sem fio com um sinal de radiofrequência (RF). Os exemplos de interface sem fio 740 podem incluir uma antena, um transreceptor sem fio ou outros dispositivos transmissores/receptores de sinal.
[0065] Em um exemplo, o sistema 700 pode incluir o processador 760, a fonte de alimentação ou a bateria 770 e uma memória de alteração de fase 730 acoplada ao processador e que inclui um arranjo de células. O controlador 710 pode ser um controlador de sequência configurado para rotear uma máscara para o arranjo de células. Um receptor de máscara (não mostrado na Figura 7) para células individuais no arranjo de células pode receber a máscara, identificar dados existentes, identificar dados de entrada e determinar se deve exibir um pulso definido ou um pulso redefinido para as células.
[0066] A máscara pode incluir oito sinais que definem operações para a execução para as células individuais com base nos dados existentes nos dados de entrada. A máscara pode ser uma máscara programável. O receptor de máscara pode possibilitar as operações de definição e de redefinição simultâneas em células diferentes no arranjo através do controlador de sequência. O controlador de sequência pode realizar ou iniciar as operações de definição e de redefinição sequencial ou simultaneamente.
[0067] O controlador 710 ou o controlador de sequência compre ende adicionalmente um gerador de máscara configurado para rotear a máscara para o receptor de máscara. O controlador 710 pode ser adicionalmente configurado para gerar a máscara para o roteamento para o receptor de máscara com base nas instruções recebidas do processador 760.
[0068] O sistema 700 pode incluir uma trava para carregar os da dos existentes em paralelo com o recebimento da máscara no receptor de máscara. A trava pode ser uma parte do receptor de máscara.
[0069] Em um exemplo, o receptor de máscara pode possibilitar operações de definição e de redefinição simultâneas nas células diferentes no arranjo através da inibição sequencial através do controlador de sequência quando a máscara inibe o pulso redefinido na pelo menos uma das células e inibe o pulso definido em uma pelo menos uma diferente das células.
[0070] No Exemplo 3, a modalidade da presente tecnologia repre sentada fornece uma memória de alteração de fase. A memória de alteração de fase pode incluir um arranjo de células de memória de alteração de fase e um receptor de máscara para células individuais no arranjo para receber uma máscara, identificar dados existentes, identificar dados de entrada e determinar se deve exibir um pulso definido ou um pulso redefinido. A máscara pode incluir até oito ou mais sinais que definem operações para a realização para as células individuais com base nos dados existentes e nos dados de entrada e pode possibilitar as operações de definição e de redefinição simultâneas nas células diferentes no arranjo através da inibição sequencial pelo controlador de sequência. A máscara pode incluir mais do que oito sinais, por exemplo, quando mais do que dois estados estão presentes (isto é, estados de definição e de redefinição). A máscara pode incluir menos do que oito sinais, por exemplo, quando um barramento endereçado é implantado, de tal modo que quatro sinais sejam usados para carregar a máscara redefinida e, então, subsequentemente carregar a máscara definida ou vice-versa.
[0071] As células individuais podem ser configuradas para receber a máscara e os dados de entrada em paralelo. Uma trava pode ser incluída para carregar os dados existentes em paralelo com o recebimento da máscara no receptor de máscara.
[0072] Várias técnicas ou determinados aspectos ou porções dos mesmos podem assumir a forma de código de programa (isto é, ins- truções) incorporados em mídia tangível, tais como disquetes, CD- ROMs, memória apenas de leitura de disco compacto, meio de armazenamento legível por computador não transitório ou qualquer outro meio de armazenamento legível por máquina em que, quando o código de programa é carregado em uma máquina e executado pela mesma, tal como um computador, a máquina se torna um aparelho para praticar as várias técnicas. O conjunto de circuitos pode incluir hardware, firmware, código de programa, código executável, instruções de computador e/ou software. Um meio de armazenamento legível por computador não transitório pode ser um meio de armazenamento legível por computador que não inclui sinal. No caso de execução de código de programa em computadores programáveis, o dispositivo de computação pode incluir um processador, um meio de armazenamento legível pelo processador (inclusive memória volátil e não volátil e/ou elementos de armazenamento), pelo menos um dispositivo de entrada e pelo menos um dispositivo de saída. A memória volátil e não volátil e/ou elementos de armazenamento pode ser uma RAM, EPROM, unidade flash, unidade óptico, disco rígido magnético, unidade de estado sólido ou outro meio para dados eletrônicos de armazenamento. O nó e dispositivo sem fio também podem incluir um módulo de transceptor, um módulo de contador, um módulo de processamento e/ou um módulo de relógio ou módulo de temporizador. Um ou mais programas que podem implantar ou utilizar as várias técnicas descritas no presente documento podem usar uma interface de programação de aplicativo (API), controles reutilizáveis e semelhantes. Tais programas podem ser implantados em uma linguagem de procedimentos de alto nível ou de programação orientada por objeto para se comunicar com um sis-tema de computador. Entretanto, o(s) programa(s) pode(m) ser implan- tado(s) em linguagem de máquina ou montagem, se desejado. De qualquer maneira, a linguagem pode ser uma linguagem compilada ou interpretada e combinada com implantações de hardware.
[0073] Deve-se compreender que diversas das unidades funcio nais descritas neste relatório descritivo foram identificadas como módulos, a fim de enfatizar mais particularmente sua independência de implantação. Por exemplo, um módulo pode ser implantado como um circuito de hardware que compreende circuitos VLSI personalizados ou arranjos de porta, semicondutores de prateleira tais como placas de lógica, transistores ou outros componentes discretos. Um módulo também pode ser implantado em dispositivos de hardware programável, tais como arranjos de porta programável em campo, lógica de arranjo programável, dispositivos de lógica programável ou semelhantes.
[0074] Os módulos também podem ser implantados em software para a execução através de vários tipos de processadores. Um módulo identificado de código executável pode, por exemplo, compreender um ou mais blocos físicos ou lógicos de instruções de computador, que podem, por exemplo, ser organizados como um objeto, procedimento ou função. Contudo, os executáveis de um módulo identificado não precisam ser localizados juntos fisicamente, mas podem compreender instruções distintas armazenadas em locais diferentes que, quando unidas logicamente, compreendem o módulo e alcançam o propósito determinado para o módulo.
[0075] De fato, um módulo de código executável pode ser uma única instrução ou muitas instruções e pode até ser distribuído por diversos segmentos de código diferentes, dentre programas diferentes e através de diversos dispositivos de memória. De modo semelhante, os dados operacionais podem ser identificados e ilustrados no presente documento em módulos e podem ser incorporados em qualquer forma adequada e organizados em qualquer tipo adequado de estrutura de dados. Os dados operacionais podem ser coletados como um único conjunto de dados ou podem ser distribuídos por locais diferentes, in clusive por dispositivos de armazenamento diferentes e podem existir, pelo menos parcialmente, apenas como sinais eletrônicos em um sistema ou rede. Os módulos podem ser passivos ou ativos, incluindo agentes operáveis para realizar funções desejadas.
[0076] Ao longo deste relatório descritivo é feita referência a "um exemplo" que significa que um recurso, estrutura ou característica específico descrito em conexão com o exemplo é incluído em pelo menos uma modalidade da invenção. Então, as ocorrências das frases "em um exemplo" em vários lugares ao longo deste relatório descritivo não se referem, necessariamente, todas à mesma modalidade.
[0077] Conforme usado no presente documento, uma pluralidade de itens, elementos estruturais, elementos de composição e/ou materiais podem ser apresentados em uma lista comum a título de conveniência. No entanto, tais listas devem ser interpretadas como se cada membro da lista fosse individualmente identificado como um membro único e separado. Dessa forma, nenhum membro individual de tal lista deve ser considerado como um equivalente de fato de qualquer outro membro da mesma lista somente com base em sua apresentação em um grupo comum sem indicações do contrário. Além disso, várias modalidades e exemplos da invenção podem ser referidos no presente documento juntamente com alternativas para os vários componentes dos mesmos. Compreende-se que tais modalidades, exemplos e alternativas não devam ser interpretados como equivalente de fato um do outro, mas devem ser interpretados como separados e autônomos.
[0078] Ademais, os recursos, estruturas ou características descri tas podem ser combinados de qualquer maneira adequada em uma ou mais modalidades. Nesta descrição, inúmeros detalhes específicos são fornecidos, como exemplos de leiautes, distâncias, exemplos de rede, etc. Uma pessoa versada na técnica relevante irá reconhecer, no entanto, que muitas variações são possíveis sem um ou mais dos de- talhes específicos ou com outros métodos, componentes, leiautes, medições, etc. Em outras ocasiões, as estruturas bem conhecidas, materiais ou operações não são mostradas ou descritas em detalhes, mas são consideradas dentro do escopo da revelação.
[0079] Embora os exemplos anteriores sejam ilustrativos das mo dalidades específicas em uma ou mais aplicações em particular, será evidente para os elementos de habilidade comum na técnica que diversas modificações na forma, uso e detalhes de implantação podem ser realizadas sem se afastar dos princípios e conceitos articulados no presente documento. Dessa maneira, nenhuma limitação é destinada, exceto pelas reivindicações estabelecidas abaixo.

Claims (26)

1. Memória de alteração de fase caracterizada pelo fato de que compreende: um arranjo de células de memória de alteração de fase; e um receptor de máscara (300) para células individuais no arranjo para receber uma máscara, identificar dados existentes, identi-ficar dados de entrada e determinar se deve inibir um pulso definido ou um pulso redefinido.
2. Memória, de acordo com a reivindicação 1, caracterizada pelo fato de que a máscara compreende sinais que definem operações para a execução para as células individuais com base nos dados existentes e nos dados de entrada.
3. Memória, de acordo com a reivindicação 1, caracterizada pelo fato de que a máscara é uma máscara programável.
4. Memória, de acordo com a reivindicação 1, caracterizada pelo fato de que o receptor de máscara (300) possibilita as operações de definição e de redefinição simultâneas em células diferentes no arranjo através de um controlador de sequência (420).
5. Memória, de acordo com a reivindicação 1, caracterizada pelo fato de que as células individuais são configuradas para receber a máscara e os dados de entrada em paralelo.
6. Memória, de acordo com a reivindicação 1, caracterizada pelo fato de que compreende ainda uma trava para carregar os dados existentes em paralelo com a recepção da máscara no receptor de máscara (300).
7. Memória, de acordo com a reivindicação 1, caracterizada pelo fato de que a máscara é definida por um perfil para uma operação identificada selecionada para a gravação alterável por bit no arranjo de células de memória de alteração de fase.
8. Memória, de acordo com a reivindicação 7, caracteriza- da pelo fato de que o perfil é um dentre uma pluralidade de perfis, sendo que cada um é associado a uma lógica de máscara diferente.
9. Memória, de acordo com a reivindicação 8, caracterizada pelo fato de que pelo menos um dentre a pluralidade de perfis é um perfil de minimização de pulso definido ou redefinido e um outro pelo menos um dentre a pluralidade de perfis é um pulso definido ou redefinido aplicado a todos os perfis de células.
10. Memória, de acordo com a reivindicação 9, caracteri-zada pelo fato de que o perfil é um perfil de minimização de pulso de-finido ou redefinido.
11. Método de gravação de dados em um arranjo de memória de alteração de fase caracterizado pelo fato de que compreende: identificar a lógica de máscara para mascarar células no ar-ranjo de memória de alteração de fase; rotear a lógica de máscara para as células; rotear dados de entrada para as células; e impedir, seletivamente, pulsos definidos e redefinidos para as células com base na lógica de máscara.
12. Método, de acordo com a reivindicação 11, caracteri-zado pelo fato de que ainda compreende comparar uma combinação de dados existentes e dos dados de entrada com a lógica de máscara para obter um resultado; e determinar se deve impedir um pulso definido ou redefinido com base no resultado.
13. Método, de acordo com a reivindicação 11, caracteri-zado pelo fato de que ainda compreende: alterar uma lógica de máscara existente para uma lógica de máscara alterada.
14. Método, de acordo com a reivindicação 13, caracteri-zado pelo fato de que ainda compreende reverter a lógica de máscara alterada para a lógica de máscara existente após a lógica de máscara alterada ser roteada para as células.
15. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que ainda compreende enviar um pulso definido para as células definidas não inibidas pela lógica de máscara; e subsequentemente enviar um pulso redefinido para redefinir as células não inibidas pela lógica de máscara antes de o pulso definido ser concluído.
16. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que ainda compreende atrasar operações adicionais até que o pulso definido seja concluído.
17. Sistema de armazenamento de dados caracterizado pelo fato de que compreende: um processador (760); uma fonte de alimentação (770); uma memória de alteração de fase acoplada ao processador (760) e que inclui um arranjo de células; um controlador de sequência (420) para rotear uma máscara para o arranjo de células; e um receptor de máscara (300) para células individuais no arranjo de células para receber a máscara, identificar dados existentes, identificar dados de entrada e determinar se deve inibir um pulso definido ou um pulso redefinido para as células.
18. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que a máscara compreende uma pluralidade de sinais que definem operações para a execução para as células individuais com base nos dados existentes e nos dados de entrada.
19. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que a máscara é uma máscara programável.
20. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que o receptor de máscara (300) possibilita as operações de definição e de redefinição simultâneas em células diferentes no arranjo através do controlador de sequência (420).
21. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que o controlador de sequência (420) ainda compreende um gerador de máscara configurado para rotear a máscara para o receptor de máscara (300).
22. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que compreende ainda uma trava para carregar os dados existentes em paralelo com a recepção da máscara no receptor de máscara (300).
23. Sistema, de acordo com a reivindicação 17, caracterizado pelo fato de que o receptor de máscara (300) possibilita as operações de definição e de redefinição simultâneas em células diferentes no arranjo através do controlador de sequência (420) quando a máscara inibe o pulso redefinido em pelo menos uma das células e inibe o pulso definido em uma pelo menos uma diferente das células.
24. Memória de alteração de fase caracterizada pelo fato de que compreende: um arranjo de células de memória de alteração de fase; e um receptor de máscara (300) para células individuais no arranjo para receber uma máscara, identificar dados existentes, identificar dados de entrada e determinar se deve inibir um pulso redefinido.
25. Método de gravação de dados em um arranjo de memória de alteração de fase caracterizado pelo fato de que compreende: identificar a lógica de máscara para mascarar células no arranjo de memória de alteração de fase; rotear a lógica de máscara para as células; rotear dados de entrada para as células; e impedir, seletivamente, pulsos definidos ou redefinidos para as células com base na lógica de máscara.
26. Sistema de armazenamento de dados caracterizado pelo fato de que compreende: um processador (760); uma fonte de alimentação (770); uma memória de alteração de fase conforme definida na reivindicação 24, acoplada ao processador (760); e um controlador de sequência (420) para rotear uma máscara para um arranjo de células na memória de alteração de fase.
BR112015018950-4A 2013-03-12 2014-02-24 Memória de alteração de fase, método de gravação de dados e sistema de armazenamento de dados BR112015018950B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/796,462 US8913425B2 (en) 2013-03-12 2013-03-12 Phase change memory mask
US13/796,462 2013-03-12
PCT/US2014/017938 WO2014158536A1 (en) 2013-03-12 2014-02-24 Phase change memory mask

Publications (2)

Publication Number Publication Date
BR112015018950A2 BR112015018950A2 (pt) 2017-07-18
BR112015018950B1 true BR112015018950B1 (pt) 2022-05-03

Family

ID=51526467

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112015018950-4A BR112015018950B1 (pt) 2013-03-12 2014-02-24 Memória de alteração de fase, método de gravação de dados e sistema de armazenamento de dados

Country Status (6)

Country Link
US (3) US8913425B2 (pt)
EP (1) EP2973579B1 (pt)
KR (1) KR101791002B1 (pt)
CN (1) CN104969296B (pt)
BR (1) BR112015018950B1 (pt)
WO (1) WO2014158536A1 (pt)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8913425B2 (en) * 2013-03-12 2014-12-16 Intel Corporation Phase change memory mask
CN105378849B (zh) * 2013-07-17 2018-04-10 松下知识产权经营株式会社 非易失性半导体存储装置及其改写方法
US9646178B2 (en) 2014-10-15 2017-05-09 Empire Technology Development Llc Secure data storage based on physically unclonable functions
US9859003B1 (en) * 2016-10-26 2018-01-02 Arm Limited Selective writes in a storage element
KR20180085396A (ko) 2017-01-18 2018-07-27 에스케이하이닉스 주식회사 비휘발성 메모리 장치, 및 그의 데이터 라이트 동작방법
US10381075B2 (en) * 2017-12-14 2019-08-13 Micron Technology, Inc. Techniques to access a self-selecting memory device
US10546632B2 (en) 2017-12-14 2020-01-28 Micron Technology, Inc. Multi-level self-selecting memory device
US10910037B2 (en) 2018-10-04 2021-02-02 Micron Technology, Inc. Apparatuses and methods for input receiver circuits and receiver masks for same
US11249679B2 (en) * 2019-07-31 2022-02-15 Micron Technology, Inc. Selecting a write operation mode from multiple write operation modes
US11139025B2 (en) 2020-01-22 2021-10-05 International Business Machines Corporation Multi-level cell threshold voltage operation of one-selector-one-resistor structure included in a crossbar array
TWI755154B (zh) 2020-03-03 2022-02-11 美商美光科技公司 基於計數器及錯誤校正碼反饋用於記憶體單元之即時程式化及驗證方法
WO2021176243A1 (en) 2020-03-03 2021-09-10 Micron Technology, Inc. On-the-fly programming and verifying method for memory cells based on counters and ecc feedback

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276642A (en) * 1991-07-15 1994-01-04 Micron Technology, Inc. Method for performing a split read/write operation in a dynamic random access memory
US7889544B2 (en) * 2004-04-05 2011-02-15 Super Talent Electronics, Inc. High-speed controller for phase-change memory peripheral device
KR100618824B1 (ko) * 2004-05-08 2006-08-31 삼성전자주식회사 상 변화 메모리 장치의 전류 펄스 폭을 제어하는 구동회로 및 프로그래밍 방법
US8121237B2 (en) * 2006-03-16 2012-02-21 Rambus Inc. Signaling system with adaptive timing calibration
KR100834738B1 (ko) * 2006-08-31 2008-06-05 삼성전자주식회사 상변화 메모리 장치의 구동 방법 및 그 방법을 사용하는상변화 메모리 장치
US7433226B2 (en) * 2007-01-09 2008-10-07 Macronix International Co., Ltd. Method, apparatus and computer program product for read before programming process on multiple programmable resistive memory cell
US7643334B1 (en) * 2007-04-26 2010-01-05 Super Talent Electronics, Inc. High-speed controller for phase-change memory peripheral device
JP4719236B2 (ja) * 2008-03-21 2011-07-06 株式会社東芝 半導体記憶装置及び半導体記憶システム
KR20100095079A (ko) * 2009-02-20 2010-08-30 삼성전자주식회사 가변저항 메모리 셀 어레이를 갖는 저항성 메모리 장치, 이를 포함하는 메모리 시스템, 및 그것의 데이터 입출력 방법
JP2010225259A (ja) * 2009-02-27 2010-10-07 Renesas Electronics Corp 半導体装置
US8570828B2 (en) * 2010-04-12 2013-10-29 Mosaid Technologies Incorporated Memory programming using variable data width
US8432729B2 (en) * 2010-04-13 2013-04-30 Mosaid Technologies Incorporated Phase-change memory with multiple polarity bits having enhanced endurance and error tolerance
CA2793922A1 (en) * 2010-04-26 2011-11-03 Mosaid Technologies Incorporated Write scheme in phase change memory
KR20110118874A (ko) * 2010-04-26 2011-11-02 삼성전자주식회사 반도체 장치, 이를 포함하는 반도체 시스템, 및 상기 반도체 장치의 동작 방법
KR20130107199A (ko) 2010-04-27 2013-10-01 모사이드 테크놀로지스 인코퍼레이티드 교번 선택을 갖는 상변화 메모리 어레이 블록
US8320172B2 (en) 2010-07-29 2012-11-27 Micron Technology, Inc. Write operation for phase change memory
KR20120029239A (ko) 2010-09-16 2012-03-26 삼성전자주식회사 Pram을 이용하는 데이터 기록 시스템 및 그 방법
US8913425B2 (en) * 2013-03-12 2014-12-16 Intel Corporation Phase change memory mask

Also Published As

Publication number Publication date
US20140269043A1 (en) 2014-09-18
CN104969296B (zh) 2019-03-22
BR112015018950A2 (pt) 2017-07-18
KR20150106433A (ko) 2015-09-21
EP2973579B1 (en) 2018-07-04
US10037799B2 (en) 2018-07-31
WO2014158536A1 (en) 2014-10-02
CN104969296A (zh) 2015-10-07
US8913425B2 (en) 2014-12-16
EP2973579A1 (en) 2016-01-20
US9406378B2 (en) 2016-08-02
EP2973579A4 (en) 2016-11-16
US20170025171A1 (en) 2017-01-26
US20150085570A1 (en) 2015-03-26
KR101791002B1 (ko) 2017-10-27

Similar Documents

Publication Publication Date Title
BR112015018950B1 (pt) Memória de alteração de fase, método de gravação de dados e sistema de armazenamento de dados
US10311951B2 (en) Refresh architecture and algorithm for non-volatile memories
US10365703B2 (en) Power management
US8060767B1 (en) Ultra low power sleep mode
JP5778807B2 (ja) データ記憶装置およびデータを記憶するための方法
US20140149773A1 (en) Latch circuit and data processing system
US7936610B1 (en) Selective refresh of single bit memory cells
TW201734819A (zh) 具有減少電壓臨界漂移之相變記憶體裝置與系統及相關方法
KR101895393B1 (ko) 상 변화 메모리 및 스위치(pcms) 메모리 디바이스에서의 드리프트 관리
KR102351660B1 (ko) 전력 관리 메커니즘을 갖는 솔리드 스테이트 메모리 시스템 및 그것의 동작 방법
JP2015022788A5 (pt)
KR101799481B1 (ko) 셀 프로그래밍 검증
JP2004206835A (ja) 不揮発性記憶装置
TWI691957B (zh) 具磁性儲存單元的記憶體裝置及計算系統
US20230393644A1 (en) Voltage frequency scaling based on error rate
TWI840678B (zh) 記憶體系統、資訊處理系統及主機裝置
US20210366554A1 (en) Non-volatile memory device with a program driver circuit including a voltage limiter

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 24/02/2014, OBSERVADAS AS CONDICOES LEGAIS.