BRPI0510494B1 - Storage device and hospital device - Google Patents
Storage device and hospital device Download PDFInfo
- Publication number
- BRPI0510494B1 BRPI0510494B1 BRPI0510494-7A BRPI0510494A BRPI0510494B1 BR PI0510494 B1 BRPI0510494 B1 BR PI0510494B1 BR PI0510494 A BRPI0510494 A BR PI0510494A BR PI0510494 B1 BRPI0510494 B1 BR PI0510494B1
- Authority
- BR
- Brazil
- Prior art keywords
- performance
- data
- storage device
- host
- memory
- Prior art date
Links
- 238000003860 storage Methods 0.000 title claims abstract description 90
- 239000004065 semiconductor Substances 0.000 claims abstract description 24
- 230000015654 memory Effects 0.000 claims description 123
- 238000012546 transfer Methods 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 2
- 230000014509 gene expression Effects 0.000 description 45
- 238000000034 method Methods 0.000 description 21
- 230000014759 maintenance of location Effects 0.000 description 9
- 238000007726 management method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 239000002279 physical standard Substances 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 101000824318 Homo sapiens Protocadherin Fat 1 Proteins 0.000 description 3
- 101000824299 Homo sapiens Protocadherin Fat 2 Proteins 0.000 description 3
- 102100022095 Protocadherin Fat 1 Human genes 0.000 description 3
- 102100022093 Protocadherin Fat 2 Human genes 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000007334 memory performance Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 101000807859 Homo sapiens Vasopressin V2 receptor Proteins 0.000 description 1
- 102100037108 Vasopressin V2 receptor Human genes 0.000 description 1
- LPQOADBMXVRBNX-UHFFFAOYSA-N ac1ldcw0 Chemical compound Cl.C1CN(C)CCN1C1=C(F)C=C2C(=O)C(C(O)=O)=CN3CCSC1=C32 LPQOADBMXVRBNX-UHFFFAOYSA-N 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000005291 magnetic effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2206/00—Indexing scheme related to dedicated interfaces for computers
- G06F2206/10—Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
- G06F2206/1014—One time programmable [OTP] memory, e.g. PROM, WORM
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
Abstract
dispositivo de armazenagem e aparelho hospedeiro. a presente invenção refere-se a um dispositivo de armazenagem inclui uma memória semicondutora que armazena dados. um controlador instrui a escrever dados para a memória semicondutora de acordo com uma requisição que o controlador recebe. um registro sustenta informação de classe de desempenho que mostra uma classe de desempenho requerido para permitir ao dispositivo de armazenagem demonstrar melhor desempenho que o dispositivo de armazenagem suporta de classes de desempenho especificadas de acordo com o desempenho.
Description
Relatório Descritivo da Patente de Invenção para "DISPOSITIVO DE ARMAZENAGEM E APARELHO HOSPEDEIRO".
Descrição Referência cruzada a pedidos relacionados Este pedido é baseado em, e reivindica o benefício de prioridade dos Pedidos de Patente japoneses anteriores n° 2004/204.028 depositado em 12 de julho de 2004; e n° 2004/342.275 depositado em 26 de novembro de 2004, cujos conteúdo de ambos é aqui com isto incorporado para referência.
Campo técnico A presente invenção é relativa a um dispositivo de armazenagem e um aparelho hospedeiro (aparelho eletrônico) que utiliza um dispositivo de armazenagem. Em particular, a presente invenção é relativa a um dispositivo de armazenagem tal como um dispositivo de armazenagem semicondutor não-volátil e um cartão de memória que o utiliza. Em adição, a presente invenção é relativa a um aparelho eletrônico tal como um aparelho de gravação; por exemplo, uma câmara de imagem digital parada e uma câmara de vídeo digital que tem embutido nela o dispositivo de armazenagem. Por exemplo, um dispositivo de armazenagem tal como um flash de barra-mento universal serial (USB) e aparelho eletrônico tal como um computador pessoal (PC) e um assistente digital pessoal (PDA) estão incluídos na categoria da presente invenção.
Fundamentos da Técnica Em anos recentes, um cartão de memória que tem uma memória semicondutora não-volátil embutida tornou-se de uso amplamente difundido como um dispositivo de armazenagem que armazena diversos tipos de informação digital, tais como dados de imagem e dados de música. Os dados da memória semicondutora não-volátil não correm o risco de serem perdidos mesmo se energia é desligada e podem ser reescritos. Uma memória flash™ NAND é freqüentemente utilizada como uma memória não-volátil (por exemplo, vera publicação JPN. PAT. APPLN. KOKAI n° 2003/30993).
Recentemente, a capacidade de memória da memória flash au- mentou com avanços na técnica de fabricar semicondutores.
Por exemplo, um dispositivo de armazenagem tal como cartão de memória que tem uma memória flash embutida é utilizado através de um aparelho hospedeiro. Neste caso, o aparelho hospedeiro controla diretamente a memória flash construída no dispositivo de armazenagem no caso convencional. Assim, o aparelho hospedeiro toma o tempo de programa da memória flash e pode predizer o desempenho da memória e tempo armazená-vel em certo nível a partir do tempo do programa.
Contudo, agora é muitas vezes o caso em que o dispositivo de armazenagem tem um controlador embutido; por esta razão o controle tor-nou-se complicado. Como resultado, é impossível predizer o desempenho da memória utilizando um cálculo simples. O parâmetro velocidade de transferência de um barramento que conecta o aparelho hospedeiro e o dispositivo de armazenagem é definido. Contudo, esta não é a velocidade real quando o aparelho hospedeiro escreve dados no dispositivo de armazenagem. Por esta razão a velocidade de transferência não funciona como um meio para identificar o desempenho.
Para predizer o desempenho de um dispositivo de armazenagem que inclui uma memória flash™ NAND, é requerido cálculo em combinação com um método de processamento de blocos pelo aparelho hospedeiro. Por esta razão é difícil determinar o desempenho utilizando apenas o dispositivo de armazenagem.
Conseqüentemente, é desejado fornecer um aparelho eletrônico que possa predizer de maneira simples o desempenho do dispositivo de armazenagem em um certo nível, mesmo se um dispositivo de armazenagem de grande capacidade é controlado através de um controlador, um método de predizer o desempenho, e um dispositivo de armazenagem.
Descrição da invenção De acordo com um primeiro aspecto da presente invenção, é fornecido um dispositivo de armazenagem que compreende: uma memória semicondutora que armazena dados; um controlador que instrui escrever dados para a memória semicondutora de acordo com uma solicitação que o controlador recebe; e uma informação de classe de desempenho de retenção de registrador que mostra uma classe de desempenho requerida para permitir ao dispositivo de armazenagem demonstrar o melhor desempenho que o dispositivo de armazenagem suporta, de classes de desempenho especificadas de acordo como desempenho.
De acordo com um segundo aspecto da presente invenção, é fornecido um aparelho hospedeiro que lê dados a partir de um dispositivo de armazenagem que armazena dados e informação de classe de desempenho que mostra uma classe de desempenho requerida para permitir ao dispositivo de armazenagem demonstrar o melhor desempenho que o dispositivo de armazenagem suporta de classes de desempenho especificadas de acordo como desempenho, o aparelho hospedeiro escrevendo dados para o dispositivo de armazenagem, uma classe de desempenho requerida para permitir ao aparelho hospedeiro demonstrar o melhor desempenho que o aparelho hospedeiro suporta das classes de desempenho que são estabelecidas para o aparelho hospedeiro.
Breve Descrição dos Desenhos A Figura 1 é um diagrama de blocos que mostra configuração de uma memória flash™ NAND de acordo com uma primeira modalidade da presente invenção; A Figura 2 é um diagrama de blocos que mostra a configuração de um dispositivo de armazenagem que tem memória embutida da primeira modalidade e um aparelho hospedeiro que utiliza o dispositivo de armazenagem; A Figura 3 é uma vista para explicar a divisão de área do dispositivo de armazenagem assumida pelo aparelho hospedeiro na primeira modalidade, e divisão de área de memória real no dispositivo de armazenagem; A Figura 4 é uma vista para explicar movimento de dados na primeira modalidade; A Figura 5 é uma vista para explicar a sincronização da operação de escrever ao utilizar um comando escrever em diversos blocos; A Figura 6 é uma vista que mostra um exemplo de uma curva de desempenho na primeira modalidade; A Figura 7 é uma vista para explicar a atualização do sistema de arquivo durante gravação em tempo real na primeira modalidade;
As Figuras 8A até 8C são vistas que mostram a seqüência escrever; A Figura 9 é uma vista em perspectiva que mostra a aparência do aparelho hospedeiro e dispositivo de armazenagem de acordo com a primeira modalidade; A Figura 10 é uma vista que mostra a classificação da curva de desempenho na primeira modalidade; A Figura 11 é uma tabela que mostra características de requisitos de cartão de cada classe; A Figura 12 é uma tabela que mostra condições de medição de características de requisito de cartão de cada classe; A Figura 13 é uma vista que mostra o conteúdo armazenado em um registrador de um cartão de memória SD™; A Figura 14 é uma vista que mostra classificação de AU com relação a uma área de cartão de memória na primeira modalidade; A Figura 15 é uma vista para explicar o conceito de um armaze-nador hospedeiro na primeira modalidade; A Figura 16 é uma vista que mostra o caso onde todas as RUs utilizadas são reunidas sobre a posição frontal de AU; A Figura 17 é uma vista que mostra configuração de um cartão de memória de acordo com uma segunda modalidade da presente invenção; A Figura 18 é uma tabela para explicar a alocação de sinal com relação a pinos de sinal no cartão de memória da segunda modalidade; A Figura 19 é um diagrama de blocos que mostra a configuração de hardware do cartão de memória da segunda modalidade; A Figura 20 é um diagrama de blocos que mostra a configuração de um registrador do cartão de memória da segunda modalidade; A Figura 21 é uma vista que mostra a configuração da célula de memória e do armazenador no cartão de memória da segunda modalidade; e A Figura 22 é uma tabela para explicar a alocação de sinal com relação a pinos de sinal de barramento SD em diversos modos de operação. Melhor modo de realizar a invenção Modalidades da presente invenção serão descritas abaixo com referência aos desenhos que acompanham. Estas modalidades não restringem a presente invenção.
Primeira modalidade A primeira modalidade é relativa a um dispositivo de armazenagem que tem um dispositivo de armazenagem semicondutor não-volátil embutido e um aparelho hospedeiro que utiliza o dispositivo de armazenagem. Γ11 Configuração do dispositivo de armazenagem e aparelho hospedeiro.
Na descrição a seguir, uma memória flash™ NAND é utilizada como um dispositivo de armazenagem semicondutor não-volátil embutido em um dispositivo de armazenagem utilizado para o aparelho hospedeiro de acordo com a primeira modalidade da presente invenção. A Figura 1 é um diagrama de blocos que mostra configuração de um dispositivo de armazenagem semicondutor (memória semicondutora) no caso de realizar o dispositivo de armazenagem semicondutor de acordo com a primeira modalidade que utiliza uma memória flash™ NAND.
Na Figura 1, um numeral de referência 11 indica um sistema de célula de memória. O sistema de célula de memória 11 é dotado de diversas linhas de palavras, linhas de portas selecionadas e linhas de bits (não mostrado). As diversas linhas de palavras e linhas de bits são conectadas a diversas células de memória (não mostrado). As diversas células de memória são divididas em diversos blocos, como descrito mais tarde. O sistema de célula de memória 11 é conectado a um circuito de retenção de dados 12 e circuito decodificador de fileira 13. O circuito de retenção de dados 12 compreende uma pluralidade de circuitos trava. O circuito decodificador de fileira 13 aciona de maneira seletiva diversas linhas de palavras e seleciona linhas de portas. O circuito de retenção de dados 12 retém de forma temporária dados lidos através da linha de bits em dados lidos a partir do sistema de célula de memória 11.0 circuito de retenção de dados 12 retém de maneira temporária dados escritos em dados escritos com relação ao sistema de célula de memória 11 e então os fornece para o sistema de célula de memória 11 através da linha de bits. O circuito de retenção de dados 12 é conectado ao armazenador de entrada/saída (armazenador l/O) 14 e circuito decodificador de coluna 15. Na leitura de dados, os dados lidos retidos no circuito de retenção de dados 12, isto é, apenas dados selecionados são lidos fora do dispositivo de armazenagem semicondutor de acordo com a saída do circuito decodificador de coluna 15. Na escrita de dados, dados escritos fornecidos de fora do dispositivo de armazenagem semicondutor através do armazenador do entrada/saída 14 são retidos por um circuito trava do circuito de retenção de dados 12, que é selecionado de acordo com a saída do circuito decodificador de coluna 15. O circuito decodificador de fileira 13 aciona de maneira seletiva as linhas de palavra precedentes e seleciona linhas de portas incluídas no sistema de célula de memória 11 em dados lidos e escritos. Fazendo assim, células de memória que correspondem a uma página do sistema de célula de memória 11 são selecionadas de maneira simultânea.
Uma trava de endereço 16 trava entrada de endereço, e então fornece endereço de fileira para o circuito decodificador de fileira 13 ao mesmo tempo que fornece um endereço da coluna para o circuito decodificador de coluna 15.
Uma trava de comando 17 recebe entrada de comando. A trava de comando 17 é conectada a um decodificador de comando 18. O decodificador de comando 18 decodifica o comando para dar saída a diversos sinais de controle. Com base nos sinais de controle de saída do decodificador de comando 18, as operações do circuito de retenção de dados 12, circuito decodificador de fileira 13, armazenador de entrada/saída 14, circuito decodificador de coluna 15 e trava de endereço 16, são controladas.
Na memória flash™ NAND, a trava de endereço e a trava de comando são conectadas ao armazenador de entrada/saída 14 (não mostrado). Assim, endereço e comando são fornecidos a partir de um pino de entrada/saída da memória flash™ NAND. O dispositivo de armazenagem semicondutor é dotado de um circuito gerador de alta voltagem e de voltagem intermediária (não mostrado) em adição aos circuitos. O circuito gerador de alta voltagem e de voltagem intermediária gera uma alta voltagem e voltagem intermediária fornecida para o circuito decodificador de fileira 13 e o sistema de célula de memória 11 em escrever e apagar dados. A Figura 2 mostra um dispositivo de armazenagem no qual a memória da Figura 1 é construída, e um aparelho hospedeiro que utiliza o dispositivo de armazenagem. O dispositivo de armazenagem 19 é um cartão de memória, por exemplo um cartão de memória SD™. A explicação do caso de utilizar o cartão de memória SD™ será feita mais tarde.
Como mostrado na Figura 2, uma memória flash (isto é, área de memória 21 na Figura 2) e um dispositivo controlador 22 para controlar a memória flash são embutidos no cartão de memória. A memória flash tem a configuração mostrada na Figura 1. O dispositivo controlador 22 inclui um registrador de informação de versão 23, um registrador de código de identificação de desempenho 24, e um registrador de parâmetro de desempenho 25. O registrador de informação de versão 23 retém informação de versão. A informação de inversão é utilizada para identificar uma versão do cartão de memória. O registrador de código de identificação de desempenho 24 retém um código de identificação de desempenho. O código de identificação de desempenho é utilizado para identificar um agrupamento de desempenho (classe de desempenho). O registrador de parâmetro de desempenho 25 retém um parâmetro de desempenho (descrito mais tarde) do dispositivo de armazenagem.
Quando o dispositivo de armazenagem 19 é conectado ao aparelho hospedeiro 20, o aparelho hospedeiro 20 controla um controlador hospedeiro embutido 26 utilizando um processador embutido 28 para fazer uma troca de dados com o dispositivo de armazenagem 19.
Para enviar dados a partir do aparelho hospedeiro 20, os dados são temporariamente mantidos em um armazenador hospedeiro embutido (memória armazenadora) 27, e daí em diante enviados para o dispositivo de armazenagem 19 através do controlador hospedeiro 26. Neste caso, o armazenador hospedeiro 27 pode armazenar variações de desempenho do dispositivo de armazenagem dependendo do tempo em algum nível. O armazenador hospedeiro 27 pode ser realizado usando parte de uma memória de sistema 29. Fazendo assim, não há necessidade de fornecer memória especial tal como o armazenador hospedeiro 27 e, em adição, é efetivo reservá-lo na memória do sistema 29, uma vez que um armazenador hospedeiro grande 27 é usualmente requerido. O aparelho hospedeiro 20 pode escrever dados utilizando o comando escrever em diversos blocos ao mesmo tempo (isto é, comando para escrever diversos blocos contínuos utilizando um comando escrever). Γ21 Definição de desempenho de padrões de cartão O dispositivo de armazenagem 19 retém classe de desempenho que corresponde ao autodesempenho e diversas informações de parâmetro de desempenho, de modo que o aparelho hospedeiro 20 pode conhecer o desempenho do dispositivo de armazenagem 19. A definição do parâmetro de desempenho será explicada abaixo. Na explicação a seguir um cartão de memória, em particular um cartão de memória SD™ é dado como um exemplo do dispositivo de armazenagem 19. O desempenho de transferência de dados a partir do aparelho hospedeiro 20 para o dispositivo de armazenagem (cartão de memória 19) é admitido como uma velocidade de transferência no barramento de controle 30. Neste caso, o barramento de controle 30 corresponde a uma seta grossa que conecta de maneira bidirecional o controlador hospedeiro 26 e o controlador de dispositivo 22 na Figura 2. A velocidade de transferência é estabelecida com a suposição que o aparelho hospedeiro 20 executa escrever no estado ótimo. Γ2-11 Definição de curva de desempenho F2-1-11 Divisão da área de memória Primeiro, a divisão da área de memória pelo aparelho hospedeiro 20 e o dispositivo de armazenagem 19 será explicada abaixo, uma vez que isto é necessário para a explicação da curva de desempenho utilizada para especificar uma classe de desempenho. O aparelho hospedeiro 20 divide a área de memória 21 em uma unidade que chama 16 kB da unidade de gravação (RU) para escrever dados tais como dados de vídeo para cada RU. Especificamente a RU (área de unidade de escrever) é equivalente a uma unidade escrita por um comando escrever em diversos blocos ao mesmo tempo.
Por exemplo a RU é o mesmo que um cluster definido por um sistema de arquivo SD™, ou tem a dimensão de múltiplos inteiros do cluster. A unidade da RU pode ser estabelecida como 32 kB, 64 kB 128 kB, etc. Como descrito mais tarde, o aparelho hospedeiro 20 conta o número de RUs capaz de gravar dados, e com isto pode calcular tempo de gravação residual. A Figura 3 mostra a divisão da área de memória 21 assumida pelo aparelho hospedeiro 20 e a divisão real da área de memória 21 pelo cartão de memória 19. O lado esquerdo da Figura 3 corresponde à divisão da área de memória 21 assumida pelo aparelho hospedeiro 20. Por outro lado, o lado direito da Figura 3 corresponde à divisão real da área de memória 21 pelo dispositivo de armazenagem 19.
Como visto da Figura 3, uma RU 32 é uma unidade de memória quando vista do aparelho hospedeiro 20. Uma unidade de alocação AU 31 é definida como um conjunto de diversas RUs 32. A AU (área de unidade de gerenciamento) é uma unidade de gerenciamento e é definida como uma unidade utilizada para dividir toda a área de memória 21 do dispositivo de armazenagem 19 para uma dimensão Sau de AU. A relação entre a RU 32 e a AU 31 é similar à relação entre a página 34 e o bloco 33 quando vista a área de memória 21 a partir do dispositivo de armazenagem 19 (controlador de dispositivo 22). A página 34 é uma unidade de acesso quando o controlador de dispositivo 22 executa escrever ou ler com relação à área de memória 21. O bloco 33 é composto de diversas páginas 34, e é utilizado como uma unidade quando o controlador de dispositivo 22 apaga a área de memória 21.
Por exemplo, se uma memória flash™ NAND TC58512FT fabricada por Toshiba é utilizada como a área de memória 21, a dimensão da página 34 é 512 B, e a dimensão do bloco 33 é 16 kB. (Neste caso, capacidade de redundância é ignorada para simplificação). Uma memória flash™ NAND cuja dimensão de página é 2 kB ou 4 kB também pode ser utilizada. A página 34 e a RU 32 não têm necessidade de corresponderem uma com a outra. A RU 32 pode ser estabelecida para múltiplos inteiros da página 34. Da mesma forma a dimensão SAu de AU são múltiplos inteiros da dimensão RU. A AU 31 pode ser estabelecida para múltiplos inteiros do bloco 33. No que segue será feita explicação utilizando RU 32 e AU 31 como uma unidade básica. Γ2-1-21 Como determinar curva de desempenho A curva de desempenho será descrita abaixo com referência à Figura 4 dando o caso a seguir como um exemplo. Por exemplo, o aparelho hospedeiro 20 escreve sucessivamente dados da unidade RU a partir da posição A para a posição B na área de memória 21.
Tipicamente, a área de A até B corresponde à AU 31. Na descrição a seguir, dados são escritos recentemente na AU incluindo a RU 31 utilizada como um exemplo. Como mostrado na Figura 4, um endereço lógico da AU 31 é estabelecido como LA. Quando dados são escritos recentemente para cada RU 32 da AU 31, o trabalho a seguir é realmente requerido. Primeiro, dados na(s) RU(s) 32 (mostrados por "Usado" na Figura 4) que retêm dados no bloco físico existente PAA são escritos para RU(s) 32 de um outro bloco físico PAB. Em seguida, novos dados escritos devem ser escritos a ele. Então o bloco físico PAB é recentemente mapeado para o endereço lógico LA. O tempo de recentemente escrever dados para a RU 32 (mostrada por "Livre" na Figura 4) que inicialmente não retém qualquer dado que corresponda ao tempo de escrever. O tempo de escrever é definido como desempenho de escrever Pw.
Por outro lado, quando dados já escritos são copiados para uma outra RU 32, tempo é tomado para ler dados a partir da antiga RU 32 (por exemplo, RU 32a) em adição a tempo de escrever dados para a RU 32 (por exemplo, RU 32b) do novo bloco físico PAB.
Quando a RU 32 utilizada existe no bloco físico antigo PAA, a RU 32 utilizada é saltada e dados são escritos em uma RU 32 livre (por e-xemplo, RU com "Dados 3"). Dados na RU 32 utilizada precisam ser escritos para a RU 32 de destino (por exemplo, RU 32b) antes que novos dados sejam escritos. A escrita de novos dados é interrompida enquanto os dados na RU 32 utilizada são movidos. Tempo gasto para operação é definido como desempenho de movimentação de dados Pm. Assim, o tempo total gasto para escrever novos dados é a soma do tempo de escrever total e o tempo de movimentação total.
Da explicação precedente, quando o desempenho médio P(Nu) é colocado em fórmula, a seguinte expressão matemática 1 é obtida. ÍExpressão matemática 11 Desempenho médio: P(Nu) = [Sc x (Nt - Nu)] / [Sc x (Nt - Nu)] / Pw + Sc x Nu/Pm] = [(Nt - Nu) x Pm x Pw] / [(Nt - Nu) x Pm + Nu x Pw] onde, Sc: dimensão de RU
Nt: número total de RUs escritas de maneira sucessiva de A até B (número de RUs que formam a AU) Nu: número de RUs utilizadas entre A e B (número de RUs utilizadas incluído em AU) Pw: desempenho de escrita (unidade:MB/s) Pm: desempenho de movimentação (unidade: MB/s) A expressão matemática precedente é definida na suposição que o desempenho é determinado utilizando o desempenho de escrita Pw e o desempenho de movimentação Pm. O desempenho de escrita Pw varia dependendo do tempo de programa do cartão de memória 19 (memória flash [área de memória 21]).
Além disto, o desempenho de escrita Pw é definido como o valor o mais baixo de uma média do desempenho quando escrita é executada de maneira contínua para todas as RUs 32 da AU 31 que consiste em RUs livres 32.
Observar que o desempenho de escrita varia dependendo do tempo do processo consumido pela extremidade frontal. O tempo do processo da extremidade frontal depende da freqüência de relógio SD que fornece o cartão de memória SD™ como um exemplo. Este assunto será descrito abaixo. A Figura 5 é uma vista que mostra a sincronização da operação de escrita quando é utilizado um comando escrever em diversos blocos. No primeiro estágio da operação de escrita a extremidade traseira está esperando até que dados escritos cheguem da extremidade frontal. No segundo estágio a extremidade traseira é operada juntamente com a extremidade frontal. Portanto, tempo de escrita consumido para a escrita em diversos blocos deve ser considerado de maneira independente da extremidade frontal e extremidade traseira. No segundo estágio, o tempo de escrita de extremidade traseira domina o tempo de escrita quando comparado com o tempo de processamento da extremidade frontal. O tempo de escrita twe da extremidade traseira é a soma do tempo até que toda escrita esteja completada depois de a escrita para a memória flash (área de memória 21) ser iniciada.
Por outro lado, tempo do processamento tWF da extremidade frontal é a soma do tempo a partir do início do comando escrever para diversos blocos até o início de escrita para a memória flash. Como descrito acima, se o cartão de memória SD™ é fornecido como um exemplo, o tempo de processamento tWF da extremidade frontal depende da freqüência do relógio SD. Portanto, o tempo de processamento da extremidade frontal tWF é expresso utilizando o coeficiente Csd e freqüência do relógio SD fSD- Assim, o tempo de processamento da extremidade frontal tWF é expresso utilizando a seguinte expressão matemática 2 no cartão de memória SD™.
Expressão matemática 2 Tempo de processamento de extremidade frontal tWF = CSd / ísd Se dados são gravados para uma AU 31, o tempo de processa- mento da extremidade frontal íwf é proporcional ao número de comandos escrever. O número de comandos escrever é equivalente ao número NRU de RUs 32. Se o número NRU aumenta, isto é, a dimensão SRu de RU se torna pequena, o rendimento de escrita diminui. O desempenho de movimentação Pm é definido como o valor o mais baixo de um desempenho de movimentação médio. O desempenho de movimentação Pm é calculado como uma média quando RUs contínuas 32 são movidas para formar uma AU completada 31. O tempo de movimentação é definido do lado da extremidade traseira e não é afetado pela freqüên-cia do relógio SD. Se o cartão de memória 19 não tem necessidade de movimentar a RU 32, o desempenho de movimentação Pm é definido como sendo infinito. Isto é expresso como "1 / Pm = 0".
Além disto, o desempenho de movimentação Pm varia dependendo do tempo de leitura descrito mais tarde e movimentação de dados em adição ao tempo do programa da memória flash. Neste caso, a movimentação de dados é executada dentro do cartão de memória 19; portanto, o aparelho hospedeiro 20 não controla diretamente a movimentação de dados.
Os dois valores seguintes são definidos quando se vai para desempenho de leitura. 1) Desempenho de leitura com relação a dados Desempenho de leitura com relação a dados (daqui em diante referido como desempenho de leitura Pr) é definido como o valor o mais baixo de uma média de desempenho ao ler dados em unidades de RU 32 ao acaso. A média pode ser calculada baseada em leituras randômicos de tempo 256 em unidades da RU 32. Além disto, o pior caso deveria ser considerado no tempo gasto para fazer correções utilizando um código de correção de erro (ECC) com relação a cada bloco 33. O desempenho de leitura Pr deve ser maior do que, ou no mínimo igual ao, desempenho de escrita Pw. 2) Tempo de leitura de sistema de arquivo (FAT) Tempo de leitura TfR (4 kB) de sistema de arquivo tal como uma tabela de alocação de arquivo (FAT) é definido como o tempo máximo ao ler um FAT de 4kB. Neste caso, leitura FAT deve ser possível durante escrita AU. Isto porque considerando o caso de gravação em tempo real, o aparelho hospedeiro 20 deve ler FAT entre escritas AU. Além disto, o pior caso deveria ser considerado no tempo gasto para fazer correções utilizando uma ECC com relação a cada bloco 33. O tempo de leitura FAT com relação à dimensão do sistema de arquivo (dimensão FR) Sfr é expresso utilizando a função CEIL como a seguir.
Tempo deleitura FAT com relação à dimensão de sistema de arquivo [x] representa a função CEIL que converte fração decimal x para o inteiro mínimo maior do que ou igual a x. A Figura 6 mostra o desempenho do cartão de memória 19 calculado de acordo com a expressão matemática 1. Na Figura 6 está mostrado o desempenho quando o número Nt de RUs 32 que formam a AU 31 é estabelecido como 16.
Como visto da Figura 6, desempenho (eixo vertical) é determinado para cada relação r de RU utilizada (eixo horizontal). Então, o desempenho de cada relação r de RU utilizada é conectado e com isto uma curva de desempenho é obtida. A curva de desempenho é informação significativa para fabricantes de aparelho hospedeiro. A curva de desempenho é especificada utilizando o desempenho de escrita Pw e o desempenho de movimentação Pm. O desempenho de escrita Pw é equivalente ao desempenho completo quando a relação r de RU utilizada é igual a zero. A relação r de RU utilizada é expressa como a expressão matemática a seguir que utiliza o número de Nt de RUs 32 da AU 31 e o número Nu de RUs 32 utilizadas. r = Nu / Nt Esta equação também é expressa como a seguir: Nu = r x Nt A relação r de RU utilizada varia em uma faixa desde 0 até 1.
Quando r = 0 isto significa que todas as RUs 32 não são utilizadas. Por outro lado, quando r = 1, isto significa que todas as RUs 32 são utilizadas, isto é, o desempenho é 0; em outras palavras, P(1) = 0 é fornecido.
Pode ser visto que quaisquer curvas de desempenho passam através do ponto (1, 0). Ao reescrever a expressão matemática 1 utilizando "r" a expressão matemática 3 a seguir é obtida.
Expressão matemática 3 Curva de desempenho médio.: P(r) = [(1 - r) x Pw x Pm] / [r x Pw + (1 - r) x Pm] onde, 0 < r < 1 O desempenho é plotado utilizando a expressão 3 e, com isto, a curva de desempenho mostrada na Figura 6 é obtida.
[2-1-3] Posição de área de memória e precisão de desempenho Se o endereço do início da escrita de dados da RU 32 não é o limite do bloco 33 da área de memória 21, o tempo a seguir é requerido. Especificamente, tempo para movimentar dados escritos é requerido de modo que a posição de início de escrita corresponde ao limite do bloco 33. Por esta razão o desempenho real é inferior ao desempenho esperado no caso. Para medir desempenho preciso é necessário satisfazer os requisitos que os endereços A e B correspondam ao limite da unidade de apagar (bloco 33). Especificar a unidade de alocação resulta da razão descrita acima.
[2-2] Parâmetro relevante para atualizar sistema de arquivo durante gravação Atualização de sistema de arquivo é inserida na seqüência de escrita, e com isto o desempenho de escrita genérico (realmente obtido) diminui. Por esta razão o aparelho hospedeiro 20 requer parâmetros relevantes para atualização do sistema de arquivo ao calcular o desempenho do cartão de memória 19, como descrito mais tarde. O aparelho hospedeiro 20 pode calcular a redução do desempenho real por meio da influência que a atualização do sistema de arquivo é inserida na seqüência de escrita. A Figura 7 mostra uma seqüência típica de atualização de sistema de arquivo durante gravação em tempo real. Na descrição a seguir FAT é utilizado como um exemplo típico do sistema de arquivo. A atualização do sistema de arquivo (FAT) ocorre possivelmente depois de qualquer escrita para RUs 32. O FAT é periodicamente atualizado. O número de RUs 32 escritas entre certa atualização do sistema de arquivo e a próxima atualização do sistema de arquivo é especificado pelo período TFU de atualização de sistema de arquivo. O número de RUs 32 escritas entre as atualizações do sistema de arquivo é Nd.
Um ciclo de escrita FAT compreende três operações de escrita. Na Figura 7 FAT1 e FAT2 indicam escrever informação FAT para FAT1 e FAT2 utilizando um comando escrever em diversos blocos, respectivamente. Escrever sistema de arquivo (FAT) pode ser iniciado de endereço byte arbitrário e pode ser definido como escrita que se situa desde 16 kB até comprimento arbitrário.
Na Figura 7 DIR indica entrada de diretório. O DIR é gerado antes de gravar e escrita é feita apenas para a porção 512B que tem entrada de mudança de diretório. O tempo de escrita do sistema de arquivo Tfw é definido como o tempo total do ciclo de escrita do sistema de arquivo, isto é, o tempo de escrita total do FAT1, FAT2 e DIR. O tempo de escrita Tfw do sistema de arquivo muda dependendo das especificações do controlador de dispositivo 22. Γ2-2-Π Condições de medir uma média de tempo Tfw de escrita de sistema de arquivo. O tempo Tfw de escrita de sistema de arquivo é definido como o valor obtido a partir da média de alguns valores de medição. A expressão matemática 4 a seguir é utilizada para especificar tempo de escrita médio de sistema de arquivo TFw(médio). Como visto da expressão matemática 4 a seguir, o pior valor do valor médio dos ciclos arbitrários de escrita do sistema de arquivos de tempo oito é utilizado como o tempo médio TFw(médio) de escrita de sistema de arquivo.
Expressão matemática 4 Tempo médio de escrita de sistema de arquivo: (Tpwímédio)) = [max (Tfw(1 ) + Tfw(2) + ....+ Tfw(7) + Tfw(8))]/ 8 [2-2-21 Tempo máximo de escrita de sistema de arquivo Como descrito mais tarde, o aparelho hospedeiro 20 retém dados de maneira temporária utilizando o armazenador hospedeiro 27 durante a atualização do sistema de arquivo. Assim, o período máximo de atualização de sistema de arquivo precisa ser considerado ao determinar a dimensão mínima do armazenador hospedeiro 27. Os requisitos de dimensão do armazenador hospedeiro 27 serão explicados no que segue [4-5], A seguinte expressão matemática 5 é utilizada para especificar o pior valor do tempo de escrita FAT do sistema de arquivo.
Expressão matemática 5 Pior valor do tempo de escrita do sistema de arquivo (FAT): (TFW (max)) < 750 [ms] Γ2-2-31 Independência de escrita de dados e escrita de sistema de arquivo Escrita do sistema de arquivo pode ser inserida entre quaisquer RUs ou AUs durante gravação em tempo real. O controlador de dispositivo 22 precisa ser capaz de controlar sem influenciar o desempenho de escrita Pw dos próprios dados. A influência da escrita do sistema de arquivo para o desempenho de escrita Pw pode ser eliminada na maneira a seguir. Especificamente a retomada de escrita depois de interrupção na escrita pela escrita do sistema de arquivo é realizada a partir de uma área física que segue aquela para a qual dados são escritos por último antes da interrupção.
Para realizar o controle, um bloco de cache para escrita de sistema de arquivo pode ser fornecido e o controlador de dispositivo 22 pode controlar como descrito abaixo. Como mostrado na Figura 8A, a área de memória 21 inclui um bloco físico normal e um bloco cache. Quando uma escrita de sistema de arquivo é requisitada durante dados contínuos de escrita seqüencial para um bloco físico normal como mostrado na Figura 8A, informação de gerenciamento de arquivo é escrita sucessivamente para uma área livre (página 34) do bloco cache, como delineado na Figura 8B. Daí em diante, como visto da Figura 8C, a escrita de dados é reiniciada a partir de uma área (página 34) que segue uma para a qual dados são escritos por último antes da interrupção.
Quando a escrita da escrita de dados interrompida é retomada em uma área física que não é a próxima da área física (por exemplo, área em um novo bloco, ou BL0C02) para a qual dados são escritos por último antes da retomada como a técnica precedente, ocorre movimentação de dados que acompanha a escrita. Como resultado o desempenho de escrita Pw varia devido à escrita do sistema de arquivo.
Investigar endereço, dimensão e seqüência, torna possível classificar informação de dados normais e gerenciamento de arquivo.
[31 Classificação de cartão de memória.
Para corresponder rapidamente o desempenho do cartão de memória 19 e o desempenho requerido pelo aparelho hospedeiro 20, o cartão de memória 19 é classificado em diversas classes (classes de desempenho) de acordo com o desempenho do cartão. A classe pode ser classificada de acordo com parâmetros de desempenho tal como a curva de desempenho descrita antes e tempo de escrita de sistema de arquivo TFw- O controlador de dispositivo retém a informação de classe como um código de identificação de desempenho 24 do cartão de memória 19. O cartão de memória 19 apresenta sua própria classe de acordo. Na Figura 9 está mostrada uma etiqueta que apresenta identificação de classe. A Figura 9 mostra o caso onde o dispositivo de armazenagem 19 é um cartão de memória SD™.
Como visto da Figura 9, o cartão de memória 19 tem estojo 71 e etiqueta 72 que apresenta sua classe, sobre o estojo 71. O estojo 71 cobre no mínimo parcialmente a área de memória 21 e o controlador de dispositivo 22.
Além disto, o aparelho hospedeiro 20 tem uma classe preestabe-lecida. A classe no aparelho hospedeiro 20 significa que ele pode desempenhar o melhor quando utiliza um cartão de memória 19 com a mesma classe que o aparelho hospedeiro 20. O aparelho hospedeiro 20 pode gravar informação quando utiliza um cartão de memória 19 de classe inferior, embora seu desempenho não seja o melhor. A Figura 9 mostra que um estojo 73 do aparelho hospedeiro 20 tem uma etiqueta 74 que apresenta sua classe sobre ele. O hospedeiro necessariamente não mostra a sua classe. Γ3-11 Requisito para aplicativo O aplicativo no aparelho hospedeiro 20 requisita desempenho elevado para o cartão de memória 19 utilizado pelo aplicativo. Exemplos típicos serão descritos a baixo. (1) Gravação de vídeo digital.
Em MPEG2 e JPEG de movimento gravação direta para o cartão de memória 19 é requerida. Um desempenho de cartão de cerca de 2 MB/s é requerido para obter a qualidade e resolução de imagem de televisão padrão. Um desempenho de cartão de cerca de 4 MB/s é requerido para gravar imagem de alta qualidade. (2) Câmara digital parada que tem função de disparo contínuo Fabricantes de câmara digital parada requerem o cartão de memória 19 tendo alto desempenho para realizar uma função de disparo contínuo. Fabricantes de câmara digital parada podem utilizar o desempenho do cartão e o método de controle do aparelho hospedeiro para calcular uma velocidade de disparo contínua disponível para o usuário. Γ3-21 Classificação A Figura 10 é um gráfico para explicar a relação entre curva de desempenho e classe. Na Figura 10 existem três áreas divididas por duas curvas de desempenho. Como visto da Figura 10, a área formada pelo eixo vertical P(r) e o eixo horizontal r é dividida em três áreas por curvas de desempenho de classe 2 e classe 4. O eixo vertical P(r) representa o eixo de desempenho e o eixo horizontal r uma relação RU utilizada.
Cartões de memória convencionais pertencem à área a mais próxima da origem nas três áreas, isto é, uma classe 0 (Área de Cartão Classe 0 na Figura 10). Na Figura 10, a área inclui cartões de memória que têm desempenho o mais baixo. A curva de desempenho de classe 2 implica no desempenho mais baixo de cartões de classe 2. Esta curva de desempenho está especificada pelos dois parâmetros Pw1 (a interseção da curva de desempenho de classe 2 e o eixo Y) e Pm2.
Da mesma maneira, a curva de desempenho de classe 4 implica no desempenho o mais baixo de cartões classe 4. Esta curva de desempenho está especificada por dois parâmetros Pw2 (a interseção da curva de desempenho de classe 4 e o eixo Y) e Pm2.
Quando o aplicativo faz um outro requisito aprimorado, curvas de desempenho de classe 8, classe 10 que têm nível mais elevado devem ser especificadas. Contudo, não há necessidade de mudar o conceito. Se a curva de desempenho de classe 8 está definida, uma área de classe 6 ocupa uma área que indica desempenho mais elevado do que a curva de desempenho classe 6 e uma mais baixa do que a curva de desempenho classe 8. Uma área de classe 8 ocupa uma área que indica desempenho mais elevado do que a curva de desempenho classe 8. A Figura 11 é uma tabela que mostra características requeridas para cada classe. Parâmetros requeridos para cartões classe 2 (CLASS2), classe 4 (CLASS4) e classe 6 (CLASS6) são como segue, e como mostrado na Figura 11. CLASS2: Pw = 2 [MB/s], Pm = 1 [MB/s], Pr = 2 [MB/s] CLASS4: Pw = 4 [MB/s], Pm = 2 [MB/s], Pr = 4 [MB/s] CLASS6: Pw = 6 [MB/s], Pm = 3 [MB/s], Pr = 6 [MB/s] O tempo médio de escrita de sistema de arquivo TFw(médio), o tempo máximo de escrita de sistema de arquivo TFw(max.) e o tempo de leitura de sistema de arquivo Tfr(4I<B) são os mesmos parâmetros em cada classe; por exemplo, 100 [ms], 750 [ms] e 4 [ms], respectivamente.
De acordo com parâmetros mostrados na Figura 11, a curva de desempenho de cartão classe 2 intercepta o eixo Y no ponto 2 [MB/s] e o eixo X no ponto 1 e fica mais próximo da origem no meio. Uma área de classe 2 ocupa uma área que indica desempenho mais elevado do que a curva de desempenho classe 2 e um mais baixo do que a curva de desempenho classe 4 (descrita abaixo) no primeiro quadrante.
Da mesma maneira, a curva de desempenho de cartão classe 4 intercepta o eixo Y no ponto 4 [MB/s] e o eixo X no ponto 1 e sai ainda mais afastada da origem do que a curva de desempenho de cartão classe 2. A área do cartão classe 4 é uma área no lado oposto à origem da curva de desempenho do cartão classe 4.
Da mesma maneira, a curva de desempenho de classe 6 que intercepta o eixo Y no ponto 6 [MB/s] é definida. A Figura 12 é uma tabela que mostra condições de medição das características de requisitos solicitados do cartão de cada classe mostrados na Figura 11. Como descrito acima, o tempo Twf do processo da extremidade frontal e a dimensão SRU da RU afetam o desempenho de escrita Pw. A frequência fsD de relógio SD afeta o tempo TWf do processo de extremidade frontal. A freqüência de relógio ísd e a dimensão SU da RU são estabelecidas para valores mostrados na Figura 12 como uma condição de medição das características requisitadas de cada classe. O aparelho hospedeiro 20 é desejável para acessar o cartão de memória 19 utilizando dimensão de RU maior para aprimorar o desempenho. Í3-31 Relação entre capacidade e dimensão AU máxima O aparelho hospedeiro 20 tem um requisito de um outro parâmetro relevante para a dimensão de bloco. Um registrador que envia a dimensão Sau de AU é especificado de acordo com os padrões físicos do cartão de memória 19. Então, o cartão de memória pode mostrar sua dimensão SAu de AU ótima para o aparelho hospedeiro 20. Como resultado, o aparelho hospedeiro 20 utiliza efetivamente a AU 31. Uma dimensão requerida para o armazenador hospedeiro 27 é especificada de acordo com o valor máximo da AU 31 como descrito abaixo. A dimensão de AU máxima que corresponde à capacidade do cartão de memória 19 pode ser como a seguir.
Capacidade do cartão/máxima dimensão AU = 16 até 128 MB/128 kB, 256 MB/ 256 kB, 512 MB/ 512 kB, 1 GB/ 1 MB, 2 GB/ 2 MB, 4 até 32 GB / 4 MB Í3-41 Requisito de desempenho de leitura Desempenhos de leitura de no mínimo 2 [MB/s], 4 [MB/s] e 6 [MB/s] para os cartões classe 2, 4 e 6 são, respectivamente, especificados quando leitura é executada em unidades de RU 32. Contudo, isto não assegura o desempenho de leitura do aparelho hospedeiro 20. Isto porque, o ambiente do aparelho hospedeiro 20 não é levado em consideração na explicação que precede. Γ3-51 Requisitos para especificar o padrão físico de cartões Quando o desempenho é especificado utilizando a classe e diversos parâmetros padronizados, o padrão de desempenho precisa incluir ambos, os padrões atuais e da próxima geração. Portanto, o padrão de desempenho deve incluir o cartão de memória da próxima geração em adição aos padrões precedentes. Assim, no cartão de memória SD™ atual, parâmetros tais como desempenho de escrita Pw, desempenho de movimentação Pm e tempo Tfw de escrita de sistema de arquivo, devem ser especificados em conformidade com o padrão físico 1.01, 1.10. É fornecido um cartão de memória 19 de uma certa classe (por exemplo, classe elevada definida no futuro). A classe do cartão de memória não é fabricada em conformidade com um certo padrão físico (por exemplo padrão físico 1.01) uma vez que existe uma restrição da condição (por e-xemplo, freqüência do relógio SD) requerida para definir a classe. Este tipo de cartão de memória 19 deve ser fabricado em conformidade com um padrão físico mais elevado. Por exemplo, cartões classe 6 não podem ser fabricados em conformidade com o padrão físico 1.01, uma vez que eles são equipados com um modo de velocidade elevada. Portanto, eles precisam se conformar ao padrão físico 1.10. Γ3-61 Retendo dados de classe e parâmetros De acordo com o padrão inovador, o registrador pode reter classe, dimensão SAu de AU, desempenho de movimentação Pm e coeficiente C5D como informação de estado do cartão de memória. Mais especificamente, a classe é armazenada no código do registrador de identificação de desempenho 24. A dimensão SAu de AU, o desempenho de movimentação Pm e coeficiente CSd são armazenados no registrador de parâmetro de desempenho 25.
Como descrito acima, o cartão de memória 19 retém classe e parâmetros. Então, o aparelho hospedeiro 20 capaz de identificar a classe pode, mais precisamente calcular desempenho enquanto utilizando de maneira efetiva o cartão de memória 19. A Figura 13 é uma tabela que mostra a largura de bits de informação de registrador no cartão de memória SD™. No cartão de memória SD™, a dimensão Sau de AU, o desempenho de movimentação Pm e o coeficiente CSd são descritos no registrador de parâmetro de desempenho. Estes dados podem ser gravados para o registrador preparado separadamente. Os campos para estes dados podem reter zero em um cartão de memória que não suporta o padrão de desempenho. Tal cartão de memória é reconhecido como cartão classe zero. A informação de classe pode ser estabelecida no campo que retém o valor fixo (por exemplo, zero) no dispositivo de armazenagem convencional. Assim, dispositivos convencionais que não suportam a presente modalidade podem ser identificados como estando fora do objetivo da classificação de desempenho.
Observar que o desempenho de escrita Pw é exclusivo em cada classe (o desempenho de escrita requerido para cada classe é determinado). Assim, o aparelho hospedeiro 20 lê a classe conhecendo com isto o desempenho de escrita Pw.
Informação no registrador de código de identificação de desempenho 24 e o registrador de parâmetro de desempenho 25 podem ser saídos para o aparelho hospedeiro 20 quando o cartão de memória 19 recebe um comando predeterminado a partir do aparelho hospedeiro 20. O valor estabelecido no registrador de código de identificação de desempenho 24 e o registrador de parâmetro de desempenho 25 podem ser descritos como um valor calculado anteriormente na fabricação, ou podem ser determinados pelo cartão de memória 19 na inicialização. O cartão de memória SD™ atual não tem dispositivo (registrador dedicado) para apresentar o parâmetro de desempenho. O código de desempenho e os parâmetros de desempenho podem ser adicionados a uma área reserva de um registrador programável. O aparelho hospedeiro detecta o código de desempenho para conhecer o desempenho do cartão. Portanto, o cartão de memória SD™ corrente é utilizável sem trocar o atual controlador de cartão. Γ41 Seqüência de operação e requisitos de aparelho hospedeiro ao executar gravação em tempo real Γ4-11 Seqüência de operação de aparelho hospedeiro ao executar gravação em tempo real Ao executar gravação em tempo real, o aparelho hospedeiro 20 realiza uma operação de escrita ao mesmo tempo que executa cálculos de acordo com a seguinte seqüência utilizando a curva de desempenho, classe e parâmetros. Preferivelmente o aparelho hospedeiro 20 realiza a seguinte seqüência ao executar gravação em tempo real. (1) Determinar desempenho (daqui em diante referido como desempenho de aplicativo) Pa requerido a partir do aplicativo incluído no aparelho hospedeiro 20. (2) Selecionar um número adequado Nd de RUs escritas entre atualizações de sistema de arquivo. (3) Determinar um desempenho de cartão Pc requerido para realizar o desempenho de aplicativo Pa, considerando atualização de sistema de arquivo. (4) Determinar a relação de RU máxima utilizada r(Pc). (5) Classificar a AU 31 em AUráPida e AUienta ■ (6) Avaliar tempo de gravação disponível Trec. (7) Ajustar o número Nd de RUs escritas entre as atualizações de sistema de arquivo. Quando o número Nd de RUs escritas entre atualizações de sistema de arquivo é maior, o desempenho melhora. (8) Quando desempenho suficiente e tempo de gravação disponível suficiente não são obtidos depois destes cálculos, é requerido apagar o cartão. O método específico de realizar as operações 1 até 8 e os requisitos do aparelho hospedeiro 20 serão descritos abaixo. Í4-21 Método de cálculo de desempenho com atualização de sistema de ar- quivo.
Uma seqüência típica de ciclo de atualização de sistema de arquivo (FAT) gravando em tempo real é como mostrada na Figura 7. É preferível que o aparelho hospedeiro 20 realize a seqüência na atualização de sistema de arquivo. Γ4-2-11 Condições de desempenho de cartão considerando atualização de sistema de arquivo O aparelho hospedeiro 20 determina o desempenho requerido do cartão Pc para satisfazer Pa a partir do desempenho de aplicação Pa e tempo médio Tfw de escrita de sistema de arquivo. Como descrito acima, a seqüência de escrita de sistema de arquivo é inserida, e com isto piora o desempenho total de escrita. Assim, o aparelho hospedeiro 20 requer um cartão que forneça um desempenho de cartão Pc mais elevado do que o desempenho Pa do aplicativo em geral.
Alguns dos aparelhos hospedeiros 20 podem suportar alguns tipos diferentes de modos de velocidade de bits de acordo com o tipo de a-plicativo. Neste caso, o aparelho hospedeiro 20 determina o desempenho de aplicativo Pa de acordo com um modo selecionado pelos usuários. É desejável que o aparelho hospedeiro 20 não deva recusar o cartão de memória 19 que não corresponda ao desempenho de aplicativo Pa, mas ajuste o desempenho do aparelho 20 de acordo com a classe do cartão de memória 19.
Por exemplo, quando o desempenho de um cartão de memória 19 é inferior ao desempenho de aplicativo Pa, é desejável que o aparelho hospedeiro 20 mude de modo para reduzir para um mais baixo que solicite um desempenho de aplicativo Pa mais baixo. Por exemplo, a relação de compressão de dados pode ser aumentada, a resolução da imagem pode ser reduzida, ou a velocidade de quadro pode ser reduzida, para permitir ao aparelho hospedeiro 20 se conformar a um desempenho de aplicativo Pa inferior. Para realizar o método, o aparelho hospedeiro 20 preferivelmente tem alguns tipos de modos de escrita para utilizar cartões de memória 19 que têm baixo desempenho. O aparelho hospedeiro 20 tem diversos modos que têm diferentes desempenhos de gravação e, com isto, pode ser mantido escrevendo em modo de velocidade inferior mesmo que ocorra a falha. Falha pode acontecer quando um cartão classe zero é utilizado, uma vez que o aparelho hospedeiro 20 não sabe se ele pode operar em um certo modo antes que ele tente o modo realmente. O desempenho de aplicativo Pa e o desempenho Pc do cartão requerido para satisfazer Pa (daqui em diante, desempenho do cartão) são expressos pelas expressões matemáticas 6 e 7 a seguir, respectivamente. ÍExoressão matemática 61 [Desempenho requerido pelo aplicativo: Pa = (Sc x Nd) / (Sc x Nd/Pc +Tfw) ÍExoressão matemática 71 Desempenho de cartão Pc requerido para satisfazer Pc: = (Sc x Nd x Pa) / (Sc x Nd - Pa x Tfw) O desempenho de cartão Pc varia dependendo do número Nd de RUs escritas entre atualizações de sistema de arquivo. Como visto da Figura 7, o número Nd de RUs escritas entre atualizações de sistema de arquivo varia dependendo de uma freqüência de atualização de sistema de arquivo. Assim, a freqüência de atualização de sistema de arquivo afeta o desempenho Pc do cartão. O método de determinar a freqüência de atualização do sistema de arquivo será descrito no que segue [4-2-2], Γ4-2-21 Condição de período de atualização de sistema de arquivo O tempo de atualização de sistema de arquivo (FAT) (a partir de atualização de sistema de arquivo até a próxima atualização de sistema de arquivo) é determinado inserindo seqüência de escrita de sistema de arquivo na transferência de dados. Portanto, o período de atualização de sistema de arquivo depende de velocidade de escrita; contudo, precisão em tempo não é importante. Um método simples pode ser empregado de modo que o aparelho hospedeiro 20 simplesmente calcule o período de atualização de sistema de arquivo. O período de atualização de sistema de arquivo é expresso utili- zando a seguinte expressão matemática 8. ÍExpressão matemática 81 [Período de atualização de sistema de arquivo: TPF = Sc x Nd / Pa = Sc x Nd / Pc + TFw(médio) O aparelho hospedeiro 20 pode ajustar o número de RUs escritas entre as atualizações de sistema de arquivo considerando uma redução do desempenho do cartão que resulta de escrita de sistema de arquivo. Neste caso, o período de atualização de sistema de arquivo TPF é preferivelmente um segundo ou mais.
Quando um número maior de RUs é selecionado, o desempenho Pc do cartão se aproxima do desempenho de aplicativo Pa. Fazendo assim, o cartão de memória 19 que tem baixo desempenho é capaz de satisfazer o desempenho de aplicativo Pa. O método a seguir é fornecido como um outro método de determinar o período de atualização de sistema de arquivo. De acordo com o método, o período de atualização de sistema de arquivo TFu (equivalente a TPF) é determinado utilizando um temporizador incluído no aparelho hospedeiro 20. Neste caso, TFU é constante. A atualização do sistema de arquivo é inserida entre escritas de RU. Assim, o número de RUs escritas entre atualizações de sistema de arquivo varia dependendo do período de atualização de sistema de arquivo TFU.
Neste caso, a quantidade de dados do período de atualização de sistema de arquivo Trj é expressa utilizando a seguinte expressão matemática 9.
[Expressão matemática 91 Quantidade de dados de tempo TFu: Pa x TFu A expressão matemática 9 é transformada, e com isto o desempenho Pc de cartão é expresso utilizando a seguinte expressão matemática 10.
[Expressão matemática 101 Desempenho de cartão para satisfazer Pa: Pc = (Pa x TFU) / (Tfu - TFw(médio)) Γ4-31 Classificação de unidade de alocação (AU1 O aparelho hospedeiro 20 determina que AU 31 está disponível para gravação em tempo real. Em outras palavras, o aparelho hospedeiro 20 determina se ou não cada AU 31 satisfaz o desempenho requisitado de cartão Pc. O desempenho de cada AU 31 muda, dependendo da relação de RU utilizada, como visto da Figura 6. Portanto, cada AU 31 é determinada utilizando a relação de RU utilizada como um valor limiar. Γ4-3-11 Relação RU máxima utilizada Como mostrado na Figura 4, se a posição de início de escrita A e a posição de final de escrita B estão no limite da AU 31 o desempenho da AU 31 é calculado utilizando a expressão matemática 3.
Assim, é possível conduzir a relação máxima de RU utilizada r(Pc) do desempenho de cartão Pc como a função inversa da expressão matemática 3. A AU que tem uma relação r de RU utilizada menor do que a relação r(Pc) máxima utilizada é uma AU 31 que satisfaz o desempenho de cartão Pc. Quanto menor a relação r de RU utilizada tenha a AU 31, mais adequada para gravação de tempo real. A AU 31 é classificada AUrápida e AUienta utilizando a relação r(Pc) de RU máxima utilizada como o limite, como descrito abaixo. A relação r(Pc) de RU máxima utilizada é expressa utilizando a seguinte expressão matemática 11. ÍExpressão matemática 111 Relação RU máxima utilizada: r(Pc) = [(Pw -Pc) x Pm] / [(Pw - Pm) x Pc + Pw x Pm] [4-3-21 Classificação de AU em duas categorias O aparelho hospedeiro 20 classifica a AU 31 em duas categorias. Uma é AUrápida (área de unidade de gerenciamento adaptável). Esta AU 31 tem uma velocidade suficiente para executar gravação em tempo real com o desempenho de cartão Pc. Uma outra é a AUienta (área de unidade de gerenciamento não-adaptável). Esta AU 31 não é adequada para gravação em tempo real porque a área de memória é muito fragmentada. O aparelho hospedeiro 20 conta o número Nu de RUs utilizadas para cada AU 31, e daí em diante calcula uma relação r de RUs utilizadas a partir do número Nu de RUs utilizadas. É determinado se a AU é AUráPida ou é AUienta utilizando a seguinte expressão matemática 12. ÍExpressão matemática 121 Se Nu/Nt < r(Pc), AU é AUráPida Se Nu/Nt > r(Pc), AU é AUienta Especificamente, se (número Nu de RUs utilizadas/(número total Nt de Rus na AU) é menor do que a relação r(Pc) de RU máxima utilizada, a AU é classificada como AUráPida- Por outro lado, se Nu/Nt é igual à ou maior do que a relação r(Pc) de RU máxima utilizada, a AU é classificada como AUienta- A Figura 14 mostra alocação da AU 31 na área de memória 21 e mostra a distribuição em dois tipos de área de memória 21 da AU 31. A AU 31 a mais superior inclui sistema de arquivo; por esta razão ela é uma área que não é adequada para gravação em tempo real. Portanto a AU 31 a mais superior é classificada como AUienta- Além disto, entrada de diretório não deveria ser criada nos dados de gravação da AU 31. A AU 1 e a AU 4 não incluem sistema de arquivo; contudo é determinado que elas são muito fragmentadas porque (número Nu de RUs uti-lizadas)/(número total Nt de RUs na AU) é mais do que a relação r(Pc) de RU máxima utilizada. Í4-41 Tempo de gravação disponível O aparelho hospedeiro 20 pode calcular tempo disponível para a gravação em tempo real utilizando a seguinte expressão matemática 13. Na expressão, Nr representa o número Nr de RUs 32 disponíveis de todas as AUs 31 determinadas como AUráPida- Se tempo de gravação disponível suficiente não está preparado, o aparelho hospedeiro 20 dá aos usuários instruções para transferir dados gravados para um outro lugar ou reformata o cartão de memória 19. ÍExpressão matemática 131 Tempo de gravação disponível: Trec = Sc x Nr / Pa O aparelho hospedeiro 20 calcula novamente o tempo de gravação disponível quando ele estabelece o número Nd de RUs escritas entre atualizações de sistema de arquivo, isto é, período de atualização de sistema de arquivo TPF maior. Isto porque o número maior Nd de RUs entre as atualizações de sistema de arquivo melhora o desempenho. Em outras palavras, o valor da relação r(Pc) de RUs máxima utilizada é aumentado e o número de AUrápida aumenta; portanto, o tempo de gravação disponível aumenta. Γ4-51 Requisitos para armazenador hospedeiro O armazenador hospedeiro 27 deve ter uma capacidade suficiente para armazenar dados de maneira temporária. O armazenador hospedeiro 27 deve atender os seguintes requisitos. Γ4-5-11 Requisitos de dimensão de armazenador hospedeiro O armazenador hospedeiro 27 precisa ter uma capacidade que satisfaça os seguintes requisitos. 1. Requisito de atualização de sistema de arquivo (FAT>
Quando o aparelho hospedeiro 20 atualiza sistema de arquivo, o armazenador hospedeiro 27 é utilizado para armazenar dados de maneira temporária os quais são supostos serem escritos durante a escrita de sistema de arquivo. Por esta razão, uma grande dimensão de armazenador é requerida. A dimensão de armazenador é especificada como o valor máximo TFw(max) do tempo de escrita de sistema de arquivo. Por exemplo, o valor máximo Tpw(max) do tempo de escrita de sistema de arquivo é 750 [ms] como visto da expressão matemática 5. Em geral, a dimensão de armazenador é representada como dados de tempo de gravação nos quais o armazenador pode armazenar. 2. Requisito de correção de erro O armazenador hospedeiro 27 é utilizado para complementar um atraso ao corrigir um erro de escrita de dados. Se um erro de escrita ocorre, o cartão de memória 19 não retorna o estado CRC ou pára a escrita em di- versos blocos e apresenta uma ocorrência de erro. O armazenador hospedeiro 27 precisa armazenar dados até que a escrita seja completada para permitir que reescrita seja executada se ocorrer um erro. O armazenador hospedeiro 27 deve ter uma dimensão adequada, por exemplo 250 [ms], de modo que o aparelho hospedeiro 20 continue gravação em tempo real mesmo se ocorrer um erro. Isto porque o valor 250 [ms] é especificado como o tempo máximo para completar escrita. Portanto, a dimensão é requerida em combinação com o valor máximo TFw(nnax) do tempo de escrita do sistema de arquivo. Se o valor máximo TFw(max) do tempo de escrita do sistema de arquivo for 750 [ms], será requerido um armazenador capaz de armazenar dados equivalentes a 1 segundo no total.
3. Requisito de compensação de atraso de escrita de AU
Se existem RUs 32 escritas na AU 31 que inclui o caso onde RUs 32 utilizadas se reúnem na porção superior da AU 31, dados não podem ser escritos a menos que dados armazenados na RU 32 utilizada sejam movidos para uma outra RU 32. Portanto, dados escritos devem ser armazenados no armazenador hospedeiro 27 enquanto a RU 32 escrita é movida. A Figura 15 mostra o conceito do armazenador hospedeiro 27. Como mostrado na Figura 15, é admitido que os dados são introduzidos de maneira contínua para o armazenador hospedeiro 27 a partir do aparelho hospedeiro 20 a uma velocidade fixa Pa e o aparelho hospedeiro 20 lê dados armazenados no armazenador hospedeiro 27 para escrever os dados para a AU 31.
Por outro lado, a velocidade da saída de dados a partir do armazenador hospedeiro 27 depende de um estado fragmentado da AU 31. Especificamente se existem RUs escritas na AU 31 como descrito acima, dados escritos são mantidos pelo armazenador hospedeiro; contudo não são saídos. Se nenhuma RU 32 escrita existir na AU 31, ou quando a movimentação da RU 32 estiver completa, o armazenador hospedeiro 27 dará saída a dados a uma velocidade Pw.
Como visto da descrição, a dimensão requerida para o armazenador hospedeiro 27 é determinada a partir de quanto tempo leva para mo- vimentar todas as RUs 32 utilizadas na AU 31.
Se a dimensão do armazenador hospedeiro 27 se tornar insuficiente, transbordamento (falta de armazenador) do armazenador hospedeiro 27 poderá ocorrer, dependendo de um estado fragmentado de dados na AU-rápida- Por esta razão, deve ainda ser requerida consideração relativa à dimensão do armazenador hospedeiro 27 e ao estado fragmentado de dados da AUrápida· 4. Preparação para escrita de dados O aparelho hospedeiro leva um certo tempo para preparar dados escritos e assim escrita de dados é gerada de maneira discreta. Neste caso, os dados podem ser armazenados uma vez no armazenador 27 e podem ser escritos pelo controlador hospedeiro 26. Fazendo assim, transferência pode ser realizada de maneira contínua; portanto, transferência efetiva pode ser conseguida.
Particularmente, em gravação em tempo real, dados em tempo real são armazenados uma vez no armazenador hospedeiro 27 que funciona como FIFO e daí em diante escritos para o cartão de memória 19. Fazendo assim é possível impedir tempo gasto para preparar (calcular) os dados em tempo real. Em outras palavras, dados são gravados de maneira efetiva para o cartão de memória 19.
Se dados forem escritos diretamente para o cartão de memória 19 depois de serem calculados na memória do sistema, o procedimento será seqüencial. Por esta razão, cálculos e escrita de dados devem ser realizados de maneira alternada. Se a operação alternativa for executada, nenhum dado poderá ser escrito para o cartão de memória 19 durante o cálculo e com isto o desempenho do cartão de memória 19 será pior do que a classe que ele apresenta. A dimensão requerida do armazenador é representada como uma função que utiliza o desempenho de aplicativo Pa, desempenho de movimentação Pw, relação r(Pc) de RU máxima utilizada e dimensão Sau de AU.
Na expressão matemática seguinte 14, a dimensão de armaze- nador requerida SBuf está mostrada. Na expressão 14, o primeiro item Pa do lado direito corresponde à descrição das colunas (1) e (2). O segundo item do lado direito corresponde à descrição da coluna (3). A descrição da coluna (4) não está incluída na expressão matemática 14. Além disto, um armaze-nador adicional pode ser requerido, dependendo dos padrões do aparelho hospedeiro 20. ÍExoressão matemática 141 Dimensão requerida do armazenador: Sbuf > Pa + [r(Pc) x Sau x Pa] / Pm Se o desempenho de aplicativo Pa for menor do que o desempenho de movimentação Pm e o armazenador hospedeiro 27 tiver uma dimensão grande que excede (Pa + SAu), a expressão matemática 14 será sempre satisfeita. Γ4-5-21 Manipulação guando a dimensão do armazenador hospedeiro é pequena Independentemente da discussão precedente, o que segue é uma explicação a respeito do método de encontrar AUráPida que tem um pequeno grau de fragmentação caso a dimensão do armazenador hospedeiro 27 seja insuficiente. É preferível que o armazenador hospedeiro 27 tenha uma dimensão suficiente ao invés de tomar o método aqui descrito. A Figura 16 mostra o caso onde todas as RUs 32 utilizadas se reúnem na porção superior da AU 31. A relação r(Pc) de RU máxima utilizada representa um limite que é dividido pela RU 32c utilizada e a RU 32d livre. Quando o aparelho hospedeiro 20 escreve dados para a primeira RU 32d livre o cartão de memória 19 dá saída a longa ocupação até que todas as RUs 32c utilizadas sejam completamente movimentadas. Durante este tempo, dados escritos são armazenados no armazenador hospedeiro 27. Neste caso, tempo requerido para mover todas as RUS 32c utilizadas na AU 31 é expresso como a seguir (r(Pc) x SAu) / Pm Portanto, a dimensão requerida do armazenador hospedeiro 27 neste caso é expressa pela seguinte expressão matemática 15. TExpressão matemática 151 Dimensão do armazenador hospedeiro: SBuf > Pa x [(r(Pc) x SAU)/Pm] A expressão matemática seguinte 16 é obtida da expressão matemática 15. TExpressão matemática 161 Relação de RU utilizada limitada pela dimensão de armazenador hospedeiro = r(Pc) < [(Pm x SBuf) / (Pa x SAu)] Como visto da expressão matemática 16, se a dimensão do armazenador hospedeiro 27 for pequena, a relação r(Pc) de RU máxima utilizada será limitada pela dimensão do armazenador hospedeiro 27. Neste caso, a AU 31 deve ser classificada utilizando a relação r(Pc) de RU máxima utilizada limitada pela dimensão do armazenador hospedeiro 27 como r(Pc) na expressão matemática 12.
Além disto, se a dimensão do armazenador hospedeiro 27 for pequena, a dimensão de dados armazenados no armazenador hospedeiro 27 durante gravação de dados em tempo real será observada. De acordo com o resultado observado, controle pode ser realizado de modo que a velocidade de bit de dados seja feita temporariamente menor, ou o período de atualização de sistema de arquivo possa ser controlado para impedir previamente transbordamento do armazenador. Existe um problema que o armazenador hospedeiro 27 transborda; como resultado, dados são perdidos. Por esta razão, perda de dados deve ser impedida, mesmo se a qualidade de dados se deteriorar.
Se gravação for feita utilizando desempenho de escrita predito baseado em informação de desempenho (parâmetro de desempenho) do dispositivo de armazenagem 19, o aparelho hospedeiro 20 fará uma mudança de modo. Especificamente, quando ocorre transbordamento do armazenador ou ocorre freqüentemente um erro durante acesso ao dispositivo de armazenagem 19, o aparelho hospedeiro 20 faz uma mudança para um modo de velocidade mais baixa do que a velocidade baseada na informação de desempenho do dispositivo de armazenagem 19. Γ4-61 Outros O aparelho hospedeiro 20 pode ter um dispositivo para comparar informação de desempenho (por exemplo, classe, parâmetro de desempenho), com sua informação de desempenho (mesmo como acima). O aparelho hospedeiro 20 pode ser dotado de um dispositivo de comparação para comparar informação de desempenho lida do cartão de memória 19 com sua própria informação de desempenho. Isto é baseado na seguinte razão. Por exemplo, mesmo se um do cartão de memória 19 e o aparelho hospedeiro tiver um desempenho muito elevado o outro pode não ter desempenho equivalente ao acima. Em tal caso o desempenho mais lento limita a transferência de dados entre o aparelho hospedeiro 20 e o cartão de memória 19 apesar de tudo. O desempenho que os usuários esperam pode não ser obtido quando um cartão de memória 19 de classe inferior for utilizado. Para evitar a desvantagem, o aparelho hospedeiro 20 pode comparar informação de desempenho lida a partir do cartão de memória 19 com sua informação de desempenho e informar aos usuários o resultado por meio de mostrador.
Por exemplo, o cartão de memória 19 é inserido no aparelho hospedeiro 20 e daí em diante o aparelho hospedeiro 20 apresenta a seguinte mensagem na tela. Isto é, "Este aparelho pertence à classe M; contudo, operação baseada em classe N (N<M) é executada, uma vez que o cartão de memória inserido tem classe N". Fazendo assim, os usuários podem a-prender porque uma velocidade de operação esperada não é o obtida, mesmo se cartão de memória de classe N for utilizado. A tela mostradora pode ser feita automaticamente depois que o cartão de memória 19 for inserido no aparelho hospedeiro 20 ou usuários podem fazer uma operação predeterminada para fazer aparecer a mensagem na tela. A função de comparação de informação de desempenho descrita acima não é essencial para o aparelho hospedeiro 20 utilizar o cartão de memória 19 que armazena informação de desempenho. (Segunda modalidade) Um cartão de memória SD™ ao qual a primeira modalidade é aplicável será explicado abaixo. A Figura 17 é uma vista esquemática que mostra a configuração de um cartão de memória SD™ de acordo com uma segunda modalidade da presente invenção. Um cartão de memória SD™ (daqui em diante referido simplesmente como um cartão de memória) 41 troca informação com o aparelho hospedeiro 20 através de uma interface de barramento 45. O cartão de memória 41 inclui memória flash™ NAND (daqui em diante referida simplesmente como memória flash), chip 42, controlador de cartão 43 que controla chip 42 da memória flash e diversos pinos de sinal (primeiro a nono pinos) 44. O numeral de referência 45 indica uma interface de barramento. O controlador de cartão 43 é equivalente ao dispositivo controlador de dispositivo 22 da primeira modalidade (ver Figura 2). A memória flash 42 é equivalente à área de memória 21 da Figura 2.
Os pinos de sinal 44 são conectados eletricamente ao controlador de cartão 43. A alocação de sinal para pinos de sinal 44 (isto é, primeiro a nono pinos) é como mostrado na Figura 18.
Dados zero até dados 3 são alocados para sétimo, oitavo, nono e primeiro pinos, respectivamente. O primeiro pino é também alocado para um sinal de detecção de cartão. O segundo pino é alocado para um comando. Os terceiro e sexto pinos são alocados para potencial de terra Vss e o quarto pino é alocado para potencial de suprimento de energia Vdd. O quinto pino é alocado para um sinal de relógio. O cartão de memória 41 pode ser inserido em uma fenda formada no aparelho hospedeiro 20. O controlador hospedeiro 26 (não mostrado) do aparelho hospedeiro comunica diversos sinais de dados com o controlador de cartão 46 do cartão de memória 41 através dos primeiro até nono pinos. Por exemplo, quando dados são escritos para o cartão de memória 41 o controlador hospedeiro 26 envia um comando escrever para o controlador de cartão 43 como um sinal serial através do segundo pino. Neste caso, o controlador de cartão 43 traz o comando escrever fornecido para o segundo pino em resposta a um sinal de relógio fornecido para o quinto pino.
Como descrito acima, o comando escrever é introduzido em sé- rie para o controlador de cartão 43 utilizando apenas o segundo pino. O segundo pino alocado para entrada de comando é interposto entre o primeiro pino para dados 3 e o terceiro pino para potencial de terra Vss. A interface de barramento 45 que corresponde a diversos pinos de sinal 44 é utilizada para comunicações do controlador hospedeiro 26 do aparelho hospedeiro 20 com o cartão de memória 41.
Por outro lado, comunicações da memória flash 42 com o controlador de cartão 43 são executadas através de uma interface de memória flash™ NAND. Portanto, embora não mostrado aqui, a memória flash 42 e o controlador de cartão 43 são conectados através de uma linha de 8 bits de entrada/saída (l/O).
Por exemplo, ao escrever dados para a memória flash 42 o controlador de cartão 43 introduz sucessivamente a informação seguinte para a memória flash 42 através da linha l/O. A informação inclui comando de entrada de dados 80H, endereço de coluna, endereço de página, dados e comando de programa 10H. Ή" do comando 80H representa um numeral he-xadecimal e, realmente, um sinal de 8 bits "10000000" é fornecido em paralelo para a linha l/O de 8 bits. A saber, comando de diversos bits é fornecido em paralelo através da interface de memória flash™ NAND.
Na interface de memória flash™ NAND, comando e dados para a memória flash 42 são comunicados na mesma linha l/O. Assim, a interface utilizada para comunicações do controlador hospedeiro 26 do aparelho hospedeiro 20 com o cartão de memória 41 difere daquela utilizada para comunicações da memória flash 42 com o controlador de cartão 43. A Figura 19 é um diagrama de blocos que mostra a configuração de hardware do cartão de memória de acordo com a segunda modalidade. O aparelho hospedeiro 20 inclui hardware e software para acessar o cartão de memória 41 conectado através da interface de barramento 45. O cartão de memória 41 opera ao ser conectado ao aparelho hospedeiro e ao receber suprimento de energia, e então assume procedimentos de a-cordo com acesso a partir do aparelho hospedeiro 20. O cartão de memória 41 inclui a memória flash 42 e o controla- dor de cartão 43, como descrito acima. Na memória flash 42, uma dimensão de bloco de apagar (isto é, a dimensão de bloco em uma unidade de apagar) na operação de apagar é estabelecida para uma dimensão predeterminada (por exemplo, 256 kB). Além disto, escrita e leitura de dados são realizadas em uma unidade chamada página (por exemplo, 2 kB). O controlador de cartão 43 gerencia um estado físico na memória flash 42, (por exemplo, que dados de endereço de setor lógico são incluídos em que endereço de bloco físico, ou que bloco é apagado). O controlador de cartão 43 tem um módulo de interface hospedeira 53, unidade de micro processamento (MPU) 54, controlador flash 55, memória somente de leitura (ROM) 56, memória de acesso randômico (RAM) 57 e armazenador 58. O módulo de interface hospedeira 53 faz a interface entre o controlador de cartão 43 e o aparelho hospedeiro 20 e inclui um registrador 59. A Figura 20 é um diagrama de blocos que mostra configuração do registrador 59. O registrador 59 tem registrador de estado do cartão e registradores tais como CID, RCA, DSR, CSD, SCR e OCR.
Os registradores são definidos como a seguir. O registrador de estado de cartão é utilizado em uma operação normal e, por exemplo, armazena informação de erro descrita mais tarde. Registradores CID, RCA, DSR, CSD, SCR e OCR são principalmente utilizados quando o cartão de memória é inicializado. O número de identificação do cartão (CID) armazena o número de identificação do cartão de memória 41. O endereço relativo de cartão (RCA) armazena com o endereço relativo de cartão (determinado de maneira dinâmica pelo aparelho hospedeiro na inicialização). O registrador de estágio acionador (DSR) armazena uma força de acionamento de barramento do cartão de memória.
Dados específicos do cartão (CSD) armazenam valores de parâmetro característicos do cartão de memória 41. O CSD ainda retém informação de versão, código de identificação de desempenho e parâmetro de desempenho descritos na primeira modalidade. O registrador de dados de configuração SD (SCR) armazena o sistema de dados do cartão de memória 41. O registrador de condição de operação (OCR) armazena uma voltagem de operação do cartão de memória 41 tendo uma faixa operacional de voltagem limitada. O MPU 54 controla toda a operação do cartão de memória 41. Quando o cartão de memória 41 recebe suprimento de energia a MPU 54 lê firmware (programa de controle) armazenado na ROM 56 sobre a RAM 57 para executar processos predeterminados. Fazendo assim, a MPU 54 prepara diversas tabelas na RAM 57. A MPU 54 também recebe comandos escrever, ler e apagar para executar processos predeterminados para a memória flash 42, ou controla a transferência de dados através do armazenador 58. A ROM 56 armazena programas de controle controlados pela MPU 54. A RAM 57 é utilizada como uma área de trabalho da MPU 54 e armazena programas de controle e diversas tabelas. O controlador flash 55 faz a interface entre o controlador de cartão 43 e a memória flash 42. O armazenador 58 armazena de forma temporária uma quantidade predeterminada de dados (por exemplo, uma página) ao escrever dados enviados a partir do aparelho hospedeiro 20 para a memória flash 42 e armazena de maneira temporária uma quantidade predeterminada de dados ao enviar dados lidos a partir da memória flash 42 para o aparelho hospedeiro 20. A Figura 21 mostra o sistema de dados da memória flash 42 no cartão de memória 41. Cada página da memória flash 42 tem 2112 Bytes (área de memória de dados de 512 bytes x 4 + área de redundância de 10 bytes + área de memória de dados de gerenciamento de 24 bytes). 128 páginas são uma unidade de apagar (256 kB + 8 kB (k é 1024). Na descrição a seguir, a unidade de apagar da memória flash 42 é estabelecida para 256 kB para conveniência de explicação. A memória flash 42 inclui um armazenador de página 42A para introduzir e dar saída a dados para a memória flash 42. A capacidade de memória do armazenador de página 42A é 2112 bytes (2048 B + 64 B). Em escrita de dados, o armazenador de página 42a realiza a entrada/saída de dados para a memória flash 42 em uma unidade de uma página equivalente à sua própria capacidade de memória.
Se a memória flash tem capacidade de memória de um Gb, o número de blocos de 256 kB (unidade de apagar) é 512. A Figura 21 mostra o caso onde a unidade de apagar é 256 kB, contudo, é praticamente efetivo construir uma unidade de apagar de 16 kB. Neste caso, cada página tem 528 B (área de memória de dados de 512 Bytes + área de redundância de 16 Bytes) e 32 páginas são uma unidade de apagar (16 kB + 0,5 kB). A área (área de memória de dados) para a qual dados da memória flash 42 são escritos é dividida em diversas áreas de acordo com dados armazenados como mostrado na Figura 19. A memória flash 42 tem as seguintes áreas de memória de dados, isto é, área de dados de gerenciamento 61, área de dados confidenciais 62, área de dados de proteção 63 e área de dados de usuário 64. A área de dados de gerenciamento 61 armazena principalmente informação de gerenciamento relevante para o cartão de memória, isto é, informação de segurança do cartão de memória 41, e informação do cartão tal como ID da mídia. A área de dados confidenciais 72 armazena informação chave utilizada para criptografia e dados confidenciais utilizados para autenticação, e é uma área que não é acessível a partir do aparelho hospedeiro 20. A área de dados de proteção 63 armazena dados significativos, e é uma área que é a acessível apenas quando o aparelho hospedeiro 20 é validado através da autenticação recíproca com o aparelho hospedeiro 26 conectado ao cartão de memória 41. A área de dados de usuário 64 armazena dados de usuário, e é uma área que é acessível e disponível de forma amigável para usuários do cartão de memória 41. A explicação da segunda modalidade é orientada para o caso onde o modo de operação do cartão de memória 41 é um modo DE de 4 bits. A presente invenção é aplicável ao caso onde o modo de operação do cartão de memória 41 é modo SD de 1 bit e modo SPI. A Figura 22 mostra alocação de sinal que corresponde a pinos de sinal no modo SD de 4 bits, modo SD de 1 bit e modo SPI. O modo de operação do cartão de memória 41 é classificado de forma ampla em modo SD e modo SPI. No modo SD, o cartão de memória 41 é estabelecido para modo SD de 4 bits ou modo SD de 1 bit de acordo com um comando de mudança de largura de barramento a partir do aparelho hospedeiro 20.
Quatro pinos, pino de dados 0 (DATO) até pino de dados 3 (DAT3) são todos utilizados para transferência de dados no modo SD de 4 bits que transfere dados em unidades de largura de 4 bits.
No modo SD de um bit, que transfere dados em unidades de transferência de largura de 1 bit, o pino de dados 0 (DATO) apenas é utilizado para a transferência de dados e os pinos de dados 1 (DAT1) e dados 2 (DAT2) não são utilizados de todo. O pino de dados 3 (DAT3) é utilizado, por exemplo para a interrupção não síncrona para o aparelho hospedeiro 20 a partir do cartão de memória 19.
No modo SPI, o pino de dados 0 (DATO) é utilizado como uma linha de sinal de dados (saída de dados) a partir do cartão de memória 19 para o aparelho hospedeiro 20. Um pino de comando (CMD) é utilizado como uma linha de sinal de dados (entrada de dados) a partir do aparelho hospedeiro 20 para o cartão de memória 19. O pino de dados 1 (DAT1) e o pino de dados 2 (DAT2) não são utilizados. No modo SPI, o pino de dados 3 (DAT3) é utilizado para transmitir um sinal selecionado de chip CS a partir do aparelho hospedeiro 20 para o cartão de memória 19.
Quando a memória flash 42 compreende um chip, o cartão de memória 19 é utilizado para a operação de velocidade não tão elevada e classificado como classe Μ (M zero ou inteiro positivo).
Quando a memória flash 42 tem uma classe N (N é um inteiro positivo maior do que M) e velocidade mais elevada do que o cartão de memória de um chip 19, alguns chips de memória flash 42 podem compreender alguns chips no cartão de memória 19. Fazendo assim, o controlador de cartão escreve dados para uma memória chip flash ao mesmo tempo que transfere dados para um outro chip de memória flash. Assim, velocidade de transferência de dados superficiais entre o controlador de cartão 43 e a memória flash 42 melhora.
Além disto, um chip de memória flash que tem uma função cópia de página (ou cópia de reforço) pode ser empregada e com isto dados armazenados em uma página do chip de memória flash são copiados para uma outra página do mesmo chip de memória flash. Fazendo assim, o desempenho de movimentação Pm melhora. A presente invenção está descrita com base nas primeira e segunda modalidades; contudo, a presente invenção não está limitada ao escopo. Uma câmara digital de imagem parada, uma câmara digital de vídeo, PC e PDA são dados como um aparelho hospedeiro ao qual a presente invenção é aplicável.
Em adição à memória flash™ NAND, memória flash AND, memória flash™ NOR, isto é, memórias que têm uma porta flutuante como uma camada de memória de carga, podem ser utilizadas como uma memória semicondutora utilizada como o dispositivo de armazenagem das primeira e segunda modalidades. Além disto, memórias que têm uma camada isolante MONOS como uma camada de memória de carga podem ser utilizadas. A-lém disto, memórias semicondutoras não-voláteis, tais como uma memória de acesso randômico magnética (MRAM) e memória de acesso randômico ferromagnética (FeRAM) podem ser utilizadas.
Vantagens adicionais e modificações irão facilmente ocorrer à-queles versados na técnica. Portanto, a invenção em seus aspectos os mais amplos não está limitada aos detalhes específicos e modalidades representativas mostradas e aqui descritas. Conseqüentemente, diversas modificações podem ser feitas sem se afastar do espírito ou escopo do conceito inventivo geral como definido pelas reivindicações anexas e seus equivalentes.
REIVINDICAÇÕES
Claims (14)
1. Dispositivo de armazenagem (19) que compreende: uma memória semicondutora (1) que armazena dados; e um controlador (22) que instrui a gravar dados para a memória semicondutora de acordo com uma requisição que o controlador (22) recebe; o dispositivo sendo caracterizado por compreender ainda: um registrador (24) provido no controlador (22) e que retém informação de classe de desempenho mostrando uma dentre classes de desempenho classificadas por desempenho, a uma dentre as ciasses de desempenho indicando que o dispositivo de armazenagem (19) garante mínimo desempenho especificado pela uma dentre as classes de desempenho, em que o dispositivo de armazenagem (19) é configurado para fornecer informação de classe de desempenho em resposta a uma instrução a partir de um exterior do dispositivo de armazenagem (19).
2. Dispositivo (19) de acordo com a reivindicação 1, caracterizado pelo fato de que o registrador (25) ainda retém a informação de parâmetro de desempenho relevante para desempenho da memória semicondutora (1) e do controlador (22).
3. Dispositivo (19) de acordo com a reivindicação 2, caracterizado pelo fato de que a informação de parâmetro de desempenho inclui no mínimo uma dentre uma velocidade de movimentação exigida para movimentar dados na memória semicondutora (1) e um tamanho de uma área de uma unidade de gerenciamento de uma área de memória utilizada por um aparelho hospedeiro (20) que utiliza o dispositivo de armazenagem (19).
4. Dispositivo (19) de acordo com a reivindicação 1, caracterizado pelo fato de que o dispositivo é configurado para manter um mesmo desempenho de gravação para gravar dados antes e após atualização de informação de arquivo.
5. Dispositivo (19) de acordo com a reivindicação 1, caracterizado por ainda compreender: uma cobertura (71) que cobre a memória semicondutora (1) e o controlador (22); e uma porção de mostrador (72) fornecida na cobertura (71) e que exibe a classe de desempenho.
6. Aparelho hospedeiro (20) caracterizado por suportar uma pluralidade de modos de taxa de transferência de dados e que transfere dados com um dispositivo de armazenagem (19) que armazena informação de classe de desempenho, em que o modo de taxa máxima de transferência de dados é determinado pela informação de classe de desempenho a partir da pluralidade dos modos de taxa de transferência de dados, pelo menos um dentre os modos de transferência de dados pode ser selecionado a partir do modo de taxa máxima de transferência de dados e dos modos de taxa de transferência de dados inferior ao modo de taxa máxima de transferência de dados.
7. Aparelho (20) de acordo com a reivindicação 6, caracterizado pelo fato de que lê o parâmetro de desempenho relevante para o desempenho do dispositivo de armazenagem (19) a partir do dispositivo de armazenagem (19) e que executa um cálculo utilizando o parâmetro de desempenho.
8. Aparelho (20) de acordo com a reivindicação 7, caracterizado pelo fato de que gerencia uma área de memória da memória semicondutora (1) por meio de áreas de unidade de gerenciamento, cada uma compreendendo áreas de uma unidade de gravação, e que classifica as áreas de unidade de gerenciamento em uma área de unidade de gerenciamento adequada, capaz de armazenar dados com um desempenho solicitado, e uma área de unidade de gerenciamento não adequada, incapaz de armazenar dados com o desempenho solicitado de acordo com uma condição das á-reas de unidade de gerenciamento que utilizam o parâmetro de desempenho.
9. Aparelho (20) de acordo com a reivindicação 8, caracterizado pelo fato de que utiliza a área de unidade de gerenciamento adequada para gravação em tempo real.
10. Aparelho (20) de acordo com a reivindicação 9, caracteriza- do pelo fato de que calcula o tempo de gravação disponível para o qual dados são gravados com o desempenho solicitado, utilizando uma taxa média de transferência de dados com a qual o aparelho transfere dados de gravação para o dispositivo de armazenagem (19) e quantas das áreas de unidade de gerenciamento adequadas permanecem ociosas.
11. Aparelho (20) de acordo com a reivindicação 6, caracterizado pelo fato de que determina que a classe de desempenho não está definida no dispositivo de armazenagem (19) quando a informação de classe de desempenho do dispositivo de armazenagem (19) é "zero".
12. Aparelho (20) de acordo com a reivindicação 6, caracterizado pelo fato de que grava dados para o dispositivo de armazenagem (19) com um segundo desempenho mais baixo do que o primeiro desempenho quando o desempenho do dispositivo de armazenagem (19) não satisfaz ao primeiro desempenho requerido pelo aparelho hospedeiro (20).
13. Aparelho (20) de acordo com a reivindicação 6, caracterizado pelo fato de que armazena dados solicitados para serem escritos em um buffer (27) do aparelho hospedeiro (20) durante o tempo em que a gravação de dados para o dispositivo de armazenagem (19) é impossível.
14. Aparelho (20) de acordo com a reivindicação 6, caracterizado por ainda compreender: uma cobertura (73); e uma porção de mostrador (74) fornecida na cobertura (73) e que apresenta a classe de desempenho estabelecida para o aparelho hospedeiro (20).
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004204028 | 2004-07-12 | ||
JP2004-204028 | 2004-07-12 | ||
JP2004-342275 | 2004-11-26 | ||
JP2004342275 | 2004-11-26 | ||
JP2006006694 | 2006-01-19 |
Publications (3)
Publication Number | Publication Date |
---|---|
BRPI0510494A BRPI0510494A (pt) | 2007-11-13 |
BRPI0510494B1 true BRPI0510494B1 (pt) | 2017-06-20 |
BRPI0510494B8 BRPI0510494B8 (pt) | 2022-06-28 |
Family
ID=35063109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BRPI0510494A BRPI0510494B8 (pt) | 2004-07-12 | 2005-07-08 | Dispositivo de armazenagem e aparelho hospedeiro |
Country Status (8)
Country | Link |
---|---|
US (7) | US7953950B2 (pt) |
EP (1) | EP1769331B1 (pt) |
KR (1) | KR100858756B1 (pt) |
BR (1) | BRPI0510494B8 (pt) |
CA (2) | CA2563277C (pt) |
RU (1) | RU2348992C2 (pt) |
TW (1) | TWI317064B (pt) |
WO (1) | WO2006006694A1 (pt) |
Families Citing this family (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4676378B2 (ja) * | 2006-05-18 | 2011-04-27 | 株式会社バッファロー | データ記憶装置およびデータ記憶方法 |
US7349254B2 (en) * | 2006-05-31 | 2008-03-25 | Qimonda Flash Gmbh & Co. Kg | Charge-trapping memory device and methods for its manufacturing and operation |
US7716411B2 (en) * | 2006-06-07 | 2010-05-11 | Microsoft Corporation | Hybrid memory device with single interface |
JPWO2008013227A1 (ja) * | 2006-07-26 | 2009-12-17 | パナソニック株式会社 | 不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム |
JP4956143B2 (ja) * | 2006-11-02 | 2012-06-20 | 株式会社東芝 | 半導体メモリカード、ホスト装置、及びデータ転送方法 |
JP4471007B2 (ja) * | 2008-02-05 | 2010-06-02 | ソニー株式会社 | 記録装置、記録装置の制御方法、記録装置の制御方法のプログラム及び記録装置の制御方法のプログラムを記録した記録媒体 |
JP5443998B2 (ja) | 2008-07-30 | 2014-03-19 | パナソニック株式会社 | 不揮発性記憶装置、ホスト装置、不揮発性記憶システム、データ記録方法、およびプログラム |
JP5175703B2 (ja) | 2008-12-11 | 2013-04-03 | 株式会社東芝 | メモリデバイス |
JP4758518B2 (ja) * | 2009-06-18 | 2011-08-31 | パナソニック株式会社 | 不揮発性記憶装置、アクセス装置、不揮発性記憶システム及びメモリコントローラ |
JP5362010B2 (ja) * | 2009-07-29 | 2013-12-11 | パナソニック株式会社 | メモリ装置、ホスト装置およびメモリシステム |
KR20110032606A (ko) | 2009-09-23 | 2011-03-30 | 삼성전자주식회사 | 전자 디바이스의 성능 개선을 위한 전자 디바이스 컨트롤러 |
US20120014595A1 (en) * | 2010-07-16 | 2012-01-19 | Frederiksen Jeffrey E | Color Space Conversion for Efficient Filtering |
KR20120090194A (ko) * | 2011-02-07 | 2012-08-17 | 삼성전자주식회사 | 데이터 처리 장치 및 이를 포함하는 데이터 처리 시스템 |
US9098399B2 (en) | 2011-08-31 | 2015-08-04 | SMART Storage Systems, Inc. | Electronic system with storage management mechanism and method of operation thereof |
US9063844B2 (en) | 2011-09-02 | 2015-06-23 | SMART Storage Systems, Inc. | Non-volatile memory management system with time measure mechanism and method of operation thereof |
US9239781B2 (en) | 2012-02-07 | 2016-01-19 | SMART Storage Systems, Inc. | Storage control system with erase block mechanism and method of operation thereof |
US20130282962A1 (en) * | 2012-04-20 | 2013-10-24 | SMART Storage Systems, Inc. | Storage control system with flash configuration and method of operation thereof |
WO2014024350A1 (ja) | 2012-08-07 | 2014-02-13 | パナソニック株式会社 | 記録装置、アクセス装置、記録システム、及び記録方法 |
JP2014044490A (ja) * | 2012-08-24 | 2014-03-13 | Toshiba Corp | ホスト装置及びメモリデバイス |
US9671962B2 (en) | 2012-11-30 | 2017-06-06 | Sandisk Technologies Llc | Storage control system with data management mechanism of parity and method of operation thereof |
US8989509B2 (en) | 2012-12-18 | 2015-03-24 | Apple Inc. | Streaming wavelet transform |
KR102030733B1 (ko) | 2013-01-02 | 2019-10-10 | 삼성전자주식회사 | 메모리 시스템 및 이의 구동 방법 |
US9123445B2 (en) | 2013-01-22 | 2015-09-01 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US9214965B2 (en) | 2013-02-20 | 2015-12-15 | Sandisk Enterprise Ip Llc | Method and system for improving data integrity in non-volatile storage |
US9329928B2 (en) | 2013-02-20 | 2016-05-03 | Sandisk Enterprise IP LLC. | Bandwidth optimization in a non-volatile memory system |
US9183137B2 (en) | 2013-02-27 | 2015-11-10 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US9589010B2 (en) * | 2013-03-07 | 2017-03-07 | Microsoft Technology Licensing, Llc | Systems and methods for host detection of USB asynchronous notification capability |
US10042750B2 (en) | 2013-03-15 | 2018-08-07 | Micron Technology, Inc. | Apparatuses and methods for adaptive control of memory using an adaptive memory controller with a memory management hypervisor |
US9170941B2 (en) | 2013-04-05 | 2015-10-27 | Sandisk Enterprises IP LLC | Data hardening in a storage system |
US10049037B2 (en) | 2013-04-05 | 2018-08-14 | Sandisk Enterprise Ip Llc | Data management in a storage system |
US9543025B2 (en) | 2013-04-11 | 2017-01-10 | Sandisk Technologies Llc | Storage control system with power-off time estimation mechanism and method of operation thereof |
US10546648B2 (en) | 2013-04-12 | 2020-01-28 | Sandisk Technologies Llc | Storage control system with data management mechanism and method of operation thereof |
US9946495B2 (en) | 2013-04-25 | 2018-04-17 | Microsoft Technology Licensing, Llc | Dirty data management for hybrid drives |
US9244519B1 (en) | 2013-06-25 | 2016-01-26 | Smart Storage Systems. Inc. | Storage system with data transfer rate adjustment for power throttling |
US9367353B1 (en) | 2013-06-25 | 2016-06-14 | Sandisk Technologies Inc. | Storage control system with power throttling mechanism and method of operation thereof |
EP3025239B1 (en) * | 2013-07-26 | 2018-12-26 | Intel Corporation | Non-volatile memory interface |
US9146850B2 (en) | 2013-08-01 | 2015-09-29 | SMART Storage Systems, Inc. | Data storage system with dynamic read threshold mechanism and method of operation thereof |
US9361222B2 (en) | 2013-08-07 | 2016-06-07 | SMART Storage Systems, Inc. | Electronic system with storage drive life estimation mechanism and method of operation thereof |
US9448946B2 (en) | 2013-08-07 | 2016-09-20 | Sandisk Technologies Llc | Data storage system with stale data mechanism and method of operation thereof |
US9431113B2 (en) | 2013-08-07 | 2016-08-30 | Sandisk Technologies Llc | Data storage system with dynamic erase block grouping mechanism and method of operation thereof |
US9747157B2 (en) | 2013-11-08 | 2017-08-29 | Sandisk Technologies Llc | Method and system for improving error correction in data storage |
US9152555B2 (en) | 2013-11-15 | 2015-10-06 | Sandisk Enterprise IP LLC. | Data management with modular erase in a data storage system |
CN105045537A (zh) * | 2015-08-04 | 2015-11-11 | 国网浙江兰溪市供电公司 | 电表参数数据的擦写方法、在电表存储设备中搜索电力线参数的方法以及一种电表 |
KR102288546B1 (ko) | 2015-08-31 | 2021-08-10 | 삼성전자주식회사 | 스토리지 장치 및 그 제어 방법 |
US9880783B2 (en) | 2015-10-28 | 2018-01-30 | Sandisk Technologies Llc | System and method for utilization of a shadow data buffer in a host where the shadow data buffer is controlled by external storage controller |
US20170123991A1 (en) * | 2015-10-28 | 2017-05-04 | Sandisk Technologies Inc. | System and method for utilization of a data buffer in a storage device |
US9733834B1 (en) | 2016-01-28 | 2017-08-15 | Weka.IO Ltd. | Congestion mitigation in a distributed storage system |
US11409436B2 (en) | 2018-08-08 | 2022-08-09 | Micron Technology, Inc. | Buffer management in memory systems for read and write requests |
US10782916B2 (en) | 2018-08-08 | 2020-09-22 | Micron Technology, Inc. | Proactive return of write credits in a memory system |
KR102761978B1 (ko) * | 2018-11-22 | 2025-02-05 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
JP7042461B2 (ja) | 2019-03-05 | 2022-03-28 | パナソニックIpマネジメント株式会社 | 記録制御システム、制御装置、記録制御方法および記録媒体 |
TWI736016B (zh) * | 2019-11-11 | 2021-08-11 | 宜鼎國際股份有限公司 | 具備有可自我存取檔案資料能力的資料儲存裝置 |
US11137932B2 (en) | 2019-12-02 | 2021-10-05 | Western Digital Technologies, Inc. | Pad indication for device capability |
US12363312B2 (en) * | 2020-09-11 | 2025-07-15 | SanDisk Technologies, Inc. | Storage system and method for storage management in multi-channel, variable-bit-rate systems |
KR20240064318A (ko) | 2022-11-04 | 2024-05-13 | 삼성전자주식회사 | 스토리지 장치 및 이의 동작 방법 |
Family Cites Families (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5426736A (en) * | 1993-05-26 | 1995-06-20 | Digital Equipment Corporation | Method and apparatus for processing input/output commands in a storage system having a command queue |
JPH06350907A (ja) | 1993-06-07 | 1994-12-22 | Fuji Photo Film Co Ltd | 電子スチルカメラ |
US5909592A (en) * | 1994-09-07 | 1999-06-01 | Intel Corporation | Method in a basic input-output system (BIOS) of detecting and configuring integrated device electronics (IDE) devices |
US5537398A (en) * | 1995-05-12 | 1996-07-16 | Motorola, Inc. | Apparatus for multi-rate simulcast communications |
JP3201219B2 (ja) * | 1995-05-29 | 2001-08-20 | 三菱電機株式会社 | 入出力処理システム |
US6757800B1 (en) * | 1995-07-31 | 2004-06-29 | Lexar Media, Inc. | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices |
JP3472008B2 (ja) * | 1996-01-16 | 2003-12-02 | 株式会社東芝 | フラッシュメモリ管理方法 |
US6212482B1 (en) * | 1998-03-06 | 2001-04-03 | Micron Technology, Inc. | Circuit and method for specifying performance parameters in integrated circuits |
US20010011337A1 (en) * | 1998-09-15 | 2001-08-02 | Massoud Shamshirian | Programmable multiple sequential sector locking for semicondutor memories |
US6601140B1 (en) * | 1999-04-07 | 2003-07-29 | Sony Corporation | Memory unit, data processing unit, and data processing method using memory unit type |
US6330286B1 (en) * | 1999-06-09 | 2001-12-11 | Sarnoff Corporation | Flow control, latency control, and bitrate conversions in a timing correction and frame synchronization apparatus |
US7318117B2 (en) * | 2004-02-26 | 2008-01-08 | Super Talent Electronics, Inc. | Managing flash memory including recycling obsolete sectors |
EP1376461A3 (en) * | 1999-08-24 | 2004-02-25 | Matsushita Electric Industrial Co., Ltd. | Memory card |
JP4439096B2 (ja) | 2000-08-28 | 2010-03-24 | 株式会社東芝 | メモリカード及び同カードに適用されるアドレス変換方法 |
US6462985B2 (en) * | 1999-12-10 | 2002-10-08 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory for storing initially-setting data |
US6651113B1 (en) * | 1999-12-22 | 2003-11-18 | Intel Corporation | System for writing data on an optical storage medium without interruption using a local write buffer |
US6363008B1 (en) * | 2000-02-17 | 2002-03-26 | Multi Level Memory Technology | Multi-bit-cell non-volatile memory with maximized data capacity |
US6772245B1 (en) * | 2000-03-29 | 2004-08-03 | Intel Corporation | Method and apparatus for optimizing data transfer rates between a transmitting agent and a receiving agent |
JP2001297316A (ja) * | 2000-04-14 | 2001-10-26 | Mitsubishi Electric Corp | メモリカード及びその制御方法 |
US6556952B1 (en) * | 2000-05-04 | 2003-04-29 | Advanced Micro Devices, Inc. | Performance monitoring and optimizing of controller parameters |
JP2002007200A (ja) * | 2000-06-16 | 2002-01-11 | Nec Corp | メモリ制御装置及び動作切替方法並びにインターフェース装置、半導体集積チップ、記録媒体 |
JP3923715B2 (ja) * | 2000-09-29 | 2007-06-06 | 株式会社東芝 | メモリカード |
JP2002190000A (ja) | 2000-12-22 | 2002-07-05 | Fuji Photo Film Co Ltd | 記録メディア及び電子機器 |
JP4014801B2 (ja) * | 2000-12-28 | 2007-11-28 | 株式会社ルネサステクノロジ | 不揮発性メモリ装置 |
US6527948B2 (en) * | 2001-03-31 | 2003-03-04 | Council Of Scientific And Industrial Research | Apparatus for purification of waste water and a “RFLR” device for performing the same |
JP2003030993A (ja) | 2001-07-17 | 2003-01-31 | Toshiba Corp | 半導体記憶装置 |
US7418344B2 (en) * | 2001-08-02 | 2008-08-26 | Sandisk Corporation | Removable computer with mass storage |
US6614689B2 (en) * | 2001-08-13 | 2003-09-02 | Micron Technology, Inc. | Non-volatile memory having a control mini-array |
JP3641230B2 (ja) * | 2001-10-22 | 2005-04-20 | 株式会社東芝 | メモリカードを制御するための装置および方法 |
JP2003141888A (ja) * | 2001-11-01 | 2003-05-16 | Mitsubishi Electric Corp | 不揮発性半導体記憶装置 |
US6798696B2 (en) * | 2001-12-04 | 2004-09-28 | Renesas Technology Corp. | Method of controlling the operation of non-volatile semiconductor memory chips |
US7519089B1 (en) * | 2002-02-27 | 2009-04-14 | Advanced Micro Devices, Inc. | Arrangement in a channel adapter for transmitting data according to link widths selected based on received link management packets |
JP4206688B2 (ja) | 2002-04-15 | 2009-01-14 | ソニー株式会社 | データ処理装置及びデータ処理方法 |
US20030212859A1 (en) * | 2002-05-08 | 2003-11-13 | Ellis Robert W. | Arrayed data storage architecture with simultaneous command of multiple storage media |
JP4171246B2 (ja) * | 2002-06-10 | 2008-10-22 | 株式会社ルネサステクノロジ | メモリカードおよびその製造方法 |
JP2004023235A (ja) | 2002-06-13 | 2004-01-22 | Fuji Photo Film Co Ltd | 画像記録装置 |
JP2004022070A (ja) * | 2002-06-17 | 2004-01-22 | Renesas Technology Corp | 半導体記憶装置 |
DE10231954B4 (de) * | 2002-07-15 | 2006-03-02 | Infineon Technologies Ag | Schaltungsbaustein mit Zeitsteuerung |
US7103743B2 (en) * | 2002-08-23 | 2006-09-05 | Intel Corporation | System and method of accessing vital product data |
JP2004104539A (ja) * | 2002-09-11 | 2004-04-02 | Renesas Technology Corp | メモリカード |
JP2004158953A (ja) | 2002-11-05 | 2004-06-03 | Matsushita Electric Ind Co Ltd | 映像及び音声信号記録装置 |
JP2004234557A (ja) * | 2003-01-31 | 2004-08-19 | Hitachi Ltd | データ管理方法、コントローラ、及びプログラム |
US7370168B2 (en) * | 2003-04-25 | 2008-05-06 | Renesas Technology Corp. | Memory card conforming to a multiple operation standards |
US6973519B1 (en) * | 2003-06-03 | 2005-12-06 | Lexar Media, Inc. | Card identification compatibility |
US20040255338A1 (en) * | 2003-06-13 | 2004-12-16 | Apple Computer, Inc. | Interface for sending synchronized audio and video data |
EP1653362B1 (en) | 2003-08-06 | 2015-09-30 | Panasonic Corporation | Accessing device and method for a semiconductor memory card |
JP4421230B2 (ja) * | 2003-08-12 | 2010-02-24 | 株式会社日立製作所 | 性能情報分析方法 |
US7158536B2 (en) * | 2004-01-28 | 2007-01-02 | Rambus Inc. | Adaptive-allocation of I/O bandwidth using a configurable interconnect topology |
JP4391265B2 (ja) * | 2004-02-26 | 2009-12-24 | 株式会社日立製作所 | ストレージサブシステムおよび性能チューニング方法 |
JP4679512B2 (ja) * | 2004-04-23 | 2011-04-27 | パナソニック株式会社 | 情報記録媒体、アクセス装置及び情報記録媒体の処理方法 |
US7281097B1 (en) * | 2004-06-30 | 2007-10-09 | Emc Corporation | Method of controlling the performance of a data storage system |
US20060112230A1 (en) * | 2004-11-24 | 2006-05-25 | Christian Sichert | Integrated memory device and memory module |
JP2006285669A (ja) * | 2005-03-31 | 2006-10-19 | Toshiba Corp | ホスト機器 |
US20070058723A1 (en) * | 2005-09-14 | 2007-03-15 | Chandramouly Ashwin A | Adaptively adjusted slice width selection |
JP4673712B2 (ja) * | 2005-09-28 | 2011-04-20 | 富士通株式会社 | ネットワーク構成装置およびネットワーク構成方法 |
JP4837445B2 (ja) * | 2006-06-06 | 2011-12-14 | 株式会社日立製作所 | 記憶システム並びに管理装置及び方法 |
US7739470B1 (en) * | 2006-10-20 | 2010-06-15 | Emc Corporation | Limit algorithm using queue depth to control application performance |
EP2120189B1 (en) * | 2007-01-30 | 2013-01-16 | Panasonic Corporation | Nonvolatile storage device, nonvolatile storage system, and access device |
US8244992B2 (en) * | 2010-05-24 | 2012-08-14 | Spackman Stephen P | Policy based data retrieval performance for deduplicated data |
-
2005
- 2005-07-08 CA CA2563277A patent/CA2563277C/en not_active Expired - Lifetime
- 2005-07-08 KR KR1020067022498A patent/KR100858756B1/ko not_active Expired - Lifetime
- 2005-07-08 BR BRPI0510494A patent/BRPI0510494B8/pt active IP Right Grant
- 2005-07-08 CA CA2682814A patent/CA2682814C/en not_active Expired - Lifetime
- 2005-07-08 WO PCT/JP2005/013104 patent/WO2006006694A1/en not_active Application Discontinuation
- 2005-07-08 EP EP05760161A patent/EP1769331B1/en not_active Expired - Lifetime
- 2005-07-08 RU RU2006138014/09A patent/RU2348992C2/ru active
- 2005-07-12 TW TW094123622A patent/TWI317064B/zh active
-
2006
- 2006-11-07 US US11/557,120 patent/US7953950B2/en active Active
-
2011
- 2011-04-28 US US13/096,731 patent/US8539140B2/en active Active
-
2013
- 2013-08-08 US US13/962,455 patent/US8832361B2/en not_active Expired - Lifetime
-
2014
- 2014-07-29 US US14/445,374 patent/US9026723B2/en not_active Expired - Lifetime
-
2015
- 2015-04-13 US US14/684,862 patent/US9244620B2/en not_active Ceased
-
2017
- 2017-03-21 US US15/465,048 patent/USRE47638E1/en not_active Expired - Lifetime
-
2019
- 2019-08-20 US US16/545,549 patent/USRE50067E1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20070067598A1 (en) | 2007-03-22 |
TW200617663A (en) | 2006-06-01 |
RU2006138014A (ru) | 2008-05-10 |
BRPI0510494A (pt) | 2007-11-13 |
CA2682814C (en) | 2011-11-08 |
USRE47638E1 (en) | 2019-10-08 |
CA2682814A1 (en) | 2006-01-19 |
CA2563277C (en) | 2013-01-08 |
BRPI0510494B8 (pt) | 2022-06-28 |
KR100858756B1 (ko) | 2008-09-16 |
US20140337567A1 (en) | 2014-11-13 |
RU2348992C2 (ru) | 2009-03-10 |
US8539140B2 (en) | 2013-09-17 |
US7953950B2 (en) | 2011-05-31 |
EP1769331A1 (en) | 2007-04-04 |
USRE50067E1 (en) | 2024-07-30 |
US9026723B2 (en) | 2015-05-05 |
US8832361B2 (en) | 2014-09-09 |
EP1769331B1 (en) | 2011-06-29 |
US20130326129A1 (en) | 2013-12-05 |
KR20070026488A (ko) | 2007-03-08 |
US20150242135A1 (en) | 2015-08-27 |
CA2563277A1 (en) | 2006-01-19 |
TWI317064B (en) | 2009-11-11 |
US9244620B2 (en) | 2016-01-26 |
WO2006006694A1 (en) | 2006-01-19 |
US20110202712A1 (en) | 2011-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BRPI0510494B1 (pt) | Storage device and hospital device | |
TWI648634B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TW201911298A (zh) | 溫度控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
TW202016937A (zh) | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN110390985B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
TWI714840B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI813498B (zh) | 資料讀取方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI658405B (zh) | 資料程式化方法、記憶體儲存裝置及記憶體控制電路單元 | |
JP4874588B2 (ja) | 記憶デバイスおよびホスト機器 | |
CN117636967B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
US11221946B2 (en) | Data arrangement method, memory storage device and memory control circuit unit | |
TW202009709A (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN117174149A (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN100437458C (zh) | 存储器件和主机装置 | |
TWI854523B (zh) | 記憶體操作管控方法、記憶體儲存裝置及記憶體控制電路單元 | |
TW202125265A (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN114842896B (en) | Write control method based on write behavior prediction, storage device and control circuit | |
TWI882394B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN112181859B (zh) | 有效数据合并方法、存储器控制电路单元与存储装置 | |
CN114842896A (zh) | 基于写入行为预测的写入控制方法、存储装置及控制电路 | |
TW202505528A (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN118295598A (zh) | 存储器管理方法以及存储器存储装置 | |
TW202433265A (zh) | 有效節點管理方法、記憶體儲存裝置及記憶體控制電路單元 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] | ||
B25A | Requested transfer of rights approved | ||
B25A | Requested transfer of rights approved | ||
B25D | Requested change of name of applicant approved | ||
B25G | Requested change of headquarter approved | ||
B25D | Requested change of name of applicant approved | ||
B25G | Requested change of headquarter approved |