KR100742849B1 - 데이타 기억 장치, 데이타 처리 시스템, 데이타 처리 방법 및 데이타 처리 장치 - Google Patents

데이타 기억 장치, 데이타 처리 시스템, 데이타 처리 방법 및 데이타 처리 장치 Download PDF

Info

Publication number
KR100742849B1
KR100742849B1 KR1019990025572A KR19990025572A KR100742849B1 KR 100742849 B1 KR100742849 B1 KR 100742849B1 KR 1019990025572 A KR1019990025572 A KR 1019990025572A KR 19990025572 A KR19990025572 A KR 19990025572A KR 100742849 B1 KR100742849 B1 KR 100742849B1
Authority
KR
South Korea
Prior art keywords
data
logical
written
read
address
Prior art date
Application number
KR1019990025572A
Other languages
English (en)
Other versions
KR20000006562A (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 KR20000006562A publication Critical patent/KR20000006562A/ko
Application granted granted Critical
Publication of KR100742849B1 publication Critical patent/KR100742849B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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

Abstract

플래시 메모리로부터의 판독 및 플래시 메모리에의 기록시, 플래시 메모리의 기억 영역으로 이루어지는 물리 블럭의 물리 어드레스와 물리 블럭에 기록된 논리 블럭의 논리 어드레스 간의 대응 관계를 나타내는 테이블을 플래시 메모리의 세그먼트 단위로 작성한다.
데이타 처리 시스템, 데이타 처리 회로, 직렬 인터페이스 회로, 메모리 카드, 플래시 메모리, 직렬/병렬 및 병렬/직렬 인터페이스 회로, ECC 회로

Description

데이타 기억 장치, 데이타 처리 시스템, 데이타 처리 방법 및 데이타 처리 장치{DATA STORAGE, DATA PROCESSING SYSTEM, DATA PROCESSING METHOD AND DATA PROCESSING APPARATUS}
도 1은 본 발명에 따른 데이타 처리 시스템에 사용되는 데이타 처리 장치의 개략 블럭도.
도 2는 도 1에서 나타낸 데이타 처리 시스템에 사용되는 메모리 카드의 개략 블럭도.
도 3은 도 1에서 나타낸 데이타 처리 시스템에 사용되는 어플리케이션 데이타의 형태를 개략적으로 설명하는 도면.
도 4는 도 1의 데이타 처리 시스템에 사용되는 플래시 메모리의 형태를 개략적으로 설명하는 도면.
도 5는 플래시 메모리로부터의 데이타 판독예에서의 동작의 플로우챠트.
도 6은 물리 어드레스와 논리 어드레스 간의 대응 관계를 나타내는 테이블을 개략적으로 설명하는 도면.
도 7은 플래시 메모리에의 데이타 기록예에서의 동작의 플로우챠트도.
도 8은 플래시 메모리에 기옥된데이타의 갱신예에서의 동작의 플로우챠트도.
<도면의 주요 부분에 대한 간단한 설명>
1 : 데이타 처리 시스템
10 : 데이타 처리 장치
11 : 데이타 처리 회로
12 : 직렬 인터페이스 회로
13 : 레지스터
14 : 제어기
20 : 메모리 카드
21 : 플래시 메모리
22 : 직렬/병렬 및 병렬/직렬 인터페이스 회로(S/P & P/S 인터페이스 회로)
23 : 레지스터
24 : ECC 회로
25 : 제어기
본 발명은 복수의 블럭으로 분할된 데이타 기억 영역을 가지며 데이타 기억 영역에 기록된 데이타가 블럭 단위로 관리되는 기억 수단을 포함하는 데이타 기억 장치 및 이 데이타 기억 장치에 및/또는 데이타 기억 장치로부터 데이타를 기록 또는 판독하는 데이타 처리 장치 및 방법에 관한 것이다.
종래에는 컴퓨터 등과 같은 전자 장치에 사용되는 외부 데이타 기억 장치로서 플래시 메모리 (EEPROM(전기적 소거 가능한 프로그래머블 리드-온리 메모리)과 유사한 비휘발성 메모리)를 이용하는 카드형 외부 데이타 기억 장치(이하 "메모리 카드"로 언급)가 제안되고 있다.
메모리 카드에서, 데이타 기억 장치로서의 플래시 메모리는 복수의 블럭으로 분할된 데이타 기억 영역을 가지며, 플래시 메모리에 기록된 데이타가 블럭 단위로 관리된다.
플래시 메모리에서는, 데이타가 블럭 마다 다른 빈도로 블럭에 기록되면, 빈도가 높게 데이타가 기록되는 블럭은 불량이 되기 쉽다. 이를 피하기 위해서는, 불량이 된 블럭에 데이타를 기록하지 않으면서 일반적으로 동일한 빈도의 모든 블럭에는 데이타를 기록하는 것이 필요하다.
상기 요구를 만족하기 위해서, 플래시 메모리를 기억 수단으로 설치한 메모리 카드를 이용하는 데이타 처리 시스템에서는, 플래시 메모리에 기억된 데이타가 복수의 블럭으로 분할되고, 각 블럭에 어드레스 정보가 부가되고 데이타가 빈도가 낮게 기록되는 플래시 메모리의 블럭에 데이타 블럭이 기록되도록 하고 있다. 이하 설명에서는, 기억 영역 블럭과 데이타 블럭 사이의 혼란을 피하기 위해서, 플래시 메모리의 데이타 기억 영역의 분할에 따른 블럭은 "물리 블럭"으로 언급하고, 데이타의 분할에 따른 것은 "논리 블럭"으로 언급한다. 또한, 물리 블럭의 어드레스는 "물리 어드레스"로, 논리 블럭의 것은 "로직 어드레스"로 언급한다.
메모리 카드로부터 데이타를 판독하기 위해서, 플래시 메모리의 모든 물리 블럭에의 억세스가 먼저 이루어지고, 물리 블럭의 물리 어드레스와 물리 블럭에 기억된 논리 블럭의 논리 어드레스 간의 대응 관계를 나타내는 테이블을 데이타 처리 회로의 내부 메모리 내에서 작성한다. 이 테이블을 참조하여 원하는 데이타가 기억되어 있는 물리 블럭의 물리 어드레스를 검출한 다음에 물리 블럭으로부터 원하는 데이타를 판독한다.
또한, 메모리 카드에 데이타를 기록하기 위해서, 먼저 플래시 메모리의 모든 물리 블럭을 억세스하여, 물리 블럭의 물리 어드레스와 물리 블럭에 기억된 논리 블럭의 논리 어드레스 간의 대응 관계를 나타내는 테이블을 데이타 처리 회로의 내부 메모리에 작성한다. 다음에, 이 테이블을 참조하여 비사용인 물리 블럭을 검출하여 이 비사용의 물리 블럭에 원하는 데이타를 기록한다.
최근에는, 컴퓨터 등과 같은 전자 장치에 대해 더욱 더 높은 데이타 처리 용량을 가지며 한번에 대량의 데이타를 처리할 것을 요구하고 있다 이런 상황하에서, 이런 전자 장치와 관련하여 사용되는 외부 데이타 기억 장치는 대용량을 가져야만 한다. 또한, 매우 개선된 집적도를 갖는 플래시 메모리가 제안되고 있기 때문에, 메모리 카드도 예를 들어, 128MB만큼 대용량을 갖는 메모리 카드가 제안되고 있다.
이런 대용량의 메모리 카드는 다수의 물리 블럭을 갖는 플래시 메모리를 사용한다. 따라서, 대용량의 메모리 카드에는, 각 데이타의 기록 및 판독 때마다 작성되는 테이블이 또한 커지고, 이는 대용량의 내부 메모리를 갖는 데이타 처리 회로를 필요로 한다. 이는 메모리 카드의 제조 비용의 상승을 동반하게 된다.
따라서, 본 발명의 목적은 상술한 종래의 문제점을 극복하여, 증대된 기억 용량과 고효율의 데이타 기록 또는 판독을 가능하게 하는 저렴한 데이타 기억 장치, 이 데이타 기억 장치를 이용한 데이타 처리 시스템 및 방법을 제공하는 데에 목적이 있다.
상술한 목적은 본 발명에 따라서, 기억 영역이 각각 유일한 절대 어드레스를 갖는 복수의 블럭으로 분할되어 있는 기억 수단 ; 및
상기 외부 기기로부터의 지령에 근거하여 상기 기억 수단에 데이타를 기록하거나 기억 수단으로부터 데이타를 판독하기 위한 제어 수단
을 포함하고,
상기 제어 수단은, 상기 외부 기기로부터의 지령이 지시되는 데이타의 상대 어드레스를 상기 절대 어드레스로 변환시키는 변환 테이블을 작성하는,
외부 기기에의 접속을 위한 데이타 기억 장치를 제공하여 성취될 수 있다.
또한, 상기 목적은 기억 영역이 각각 유일한 절대 어드레스를 갖는 복수의 블럭으로 분할되어 있는 기억 수단을 포함하는 데이타 기억 장치에 데이타 처리 장치가 접속된 데이타 처리 시스템를 제공하여 성취될 수 있으며, 이 데이타 처리 장치는,
데이타의 기록 또는 판독을 위해 상기 기억 수단에 지령을 발하기 위한 제어 수단을 포함하고,
상기 제어 수단은 상기 외부 기기로부터의 지령이 지시되는 데이타의 상대 어드레스를 상기 절대 어드레스로 변환시키는 변환 테이블을 작성한다.
또한 상기 목적은 기억 영역이 각각 유일한 절대 어드레스를 갖는 복수의 블 럭으로 분할되어 있는 기억 수단에 데이타를 기록하거나 기억 수단으로부터 데이타를 판독하는 데이타 처리 방법를 제공하여 성취될 수 있으며, 이 방법은:
상기 기억 수단에 기록되거나 기억 수단으로부터 판독되는 데이타의 상대 어드레스를 상기 절대 어드레스로 변환시키는 변환 테이블을 작성하는 단계와;
이 변환 테이블을 참조하여 데이타를 기록 또는 판독하는 단계를 포함한다.
본 발명의 이들 목적 및 다른 목적, 특성 및 장점은 첨부한 도면과 관련하여 본 발명의 바람직한 실시예에 대한 다음의 상세 설명으로부터 명백하게 될 것이다.
도 1을 참조하면, 본 발명에 따른 데이타 처리 시스템을 개략적인 블록도의 형태로 도시하고 있다. 데이타 처리 시스템은 일반적으로 참조 번호 1로 표시되어 있으며, 호스트 장치가 되는 데이타 처리 장치(10), 및 직렬 인터페이스를 통해 데이타 처리 장치(10)에 접속된 외부 데이타 기억 장치인 메모리 카드(20)를 포함한다.
직렬 인터페이스를 통한 데이타 처리 장치(10)와 메모리 카드(20) 간의 데이타 전송이 예시를 통해 설명될 것이다. 그러나, 본 발명은 병렬 인터페이스를 통해 데이타 전송이 실행되는 시스템에도 적용될 수 있음에 유의한다.
데이타 처리 장치(10)
본 발명에 따른 데이타 처리 시스템(1)에 포함되는 데이타 처리 장치(10)는, 어플리케이션 데이타에 기초하여 미리 정해진 프로그램을 실행시키기 위한 데이타 처리 회로(11), 데이타 처리 장치(10)와 외부 기기인 메모리 카드(20) 간의 어플리 케이션 데이타 전송을 위한 직렬 인터페이스 회로(12), 데이타 처리 회로(11)와 직렬 인터페이스 회로(12) 사이에 제공되어 데이타 처리 회로(11)로부터 공급된 어플리케이션 데이타를 일시적으로 기억하기 위한 레지스터(13), 및 데이타 처리 회로(11), 직렬 인터페이스 회로(12) 및 레지스터(13) 각각에 접속되어 이러한 구성 요소들(11, 12, 13)의 동작을 제어하기 위한 제어기(14)를 포함한다.
데이타 처리 장치(10)에서, 데이타 처리 회로(11)가 미리 정해진 프로그램을 실행하도록 하기 위해 어플리케이션 데이타가 외부 기기인 메모리 카드(20) 내에 기억되어야 하는 것으로 판단되면, 데이타 처리 회로(11)는, 제어기(14)의 제어 하에 그 어플리케이션 데이타와 기록 지령 등의 제어 데이타를 레지스터(13)에 기록한다.
그 다음, 제어기(14)의 제어 하에, 직렬 인터페이스 회로(12)는 레지스터(13)로부터 어플리케이션 데이타 및 제어 데이타를 판독하여 직렬 데이타로 변환한 후, 클럭 신호 및 상태 신호와 함께 메모리 카드(20)로 전송한다. 또한, 데이타 처리 장치(10)에서, 데이타 처리 회로(11)가 미리 정해진 프로그램을 실행하도록 하기 위해 어플리케이션 데이타가 외부 기기인 메모리 카드(20)로부터 판독되어야 하는 것으로 판단되면, 데이타 처리 회로(11)는, 제어기(14)의 제어 하에 판독 명령 등의 제어 데이타를 레지스터(13)에 기록한다. 그 다음, 제어기(14)의 제어 하에, 직렬 인터페이스 회로(12)는 레지스터(13)로부터 제어 데이타를 판독하여 직렬 데이타로 변환한 후, 클록 신호 및 상태 신호와 함께 메모리 카드(20)로 전송한다.
제어 데이타에 따라 메모리 카드(20)로부터 데이타 처리 장치(10)로 전송된 어플리케이션 데이타는, 직렬 인터페이스 회로(12)에 의해 병렬 데이타로 변환된다. 그 다음, 데이타 처리 회로(11)는 레지스터(13)로부터 어플리케이션 데이타를 판독하여, 제어기(14)의 제어 하에 미리 정해진 방식으로 처리한다.
본 발명에 따른 데이타 처리 시스템(1)에서 사용되는 데이타 처리 장치(10)는 특정한 것에 제한되지 않고, 자신과 메모리 카드(20) 등의 외부 기기 사이에 데이타를 전송할 수 있는 장치이면 가능하며, 이러한 장치로는 개인용 컴퓨터, 디지탈 스틸 카메라, 디지탈 비디오 카메라 등이 있다.
데이타 처리 시스템(1)에서, 데이타 처리 장치(10) 및 메모리 카드(20)는 직렬 인터페이스(12), 더 상세하게는 3 개의 데이타 라인 SCLK, State, 및 DIO를 통해 상호 접속된다. 제1 데이타 라인 SCLK은 데이타 전송용 클록 신호를 전송하기 위해 제공되고, 제2 데이타 라인 State는 데이타 전송에 필요한 상태 신호를 전송하기 위해 제공되고, 제3 데이타 라인 DIO는 메모리 카드(20)에 기록될 어플리케이션 데이타 및 제어 데이타와 메모리 카드(2)로부터 판독될 제어 데이타를 직렬로 전송하기 위해 제공된다. 어플리케이션 데이타 및 제어 데이타는 이러한 데이타 라인들을 통해 데이타 처리 장치(10)와 메모리 카드(20) 사이에서 전송된다.
메모리 카드(20)
도 2에 도시된 바와 같이, 메모리 카드(20)는 기억 수단인 플래시 메모리(21), 메모리 카드(20)와 데이타 처리 장치(10) 간에서 어플리케이션 데이타와 제어 데이타를 전송하기 위한 직렬/병렬 및 병렬/직렬 인터페이스 회로(이하, "S/P & P/S 인터페이스 회로"로 언급함)(22), 플래시 메모리(21)와 S/P & P/S 인터페이스 회로(22) 사이에 제공되어 S/P & P/S 인터페이스 회로(22)로부터 공급된 어플리케이션 데이타를 일시적으로 기억하기 위한 레지스터(23), 레지스터(23)에 접속되어 레지스터(23) 내에 기록된 어플리케이션 데이타 내에 에러가 있는 경우 에러 정정 코드에 기초하여 그 에러를 정정하기 위한 ECC 회로(24), 및 플래시 메모리(21), S/P & P/S 인터페이스 회로(22) 및 레지스터(23)에 접속되어 이러한 구성 요소들(21, 22, 23)의 동작을 제어하기 위한 제어기(25)를 포함한다.
S/P & P/S 인터페이스 회로(22)는, 적어도 전술한 3개의 데이타 라인 SCLK. State, DIO을 통해 데이타 처리 장치(10)의 직렬 인터페이스 회로(12)에 접속되어, 메모리 카드(20)와 데이타 처리 장치(10) 간에서 어플리케이션 데이타 및 제어 데이타를 전송한다. 더 상세하게는, S/P & P/S 인터페이스 회로(22)는 데이타 처리 장치(10)의 직렬 인터페이스 회로(12)로부터 전송된 직렬 데이타를 병렬 데이타로 변환하여, 레지스터(23)에 기록한다. 또한, S/P & P/S 인터페이스 회로(22)는 레지스터(23)로부터 판독된 병렬 데이타를 직렬 데이타로 변환하여, 데이타 처리 장치(10)의 직렬 인터페이스 회로(12)로 전송한다.
직렬 데이타는, 제1 데이타 라인 SCLK를 통해 데이타 처리 장치(10)로부터 전송된 클록 신호와 동기화되면서, 제3 데이타 라인 DIO를 통해 S/P & P/S 인터페이스 회로(22)와 데이타 처리 장치(10) 사이에서 전송된다. 이 때, 제3 데이타 라인 DIO를 통해 전송되는 직렬 데이타의 유형은, 제2 데이타 라인 State를 통해 전송된 상태 신호에 기초하여 분류된다. 직렬 데이타의 유형으로는, 예를 들어 플래 시 메모리(21)에 기억되는 어플리케이션 데이타, 플래시 메모리(21)로부터 판독되는 어플리케이션 데이타, 및 기록 명령과 판독 명령 등의 제어 데이타가 있다.
데이타 처리 장치(10)로부터 전송된 데이타가 기록 명령 또는 판독 명령과 같은 제어 데이타인 경우, S/P & P/S 인터페이스 회로(22)는 그 데이타를 제어기(25)에 공급한다.
전술한 바와 같이, 레지스터(23)는 플래시 메모리(21)와 S/P & P/S 인터페이스 회로(22) 간에서 전송된 어플리케이션 데이타를 일시적으로 기억한다.
ECC 회로(24)는, S/P & P/S 인터페이스 회로(22)에 의해 레지스터(23) 내에 기억된 어플리케이션 데이타에 에러 정정 코드를 추가한다. 또한, ECC 회로(24)는, 플래시 메모리(21)로부터 판독되고 레지스터(23)에 의해 기록된 어플리케이션 데이타 내에 에러가 있는 경우에 에러를 정정한다.
제어기(25)는, S/P & P/S 인터페이스 회로(22)로부터 공급된 제어 데이타에 기초하여 메모리 카드(20)의 동작을 제어한다. 즉, S/P & P/S 인터페이스 회로(22)로부터 공급된 기록 명령에 기초하여, 제어기(25)는 레지스터(23) 내에 일시적으로 기록된 어플리케이션 데이타를 판독하고, 그 어플리케이션 데이타를 플래시 메모리(21)에 기억한다. 또한, S/P & P/S 인터페이스 회로(22)로부터 공급된 판독 명령에 기초하여, 제어기(25)는 플래시 메모리(21)로부터의 어플리케이션 데이타를 판독하여 레지스터(23)에 기록한다.
기억된 어플리케이션 데이타와 기록 명령이 데이타 처리 장치(10)로부터 상기와 같은 구성을 가지는 메모리 카드(20)에 전송되면, 제어기(25)의 제어 하에, 우선 S/P & P/S 인터페이스 회로(22)는 그 데이타를 병렬 데이타로 변환하고 기록 명령을 제어기(25)에 공급한 후, 어플리케이션 데이타를 레지스터(23)에 기록한다.
여기에서, ECC 회로(24)가 레지스터(23)에 기록된 어플리케이션 데이타에 에러 정정 코드를 추가한다.
그 다음, S/P & P/S 인터페이스 회로(22)로부터 공급된 기록 명령에 기초하여, 제어기(25)는 레지스터(23)로부터의 어플리케이션 데이타를 판독하여 플래시 메모리(21)에 기록한다.
메모리 카드(20)에서, 판독 명령이 데이타 처리 장치(10)로부터 수신되면, S/P & P/S 인터페이스 회로(22)는 판독 명령을 제어기(25)에 공급한다.
그 다음, S/P & P/S 인터페이스 회로(22)로부터 공급된 판독 명령에 기초하여, 제어기(25)는 플래시 메모리(21)로부터의 어플리케이션 데이타를 판독하여 레지스터(23)에 기록한다. 레지스터(23)에 기록된 어플리케이션 데이타가 에러를 포함하는 경우, 레지스터(23)에 접속된 ECC 회로(24)가 에러 정정 코드에 기초하여 에러를 정정한다.
제어기(25)의 제어 하에, S/P & P/S 인터페이스 회로(22)는 레지스터(23)로부터 어플리케이션 데이타를 판독하고, 그 어플리케이션 데이타를 직렬 데이타로 변환하여 데이타 처리 장치(10)로 전송한다.
메모리 카드(20) 내에 제공되어 메모리 카드(20)에서의 어플리케이션 데이타 내에 에러가 있는 경우 에러를 정정하기 위한 ECC 회로(24)를 구비하는 데이타 처리 시스템(1)이 설명되었다. 그러나, ECC 회로(20)는 데이타 처리 장치(10)의 어 플리케이션 데이타 내에 에러가 있는 경우 에러를 정정하도록, 데이타 처리 장치(10) 내에 설치될 수도 있음에 유의한다. 이러한 경우, 에러 정정 코드가 추가된 어플리케이션 데이타가 데이타 처리 장치(10)와 메모리 카드(20) 간에서 전송될 것이다.
어플리케이션 데이타 구조, 및 플래시 메모리 구조
데이타 처리 시스템(1)에서, 미리 정해진 프로그램을 실행시키기 위한 어플리케이션 데이타는, 도 3에 도시된 바와 같이 각각 데이타 소거 단위인 복수의 논리 블록으로 분할된다. 어플리케이션 데이타는 메모리 카드(20) 내의 논리 블록에서 관리된다. 어플리케이션 데이타를 구성하는 논리 블록 각각에, 논리 어드레스가 할당된다. 각각의 논리 어드레스는 데이타로 취급되는 논리 번호로 표현된다.
어플리케이션 데이타가 플래시 메모리(21)에 기억될 때, 논리 블록이 반드시 논리 어드레스의 순서대로 플래시 메모리(21) 내에 기억되지는 않을 것이다. 그러나, 어플리케이션 데이타가 플래시 메모리(21)로부터 판독될 때, 논리 블록은 논리 어드레스의 순서대로 재배열되어 본래의 어플리케이션 데이타를 재구성할 것이다.
어플리케이션 데이타를 형성하는 각각의 논리 블록은 각각 기록 단위 또는 판독 단위가 되는 복수의 섹터로 구성된다. 각각의 섹터는, 예를 들어 512 바이트의 실질 데이타 및 16 바이트의 용장 데이타로 분할된다. 로직 블럭들의 로직 어드레스들은 복수의 섹터들에 용장 데이터처럼 분산된다. 각각의 섹터에는 고유의 섹터 번호가 할당되어, 그 섹터 번호에 기초하여 섹터가 액세스될 수 있다.
도 4에 도시된 바와 같이, 플래시 메모리(21)는 복수의 물리 블록으로 각각 분할되는 복수의 세그먼트를 포함하는 기억 영역을 구비한다. 플래시 메모리(21) 내에 기억된 데이타는 물리 블록 단위로 관리되고, 어플리케이션 데이타의 하나의 논리 블록은 하나의 물리 블록 내에 기억되어 있다.
전술한 바와 같이, 플래시 메모리(21)의 각각의 세그먼트는 복수의 물리 블록으로 분할된다. 데이타가 플래시 메모리(21)로부터 판독되거나 플래시 메모리(21)에 기록될 때, 플래시 메모리(21)의 물리 블록의 물리 어드레스와 어플리케이션 데이타의 논리 블록의 논리 어드레스 간의 대응 관게를 나타내는 테이블이 플래시 메모리(21)의 세그먼트 단위로 작성된다.
이러한 세그먼트들과 각각의 세그먼트를 구성하는 각각의 물리 블록 내의 논리 블록은 미리 서로 관련지어져 있음에 유의한다. 더 상세하게는, 예를 들어 어드레스 0 내지 n을 가지는 물리 블록으로 구성되는 세그먼트 0에 대해, 논리 번호가 0 내지 s인 논리 블록만이 세그먼트 0에 기억되고, 논리 번호 s+1 이후의 번호를 가지는 논리 블록은 기억되지 않을 것이다. 논리 번호 0 내지 s인 논리 블록은 세그먼트 0 내에서 물리 어드레스 0 내지 n인 물리 블록 내에 불연속적으로 기억될 것이다.
데이타 판독
상술한 데이타 처리 시스템(1)에서 메모리 카드(20)의 플래시 메모리(21)로부터의 데이타 판독의 일례가 이하 설명될 것이다.
플래시 메모리(21)로부터 데이타를 판독하기 위해, 판독 명령이 데이타 처리 장치(10) 내의 데이타 처리 회로(11)로부터 메모리 카드(20) 내의 제어기(25)로 S/P & P/S 인터페이스 회로(22)를 통해 전송된다.
판독 명령에 기초하여, 메모리 카드(25)의 제어기(25)는, 도 5에 도시된 플로우챠트도에 의해 지정되는 과정에 따라 플래시 메모리(21)로부터 원하는 데이타를 판독한다.
더 상세하게는, 우선 STEP 1에서, 제어기(25)는 판독되는 데이타의 섹터 번호로부터 데이타가 속하는 논리 블록의 논리 어드레스를 계산한다. 예를 들어 논리 블록이 (t+1)개의 섹터로 분할되는 경우, 섹터 번호가 100인 섹터가 속하는 논리 블록의 논리 어드레스는 100/(t+1)을 계산함으로써 결정된다.
전술한 바와 같이, 플래시 메모리(21)의 세그먼트와 각각의 세그먼트를 구성하는 물리 블록 내에 기억된 논리 블록 간에는 대응 관계가 미리 정해져 있다. 따라서, 판독되는 데이타가 속하는 논리 블록의 논리 어드레스가 결정되면, 플래시 메모리(21)의 어떤 세그먼트에 데이타가 기억되는지를 알 수 있다.
다음으로 STEP 2에서, 제어기(25)는, 도 6에 도시된 바와 같이, 자신의 내부 메모리 내에서 데이타가 기억되는 세그먼트를 구성하는 물리 블록의 물리 어드레스와 물리 블록 내에 기억된 논리 블록의 논리 어드레스 간의 대응 관계를 나타내는 테이블을 작성한다. 이 때, 다른 세그먼트에 대한 테이블이 내부 메모리에 작성되어 있는 경우, 제어기(25)는 현조하는 테이블을 판독되는 데이타가 기억되는 세그먼트에 대한 테이블로 개서할 것이다.
STEP 3에서, 상기와 같이 작성된 테이블을 참조하여, 제어기(25)는 판독되는 데이타가 속하는 논리 블록이 기억되는 물리 블록을 찾는다.
STEP 4에서, 제어기(25)는 물리 블록 내에서 판독된 데이타가 기억되어 있는 위치를 찾는다. 물리 블록에서, 데이타는 섹터 번호 순서대로 기억된다. 따라서, 예를 들어 논리 블록이 (t+1) 개의 섹터로 분할되는 경우, 논리 블록 내에서 섹터 번호가 100인 데이타가 기억되는 위치는 100 - B×(t+1)을 계산함으로써 결정된다 (여기에서, B는 데이타가 속하는 논리 블록의 논리 어드레스임).
STEP 5에서, 제어기(25)는 물리 블록 내에서 판독되는 데이타가 기억된 위치를 액세스하여, 그 물리 블록으로부터 원하는 데이타를 판독한다.
전술한 바와 같이, 제어기(25)는 플래시 메모리(21)로부터 판독된 데이타를 레지스터(23)에 기록한다. 레지스터(23)에 기록된 데이타가 에러를 포함하고 있는 경우, 데이타는 에러 정정 코드에 기초하여 레지스터(23)에 접속된 ECC 회로(24)에서 에러 정정이 행해진다.
정정된 데이타는 S/P & P/S 인터페이스 회로(22) 및 직렬 인터페이스(12)를 거쳐 데이타 처리 장치(10) 내의 데이타 처리 회로(11)로 전송된다.
데이타 기록
이하 예시로서 설명되는 바와 같이 데이타 처리 시스템(1)에서 메모리 카드(20)의 플래시 메모리(21)에 데이타가 기록된다.
플래시 메모리(21)에 데이타를 기록하기 위해서, 먼저 기록 지령이 데이타 처리 장치(10)의 데이타 처리 회로(11)로부터 직렬 인터페이스 회로(12) 및 S/P & P/S 인터페이스 회로(22)를 거쳐 메모리 카드(20)의 제어기(25)로 전송되고, 직렬 인터페이스 회로(12) 및 S/P & P/S 인터페이스 회로(22)를 거쳐 메모리 카드(20)의 레지스터(23)로 데이타가 기록된다.
기록 지령에 근거하여, 메모리 카드(20)의 제어기(25)는 도 7의 플로우챠트에서 지정된 과정을 따라, 플래시 메모리(21)에 원하는 데이타를 기록한다.
더욱 특별하게는, 먼저 STEP 11에서, 제어기(25)는 기록될 데이타의 섹터 번호로부터 데이타가 속하는 논리 블럭의 논리 어드레스를 계산한다. 예를 들어, 논리 블럭이 (t+1)개의 섹터로 분할되면, 그 섹터 번호가 100인 논리 블럭의 논리 어드레스는 100/(t+1)을 계산하여 결정된다.
이미 상술한 바와 같이, 플래시 메모리(21)의 세그먼트와 각 세그먼트를 구성하는 물리 블럭 내에 기억된 논리 블럭 사이의 대응 관계가 미리 정해져 있다. 따라서, 기록될 데이타가 속하는 논리 블럭의 논리 어드레스가 결정되면, 플래시 메모리(21)의 세그먼트 중에서 데이타가 기억되는 위치를 알 수 있게 된다.
다음에, STEP 12에서, 제어기(25)는 도 6에서 나타낸 바와 같이, 그 내부 메모리에, 데이타가 기록되는 세그먼트를 구성하는 물리 블럭의 물리 어드레스와 물리 블럭에 기억된 논리 블럭의 논리 어드레스 사이의 대응 관계를 나타내는 테이블을 작성한다. 이 때, 내부 메모리에서 그 외 다른 세그먼트에 대해 이 테이블이 작성되면, 제어기(25)는 현존하는 테이블을 데이타가 기록되는 세그먼트에 대한 테이블로 개서하게 된다.
다음에, STEP 13에서, 제어기(25)는 작성된 테이블을 참조하여 세그먼트를 구성하는 물리 블럭 중 비사용중인 것을 찾는다.
또한, STEP 14에서, 제어기(25)는 플래시 메모리(21)에 기록될 데이타를 레지스터(23)로부터 판독하여, 이를 상기 비사용의 물리 블럭에 기록한다.
다음에, STEP 15에서, 제어기(25)는 데이타가 기록되어 있는 물리 블럭에 대응하는 논리 어드레스에 대한 기재를 "비사용중"에서 기록되어 있는 데이타가 속하는 논리 블럭의 논리 어드레스로 바꾸기 위해 테이블을 개서한다.
데이타 갱신
이하 이상과 같은 데이타 처리 시스템(1)에서 메모리 카드(20)의 플래시 메모리(21)에 기록된 데이타를 갱신하는 처리의 일예에 대해 설명한다.
플래시 메모리(21)에 기록된 데이타를 갱신하기 위해서, 먼저 판독 지령이 데이타 처리 장치(10)의 데이타 처리 회로(11)로부터 직렬 인터페이스 회로(12) 및 S/P & P/S 인터페이스 회로(22)를 거쳐 메모리 카드(20)의 제어기(25)에 전송된다.
판독 지령에 근거하여, 메모리 카드(20)의 제어기(25)는 도 5의 플로우챠트에서 지정된 과정에 따라, 플래시 메모리(21)로부터 원하는 데이타를 판독한다.
플래시 메모리(21)로부터 판독된 데이타는 제어기(25)의 제어하에서 레지스터(23)에 기록된다. 이렇게 레지스터(23)에 기록된 데이타에 에러가 있는 경우, 에러 정정 코드에 근거하여 레지스터(23)에 접속된 ECC 회로(24)에서 에러 정정이 행해진다.
이렇게 정정된 에러를 갖는 데이타는 데이타 처리 장치(10)의 데이타 처리 회로(11)에 S/P & P/S 인터페이스 회로(22) 및 직렬 인터페이스 회로(12)를 거쳐 전송된다. 데이타 처리 회로(11)에서는 데이타가 갱신된다. 데이타 갱신은 블럭 단위로 행해진다. 갱신되는 데이타가 속하는 모든 논리 블럭이 개서된다.
데이타 처리 회로(11)에서 갱신된 데이타는 직렬 인터페이스 회로(12) 및 S/P & P/S 인터페이스 회로(22)를 거쳐 메모리 카드(20)에 기록 지령과 함께 전송된다.
데이타 처리 장치(10)로부터 전송된 기록 명령에 근거하여, 메모리 카드(20)의 제어기(25)는 도 7의 플로우챠트에서 지정된 과정을 따르게 되어 갱신된 데이타를 플래시 메모리(21)에 기록하게 된다. 즉, 갱신된 데이타는 데이타가 기록되어야 할 세그먼트를 형성하는 물리 블럭 중 비사용의 물리 블럭에 기록된다.
도 8에서 나타낸 바와 같이, 비사용의 데이타가 비사용의 물리 블럭에 기록된 후에, 메모리 카드(20)의 제어기(25)는 그 내부 메모리에서 작성된 테이블을 개서하여 갱신된 데이타가 기록되는 물리 블럭에 대응하는 논리 어드레스에 대한 기재를 "비사용"에서 갱신된 데이타가 속하는 논리 블럭의 논리 어드레스로 변경하고, 갱신된 데이타가 갱신되기 전에 기록되어 있는 물리 블럭에 대응하는 논리 어드레스에 대한 기재를 갱신된 데이타가 속하는 논리 블럭의 논리 어드레스로부터 "사용중"으로 변경한다.
마지막으로, 제어기(25)는 갱신되기 전에 블럭 단위로 데이타를 소거한다. 즉, 제어기(25)는 그 내부 메모리의 테이블을 참조하여 "사용중"이 테이블에 기재되어 있는 논리 블럭의 데이타를 소거한다.
그 외
이상은, 메모리 카드(20)의 제어기(25)의 제어하에서 플래시 메모리로부터의 데이타 판독 및 플래시 메모리에의 데이타 기록이 모두 예시적으로 기재되었다. 그러나 이들 데이타 판독 및 기록은 데이타 처리 장치(10)의 제어기(14)의 제어하에서 행해질 수 있음에 주의해야 한다. 이 경우, 물리 블럭의 물리 어드레스와 물리 블럭에 기억된 논리 블럭의 논리 어드레스 간의 대응 관계를 나타내는 테이블이 데이타 처리 장치(10)의 제어기(14)에서 내부 메모리의 세그먼트 단위로 작성되어 있다.
본 발명에 따른 데이타 처리 시스템(1)에서는, 메모리 카드(20)의 플래시 카드(21)로부터의 데이타 판독이나 플래시 카드에의 데이타 기록을 위해, 플래시 메모리(21)의 기억 영역을 구성하는 물리 블럭의 물리 어드레스와 물리 블럭에 기록된 논리 블럭의 논리 어드레스 간의 대응 관계를 나타내는 테이블이 상술한 바와 같이 플래시 메모리(21)의 세그먼트 단위로 작성되어 있다. 따라서, 플래시 메모리(21)가 물리 블럭수의 증가에 따라 증대된 용량을 갖게 설계된 경우에도, 메모리 카드(20)의 제어기(25)의 내부 메모리와 데이타 처리 장치(10)의 제어기(14)의 내부 메모리는 플래시 메모리(21)의 세그먼트들 내에 그러한 테이블들을 작성하는 데에 필요한 만큼만의 용량을 가지면 된다. 따라서, 본 발명은 메모리 카드(20)의 제어기(25)의 내부 메모리의 용량의 증대 혹은 데이터 처리 장치(10)의 제어기(14)의 내부 메모리의 용량의 증대에 기인하는 비용의 증가를 초래하지 않고 더 큰 기억 용량을 갖는 메모리 카드(20)를 갖는 데이터 처리 시스템(1)을 제공할 수 있다.
본 발명에 따른 메모리 카드(20)에서는, 플래시 메모리(21)로부터의 데이타 판독이나 플래시 메모리에의 데이타 기록 시에, 플래시 메모리(21)의 기억 영역을 구성하는 물리 블럭의 물리 어드레스와 물리 블럭에 기록된 논리 블럭의 논리 어드레스 간의 대응 관계를 나타내는 테이블이 플래시 메모리(21)의 세그먼트 단위로 작성되어 있다. 따라서, 플래시 메모리(21)가 물리 블럭수의 증가에 따라 증대된 용량을 갖게 설계된 경우에도, 메모리 카드(20)의 제어기(25)의 내부 메모리는 플래시 메모리(21)의 세그먼트들 내에 그러한 테이블들을 작성하는 데에 필요한 만큼만의 용량을 가지면 된다. 따라서, 본 발명은 메모리 카드(20)의 제어기(25)의 내부 메모리의 용량의 증대에 기인하는 비용의 증가를 초래하지 않고 더 큰 기억 용량을 갖는 메모리 카드(20)를 제공할 수 있다.
본 발명에 따른 데이타 기억 장치는 데이타가 그 기억 수단으로부터 판독되거나 기억 수단에 기록될 때, 세그먼트를 구성하는 복수의 논리 블럭에 기록된 데이타의 논리 어드레스와 세그먼트를 구성하는 물리 블럭의 물리 어드레스 간의 대응 관계를 나타내는 테이블을 세그먼트 단위로 작성한다. 따라서, 기억 수단의 용 량이 블럭수의 증가에 따라 증대되어도, 내부 메모리의 용량을 세그먼트 단위로 테이블을 작성하는 데에 필요한 만큼 확보할 수 있다.
따라서, 본 발명은 내부 메모리의 용량의 증가로 인한 비용의 증가를 초래하지 않고도 대 기억 용량을 갖는 데이타 기억 장치를 제공할 수 있다.
본 발명에 따른 데이타 처리 시스템이 데이타가 그 기억 수단으로부터 판독되거나 그 기억 수단에 기록되도록 하는 데이타 기억 장치를 채용하게 되면, 세그먼트를 구성하는 복수의 논리 블럭에 기록된 데이타의 논리 어드레스와 세그먼트를 구성하는 물리 블럭의 물리 어드레스 간의 대응 관계를 나타내는 테이블이 세그먼트 단위로 작성된다. 따라서, 기억 수단의 용량이 블럭수의 증가에 따라 증대되어도, 내부 메모리의 용량을 세그먼트 단위로 테이블을 작성하는 데에 필요한 만큼 확보할 수 있다.
따라서, 본 발명은 내부 메모리의 용량의 증가로 인해 비용의 증가를 초래하지 않고 대량의 데이타를 처리할 수 있는 데이타 처리 시스템을 제공할 수 있다.
또한, 본 발명에 다른 데이타 처리 방법은 데이타가 그 기억 수단으로부터 판독되거나 기억 수단에 기록될 때, 세그먼트를 구성하는 복수의 논리 블럭에 기록된 데이타의 논리 어드레스와 세그먼트를 구성하는 물리 블럭의 물리 어드레스 간의 대응 관계를 나타내는 테이블이 세그먼트 단위로 작성된다. 따라서, 기억 수단의 용량이 블럭수의 증가에 따라 증대되어도, 내부 메모리의 용량은 세그먼트 단위로 테이블을 작성하는 데에 필요한 만큼으로 할 수 있다.
따라서, 본 발명은 내부 메모리의 용량의 증대로 인한 비용의 증가를 초래하 지 않고 대량의 데이타를 처리하는 데이타 처리 방법을 제공할 수 있다.

Claims (34)

  1. 외부 기기와의 접속을 위한 데이타 기억 장치에 있어서,
    각각 고유한 절대 어드레스를 갖는 복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단; 및
    상기 외부 기기로부터의 지령에 기초하여 상기 기억 수단에 데이타를 기록하거나 상기 기억 수단으로부터 데이타를 판독하기 위한 제어 수단
    을 포함하고,
    상기 제어 수단은 기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하고,
    상기 제어 수단은 상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블을 내부 메모리에 작성하며, 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 상기 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시키고,
    상기 제어 수단은 상기 작성된 테이블로부터 기록될 또는 판독될 데이타에 대한 상기 논리 블럭에 대응하는 물리 블럭의 절대 어드레스를 결정하고,
    상기 제어 수단은 기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하며,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 변환 테이블이 각 세그먼트에 대해 작성되는 데이타 기억 장치.
  2. 제1항에 있어서, 상기 제어 수단은 상기 외부 기기로부터의 지령이 실행될 때마다 상기 변환 테이블을 작성하는 데이타 기억 장치.
  3. 제1항에 있어서, 상기 기억 수단의 물리 블럭에 각각의 논리 어드레스가 기억되는 데이타 기억 장치.
  4. 제1항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 기억 장치.
  5. 제1항에 있어서, 내부에서 전개되는 병렬 데이타를 직렬 데이타로 변환하면서 상기 외부 기기로부터 공급된 직렬 데이타를 병렬 데이타로 변환하여, 이들을 상기 외부 기기로 공급하기 위한 인터페이스 수단을 더 포함하는 데이타 기억 장치.
  6. 데이타 처리 시스템에 있어서,
    각각 고유한 절대 어드레스를 갖는 복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단을 포함하는 데이타 기억 장치; 및
    상기 데이터 기억 장치에 접속되는 데이터 처리 장치를 포함하고,
    상기 데이타 처리 장치는,
    데이타의 기록 또는 판독을 위해 상기 기억 수단에 지령을 발행하는 제어 수단을 포함하고,
    상기 제어 수단은 기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하고,
    상기 제어 수단은, 상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블을 내부 메모리에 작성하며, 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 상기 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시키고,
    상기 제어 수단은 상기 작성된 테이블로부터 기록될 또는 판독될 데이타에 대한 상기 논리 블럭에 대응하는 물리 블럭의 절대 어드레스를 결정하고,
    상기 제어 수단은 기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하며,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 변환 테이블이 각 세그먼트에 대해 작성되는 데이타 처리 시스템.
  7. 제6항에 있어서, 상기 제어 수단은 상기 기억 수단에 데이타가 기록되거나 또는 상기 기억 수단으로부터 데이타가 판독될 때마다 상기 변환 테이블을 작성하는 데이타 처리 시스템.
  8. 제6항에 있어서, 상기 기억 수단의 물리 블럭에 각각의 논리 어드레스가 기억되는 데이타 처리 시스템.
  9. 제6항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 처리 시스템.
  10. 제6항에 있어서, 상기 데이타 처리 장치는, 내부에서 전개되는 병렬 데이타를 직렬 데이타로 변환하여, 이들을 외부 기기로 공급하기 위한 인터페이스 수단을 더 포함하는 데이타 처리 시스템.
  11. 각각 고유한 절대 어드레스를 갖는 복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단에 데이타를 기록하거나 상기 기억 수단으로부터 데이타를 판독하는 데이타 처리 방법으로서,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하는 단계;
    상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블- 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 상기 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시킴 -을 내부 메모리에 작성하는 단계;
    기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하는 단계; 및
    상기 변환 테이블을 참조하여 데이타를 기록하거나 판독하는 단계를 포함하고,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 상기 테이블은 각 세그먼트에 대해 작성되는 데이타 처리 방법.
  12. 제11항에 있어서, 상기 기억 수단의 대응 물리 블럭에 각각의 논리 어드레스가 기억되는 데이타 기억 방법.
  13. 제11항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 처리 방법.
  14. 각각 고유한 절대 어드레스를 갖는 복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단을 포함하는 데이타 기억 장치에 접속되는 데이타 처리 장치로서,
    데이타의 기록 또는 판독을 위해 상기 기억 수단에 지령을 발행하는 제어 수단을 포함하고,
    상기 제어 수단은 기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하고,
    상기 제어 수단은, 상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블을 내부 메모리에 작성하며, 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 상기 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시키고,
    상기 제어 수단은 상기 작성된 테이블로부터 기록될 또는 판독될 데이타에 대한 상기 논리 블럭에 대응하는 물리 블럭의 절대 어드레스를 결정하고,
    상기 제어 수단은 기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하며,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 변환 테이블이 각 세그먼트에 대해 작성되는 데이타 처리 장치.
  15. 제14항에 있어서, 상기 제어 수단은 상기 기억 수단에 데이타가 기록되거나 또는 상기 기억 수단으로부터 데이타가 판독될 때마다 상기 변환 테이블을 작성하는 데이타 처리 장치.
  16. 제14항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 처리 장치.
  17. 제14항에 있어서, 내부에서 전개되는 병렬 데이타를 직렬 데이타로 변환하여, 이들을 상기 외부 기기로 공급하기 위한 인터페이스 수단을 더 포함하는 데이타 처리 장치.
  18. 외부 기기와의 접속을 위한 데이타 기억 장치에 있어서,
    복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단 ; 및
    상기 외부 기기로부터의 지령에 기초하여 상기 기억 수단에 데이타를 기록하거나 상기 기억 수단으로부터 데이타를 판독하기 위한 제어 수단
    을 포함하고,
    상기 제어 수단은 기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하고,
    상기 제어 수단은, 상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블을 내부 메모리에 작성하며, 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 상기 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시키고,
    상기 제어 수단은 상기 외부 기기로부터의 상기 지령이 향하게 되는 상기 논리 블럭에 대응하는 물리 블럭의 절대 어드레스를 상기 작성된 테이블로부터 결정하고,
    상기 제어 수단은 기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하며,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 변환 테이블이 각 세그먼트에 대해 작성되는 데이타 기억 장치.
  19. 제18항에 있어서, 상기 제어 수단은 상기 외부 기기로부터의 지령이 실행될 때마다 상기 변환 테이블을 작성하는 데이타 기억 장치.
  20. 제18항에 있어서, 상기 기억 수단의 대응 블럭에 각각의 논리 어드레스가 기억되는 데이타 기억 장치.
  21. 제18항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 기억 장치.
  22. 제18항에 있어서, 내부에서 전개되는 병렬 데이타를 직렬 데이타로 변환하면서 상기 외부 기기로부터 공급된 직렬 데이타를 병렬 데이타로 변환하여, 이들을 상기 외부 기기로 공급하기 위한 인터페이스 수단을 더 포함하는 데이타 기억 장치.
  23. 데이타 처리 시스템에 있어서,
    복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단을 포함하는 데이타 기억 장치; 및
    상기 기억 수단에 데이타를 기록하거나 또는 상기 기억 수단으로부터 데이타를 판독하는 제어 수단을 갖는 데이터 처리 장치를 포함하고,
    상기 제어 수단은 기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하고,
    상기 제어 수단은, 상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블을 내부 메모리에 작성하며, 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 이들 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시키고,
    상기 제어 수단은 상기 작성된 테이블로부터 기록될 또는 판독될 데이타에 대한 상기 논리 블럭에 대응하는 물리 블럭의 절대 어드레스를 결정하고,
    상기 제어 수단은 기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하며,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 변환 테이블이 각 세그먼트에 대해 작성되는 데이타 처리 시스템.
  24. 제23항에 있어서, 상기 제어 수단은 상기 기억 수단에 데이타가 기록되거나 또는 상기 기억 수단으로부터 데이타가 판독될 때마다 상기 변환 테이블을 작성하는 데이타 처리 시스템.
  25. 제23항에 있어서, 상기 기억 수단의 물리 블럭에 각각의 상대 어드레스가 기억되는 데이타 처리 시스템.
  26. 제23항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 처리 시스템.
  27. 제23항에 있어서, 상기 데이타 처리 장치는, 내부에서 전개되는 병렬 데이타를 직렬 데이타로 변환하여, 이들을 외부 기기로 공급하기 위한 인터페이스 수단을 더 포함하는 데이타 처리 시스템.
  28. 복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단에 데이타를 기록하거나 상기 기억 수단으로부터 데이타를 판독하는 데이타 처리 방법으로서,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하는 단계;
    상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블- 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 상기 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시킴 -을 내부 메모리에 작성하는 단계;
    기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하는 단계; 및
    상기 변환 테이블을 참조하여 데이타를 기록하거나 판독하는 단계를 포함하고,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 상기 테이블은 각 세그먼트에 대해 작성되는 데이타 처리 방법.
  29. 제28항에 있어서, 상기 기억 수단의 대응 물리 블럭에 각각의 논리 어드레스가 기억되는 데이타 기억 방법.
  30. 제28항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 처리 방법.
  31. 복수의 물리 블럭을 각각 포함하는 복수의 세그먼트로 기억 영역이 분할되는 기억 수단을 포함하는 데이타 기억 장치에 접속되는 데이타 처리 장치로서,
    데이타의 기록 또는 판독을 위해 상기 기억 수단에 지령을 발행하는 제어 수단을 포함하고,
    상기 제어 수단은 기록될 또는 판독될 데이타에 대한 논리 블럭의 논리 어드레스를 데이타의 소정 섹터 번호에 기초하여 결정하고,
    상기 제어 수단은, 상기 복수의 세그먼트 중 일 세그먼트에 대해, 기록될 또는 판독될 데이타에 대한 논리 블럭에 대해 결정되는 논리 어드레스를 포함하는 테이블을 내부 메모리에 작성하며, 상기 작성된 테이블은 상기 세그먼트에서의 상기 물리 블럭의 절대 어드레스와 상기 물리 블럭의 대응 논리 어드레스 사이의 대응관계를 맵핑시키고,
    상기 제어 수단은 상기 작성된 테이블로부터 기록될 또는 판독될 데이타에 대한 상기 논리 블럭에 대응하는 물리 블럭의 절대 어드레스를 결정하고,
    상기 제어 수단은 기존 테이블이 기록될 또는 판독될 데이타에 대한 상기 논리 블럭을 포함하는 세그먼트에 대응하지 않는 경우 상기 내부 메모리의 기존 테이블을 상기 작성된 테이블로 고쳐 기록하며,
    기록될 또는 판독될 데이타에 대한 논리 블럭의 결정된 논리 어드레스를 포함하는 변환 테이블이 각 세그먼트에 대해 작성되는 데이타 처리 장치.
  32. 제31항에 있어서, 상기 제어 수단은 상기 기억 수단에 데이타가 기록되거나 또는 상기 기억 수단으로부터 데이타가 판독될 때마다 상기 변환 테이블을 작성하는 데이타 처리 장치.
  33. 제31항에 있어서, 일정 범위에 포함되는 논리 어드레스는 미리 결정된 세그먼트 내의 절대 어드레스로 변환되는 데이타 처리 장치.
  34. 제31항에 있어서, 내부에서 전개되는 병렬 데이타를 직렬 데이타로 변환하여, 이들을 상기 외부 기기로 공급하기 위한 인터페이스 수단을 더 포함하는 데이타 처리 장치.
KR1019990025572A 1998-06-30 1999-06-30 데이타 기억 장치, 데이타 처리 시스템, 데이타 처리 방법 및 데이타 처리 장치 KR100742849B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP18525698A JP4315488B2 (ja) 1998-06-30 1998-06-30 データ記憶装置、データ処理装置、データ処理システム並びにデータ処理方法
JP1998-185256 1998-06-30

Publications (2)

Publication Number Publication Date
KR20000006562A KR20000006562A (ko) 2000-01-25
KR100742849B1 true KR100742849B1 (ko) 2007-07-25

Family

ID=16167644

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990025572A KR100742849B1 (ko) 1998-06-30 1999-06-30 데이타 기억 장치, 데이타 처리 시스템, 데이타 처리 방법 및 데이타 처리 장치

Country Status (7)

Country Link
US (1) US6516400B1 (ko)
EP (1) EP0969378A3 (ko)
JP (1) JP4315488B2 (ko)
KR (1) KR100742849B1 (ko)
CN (1) CN1201231C (ko)
MY (1) MY126422A (ko)
TW (1) TW436771B (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1174881A1 (en) * 2000-06-22 2002-01-23 STMicroelectronics S.r.l. Integrated circuit for memory card and memory card using the circuit
DE10040267A1 (de) * 2000-08-17 2002-02-28 Philips Corp Intellectual Pty Prozessor-Speicher-System
US7058788B2 (en) * 2001-02-23 2006-06-06 Falconstor Software, Inc. Dynamic allocation of computer memory
KR100437609B1 (ko) * 2001-09-20 2004-06-30 주식회사 하이닉스반도체 반도체 메모리 장치의 어드레스 변환 방법 및 그 장치
US6711663B2 (en) * 2001-11-15 2004-03-23 Key Technology Corporation Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof
KR100449708B1 (ko) * 2001-11-16 2004-09-22 삼성전자주식회사 플래시 메모리 관리방법
US6704852B2 (en) * 2001-11-16 2004-03-09 Key Technology Corporation Control device applicable to flash memory card and method for building partial lookup table
KR100439507B1 (ko) * 2002-03-18 2004-07-09 삼성전기주식회사 고 용량 플래시 메모리 카드 시스템에서의 데이터 운영 방법
JP2004152279A (ja) * 2002-10-08 2004-05-27 Matsushita Electric Ind Co Ltd プログラム更新方法および端末装置
KR100457812B1 (ko) * 2002-11-14 2004-11-18 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
KR100546403B1 (ko) * 2004-02-19 2006-01-26 삼성전자주식회사 감소된 메모리 버스 점유 시간을 가지는 시리얼 플레쉬메모리 컨트롤러
KR100739760B1 (ko) 2005-11-23 2007-07-13 삼성전자주식회사 컴퓨터의 메모리 사용에 대한 정보를 제공하는 시스템 및방법
WO2007077595A1 (ja) * 2005-12-28 2007-07-12 Fujitsu Limited メモリ制御方法、プログラム及び装置
KR100781517B1 (ko) 2006-02-16 2007-12-03 삼성전자주식회사 비휘발성 메모리의 맵핑 정보 관리 장치 및 방법
KR100843133B1 (ko) 2006-09-20 2008-07-02 삼성전자주식회사 플래시 메모리에서 매핑 정보 재구성을 위한 장치 및 방법
KR100809320B1 (ko) 2006-09-27 2008-03-05 삼성전자주식회사 이종 셀 타입을 지원하는 비휘발성 메모리를 위한 맵핑정보 관리 장치 및 방법
KR100880425B1 (ko) 2007-02-13 2009-01-29 삼성전자주식회사 메모리 맵 테이블 서치 타임을 최소화 또는 줄일 수 있는방법 및 그에 따른 반도체 메모리 장치
CN101625643B (zh) * 2009-05-08 2012-01-04 四川和芯微电子股份有限公司 一种8051单片机地址映射方法
CN102043721B (zh) * 2010-05-12 2016-10-26 中颖电子股份有限公司 闪存存储管理方法
CN102841851B (zh) * 2012-07-19 2015-09-09 深圳市江波龙电子有限公司 闪存管理方法和闪存设备
CN103455442B (zh) * 2013-08-30 2016-06-08 华为技术有限公司 多通道先进先出缓存队列控制器及访问方法
KR20170058482A (ko) * 2015-11-18 2017-05-29 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0736759A (ja) * 1993-07-15 1995-02-07 Hitachi Ltd 半導体ファイルシステム
JPH09161491A (ja) * 1995-12-04 1997-06-20 Fujitsu Ltd フラッシュメモリ制御方法及びフラッシュメモリ制御ユニット
JPH10116230A (ja) * 1996-07-30 1998-05-06 Sharp Corp メモリ管理装置及びコンピュータ読み取り可能な記録媒体
JPH10124384A (ja) * 1996-08-28 1998-05-15 Toshiba Corp 不揮発性半導体メモリの制御方法
JPH1196779A (ja) * 1997-09-17 1999-04-09 Victor Co Of Japan Ltd フラッシュ型メモリ,その管理方法,記憶装置,コンピュータシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491806A (en) * 1990-06-26 1996-02-13 Lsi Logic Corporation Optimized translation lookaside buffer slice having stored mask bits
US5682495A (en) * 1994-12-09 1997-10-28 International Business Machines Corporation Fully associative address translation buffer having separate segment and page invalidation
JP3604466B2 (ja) * 1995-09-13 2004-12-22 株式会社ルネサステクノロジ フラッシュディスクカード
JP3718578B2 (ja) * 1997-06-25 2005-11-24 ソニー株式会社 メモリ管理方法及びメモリ管理装置
US6112285A (en) * 1997-09-23 2000-08-29 Silicon Graphics, Inc. Method, system and computer program product for virtual memory support for managing translation look aside buffers with multiple page size support

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0736759A (ja) * 1993-07-15 1995-02-07 Hitachi Ltd 半導体ファイルシステム
JPH09161491A (ja) * 1995-12-04 1997-06-20 Fujitsu Ltd フラッシュメモリ制御方法及びフラッシュメモリ制御ユニット
JPH10116230A (ja) * 1996-07-30 1998-05-06 Sharp Corp メモリ管理装置及びコンピュータ読み取り可能な記録媒体
JPH10124384A (ja) * 1996-08-28 1998-05-15 Toshiba Corp 不揮発性半導体メモリの制御方法
JPH1196779A (ja) * 1997-09-17 1999-04-09 Victor Co Of Japan Ltd フラッシュ型メモリ,その管理方法,記憶装置,コンピュータシステム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
07036759
11096779

Also Published As

Publication number Publication date
EP0969378A3 (en) 2004-02-04
JP2000020391A (ja) 2000-01-21
EP0969378A2 (en) 2000-01-05
TW436771B (en) 2001-05-28
KR20000006562A (ko) 2000-01-25
MY126422A (en) 2006-09-29
US6516400B1 (en) 2003-02-04
CN1241786A (zh) 2000-01-19
JP4315488B2 (ja) 2009-08-19
CN1201231C (zh) 2005-05-11

Similar Documents

Publication Publication Date Title
KR100742849B1 (ko) 데이타 기억 장치, 데이타 처리 시스템, 데이타 처리 방법 및 데이타 처리 장치
US5742934A (en) Flash solid state disk card with selective use of an address conversion table depending on logical and physical sector numbers
US7890732B2 (en) Memory card and semiconductor device
JP3233079B2 (ja) データ処理システム及びデータ処理方法
KR100618298B1 (ko) 기록 시스템, 데이터 기록 장치, 메모리 장치 및 데이터기록 방법
US5717886A (en) Semiconductor disk device and memory management method
US7752412B2 (en) Methods of managing file allocation table information
US7681008B2 (en) Systems for managing file allocation table information
JP4828816B2 (ja) メモリカード、半導体装置、及びメモリカードの制御方法
EP0613151A2 (en) Semiconductor memory system including a flash EEPROM
US7245539B2 (en) Memory card, semiconductor device, and method of controlling semiconductor memory
US6965963B1 (en) Continuous arrangement of data clusters across multiple storages
KR100527610B1 (ko) 저장장치,데이터처리시스템및데이터기록및판독방법
US6839798B1 (en) Flash memory capable of storing frequently rewritten data
JP4460967B2 (ja) メモリカード、不揮発性半導体メモリ、及び半導体メモリの制御方法
CN102473141B (zh) 非易失性存储装置以及存储控制器
JP4127307B2 (ja) データ記憶装置、データ処理システム、データ処理方法及びデータ処理装置
WO2008042594A1 (en) Managing file allocation table information
JP3620478B2 (ja) 記憶装置、この記憶装置を用いたデータ処理システム及びデータ読み出し方法
US20050204115A1 (en) Semiconductor memory device, memory controller and data recording method
JP2002123422A (ja) メモリ装置におけるデータ管理方法
JP3788205B2 (ja) 記憶装置、データ処理システム、データの書き込み及び読み出し方法並びにデータ処理装置
JP2910745B2 (ja) 記憶装置及びデータ処理方法
US7996598B2 (en) Memory management module
JP2004326538A (ja) 情報記録再生方法

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
E902 Notification of reason for refusal
B701 Decision to grant
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20130712

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140711

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee