KR100716576B1 - 메모리 카드, 논리 어드레스의 할당방법 및 데이터 기록방법 - Google Patents

메모리 카드, 논리 어드레스의 할당방법 및 데이터 기록방법 Download PDF

Info

Publication number
KR100716576B1
KR100716576B1 KR1020017010223A KR20017010223A KR100716576B1 KR 100716576 B1 KR100716576 B1 KR 100716576B1 KR 1020017010223 A KR1020017010223 A KR 1020017010223A KR 20017010223 A KR20017010223 A KR 20017010223A KR 100716576 B1 KR100716576 B1 KR 100716576B1
Authority
KR
South Korea
Prior art keywords
address
data
memory
sector
block
Prior art date
Application number
KR1020017010223A
Other languages
English (en)
Other versions
KR20010108209A (ko
Inventor
시라이시아츠시
이노우에마나부
오누키유이치로
스즈키타케시
마츠무라켄조
시오타시게마사
유카와요스케
Original Assignee
가부시키가이샤 히타치세이사쿠쇼
가부시키가이샤 히타치초에루.에스.아이.시스테무즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시키가이샤 히타치세이사쿠쇼, 가부시키가이샤 히타치초에루.에스.아이.시스테무즈 filed Critical 가부시키가이샤 히타치세이사쿠쇼
Publication of KR20010108209A publication Critical patent/KR20010108209A/ko
Application granted granted Critical
Publication of KR100716576B1 publication Critical patent/KR100716576B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups

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)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

블럭과 클러스터를 일치시켜, 블럭단위의 소거를 효율이 좋게 행한다. 플래시 메모리에서의 물리 어드레스는, 0h번지부터 순서대로 블럭(8섹터)단위로 구분되어 있다. 논리 어드레스의 데이터 영역의 시작은 4Dh번지이며, 이것에 가까운 블럭의 선두 어드레스인 50h번지에 논리 어드레스의 4Dh번지를 데이터 영역으로서 순차로 할당한다. 나머지의 논리 어드레스 3D7Dh번지 ~ 3D7Fh번지는, 물리 어드레스의 선두로 되돌아가, 물리 어드레스의 0h번지 ~ 2h번지에 할당된다. 따라서, 블럭과 호스트에서 출력되는 클러스터(4kByte 또는 2kByte)를 일치시킬 수 있고, 플래시 메모리의 데이터를 블럭단위만으로 소거할 수 있으므로 데이터 기록시의 소거회수를 큰 폭으로 줄일 수 있다.

Description

메모리 카드, 논리 어드레스의 할당방법 및 데이터 기록방법{MEMORY CARD, METHOD FOR ALLOTTING LOGICAL ADDRESS, AND METHOD FOR WRITING DATA}
본 발명은, 메모리 카드의 기록 고속화 기술에 관한 것으로, 특히 플래시 메모리에서의 논리 어드레스의 할당에 적용하는 기술에 관한 것이다.
노트북형 퍼스널 컴퓨터나 다기능 단말기 등의 외부 기억 미디어로서, 메모리 카드가 급속하게 보급되고 있다. 최근의 고성능화의 요구에 따라, 메모리 카드에 탑재되는 반도체 메모리로서, 예컨대 전기적으로 일괄소거, 재기록이 가능하며, 전지 없이 대용량의 데이터를 유지할 수 있는 플래시 메모리가 이용되고 있다.
본 발명자가 검토한 바에 의하면, 메모리 카드에 이용되는 플래시 메모리는 데이터 기록동작으로서, 데이터가 기록되기 전에, 기록되는 어드레스의 데이터 소거를 행하고 있다. 이 소거는 섹터단위(예컨대, 1섹터 = 512Byte) 혹은 블럭단위(8섹터 = 4kByte)로 실행되고 있다.
또, 호스트에서 입력되는 데이터는 클러스터 단위(예컨대, 4kByte 또는 2kByte)로 되어 있으며, 이 클러스터에 의해 데이터의 기록이나 판독이 행해지고 있다.
또한, 메모리 카드에 있어서는, 제품출하전 등에 플래시 메모리의 논리 어드 레스 할당이 행해진다. 논리 어드레스는 마스터 부트 레코드, 파일 올로케이션 테이블, 및 디렉토리 등의 각종 제어관리정보가 저장되는 영역의 뒤에 호스트에서 입출력되는 데이터를 저장하는 데이터 영역이 할당된다.
또한, 이 종류의 IC카드에 대해서 상세하게 설명되어 있는 예로서는, 1990년 12월 1일, 주식회사 공업조사회 발행, 오오시마 마시시(편), 「전자재료」 페이지 22 ~ 26에 있으며, 이 문헌에는 각종의 IC카드에서의 기술동향이 기재되어 있다.
그런데, 상기와 같은 메모리 카드의 데이터 소거기술에는 다음과 같은 문제점이 있다는 것이 본 발명자에 의해 발견되었다.
즉, 논리 어드레스 할당에 있어서는, 플래시 메모리의 물리 어드레스의 순서대로 할당되어 있기 때문에, 클러스터와 플래시 메모리에 할당되는 논리 어드레스가 어긋나버려, 전술한 데이터 기록 전의 데이터 소거를 섹터단위 혹은 섹터단위와 블럭단위와의 조합에 의해 실행하지 않으면 안되고, 소거회수가 많게 되어버려 기록시간이 길게 된다는 문제가 있다.
또, 플래시 메모리에의 데이터 기록에 있어서는, 호스트에서의 데이터 전송, 소거, 기록처리를 시리얼 처리하고 있으므로, 각각의 처리에 있어서 시간이 필요하게 되어 버리기 때문에 기록속도의 고속화를 방해한다는 문제가 있다.
본 발명의 목적은, 블럭과 클러스터를 일치시켜, 블럭단위의 소거를 효율좋게 행하며, 또 데이터 기록을 효율좋게 행함으로써, 데이터의 기록속도를 고속화할 수 있는 논리 어드레스의 할당방법 및 메모리 카드의 데이터 기록방법을 제공하는데 있다.
본 발명의 상기 및 그 이외의 목적과 신규한 특징은 본 명세서의 기술 및 첨부 도면에서 명백하게 될 것이다.
(발명의 개시)
본 발명은 오프세트 값이 저장된 오프세트 저장부와, 이 오프세트 저장부의 오프세트값과 입력된 논리 어드레스를 연산하는 오프세트 연산부를 구비하며, 오프세트 연산부의 연산에 의해 논리 어드레스를 오프세트시켜 불휘발성 메모리에 구비된 물리 어드레스에 할당하여, 블럭단위와 클러스터 단위를 일치시키는 것이다.
또, 본 발명은 상기 오프세트 저장부를 불휘발성 메모리의 어느 영역에 구비한 것이다.
또한, 본 발명은 상기 오프세트값을 불휘발성 메모리에서의 ID영역에 저장하는 것이다.
또, 본 발명은 불휘발성 메모리에 구비된 물리 어드레스를 어느 섹터마다 정리하여 섹터 블럭을 형성하고, 각각의 섹터 블럭 중, 임의의 섹터 블럭에서의 선두의 물리 어드레스를, 데이터 영역이 시작하는 선두의 논리 어드레스에 할당하여, 논리 어드레스의 데이터 영역을 물리 어드레스의 마지막 섹터까지 할당하는 것이다.
또한, 본 발명은 불휘발성 메모리에 구비된 물리 어드레스를 어느 섹터마다 정리하여 섹터 블럭을 형성하고, 각각의 섹터 블럭 중, 임의의 섹터 블럭에서의 선두의 물리 어드레스를, 데이터 영역이 시작하는 선두의 논리 어드레스에 할당하여, 논리 어드레스의 데이터 영역이 물리 어드레스의 마지막 섹터까지 할당되면, 나머 지의 데이터 영역을 물리 어드레스의 처음부터 할당하는 것이다.
또, 본 발명은 그들 2개의 불휘발성 메모리에 구비된 각각의 물리 어드레스를, 어느 섹터마다 정리하여 섹터 블럭을 형성하고, 2개의 불휘발성 메모리 중, 한쪽의 불휘발성 메모리의 임의의 섹터 블럭에서의 선두의 물리 어드레스에 데이터 영역이 시작하는 선두의 논리 어드레스를 할당한 후, 나머지의 논리 어드레스를 번갈아 2개의 불휘발성 메모리의 섹터 블러마다 할당하여, 논리 어드레스의 데이터 영역이, 2개의 불휘발성 메모리에서의 물리 어드레스의 마지막 섹터까지 할당하면, 나머지의 데이터 영역을 상기 한쪽의 불휘발성 메모리에서의 물리 어드레스의 처음부터 할당하는 것이다.
또한, 본 발명은, 2N의 불휘발성 메모리에 구비된 각각의 물리 어드레스를, 어느 섹터마다 정리하여 섹터 블럭을 형성하고, 2N개의 불휘발성 메모리 중,어느 1개의 불휘발성 메모리의 임의의 섹터 불럭에서의 선두의 물리 어드레스에 데이터 영역이 시작하는 선두의 논리 어드레스를 할당한 후, 나머지의 논리 어드레스를 순서대로 2N개의 불휘발성 메모리의 섹터 블럭마다 할당하여, 논리 어드레스의 데이터 영역이, 2N개의 불휘발성 메모리에서의 물리 어드레스의 마지막 섹터까지 할당하면, 나머지의 데이터 영역을 상기 어느 1개의 불휘발성 메모리에서의 물리 어드레스의 최초부터 할당하는 것이다.
또, 본 발명은, 논리 어드레스가 할당되는 섹터 블럭의 물리 어드레스가, 데이터 영역이 시작하는 선두의 논리 어드레스에 가장 가까운 어드레스로 이루어지는 것이다.
또한, 본 발명은, 호스트에서 전송되는 기록 데이터를 메모리 카드에 일시적으로 저장하고, 불휘발성 메모리에서의 1블럭분의 관리정보를 판독하고, 그 블럭 소거를 행하며, 메모리 카드에 일시적으로 저장된 기록 데이터를 불휘발성 메모리의 블럭 소거된 섹터에 저장하면서, 호스트에서 전송되는 다음의 기록 데이터를 메모리 카드에 일시적으로 저장하는 것이다.
또, 본 발명은, 첫번째로 데이터 기록되는 불휘발성 메모리에 구비된 섹터 블럭의 관리정보를 판독하며, 그 섹터 블럭을 블럭 소거하는 제1의 공정과, 메모리 카드에 일시적으로 저장된 기록 데이터를 불휘발성 메모리의 섹터에 저장하면서, 두번째로 데이터 기록되는 불휘발성 메모리에서의 임의의 섹터의 관리정보를 판독하여, 다음의 기록 데이터를 메모리 카드에 일시적으로 저장하는 제2의 공정과, 두번째로 데이터 기록되는 불휘발성 메모리에서의 섹터 블럭의 모든 관리정보가 판독되면, 그 섹터 블럭의 소거를 행하면서, 메모리 카드에 일시적으로 저장된 기록 데이터를 첫번째의 불휘발성 메모리의 섹터에 저장하고, 두번째로 데이터 기록되는 불휘발성 메모리에서의 임의의 섹터의 관리정보를 판독하는 제3의 공정과, 제2, 제3의 공정에서의 처리를, 2N번째로 데이터 기록되는 불휘발성 메모리까지 반복하여 행하는 것이다.
이들에 의해, 복수개의 불휘발성 메모리에서의 소거, 기록, 호스트에서 메모리 카드로의 데이터 전송을 병렬로 하여 실행할 수 있으므로, 데이터 기록시간을 큰 폭으로 단축할 수 있다.
이상으로부터, 메모리 카드의 성능을 큰 폭으로 향상시킬 수 있다.
도 1은, 본 발명의 실시형태 1에 의한 메모리 카드의 블럭도,
도 2는 본 발명의 실시형태 1에 의한 메모리 카드에 설치된 플래시 메모리의 회로 블럭도,
도 3은, 본 발명의 실시형태 1에 의한 메모리 카드에 이용되는 논리 어드레스와 플래시 메모리에 고정된 물리 어드레스와의 데이터 구성의 설명도,
도 4는, 본 발명의 실시형태 1에 의한 플래시 메모리에서의 논리 어드레스가 할당된 데이터 구성의 설명도,
도 5는, 본 발명자가 검토한 논리 어드레스가 할당된 플래시 메모리에서의 데이터 구성의 설명도,
도 6은, 본 발명의 실시형태 1에 의한 메모리 카드에서의 데이터 기록의 플로우챠트,
도 7은, 본 발명의 실시형태 2에 의한 메모리 카드의 블럭도,
도 8은, 본 발명의 실시형태 2에 의한 플래시 메모리에서의 논리 어드레스가 할당된 데이터 구성의 설명도,
도 9는, 본 발명의 실시형태 2에 의한 물리 어드레스에 할당된 논리 어드레스의 설명도,
도 10은, 본 발명의 실시형태 2에 의한 메모리 카드에서의 데이터 기록의 플로우챠트,
도 11은, 본 발명의 실시형태 1에 의한 플래시 메모리에 설치된 메모리 셀 트랜지스터의 단면도이다.
(발명을 실시하기 위한 최량의 형태)
본 발명을 상세하게 설명하기 위해, 첨부된 도면에 따라 이것을 설명한다. 또한, 실시예를 설명하기 위한 전 도면에 있어서, 동일 기능을 가지는 것은 동일 부호를 붙여, 그 반복의 설명은 생략한다.
본 실시형태 1에 있어서, 메모리 카드(1)는, 플래시 메모리 카드이며, 노트북형 퍼스널 컴퓨터나 다기능 단말기 등의 외부 기억 미디어로서 이용된다.
메모리 카드(1)는, 인터페이스 회로(2), 마이크로 컴퓨터(3), 및 플래시 메모리(불휘발성 메모리)(4)로 구성되어 있으며, 이들의 전자부품이 프린트 배선 기판상에 실장되어 있다. 그리고, 인터페이스 회로(2), 마이크로 컴퓨터(3)에 의해 컨트롤러가 구성되어 있다. 이 메모리 카드(1)는, 예컨대, 퍼스널 컴퓨터 등의 호스트에 설치된 PC카드 슬롯에 착탈자재로 실장된다.
또, 인터페이스 회로(2)는, 커맨드 레지스터(5), 데이터 레지스터(6), 스테이터스 레지스터(7), 커맨드 디코더(8), 버퍼 메모리(9, 10), 및 인터페이스 컨트롤러(11)로 구성되어 있다.
마이크로 컴퓨터(3)는, 인터럽트 제어회로(12), 마이크로 프로세서(오프세트 연산부를 포함한다)(13), ROM(Read Only Memory)(14), RAM(Random Access Memory)(15), 타이머(16), 및 입출력 포트(17)로 구성되어 있다.
인터페이스 회로(2)는, PC카드 슬롯을 통해 전술한 호스트에 인터페이스되고, 커맨드 레지스터(5)에는, 호스트에서 파일조작 커맨드가 부여되고, 커맨드는 커맨드 디코더(8)에 의해 디코드된다.
커맨드 디코더(8)는 디코드 결과에 따른 인터럽트 신호(IRQ1 ~ IRQn)를 출력한다. 인터럽트 신호(IRQ1 ~ IRQn)는 인터럽트 제어회로(12)에서 마이크로 프로세서(13)에 부여된다. ROM(14)에는 마이크로 프로세서(13)의 동작 프로그램이 저장되어 있으며, 마이크로 프로세서(13)는 RAM(15)을 워크영역으로 이용하여 프로그램을 실행한다.
마이크로 프로세서(13)는, 동작 프로그램에 기초하여 인터페이스 회로(2), 플래시 메모리(4)에 대한 제어를 입출력 포트(17)를 통해 행한다. 마이크로 컴퓨터(3)는, 인터페이스 컨트롤러(11)에 어드레스 신호(ADRS), 어드레스 스트로브 신호(ASb), 리드신호(RDb), 및 라이트 신호(WRb)를 출력하고, 인터페이스 컨트롤러(11)와의 사이에서 데이터 정보(DATA)의 교환을 한다.
이것에 의해, 마이크로 컴퓨터(3)는, 데이터 레지스터(6), 스테이터스 레지스터(7), 및 버퍼 메모리(9, 10)를 인터페이스 컨트롤러(11)를 통해 액세스한다.
플래시 메모리(4)는, 인터페이스 컨트롤러(11)에 접속되는 제어신호선, 및 데이터 신호선을 공유하고 있다. 또한, 마이크로 컴퓨터(3)는, 플래시 메모리(4)의 각각에 대응하는 칩이네이블 신호(CE)를 입출력 포트(17)에서 출력한다.
이것에 의해, 컴퓨터(3)는, 플래시 메모리(4)에서의 칩을 선택하여, 인터페이스 컨트롤러(11)에 어드레스 신호(ADRS), 어드레스 스트로브 신호(ASb), 리드신호(RDb), 라이트 신호(WRb)를 출력하고, 인터페이스 컨트롤러(11)를 통해 칩 선택된 플래시 메모리(4)에 대한 액세스를 행한다.
또, 플래시 메모리(4)에 대해서, 도 2를 이용하여 설명한다.
플래시 메모리(4)는, 메모리 어레이(18), X어드레스 디코더(19), X어드레스 버퍼(20), 멀티플렉서(21), 입력버퍼(22), 데이터 제어회로(23), Y게이트 어레이(24), Y어드레스 디코더(25), 출력버퍼(26), Y어드레스 카운터(27), 제어신호 버퍼회로(28), 모드 제어회로(29), 내부전원회로(30)로 구성되어 있다.
메모리 어레이(18)는, 메모리 매트, 센스래치회로를 가지고 있다. 이 메모리 매트는, 전기적으로 소거 및 기록 가능한 불휘발성의 메모리 셀 트랜지스터를 다수 가지고 있다.
이 메모리 어레이(18)가 가지는 메모리 셀 트랜지스터(Tr)는, 도 11에 나타내는 바와 같이, 반도체 기판, 혹은 메모리 웰(SUB)에 형성된 소스(S), 드레인(D), 채널영역에 터널산화막을 통해 형성된 플로팅 게이트(FG), 및 이 플로팅 게이트(FG)에 층간절연막을 통해 적층된 컨트롤러 게이트(CG)로 구성되어 있다. 컨트롤러 게이트(CG)는 워드선(도 2)에, 드레인(D)은 비트선(도 2)에 각각 접속되어 있다.
외부입력단자(I/O0 ~ I/O7)는, 어드레스 입력단자, 데이터 입력단자, 커맨드 입력단자가 병용된다. 외부입력단자(I/O0 ~ I/O7)에서 입력된 X어드레스 신호는, 멀티플렉서(21)를 통해 X어드레스 버퍼(20)에 공급된다. X어드레스 버퍼(20)에서 출력된 내부 상보 어드레스는 X어드레스 디코더에 의해 디코드되어 워드선을 구동한다.
Y어드레스 디코더(25)에서 출력되는 선택신호에 기초하여 Y게이트 어레이(24)가 비트선의 선택을 행한다. 입출력단자(I/O0 ~ I/O7)에서 입력된 Y어드레스 신호는, Y어드레스 카운터(27)에 프리세트되고, 프리세트점을 기점으로 순차 인크리먼트된 어드레스 신호가 Y어드레스 디코더(25)에 부여된다.
Y게이트 어레이(24)에서 선택된 비트선은, 데이터 출력동작시에는 출력버퍼(26)의 입력부에 도통되고, 데이터 입력동작시에는 데이터 제어회로(23)를 통해 입력버퍼(22)의 출력단자에 도통된다.
출력버퍼(26), 입력버퍼(22)와 입출력단자(I/O0 ~ I/O7)와의 접속은, 멀티플렉서(21)에 의해 제어된다. 입출력단자(I/O0 ~ I/O7)에서 공급되는 커맨드는, 멀티플렉서(21) 및 입력버퍼(22)를 통해 모드 제어회로(29)에 부여된다.
데이터 제어회로(23)는, 입출력단자(I/O0 ~ I/O7)에서 공급되는 데이터 이외에, 모드 제어회로(29)의 제어에 따른 논리치의 데이터를 메모리 어레이(18)에 공급한다.
제어신호 버퍼회로(28)는, 액세스 제어신호로서 칩 이네이블신호(CEb), 출력 이네이블신호(OEb), 기록 이네이블신호(WEb), 시리얼 블럭신호(SC), 리세트신호(RESb), 및 커맨드 이네이블신호(CDEb)가 공급된다.
모드 제어회로(29)는, 그들 신호의 상태에 따라 외부와의 신호 인터페이스 기능등을 제어하고, 커맨드 코드에 따라 내부동작을 제어한다. 또, 모드 제어회로(29)는, 커맨드에 따라 플래시 메모리(4)의 제어를 행한다.
내부전원회로(30)는, 기록, 소거 배리파이, 판독 등에 이용되는 각종의 전원을 생성하고, X어드레스 디코더(19), 메모리 매트(18)의 메모리 셀 어레이등에 공 급한다.
다음에, 메모리 카드(1)에 설치된 플래시 메모리(4)에 할당되는 논리 어드레스에 대해서, 도 3, 도 4를 이용하여 설명한다.
도 3의 좌측에 나타내는 논리 어드레스에 있어서는, 처음에 플래시 메모리(4)의 관리를 행하는 제어정보 데이터를 저장하는 영역, 이른바, 시스템 영역이 할당되어 있다.
이 시스템 영역에서의 제어정보 데이터는, 마스터 부트 레코드(MBR), 부트 섹터(BS), 파일 올로케이션 테이블(FAT1, FAT2), 및 디렉토리(DR)에 의해 구성되어 있다. 시스템 영역에서의 논리 어드레스는, 0h번지 ~ 4Ch번지(여기서, h는 16진수를 나타낸다)가 할당되어 있다.
또, 시스템 영역의 뒤에는, 논리 어드레스에서의 4Dh번지 이후부터 3D7Fh번지까지의 영역이, 호스트에서 입출력되는 데이터가 저장되는 데이터 영역으로서 할당되어 있다. 이 데이터 영역에서의 각각의 번지는, 소거/판독/기록이 행해지는 단위인 섹터로 이루어지며, 1섹터는 데이터 길이가 512Byte의 유저 데이터 영역과 16바이트의 관리정보영역으로 구성되어 있다.
이들 시스템 영역 및 데이터 영역의 논리 어드레스 할당은, 메모리 카드(1)의 제품출하 전에 행해지는 포맷, 예컨대, MS-DOS(Microsoft Disk Operating System : 미국 마이크로소프트사의 등록상표) 포맷시에 작성된다.
또한, 도 3의 우측에 나타내는 MS-DOS 포맷 전의 플래시 메모리(4)에 고정되어 있는 어드레스인 물리 어드레스에 대해서 설명한다.
이 플래시 메모리(4)의 경우, 예컨대, 물리 어드레스는, 0h번지 ~ 3D7F번지가 논리 어드레스의 할당에 이용되고, 3D80h번지 이후에는 불량섹터의 관리를 행하기 위한 불량 등록 테이블을 저장하는 불량 등록 데이블 저장영역, 및 그 불량 등록 데이블 섹터를 참조하여 대체 섹터에 액세스를 행하는 대체 섹터영역, 메모리 카드의 드라이브 정보(ID)(Identify Drive Information)를 저장하는 ID영역, 메모리 카드의 이름, 종류, 기능 등의 정보(CIS)(Card Information Structure)를 저장하는 CIS 영역이 설치된다. 불량 등록 테이블 저장영역, ID영역, CIS영역은 유저에 의한 액세스가 불가능한 영역이다.
또, 플래시 메모리(4)에서의 물리 어드레스에의 논리 어드레스 할당에 대해서 설명한다.
물리 어드레스는, 0h번지부터 순서대로 블럭(8섹터 = 4kByte)단위로 구분되어 있다. 논리 어드레스의 데이터 영역이 시작하는 어드레스는, 4Dh번지이다.
이 어드레스에 가까운 블럭에는, 물리 어드레스의 50h번지부터 시작하는 블럭이 있으므로, 이 블럭의 선두 어드레스인 50h번지와 논리 어드레스에서의 데이터 영역의 선두 어드레스인 4Dh번지와 일치시켜 순차 데이터 영역으로서 할당한다.
따라서, 물리 어드레스의 3h번지에 논리 어드레스의 0h번지가 오프세트되어 할당되게 된다. 이것에 의해, 블럭과, 호스트에서 출력되는 데이터의 단위인 클러스터(4kByte 또는 2kByte)를 일치시킬 수 있다.
오프세트는, 플래시 메모리(4)인 영역, 예컨대, 영역(ID) 등에 미리 저장되어 있으며, 전원투입시에, 그 오프세트 값을 마이크로 프로세서(13)가 판독하여 RAM(15)에 저장한다.
호스트에서 지정된 논리 어드레스는, RAM(15)에 저장되어 있는 오프세트 값을 이용하여 마이크로 프로세서(13)가 연산함으로써 물리 어드레스로 변환된다.
여기서, 물리 어드레스와 논리 어드레스는 오프세트되어 할당되어 있으므로, 논리 어드레스 3D7Dh번지 ~ 3D7Fh번지가 부족하게 되지만, 이들 3개의 어드레스는, 물리 어드레스의 선두로 되돌아가, 오프세트에 의해 할당되어 있지 않은 물리 어드레스의 0h번지 ~ 2h번지에 할당된다.
또, 도 4는, 플래시 메모리(4)의 물리 어드레스에 논리 어드레스를 오프세트하여 할당한 경우를 예시한 것이다.
논리 어드레스의 4Dh번지부터의 데이터 영역은, 물리 어드레스에서의 블럭의 선두 어드레스인 50h번지부터 할당되고 있으며, 오프세트하여 할당됨으로써 남은 논리 어드레스의 3D7Dh번지 ~ 3D7Fh번지는, 물리 어드레스의 선두로 되돌아가, 0h번지 ~ 2h번지에 각각 할당되어 있다.
다음에, 논리 어드레스가 할당된 플래시 메모리(4)에서의 데이터 소거에 대해서 설명한다.
예컨대, 논리 어드레스의 4Dh번지부터 16섹터(2클러스터)의 데이터 기록이 행해지는 경우, 논리 어드레스에서의 4Dh번지부터 16섹터의 사이, 즉, 물리 어드레스에서의 50h번지 ~ 60h번지의 2개의 블럭소거만으로 좋으므로, 소거회수를 2회로 할 수 있다.
여기서, 본 발명자가 검토한 논리 어드레스를 그대로 물리 어드레스에 할당 한 경우의 논리 어드레스 할당방법을 도 5에 나타낸다.
이 경우, 논리 어드레스에서의 데이터 영역은, 4Dh번지부터 시작하고 있으며, 동일하게 물리 어드레스에서의 데이터 영역도 4Dh번지부터 시작하고 있다. 본 실시형태 1과 마찬가지로, 물리 어드레스는, 0h번지부터 순서대로 블럭(8섹터 = 4kByte)단위로 구분되어 있다. 그러나, 물리 어드레스의 4Dh번지는 블럭의 선두가 아니고, 도중의 어드레스이므로, 클러스터와 블럭의 선두 어드레스도 어긋나게 된다.
이 때, 논리 어드레스의 4Dh번지부터 16섹터의 데이터 기록이 행해지면, 물리 어드레스에서도 4Dh번지 ~ 5Dh번지의 16섹터의 데이터 소거를 행하지 않으면 안된다.
이 경우, 블럭소거가 행해지는 것은, 물리 어드레스에서의 50h번지 ~ 57h번지뿐이며, 그 이외의 번지에서의 8섹터는, 각각 개별적으로 섹터소거를 행하지 않으면 안되고, 소거회수는 9회가 되며, 데이터 소거시간이 큰 폭으로 크게 되어 버린다.
다음에, 플래시 메모리(4)에서의 데이터 기록동작에 대해서, 도 6의 타이밍 챠트를 이용하여 설명한다.
먼저, 호스트에서부터 1섹터분의 데이터인 전송데이터(T1)가 메모리 카드(1)의 버퍼 메모리에 전송된다. 메모리 카드(1)의 컨트롤러는, 기록되는 플래시 메모리(4)의 각각의 섹터(S1) ~ 섹터(S8)에서의 관리정보를 리드하고, 그 결과 불량이 없는 경우에는, 그들 섹터(S1 ~ S8)의 데이터를 한번에 소거 즉, 블럭소거를 행한다.
그 전송데이터(T1)는, 플래시 메모리(4)의 입력버퍼에 전송되어, 데이터 기록(기록 1)이 행해진다. 이 때, 호스트에서는, 다음의 데이터인 전송데이터(T2)가 전송된다.
전송데이터(T1)가 기록된 후, 계속해서 전송데이터(T2)가, 플래시 메모리(4)의 입력버퍼에 입력되고, 데이터 기록(기록2)이 행해진다. 이 때, 마찬가지로, 호스트에서는, 다음의 데이터인 전송데이터(T3)가 전송된다.
이와 같이, 플래시 메모리(4)에의 데이터 기록과, 메모리 카드에의 데이터 전송을 동시에 실행하고, 또 데이터를 블럭소거함으로써 플래시 메모리(4)에의 데이터 기록을 효율적으로 행할 수 있다.
이것에 의해, 본 실시형태 1에 의하면, 플래시 메모리(4)의 물리 어드레스를 오프세트시켜 논리 어드레스 할당을 행하므로, 블럭영역과 클러스터 영역을 일치시킬 수 있고, 플래시 메모리(4)의 데이터를 블럭단위로 소거하므로, 데이터 기록시의 소거회수를 큰 폭으로 적게 할 수 있다.
또, 플래시 메모리(4)에의 데이터 기록과, 호스트에서의 메모리 카드에의 데이터 전송을 동시에 실행함으로써, 데이터의 기록시간을 큰 폭으로 단축할 수 있다.
다음에, 실시형태 2에서의 메모리 카드(1a)의 구성에 대해서 설명한다. 메모리 카드(1a)는, 도 7에 나타내는 바와 같이, 인터페이스 회로(2), 마이크로 컴퓨터(3), 및 플래시 메모리(4, 4a)로 구성되어 있다. 인터페이스 회로(2), 마이 크로 컴퓨터(3), 플래시 메모리(4)는, 상기 실시형태 1과 같은 구성이지만, 플래시 메모리(4a)가 새롭게 설치되어 있다.
또, 인터페이스 회로(2)도, 상기 실시형태 1과 마찬가지로, 커맨드 레지스터(5), 데이터 레지스터(6), 스테이터스 레지스터(7), 커맨드 디코더(8), 버퍼 메모리(9, 10), 및 인터페이스 컨트롤러(11)로 구성되어 있으며, 마이크로 컴퓨터(3)도 상기 실시형태 1과 마찬가지로, 인터럽트 제어회로(12), 마이크로 프로세서(13), ROM(14), RAM(5), 타이머(16), 및 입출력 포트(17)로 구성되어 있다.
플래시 메모리(불휘발성 메모리)(4a)는, 플래시 메모리(4)와 인터페이스 컨트롤러(11)에 접속되는 제어신호선, 및 데이터 신호선을 공유하고 있다. 또한, 마이크로 컴퓨터(3)는, 플래시 메모리(4, 4a)의 각각에 대응하는 칩이네이블신호(CE)를 입출력 포트(17)에서 출력한다.
이것에 의해, 마이크로 컴퓨터(3)는, 플래시 메모리(4, 4a)에서의 칩을 선택하고, 인터페이스 컨트롤러(11)에 어드레스 신호(ADRS), 어드레스 스트로브 신호(ASb), 리드신호(RDb), 라이트 신호(WRb)를 출력하고, 인터페이스 컨트롤러(11)를 통해 칩 선택된 플래시 메모리(4, 4a)에 대한 액세스를 행한다.
또한, 플래시 메모리(4a)에서의 구성도, 플래시 메모리(4) (도 2)와 동일하여, 메모리 어레이(18), X어드레스 디코더(19), X어드레스 버퍼(20), 멀티플렉서(21), 입력버퍼(22), 데이터 제어회로(23), Y게이트 어레이(24), Y어드레스 디코더(25), 출력버퍼(26), Y어드레스 카운터(27), 제어신호 버퍼회로(28), 모드 제어회로(29), 내부전원회로(30)로 구성되어 있다.
다음에, 메모리 카드(1a)에 설치된 플래시 메모리(4, 4a)에 할당되는 논리 어드레스에 대해서 도 8을 이용하여 설명한다.
도 8에서의 좌측은, 플래시 메모리(4)에 논리 어드레스가 할당된 데이터 구성이며, 우측에는, 플래시 메모리(4a)에 논리 어드레스가 할당된 데이터 구성을 나타내고 있다.
논리 어드레스에 있어서는, 처음에 플래시 메모리(4)의 관리를 행하는 제어정보 데이터를 저장하는 시스템 영역이 할당되어 있다. 이 시스템 영역에서의 제어정보 데이터는, 상기 실시형태 1과 마찬가지로, 마스터 부트 레코드(MBR), 부트섹터(BS), 파일 올로케이션 테이블(FAT), 및 디렉토리(DR)로 구성되어 있다.
이 시스템 영역은, 논리 어드레스에 있어서, 0h번지 ~ 58h번지까지가 할당되어 있으며, 시스템 영역의 뒤에는, 논리 어드레스의 59h번지 이후부터 7AFFh번지까지의 영역이, 호스트에서 입출력되는 데이터가 저장되는 데이터 영역으로서 할당되어 있다. 이들 시스템 영역 및 데이터 영역의 논리 어드레스 할당은, 상기 실시형태 1과 마찬가지로, 메모리 카드(1)의 제품출하 전에 행하는 MOS-DOS 포맷에 의해 작성된다.
또한, 플래시 메모리(4, 4a)에 고정되어 있는 물리 어드레스에 대해서 설명한다.
플래시 메모리(4, 4a)의 물리 어드레스는, 0h번지 ~ 3D7F번지가 논리 어드레스의 할당에 이용되고, 3D80h번지 이후가, 불량섹터의 관리를 행하기 위한 불량 등록 테이블을 저장하는 불량 등록 테이블 저장영역, 및, 그 불량 등록 테이블 섹터 를 참조하여 대체 섹터에 액세스를 행하는 대체 액세스 영역, 메모리 카드의 드라이브 정보(ID)를 저장하는 ID영역, 메모리 카드의 이름, 종류, 기능 등의 정보(CIS)를 저장하는 CIS영역으로서 설치된다. 불량 등록 테이블 저장영역, ID영역, CIS영역은 유저에 의한 액세스가 불가능한 영역이다.
또, 플래시 메모리(4, 4a)에서의 물리 어드레스에의 논리 어드레스 할당에 대해서 설명한다.
플래시 메모리(4, 4a)의 물리 어드레스는, 0h번지부터 순서대로 블럭(8섹터 = 4kByte)단위로 구분되어 있다. 상술한 바와 같이, 논리 어드레스의 데이터 영역이 시작하는 어드레스는, 59h번지이다.
이 59h번지에 가장 가까운, 플래시 메모리(4)에서의 블럭의 물리 어드레스는, 30h번지부터 시작하는 블럭이 되므로, 이 블럭의 선두 어드레스인 30h번지와 논리 어드레스에서의 데이터 영역의 선두 어드레스인 59h번지와 일치시켜, 30h번지에서 시작하는 블럭을 데이터 영역으로서 할당한다.
플래시 메모리(4)의 30h번지부터 시작하는 블럭이 데이터 영역으로서 할당되면, 플래시 메모리(4a)에서의 30h번지부터 시작하는 블럭을 데이터 영역으로서 할당한다.
그리고, 이들 플래시 메모리(4, 4a)에서의 데이터 영역을 블럭단위에 의해 번갈아 할당한다. 예컨대, 도 9에 나타내는 바와 같이, 논리 어드레스의 59h번지 ~ 60h번지를 플래시 메모리(4)에 할당하면, 그 다음의 논리 어드레스인 61h번지 ~ 68h번지는, 플래시 메모리(4a)에 할당되게 된다.
여기서, 물리 어드레스와 논리 어드레스와는 오프세트되어 할당되어 있으므로, 논리 어드레스 7AF0h번지 ~ 7AFFh번지가 부족하지만, 이들 7개의 어드레스는, 플래시 메모리(4)에서의 물리 어드레스의 선두로 되돌아가, 오프세트에 의해 할당되어 있지 않은 물리 어드레스의 0h번지 ~ 6h번지에 할당된다.
따라서, 논리 어드레스 7AF0h번지 ~ 7AFFh번지가, 플래시 메모리(4)에서의 물리 어드레스의 0h번지 ~ 6h번지에 오프세트되어 할당되게 된다.
또, 시스템 영역에서의 논리 어드레스의 할당에 대해서 설명한다. 이 시스템 영역에서의 논리 어드레스도 마찬가지로, 물리 어드레스에서 형성된 블럭단위에 의해 할당이 행해진다.
전술한 바와 같이, 플래시 메모리(4)의 물리 어드레스는, 7섹터분 오프세트되어 있으므로, 플래시 메모리(4)의 0h번지 ~ 7h번지에 의해 형성되는 블럭에 있어서, 0h번지 ~ 6h번지가 데이터 영역으로 되어 있으며, 이 블럭에서는 1섹터의 시스템 영역이 할당된다.
따라서, 물리 어드레스의 7h번지에 마스터 부트 레코드(MBR)가 할당되고, 그 후의 데이터 영역에 할당되는 부트섹터(BS), 파일 올로케이션 테이블(FAT), 및 디렉토리(DR)는, 플래시 메모리(4, 4a)의 1블럭씩(8섹터) 번갈아 할당되게 된다.
또한, 플래시 메모리(4, 4a)에서의 데이터 소거에 대해서 설명한다.
예컨대, 논리 어드레스의 59h번지부터 16섹터(2클러스터)의 데이터 기록이 행해지는 경우, 논리 어드레스에서의 59h번지부터 16섹터의 사이 즉, 물리 어드레스에 있어서는, 플래시 메모리(4)의 30h번지 ~ 37h번지, 및 플래시 메모리(4a)의 30h번지 ~ 37h번지의 2개의 블럭을 소거하는 것만으로 좋으므로, 소거회수를 2회로 할 수 있다.
또, 플래시 메모리(4, 4a)에서의 데이터 기록동작에 대해서, 도 10의 타이밍 챠트를 이용하여 설명한다.
먼저, 호스트에서 1섹터만큼의 데이터인 전송데이터(T1)가 메모리 카드(1)의 버퍼 메모리에 전송된다. 메모리 카드(1)의 컨트롤러는, 기록되는 플래시 메모리(4a)에서의 섹터(S1) ~섹터(S8)의 관리정보를 리드하고, 그 결과, 불량이 없는 경우에는, 그들 8섹터의 데이터를 한번에 소거 즉, 블럭소거가 행해진다.
전송데이터(T1)는, 플래시 메모리(4a)의 입력버퍼에 전송되고, 데이터 기록(기록 1)이 행해진다. 이 때, 호스트에서는, 다음의 데이터인 전송데이터(T2)가 전송된다. 이 전송데이터(T2)가 전송되는 동안, 메모리 카드(1)의 컨트롤러는, 두번째의 플래시 메모리(4)에서의 섹터(S9)의 관리정보를 리드한다.
전송데이터(T1)가 기록된 후, 계속해서 전송데이터(T2)가, 플래시 메모리(4)의 입력버퍼에 전송되고, 데이터 기록(기록 2)이 행해진다. 이 때, 동일하게, 호스트에서는, 다음의 데이터인 전송데이터(T3)가 전송된다. 또, 이 전송데이터(T3)가 전송되는 동안, 메모리 카드(1)의 컨트롤러는, 두번째의 플래시 메모리(4)에서의 섹터(S10)의 관리정보를 리드한다.
이들의 동작을 반복함으로써, 전송데이터(T5)가 플래시 메모리(4)의 입력버퍼에 전송되고, 데이터 기록(기록 5)이 행해지면, 호스트에서는, 다음의 데이터인 전송데이터(T6)가 전송된다. 이 전송데이터(T6)가 전송되는 동안, 메모리 카드(1) 의 컨트롤러는, 플래시 메모리(4)에서의 섹터(S13, S14)의 관리정보를 리드한다.
마찬가지로, 전송데이터(T6)가 플래시 메모리(4)의 입력버퍼에 전송되고, 데이터 기록(기록 6)이 행해진다. 또, 호스트에서 다음의 데이터인 전송데이터(T7)가 전송되면, 전송데이터(T7)가 전송되는 동안, 메모리 카드(1)의 콘트롤러는, 플래시 메모리(4)의 섹터(15, 16)의 관리정보를 리드한다. 여기서, 플래시 메모리(4)에서의 1블럭분의 섹터(S9 ~ S16)의 관리정보가 리드된 것으로 된다.
그리고, 전송데이터(T7)가 플래시 메모리(4)의 입력버퍼에 전송되어, 데이터 기록(기록 7)이 행해지고, 호스트에서 다음의 데이터인 전송데이터(T8)가 전송되면, 전송데이터(T8)가 전송되는 동안, 플래시 메모리(4)의 8섹터의 데이터를 블럭소거 한다.
이상의 동작을 반복하여 행함으로써, 2개의 플래시 메모리(4, 4a)에서의 소거, 기록, 메모리 카드(1)에의 데이터 전송을 병렬로 하여 실행할 수 있다.
그것에 의해, 본 실시형태 2에 있어서, 호스트에서 데이터 전송되고 있는 동안에, 메모리 카드(1)의 플래시 메모리(4, 4a)에서의 데이터 기록, 데이터의 블럭소거를 행할 수 있으므로, 데이터의 기록시간을 큰 폭으로 단축할 수 있다.
또, 본 실시형태 2에서는, 플래시 메모리가 2개인 경우에 대해서 기재했지만, 이 플래시 메모리가 4개 이상의 2n개의 경우에 있어서도, 본 실시형태 2에서의 기록동작을 행함으로써, 데이터의 기록시간을 큰 폭으로 단축할 수 있다.
이상, 본 발명자에 의해 행해진 발명을 실시예에 기초하여 구체적으로 설명 했지만, 본 발명은 상기 실시예에 한정되는 것이 아니고, 그 요지를 이탈하지 않는 범위에서 여러가지 변경 가능한 것은 말할 필요도 없다.
이상과 같이, 본 발명에서의 메모리 카드, 논리 어드레스의 할당방법 및 데이터 기록방법은, 메모리 카드에서의 데이터 소거, 및 기록의 고속화 기술에 적용하고 있다.

Claims (10)

  1. 삭제
  2. 오프세트 값이 저장된 오프세트 저장부와, 상기 오프세트 저장부의 오프세트 값과 입력된 논리 어드레스를 연산하는 오프세트 연산부를 구비하고, 상기 오프세트 연산부의 연산에 의해 논리 어드레스를 오프세트시켜 불휘발성 메모리에 구비된 물리 어드레스에 할당하여, 블럭단위와 클러스터 단위를 일치시키며,
    상기 오프세트 저장부를 상기 불휘발성 메모리의 어느 영역에 구비한 것을 특징으로하는 메모리 카드.
  3. 제 2 항에 있어서,
    상기 오프세트 값은, 상기 불휘발성 메모리에서의 유저가 액세스 불가능한 영역에 저장되는 것을 특징으로 하는 메모리 카드.
  4. 삭제
  5. 삭제
  6. 불휘발성 메모리의 물리 어드레스를 구성하는 제1의 부분과, 제1의 부분에 연속하는 물리 어드레스를 가지는 제2의 부분을 가지고, 2개의 불휘발성 메모리에서의 논리 어드레스의 할당방법으로서, 상기 2개의 불휘발성 메모리에 구비된 각각의 물리 어드레스를, 어느 섹터마다로 모아서 섹터 블럭을 형성하고, 상기 2개의 불휘발성 메모리 중, 한쪽의 불휘발성 메모리의 임의의 섹터 블럭에서의 선두의 물리 어드레스에 데이터 영역이 시작하는 선두의 논리 어드레스를 할당하도록 상기 한쪽의 불휘발성 메모리의 물리 어드레스의 처음에 소정의 오프세트를 부가한 어드레스를 논리 어드레스의 선두에 할당한 후, 나머지의 논리 어드레스를 번갈아 상기 2개의 불휘발성 메모리의 섹터 블럭마다로 할당하여, 논리 어드레스의 데이터 영역이, 상기 2개의 불휘발성 메모리에서의 물리 어드레스의 제1의 부분의 마지막 섹터까지 할당하면, 나머지의 데이터 영역을 상기 한쪽의 불휘발성 메모리에서의 물리 어드레스의 제2의 부분의 처음부터 할당하는 것을 특징으로 하는, 논리 어드레스의 할당방법.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 2N개의 불휘발성 메모리가 구비된 메모리 카드의 데이터 기록방법으로서, 상기 불휘발성 메모리는, 물리 어드레스를 구성하는 제1의 부분과, 제1의 부분에 연속하는 물리 어드레스를 가지는 제2의 부분을 가지고, 물리 어드레스의 선두에 소정의 오프세트를 부가한 어드레스를 논리 어드레스의 선두에 할당되어, 첫번째로 데이터 기록되는 불휘발성 메모리에 구비된 섹터 블럭의 관리정보를 판독하고, 그 섹터 블럭을 블럭소거하는 제1의 공정과, 상기 메모리 카드에 일시적으로 저장된 기록 데이터를 상기 불휘발성 메모리의 섹터에 저장하면서, 두번째로 데이터 기록되는 불휘발성 메모리에서의 임의의 섹터의 관리정보를 판독하고, 다음의 기록 데이터를 상기 메모리 카드에 일시적으로 저장하는 제2의 공정과, 상기 두번째로 데이터 기록되는 불휘발성 메모리에서의 섹터 블럭의 모든 관리정보가 판독되면, 그 섹터 블럭의 소거를 행하면서, 상기 메모리 카드에 일시적으로 저장된 기록 데이터의 나머지를 상기 첫번째의 불휘발성 메모리의 섹터에의 저장을 계속 행하는 제3의 공정과, 상기 제2, 제3의 공정에서의 처리를, 2N번째로 데이터 기록되는 불휘발성 메모리까지 반복하여 행하는 것을 특징으로 하는 메모리 카드의 데이터 기록방법.
KR1020017010223A 1999-02-22 2000-02-15 메모리 카드, 논리 어드레스의 할당방법 및 데이터 기록방법 KR100716576B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP4251899 1999-02-22
JPJP-P-1999-00042518 1999-02-22

Publications (2)

Publication Number Publication Date
KR20010108209A KR20010108209A (ko) 2001-12-07
KR100716576B1 true KR100716576B1 (ko) 2007-05-11

Family

ID=12638311

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017010223A KR100716576B1 (ko) 1999-02-22 2000-02-15 메모리 카드, 논리 어드레스의 할당방법 및 데이터 기록방법

Country Status (6)

Country Link
US (1) US6725322B1 (ko)
EP (1) EP1209568A1 (ko)
JP (1) JP4173642B2 (ko)
KR (1) KR100716576B1 (ko)
TW (1) TW502441B (ko)
WO (1) WO2000050997A1 (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4534336B2 (ja) 2000-10-13 2010-09-01 ソニー株式会社 メモリ装置におけるデータ管理方法
JP2003296177A (ja) 2002-04-03 2003-10-17 Sony Corp 記録装置および方法、記録媒体、並びにプログラム
US7478248B2 (en) * 2002-11-27 2009-01-13 M-Systems Flash Disk Pioneers, Ltd. Apparatus and method for securing data on a portable storage device
US6898680B2 (en) 2003-01-03 2005-05-24 Micrel, Incorporated Minimization of overhead of non-volatile memory operation
FI117489B (fi) * 2003-02-07 2006-10-31 Nokia Corp Menetelmä muistikortin osoittamiseksi, muistikorttia käyttävä järjestelmä, ja muistikortti
US7023620B1 (en) 2003-07-03 2006-04-04 Research Electro-Optics, Inc. Beam array pitch controller
CN100422956C (zh) * 2003-08-06 2008-10-01 松下电器产业株式会社 半导体存储卡、存取装置和存取方法
JPWO2005029311A1 (ja) * 2003-09-18 2006-11-30 松下電器産業株式会社 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法
US7173852B2 (en) * 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
US8607016B2 (en) * 2004-07-21 2013-12-10 Sandisk Technologies Inc. FAT analysis for optimized sequential cluster management
JP4561246B2 (ja) * 2004-08-31 2010-10-13 ソニー株式会社 メモリ装置
US7386655B2 (en) * 2004-12-16 2008-06-10 Sandisk Corporation Non-volatile memory and method with improved indexing for scratch pad and update blocks
US7395404B2 (en) * 2004-12-16 2008-07-01 Sandisk Corporation Cluster auto-alignment for storing addressable data packets in a non-volatile memory array
US7315916B2 (en) * 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7412560B2 (en) * 2004-12-16 2008-08-12 Sandisk Corporation Non-volatile memory and method with multi-stream updating
US7366826B2 (en) * 2004-12-16 2008-04-29 Sandisk Corporation Non-volatile memory and method with multi-stream update tracking
US7206230B2 (en) 2005-04-01 2007-04-17 Sandisk Corporation Use of data latches in cache operations of non-volatile memories
US20060253643A1 (en) * 2005-05-04 2006-11-09 Delkin Devices, Inc. Memory with isolated master boot record
US7409489B2 (en) * 2005-08-03 2008-08-05 Sandisk Corporation Scheduling of reclaim operations in non-volatile memory
WO2007130976A2 (en) * 2006-05-05 2007-11-15 Sandisk Corporation Non-volatile memory with background data latch caching during program operations and methods therefor
TWI427637B (zh) * 2006-05-05 2014-02-21 Sandisk Technologies Inc 在程式執行期間具有背景資料鎖存快取的非揮發性記憶體及方法
WO2007131059A2 (en) * 2006-05-05 2007-11-15 Sandisk Corporation Non-volatile memory with background data latch caching during erase operations and methods therefor
JP4461170B2 (ja) 2007-12-28 2010-05-12 株式会社東芝 メモリシステム
US8695087B2 (en) * 2008-04-04 2014-04-08 Sandisk Il Ltd. Access control for a memory device
TWI373773B (en) * 2008-05-27 2012-10-01 Phison Electronics Corp Storage sysetm having multiple non-volatile memory, and controller and access method thereof
JP5193822B2 (ja) * 2008-11-19 2013-05-08 株式会社東芝 追記型メモリデバイス
US8180995B2 (en) * 2009-01-21 2012-05-15 Micron Technology, Inc. Logical address offset in response to detecting a memory formatting operation
US8392687B2 (en) * 2009-01-21 2013-03-05 Micron Technology, Inc. Solid state memory formatting
US20100191896A1 (en) * 2009-01-23 2010-07-29 Magic Technologies, Inc. Solid state drive controller with fast NVRAM buffer and non-volatile tables
JP5323030B2 (ja) * 2010-12-01 2013-10-23 株式会社東芝 メモリ装置及びメモリ制御方法
JP5677336B2 (ja) 2011-08-01 2015-02-25 株式会社東芝 メモリ・デバイス
KR20140023609A (ko) * 2012-08-16 2014-02-27 삼성전자주식회사 비휘발성 메모리 장치 및 그 동작 방법
JP2014086062A (ja) * 2012-10-29 2014-05-12 Sony Corp 記憶制御装置、記憶装置、情報処理システム、および、記憶制御方法
US10877900B1 (en) 2019-06-26 2020-12-29 Western Digital Technologies, Inc. Enabling faster and regulated device initialization times
US11527300B2 (en) 2020-08-26 2022-12-13 Western Digital Technologies, Inc. Level dependent error correction code protection in multi-level non-volatile memory
US11436083B2 (en) 2020-09-04 2022-09-06 Western Digital Technologies, Inc. Data address management in non-volatile memory

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124175A (ja) * 1992-08-28 1994-05-06 Sharp Corp 半導体ディスク装置
WO1999008177A1 (en) * 1997-08-04 1999-02-18 Tokyo Electron Limited Data processing system, block erasing type memory device and memory medium storing program for controlling memory device
US9908177B2 (en) * 2014-05-20 2018-03-06 Raytheon Company Method of making an object with a metal-non-metal seal

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
JP2582487B2 (ja) 1991-07-12 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 半導体メモリを用いた外部記憶システム及びその制御方法
US6256642B1 (en) 1992-01-29 2001-07-03 Microsoft Corporation Method and system for file system management using a flash-erasable, programmable, read-only memory
JP2856621B2 (ja) * 1993-02-24 1999-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 一括消去型不揮発性メモリおよびそれを用いる半導体ディスク装置
US5799168A (en) 1996-01-05 1998-08-25 M-Systems Flash Disk Pioneers Ltd. Standardized flash controller
JP3661286B2 (ja) 1996-08-01 2005-06-15 富士ゼロックス株式会社 印刷データ格納方法及び印刷装置
JP3942807B2 (ja) * 2000-06-06 2007-07-11 株式会社ルネサステクノロジ ブロックアラインメント機能付き半導体記憶装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124175A (ja) * 1992-08-28 1994-05-06 Sharp Corp 半導体ディスク装置
WO1999008177A1 (en) * 1997-08-04 1999-02-18 Tokyo Electron Limited Data processing system, block erasing type memory device and memory medium storing program for controlling memory device
US9908177B2 (en) * 2014-05-20 2018-03-06 Raytheon Company Method of making an object with a metal-non-metal seal

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
06124175 *
9908177 *

Also Published As

Publication number Publication date
TW502441B (en) 2002-09-11
JP4173642B2 (ja) 2008-10-29
US6725322B1 (en) 2004-04-20
WO2000050997A1 (fr) 2000-08-31
KR20010108209A (ko) 2001-12-07
EP1209568A1 (en) 2002-05-29

Similar Documents

Publication Publication Date Title
KR100716576B1 (ko) 메모리 카드, 논리 어드레스의 할당방법 및 데이터 기록방법
US7392343B2 (en) Memory card having a storage cell and method of controlling the same
JP3105092B2 (ja) 半導体メモリ装置
US6459644B2 (en) Semiconductor memory device with block alignment function
US5953737A (en) Method and apparatus for performing erase operations transparent to a solid state storage system
US8681552B2 (en) System and method for accessing and storing interleaved data
JP3328321B2 (ja) 半導体記憶装置
US7944762B2 (en) Non-volatile memory control
EP1769331B1 (en) Storage device and host apparatus
US7934074B2 (en) Flash module with plane-interleaved sequential writes to restricted-write flash chips
EP1242868B1 (en) Organization of blocks within a nonvolatile memory unit to effectively decrease sector write operation time
US7937523B2 (en) Memory system with nonvolatile semiconductor memory
US8880483B2 (en) System and method for implementing extensions to intelligently manage resources of a mass storage system
JP3680142B2 (ja) 記憶装置及びアクセス方法
JP3310011B2 (ja) 半導体メモリおよびこれを使用した半導体メモリボード
JP2009503729A (ja) 論理アドレス空間と直接データファイル方式で動作するインターフェイスシステム
CN112201292A (zh) 控制器及其操作方法
JP2006039966A (ja) メモリカードおよびメモリカードに搭載されるカード用コントローラ並びにメモリカードの処理装置
JPH05150913A (ja) フラツシユメモリを記憶媒体としたシリコンデイスク
JP2000148583A (ja) 半導体記憶装置
JP3328604B2 (ja) 半導体記憶装置
JP3793464B2 (ja) 半導体記憶装置
JP3793540B2 (ja) 半導体記憶装置
JP2005100470A (ja) 半導体記憶装置
CN117631961A (zh) 数据储存装置、以及非挥发式存储器控制方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130502

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140418

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150416

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee