ITMI20100761A1 - Dispositivo di memoria ad accesso di registro indicizzato. - Google Patents

Dispositivo di memoria ad accesso di registro indicizzato. Download PDF

Info

Publication number
ITMI20100761A1
ITMI20100761A1 IT000761A ITMI20100761A ITMI20100761A1 IT MI20100761 A1 ITMI20100761 A1 IT MI20100761A1 IT 000761 A IT000761 A IT 000761A IT MI20100761 A ITMI20100761 A IT MI20100761A IT MI20100761 A1 ITMI20100761 A1 IT MI20100761A1
Authority
IT
Italy
Prior art keywords
register
clock domain
memory device
command code
security
Prior art date
Application number
IT000761A
Other languages
English (en)
Inventor
Daniele Balluchi
Marco Ferrario
Original Assignee
Daniele Balluchi
Marco Ferrario
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 Daniele Balluchi, Marco Ferrario filed Critical Daniele Balluchi
Priority to ITMI2010A000761A priority Critical patent/IT1399916B1/it
Priority to US12/916,421 priority patent/US8539189B2/en
Priority to DE102011075023A priority patent/DE102011075023A1/de
Priority to TW100115189A priority patent/TWI444891B/zh
Priority to KR1020110041698A priority patent/KR101266580B1/ko
Priority to JP2011102875A priority patent/JP5500457B2/ja
Priority to CN201110115893.0A priority patent/CN102324246B/zh
Publication of ITMI20100761A1 publication Critical patent/ITMI20100761A1/it
Application granted granted Critical
Publication of IT1399916B1 publication Critical patent/IT1399916B1/it
Priority to US14/027,088 priority patent/US8832392B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • 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
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/106Data output latches
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1087Data input latches
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Description

DISPOSITIVO DI MEMORIA AD ACCESSO DI REGISTRO INDICIZZATO
DESCRIZIONE
ANTECEDENTI
[0001] Il trovato qui descritto può riferirsi all’accesso a registri situati in un dispositivo di memoria, e può riferirsi in maniera più particolare all'accesso di registro indicizzato per registri in un dispositivo di memoria.
[0002] Dispositivi di memoria, compresi tipi di dispositivo di memoria non volatile, come dispositivi di memoria flash, possono trovarsi in una ampia gamma di dispositivi elettronici. In particolare, dispositivi di memoria flash possono essere utilizzati in elaboratori elettronici, fotocamere digitali, telefoni cellulari, assistenti digitali personali, eccetera. Dispositivi di memoria possono comprendere uno o più registri per memorizzare svariati tipi di informazioni. Registri possono essere messi in opera in un dominio di clock relativamente veloce su un dispositivo di memoria, come un dominio di clock condiviso mediante una interfaccia di ingresso/uscita seriale o parallela del dispositivo di memoria, per esempio.
BREVE DESCRIZIONE DEI DISEGNI
[0003] Il trovato rivendicato à ̈ particolarmente messo in evidenza e distintamente rivendicato nella porzione conclusiva della domanda. Tuttavia, per quanto riguarda l’organizzazione o il metodo di funzionamento, insieme con gli scopi, caratteristiche, o suoi vantaggi, esso può essere meglio compreso con riferimento alla seguente descrizione dettagliata, se letta con i disegni allegati in cui:
[0004] Figura 1 Ã ̈ un diagramma a blocchi schematico che illustra una forma d'esecuzione di esempio di una piattaforma di calcolo.
[0005] Figura 2 Ã ̈ un diagramma a blocchi schematico che raffigura una forma d'esecuzione di esempio di un dispositivo di memoria non volatile.
[0006] Figura 3 Ã ̈ un diagramma a blocchi schematico che raffigura una forma d'esecuzione di esempio di una configurazione di registro per accesso a registro indicizzato per un dispositivo di memoria di esempio.
[0007] Figura 4 Ã ̈ un diagramma a blocchi schematico che raffigura una forma d'esecuzione di esempio di una configurazione di registro per accesso a registro indicizzato per un dispositivo di memoria di esempio.
[0008] Figura 5 Ã ̈ un diagramma di flusso che illustra una forma d'esecuzione di esempio di un processo per accesso a registro indicizzato per un dispositivo di memoria di esempio.
[0009] Viene fatto riferimento nella seguente descrizione dettagliata ai disegni allegati, che formano una sua parte, in cui numeri simili possono designare parti simili lungo il testo per indicare elementi corrispondenti od analoghi. Si noti che per semplicità o chiarezza di illustrazione, elementi illustrati nelle figure non sono stati necessariamente disegnati in scala. Per esempio, dimensioni di alcuni elementi possono essere esagerate rispetto ad altri elementi per chiarezza. Inoltre, va inteso che possono essere utilizzate altre forme d'esecuzione. Inoltre, possono essere compiuti cambiamenti strutturali o logici senza allontanarsi dall'ambito del trovato rivendicato. Deve anche essere notato che direzioni o riferimenti, per esempio, su, giù, sopra, sotto, e così via, possono essere utilizzati per facilitare la discussione dei disegni e non sono intesi restringere l'applicazione del trovato rivendicato. Di conseguenza, la seguente descrizione dettagliata non deve essere presa come limitante l'ambito del trovato rivendicato o suoi equivalenti. DESCRIZIONE DETTAGLIATA
[0010] Nella seguente descrizione dettagliata, vengono esposti numerosi dettagli specifici per fornire una comprensione approfondita del trovato rivendicato. Tuttavia, sarà inteso dagli esperti del settore che il trovato rivendicato può essere messo in pratica senza questi dettagli specifici. In altri casi, metodi, apparecchi o sistemi che dovrebbero essere conosciuti da un tecnico del settore non sono stati descritti in dettaglio in modo da non oscurare il trovato rivendicato.
[0011] Come discusso sopra, dispositivi di memoria, comprendenti tipi di dispositivo di memoria non volatile, come dispositivi di memoria flash, possono trovarsi in una ampia gamma di dispositivi elettronici. Dispositivi di memoria, come dispositivi di memoria flash, per nominare meramente un singolo tipo di memoria di esempio, possono essere utilizzati in elaboratori elettronici, fotocamere digitali, telefoni cellulari, assistenti digitali personali, eccetera. Dispositivi di memoria possono comprendere uno o più registri per memorizzare svariati tipi di informazioni. Registri possono essere messi in opera in un dominio di clock a frequenza relativamente elevata su un dispositivo di memoria. Per esempio, uno o più registri possono essere implementati in un dominio di clock condiviso mediante una interfaccia di ingresso/uscita seriale o parallela di un dispositivo di memoria. Tuttavia, per incorporare numeri sempre più grandi di registri in un dispositivo di memoria, possono sorgere problemi di progettazione e di fabbricazione nella implementazione dei registri in un dominio di clock di frequenza relativamente elevata. Per incorporare numeri più grandi di registri in un dispositivo di memoria, pur evitando o riducendo almeno alcuni problemi che possono essere associati con registri implementati in un dominio di clock di frequenza relativamente elevata, forme d'esecuzione in conformità con il trovato rivendicato possono utilizzare uno schema di registro indicizzato. Forme d'esecuzione di esempio di schemi di registro indicizzato vengono descritti qui.
[0012] Per accedere a numeri arbitrariamente grandi di registri in un dispositivo di memoria, pur riducendo le difficoltà nell'implementazione di registri in un dominio di clock di frequenza relativamente elevata, può essere impiegata una tecnica di registro indicizzato, in una o più forme d'esecuzione. Dispositivi di memoria di esempio che supportano tecniche di accesso a registro indicizzato possono utilizzare uno o più registri implementati in un dominio di clock di frequenza relativamente elevata. Uno o più registri di dominio di clock di frequenza relativamente elevata possono fornire accesso a uno o più registri addizionali implementati in un dominio di clock di frequenza relativamente bassa. Come utilizzato qui, un dominio di clock di "frequenza relativamente elevata" può essere indicato come dominio di clock "veloce", e un dominio di clock di "frequenza relativamente bassa" può essere indicato come dominio di clock "lento". Un primo dominio di clock può essere considerato essere un dominio di clock "veloce" ed un secondo dominio di clock può essere considerato essere un dominio di clock "lento" se una frequenza di clock di primo dominio di clock à ̈ più grande di una frequenza di clock di secondo dominio di clock, anche se una differenza tra frequenze di clock à ̈ relativamente piccola. In una forma d'esecuzione, un dominio di clock veloce può funzionare ad approssimativamente 400 MHz, ed un dominio di clock lento può funzionare ad approssimativamente 50 MHz. Tuttavia, queste frequenze di clock sono meramente di esempio, ed il trovato rivendicato non à ̈ limitato in ambito a questo proposito. In dispositivi di memoria che mettono in opera una forma d'esecuzione di uno schema di accesso di registro indicizzato, può essere possibile scrivere segnali rappresentativi di segnali di dati od informazioni in un primo registro in un dominio di clock veloce e trasferire successivamente informazioni memorizzate nel primo registro ad un secondo registro in un dominio di clock lento. In un'altra forma d'esecuzione, una pluralità di registri possono essere messi in opera in un dominio di clock lento, ed il primo registro del dominio di clock veloce può essere utilizzato per accedere a qualsiasi di una pluralità di registri del dominio di clock lento.
[0013] Un potenziale vantaggio di utilizzare uno o più registri di un dominio di clock veloce per accedere ad uno o più registri di un dominio di clock lento può essere la riduzione della complessità di progetto o dei costi di produzione se si implementano numeri sempre più grandi di registri che possono essere utilizzati per uno qualsiasi di una ampia gamma di scopi potenziali. Implementare numeri sempre più grandi di registri in un dominio di clock veloce può presentare problemi di progetto o può avere come risultato maggiori difficoltà o costi di fabbricazione. Problemi di progetto o difficoltà di fabbricazione possono essere evitati o ridotti, almeno in parte, implementando un numero relativamente piccolo di registri in un dominio di clock veloce ed implementando un numero più grande di registri in un dominio di clock lento. Implementando pochi registri in un dominio di clock veloce, si possono soddisfare considerazioni di prestazioni, ed implementando registri aggiuntivi in un dominio di clock lento, si possono fornire numeri di registri più grandi, pur evitando o riducendo difficoltà che possono altrimenti essere incontrate se numeri di registri più grandi dovessero essere implementati in un dominio di clock veloce. Naturalmente, il trovato rivendicato non à ̈ limitato come ambito di protezione a questo riguardo.
[0014] Figura 1 à ̈ un diagramma a blocchi di una forma d'esecuzione di esempio di una piattaforma di calcolo 100, che comprende un processore 110 ed una memoria 130. Per il presente esempio, memoria 130 comprende un dispositivo di memoria flash, anche se l'ambito del trovato rivendicato non à ̈ limitato a questo riguardo. Memoria 130 per questo esempio à ̈ accoppiata a un processore 110 per mezzo di una interconnessione parallela 120, anche se l'ambito del trovato rivendicato non à ̈ limitato a questo riguardo. Inoltre, in una forma d'esecuzione, memoria 130 può comprendere uno o più registri implementati in un primo dominio di clock, ed uno o più registri aggiuntivi implementati in un secondo dominio di clock. In una forma d'esecuzione, uno o più registri dal primo dominio di clock possono essere utilizzati per accedere ad uno o più registri del secondo dominio di clock. Inoltre, per una forma d'esecuzione, il primo dominio di clock può comprendere un dominio di clock di frequenza relativamente elevata, ed il secondo dominio di clock può comprendere un dominio di clock di frequenza relativamente bassa. Forme d'esecuzione in conformità con il trovato rivendicato non sono limitate a frequenze di clock particolari, ma piuttosto domini di clock possono avere una qualsiasi di una gamma molto ampia di possibili frequenze di clock.
[0015] Per una forma d'esecuzione, una configurazione di piattaforma di calcolo 100 può comprendere una implementazione di esecuzione sul posto (XiP), come raffigurato in Fig. 1, in cui un processore 110 può caricare istruzioni direttamente da memoria a lungo termine. Come utilizzato qui, il termine "esecuzione sul posto", insieme con la sua abbreviazione "XiP", si riferisce ad un processore in grado di caricare istruzioni da un dispositivo di memorizzazione a lungo termine, come, per esempio, una memoria flash. Più tipicamente, processori caricano istruzioni da una memoria intermedia, come, per esempio, una memoria ad accesso casuale dinamico (DRAM).
[0016] Il termine "piattaforma di calcolo" come utilizzato qui si riferisce ad un sistema od un dispositivo che comprende una capacità di processare o memorizzare dati nella forma di segnali. Pertanto, una piattaforma di calcolo, in questo contesto, può comprendere hardware, software, firmware o qualsiasi loro combinazione. Alcune porzioni della descrizione dettagliata comprese qui vengono presentate in termini di algoritmi o rappresentazioni simboliche di operazioni su segnali digitali binari memorizzati all'interno di una memoria di un apparecchio specifico o dispositivo o piattaforma di calcolo a scopo speciale. Nel contesto di questa particolare descrizione, il termine apparecchio specifico o simili comprende un elaboratore elettronico a scopo generale una volta che esso à ̈ programmato per eseguire operazioni particolari conformi a istruzioni da software di programma. Piattaforma di calcolo 100, come raffigurata in Fig. 1, à ̈ meramente un esempio, ed l'ambito del trovato rivendicato non à ̈ limitato a questo proposito. Per una o più forme d'esecuzione, una piattaforma di calcolo può comprendere uno qualsiasi di una ampia gamma di dispositivi digitali elettronici, comprendenti, ma non limitati a, elaboratori elettronici da tavolo o elaboratori elettronici portatili, televisori ad alta definizione, registratori o lettori di disco versatile digitale (DVD), console di gioco, ricevitori di televisione via satellite, telefoni cellulari, assistenti digitali personali, dispositivi di riproduzione o registrazione audio o video mobili, e così via. Inoltre, se non diversamente specificato, il processo come descritto qui, con riferimento ai diagrammi di flusso o altro, può essere eseguito o controllato, in tutto od in parte, da una piattaforma di calcolo. Per forme d'esecuzione di esempio descritte qui, la piattaforma di calcolo 100 può comprendere un telefono cellulare o smartphone, anche se ancora una volta, l'ambito del trovato rivendicato non à ̈ così limitato.
[0017] Come menzionato sopra, per una forma d'esecuzione, processore 110 può essere accoppiato a memoria 130 per mezzo di una interconnessione parallela 120. In un'altra forma d'esecuzione di esempio, interconnessione 120 può comprendere una interfaccia periferica seriale (SPI). L'ambito del trovato rivendicato non à ̈ limitato ad un qualsiasi tipo particolare di interconnessione tra un processore ed un dispositivo di memoria. Inoltre, anche se il processore 110 à ̈ raffigurato come direttamente connesso con memoria 130, altre forme d'esecuzione nell'ambito del trovato rivendicato possono indirettamente accoppiare un processore 110 con memoria 130.
[0018] Come menzionato in precedenza, memoria 130 può comprendere un dispositivo di memoria flash, per una forma d'esecuzione di esempio. Memoria flash può essere caratterizzata, almeno in parte da una capacità di essere elettricamente cancellabile o programmabile, e può essere utilizzata in una ampia gamma di tipologie di dispositivi elettronici, comprendenti, ma non limitati a, fotocamere digitali, telefoni cellulari, assistenti digitali personali, dispositivi di navigazione portatili, lettori di musica portatili, elaboratori elettronici portatili, elaboratori elettronici da tavolo, eccetera, per nominare solo alcuni esempi. Inoltre, dispositivi di memoria flash possono comprendere interfacce di dati parallele od interfacce seriali. Interfacce parallele, almeno in alcuni casi, possono consentire una produttività di dati relativamente buona dovuta almeno in parte a numeri maggiori di terminali di ingresso/uscita. Interfacce seriali, d'altro canto, possono fornire costi ridotti dovuti almeno in parte a numeri ridotti di terminali di ingresso/uscita. Naturalmente, il trovato rivendicato non à ̈ limitato in ambito a questo riguardo.
[0019] Anche se forme d'esecuzione di esempio descritte qui descrivono la memoria come comprendente dispositivi di memoria flash, l'ambito del trovato rivendicato non à ̈ limitato a questo proposito ed altre forme d'esecuzione possono utilizzare altri tipi di dispositivi di memoria volatile o non volatile. Per esempio, una o più forme d'esecuzione possono comprendere memoria a sola lettura (ROM), memoria a cambiamento di fase (PCM), memoria ad accesso casuale dinamico (DRAM), eccetera. Inoltre, l'ambito del trovato rivendicato non à ̈ limitato ad un particolare tipo di memoria flash. Forme d'esecuzione in conformità con il trovato rivendicato possono comprendere memoria flash NOR, per nominare solo un esempio.
[0020] Secondo una forma d'esecuzione, uno o più registri di un dispositivo di memoria possono memorizzare segnali rappresentativi di dati od informazioni, come espressi da un particolare stato del dispositivo di memoria. Per esempio, un segnale elettronico rappresentativo di dati od informazioni può essere "memorizzato" in un registro in un dispositivo di memoria influenzando o cambiando uno stato di registri del dispositivo di memoria per rappresentare dati od informazioni come informazioni binarie (per esempio, uni o zeri, individualmente riferiti qui come "1" o "0"). In una particolare messa in opera, per esempio, un cambiamento di stato di registro per memorizzare un segnale rappresentativo di dati od informazioni può costituire una trasformazione di un dispositivo di memoria ad uno stato o proprietà differente.
[0021] Figura 2 à ̈ un diagramma a blocchi schematico che raffigura una forma d'esecuzione di esempio di un dispositivo di memoria non volatile 200 che comprende una matrice di memoria non volatile 250. Dispositivo di memoria 200 può comprendere un dispositivo di memoria flash NOR, anche se ancora una volta, l'ambito del trovato rivendicato richiesto non à ̈ limitato a questo riguardo. Per una o più forme d'esecuzione, memoria non volatile 200 può comprendere un dispositivo di controllo 230, un dispositivo di controllo 260, ed un buffer di ingresso/uscita 210. Inoltre, memoria 200 per una forma d'esecuzione può essere partizionata in un primo dominio di clock 201 ed un secondo dominio di clock 202. Per una forma d'esecuzione, primo dominio di clock 201 può comprendere un dominio di clock veloce e secondo dominio di clock 202 può comprendere un dominio di clock lento. Come menzionato in precedenza, le etichette di "veloce" e "lento" non denotano un qualsiasi valore o intervallo di valori particolare per frequenze di clock, ma piuttosto sono intese denotare che il primo dominio di clock 201 funziona ad una frequenza di clock più elevata di quella del secondo dominio di clock 202.
[0022] Per una o più forme d'esecuzione, dispositivo di controllo 230 può essere situato in primo dominio di clock 201, e dispositivo di controllo 260 può essere situato in secondo dominio di clock 202. In una forma d'esecuzione, dispositivo di controllo 230 può ricevere uno o più segnali di controllo dal processore 110 e può generare uno o più segnali di controllo interno per effettuare una qualsiasi di un certo numero di operazioni, comprendenti operazioni di lettura e/o scrittura, con cui processore 110 può accedere ad informazioni o banchi all'interno della matrice di memoria 250, per esempio. Inoltre, dispositivo di controllo 230 può generare ulteriormente uno o più segnali di controllo interno per effettuare accessi ad uno o più registri. In una forma d'esecuzione, dispositivo di controllo 230 può comunicare con dispositivo di controllo 260 per effettuare operazioni. Come utilizzato qui, il termine "dispositivo di controllo" à ̈ inteso comprendere qualsiasi circuiteria o logica coinvolta nella gestione od esecuzione di sequenze di comando quando si riferiscono a dispositivi di memoria. Dispositivo di controllo 230 o dispositivo di controllo 260 possono inoltre individualmente comprendere un processore che può eseguire istruzioni per compiere una qualsiasi di un certo numero di funzioni correlate a memoria 200. In una forma d'esecuzione, dispositivo di controllo 260 può effettuare trasferimenti di informazioni tra registri 222, 224 e 226 e registri 240. Inoltre, dispositivo di controllo 260 può effettuare accessi a matrice di memoria 250. Naturalmente, forme d'esecuzione descritte qui per memoria non volatile 200 sono meramente esempi, ed il trovato rivendicato non à ̈ limitato in ambito a questo riguardo.
[0023] Memoria non volatile 200 per questa forma d'esecuzione di esempio può ricevere uno o più segnali di indirizzo, dati o controllo dal processore 110 su interconnessione 120. Come viene spiegato in maggior dettaglio più avanti, processore 110, per esempio, può trasmettere uno o più segnali che rappresentano un comando di accesso di memoria a memoria non volatile 200. Un comando di accesso a memoria può comprendere un indirizzo consegnato tramite interconnessione 120 e ricevuto in buffer di ingresso/uscita 210. Processore 110 può eseguire un agente software di qualche genere, che può richiedere accesso a matrice di memoria 250. Un agente software, per esempio, può essere eseguito da istruzioni memorizzate in un banco di codice di matrice di memoria 250. Processore 110 può caricare istruzioni per l'agente software e può inoltre eseguire le istruzioni caricate. Una o più delle istruzioni dall'agente software possono comprendere una richiesta per un accesso di lettura o scrittura ad una area di banco di dati o informazioni di matrice di memoria 250.
[0024] Inoltre, per una forma d'esecuzione, processore 110 può eseguire un agente software di qualche genere che può richiedere accesso ad un registro di indice 222, un registro di scrittura di dati od informazioni 224, od un registro di lettura di dati od informazioni 226 messi in opera nel primo dominio del clock 201. L'agente software può inoltre richiedere accesso ad una pluralità di registri 240, implementati in secondo dominio di clock 202.
[0025] Figura 3 à ̈ un diagramma a blocchi schematico che raffigura registro di indice 222, registro di scrittura di dati od informazioni 224, e registro di lettura di dati od informazioni 226 da memoria 200. Inoltre vengono raffigurati in Fig. 3 registri 240, numerati da 0 a N-1. Come visto in Fig. 2, registro di indice 222, registro di scrittura 224, e registro di lettura 226 sono parte del primo dominio di clock 201, e come tali sono sincronizzati da un segnale di clock veloce (CLKFAST) 211. Come menzionato in precedenza, il termine "veloce" come utilizzato in connessione con un dominio di clock o con un segnale di clock non à ̈ inteso denotare una qualsiasi particolare frequenza di clock od intervallo di frequenze. Piuttosto, il termine "veloce" viene inteso meramente denotare che un dominio di clock veloce od un segnale di clock veloce ha una frequenza di clock che à ̈ più grande di quella per un dominio di clock "lento" od un segnale di clock lento. Similmente, il termine "lento" come utilizzato in connessione con un segnale di clock od un dominio di clock viene inteso denotare meramente che un dominio di clock lento o un segnale di clock lento ha una frequenza di clock che à ̈ più bassa di quella di un dominio di clock veloce o un segnale di clock veloce. Come ulteriormente raffigurato in Fig. 2, registri 240 sono parte del secondo dominio di clock 202, e come tali sono sincronizzati da un segnale di clock lento (CLKSLOW) 212.
[0026] In una forma d'esecuzione, si può fare accesso ad uno o più di registri 240, per esempio da processore 210, almeno in parte scrivendo un valore di indice in registro di indice 222. Il valore di indice può comprendere un puntatore ad uno o più di registri 240. Per una forma d'esecuzione, per accedere a più di uno di registri 240, registro di indice 222 può essere partizionato in più di un segmento in modo tale che registro di indice possa memorizzare più di un valore di indice che può servire come più di un puntatore a, rispettivamente, più di uno di registri 240. Tuttavia, il trovato rivendicato non à ̈ limitato come ambito di protezione a questo riguardo.
[0027] Per un comando di scrittura di registro di esempio, si consideri una situazione in cui il processore 110 effettua un accesso di scrittura a Registro 2 di registri 240. Processore 110 può scrivere informazioni destinate per Registro 2 a registro di scrittura 224 e può scrivere un valore di indice che identifica Registro 2 a registro di indice 222. Per una forma d'esecuzione, dispositivo di controllo 260 può trasferire informazioni memorizzate nel registro di scrittura 224 ad un registro identificato dal valore di indice memorizzato in registro di indice 222, che, per il presente esempio, à ̈ Registro 2. In questa maniera, un accesso di scrittura ad un registro implementato in un dominio di clock lento (Registro 2 in questo esempio) può essere compiuto scrivendo valori in registri implementati in un dominio di clock veloce (registro di indice 222 e registro di scrittura di dati 224 in questo esempio). Criteri di prestazioni possono essere soddisfatti, permettendo accessi di registro ad indice e registri situati nel dominio di clock veloce, e numeri più grandi di registri possono essere supportati implementando quei registri nel dominio di clock più lento. Pertanto, possono essere realizzati potenziali benefici di accesso di registro veloce e numeri più grandi di registri.
[0028] Similmente, per un comando di lettura di registro di esempio, si consideri una situazione in cui processore 110 effettua un accesso di lettura da Registro 1 di registri 240. Processore 110 può scrivere un valore di indice che identifica Registro 1 in registro di indice 222. Come parte dell’esecuzione di un comando di scrittura emesso da processore 110, dispositivo di controllo 130 può trasferire informazioni memorizzate in un registro identificato da un valore di indice memorizzato in registro di indice 222, che in questo esempio à ̈ Registro 1, a registro di lettura 226, ed informazioni di segnale memorizzate in registro di lettura 226 possono essere fornite a processore 110. Naturalmente, questi sono meramente accessi di scrittura e lettura di registro di esempio, ed il trovato rivendicato non à ̈ limitato in ambito di protezione a questo riguardo. Similmente, organizzazione e configurazione di registri raffigurati in Fig. 3 à ̈ meramente un esempio, e di nuovo, il trovato rivendicato non à ̈ limitato in ambito di protezione a questo riguardo.
[0029] Figura 4 à ̈ un diagramma a blocchi schematico che raffigura una forma d'esecuzione di esempio di una configurazione di registro per accesso di registro indicizzato per dispositivo di memoria non volatile di esempio 200. L'esempio di Fig. 4 differisce dall'esempio raffigurato in Fig. 3 in svariate maniere. In Fig. 4, registri 240 vengono partizionati in M gruppi. In una forma d'esecuzione, gruppi individuali comprendono N registri. Tuttavia, anche se l'esempio di Fig. 4 raffigura numeri uguali di registri in M gruppi individuali, il trovato rivendicato non à ̈ limitato in ambito di protezione a questo riguardo. In una o più altre forme d'esecuzione, gruppi individuali possono comprendere numeri di registri differenti. Per esempio, gruppo 1 può comprendere tre registri, e gruppo 0 può comprendere due registri. Tuttavia, questi sono meramente esempi, ed il trovato rivendicato non à ̈ limitato in ambito a questo riguardo.
[0030] Inoltre, per l'esempio di Fig. 4, registro di indice 222 può essere partizionato in due campi. Forme d'esecuzione in conformità con il trovato rivendicato possono comprendere uno o più campi. In una forma d'esecuzione, registro di indice 222 può comprendere un campo di identificazione (ID) di gruppo 401 ed un campo di ID di registro 402. Campo di ID di gruppo 401 può memorizzare un valore di ID di gruppo per identificare un gruppo tra M gruppi di registri 240. Campo di ID di registro 402 per una forma d'esecuzione può memorizzare un valore di ID di registro per identificare un registro particolare all'interno di un gruppo identificato da un campo di ID di gruppo. Inoltre, anche se l'esempio di Fig. 4 raffigura un singolo campo di ID di gruppo ed un singolo campo di ID di registro, il trovato rivendicato non à ̈ limitato in ambito a questo riguardo. Altre forme d'esecuzione di un registro di indice, in conformità con il trovato rivendicato possono comprendere più di un campo di ID di gruppo o più di un campo di ID di registro in modo tale che più di un gruppo o più di un registro possono essere identificati da un valore di indice memorizzato in un registro di indice, come registro di indice 222. In aggiunta, forme d'esecuzione in conformità con il trovato rivendicato possono comprendere più di un registro di indice. Inoltre, altre forme d'esecuzione possono incorporare tipi di campi addizionali per consentire di utilizzare accessi di registro indicizzato per una ampia gamma di scopi.
[0031] In una forma d'esecuzione, uno o più gruppi di registri possono essere utilizzati in un'operazione di sicurezza per definire un blocco di memoria protetta. Mentre svariati dettagli di uno schema di protezione di memoria sono ben conosciuti, una forma d'esecuzione di uno schema di accesso di registro indicizzato comprendente comandi di registro di sicurezza di scrittura o di registro di sicurezza di lettura può svolgere un ruolo nel fornire una o più aree protette di memoria. In una forma d'esecuzione, un registro di indici implementato in un dominio di clock veloce può essere partizionato in un campo di identificazione ed un campo di tipo di registro. Un registro di sicurezza può essere implementato in un dominio di clock lento, per una forma d'esecuzione. Inoltre, per una forma d'esecuzione, un valore di indice può essere partizionato in un valore di identificazione ed un valore di tipo di registro, in cui il valore di identificazione può comprendere un puntatore al registro di sicurezza. In aggiunta, per una forma d'esecuzione, possono essere eseguiti un comando di registro di sicurezza di scrittura od un comando di registro di sicurezza di lettura. Informazioni memorizzate in un registro di dati di scrittura implementato in un dominio di clock veloce possono essere scritte nel registro di sicurezza, almeno in parte in risposta a ricevere un codice di comando di registro di sicurezza di scrittura, ed informazioni memorizzate nel registro di sicurezza possono essere trasferite in un registro di dati di lettura almeno in parte in risposta a ricevere un codice di comando di registro di sicurezza di lettura, per una forma d'esecuzione. Inoltre, per una forma d'esecuzione, un registro di sicurezza può comprendere un registro di blocco di memoria protetta. Tuttavia, il trovato rivendicato non à ̈ limitato in ambito a questo riguardo.
[0032] Figura 5 à ̈ un diagramma di flusso che illustra una forma d'esecuzione di esempio di un processo per accesso di registro indicizzato per un dispositivo di memoria di esempio. Al blocco 510, un valore di indice può essere ricevuto in uno o più terminali di ingresso di un dispositivo di memoria. Come utilizzato qui, il termine "terminale di ingresso" à ̈ inteso comprendere non solamente terminali di solo ingresso, ma anche terminali di ingresso/uscita. Inoltre per una forma d'esecuzione, un dispositivo di memoria può comprendere un dispositivo di memoria flash di memoria a cambiamento di fase (PCM), anche se ancora una volta, il trovato rivendicato non à ̈ limitato a questo riguardo. Al blocco 520, un valore di indice può essere memorizzato in un primo registro del dispositivo di memoria. Il primo registro può essere implementato in un primo dominio di clock. Il valore di indice può identificare un secondo registro del dispositivo di memoria, in cui il secondo registro à ̈ implementato in un secondo dominio di clock. In una forma d'esecuzione, il primo dominio di clock può funzionare ad una frequenza di clock più elevata di una frequenza di clock per il secondo dominio di clock. In una forma d'esecuzione, il secondo registro può avere accesso attraverso il primo registro. Inoltre, in una forma d'esecuzione, il primo registro può memorizzare un valore di indice che può puntare alla posizione del secondo registro. Al blocco 530, può essere ricevuto un comando per accedere al secondo registro identificato dal valore di indice. In questa maniera, da una prospettiva a livello di sistema, un accesso al secondo registro situato in un dominio di clock lento funziona in un modo simile ad un accesso ad un registro in un dominio di clock veloce. Inoltre, dal momento che l'ultimo valore scritto a o letto da un registro in un dominio di clock lento può essere memorizzato in un registro di scrittura od uno di lettura, le operazioni di ricerca e correzione degli errori (debugging) possono essere migliorate, per una forma d'esecuzione. Forme d'esecuzione in conformità con il trovato rivendicato possono comprendere tutti, meno di, o più di blocchi 510 fino a 530. Inoltre, l’ordine dei blocchi da 510 fino a 530 à ̈ meramente un ordine di esempio, ed il trovato rivendicato non à ̈ limitato in ambito a questo riguardo.
[0033] Alcune porzioni della descrizione dettagliata comprese qui sono presentate in termini di algoritmi o rappresentazioni simboliche di operazioni su segnali digitali binari memorizzati all'interno di una memoria di un apparecchio specifico o dispositivo o piattaforma di calcolo a scopo speciale. Nel contesto di questa particolare descrizione, il termine apparecchio specifico o simili comprende un elaboratore elettronico a scopo generale una volta che esso à ̈ programmato per eseguire operazioni particolari in seguito ad istruzioni da software di programma. Descrizioni algoritmiche o rappresentazioni simboliche sono esempi di tecniche utilizzate dai tecnici del settore nell'elaborazione del segnale o tecniche correlate per comunicare la sostanza del loro lavoro ad altri tecnici del settore. Un algoritmo à ̈ qui, ed in generale, considerato essere una sequenza auto-coerente di operazioni o simili elaborazioni di segnale che portano ad un risultato desiderato. In questo contesto, operazioni od elaborazioni coinvolgono manipolazione fisica di grandezze fisiche. Tipicamente, anche se non necessariamente, tali grandezze possono assumere la forma di segnali elettrici o magnetici in grado di essere memorizzati, trasferiti, combinati, paragonati o altrimenti manipolati. È stato dimostrato conveniente a volte, principalmente per ragioni di uso comune, fare riferimento a segnali quali bit, dati, valori, elementi, simboli, caratteri, termini, numeri, cifre, o simili. Va inteso, tuttavia, che tutti questi termini o simili devono essere associati con grandezze fisiche appropriate e sono meramente etichette convenienti. Salvo dove diversamente specificato, come emerge dalla discussione qui, si consideri che lungo la descrizione frasi che utilizzano termini come "elaborazione", "di calcolo", "determinazione" o simili si riferiscono ad azioni o processi di uno specifico apparecchio, come un elaboratore elettronico per scopo speciale od un dispositivo di calcolo elettronico per scopo speciale simile. Nel contesto di questa descrizione, di conseguenza, un elaboratore elettronico per scopo speciale od un dispositivo di calcolo elettronico per scopo speciale simile à ̈ in grado di manipolare o trasformare segnali, tipicamente rappresentati come grandezze fisiche elettroniche o magnetiche all'interno di memorie, registri, o altri dispositivi di memorizzazione di informazioni, dispositivi di trasmissione o dispositivi di visualizzazione dell'elaboratore elettronico per scopo speciale o dispositivo di calcolo elettronico per scopo speciale simile.
[0034] Il riferimento lungo la descrizione ad "una forma d'esecuzione" può significare che una funzionalità, struttura o caratteristica particolare descritta in relazione ad un particolare forma d'esecuzione può essere compresa in almeno una forma d'esecuzione del trovato rivendicato. Pertanto, la comparsa della frase "in una forma d'esecuzione" o "una forma d'esecuzione" in svariati punti lungo la descrizione non à ̈ necessariamente intesa fare riferimento alla stessa forma d'esecuzione o ad una qualsiasi forma d'esecuzione particolare descritta. Inoltre, va inteso che particolari funzionalità, strutture, o caratteristiche descritte possono essere combinate in vario modo in una o più forme d'esecuzione. In generale, naturalmente, questi ed altri termini possono variare in funzione del particolare contesto di utilizzo. Di conseguenza, il particolare contesto della descrizione o l'utilizzo di questi termini può fornire indicazioni utili riguardanti le estrapolazioni che devono essere tratte per quel contesto.
[0035] Allo stesso modo, i termini, "e" ed "o" come utilizzati qui possono comprendere una varietà di significati che sono anche attesi dipendere almeno in parte dal contesto in cui tali termini vengono utilizzati. Tipicamente "o" se utilizzato per associare un elenco, come A, B o C, à ̈ inteso significare A, B e C, utilizzato qui in senso inclusivo, così come A, B o C, utilizzato qui in senso esclusivo. In aggiunta, il termine "uno o più" come utilizzato qui può essere utilizzato per descrivere qualsiasi funzionalità, struttura, o caratteristica al singolare o può essere utilizzato per descrivere una qualche combinazione di funzionalità, strutture o caratteristiche. Anche se, dovrebbe essere notato che ciò à ̈ meramente un esempio illustrativo e il trovato rivendicato non à ̈ limitato a questo esempio.
[0036] Nella descrizione precedente, sono stati descritti svariati aspetti del trovato rivendicato. A scopo di spiegazione, sistemi o configurazioni sono stati esposti per fornire una comprensione dell'argomento rivendicato. Tuttavia, il trovato rivendicato può essere messo in pratica senza questi dettagli specifici. In altri casi, funzionalità ben conosciute sono state omesse o semplificate in modo da non oscurare il trovato rivendicato. Anche se alcune funzionalità sono state illustrate e descritte qui, molte modifiche, sostituzioni, cambiamenti o equivalenti ora si presenteranno a colore esperti nel settore. Di conseguenza va inteso che le rivendicazioni allegate sono intese coprire tutte tali modifiche o cambiamenti che ricadono all'interno della vera essenza del trovato rivendicato.

Claims (27)

  1. RIVENDICAZIONI 1) Metodo, che comprende: ricevere un valore di indice in uno o più terminali di ingresso di un dispositivo di memoria; memorizzare il valore di indice in un primo registro del dispositivo di memoria, il primo registro implementato in un primo dominio di clock, il valore di indice identificando un secondo registro del dispositivo di memoria, il secondo registro implementato in un secondo dominio di clock, e ricevere un comando per accedere al secondo registro identificato dal valore di indice.
  2. 2) Metodo secondo la rivendicazione 1), in cui detto primo dominio di clock viene fatto funzionare ad una frequenza di clock più grande di quella del secondo dominio di clock.
  3. 3) Metodo secondo la rivendicazione 1), in cui detta ricezione del comando comprende ricevere uno di un comando di registro di scrittura od un comando di registro di lettura, il metodo comprendendo inoltre: scrivere informazioni memorizzate in un registro di scrittura di dati nel dispositivo di memoria al secondo registro identificato, almeno in parte in risposta a detta ricezione del comando di registro di scrittura; e trasferire informazioni memorizzate nel secondo registro identificato al registro di lettura di dati almeno in parte in risposta alla ricezione del comando di lettura di dati.
  4. 4) Metodo secondo la rivendicazione 3), in cui il registro di scrittura di dati ed il registro di lettura di dati sono implementati nel primo dominio di clock.
  5. 5) Metodo secondo la rivendicazione 1), in cui il primo registro à ̈ partizionato in un campo di identificazione di gruppo ed un campo di identificazione di registro, in cui un valore di identificazione di gruppo memorizzato nel campo di identificazione del gruppo identifica un gruppo di registri implementati nel secondo dominio di clock da uno o più gruppi di registri implementati nel secondo dominio di clock, ed in cui un valore di identificazione di registro memorizzato nel campo di identificazione di registro indica il secondo registro dal gruppo di registri identificato.
  6. 6) Metodo secondo la rivendicazione 1), in cui detto primo registro comprende un registro di indice partizionato in un campo di identificazione ed un campo di tipo di registro, in cui il secondo registro comprende un registro di sicurezza, in cui il valore di indice à ̈ partizionato in un valore di identificazione ed un valore di tipo di registro, in cui il valore di identificazione comprende un puntatore al registro di sicurezza, ed in cui detta ricezione del comando comprende ricevere uno di un comando di registro di sicurezza di scrittura od un comando di registro di sicurezza di lettura.
  7. 7) Metodo secondo la rivendicazione 6), comprendente inoltre: scrivere informazioni memorizzate in un registro di dati di scrittura nel dispositivo di memoria al registro di sicurezza almeno in parte in risposta a detta ricezione del comando di registro di sicurezza di scrittura; e trasferire informazioni memorizzate nel registro di sicurezza al registro di dati di lettura almeno in parte in risposta alla ricezione del comando di registro di sicurezza di lettura.
  8. 8) Metodo secondo la rivendicazione 7), in cui il registro di sicurezza comprende un registro di blocco di memoria protetto.
  9. 9) Metodo secondo la rivendicazione 1), in cui il dispositivo di memoria comprende uno o più di un dispositivo di memoria ad accesso casuale dinamico, un dispositivo di memoria flash NAND, un dispositivo di memoria flash NOR, e un dispositivo di memoria flash di memoria a cambiamento di fase.
  10. 10) Apparecchiatura, comprendente: uno o più terminali di ingresso per ricevere un valore di indice ed un codice di comando; un primo registro per memorizzare il valore di indice, il primo registro implementato in un primo dominio di clock, il valore di indice per identificare un secondo registro implementato in un secondo dominio di clock, il codice di comando comprendendo un codice di comando di accesso di secondo registro; e un dispositivo di controllo per accedere al secondo registro identificato dal valore di indice, almeno in parte in risposta alla ricezione del codice di comando di accesso di secondo registro.
  11. 11) Apparecchiatura secondo la rivendicazione 10), detto primo dominio di clock da far funzionare ad una frequenza di clock superiore a quella del secondo dominio di clock.
  12. 12) Apparecchiatura secondo la rivendicazione 10), in cui detto codice di comando di accesso di secondo registro comprende uno di un codice di comando di registro di scrittura od un codice di comando di registro di lettura, il dispositivo di controllo inoltre per scrivere informazioni memorizzate in un registro di scrittura di dati al secondo registro identificato almeno in parte in risposta ad una esecuzione del codice di comando di registro di scrittura, ed il dispositivo di controllo per trasferire informazioni memorizzate nel secondo registro identificato ad un registro di lettura di dati almeno in parte in risposta ad una esecuzione del codice di comando di accesso di secondo registro.
  13. 13) Apparecchiatura secondo la rivendicazione 12), in cui il registro di scrittura di dati e il registro di lettura di dati sono implementati nel primo dominio di clock.
  14. 14) Apparecchiatura secondo la rivendicazione 10), in cui il primo registro à ̈ partizionato in un campo di identificazione di gruppo ed un campo di identificazione di registro, un valore di identificazione di gruppo memorizzato nel campo di identificazione di gruppo per identificare un gruppo di registri implementati nel secondo dominio di clock da uno o più gruppi di registri implementati nel secondo dominio di clock, ed un valore di identificazione di registro memorizzato nel campo di identificazione di registro per indicare il secondo registro dal gruppo di registri identificato.
  15. 15) Apparecchiatura secondo la rivendicazione 10), in cui detto primo registro comprende un registro di indice partizionato in un campo di identificazione ed un campo di tipo di registro, in cui il secondo registro comprende un registro di sicurezza, in cui il valore di indice à ̈ partizionato in un valore di identificazione ed un valore di tipo di registro, in cui il valore di identificazione comprende un puntatore al registro di sicurezza, e in cui il codice di comando comprende uno di un codice di comando di registro di sicurezza di scrittura od un codice di comando di registro di sicurezza di lettura.
  16. 16) Apparecchiatura secondo la rivendicazione 15), comprendente i noltre un registro di scrittura di dati ed un registro di lettura di dati, il dispositivo di controllo per scrivere informazioni memorizzate nel registro di scrittura di dati al registro di sicurezza almeno in parte in risposta ad una esecuzione del codice di comando di registro di sicurezza di scrittura, e per trasferire informazioni memorizzate nel registro di sicurezza al registro di lettura di dati almeno in parte in risposta ad una esecuzione del codice di comando di registro di sicurezza di lettura.
  17. 17) Apparecchiatura secondo la rivendicazione 16, in cui il registro di sicurezza comprende un registro di blocco di memoria protetta.
  18. 18) Apparecchiatura secondo la rivendicazione 10, comprendente uno o più di un dispositivo di memoria ad accesso dinamico casuale, un dispositivo di memoria flash NAND, un dispositivo di memoria flash NOR, e un dispositivo di memoria flash di memoria a cambiamento di fase.
  19. 19) Sistema comprendente: un processore; e un dispositivo di memoria accoppiato al processore, il dispositivo di memoria comprendendo: uno o più terminali di ingresso per ricevere un valore di indice ed un codice di comando trasmesso dal processore; un primo registro per memorizzare il valore di indice, il primo registro implementato in un primo dominio di clock, il valore di indice per identificare un secondo registro implementato in un secondo dominio di clock, il codice di comando comprendendo un codice di comando di accesso di secondo registro; e un dispositivo di controllo per accedere al secondo registro identificato dal valore di indice, almeno in parte in risposta alla ricezione del codice di comando di accesso di secondo registro.
  20. 20) Sistema secondo la rivendicazione 19), detto primo dominio di clock da far funzionare ad una frequenza di clock superiore a quella del secondo dominio di clock.
  21. 21) Sistema secondo la rivendicazione 20), in cui detto codice di comando di accesso di secondo registro comprende uno di un codice di comando di registro di scrittura o di un codice di comando di registro di lettura, il dispositivo di controllo inoltre per scrivere informazioni memorizzate in un registro di scrittura di dati al secondo registro identificato almeno in parte in risposta ad una esecuzione del codice di comando di registro di scrittura, e il dispositivo di controllo per trasferire informazioni memorizzate nel secondo registro identificato ad un registro di lettura di dati almeno in parte in risposta ad una esecuzione del codice di comando di accesso di secondo registro.
  22. 22) Sistema secondo la rivendicazione 19), in cui il registro di scrittura di dati ed il registro di lettura di dati sono implementati nel primo dominio di clock.
  23. 23) Sistema secondo la rivendicazione 19), in cui il primo registro à ̈ partizionato in un campo di identificazione di gruppo ed un campo di identificazione di registro, un valore di identificazione di gruppo memorizzato nel campo di identificazione di gruppo per identificare un gruppo di registri implementati nel secondo dominio di clock da uno o più gruppi di registri implementati nel secondo dominio di clock, ed un valore di identificazione di registro memorizzato nel campo di identificazione di registro per indicare il secondo registro dal gruppo di registri identificato.
  24. 24) Sistema secondo la rivendicazione 19), in cui detto primo registro comprende un registro di indice partizionato in un campo di identificazione ed un campo di tipo di registro, in cui il secondo registro comprende un registro di sicurezza, in cui il valore di indice à ̈ partizionato in un valore di identificazione ed un valore di tipo di registro, in cui il valore di identificazione comprende un puntatore al registro di sicurezza, e in cui il codice di comando comprende uno di un codice di comando di registro di sicurezza di scrittura o un codice di comando di registro di sicurezza di lettura.
  25. 25) Sistema secondo la rivendicazione 24), il dispositivo di memoria ulteriormente comprendendo un registro di scrittura di dati ed un registro di lettura di dati, il dispositivo di controllo per scrivere informazioni memorizzate nel registro di scrittura di dati al registro di sicurezza almeno in parte in risposta all’esecuzione del codice di comando di registro di sicurezza di scrittura, e per trasferire informazioni memorizzate nel registro di sicurezza al registro di lettura di dati almeno in parte in risposta all’esecuzione del codice di comando di registro di sicurezza di lettura.
  26. 26) Sistema secondo la rivendicazione 25), in cui il registro di sicurezza comprende un blocco di memoria protetta.
  27. 27) Sistema secondo la rivendicazione 19), in cui il dispositivo di memoria comprende uno o più di un dispositivo di memoria ad accesso dinamico casuale, un dispositivo di memoria flash NAND, un dispositivo di memoria flash NOR, e un dispositivo di memoria flash di memoria a cambiamento di fase.
ITMI2010A000761A 2010-04-30 2010-04-30 Dispositivo di memoria ad accesso di registro indicizzato IT1399916B1 (it)

Priority Applications (8)

Application Number Priority Date Filing Date Title
ITMI2010A000761A IT1399916B1 (it) 2010-04-30 2010-04-30 Dispositivo di memoria ad accesso di registro indicizzato
US12/916,421 US8539189B2 (en) 2010-04-30 2010-10-29 Indexed register access for memory device
DE102011075023A DE102011075023A1 (de) 2010-04-30 2011-04-29 Indexierter Registerzugriff für einen Speicherbaustein
TW100115189A TWI444891B (zh) 2010-04-30 2011-04-29 用於記憶體裝置之索引暫存器存取
KR1020110041698A KR101266580B1 (ko) 2010-04-30 2011-05-02 메모리 디바이스에 대한 인덱스된 레지스터 액세스
JP2011102875A JP5500457B2 (ja) 2010-04-30 2011-05-02 メモリデバイスに対するインデックスレジスタアクセス
CN201110115893.0A CN102324246B (zh) 2010-04-30 2011-05-03 用于存取位于存储器装置中的寄存器的方法、设备及系统
US14/027,088 US8832392B2 (en) 2010-04-30 2013-09-13 Indexed register access for memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ITMI2010A000761A IT1399916B1 (it) 2010-04-30 2010-04-30 Dispositivo di memoria ad accesso di registro indicizzato

Publications (2)

Publication Number Publication Date
ITMI20100761A1 true ITMI20100761A1 (it) 2011-10-31
IT1399916B1 IT1399916B1 (it) 2013-05-09

Family

ID=43037067

Family Applications (1)

Application Number Title Priority Date Filing Date
ITMI2010A000761A IT1399916B1 (it) 2010-04-30 2010-04-30 Dispositivo di memoria ad accesso di registro indicizzato

Country Status (7)

Country Link
US (2) US8539189B2 (it)
JP (1) JP5500457B2 (it)
KR (1) KR101266580B1 (it)
CN (1) CN102324246B (it)
DE (1) DE102011075023A1 (it)
IT (1) IT1399916B1 (it)
TW (1) TWI444891B (it)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011075023A1 (de) 2010-04-30 2012-03-01 Micron Technology, Inc. Indexierter Registerzugriff für einen Speicherbaustein

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102637453B (zh) * 2012-02-17 2015-05-06 北京时代全芯科技有限公司 一种包括串行输入输出接口的相变存储器
US9424442B2 (en) * 2013-11-27 2016-08-23 Huawei Technologies Co., Ltd. Nonvolatile memory and electronic device
CN103631732B (zh) * 2013-11-27 2016-09-07 华为技术有限公司 非易失存储器及电子设备
US9934831B2 (en) * 2014-04-07 2018-04-03 Micron Technology, Inc. Apparatuses and methods for storing and writing multiple parameter codes for memory operating parameters
TWI619023B (zh) * 2016-11-30 2018-03-21 瑞昱半導體股份有限公司 記憶體控制電路及其方法
CN108053795B (zh) * 2017-12-13 2020-07-10 合肥京东方光电科技有限公司 一种覆晶薄膜电路板、显示装置和信号处理方法
US10622065B2 (en) * 2018-09-12 2020-04-14 Micron Technology, Inc. Dedicated commands for memory operations
CN109558335B (zh) * 2018-10-17 2020-05-12 上海移芯通信科技有限公司 一种基于Nor Flash存储器的嵌入式系统的文件存储格式
WO2020128547A1 (en) * 2018-12-21 2020-06-25 Micron Technology, Inc. Method and device to ensure a secure memory access
CN112036103B (zh) * 2020-09-01 2024-03-08 深圳市傲立电子有限公司 一种从快时钟域跨慢时钟域处理多比特数据的装置及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134155A (en) * 1998-09-17 2000-10-17 National Semiconductor Corporation Synchronized circuit for coordinating address pointers across clock domains
US20070094460A1 (en) * 2000-08-25 2007-04-26 Stmicroelectronics S.A. DRAM control circuit
US20070186124A1 (en) * 2006-02-03 2007-08-09 Martin Streibl Data handover unit for transferring data between different clock domains

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04106793A (ja) * 1990-08-28 1992-04-08 Citizen Watch Co Ltd メモリインタフェース回路
JPH05290589A (ja) * 1992-04-03 1993-11-05 Nippon Steel Corp 半導体集積回路
US5509134A (en) * 1993-06-30 1996-04-16 Intel Corporation Method and apparatus for execution of operations in a flash memory array
JPH07307096A (ja) * 1994-05-13 1995-11-21 Fujitsu Ltd 半導体補助記憶装置
JPH11328084A (ja) * 1998-05-18 1999-11-30 Hitachi Ltd ディスク装置のホストインターフェース回路およびディスク装置
JP4406988B2 (ja) * 1999-03-29 2010-02-03 ソニー株式会社 不揮発性記録媒体、記録方法、記録装置
JP3882459B2 (ja) * 1999-04-07 2007-02-14 ソニー株式会社 メモリ装置、データ処理装置、データ処理システムおよびデータ処理方法
US20060075395A1 (en) * 2004-10-01 2006-04-06 Lee Charles C Flash card system
JP3784229B2 (ja) * 2000-01-21 2006-06-07 シャープ株式会社 不揮発性半導体記憶装置およびそれを用いたシステムlsi
JP2002015584A (ja) * 2000-06-29 2002-01-18 Sanyo Electric Co Ltd 不揮発性メモリのリードプロテクト回路
FR2813427B1 (fr) * 2000-08-25 2002-11-29 St Microelectronics Sa Circuit de commande d'une memoire dram
JP2003242474A (ja) 2002-02-18 2003-08-29 Toshiba Corp 非接触型icカード
JP2003242470A (ja) 2002-02-21 2003-08-29 Sony Corp 外部接続機器及びホスト機器
GB0204144D0 (en) 2002-02-22 2002-04-10 Koninkl Philips Electronics Nv Transferring data between differently clocked busses
JP3969240B2 (ja) * 2002-08-02 2007-09-05 ソニー株式会社 半導体記憶装置
JP4256198B2 (ja) * 2003-04-22 2009-04-22 株式会社東芝 データ記憶システム
US7139864B2 (en) * 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
FR2869700B1 (fr) * 2004-05-03 2006-08-18 St Microelectronics Sa Gestion de registres indexes dans un systeme sur une puce
JP4956922B2 (ja) * 2004-10-27 2012-06-20 ソニー株式会社 記憶装置
JP2006202412A (ja) * 2005-01-20 2006-08-03 Sharp Corp 半導体記憶装置
JP2007115382A (ja) * 2005-10-24 2007-05-10 Renesas Technology Corp 半導体集回路、記憶装置、及び制御プログラム
US7574611B2 (en) * 2005-11-28 2009-08-11 Atmel Corporation Command decoder for microcontroller based flash memory digital controller system
JP4434171B2 (ja) * 2006-04-26 2010-03-17 Tdk株式会社 メモリコントローラ及びフラッシュメモリシステム
JP4153535B2 (ja) * 2006-05-30 2008-09-24 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法
JP4991320B2 (ja) * 2007-01-12 2012-08-01 株式会社東芝 ホスト装置およびメモリシステム
JP2008181203A (ja) * 2007-01-23 2008-08-07 Sony Corp 記憶装置およびコンピュータシステム、並びに記憶装置の管理方法
JP2009059434A (ja) * 2007-08-31 2009-03-19 Toshiba Corp 半導体集積回路
US8417893B2 (en) * 2008-02-04 2013-04-09 Apple Inc. Memory mapping techniques
IT1399916B1 (it) 2010-04-30 2013-05-09 Balluchi Dispositivo di memoria ad accesso di registro indicizzato

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134155A (en) * 1998-09-17 2000-10-17 National Semiconductor Corporation Synchronized circuit for coordinating address pointers across clock domains
US20070094460A1 (en) * 2000-08-25 2007-04-26 Stmicroelectronics S.A. DRAM control circuit
US20070186124A1 (en) * 2006-02-03 2007-08-09 Martin Streibl Data handover unit for transferring data between different clock domains

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011075023A1 (de) 2010-04-30 2012-03-01 Micron Technology, Inc. Indexierter Registerzugriff für einen Speicherbaustein

Also Published As

Publication number Publication date
DE102011075023A1 (de) 2012-03-01
TW201201099A (en) 2012-01-01
US20110271038A1 (en) 2011-11-03
JP2011243274A (ja) 2011-12-01
KR20110121594A (ko) 2011-11-07
CN102324246A (zh) 2012-01-18
US20140019702A1 (en) 2014-01-16
KR101266580B1 (ko) 2013-05-22
US8832392B2 (en) 2014-09-09
IT1399916B1 (it) 2013-05-09
TWI444891B (zh) 2014-07-11
JP5500457B2 (ja) 2014-05-21
US8539189B2 (en) 2013-09-17
CN102324246B (zh) 2014-12-24

Similar Documents

Publication Publication Date Title
ITMI20100761A1 (it) Dispositivo di memoria ad accesso di registro indicizzato.
CN1988034B (zh) 具有在端口间的数据发送模式的多径访问半导体存储器件
CN106445398B (zh) 一种基于新型存储器的嵌入式文件系统及其实现方法
US8904114B2 (en) Shared upper level cache architecture
US10802883B2 (en) Method, system, and device for near-memory processing with cores of a plurality of sizes
DE112015003397T5 (de) Vorrichtung, System und Verfahren zur Bestimmung von Vergleichsinformationen basierend auf Speicherdaten
US10389380B2 (en) Efficient data path architecture for flash devices configured to perform multi-pass programming
CN102859504B (zh) 复制数据的方法和系统以及获得数据副本的方法
CN103927270B (zh) 一种面向多个粗粒度动态可重构阵列的共享数据缓存装置及控制方法
CN108133732A (zh) 闪存芯片的性能测试方法、装置、设备及存储介质
TW201201018A (en) Memory banking system and method to increase memory bandwidth via parallel read and write operations
US20130054885A1 (en) Multiport memory element and semiconductor device and system including the same
CN104657328B (zh) 在移动设备之间共享存储器的方法和系统
US9021321B2 (en) Testing disk drives shared by multiple processors in a supercomputer complex
US8677078B1 (en) Systems and methods for accessing wide registers
CN108292265B (zh) 对高性能存储器的存储器管理
CN108664417B (zh) 一种目录更新方法及装置
US20150154124A1 (en) Secure data partition in nonvolatile memory systems
CN111899782A (zh) 一种测试方法、装置、电子设备及存储介质
US9734078B2 (en) Resetting memory locks in a transactional memory system
WO2012009843A1 (en) Virtual machine live migration with continual memory write monitor and send
CN100442251C (zh) 计算机设备
US8185671B2 (en) Technique for increasing control and status signal density in a fixed register address space
CN117632788A (zh) 在存储器装置处的同步请求处置
WO2015004570A1 (en) Method and system for implementing a dynamic array data structure in a cache line