IT201800000581A1 - Metodo di gestione dell'accesso in tempo reale a una memoria differenziale, memoria differenziale e sistema elettronico includente la memoria differenziale - Google Patents

Metodo di gestione dell'accesso in tempo reale a una memoria differenziale, memoria differenziale e sistema elettronico includente la memoria differenziale Download PDF

Info

Publication number
IT201800000581A1
IT201800000581A1 IT201800000581A IT201800000581A IT201800000581A1 IT 201800000581 A1 IT201800000581 A1 IT 201800000581A1 IT 201800000581 A IT201800000581 A IT 201800000581A IT 201800000581 A IT201800000581 A IT 201800000581A IT 201800000581 A1 IT201800000581 A1 IT 201800000581A1
Authority
IT
Italy
Prior art keywords
memory module
logic data
data
memory
main memory
Prior art date
Application number
IT201800000581A
Other languages
English (en)
Inventor
Fabio Enrico Carlo Disegni
Original Assignee
St Microelectronics Srl
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 St Microelectronics Srl filed Critical St Microelectronics Srl
Priority to IT201800000581A priority Critical patent/IT201800000581A1/it
Priority to US16/225,492 priority patent/US10811093B2/en
Priority to EP19150401.8A priority patent/EP3509067B1/en
Priority to CN201910013551.4A priority patent/CN110010181B/zh
Publication of IT201800000581A1 publication Critical patent/IT201800000581A1/it

Links

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/0021Auxiliary circuits
    • G11C13/0033Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1636Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using refresh
    • 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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • 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
    • G11C2013/0042Read using differential sensing, e.g. bit line [BL] and bit line bar [BLB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Dram (AREA)
  • Debugging And Monitoring (AREA)

Description

DESCRIZIONE
del brevetto per invenzione industriale dal titolo:
“METODO DI GESTIONE DELL'ACCESSO IN TEMPO REALE A UNA MEMORIA DIFFERENZIALE, MEMORIA DIFFERENZIALE E SISTEMA ELETTRONICO INCLUDENTE LA MEMORIA DIFFERENZIALE”
La presente divulgazione è relativa a un metodo di gestione dell’accesso in tempo reale a una memoria differenziale, a una memoria differenziale e ad un sistema elettronico includente la memoria differenziale. In particolare, la memoria differenziale è una memoria a cambiamento di fase. In particolare, la memoria differenziale è operabile in modalità asimmetrica (“singleended”), ovvero accedendo al doppio degli spazi di indirizzo rispetto a memorie differenziali usate in modo convenzionale.
Come noto, le memorie non volatili a cambiamento di fase (PCM, “Phase Change Memory”) costituiscono una generazione di memorie integrate, in cui la memorizzazione di informazioni avviene sfruttando materiali a cambiamento di fase, aventi la proprietà di poter commutare fra fasi aventi resistività elettrica di valore notevolmente differente. In particolare, tali materiali possono commutare fra una fase amorfa, ad alta resistività, ed una fase cristallina o policristallina, a bassa resistività. Di conseguenza, una cella di memoria a cambiamento di fase consente di associare un diverso valore di un dato memorizzato nella cella a una rispettiva fase di un elemento di memoria della cella.
Ad esempio, al fine di formare elementi di memoria a cambiamento di fase, è possibile utilizzare elementi del VI gruppo della tavola periodica, quali Tellurio (Te), Selenio (Se), o Antimonio (Sb), chiamati calcogenuri o materiali calcogenici; in particolare, una lega composta da Germanio (Ge), Antimonio (Sb) e Tellurio (Te), nota come GST (avente composizione chimica Ge2Sb2Te5) trova attualmente largo utilizzo in tali elementi di memoria.
La commutazione di fase in un elemento di memoria può essere ottenuta aumentando localmente la temperatura della regione di materiale calcogenico, ad esempio mediante il passaggio di una corrente elettrica di programmazione attraverso elettrodi resistivi (generalmente noti come riscaldatori) disposti a contatto con la regione di materiale calcogenico. Tale corrente elettrica, per effetto Joule, genera il profilo di temperatura necessario per il cambiamento di fase. In particolare, quando il materiale calcogenico si trova nello stato amorfo, ad alta resistività (cosiddetto stato di “RESET”), è necessario applicare un primo impulso in corrente (cosiddetto impulso di “SET”) di durata ed ampiezza tali da consentire al materiale calcogenico di raffreddarsi lentamente. Sottoposto a questo trattamento, il materiale calcogenico cambia il suo stato e commuta dallo stato di alta resistività ad uno stato cristallino di bassa resistività (cosiddetto stato di “SET”). Viceversa, quando il materiale calcogenico si trova nello stato di SET, è necessario applicare un secondo impulso di corrente (impulso di “RESET”) di elevata ampiezza e corta durata, in modo da far sì che il materiale calcogenico ritorni nello stato amorfo ad elevata resistività.
In circuiti di memoria PCM di tipo noto, la lettura del dato immagazzinato in una cella di memoria può essere effettuata applicando all’elemento di memoria di materiale calcogenico una tensione sufficientemente bassa da non causarne un sensibile riscaldamento, e quindi leggendo il valore della corrente che fluisce nella cella di memoria. Dato che la corrente è proporzionale alla conduttività del materiale calcogenico, è possibile determinare in quale fase si trovi il materiale, e quindi risalire al dato memorizzato nella cella di memoria.
In modo noto, le memorie PCM di tipo differenziale sono tipicamente progettate secondo uno schema a matrice di celle di memoria organizzate in righe (linee di parola, o “word line”) e colonne (linee di bit, o “bit line”); ciascuna cella di memoria è realizzata da un elemento di memorizzazione a cambiamento di fase e da un transistore selettore, collegati in serie. Un decodificatore di colonna ed un decodificatore di riga permettono di selezionare, sulla base di segnali logici di indirizzo ricevuti in ingresso e schemi di decodifica più o meno complessi, le celle di memoria, ed in particolare le relative word line e bit line, di volta in volta indirizzate.
Il decodificatore di colonna comprende una pluralità di interruttori analogici di selezione (realizzati da transistori), riceventi ai rispettivi terminali di controllo i segnali di indirizzo; gli interruttori di selezione sono organizzati secondo una struttura ad albero in livelli gerarchici, ed il loro numero in ogni livello gerarchico è legato all’organizzazione ed alla dimensione della matrice di memoria. Gli interruttori di selezione, quando abilitati, permettono di portare la bit line selezionata ad un valore definito di tensione e/o corrente, a seconda delle operazioni che si desidera implementare; in particolare, un percorso di corrente viene creato tra uno stadio di programmazione o uno stadio di lettura e la bit line selezionata. Tale percorso di corrente è definito dalla serie di un certo numero di interruttori di selezione. In modo noto, amplificatori di lettura (“sense amplifier”) eseguono la lettura dei dati memorizzati nelle celle di memoria, confrontando la corrente che fluisce nella cella di memoria selezionata (o una quantità elettrica ad essa correlata) con una corrente di riferimento con una corrente di riferimento fornita da un generatore di corrente di riferimento (lettura cosiddetta “asimmetrica”, o “single-ended”) e/o da una o più celle di riferimento, utilizzati per l’intera matrice di memoria. La lettura “single-ended” è utilizzata tipicamente in fase di verifica dell’avvenuta programmazione della cella o in fase di test. Durante il normale utilizzo della memoria viene invece utilizzata la lettura di tipo “double-ended”, in cui gli amplificatori di lettura (“sense amplifier”) confrontano la corrente che fluisce nella cella di memoria selezionata con quella che fluisce in una rispettiva cella associata alla cella di memoria selezionata nell’architettura differenziale.
Per effettuare la lettura “single-ended”, un ingresso dell’amplificatore di lettura riceve la corrente della cella di memoria che si desidera leggere mentre l’altro ingresso dell’amplificatore di lettura riceve la corrente di riferimento fornita dal generatore di corrente di riferimento.
Le architetture di lettura per PCM di tipo differenziale offrono vantaggi in termini di affidabilità, in quanto il dato è memorizzato in modo ridondante, ed inoltre non richiedono la generazione di una corrente di riferimento, in quanto la lettura viene effettuata semplicemente confrontando le rispettive correnti che fluiscono nelle celle associate allo stesso bit.
In modalità single-ended, è possibile leggere e scrivere indipendentemente due celle di memoria normalmente associate per eseguire la lettura differenziale; di fatto, quando operata in modalità single-ended, ogni cella di memoria può avere un valore indipendente dal valore delle altre celle di memoria, e, di conseguenza è potenzialmente possibile raddoppiare la quantità di dati immagazzinabili nella memoria PCM.
Un inconveniente dei dispositivi di memoria PCM utilizzati in modalità single-ended consiste nel fatto che in tale modalità il degrado temporale dei dati logici memorizzati non è compensabile e, in assenza di periodiche operazioni di rinfresco (“refresh”), l’informazione associata viene persa. Al contrario, quando le memorie PCM sono utilizzate in modalità double-ended, tutti i dati logici subiscono nel tempo un degrado di modo comune e, pertanto, mediante lettura differenziale è comunque possibile risalire al contenuto informativo desiderato cancellando l’offset dovuto al degrado di modo comune.
Al fine di evitare la perdita di dati in una cella di memoria, pur continuando ad utilizzare la modalità singleended, è opportuno rinfrescare periodicamente la cella di memoria. Sono noti metodi di refresh per architetture basate su tecnologia a rapida scrittura, come ad esempio la “dynamic random access memory” (DRAM), in cui il tempo necessario per ogni operazione di scrittura è dell’ordine del nanosecondo. In questi metodi, il dato da rinfrescare viene letto e sovrascritto periodicamente prima che venga perso.
Di converso, in tecnologie PCM di tipo noto, la durata temporale di un’operazione di scrittura è dell’ordine di parecchi microsecondi, tipicamente 10 microsecondi. Di conseguenza, non sarebbe possibile aggiornare interi banchi di memoria se utilizzati per applicazioni che richiedono l’accesso alla memoria (in lettura e/o in scrittura) in tempo reale.
Scopo della presente invenzione è mettere a disposizione un metodo di gestione dell’accesso in tempo reale a una memoria differenziale operata in modalità singleended, una memoria differenziale operabile in modalità single-ended ed un sistema elettronico includente la memoria differenziale atti a superare gli inconvenienti della tecnica nota.
Secondo la presente invenzione vengono forniti un metodo di gestione dell’accesso in tempo reale a una memoria differenziale operata in modalità single-ended, una memoria differenziale operabile in modalità single-ended ed un sistema elettronico includente la memoria differenziale, come definiti nelle rivendicazioni allegate.
Per una migliore comprensione della presente invenzione ne vengono ora descritte forme di realizzazione preferite, a puro titolo di esempio non limitativo, con riferimento ai disegni allegati, nei quali:
- la figura 1 mostra schematicamente una porzione di un dispositivo di memoria non volatile secondo una forma di realizzazione della presente invenzione;
- la figura 2 mostra schematicamente, mediante diagramma a blocchi, un metodo di refresh del dispositivo di memoria non volatile di figura 1;
- la figura 3 mostra un circuito elettrico corrispondente a una porzione del dispositivo di memoria non volatile di figura 1, inclusa nella porzione di figura 1;
- le figure 4A-4E mostrano il circuito di figura 3 in rispettive fasi del metodo di figura 2, in cui connessioni circuitali di particolare rilevanza per l’implementazione della rispettiva fase del metodo sono evidenziate da linee spesse; e
- la figura 5 mostra un sistema elettronico che include il dispositivo di memoria non volatile di figura 1.
Nella figura 1 è mostrata schematicamente, ed indicata nel suo complesso con il numero di riferimento 1, una porzione di un dispositivo di memoria, in particolare una memoria non volatile; secondo una forma di realizzazione della presente invenzione la memoria 1 è di tipo differenziale, in particolare di tipo PCM. Il dispositivo di memoria non volatile 1 è mostrato limitatamente alle sole parti necessarie alla comprensione della presente divulgazione.
In particolare, il dispositivo di memoria non volatile 1 comprende una matrice di memoria 2, costituita da una pluralità di “n” moduli di memoria principali 4a-4n. Ogni modulo di memoria principale 4a-4n comprende un primo sottomodulo 4a’-4n’ e un secondo sottomodulo 4a’’-4n’’. In particolare, ogni primo sottomodulo 4a’-4n’ comprende una pluralità di celle di memoria, ed ogni secondo sottomodulo 4a’’-4n’’ comprende una pluralità di rispettive celle di memoria.
In modo di per sé noto e non mostrato in figura 1, la pluralità di prime celle di memoria memorizza rispettivi dati logici di tipo binario. La pluralità di seconde celle di memoria corrisponde, per numero e caratteristiche di fabbricazione, alla pluralità di prime celle di memoria, ed è configurata per memorizzare rispettivi dati logici complementari ai dati logici memorizzati nella rispettiva pluralità di prime celle di memoria, in modo da consentire una lettura differenziale di detti dati logici.
In ogni caso, ciascun modulo di memoria principale 4a-4n può essere usato in modalità single-ended, tale per cui i dati logici memorizzati nella pluralità di celle di memoria di ciascun secondo sottomodulo 4a’’-4n’’ non sono complementari ai dati logici memorizzati nella pluralità di celle di memoria del rispettivo primo sottomodulo 4a’-4n’, ma sono ulteriori dati informativi. In questo modo, è possibile raddoppiare la capacità totale della matrice di memoria 2.
Il dispositivo di memoria non volatile 1 comprende inoltre un modulo di memoria ausiliario 6. In particolare, il modulo di memoria ausiliario 6 corrisponde strutturalmente e operativamente a ciascun modulo di memoria principale 4a-4n, ed è dunque formato da un primo sottomodulo 6’ e un secondo sottomodulo 6’’. In particolare, il primo sottomodulo 6’ comprende una pluralità di celle di memoria, ed il secondo sottomodulo 6’’ comprende una pluralità di rispettive celle di memoria, indirizzabili e dunque utilizzabili in modo single-ended.
Inoltre, il dispositivo di memoria non volatile 1 comprende un controllore 8, operativamente accoppiato alla matrice di memoria 2 ed al modulo di memoria ausiliario 6. Il controllore 8 è configurato per implementare un metodo di lettura e scrittura di dati logici nella matrice di memoria 2 e nel modulo di memoria ausiliario 6.
Inoltre, il dispositivo di memoria non volatile 1 comprende un bus 10. Ciascuno tra il controllore 8, i moduli di memoria principale 4a-4n ed il modulo di memoria ausiliario 6 è accoppiato al bus 10 mediante rispettive linee di comunicazione 12a-12e, in modo da consentire, come meglio dettagliato in seguito, un trasferimento di dati e segnali di controllo tra il controllore 8, i moduli di memoria principale 4a-4n ed il modulo di memoria ausiliario 6.
Inoltre, il dispositivo di memoria non volatile 1 comprende un’interfaccia di controllore 14. L’interfaccia di controllore 14 è accoppiata al controllore 8 in modo da inviare al controllore 8, tramite una linea di comunicazione 13, dati logici da scrivere nella matrice di memoria 2.
Inoltre, il dispositivo di memoria non volatile 1 comprende un’interfaccia di matrice di memoria 16. L’interfaccia di matrice di memoria 16 è accoppiata al bus 10 tramite una rispettiva linea di comunicazione 12f. Un utilizzatore del dispositivo di memoria non volatile 1 può accedere, ad esempio in lettura, ai dati immagazzinati nel dispositivo di memoria non volatile 1 tramite l’interfaccia di matrice di memoria 16. L’utilizzatore è ad esempio un microprocessore, un DSP, o un microcontrollore.
La figura 2 mostra schematicamente, mediante diagramma a blocchi, un metodo di refresh della matrice di memoria 2. Il metodo di refresh comprende prima di tutto la fase 20 di selezionare un modulo di memoria principale 4a-4n da rinfrescare. A titolo esemplificativo, nel corso della fase 20 viene selezionato il modulo di memoria principale 4a.
Successivamente alla fase 20, si passa alla fase 22 in cui il controllore 8 legge i dati contenuti nel modulo di memoria principale 4a selezionato nella fase 20. In particolare, la fase 22 si svolge in modo trasparente per l’utilizzatore del dispositivo di memoria non volatile 1, che può richiedere operazioni di lettura indirizzando una qualsiasi cella di un qualsiasi modulo di memoria principale 4a-4n. Nel caso in cui l’utilizzatore richieda di accedere al modulo di memoria principale 4a contestualmente alla fase 22, si verifica un conflitto momentaneo che impatta in modo trascurabile sui tempi di lettura. In particolare, quando l’utilizzatore ha accesso di lettura al modulo di memoria principale 4a, un segnale di controllo READY assume il valore logico “0”; al termine della lettura, il segnale di controllo READY assume il valore logico “1”. L’interfaccia di controllore 14 ha accesso al segnale di controllo READY. Se nel corso della fase 22 il valore del segnale di controllo READY è “0” (ovvero è in corso una lettura da parte dell’utilizzatore), l’interfaccia di controllore 14 posticipa l’operazione di lettura al termine dell’operazione di lettura dell’utilizzatore, ed imposta il segnale di controllo READY al valore “0” fino al termine della propria operazione di lettura. Se nel corso della fase 22 il valore del segnale di controllo READY è “1” (ovvero non è in corso un accesso di lettura al modulo di memoria principale 4a da parte dell’utilizzatore), l’interfaccia di controllore 14 imposta il segnale di controllo READY al valore “0” fino al termine della propria operazione di lettura, in modo che l’utilizzatore non possa avere accesso durante l’operazione di lettura e dunque prevenire conflitti. In ogni caso, al termine della propria operazione di lettura, l’interfaccia di controllore 14 imposta il segnale di controllo READY al valore logico “1”.
Successivamente alla fase 22, si passa alla fase 24 in cui il controllore 8 scrive nel modulo di memoria ausiliario 6 i dati letti nella fase 22. In particolare, l’intero contenuto del modulo di memoria principale 4a è copiato nel modulo di memoria ausiliario 6. A tal fine, potrebbe essere necessario reiterare in più cicli la successione delle fasi 22 e 24 fino a copiare l’intero contenuto. Inoltre, al fine di preservare la coerenza dei dati contenuti nella matrice di memoria 2, il controllore 8 impedisce in questa fase l’esecuzione di operazioni di scrittura nella matrice di memoria 2.
Successivamente alla fase 24, si passa alla fase 26 in cui richieste di lettura da parte dell’utilizzatore dei contenuti informativi del modulo di memoria principale 4a sono reindirizzate al modulo di memoria ausiliario 6.
Successivamente alla fase 26, si passa alla fase 28 in cui il contenuto del modulo di memoria principale 4a viene rinfrescato fisicamente, ovvero il suo contenuto viene letto e sovrascritto. Secondo un aspetto della presente invenzione, durante la fase 28 l’utilizzatore può accedere al modulo di memoria ausiliario 6 al fine di leggerne il contenuto che, come detto, corrisponde al contenuto informativo del modulo di memoria principale 4a.
In questo modo, l’utilizzatore ha un accesso ininterrotto al contenuto informativo dell’intera matrice di memoria 2, permettendone l’uso per applicazioni in tempo reale.
Successivamente alla fase 28, si passa alla fase 30 in cui richieste di lettura dei contenuti del modulo di memoria principale 4a, precedentemente reindirizzate al modulo di memoria ausiliario 6 nella fase 26, sono nuovamente indirizzate al modulo di memoria principale 4a.
Successivamente alla fase 30, è possibile tornare alla fase 20 per selezionare un nuovo modulo di memoria principale 4a-4n da rinfrescare. Ad esempio, il controllore 8 può selezionare periodicamente e in modo sequenziale ciascun modulo di memoria principale 4a-4n secondo intervalli temporali prestabiliti. In particolare, detti intervalli temporali hanno durata compatibile col tempo di mantenimento (“retention time”) di ciascuna cella di memoria del dispositivo di memoria non volatile 1, in modo da consentire un uso ininterrotto della modalità single-ended della matrice di memoria 2. In particolare, il tempo di mantenimento di una cella di memoria è la durata temporale che intercorre tra la scrittura di un dato logico nella cella e l’istante in cui il dato non è più leggibile in quanto eccessivamente degradato.
La figura 3 mostra in maggior dettaglio una porzione del dispositivo di memoria non volatile 1 di figura 1, comprendente il modulo di memoria principale 4a, il modulo di memoria ausiliario 6, il controllore 8 e l’interfaccia di matrice di memoria 16. In particolare, il dispositivo di memoria non volatile 1 comprende inoltre una pluralità di multiplatori (“multiplexer”) atti a rendere trasparente l’operazione di refresh per l’utilizzatore del dispositivo di memoria non volatile 1.
Il controllore 8 è altresì configurato per generare un primo segnale di controllo BUSY, un secondo segnale di controllo BUSY_SP e un terzo segnale di controllo SCOMM per comandare la pluralità di multiplatori in modo meglio descritto in seguito.
Il controllore 8 è inoltre configurato per ricevere dati contenuti nel modulo di memoria principale 4a e nel modulo di memoria ausiliario 6 tramite un segnale in ingresso SDATA_IN. In particolare, il segnale SDATA_IN è uno tra segnali SMAIN_O (che trasporta i dati contenuti nel modulo di memoria principale 4a) e SSPARE_O (che trasporta i dati contenuti nel modulo di memoria ausiliario 6) selezionati tramite un multiplatore 32 comandato dal primo segnale di controllo BUSY. A questo fine, il multiplatore 32 è accoppiato al modulo di memoria principale 4a e al modulo di memoria ausiliario 6 per ricevere rispettivamente il segnale SMAIN_O e il segnale SSPARE_O. Ad esempio, il segnale SSPARE_O è letto successivamente ad un’operazione di scrittura del modulo di memoria ausiliario 6, per verificare che l’operazione di scrittura sia stata effettuata correttamente. Altrimenti, secondo procedure note, si passa ad operazioni di scrittura successive.
In particolare, il multiplatore 32 è accoppiato al modulo di memoria ausiliario 6 mediante interposizione di un primo buffer 33, in modo da ridurre i tempi di propagazione associati al modulo di memoria ausiliario 6.
Il controllore 8 è inoltre configurato per inviare al modulo di memoria principale 4a un segnale in uscita SDATA_OUT' che trasporta dati letti dal modulo di memoria principale 4a, in modo da implementare la fase 28 del metodo di figura 2; e per inviare al modulo di memoria ausiliario 6 un segnale in uscita SDATA_OUT" che trasporta dati letti dal modulo di memoria principale 4a, in modo da implementare la fase 24 del metodo di figura 2.
Il controllore 8 è inoltre configurato per generare un segnale SA', contenente un indirizzo di una tra le celle di memoria del modulo di memoria principale 4a. Il segnale SA' è alimentato ad un ingresso di un multiplatore 34 comandato dal primo segnale di controllo BUSY. Il multiplatore 34 riceve altresì un segnale SINT_O dall’interfaccia di matrice di memoria 16, contenente un indirizzo per eseguire un’operazione di scrittura di tipo convenzionale di una tra le celle di memoria del modulo di memoria principale 4a. Il primo segnale di controllo BUSY permette di selezionare uno tra i segnali in ingresso SA', SINT_O per generare un segnale in uscita SADDR' al multiplatore 34, a seconda che si stia eseguendo il metodo di refresh di figura 2 o la scrittura di tipo convenzionale.
Il segnale SADDR' è alimentato al modulo di memoria principale 4a per indirizzare una tra le celle di memoria del modulo di memoria principale 4a, in modo da implementare una tra le fasi 24 e 28 del metodo di refresh di figura 2.
Pertanto, il segnale SMAIN_O in uscita dal modulo di memoria principale 4a contiene dati corrispondenti ai dati contenuti dalla cella di memoria del modulo di memoria principale 4a indirizzata dal segnale SADDR'.
Detto segnale SMAIN_O è inoltre alimentato a un multiplatore 36 comandato dal terzo segnale di controllo SCOMM. Il multiplatore 38 riceve inoltre in ingresso il segnale SSPARE_O, dal modulo di memoria ausiliario 6 mediante interposizione del primo buffer 33. Il multiplatore 38 seleziona uno tra i segnali SMAIN_O, SSPARE_O, per generare un segnale SINT_I in ingresso all’interfaccia di matrice di memoria 16. Il segnale SINT_I contiene pertanto dati inviati in risposta a richieste di lettura da parte dell’utilizzatore. Tali dati provengono dal modulo di memoria principale 4a o, durante un suo refresh, dal modulo di memoria ausiliario 6.
Il controllore 8 è inoltre configurato per generare un segnale SA'', contenente un indirizzo di una tra le celle di memoria del modulo di memoria ausiliario 6. Il segnale SA'' è alimentato ad un ingresso di un multiplatore 38 comandato dal secondo segnale di controllo BUSY_SP. Il multiplatore 38 riceve altresì in ingresso il segnale SADDR' mediante interposizione di un secondo buffer 39, in modo da ridurre i tempi di propagazione associati al modulo di memoria ausiliario 6. Il secondo segnale di controllo BUSY_SP permette di selezionare uno tra i segnali in ingresso SA'', SADDR' per generare un segnale in uscita SADDR'' al multiplatore 38. In particolare, il segnale in uscita SADDR'' corrisponde al segnale in ingresso SA'' nel corso della copiatura dei dati del modulo di memoria principale 4a nel modulo di memoria ausiliario 6 (fase 24 del metodo di refresh di figura 2), ed al segnale in ingresso SADDR'=SINT_O nel caso l’utilizzatore richieda di leggere il contenuto informativo della cella di memoria 4a nel corso del rinfresco del modulo di memoria principale 4a (fase 28 del metodo di refresh di figura 2).
Il controllore 8 è inoltre configurato per alimentare un multiplatore 40 con un segnale di clock CLK generato da un generatore di clock (non mostrato in figura 3). Il multiplatore 40 riceve altresì in ingresso un segnale di clock CLKA (generato da un altro generatore di clock non mostrato in figura 3) che rappresenta il clock di funzionamento standard del modulo di memoria principale 4a. Il multiplatore 40 è comandato dal primo segnale di controllo BUSY per generare un segnale in uscita usato come clock del modulo di memoria principale 4a, selezionando il segnale CLK in uscita dal controllore 8 durante il refresh del modulo di memoria principale 4a, ed il segnale CLKA altrimenti.
Il segnale di clock CLK in uscita al controllore 8 è inoltre alimentato a un multiplatore 42 comandato dal secondo segnale di controllo BUSY_SP. Il multiplatore 42 riceve altresì in ingresso il segnale di clock CLKA. Il multiplatore 42 genera un segnale in uscita usato come clock del modulo ausiliario 6, selezionando il segnale CLK nel corso della copiatura dei dati del modulo di memoria principale 4a nel modulo di memoria ausiliario 6 (fase 24 del metodo di refresh di figura 2), ed il segnale CLKA nel caso l’utilizzatore richieda di leggere il contenuto informativo della cella di memoria 4a nel corso del rinfresco del modulo di memoria principale 4a (fase 28 del metodo di refresh di figura 2).
Risulta evidente che gli altri moduli di memoria principale 4b-4n sono strutturalmente equivalenti al modulo di memoria principale 4a di figura 3, e operativamente accoppiati al controllore 8, al modulo di memoria ausiliario 6 ed all’interfaccia di matrice di memoria 16 tramite rispettivi multiplatori. Inoltre, ciascun modulo di memoria principale 4a-4n può essere associato a un rispettivo segnale di clock, ad esempio diverso dal segnale di clock degli altri moduli di memoria principale. In altre parole, ciascun modulo di memoria principale 4a-4n può operare asincronicamente rispetto agli altri, ed inviare rispettivi segnali di indirizzo e di clock in ingresso rispettivamente ai multiplatori 38 e 42.
In particolare, ciascun segnale di clock può avere una propria frequenza diversa dalla frequenza degli altri segnali di clock. Di conseguenza, il modulo ausiliario 6 è controllabile per funzionare secondo il sincronismo di ciascun segnale di clock e quindi alle rispettive frequenze in modo da replicare il funzionamento del modulo di memoria principale in corso di rinfresco.
Al fine di descrivere in maggior dettaglio alcune fasi del metodo di refresh di figura 2, ciascuna tra le figure 4A-4E mostra la porzione del dispositivo di memoria non volatile 1 di figura 3 durante una diversa fase del metodo; in ciascuna tra le figure 4A-4E, linee di comunicazione corrispondenti a segnali attivi nella fase corrispondente del metodo sono evidenziate tramite l’uso di linee spesse, dove per segnali attivi si intendono segnali che trasportano dati durante detta fase, segnali che trasportano indirizzi a detti dati, segnali di clock atti a temporizzare detto trasporto dati.
In particolare, la figura 4A è relativa alla fase 22 del metodo, in cui il controllore 8 legge i dati contenuti nel modulo di memoria principale 4a.
Nel corso della fase 22, il controllore 8 genera il primo segnale di controllo BUSY in modo da selezionare i segnali SMAIN_O, SA’ e CLK, i quali vengono quindi forniti in uscita dai rispettivi multiplatori 32, 34, 40. In questo modo, il controllore 8 riceve in ingresso il segnale SDATA_IN, corrispondente al dato contenuto nella cella di memoria indirizzata dal segnale SA’ e contenuta nel modulo di memoria principale 4a. Il controllore 8 è configurato per leggere in questo modo tutti i dati contenuti nel modulo di memoria principale 4a variando l’indirizzo trasportato dal segnale SA’.
La figura 4B è relativa alla fase 24 del metodo, in cui il controllore 8 scrive nel modulo di memoria ausiliario 6 i dati letti nel corso della fase 22.
Nel corso della fase 24, il controllore 8 genera il secondo segnale di controllo BUSY_SP in modo da selezionare i segnali SA’’ e CLK, i quali vengono quindi forniti in uscita dai rispettivi multiplatori 38, 42. Inoltre, il controllore 8 invia al modulo di memoria ausiliario 6 il segnale in uscita SDATA_OUT’’, contenente dati da scrivere nella cella di memoria del modulo di memoria ausiliario 6 indirizzata dal segnale SADDR’’ = SA’’. Il controllore 8 è configurato per scrivere in questo modo tutti i dati letti precedentemente (fase 22) dal modulo di memoria principale 4a, variando l’indirizzo trasportato dal segnale SA’’.
La figura 4C è relativa alla fase 26 del metodo, e rappresenta un’operazione di lettura da parte dell’utilizzatore di un contenuto informativo del modulo di memoria principale 4a, reindirizzato verso il modulo di memoria ausiliario 6.
Nell’intervallo di tempo che va dall’esecuzione della fase 26 all’inizio della fase 30, il controllore 8 genera il secondo segnale di controllo BUSY_SP in modo da selezionare i segnali SINT_O, SADDR’ e CLKA, i quali vengono quindi forniti in uscita dai rispettivi multiplatori 34, 38, 42. Inoltre, il controllore 8 genera il terzo segnale di controllo SCOMM in modo da selezionare il segnale SSPARE_O, fornito in uscita dal multiplatore 36. In questo modo, ogniqualvolta in detto intervallo di tempo l’utilizzatore richiede di leggere il contenuto informativo del modulo di memoria principale 4a associato alla cella di memoria indirizzata dal segnale SINT_O, viene letto il dato contenuto nella cella di memoria del modulo di memoria ausiliario 6 indirizzata dal segnale SADDR’’ = SADDR’ = SINT_O. Tale dato, fornito in uscita dal modulo di memoria ausiliario 6 tramite il segnale SSPARE_O, viene dunque inviato all’interfaccia di matrice di memoria 16 tramite il segnale SINT_I.
La figura 4D è relativa alla fase 28 del metodo, in cui il contenuto del modulo di memoria principale 4a viene rinfrescato.
Nel corso della fase 28, in una prima sottofase (non illustrata graficamente in figura 4D), il controllore 8 legge il dato della cella di memoria del modulo di memoria principale 4a indirizzato dal segnale SADDR’ = SA’. A tal fine, come già mostrato in figura 4A per la fase 22, il controllore 8 genera il primo segnale di controllo BUSY in modo da selezionare i segnali SMAIN_O, SA’ e CLK, i quali vengono quindi forniti in uscita dai rispettivi multiplatori 32, 34, 40.
Successivamente alla ricezione da parte del controllore 8 del dato letto e trasportato dal segnale SDATA_IN, si passa a una seconda sottofase della fase 28, mostrata in figura 4D, in cui il controllore 8 continua a generare il primo segnale di controllo BUSY come nella prima sottofase, ed inoltre invia al modulo di memoria principale 4a il segnale in uscita SDATA_OUT’, contenente il dato letto nella prima sottofase e da rinfrescare fisicamente tramite sovrascrittura.
Il controllore 8 è configurato per ripetere la prima e la seconda sottofase per ogni dato contenuto nel modulo di memoria principale 4a. In particolare, è possibile eseguire in un primo intervallo di tempo la prima sottofase per ogni dato ed in un secondo intervallo di tempo la seconda sottofase. Alternativamente, è possibile eseguire la seconda sottofase relativa a un dato immediatamente dopo la prima sottofase relativa allo stesso dato, per poi passare al dato successivo.
La figura 4E è relativa alla fase 30 del metodo, e rappresenta un’operazione di lettura da parte dell’utilizzatore di un contenuto informativo del modulo di memoria principale 4a.
In un intervallo di tempo che va dall’esecuzione della fase 30 fino all’esecuzione della fase 26 di una successiva iterazione del metodo di refresh di figura 2, il controllore 8 comanda i multiplatori 34, 36, 40 in modo da selezionare e fornire in uscita rispettivamente i segnali SINT_O, SMAIN_O e CLKA. In questo modo, ogniqualvolta in detto intervallo di tempo l’utilizzatore richiede di leggere il contenuto informativo del modulo di memoria principale 4a associato alla cella di memoria indirizzata dal segnale SINT_O, viene letto il dato contenuto nella cella di memoria del modulo di memoria principale 4a indirizzata dal segnale SADDR’ = SINT_O. Tale dato, fornito in uscita dal modulo di memoria principale 4a tramite il segnale SMAIN_O, viene dunque inviato all’interfaccia di matrice di memoria 16 tramite il segnale SINT_I.
In figura 5 viene mostrata una porzione di un sistema elettronico 50, secondo una forma di realizzazione della presente invenzione. Il sistema elettronico 50 può essere utilizzato in dispositivi elettronici, quali ad esempio: una centralina elettronica di un veicolo; un PDA (“Personal Digital Assistant”); un computer portatile o fisso, eventualmente con capacità di trasferimento dati wireless; un telefono cellulare; un tablet; uno smartphone; un riproduttore di audio digitale; una foto- o video-camera; o ulteriori dispositivi in grado di elaborare, memorizzare, trasmettere e ricevere informazioni.
In dettaglio, il sistema elettronico 50 comprende un controller 51 (ad esempio dotato di un microprocessore, un DSP, o un microcontrollore) ed il dispositivo di memoria non volatile 1 precedentemente descritto. Opzionalmente, il sistema elettronico 50 comprende uno o più tra: un dispositivo di input/output 52 (ad esempio provvisto di una tastiera e un display), per immettere e visualizzare dati; un’interfaccia wireless 54, ad esempio un’antenna, per trasmettere e ricevere dati attraverso una rete di comunicazione wireless a radiofrequenza; ed una memoria RAM 55, tutti accoppiati attraverso un bus 56. Una batteria 57 può essere utilizzata come sorgente di alimentazione elettrica nel sistema elettronico 50, che può essere inoltre dotato di una foto o videocamera 58.
Secondo un’ulteriore forma di realizzazione non illustrata nelle figure, il dispositivo di memoria non volatile 1 può essere incorporato (“embedded”) nel controllore 51.
Da un esame delle caratteristiche del trovato qui descritto ed illustrato sono evidenti i vantaggi che esso consente di ottenere.
In particolare, l’implementazione del metodo di refresh della presente invenzione consente di utilizzare ininterrottamente una memoria PCM di tipo differenziale in modalità single-ended, e di conseguenza immagazzinare dati diversi in celle di memoria normalmente accoppiate per leggere in modo differenziale un singolo dato.
In questo modo, è possibile aumentare la capacità totale di una memoria PCM progettata per funzionare in modalità differenziale senza aumentarne in modo apprezzabile dimensioni e costi.
Inoltre, il metodo di refresh è eseguito in modo trasparente per l’utilizzatore, che ha un accesso ininterrotto in lettura e in scrittura al contenuto informativo dell’intero dispositivo di memoria non volatile, permettendone l’uso per applicazioni in tempo reale.
Risulta infine chiaro che al trovato qui descritto ed illustrato possono essere apportate modifiche e varianti senza per questo uscire dall’ambito protettivo della presente invenzione, come definito nelle rivendicazioni allegate.
Ad esempio, il metodo di refresh può essere applicato ad una qualsiasi memoria di tipo differenziale, non necessariamente basata su tecnologia a cambiamento di fase.

Claims (17)

  1. RIVENDICAZIONI 1. Metodo per gestire un accesso in tempo reale a dati logici immagazzinati in una memoria differenziale (1) operata in modalità asimmetrica (“single-ended”) e comprendente un primo modulo di memoria principale (4a), che immagazzina primi dati logici da rinfrescare, e un modulo di memoria ausiliario (6), detto metodo comprendendo le fasi di: a- immagazzinare (24) secondi dati logici nel modulo di memoria ausiliario (6) copiando i primi dati logici; b- rinfrescare (28) i primi dati logici; c- prelevare (26, 30), in risposta ad una richiesta di lettura dei primi dati logici, i secondi dati logici durante la fase di rinfresco (28) dei primi dati logici, altrimenti prelevare i primi dati logici.
  2. 2. Metodo secondo la rivendicazione 1, in cui la fase di rinfrescare (28) i primi dati logici è eseguita successivamente alla fase di immagazzinare (24) i secondi dati logici.
  3. 3. Metodo secondo la rivendicazione 1 o 2, comprendente inoltre, successivamente alla fase di prelevare (26, 30) i primi o i secondi dati logici, fornire i primi o i secondi dati logici prelevati a un utilizzatore di detta memoria differenziale (1).
  4. 4. Metodo secondo una qualsiasi delle rivendicazioni precedenti, in cui la fase di rinfrescare (28) comprende leggere i primi dati logici dal primo modulo di memoria principale (4a) e riscrivere detti primi dati logici nel primo modulo di memoria principale (4a).
  5. 5. Metodo secondo una qualsiasi delle rivendicazioni precedenti, in cui la memoria differenziale (1) comprende inoltre un secondo modulo di memoria principale (4b) che immagazzina terzi dati logici da rinfrescare, detto metodo comprendendo inoltre le fasi di: - immagazzinare (24) quarti dati logici nel modulo di memoria ausiliario (6) copiando i terzi dati logici; - rinfrescare (28) i terzi dati logici; - prelevare (26, 30), in risposta a una richiesta di lettura dei terzi dati logici, i quarti dati logici durante la fase di rinfresco (28) dei terzi dati logici, altrimenti prelevare i terzi dati logici.
  6. 6. Metodo secondo la rivendicazione 5, in cui il primo modulo di memoria principale (4a) è sincronizzato a un primo segnale di clock (CLKA) avente una prima frequenza e il secondo modulo di memoria principale (4b) è sincronizzato a un secondo segnale di clock avente una seconda frequenza diversa dalla prima frequenza, il metodo comprendendo inoltre la fase di: - far sì che il modulo di memoria ausiliario (6) operi secondo il sincronismo del primo segnale di clock (CLKA) durante il prelievo dei secondi dati logici; e - far sì che il modulo di memoria ausiliario (6) operi secondo il sincronismo del secondo segnale di clock durante il prelievo dei quarti dati logici.
  7. 7. Metodo secondo una qualsiasi delle rivendicazioni precedenti, comprendente inoltre ripetere le fasi a-c a intervalli regolari aventi una durata temporale inferiore a un tempo di mantenimento dei primi dati logici.
  8. 8. Metodo secondo una qualsiasi delle rivendicazioni precedenti, in cui la memoria differenziale (1) è una memoria a cambiamento di fase.
  9. 9. Memoria differenziale (1) operabile in modalità asimmetrica (“single-ended”) comprendente: - un primo modulo di memoria principale (4a) che immagazzina primi dati logici da rinfrescare; - un modulo di memoria ausiliario (6); - un controllore (8) configurato per: a- comandare un immagazzinamento (24) di secondi dati logici nel modulo di memoria ausiliario (6) copiando i primi dati logici, b- rinfrescare (28) i primi dati logici, c- prelevare (26, 30), in risposta ad una richiesta di lettura dei primi dati logici, i secondi dati logici durante la fase di rinfresco (28) dei primi dati logici, altrimenti prelevare i primi dati logici.
  10. 10. Memoria secondo la rivendicazione 9, in cui il controllore (8) è inoltre configurato per eseguire l’operazione di rinfrescare (28) i primi dati logici successivamente all’ immagazzinamento (24) dei secondi dati logici.
  11. 11. Memoria secondo la rivendicazione 9 o 10, comprendente inoltre un’interfaccia (16) di ingresso e uscita di dati logici, il controllore (8) essendo inoltre configurato per fornire i primi o i secondi dati logici prelevati a detta interfaccia (16).
  12. 12. Memoria secondo una qualsiasi delle rivendicazioni da 9 a 11, in cui il controllore (8) è inoltre configurato per eseguire l’operazione di rinfrescare (28) leggendo i primi dati logici dal primo modulo di memoria principale (4a) e riscrivendo detti primi dati logici nel primo modulo di memoria principale (4a).
  13. 13. Memoria secondo una qualsiasi delle rivendicazioni da 9 a 12, comprendente inoltre un secondo modulo di memoria principale (4b) che immagazzina terzi dati logici da rinfrescare, il controllore (8) essendo inoltre organizzato per: - comandare un immagazzinamento (24) di quarti dati logici nel modulo di memoria ausiliario (6) copiando i terzi dati logici; - rinfrescare (28) i terzi dati logici; - prelevare (26, 30), in risposta a una richiesta di lettura dei terzi dati logici, i quarti dati logici durante la fase di rinfresco (28) dei terzi dati logici, altrimenti prelevare i terzi dati logici.
  14. 14. Memoria secondo la rivendicazione 13, in cui il primo modulo di memoria principale (4a) è sincronizzato a un primo segnale di clock (CLKA) avente una prima frequenza e il secondo modulo di memoria principale (4b) è sincronizzato a un secondo segnale di clock avente una seconda frequenza diversa dalla prima frequenza, la memoria comprendendo inoltre un multiplatore (42) avente un primo ingresso ricevente il primo segnale di clock (CLKA), un secondo ingresso ricevente il secondo segnale di clock e un’uscita accoppiata al modulo di memoria ausiliario (6), il controllore (8) essendo inoltre configurato per: - comandare il multiplatore (42) in modo da accoppiare il primo ingresso all’uscita durante il prelievo dei secondi dati logici cosicché il modulo di memoria ausiliario (6) operi secondo il sincronismo del primo segnale di clock (CLKA); e - comandare il multiplatore (42) in modo da accoppiare il secondo ingresso all’uscita durante il prelievo dei quarti dati logici cosicché il modulo di memoria ausiliario (6) operi secondo il sincronismo del secondo segnale di clock.
  15. 15. Memoria secondo una qualsiasi delle rivendicazioni da 9 a 14, in cui il controllore (8) è inoltre configurato per ripetere le fasi a-c a intervalli regolari aventi una durata temporale inferiore a un tempo di mantenimento dei primi dati logici.
  16. 16. Memoria secondo una qualsiasi delle rivendicazioni da 9 a 15, in cui la memoria differenziale è una memoria a cambiamento di fase.
  17. 17. Sistema elettronico (50) comprendente una memoria differenziale (1) secondo una qualsiasi delle rivendicazioni da 9 a 16, scelto tra: una centralina elettronica di un veicolo, un personal digital assistant, PDA; un notebook; un telefono cellulare; uno smartphone; un tablet; un riproduttore di audio digitale; una foto- o videocamera; o ulteriori dispositivi in grado di elaborare, memorizzare, trasmettere e/o ricevere informazioni.
IT201800000581A 2018-01-05 2018-01-05 Metodo di gestione dell'accesso in tempo reale a una memoria differenziale, memoria differenziale e sistema elettronico includente la memoria differenziale IT201800000581A1 (it)

Priority Applications (4)

Application Number Priority Date Filing Date Title
IT201800000581A IT201800000581A1 (it) 2018-01-05 2018-01-05 Metodo di gestione dell'accesso in tempo reale a una memoria differenziale, memoria differenziale e sistema elettronico includente la memoria differenziale
US16/225,492 US10811093B2 (en) 2018-01-05 2018-12-19 Method of real-time access to a differential memory, differential memory and electronic system
EP19150401.8A EP3509067B1 (en) 2018-01-05 2019-01-04 Management method of real-time access to a differential memory, differential memory, and electronic system including the differential memory
CN201910013551.4A CN110010181B (zh) 2018-01-05 2019-01-07 实时访问差分存储器的方法、差分存储器和电子系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT201800000581A IT201800000581A1 (it) 2018-01-05 2018-01-05 Metodo di gestione dell'accesso in tempo reale a una memoria differenziale, memoria differenziale e sistema elettronico includente la memoria differenziale

Publications (1)

Publication Number Publication Date
IT201800000581A1 true IT201800000581A1 (it) 2019-07-05

Family

ID=61873830

Family Applications (1)

Application Number Title Priority Date Filing Date
IT201800000581A IT201800000581A1 (it) 2018-01-05 2018-01-05 Metodo di gestione dell'accesso in tempo reale a una memoria differenziale, memoria differenziale e sistema elettronico includente la memoria differenziale

Country Status (4)

Country Link
US (1) US10811093B2 (it)
EP (1) EP3509067B1 (it)
CN (1) CN110010181B (it)
IT (1) IT201800000581A1 (it)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11256442B2 (en) 2018-01-05 2022-02-22 Stmicroelectronics S.R.L. Real-time update method for a differential memory, differential memory and electronic system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5950224A (en) * 1996-02-20 1999-09-07 Sgs-Thomas Microelectronics S.A. Electrically modifiable non-volatile memory circuit having means for autonomous refreshing dependent upon on periodic clock pulses
US20080170431A1 (en) * 2007-01-12 2008-07-17 Industrial Technology Research Institute Driving method and system for a phase change memory

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4292676A (en) * 1978-11-15 1981-09-29 Lockheed Electronics Co., Inc. Refresh cycle minimizer in a dynamic semiconductor memory
US4819154A (en) * 1982-12-09 1989-04-04 Sequoia Systems, Inc. Memory back up system with one cache memory and two physically separated main memories
US6151236A (en) * 2000-02-29 2000-11-21 Enhanced Memory Systems, Inc. Enhanced bus turnaround integrated circuit dynamic random access memory device
JP4940824B2 (ja) 2006-08-18 2012-05-30 富士通セミコンダクター株式会社 不揮発性半導体メモリ
WO2008058101A2 (en) 2006-11-07 2008-05-15 Sandisk Corporation Memory controllers for performing resilient firmware upgrades to a functioning memory
IT1403899B1 (it) * 2010-12-30 2013-11-08 Incard Sa Metodo e sistema per controllare la perdita di affidabilita' di una memoria non volatile
CN106170773A (zh) * 2014-01-09 2016-11-30 桑迪士克科技有限责任公司 用于裸芯上缓冲式非易失性存储器的选择性回拷
US20150339069A1 (en) 2014-05-22 2015-11-26 Kabushiki Kaisha Toshiba Memory system and method
US10120674B2 (en) 2015-06-02 2018-11-06 Texas Instruments Incorporated Ferroelectric memory expansion for firmware updates
DE102016214879A1 (de) 2016-08-10 2018-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zum Betreiben eines Speichers
US10269420B2 (en) * 2016-12-13 2019-04-23 Taiwan Semiconductor Manufacturing Co., Ltd. Memory with symmetric read current profile and read method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5950224A (en) * 1996-02-20 1999-09-07 Sgs-Thomas Microelectronics S.A. Electrically modifiable non-volatile memory circuit having means for autonomous refreshing dependent upon on periodic clock pulses
US20080170431A1 (en) * 2007-01-12 2008-07-17 Industrial Technology Research Institute Driving method and system for a phase change memory

Also Published As

Publication number Publication date
EP3509067A1 (en) 2019-07-10
CN110010181A (zh) 2019-07-12
US20190214083A1 (en) 2019-07-11
CN110010181B (zh) 2023-04-07
US10811093B2 (en) 2020-10-20
EP3509067B1 (en) 2021-03-03

Similar Documents

Publication Publication Date Title
CN100590731C (zh) 半导体存储装置的写入方法
KR100827702B1 (ko) 가변저항 반도체 메모리 장치
TWI459403B (zh) 調整積體電路之操作參數之方法及裝置
US7787316B2 (en) Semiconductor memory device and write control method thereof
WO2008032394A1 (fr) Dispositif semi-conducteur
US10824417B2 (en) Real-time update method for a differential memory, differential memory and electronic system
KR20110086050A (ko) 불휘발성 반도체 기억 장치 및 그 구동 방법
JPWO2008120333A1 (ja) 可変抵抗メモリ及びそのデータ書込み方法
CN108630272B (zh) 计算相变存储器件电力消耗的电路和方法、相变存储系统
IT201800000581A1 (it) Metodo di gestione dell'accesso in tempo reale a una memoria differenziale, memoria differenziale e sistema elettronico includente la memoria differenziale
US11645004B2 (en) Real-time update method for a differential memory, differential memory and electronic system
KR20190047451A (ko) 저항 변화 메모리 장치를 구비한 반도체 메모리 시스템 및 그 구동 방법
KR100919556B1 (ko) 상 변화 메모리 장치
KR20090037697A (ko) 상 변화 메모리 장치
CN102543171A (zh) 一种具有冗余电路的相变存储器及其实现冗余的方法
US7710790B2 (en) Semiconductor memory device and write control method thereof
US11049561B2 (en) Method for programming a phase-change memory device of differential type, memory device, and electronic system
US8953390B2 (en) Semiconductor memory device
US10553269B2 (en) High-speed data transfer periods for thyristor memory cell arrays
JP5647722B2 (ja) 半導体装置
US20100182829A1 (en) Semiconductor memory device
KR20190123106A (ko) 영상을 pcm에 저장하기 위한 장치 및 방법
IT201900019976A1 (it) Metodo di programmazione di un dispositivo di memoria a cambiamento di fase di tipo differenziale, dispositivo di memoria a cambiamento di fase, e sistema elettronico
KR20170103438A (ko) 어드레스 생성회로 및 그를 포함하는 반도체 메모리 장치
TW202340961A (zh) 記憶體裝置及記憶體控制方法