KR100281102B1 - 플래쉬메모리를사용한에이티에이(ata)카드 - Google Patents

플래쉬메모리를사용한에이티에이(ata)카드 Download PDF

Info

Publication number
KR100281102B1
KR100281102B1 KR1019970015705A KR19970015705A KR100281102B1 KR 100281102 B1 KR100281102 B1 KR 100281102B1 KR 1019970015705 A KR1019970015705 A KR 1019970015705A KR 19970015705 A KR19970015705 A KR 19970015705A KR 100281102 B1 KR100281102 B1 KR 100281102B1
Authority
KR
South Korea
Prior art keywords
flash memory
eeprom
wear leveling
erase counter
erase
Prior art date
Application number
KR1019970015705A
Other languages
English (en)
Other versions
KR19980078237A (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 김영환
Priority to KR1019970015705A priority Critical patent/KR100281102B1/ko
Publication of KR19980078237A publication Critical patent/KR19980078237A/ko
Application granted granted Critical
Publication of KR100281102B1 publication Critical patent/KR100281102B1/ko

Links

Images

Abstract

본 발명은 외부 메모리 용량을 줄이면서 속도를 빠르게 하기 위한 플래쉬 메모리를 사용한 ATA 카드를 제공하기 위한 것으로, 본 발명의 플래쉬 메모리를 사용한 ATA 카드는 웨어 레벨링 알고리즘에 관련된 데이타중 엑세스 횟수가 적은 소거 카운터를 저장하고, 상기 소거 카운터 값을 출력하는 플래쉬 메모리와, 웨어 레벨링 알고리즘에 관련된 데이타중 상기 소거 카운터를 제외한 나머지 데이터를 가지며, 사용되지 않은 섹터들을 찾아 출력하는 EEPROM과, 상기 플래쉬 메모리에서 출력되는 소거 카운터 값과 상기 EEPROM에서 출력되는 사용되지 않는 섹터들을 비교하여 최소로 사용된 섹터의 피지컬 어드레스를 결정하여 상기 피지컬 어드레스와 호스트의 데이타를 상기 플래쉬 메모리에 제공하는 제어부를 포함하여 구성됨을 특징으로 한다.

Description

플래쉬 메모리를 사용한 에이티에이(ATA) 카드{ATA card using the flash memory}
본 발명은 플래쉬 메모리를 사용한 ATA 카드에 관한 것으로, 특히 속도가 빠르면서 메모리의 용량을 줄이는 ATA 카드에 관한 것이다.
종래의 플래쉬 메모리를 사용한 ATA 카드는 프로그래밍(Programming)을 할 때, 웨어 레벨링 알고리즘(Wear levelling algorithm)에 관련된 데이타들을 사용하여 플래쉬 메모리의 소정영역에 쓰거나 읽는데, 상기 웨어 레벨링 알고리즘에 관련된 데이타들을 EEPROM을 비롯한 외부 메모리에 모두 두거나 또는 플래쉬 메모리 각 섹터(Sector)의 앞 또는 뒤에 둔다.
상기 웨어 레벨링 알고리즘에 관련된 데이타들을 EEPROM을 비롯한 외부 메모리에 두는 경우는 플래쉬 메모리의 엑세스 타임(Access time)이 늦은 경우에 사용되는 방식으로 빠른 속도로 원하는 섹터를 찾고자 하는 것이나, 외부에 많은 데이터를 저장하여야 한다. 한편, 상기 웨어 레벨링 알고리즘에 관련된 데이타들을 플래쉬 메모리 각 섹터(Sector)의 앞 또는 뒤에 두는 경우는 플래쉬 메모리의 엑세스 타임이 빠른 경우에 필요시 마다 상기 데이타들을 엑세스하는 방식으로 외부 메모리가 필요 없으나 엑세스 타임이 늦은 플래쉬 메모리(시리얼 엑세스 장치)에는 사용할 수 없다.
그리고 상기 웨어 레벨링 알고리즘에 관련된 데이타들은 도 1에서와 같이, 소거 카운터(Counter(1), 소거 인히비트(Inhibit)(2), 디팩트 플래그(Defect Flag)(3), 유즈드 플래그(Used Flag)(4), 올드 플래그(Old Flag)(5)와, LBA(Logic Block Access)(6)로 구성된다. 여기서, 상기 소거 카운터(1)는 플래쉬 메모리 섹터의 사용 횟수를 카운트하며, 상기 디팩트 플래그(3)는 섹터의 사용 여부를 결정하고, 상기 유즈드 플래그(4)는 섹터가 사용 중인지를 결정하며 상기 LBA(6)는 섹터의 어드레스와 호스트의 어드레스를 비교한다. 또한, 상기 웨어 레벨링 알고리즘의 데이터는 14비트(Bit)의 소거 카운터(1), 16비트의 LBA(6)를 포함하여 34비트를 차지한다.
그리고 도 2는 외부의 EEPROM에 웨어 레벨링과 관련된 데이터를 모두 두는 경우의 종래의 플래쉬 메모리를 사용한 ATA 카드를 나타낸 것으로, 플래쉬 메모리(11), 상기 플래쉬 메모리에 피지컬 어드레스(Physical Address)와 데이타를 제공하는 제어부(13), 상기 제어부(13)에 의해 엑세스 되어 상기 피지컬 어드레스를 결정하고 모든 웨어 레벨링 알고리즘에 관련된 데이터들을 갖는 EEPROM(12)으로 구성된다. 여기서, 상기 플래쉬 메모리(11)의 엑세스 타임이 늦기 때문에 상기 모든 웨어 레벨링 알고리즘에 관련된 데이타들을 엑세스 타임이 빠른 EEPROM(12)에 저장한다.
상기 상술한 종래 플래쉬 메모리를 사용한 ATA 카드의 동작 설명은 다음과 같다.
상기 제어부(13)가 호스트(Host)로부터 상기 플래쉬 메모리(11)에 쓰기 위한 다수개의 어드레스 및 데이타를 입력 받으면 상기 EEPROM(12)을 엑세스 한다.
상기 EEPROM(12)은 웨어 레벨링 알고리즘에 관련된 데이타들 중 디팩트 플래그(3)와 유즈드 플래그(4)가 셋팅되지 않는 즉, 사용되지 않았던 상기 플래쉬 메모리(11)의 섹터나 또는 소거 카운터(1)에 의해 최소로 사용된 섹터를 찾으며 상기 사용되지 않았던 섹터나 또는 최소로 사용된 섹터의 어드레스를 상기 제어부(13)에 출력한다.
이어, 상기 제어부(13)는 상기 EEPROM(12)으로부터 입력받은 사용되지 않았던 섹터나 또는 최소로 사용된 섹터의 어드레스 즉, 피지컬 어드레스와 상기 호스트로부터 입력 받은 어드레스들을 상기 LBA(6)에서 비교하여 상기 플래쉬 메모리(11)의 피지컬 어드레스에 해당하는 섹터에 호스트의 데이터를 저장시킨 후, 상기 EEPROM(12)의 피지컬 어드레스에 해당되는 LBA(6), 유즈드 플래그(4)와 소거 카운터(1)값을 변경시킨다.
그러나 종래의 외부 메모리에 웨어 레벨링 알고리즘에 관련된 데이타를 모두 두는 경우의 플래쉬 메모리를 사용한 ATA 카드는 외부 메모리인 EEPROM에 플래쉬 메모리의 각 섹터 수 만큼 모든 웨어 레벨링 알고리즘에 관련된 데이타들이 저장되어야 하므로 사용되는 EEPROM의 용량이 매우 커지며, 상기 웨어 레벨링 알고리즘에 관련된 데이타들을 플래쉬 메모리 각 섹터의 앞 또는 뒤에 두는 경우의 상기 플래쉬 메모리를 사용한 ATA카드는 엑세스 타임이 늦은 시리얼 엑세스를 행하는 플래쉬 메모리는 사용할 수 없다는 문제점이 있었다.
본 발명은 상기의 문제점을 해결하기 위해 안출한 것으로, 외부 메모리 용량을 줄이면서 속도가 빠른 플래쉬 메모리를 사용한 ATA 카드를 제공하는데 그 목적이 있다.
도 1은 일반적인 웨어 레벨링 알고리즘에 관련된 데이터들을 나타낸 포맷도
도 2는 종래의 플래쉬 메모리를 사용한 ATA 카드를 나타낸 블록도
도 3은 본 발명의 실시예에 따른 플래쉬 메모리를 사용한 ATA 카드를 나타낸 블록도
도면의 주요부분에 대한 부호의 설명
1 : 소거 카운트 2 : 소거 인히비트
3 : 디팩트 플래그 4 : 유즈드 플래그
5 : 올드 플래그 6 : LBA
11 : 플래쉬 메모리 12 : EEPROM
13 : 제어부
본 발명의 플래쉬 메모리를 사용한 ATA 카드는 웨어 레벨링 알고리즘에 관련된 데이타중 엑세스 횟수가 적은 소거 카운터를 저장하고, 상기 소거 카운터 값을 출력하는 플래쉬 메모리와, 웨어 레벨링 알고리즘에 관련된 데이타중 상기 소거 카운터를 제외한 나머지 데이터를 가지며, 사용되지 않은 섹터들을 찾아 출력하는 EEPROM과, 상기 플래쉬 메모리에서 출력되는 소거 카운터 값과 상기 EEPROM에서 출력되는 사용되지 않는 섹터들을 비교하여 최소로 사용된 섹터의 피지컬 어드레스를 결정하여 상기 피지컬 어드레스와 호스트의 데이타를 상기 플래쉬 메모리에 제공하는 제어부를 포함하여 구성됨을 특징으로 한다.
상기와 같은 본 발명에 따른 플래쉬 메모리를 사용한 ATA 카드의 바람직한 실시예를 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다.
본 발명의 실시예에 따른 플래쉬 메모리를 사용한 ATA 카드는 도 3에서와 같이, 한 섹터에 웨어 레벨링 알고리즘에 관련된 데이타 중 소거 카운터(1)를 갖는 플래쉬 메모리(11), 상기 플래쉬 메모리(11)에 피지컬 어드레스와 데이터를 제공하는 제어부(13), 상기 제어부(13)에 의해 억세스되어 사용되지 않는 섹터들을 찾으며 일부 웨어 레벨링 알고리즘에 관련된 데이타를 갖는 EEPROM(12)으로 구성된다. 여기서, 상기 엑세스 타임이 늦은 플래쉬 메모리(11)에 소거 카운터(1)와 같이 엑세스 횟수가 적은 웨어 레벨링 알고리즘에 관련된 데이터를 두고, 엑세스 타임이 빠른 EEPROM(12)에 엑세스 횟수가 많은 소거 인히비트(2), 디팩트 플래그(3), 유즈드 플래그(4), 올드 플래그와 LBA(6)를 둔다.
상기 상술한 본 발명의 실시예에 따른 플래쉬 메모리를 사용한 ATA 카드의 동작 설명은 다음과 같다.
상기 제어부(13)가 호스트로부터 상기 플래쉬 메모리(11)에 쓰기 위한 다 수개의 어드레스 및 데이터를 입력 받으면 상기 EEPROM(12)을 엑세스 한다.
상기 EEPROM(12)은 디팩트 플래그(3)와 유즈드 플래그(4)가 셋팅되지 않는 즉, 사용되지 않는 섹터들을 찾아 상기 제어부(13)에 출력한다.
또한, 상기 플래쉬 메모리(11)는 소거 카운터(1)의 값을 상기 제어부(13)에 출력한다.
이어, 상기 제어부(13)는 EEPROM(12)의 출력인 사용되지 않는 섹터들과 상기 플래쉬 메모리(11)의 출력인 소거 카운터의 값을 비교하여 최소로 사용된 섹터의 어드레스 즉, 피지컬 어드레스를 결정한 후, 상기 피지컬 어드레스와 상기 호스트로부터 입력받은 어드레스들을 상기 LBA(6)에서 비교하여 상기 플래쉬 메모리(11)의 피지컬 어드레스에 해당하는 섹터에 호스트의 데이타를 저장한 후, 상기 EEPROM(13)의 피지컬 어드레스에 해당되는 LBA(6)와 유즈드 플래그(4), 그리고 플래쉬 메모리(11)의 소거 카운터(1)값을 변경시킨다.
본 발명의 플래쉬 메모리를 사용한 ATA 카드는 엑세스 횟수가 작은 웨어 레벨링 알고리즘에 관련된 데이터를 플래쉬 메모리에 두고 엑세스 횟수가 많은 웨어 레벨링 알고리즘에 관련된 데이타를 외부 메모리에 두기 때문에 외부 메모리 용량을 줄일 수 있음과 동시에 속도가 빠르다는 효과가 있다.

Claims (2)

  1. 웨어 레벨링 알고리즘에 관련된 데이타중 엑세스 횟수가 적은 소거 카운터를 저장하고, 상기 소거 카운터 값을 출력하는 플래쉬 메모리;
    웨어 레벨링 알고리즘에 관련된 데이타중 상기 소거 카운터를 제외한 나머지 데이터를 가지며, 사용되지 않은 섹터들을 찾아 출력하는 EEPROM;
    상기 플래쉬 메모리에서 출력되는 소거 카운터 값과 상기 EEPROM에서 출력되는 사용되지 않는 섹터들을 비교하여 최소로 사용된 섹터의 피지컬 어드레스를 결정하여 상기 피지컬 어드레스와 호스트의 데이타를 상기 플래쉬 메모리에 제공하는 제어부를 포함하여 구성됨을 특징으로 하는 플래쉬 메모리를 사용한 ATA 카드.
  2. 제 1 항에 있어서, EEPROM은 소거 인히비트, 디팩트 플래그, 유즈드 플래그, 올드 플래그와 LBA를 갖는 것을 특징으로 하는 플래쉬 메모리를 사용한 ATA 카드.
KR1019970015705A 1997-04-25 1997-04-25 플래쉬메모리를사용한에이티에이(ata)카드 KR100281102B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970015705A KR100281102B1 (ko) 1997-04-25 1997-04-25 플래쉬메모리를사용한에이티에이(ata)카드

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970015705A KR100281102B1 (ko) 1997-04-25 1997-04-25 플래쉬메모리를사용한에이티에이(ata)카드

Publications (2)

Publication Number Publication Date
KR19980078237A KR19980078237A (ko) 1998-11-16
KR100281102B1 true KR100281102B1 (ko) 2001-03-02

Family

ID=65989275

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970015705A KR100281102B1 (ko) 1997-04-25 1997-04-25 플래쉬메모리를사용한에이티에이(ata)카드

Country Status (1)

Country Link
KR (1) KR100281102B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100487539B1 (ko) * 2002-09-02 2005-05-03 삼성전자주식회사 직렬 에이티에이 케이블과 연결되는 불휘발성 반도체메모리 장치

Also Published As

Publication number Publication date
KR19980078237A (ko) 1998-11-16

Similar Documents

Publication Publication Date Title
US7325089B2 (en) Controller for refreshing memories
US6076137A (en) Method and apparatus for storing location identification information within non-volatile memory devices
US10915475B2 (en) Methods and apparatus for variable size logical page management based on hot and cold data
US6172906B1 (en) Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US6134151A (en) Space management for managing high capacity nonvolatile memory
US6262918B1 (en) Space management for managing high capacity nonvolatile memory
US7610438B2 (en) Flash-memory card for caching a hard disk drive with data-area toggling of pointers stored in a RAM lookup table
US6374324B2 (en) Flash memory array access method and device
KR20040087916A (ko) 메모리 카드
US20190188124A1 (en) Multilevel addressing
JP2013097416A (ja) 記憶装置および計算機
US9870826B2 (en) Memory apparatus and data access method thereof by using multiple memories for lifetime extension
US20050005057A1 (en) [nonvolatile memory unit with page cache]
KR100281102B1 (ko) 플래쉬메모리를사용한에이티에이(ata)카드
AU604101B2 (en) High availability cache organization
TWI453747B (zh) 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器
TWI416525B (zh) 非揮發性記憶體裝置及其損耗平均方法
JP4334331B2 (ja) フラッシュメモリのアクセス制御方法
US20240143223A1 (en) Storage device and method of operating the same
JP2000122909A (ja) 不揮発性メモリを使用した外部記憶装置
JPH0784886A (ja) キャッシュメモリ制御方法およびキャッシュメモリ制御装置
JPH06150673A (ja) 不揮発メモリのアクセス制御装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20101025

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee