KR20070013227A - 데이터 기억 장치 및 방법, 및 기록 재생 시스템 - Google Patents
데이터 기억 장치 및 방법, 및 기록 재생 시스템 Download PDFInfo
- Publication number
- KR20070013227A KR20070013227A KR1020060069157A KR20060069157A KR20070013227A KR 20070013227 A KR20070013227 A KR 20070013227A KR 1020060069157 A KR1020060069157 A KR 1020060069157A KR 20060069157 A KR20060069157 A KR 20060069157A KR 20070013227 A KR20070013227 A KR 20070013227A
- Authority
- KR
- South Korea
- Prior art keywords
- area
- data
- writing
- recording
- host device
- Prior art date
Links
Images
Classifications
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
- G11B19/02—Control of operating function, e.g. switching from recording to reproducing
- G11B19/04—Arrangements for preventing, inhibiting, or warning against double recording on the same blank or against other recording or reproducing malfunctions
-
- 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
- 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/0611—Improving I/O performance in relation to response time
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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/068—Hybrid storage device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/32—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
- G11B27/327—Table of contents
- G11B27/329—Table of contents on a disc [VTOC]
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/1075—Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data
- G11B2020/10759—Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B2020/10916—Seeking data on the record carrier for preparing an access to a specific address
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/40—Combinations of multiple record carriers
- G11B2220/45—Hierarchical combination of record carriers, e.g. HDD for fast access, optical discs for long term storage or tapes for backup
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/60—Solid state media
- G11B2220/61—Solid state media wherein solid state memory is used for storing A/V content
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)
- Signal Processing (AREA)
- Multimedia (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
디스크의 씨크 시간, 회전 대기 시간 등, 데이터가 전송되어 기록 매체에 그 데이터가 기입 가능하게 될 때까지의 동안도 효율적으로 활용함으로써 데이터의 전송 속도를 더욱 향상시킨 데이터 기억 장치 및 방법, 및 기록 재생 시스템을 제공한다. 하이브리드 기억 장치는, 디스크 및 불휘발성 고체 메모리의 2개의 기억 영역을 갖고, 모두 디스크 캐쉬 영역 CA, 시스템 영역 SA, 유저 영역 UA를 갖는다. 호스트 장치로부터 데이터가 전송된 경우, 선두 슈퍼 클러스터를 고속 액세스가 가능한 불휘발성 고체 메모리의 캐쉬 영역 CA1에 기입하고, 그 동안, 헤드를 소정 위치로 이동시키며, 이동이 종료된 시점부터 계속되는 데이터는 디스크의 캐쉬 영역 CA2에 기입한다.
호스트 장치, 디스크, 불휘발성 고체 메모리, 하이브리드 기억 장치, 전송 속도, 캐쉬 영역, 시스템 영역, 유저 영역, 슈퍼 클러스터
Description
도 1은 본 발명의 실시예에서의 기록 재생 시스템을 도시하는 블록도.
도 2a의 좌측 도면 및 우측 도면은 각각 호스트 장치로부터 본 어드레스 공간을 나타내는 LBA 공간과, 하이브리드 기억 장치로부터 본 어드레스 공간을 나타내는 논리 섹터 공간을 도시하는 도면.
도 2b는 FAT의 일례를 도시하는 도면.
도 3은 본 발명의 실시예에서의 논리 섹터 공간에서의 불휘발성 고체 메모리의 어드레싱을 도시하는 모식도.
도 4는 캐쉬 영역 CA를 사용하여 데이터의 기입을 행하는 경우의 본 발명의 실시예에서의 하이브리드 기억 장치의 동작 방법을 도시하는 플로우차트.
도 5의 (a) 및 (b)는 커맨드의 일례(Set Write File Parameter)를 도시하는 도면으로서, 각각 커맨드 발행 시의 레지스터 내용 및 커맨드 종료 시의 레지스터 내용을 도시하는 도면.
도 6은 기입이 행해진 후의 디스크 캐쉬 영역 CA의 일례를 도시하는 모식도.
도 7은 캐쉬 영역 CA에 기입한 10 슈퍼 클러스터로 이루어지는 File1의 배치 상황을 도시하는 도면.
도 8은 캐쉬 영역 CA에 10 슈퍼 클러스터로 이루어지는 File1을 기입했을 때의 기입 타이밍을 도시하는 도면.
도 9는 FLUSH 동작의 타이밍을 도시하는 도면.
도 10의 (a) 및 (b)는 그 경우의 1 슈퍼 클러스터에서의 불휘발성 고체 메모리 및 디스크의 기록 영역에서의 사용 비율을 도시하는 모식도 및 논리 섹터 공간을 도시하는 도면.
도 11a는 NAND 플래시 메모리에서의 2개의 서로 다른 블록, 페이지 사이즈의 파라미터를 도시하는 도면.
도 11b는 도 11a에 도시하는 파라미터를 이용한 경우를 사용하여 계산한 데이터 전송 속도를 도시하는 도면.
도 12는 디스크(11)의 일부의 영역과, 불휘발성 고체 메모리(22)의 일부의 영역에 LBA가 중복하여 부여되어 있는 영역 X가 형성되어 있는 모습을 도시하는 도면.
도 13은 Set Write File Parameter의 다른 일례를 도시하는 도면.
<도면의 주요부분에 대한 부호의 설명>
1 : 기록 재생 시스템
2 : 호스트 장치
3 : 인터페이스
4 : 하이브리드 기억 장치
11 : 디스크
12 : 스핀들 모터
13 : 보이스 코일 모터
14 : 서보 제어부
15 : 리드 라이트 채널부
16 : 하이브리드 기억 장치 제어부
17 : 버퍼 메모리
18 : 인터페이스 제어부
19, 21 : 메모리
20, 32 : CPU
21 : 버스
22 : 불휘발성 고체 메모리
[특허 문헌1] 일본 특개평 11-45210호 공보
본 발명은, 호스트 장치로부터의 제어에 의해 AV 데이터 등의 각종 데이터를 파일로서 관리하여 기억하는 데이터 기억 장치 및 방법, 및 호스트 장치 및 데이터 기억 장치로 이루어지는 기록 재생 시스템에 관한 것으로, 특히, 예를 들면 기록 매체의 액세스 위치에 따라 데이터 전송 레이트가 다른 디스크 등의 기록 매체를 갖는 데이터 기억 장치 및 방법, 및 기록 재생 시스템에 관한 것이다.
FAT 파일 시스템은, PC(Personal Computer) 등의 호스트 장치에서의, 예를 들면 하드디스크 드라이브 장치(HDD), 또는 불휘발성 고체 메모리를 기록 매체로 한 미디어(소니제 : 메모리 스틱(등록상표), 도시바제; 스마트 미디어(등록상표), 선 디스크제 : 컴팩트 플래시(등록상표), 멀티미디어 카드 등) 등의 외부 기억 장치에서 이용되는 파일 시스템이다.
FAT 파일 시스템은, 개개의 파일이 기록 매체 상 어디에 배치되어 있는지를 나타내는 데에 이용되는 FAT(File Allocation Table)와, 파일의 속성 및 파일이 디렉토리상 어디에 존재하고 있는지를 나타내는 디렉토리 항목의 2개의 데이터를 사용한다.
통상적으로, 기록 매체 상에 FAT와 루트 디렉토리용의 에리어가 전용으로 형성되어 있으며, PC는 파일 액세스에 필요한 이들 정보를 HDD 등의 기록 재생 장치로부터 PC 인터페이스를 통하여(SCSI(Small Computer System Interface), IDE(Integrated Drive Electronics), IEEE1394, USB(Universal Serial Bus) 등) 수신하고, 그것들에 기초하여 기록 재생 제어를 행한다.
예를 들면, HDD에 파일을 기입할 때에는, 빈 클러스터에 그 데이터를 기입하고, 기입이 종료되면, 다음에 어느 클러스터가 사용될지를 나타내는 정보를 FAT 항목에 기입한다. 파일을 소거하는 경우에는, 기입되어 있는 데이터는 그 상태 그대로로 하고, 사용되고 있는 클러스터에 대응하는 FAT 항목을 빈 클러스터로 한다. 또한 읽어냄 시에는 디렉토리 항목으로부터 파일의 개시 클러스터 어드레스를 찾아 내어, 그것에 대응하는 FAT 항목을 읽어내어 어느 클러스터에 읽어내는 파일의 데이터가 있는지를 알고, 미디어로부터 읽어냄을 행한다.
이러한 호스트 장치와 HDD 사이의 데이터 전송 시에, 디스크 캐쉬 장치를 사용하여, 하드디스크에의 기입 정보, 하드디스크로부터의 읽어냄 정보를 일시적으로 캐쉬하여 놓음으로써, 하드디스크 액세스의 외관상의 속도를 올릴 수 있다. 또한, 예를 들면 하기 특허 문헌 1에 기재된 기술과 같이, Flash EEPROM(electrically erasable and programmable Read Only Memory) 등의 불휘발성 메모리(nonvolatile semiconductor memory)를 캐쉬에 이용하면, 전원이 OFF되기 전에 반드시 캐쉬의 내용을 하드디스크에 재기입할 필요가 없어져 편리하다.
그러나, 상술한 특허 문헌1에 기재된 기술과 같이 불휘발성 고체 메모리만으로 기억 장치를 구성하는 것은 코스트가 높아진다고 하는 문제점이 있다.
그런데, 이러한 FAT 파일 시스템을 사용한 기록 재생 장치에서는, HDD를 새롭게 기동했을 때, 또는 전력 절약화 모드로부터 통상 모드로 이행시켰을 때 등에서는, 데이터 전송을 할 수 있도록 될 때까지는 몇 초 정도의 시간이 걸리고, 또한, HDD에는 씨크 동작에 필요한 시간이 10㎳ 단위로 걸리기 때문에, 즉시 기입이나 읽어냄을 실행할 수 없는 등의 문제점이 있다. 또한 전송 속도의 한층 더한 향상도 어플리케이션측으로부터 요구되고 있다.
이러한 문제를 회피하기 위해서는, HDD의 회전 수를 올리거나, 선기록 밀도를 올리거나, 또는 복수의 헤드로 동시에 기입 및 읽어냄을 한다고 하는 방법 등이 생각되지만, 컨슈머 기기용으로서 사용되는 능력이 높지 않은 HDD에서, 이들 방법을 실현시키는 것은 곤란하다.
또한, HDD나 불휘발성 고체 메모리에 기입한 데이터를 관리하기 위한 관리 정보나, 중요한 데이터에 대하여, 간이하게 백업하기 위한 기술이 요망되고 있다.
본 발명은, 이러한 종래의 실정을 감안하여 제안된 것으로서, 디스크의 씨크 시간, 회전 대기 시간 등, 데이터가 전송되고 기록 매체에 그 데이터가 기입 가능하게 될 때까지의 동안도 효율적으로 활용함으로써 호스트 장치로부터의 데이터의 전송 속도를 더욱 향상시킨 데이터 기억 장치 및 방법, 및 기록 재생 시스템을 제공하는 것을 목적으로 한다.
상술한 목적을 달성하기 위해서, 본 발명에 따른 데이터 기억 장치는, 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제1 영역을 갖는 기록 매체와, 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제2 영역을 갖는 불휘발성 고체 메모리와, 호스트 장치로부터 전송된 데이터를 기록 매체 및 불휘발성 고체 메모리가 갖는 기록 영역에 기입하도록 제어하는 제어 수단을 갖고, 기록 영역은, 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제1 영역 및 제2 영역으로 이루어지는 제1 기입 영역과, 기록 매체에서 그 제1 영역보다 데이터의 전송 속도가 느린 제3 영역을 포함하는 제2 기입 영역과, 기록 매체의 일부의 영역과 불휘발성 고체 메모리의 일부의 영역에 논리 블록 어드레스가 중복하여 부여되어 있는 제3 기입 영역을 갖고, 제어 수단은, 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드에 기초하여, 제1 기입 영역, 제2 기입 영역 또는 제3 기입 영역에 상기 호스트 기기로부터 전송된 데이터를 기입하도록 제어한다.
또한, 상술한 목적을 달성하기 위해서, 본 발명에 따른 데이터 기록 방법은, 호스트 장치로부터 데이터가 전송되고, 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드에 기초하여, 데이터를 기록 매체의 기록 영역 중 미리 정해진 제1 영역 및 불휘발성 고체 메모리의 기록 영역 중 미리 정해진 제2 영역으로 이루어지는 제1 기입 영역, 기록 매체의 기록 영역 중 제1 기록 영역보다 데이터의 전송 속도가 느린 제3 영역을 포함하는 제2 기입 영역 또는 기록 매체의 기록 영역 중 미리 정해진 일부의 영역 및 불휘발성 고체 메모리의 기록 영역 중 미리 정해진 일부의 영역에 논리 블록 어드레스가 중복하여 부여되어 있는 제3 기입 영역에 상기 호스트 기기로부터 전송된 데이터를 기입한다.
또한, 상술한 목적을 달성하기 위해서, 본 발명에 따른 기록 재생 시스템은, 호스트 장치와, 그 호스트 장치의 제어에 따라서 기록 매체에 액세스하여 데이터의 기입 및/또는 데이터의 읽어냄을 하는 데이터 기억 장치를 갖는 기록 재생 시스템에 있어서, 데이터 기억 장치는, 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제1 영역을 갖는 기록 매체와, 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제2 영역을 갖는 불휘발성 고체 메모리와, 호스트 장치로부터 전송된 데이터를 기록 매체 및 불휘발성 고체 메모리가 갖는 기록 영역에 기입하도록 제어하는 제어 수단을 갖고, 기록 영역은, 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제1 영역 및 제2 영역으로 이루어지는 제1 기입 영역과, 기록 매체에서 그 제1 영역보다 데이터의 전송 속도가 느린 제3 영역을 포함하는 제2 기입 영역과, 기록 매체의 일부의 영역과 불휘발성 고체 메모리의 일부의 영역에 논리 블록 어드레스가 중복하여 부여되어 있는 제3 기입 영역을 갖고, 제어 수단은, 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드에 기초하여, 제1 기입 영역, 제2 기입 영역 또는 제3 기입 영역에 상기 호스트 기기로부터 전송된 데이터를 기입하도록 제어한다.
<실시예>
이하, 본 발명을 적용한 구체적인 실시예에 대하여, 도면을 참조하면서 상세히 설명한다. 이 실시예는, 본 발명을, 데이터의 기록 위치에 따라서 전송 속도가 서로 다른 예를 들면 하드디스크 등의 회전 기록 매체(이하, 디스크라고 함)와, 불휘발성 고체 메모리를 갖는 기억 장치(이하, 하이브리드 기억 장치라고 함)와, 이것에 접속된 호스트 장치로 이루어지는 기록 재생 시스템에 적용한 것이다.
본 실시예의 하이브리드 기억 장치는, 디스크와 반도체 고체 메모리의 2개의 기억 영역(기록 영역)을 갖고, 상황에 따라서 병렬 또는 동시에 데이터를 기입하거나, 읽어내거나 함으로써, 데이터의 전송 속도의 향상을 도모한 것이다. 또한, 디스크는, 데이터 전송 속도가 빠른 디스크의 외주측의 영역이, 데이터를 일시적으로 기입 가능한 제1 영역으로서의 캐쉬로서 할당되고, 제3 영역으로서의 내주측의 영역이 시스템 영역 및 유저 영역에 할당되어 있다. 또한, 불휘발성 고체 메모리는, 전송 데이터를 일시적으로 기입하기 위한 제2 영역으로서의 캐쉬로서 사용하거나, 제4 영역으로서의 전송 데이터를 기억하는 기억 장치로서 사용하는 등, 상황에 따 라서 구분하여 사용된다. 그리고, 예를 들면, 디스크의 캐쉬 영역에 데이터를 기입할 때의 씨크 시간, 회전 대기 시간 등의 동안에는, 불휘발성 고체 메모리를 캐쉬로서 사용한다. 또한, 파일의 선두 데이터만을 불휘발성 고체 메모리에 기억해 놓음으로써, 디스크로부터 데이터를 읽어낼 때의 씨크 시간, 회전 대기 시간 등의 동안에 불휘발성 고체 메모리로부터 데이터를 읽어낼 수 있다. 이와 같이, 디스크와 맞춰 불휘발성 고체 메모리를 사용함으로써, 디스크의 씨크 시간, 회전 대기 시간 등에서도 고효율의 데이터 전송을 가능하게 하는 것이다.
여기서, 불휘발성 고체 메모리는, 예를 들면 메모리 카드 등에 사용되어, 블록 단위로 데이터를 주고받는 NAND 플래시 메모리 등이 있지만, 본 실시예에서는, 예를 들면 1개의 불휘발성 개체 메모리 칩에 대한 전송 속도 중, 기입 속도는 디스크에 비하여 느리고, 읽어냄 속도는 디스크와 동일한 정도인 것으로 하여 설명한다.
또한, 본 기록 재생 시스템에서는, 파일 시스템으로서 MS-DOS 호환 FAT 파일 시스템을 채용한 것으로 하지만, 데이터를 파일로서 관리하는 시스템이면 어떤 것이라도 적용할 수 있다. 또한, 본 실시예에서는, 하이브리드 기억 장치는 하드디스크 등의 자기 기록 매체를 갖는 것으로 하여 설명하지만, 랜덤 액세스 가능한 기억 매체이면, 예를 들면 CD, DVD 등의 광 디스크 등, 마찬가지의 처리가 가능하다고 하는 것은 물론이다.
도 1은, 본 실시예에서의 기록 재생 시스템을 도시하는 블록도이다. 도 1에 도시한 바와 같이, 기록 재생 시스템(1)은, 예를 들면, PC(Personal Computer) 또 는 AV 기기 등 호스트 장치(2)와, 이것에 IDE(Integrated Drive Electronics), SCSI(Small Computer System Interface), FC(Fibre Channel), USB(Universal Serial Bus) 등의 인터페이스(3)를 통하여 접속된 하이브리드 기억 장치(4)로 이루어진다.
하이브리드 기억 장치(4)는, 호스트 장치(2)로부터 출력되는 각종 데이터를 하드디스크 등의 회전 기록 매체로서의 디스크(11), 및 불휘발성 고체 메모리(22)에서의 기억 영역에 기록하는 것으로서, 디스크(11)와, 디스크(11)를 회전 구동하는 스핀들 모터(12)와, 디스크(11)에 대하여 신호의 읽어냄, 기입을 행하는 자기 헤드(도시 생략)를 디스크(11)의 반경 방향으로 피드하는 보이스 코일 모터(13)와, 스핀들 모터(12) 및 보이스 코일 모터(13)의 구동 제어를 행하는 서보 제어부(14)와, 디스크(11)에 기입하는 데이터의 부호화 및 디스크(11)로부터 읽어낸 데이터의 복호를 행하는 리드 라이트 채널부(15)를 갖는다.
또한, 하이브리드 기억 장치(4)는, 디스크(11) 상 및 불휘발성 고체 메모리(22) 상의 데이터를 관리하는 하이브리드 기억 장치 제어부(16)와, 디스크(11) 및 불휘발성 고체 메모리(22)로부터 읽어낸 데이터 및 디스크(11) 및 불휘발성 고체 메모리(22)에 기입하는 데이터를 버퍼링하는 버퍼 메모리(17)와, 호스트 장치(2)와의 사이에서 송수신하는 데이터, 제어 커맨드 등의 입출력 회로를 구성하는 인터페이스 제어부(18)와, 디스크(11) 또는 불휘발성 고체 메모리(22) 상의 FAT 에리어 상의 내용을 기억하는 메모리(19)와, 이들을 제어하는 CPU(Central Processing Unit)(20)를 갖고, 이들이 버스(21)를 통하여 접속되어 있다. 또한, 하이브리드 기억 장치 제어부(16)에 접속되어 있는 불휘발성 고체 메모리(22)는, 상술한 바와 같이, 디스크 캐쉬로서도 사용된다.
하이브리드 기억 장치(4)는, 인터페이스(3)를 통하여 호스트 장치(3)로부터 발행된 커맨드를 인터페이스 제어부(18)에서 수취하고, 인터페이스 제어부(18)는 그 내용을 이해하여 하이브리드 기억 장치(4) 내의 CPU(20)에 통지한다. CPU(20)는, 통지 내용에 기초하여 하이브리드 기억 장치 제어부(16), 리드 라이트 채널부(15), 서보 제어부(14)에 대하여 필요한 커맨드 및 파라미터를 설정하여, 이들의 동작을 실행시킨다.
서보 제어부(14)는, 스핀들 모터(9) 및 보이스 코일 모터(11)의 구동 제어를 행하여, 디스크(11)의 소정의 트랙, 섹터에 대하여 헤드를 이동시킨다.
리드 라이트 채널부(15)는, 디스크(11)에의 기입 시, 보내어져 온 유저 데이터를 기록 재생계의 특성에 적합한 디지털 비트 계열로 부호화(변조)한다. 또한, 읽어냄 시에는 헤드로부터 읽어내어진 재생 신호로부터 고역 노이즈를 제거하고 나서 아날로그 신호로부터 디지털 신호로의 변환을 행하고, 또한 최우 복호법을 이용하여 데이터의 추정을 행한 후, 복조를 행하여 유저 데이터의 재생을 행한다.
또한, 하이브리드 기억 장치 제어부(16)는, 버퍼 메모리(17), 불휘발성 고체 메모리(22), 리드 라이트 채널부(15), 인터페이스 제어부(18)의 각각의 사이에서의 데이터의 교환을 관리하고, 데이터의 포맷에 따른 처리를 행한다. 그 때에 오류 정정 부호에 의한 부호화와 오류 검출 및 오류 정정에 따른 처리도 더불어 행한다.
호스트 장치(2)로부터 전송된 데이터는, 하드디스크(11), 또는 불휘발성 고 체 메모리(22)에 저장된다. 버퍼 메모리(17)는, 그 때, 또는 읽어냄 시에 일시적으로 데이터의 저장을 행하여, 전송 속도의 차이에 의한 성능의 저하를 억제하기 위해서 사용된다.
이에 대응하여 호스트 장치(2)에서는, 메모리(31)에 워크 에리어를 확보한 중앙 처리 유닛(CPU)(32)의 처리에 의해, 상위의 컨트롤로부터의 지시에 따라서 하이브리드 기억 장치(4)에 다양한 커맨드 등을 송출한다.
이 처리에서 CPU(32)는, 전원 기동 시, 소정의 처리 수순의 실행에 의해, 디스크(11)의 시스템 엔트리 에리어에 기록되어 이루어지는 관리용 데이터인 부트 에리어, FAT 에리어, 디렉토리 에리어의 데이터를 메모리(31)에 업 로드하고, 이 업 로드한 데이터를 기준으로 한 파라미터의 설정에 의해 다양한 커맨드를 송출한다.
다음으로, 본 실시예에서의 데이터의 관리 방법에 대하여 설명한다. 디스크(11)에 기록되는 데이터는, 호스트 장치(2)와 하이브리드 기억 장치(4)에서는 서로 다른 어드레스 공간 상에서 관리된다. 도 2a의 좌측 도면 및 우측 도면은 각각 호스트 장치(2)로부터 본 어드레스 공간을 나타내는 LBA 공간 P와, 하이브리드 기억 장치(4)로부터 본 어드레스 공간을 나타내는 논리 섹터 공간 Q를 도시하는 도면이다.
하이브리드 기억 장치(4)에서의 기억 영역은, 디스크(11)와 불휘발성 고체 메모리(22)를 합한 영역이다. 이들 기억 영역에서, 데이터를 기록하는 최소의 단위는 섹터라고 불리고, 그 사이즈는 통상 512byte이다. 하이브리드 기억 장치(4)에서는, 디스크(11)의 기억 영역을, 섹터의 단위로, 물리 어드레스, 물리 섹터 번 호, 논리 섹터 번호의 3개로 관리한다. 물리 어드레스는, 면 번호, 트랙 번호, 섹터 번호의 3개로 이루어진다. 여기에서, 물리 섹터 번호란, 모든 섹터를 디스크(11)의 외측으로부터 내측을 향하여 순서대로 어드레스를 할당한 것이며, 논리 섹터 번호란, 기입 및 읽어냄을 할 수 없는 결함 섹터에 대하여 대체 처리를 행한 후에 어드레스를 할당한 것이다. 또한, 불휘발성 고체 메모리(22)의 기억 영역도 섹터 사이즈에 대응한 단위로 분할을 행하고, 결함을 사용 전 검사에서 사용 불가로 함으로써 논리 섹터 번호를 할당하여 관리할 수 있다. 또한, 불휘발성 고체 메모리(22)에서는, 기억 영역을 균등하게 사용할 목적으로 행해지는 Wear Leveling을 위해서, 동일한 논리 섹터 번호로 기입을 행하여도 메모리 상의 어드레스는 변화되어 가지만, 간단하게 하기 위해서 이후의 설명에서는 언급하지 않기로 한다.
이에 의해, 사용 가능한 영역을 일원적으로 관리할 수 있다. 한편, 호스트 장치(2)는, 하이브리드 기억 장치(4)에 대하여, 논리 섹터 번호가 아니라, 논리 블록 어드레스(Logical Block Address : LBA)를 사용하여 액세스를 행한다.
파일을 관리하는 파일 시스템은 복수의 섹터(N개)를 1 클러스터로 하여 기입 및 판독의 최소 단위로 하고 있다. FAT(File Allocation Table)는 파일이 클러스터에 어떻게 저장되어 있는지를 기록하고 있는 테이블이며, FAT를 이용하여 관리를 행하는 파일 시스템이 FAT 파일 시스템으로 불리는 것이다. 이후, 클러스터 어드레스는 LBA를 단순히 N으로 나눈 것으로 하고, 설명에서는 N=16으로 한다(1 클러스터=8Kbyte).
도 2b에 FAT의 일례를 도시한다. 예를 들면 하이브리드 기억 장치(4)는, 디 렉토리 정보 A로부터 File1의 개시 클러스터 어드레스(12340h)를 취득하고, FAT 항목을 참조함으로써, File1의 다음 데이터가, 클러스터 어드레스 12341h에 기록되어 있는 것을 인식하고, 파일이 종료될 때까지 클러스터 어드레스(end of fail : EOF까지)를 취득하여 File1을 읽어낼 수 있다. 이 FAT 파일 시스템에서는 FAT에 의해 파일이 관리된다.
하이브리드 기억 장치(4)의 기억 영역은, 도 2a의 우측 도면에 도시한 바와 같이, 논리 섹터 공간 Q 상에서는, 유저 영역 UA, 시스템 영역 SA, 하이브리드 기억 장치용의 시스템 영역, 캐쉬 영역 CA의 4개의 영역으로 나누어져 있으며, 시스템 영역 SA 및 유저 영역 UA만이 호스트 장치(2)로부터 본 LBA 공간 P에 도 2a의 좌측 도면에 도시한 바와 같이 할당된다. 그리고, 호스트 장치(2)가 사용하는 영역이, LBA 공간에서 예를 들면 클러스터 어드레스 000000부터 9FFFFFh까지의 5Gbyte인 경우, 그 이후(F00000h 이후)의 어드레스는 호스트 장치(2)는 사용하지 않는다.
시스템 영역 SA에는, 마스터 부트 레코드 MBR과, 시스템의 부트 시(기동 시)에 필요한 프로그램인 IPL(Initial Program Loader)과, FAT가 저장된다. 마스터 부트 레코드 MBR은 호스트 장치(2)로부터 보아 LBA가 0인 섹터이며, 여기에는 부트스트랩 코드나 파티션 테이블이 기록되어 있다.
유저 영역 UA에는, 파일을 관리하기 위한 디렉토리 정보를 기록하는 디렉토리 영역과, 실제의 데이터가 기록되는 데이터 영역으로 이루어진다. 또한, FAT32 이전의 FAT 파일 시스템에서는, 루트 디렉토리는 시스템 영역 SA에 속한다. 디렉 토리 영역에는, 각 디렉토리(파일)에 관해서, 파일명, 확장자, 속성, 최신 갱신 시간, 개시 클러스터 어드레스, 및 파일 사이즈 등이 디렉토리 정보로서 저장되어 있다.
또한, 하이브리드 기억 장치용의 시스템 영역은, 하이브리드 기억 장치(4) 내의 CPU(20)가 부트 코드나 각종 테이블을 저장하기 위해서, 또는 2차 결함의 대체 처리용의 영역으로서 사용하는 것이다. 통상적으로 호스트 장치(2)가 사용하는 것은 아니다. 이 때문에 도 2a에서는 생략한다.
캐쉬 영역 CA는, 데이터를 일시적으로 저장할 목적으로 사용된다. 본 실시예에서는, 도 2a의 우측 도면에 도시한 바와 같이, 하이브리드 기억 장치(4)로부터 본 논리 섹터 공간에서, 논리 섹터 번호로 000000h부터 07FFFFh까지의 영역(256MByte)이 그것에 해당한다. 따라서, 호스트 장치(2)로부터 본 LBA 공간과는 달리, 논리 섹터 공간에서는, 마스터 부트 레코드 MBR의 논리 섹터 번호는 080000h로 된다. 이 디스크 캐쉬 영역 CA에 대해서도 클러스터 어드레스가 정의된다.
LBA 공간에서는, 이 캐쉬 영역 CA를, 호스트 장치가 사용하고 있지 않은 클러스터 어드레스 F0000h(슈퍼 클러스터 어드레스 F000h) 이후의 공간에 배치하고, 이 디스크 캐쉬 영역 CA에 대하여, 호스트 장치(2)가 직접 기입을 행하지 않도록 이루어져 있다.
또한, 최근, 하드디스크 장치(HDD)에서는 디스크를 복수(예를 들면 10 내지 20)의 존으로 나누고, 각 존 내에서 동일한 기입 주파수와 기록 재생용의 파라미터(파형 등가 필터의 계수 등)를 이용하는 존 비트 레코딩이 일반적으로 행해진다. 존 비트 레코딩이 행해지는 경우에는, 1개의 존 내에서만 기입(읽어 들임)을 행하면, 파라미터를 변경할 필요가 없어 효율이 향상되기 때문에, 디스크 캐쉬 영역의 사이즈는 존의 사이즈를 고려하여 결정하기로 한다.
여기서, 본 실시예에서의 하이브리드 기억 장치(4)로부터 본 논리 섹터 공간에 대하여 더욱 상세히 설명한다. 통상적으로, FAT 파일 시스템을 적용한 HDD에서는, 데이터 기입 시, 가능한 한, 데이터 전송 속도가 빠른 디스크의 외측의 영역에 데이터를 연속적으로 기입하려고 하지만, 외측의 영역을 다 사용하면 내측의 보다 속도가 느린 영역을 사용하지 않을 수 없게 된다. 또한 데이터의 기입과 소거가 반복하여 행해지면 연속한 빈 영역을 확보하는 것은 어려워져, 1개의 파일이 연속하지 않는 다수의 클러스터로 분할되어 기록되기 때문에 대폭 전송 속도가 저하된다(통상 프래그먼테이션이라고 불림).
이들 상태는, 예를 들면, 디지털 스틸 카메라에 의해 고화질 모드에서 연사를 행하여, 디스크에 대하여 고속 또한 대량의 데이터 기입이 단시간에 발생하는 경우에 문제로 된다.
이러한 문제를 회피하기 위해서, 데이터의 전송 속도가 가장 빠른 디스크의 외주측에 캐쉬 영역을 형성하고, 호스트 장치가 캐쉬 영역에 기입을 행할 때에는, HDD로부터 개시 클러스터 어드레스만을 수취하고, 이후의 FAT의 관리를 HDD측이 행하도록 하면, 민생용의 기기 등의 성능이 높지 않은 HDD 등에서도 효율적으로 외주측의 영역을 사용하는 것이 가능해져 전송 속도를 높일 수 있다.
또한, 디스크 상의 캐쉬 영역에서 발생하는 결함 섹터의 대체 처리에 의해서 도 전송 속도가 저하된다. 이에 대하여 디스크에, 캐쉬 영역에 인접하여 대체 영역을 형성하고, 캐쉬 영역에 데이터를 기입할 때에는 대체 처리를 행하지 않고, 이 캐쉬 영역에 기입된 데이터를 유저 영역으로 이동시킨 후, 슬리핑 리플레이스먼트법에 의해 결함 섹터의 대체 처리를 행함으로써, 대체 처리에 의한 액세스 성능의 저하를 저감할 수 있다.
그런데, 이들 방법에 의해 데이터의 전송 속도를 향상시킨 경우에도, HDD를 새롭게 기동했을 때, 또는 전력 절약화 모드로부터 통상 모드로 이행시켰을 때 등에는, 데이터 전송을 할 수 있도록 될 때까지는 몇 초 정도의 시간이 걸린다. 또한, HDD에는 씨크 동작에 필요한 시간이 10㎳ 단위로 걸리기 때문에, 즉시 기입이나 읽어 들임을 실행할 수는 없다. 따라서, 전송 속도의 한층 더한 향상을 도모하기 위하여, 본 실시예에서는, 이러한, 디스크(11)의 캐쉬 영역의 소정 영역(빈 영역)으로 헤드를 이동시켜 데이터가 기입 가능하게 되는 동안, 즉 데이터를 기입할 때까지의 씨크 동작 등에 필요한 준비 기간에는, 불휘발성 고체 메모리의 캐쉬 영역에 데이터를 기입함으로써, 상기 준비 기간에서도 데이터 전송을 효율적으로 행하는 것이다.
본 실시예에서의 하이브리드 기억 장치(4)는, 상술한 바와 같이, 디스크(11) 외에, 호스트 장치로부터의 데이터 전송 시에 캐쉬로서 사용되거나 하는 불휘발성 고체 메모리(22)를 갖는다. 불휘발성 고체 메모리(22)는, 랜덤 액세스라도, 시퀀셜 액세스라도 그 입출력 성능은 변화되지 않지만, 디스크(11)에서는 랜덤 액세스의 경우에 데이터의 읽어냄 및 기입 성능이 저하된다. 또한, 불휘발성 고체 메모 리(22)에의 시퀀셜 기입은 디스크에 대한 시퀀셜 기입보다 느리다. 따라서, 이들 특성을 고려하여, 논리 섹터 공간에서, 불휘발성 고체 메모리(22)의 어드레스를, 캐쉬 영역의 선두측, 시스템 영역의 선두측, 및 유저 영역의 최후미에 배치한다. 즉, 본 실시예에서의 논리 섹터 공간에서의 불휘발성 고체 메모리(22)의 어드레싱은 도 3과 같이 된다.
도 3에 도시한 바와 같이, 논리 섹터 공간 Q에서, 논리 섹터 번호 000000h부터 07FFFFh까지의 256MByte 구성되는 캐쉬 영역 CA 중, 000000h부터 007FFFh까지의 16MByte의 영역 CA1을 불휘발성 고체 메모리(22)에서, 007FFFh부터 07FFFFh까지의 240MByte의 영역 CA2를 디스크(11)에서 구성하는 것으로 한다. 또한, 시스템 영역 및 유저 영역은 합계 5GByte이지만, 시스템 영역의 선두 부분의 080000h부터 087FFFh의 16MByte 및 유저 영역에서의 예를 들면 최후미의 영역의 16MByte를 불휘발성 고체 메모리(22)에서 구성한다. 이와 같이, 디스크(11) 및 불휘발성 고체 메모리(22)에는, 연속한 논리 섹터 번호가 부여됨으로써, 디스크(11) 및 불휘발성 고체 메모리(22)에 기입되는 데이터, 또는 읽어내어지는 데이터의 관리를 예를 들면 1개의 디스크에 기록된 데이터와 마찬가지로 관리할 수 있다.
여기서, 디스크(11)에 형성하는 캐쉬 영역 CA2는, 고속 또한 대량의 데이터의 기입을, 하이브리드 기억 장치(4)가 갖는 최대의 전송 속도로 안정적으로 행하는 것을 가능하게 하기 위해, 디스크(11)의 최외주측에 형성하는 것이 바람직하다. 또한, 이 캐쉬 영역 CA2에서의 물리 섹터에 결함이 있는 경우, 그 대체 섹터를 준비 하는 대체 영역을 이것에 인접하여 형성하여도 된다.
이와 같이, 디스크(11)에서 고속 데이터 전송이 가능한 영역인 외주측의 영역을 캐쉬 영역 CA2로서 사용함으로써, 호스트 장치(2)로부터 본 전송 속도를 대폭 향상시킬 수 있다. 즉, 호스트 장치(2)로부터 전송되어 오는 데이터를 이 캐쉬 영역 CA1 및 캐쉬 영역 CA2에 기입하고, 빈 시간에, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1 및 디스크(11)의 캐쉬 영역 CA2로부터, 불휘발성 고체 메모리(22)의 유저 영역 UA1이나 디스크(11)의 캐쉬 영역 CA2보다 전송 속도가 느린 내주측의 기록 영역인 유저 영역 UA2로 데이터를 이동시켜, 디스크(11)에서 고속 데이터 전송이 가능한 캐쉬 영역 CA1 및 CA2를 개방하고, 다음 전송 데이터의 기입에 대비함으로써, 고속 또한 대량의 데이터 기입을 가능하게 한다.
즉, 호스트 장치로부터 대량의 데이터가 전송되어 온 경우 등에는, 상술한 바와 같이, 적어도 디스크(11)의 캐쉬 영역 CA2에 기입을 행할 준비가 갖추어질 때까지의 동안에는, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 데이터의 기입을 행한다. 또한, 후술하는 바와 같이, 캐쉬 영역 CA1 및 캐쉬 영역 CA2에 병렬로 데이터를 기입함으로써 기입 속도를 더욱 고속화할 수 있다. 또한, 호스트 장치(2)로부터의 전송 데이터가 그다지 대량이 아닌 경우, 그다지 고속의 기입이 필요하지 않는 경우 등에는, 디스크(11)의 캐쉬 영역 CA2만을 사용하도록 하여도 된다.
또한, 시스템 영역 SA1 및 시스템 영역 SA2에 기록되는 데이터 중, MBR, IPL, FAT 등 빈번하게 읽어낼 필요가 있는 데이터는, 데이터에의 고속 액세스가 가능한 불휘발성 고체 메모리(22)에 저장해 놓음으로써, 읽어냄 속도를 고속화할 수 있다.
마찬가지로, 유저 영역 UA1 및 유저 영역 UA2에 기입하는 데이터 중, 파일 또는 슈퍼 클러스터 중의 선두 클러스터 등, 선두 데이터만을 불휘발성 고체 메모리(22)에 형성한 유저 영역 UA1에 기억해 놓으면, 하이브리드 기억 장치(4)에서, 데이터를 파일 단위, 슈퍼 클러스터 단위로 읽어낼 때, 불휘발성 고체 메모리(22)로부터 선두 데이터를 읽어내고 있는 동안에, 헤드를 이동키거나, 디스크의 회전 대기를 하거나 할 수 있어, 읽어냄 속도를 향상시킬 수 있다.
다음으로, 도 1 내지 도 5를 참조하여, 캐쉬 영역 CA1 및 캐쉬 영역 CA2를 사용하여 데이터의 기입을 행하는 경우의 하이브리드 기억 장치(4)의 동작 방법에 대하여 구체적으로 설명한다. 통상적으로, 디스크(11)의 파일을 관리하는 어드레스 정보의 관리는, 호스트 장치(2)에서 행하여지지만(이하, PC 모드라고 함), 본 실시예에서는, 하이브리드 기억 장치(4)가 호스트 장치(2)의 허가를 얻었을 때에는 FAT 및 그 관리를 실행할 수 있는 동작 모드를 설치한다. 이하, 이 동작 모드를 AV 모드라고 한다. 하이브리드 기억 장치(4)는, AV 모드이면, 하이브리드 기억 장치(4) 자신이 FAT 및 그 관리를 행할 수 있다. 여기서, 하이브리드 기억 장치(4)에서의 AV 모드에서의 FAT 및 그 관리는, 시스템 영역 SA(본 실시예에서는, 불휘발 성 고체 메모리(22)) 상에 기록된 FAT 에리어의 데이터를 도 1에 도시하는 하이브리드 기억 장치(4) 내의 메모리(19)에 읽어 들이고, 이 메모리(19) 상에서 갱신하며, 필요에 따라서 시스템 영역 SA 상의 FAT를 갱신하는 등의 관리를 행하고, PC 모드로 이행할 때에, 메모리(19) 상에서 갱신된 FAT를 시스템 영역 SA의 FAT 영역에 재기입함으로써, 하이브리드 기억 장치(4)가 호스트 장치(2)와 FAT 및 그 관리를 배타적으로 공용하는 것이다.
즉, 파일을 관리하는 어드레스 정보를 관리하기 위해서는, 시스템 영역 SA 상의 FAT와 그 관리, 및 디렉토리 정보와 그 관리를 행할 필요가 있으며, 전자는, 호스트 장치(2)가 PC 모드와 AV 모드를 절환함으로써 각각 호스트 장치(2)와 하이브리드 기억 장치(4)가 배타적으로 공유한다. 또한, 후자에서는, 하이브리드 기억 장치(4)는 관리하지 않고, 호스트 장치(2)가 언제라도, 즉 PC 모드라도 AV 모드라도 시스템 영역 SA에 직접 액세스하여 관리할 수 있도록 하기 위하여 전용의 커맨드를 설정하는 것으로 한다.
본 실시예에서는, 캐쉬 영역 CA를 사용한 데이터의 기입은, 파일을 관리하는 어드레스 정보의 관리가 하이브리드 기억 장치(4)에서 행해지고 있는 AV 모드일 때에 실시된다. 상술한 바와 같이, 기록 재생 시스템(1)은, FAT의 정보는 호스트 장치(2) 및 하이브리드 기억 장치(4)에서 공유하지만, FAT 및 그 관리를 하이브리드 기억 장치(4)에 맡긴다. 따라서, 데이터의 기입을 행하기 위해서 우선 AV 모드로 이행한다. AV 모드로 이행하기 위해서는, 도 4에 도시한 바와 같이, 호스트 장치(2)가 하이브리드 기억 장치(4)의 시스템 영역 SA 상에 존재하는 FAT, 즉 도 2a 에 도시하는 FAT 영역 FA를 최신의 것으로 갱신한 후, 하이브리드 기억 장치(4)에 대하여 PC 모드로부터 AV 모드로 이행시키는 커맨드를 발행한다(스텝 S1). 하이브리드 기억 장치(4) 중의 CPU(20)는, 인터페이스 제어부(18)를 통하여 그 내용을 알고, 시스템 영역 SA 상의 FAT를 읽어내어 메모리(19) 상에 전개하며(스텝 S2), AV 모드를 나타내는 플래그를 세워, 호스트 장치(2)에 AV 모드로 이행하였음을 알린다(스텝 S3).
다음으로, AV 모드로 이행한 후, 호스트 장치(2)가 기입을 하는 경우에 대해 설명한다. 여기서는 디지털 카메라에 의해 화상이 연사된 경우 등에, 호스트 장치(2)로부터 그 콘텐츠 데이터의 기입을 요구하는 동작이 행해진 경우를 예로 들어 설명한다. 호스트 장치(2)는, 콘텐츠 데이터의 파일명(File1, File2)을 결정하고, 신규로 디렉토리 항목을 작성하며, 그 디렉토리 항목을 하이브리드 기억 장치(4)에 기입한다(스텝 S4). 또한, 이 때의 디렉토리 항목은 개시 클러스터 어드레스와 최신 갱신 시간을 알 수 없기 때문에 불완전한 것이다. 하이브리드 기억 장치(4)는 자신이 갖는 FAT로부터 비어 있는 클러스터를 검색하고, 빈 클러스터 중에서 적당한 클러스터를 선택하여, 기입을 행한다. 종료 후, 도 2a의 디렉토리 정보 A로 나타내는 개시 클러스터 어드레스를 호스트 장치(2)에 알린다.
다음으로 호스트 장치(2)는 콘텐츠 데이터의 기입에 필요한 파라미터의 설정을 행한다. 구체적으로는 파일의 개시 클러스터 어드레스 및 파일의 액세스 사이즈 등을 결정한다. 호스트 장치(2)는 클러스터 어드레스의 관리를 하이브리드 기억 장치(4)에 맡기고 있지만, 파일을 식별하기 위해서, 개시 클러스터 어드레스를 공유하는 것이 최저한 필요하다. 도 5의 (a) 및 도 5의 (b)는, 그것을 실행하는 커맨드의 일례(Set Write File Parameter)를 도시하는 도면으로서, 각각 커맨드 발행 시의 레지스터 내용 및 커맨드 종료 시의 레지스터 내용을 도시하는 도면이다. 커맨드는, AT의 벤더 유니크 커맨드로서 정의되고, 파일의 기입을 행하기 전에 한 번만 실행된다. 커맨드가 실행된 하이브리드 기억 장치(4)는, 그 기입을 개시하는 클러스터 어드레스를 호스트 장치(2)에 알린다.
캐쉬 영역 CA를 이용할 때에는, 파일 단위로 하이브리드 기억 장치(4)에 대하여 캐쉬 영역 CA를 사용해도 됨을 알린다. 그 때문에 도 5의 (a)에 도시하는 커맨드에서 CP(Cache Position) 비트에 1을 설정하여 커맨드를 실행한다(스텝 S6, S7). 이 때, 하이브리드 기억 장치(4)는, 메모리(19) 내의 FAT에서, 유저 영역 UA의 선두로부터 빈 클러스터를 검색하고, 발견된 것을 기록 개시 클러스터 어드레스로서 호스트 장치(2)에 알린다. 도 2a의 File1의 경우, 그 기록 개시 클러스터 어드레스는 12340h이다.
동시에, 캐쉬 영역 CA에서도 빈 클러스터를 검색한다. 하이브리드 기억 장치(4)는 선택한 빈 클러스터의 어드레스를 선두 클러스터 어드레스(슈퍼 클러스터 어드레스)로서, 호스트 장치(2)에 알린 유저 영역 UA 내의 기록 개시 클러스터 어드레스와 함께 기록한다.
도 3에서, File1의 기록 개시 어드레스는, LBA에서 F00000h, 논리 섹터 번호에서 000000h, 클러스터 어드레스(클러스터 번호)에서 F0000h, 슈퍼 클러스터 어드레스(슈퍼 클러스터 번호)에서 F000h이다. 또한 마찬가지로 File2의 기록 개시 어 드레스는, LBA에서 F00500h, 논리 섹터 번호에서 000500h, 클러스터 어드레스에서 F0050h, 슈퍼 클러스터 어드레스에서 F005h이다. 즉, File1, File2의 선두 클러스터는, 불휘발성 고체 메모리(22) 상의 디스크 캐쉬 영역 CA1로 되어 있다.
호스트 장치(2)로부터 보내어져 온 데이터는, 우선 도 1에 도시하는 버퍼 메모리(17)에 저장된다. 그 후, 상술한 바와 같이 하여 선택된 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1의 빈 클러스터에 액세스 사이즈 단위, 본 실시예에서는 슈퍼 클러스터 단위로의 기입을 개시한다. 이 때 동시에 디스크(11)의 캐쉬 영역 CA2의 기입 위치에 대하여 헤드의 이동을 시작한다. 이렇게 해서, 헤드가 기입 위치에 도달할 때까지의 동안, 불휘발성 고체 메모리(22)에의 기입을 계속한다.
헤드가 기입 위치에 도달하면, 디스크(11)의 캐쉬 영역 CA2에 기입을 개시한다. 하이브리드 기억 장치 제어부(16)는 버퍼 메모리(17) 상의 데이터를 포맷한 후에 리드 라이트 채널부(15)에 보내고, 디스크(11)에 본 실시예에서의 액세스 사이즈인 슈퍼 클러스터 단위로 데이터를 연속하여 기입한다.
그리고, 기입한 슈퍼 클러스터가 파일의 최종 클러스터(EOF : end of file)인지의 여부를 판정하고(스텝 S8), 최종 클러스터까지 데이터의 기입을 계속한다. 즉, 최종 클러스터가 아닌 경우에는, 액세스 단위, 즉, 1 클러스터의 기입이 완료될 때마다, LBA 공간 상에 맵된 캐쉬 영역 CA의 클러스터 어드레스를 이용하여 메모리(19) 내의 FAT의 갱신을 행하고(스텝 S9), 스텝 S8로 되돌아간다. 이 때, 하이브리드 기억 장치(4)의 CPU(20) 또는 하이브리드 기억 장치 제어부(16)에 충분한 능력이 있으면 압축을 행하여 디스크(11)의 캐쉬 영역 CA2에의 기입량을 줄여 호스트 장치(2)로부터 본 전송 속도의 향상을 도모해도 된다. 한편, 파일의 디스크(11)의 캐쉬 영역 CA2에의 기입이 모두 종료되면, 호스트 장치(2)는, 최신 갱신 시간과 개시 클러스터 어드레스에 대하여 시스템 영역 SA 상의 디렉토리 항목을 갱신한다. 그 후, 하이브리드 기억 장치(4)에 대하여 메모리(19) 상에 있는 FAT를 디스크(11) 상에 기입하기 시작할 것을 명령하고(스텝 S10), 디스크 캐쉬 영역 CA에의 기입을 종료한다.
도 6은, 이렇게 해서 기입이 행해진 후의 디스크 캐쉬 영역 CA의 일례를 도시하는 모식도이다. 이 도 6은, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 1 슈퍼 클러스터의 기입을 행하는 시간에서, 헤드가 디스크(11)의 캐쉬 영역 CA2의 예정 위치에 도달할 수 있었던 경우를 도시하고 있다. 즉, File1의 제1 슈퍼 클러스터를 불휘발성 메모리(22)의 캐쉬 영역 CA1의 슈퍼 클러스터 어드레스(슈퍼 클러스터 번호) F000h에 기입하는 동안에 헤드의 디스크(11)의 캐쉬 영역 CA2의 기입 위치로의 이동이 완료되고, File1의 제2∼제4 슈퍼 클러스터를 캐쉬 영역 CA2의 슈퍼 클러스터 어드레스 F090h, …, F092h에 기입하고, Faile2의 제1 슈퍼 클러스터를 캐쉬 영역 CA1에 기입하는 동안에, 헤드의 이동이 완료되고, 캐쉬 영역 CA2의 슈퍼 클러스터 어드레스 F093h, …, F097h에 File2의 제2∼제6 슈퍼 클러스터를 기입한 예를 도시하고 있다. 또한, 복수개의 슈퍼 클러스터를 불휘발성 고체 메모리(22)에 기 입하는 경우, 불휘발성 고체 메모리(22)는 랜덤 액세스해도 그 기입 속도는 변화되지 않으므로, 복수개의 슈퍼 클러스터를 연속하여 기입할 필요성은 없다.
또한, 이 시점에서 유저 영역 내의 기록 개시 클러스터 어드레스에의 기입은 되어 있지 않지만, FAT 상에서는 사용 완료의 플래그를 세워 놓는다.
그리고, 이후, AV 모드로부터 PC 모드로의 변경 요구가 이루어져 있는지, 및 소정 시간 이상 경과하고 있는지가 판단되고(스텝 S11, S12), 호스트 장치(2)로부터 FLUSH 동작 혹은 모드 변경을 명받았을 경우, 또는 기입 혹은 읽어냄이 미리 설정된 시간 이상 없었을 경우, 캐쉬 영역 CA의 데이터를 통상의 영역, 즉 도 2에 도시하는 유저 영역 UA에서의 예를 들면 영역 C에 카피를 행한다(스텝 S13). 이미 개시 클러스터 어드레스를 호스트 장치(2)에 알리고 있으므로, 호스트 장치(2)에 알린 개시 클러스터 어드레스부터 기록을 시작한다. 이후, 메모리(19) 내의 FAT를 참조하여, 유저 영역 UA의 선두부터 빈 클러스터를 순차적으로 검색하여 발견되는 대로, 그 빈 클러스터에 데이터를 기입해 간다. 도 2의 경우에서는, 클러스터 어드레스 12340h가 기록 개시 어드레스이고, 이후 어드레스 12341h부터 1237Fh의 클러스터에 File1을 기록한 예를 도시한다. 또한, 압축이 행해져 있는 경우에는, 신장 처리하여, 원래 상태로 복귀시켜 기입을 행한다.
카피가 종료되면 그 시점에서 시스템 영역 SA에서의 FAT 영역 FA의 FAT의 최종적인 갱신을 행한다(스텝 S14). 그리고, 필요하면, AV 모드로부터 PC 모드로의 모드 변경을 행한다(스텝 S15). 또한, 카피 도중에 AV 모드로부터 PC 모드로 이행하도록 호스트가 명령한 경우에는, 처리가 종료되지 않았음을 호스트 장치(2)에 알 려 동작 모드의 절환을 중지시킨다.
이와 같이, 본 실시예에서는, 호스트 장치가 기입을 행할 때에는, 하이브리드 기억 장치(4)로부터 개시 클러스터 어드레스만을 수취하고, 이후의 FAT의 관리를 하이브리드 기억 장치(4)측이 행함으로써, 효율적으로 외주측의 영역(캐쉬 영역 CA2)을 사용하는 것이 가능하게 됨과 함께, 캐쉬 영역 CA2에의 기록 준비 동안, 불휘발성 고체 메모리(22)를 캐쉬로서 사용함으로써, 대용량의 파일을 매우 효율적으로 연속하여 기입할 수 있어, 호스트 장치(2)에 큰 버퍼를 설치하지 않고, 예를 들면 디지털 카메라의 연사 후의 대기 시간을 단축하는 전송 속도를 향상시킬 수 있다.
다음으로, 버퍼 메모리(17)에의 전송 속도가 충분히 빨라, 불휘발성 고체 메모리(22) 및 디스크(11)에 대하여 동시에 기입이 가능하고, 또한 불휘발성 고체 메모리(22)에의 기입이 비교적 빠른 경우에 적용 가능한 데이터의 전송법을, 도 6 내지 도 8을 참조하여 설명한다.
도 7 및 도 8은, 각각 캐쉬 영역 CA에 기입한 10 슈퍼 클러스터로 이루어지는 File1의 배치 상황 및 그 때의 기입 타이밍을 도시하는 도면이다. 우선, 제1 슈퍼 클러스터를 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 기입하는 동안에 헤드를 디스크(11)의 캐쉬 영역 CA2로 이동시켜, 제2 슈퍼 클러스터를 디스크(11)의 캐쉬 영역 CA2에 기입한다. 불휘발성 고체 메모리(22)에의 기입에 요하는 시간(Program 시간)은 변동이 있으며, 기입 속도가 가장 느린 경우, 즉 최악값을 취 하는 경우(이하, 최대 지연 시간이라고도 함)에는 불휘발성 고체 메모리(22)의 기입 속도는, 디스크(11)의 기입 속도보다 느려진다. 도 8에 도시하는 예에서는, 간단하게 하기 위해서, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에의 기입 속도와, 디스크(11)의 캐쉬 영역 CA2에의 기입 속도의 비율을 1 : 3으로 한 경우를 나타낸다. 또한, 실제로는, 불휘발성 고체 메모리(22)의 기입 속도는, 기입하는 데이터의 사이즈, 디바이스(고체)의 차이, 기입 장소의 차이, 동작 온도, 기입 횟수 등에 따라 변동이 있으며, 디스크(11)의 기입 속도에도, 내주측인지 외주측인지 등의 기록 위치의 차이, 디바이스(고체)의 차이, 빈 영역의 연속성 등에 따라 변동이 있다.
또한, 도 7에서는, 불휘발성 고체 메모리(22)에의 기입이 종료된 시점, 즉, 제1 슈퍼 클러스터의 기입이 종료된 시점에서, 디스크(11)에의 헤드의 이동이 종료하고, 제2 슈퍼 클러스터의 기입을 행하고 있는 경우를 도시한다. 이 경우, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에의 제1 슈퍼 클러스터의 기입이 종료되면, 그 시점에서 디스크(11)의 캐쉬 영역 CA2에 기입을 행하고 있는 슈퍼 클러스터(제2 슈퍼 클러스터)의 다음 슈퍼 클러스터인 제3 슈퍼 클러스터를 선택하고, 캐쉬 영역 CA1에 이 제3 슈퍼 클러스터의 기입을 행한다.
즉, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에의 제1 슈퍼 클러스터 SC1의 기입이 종료된 도 8에 도시하는 시각 T1에서, 디스크(11)의 캐쉬 영역 CA2에는 제2 슈퍼 클러스터 SC2의 기입을 행하고 있으므로, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에는, 제3 슈퍼 클러스터 SC3의 기입을 개시하고, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 제3 슈퍼 클러스터를 기입하고 있는 동안, 디스크(11)의 캐쉬 영역 CA2에는, 제4 슈퍼 클러스터 SC4∼제6 슈퍼 클러스터 SC5의 기입을 행한다.
그리고, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에의 제3 슈퍼 클러스터 SC3의 기입이 종료된 시각 T2에서, 마찬가지로, 디스크(11)의 캐쉬 영역 CA2에 기입을 행하고 있는 제6 슈퍼 클러스터 SC6의 다음 제7 슈퍼 클러스터 SC7을 선택하여, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 이 제7 슈퍼 클러스터 SC7의 기입을 행하며, 그 동안에, 디스크(11)의 캐쉬 영역 CA2에는 제8 슈퍼 클러스터∼제10 슈퍼 클러스터를 기입하고, 처리를 완료한다.
이와 같이, 병렬 기입이 가능한 경우, 디스크(11)의 캐쉬 영역 CA2에의 기입 준비가 갖추어질 때까지의 동안, 즉, 호스트 장치(2)로부터 데이터가 전송되고 나서 디스크(11)에 액세스할 때까지의 동안은, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 기입을 행하지만, 이후는 병렬하여 데이터를 기입함으로써, 헤드의 씨크 시간, 회전 대기 시간 등의 시간을 효율적으로 활용할 수 있음과 함께, 헤드가 소정의 기입 위치에 도달하고 나서는, 디스크(11)에 데이터를 기입하는 속도에 불휘 발성 고체 메모리(22)에 데이터를 기입하는 속도가 가산된 것으로 되어, 기입 속도가 향상된다.
도 9는, FLUSH 동작의 타이밍을 도시하는 도면이다. 상술한 바와 같이, 호스트 장치(2)로부터 FLUSH 동작 혹은 모드 변경을 명령받았을 경우, 또는 기입 혹은 읽어냄이 미리 설정된 시간 이상 없었던 경우(IDLE 시)에, 캐쉬 영역 CA에 기입된 데이터를 유저 영역 UA로 이동시키는 처리를 행한다.
이 FLUSH 동작을 행하는 경우에는, 도 9에 도시한 바와 같이, 불휘발성 고체 메모리(22)와 디스크(11)의 캐쉬 영역 CA1, CA2로부터 동시에 데이터의 읽어 들임을 행하여, 유저 영역 UA에 대하여 카피를 행한다. 그 동안에, 불휘발성 고체 메모리(22)의 소거 동작을 행한다. 즉, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 기입된 제1, 3, 7 슈퍼 클러스터 SC1, 3, 7을 읽어내는 동안에, 디스크(11)의 캐쉬 영역 CA2로부터 데이터를 읽어내기 위하여 헤드를 이동시킨다. 그리고, 헤드의 이동이 종료된 시점에서 디스크(11)의 캐쉬 영역 CA2에 기입된 제2, 4∼6, 8∼10 슈퍼 클러스터 SC2, 4∼6, 8∼10을 읽어내고, 유저 영역 UA의 소정의 빈 클러스터 위치로 헤드를 이동시키는 동안에 불휘발성 고체 메모리(22)의 디스크 캐쉬 영역 CA1의 데이터를 소거하고, 디스크(11)의 유저 영역에 10 슈퍼 클러스터를 순차적으로 기입한다.
여기서, 유저 영역 UA에 데이터를 옮겨 쓸 때, 예를 들면, File1의 선두 슈 퍼 클러스터 SC1은, 도 4에 도시하는 불휘발성 고체 메모리(22) 상의 유저 영역 UA1에 기입하고, 이후의 슈퍼 클러스터 SC2∼SC10은 디스크(11) 상의 유저 영역 UA2에 기입하도록 함으로써, 이 File1의 데이터를 읽어낼 때, 선두 슈퍼 클러스터 SC1을 불휘발성 고체 메모리(22)의 유저 영역 UA1로부터 읽어내고 있는 동안에, 헤드를 디스크(11)의 유저 영역 UA2에서의 제2 슈퍼 클러스터 SC2의 위치로 이동시킬 수 있어, 데이터 읽어냄 처리에서도, 그 읽어냄 속도를 고속화할 수 있다.
다음으로, 불휘발성 고체 메모리(22)에의 기입 속도가 비교적 느린 경우에 적용 가능한 데이터 전송법에 대하여 설명한다. 이 경우, 1개의 슈퍼 클러스터를 불휘발성 고체 메모리(22) 및 디스크(11)의 캐쉬 영역 CA1, CA2로 분할하여 기록할 수 있다. 도 10의 (a) 및 도 10의 (b)는, 그 경우의 1 슈퍼 클러스터에서의 불휘발성 고체 메모리(22) 및 디스크(11)의 기록 영역에서의 사용 비율을 도시하는 모식도 및 논리 섹터 공간을 도시하는 도면이다.
도 10의 (a)에 도시한 바와 같이, 슈퍼 클러스터의 선두 부분, 여기에서는, 슈퍼 클러스터의 1/4의 데이터인 32KB를 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 기입하고, 남은 부분의 3/4의 데이터인 96KB룰 디스크(11)의 캐쉬 영역 CA2에 기록을 하고 있는 예를 도시한다. 그 때문에 도 4와 달리, 도 10의 (b)에 도시한 바와 같이, 논리 섹터 번호 공간 Q에서는, 불휘발성 고체 메모리(22)는 따로따로 분할되어 배치되게 된다. 슈퍼 클러스터의 데이터의 어느 정도를 불휘발성 고체 메 모리(22)에 할당할지는, 표준적인 전송 속도와 하이브리드 기억 장치(4)의 전송 속도에 따라서 결정하면 된다.
이 경우에도, 상술한 바와 같이 FLUSH 동작을 행하는 경우에는, 불휘발성 고체 메모리(22) 및 디스크(11)의 캐쉬 영역 CA에 동시에 액세스를 개시하고, 유저 영역 UA로 데이터를 이동시키는 동안에 불휘발성 고체 메모리(22)의 데이터 소거를 행할 수 있다. 또한, 유저 영역 UA에 데이터를 기입할 때에도, 슈퍼 클러스터 중 선두에 배치되는 몇 개의 클러스터는 불휘발성 고체 메모리(22) 상의 유저 영역 UA1로 옮기고, 그 이후의 데이터는 디스크(11) 상의 유저 영역 UA2로 이동시켜 놓음으로써, 데이터의 읽어냄 속도가 고속화된다.
본 실시예에서는, 호스트 장치(2)로부터 전송되는 데이터를 캐쉬 영역 CA에 일시적으로 데이터를 기입할 때, 씨크 동작, 디스크(11)의 회전 대기 등, 디스크(11)에 데이터를 기입할 준비가 갖추어지는 동안, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 선두 슈퍼 클러스터 또는 각 슈퍼 클러스터의 선두 부분의 데이터를 기입함으로써, 씨크 동작 등에 수반하는 오버헤드를 경감할 수 있다. 또한, 디스크(11)의 씨크 동작이 종료된 후에는, 불휘발성 고체 메모리(22) 및 디스크(11)의 각 캐쉬 영역 CA1, CA2에 병렬적으로 데이터를 기입(병렬 동작)하도록 하면, 기입 시에서의 데이터의 전송 속도를 더욱 향상시킬 수 있다.
또한, 예를 들면 NAND 플래시 메모리 등의 불휘발성 고체 메모리에서는 기입을 행하기 전에 소거 동작을 필요로 하지만, 캐쉬 영역 CA로부터 유저 영역 UA로 데이터를 이동시킬 때에, 불휘발성 고체 메모리(22)에서의 캐쉬 영역 CA1의 데이터 소거를 실행하기 때문에, 불휘발성 고체 메모리(22)의 캐쉬 영역 CA1에 기입을 행하기 전에 소거 동작을 할 필요가 없다.
또한, 캐쉬 영역 CA로부터 유저 영역 UA로 데이터를 이동시킬 때에, 파일의 선두 슈퍼 클러스터나, 슈퍼 클러스터의 선두 부분의 데이터 등을 불휘발성 고체 메모리(22)로, 남은 데이터를 디스크(11)로 이동시킴으로써, 읽어냄 처리에서도, 씨크 동작, 디스크(11)의 회전 대기 등, 디스크(11)로부터 데이터를 읽어낼 준비가 갖추어지는 동안에도 효율적으로 사용할 수 있다. 또한, 유저 영역 UA에 데이터를 기입할 때에도, 불휘발성 고체 메모리(22) 및 디스크(11)의 각 유저 영역 UA1, UA2에 병렬적으로 데이터를 기입하도록 하면 데이터의 유저 영역으로의 이동도 고속화할 수 있다.
다음으로, 본 실시예의 효과에 대하여 더욱 상세히 설명한다. NAND 플래시 메모리는, 페이지 단위로 기입(Program), 읽어냄이 행하여지고, 블록 단위로 소거가 이루어진다. 원래 블록의 사이즈는 16KByte, 페이지의 사이즈는 528byte(데이터 영역 512byte+오류 정정 부호 16byte, 실데이터 사이즈 0.5KByte)이었지만, 최근 메모리의 대용량화가 진행되어, 새롭게 128KByte의 블럭 사이즈, 2112byte((데이터 영역 512byte+오류 정정 부호 16byte)×4, 실데이터 사이즈 2KByte)의 페이지 사이즈가 1Gbit 이상의 용량을 갖는 일부의 메모리에서 사용되게 되었다. 이 때문에, 새로운 쪽을 Large Block, Large Page, 오래된 것을 Small Block, Small Page 라고 부른다. 또한, Large Block과 Small Page와 같이 새로운 것과 오래된 것을 섞어 사용할 수는 없다.
도 11a 및 도 11b는, 불휘발성 고체 메모리에 NAND 플래시 메모리를 사용했을 경우의 동작 시간을 정리한 도면이며, 도 11a에 도시하는 2개의 서로 다른 블록, page size를 이용한 경우의 파라미터를 사용하여 데이터 전송 속도를 계산한 것을 도 11b에 도시한다. 도 11b로부터 액세스 단위가 큰 Large Block쪽이 동작 속도가 향상되어 있는 것을 알 수 있다.
즉, Large Block 및 Small Block의 소거 시간의 평균 시간은, 각각 2000㎲, 2000㎲이고, 또한, 조건이 가장 나쁠 때의 소거 시간(최대 지연 시간)은, 각각 4000㎲, 10000㎲다. 그리고, Large Block의 액세스 시간, 즉 1페이지분의 Program 시간 및 메모리 셀과 레지스터 사이에서 1페이지분의 데이터를 전송하는 시간의 합은, 평균 시간이 각각 305.9㎲, 130.9㎲이며, 또한, 최대 지연 시간이 각각 805.9㎲, 130.9㎲이다. 또한, Small Block의 1페이지분의 Program 시간 및 메모리 셀과 레지스터 사이에서 1페이지분의 데이터를 전송하는 시간의 합은, 평균 시간이 각각 226.7㎲, 51.7㎲이며, 최대 지연 시간은 각각 1026.7㎲, 51.7㎲로 되어 있다.
이러한 NAND 플래시 메모리를 사용한 경우의 동작 시간은, 도 11b에 도시한 바와 같이, 16KByte의 기입(Small Page의 경우)에 7.26㎳(소수 제3 자리 잘라 올림) 걸린다. 한편, 하드디스크의 경우에는, 트랙당의 섹터수를 200, 회전수를 3600rpm으로 하면 16KByte의 기입에 2.67㎳ 걸린다(소수 제3 자리 잘라 올림).
도 9의 경우에는, 1 슈퍼 클러스터 128KByte를 NAND 플래시 메모리에 기입하 는 데에, 평균 58.1㎳(Small Page의 경우) 걸리기 때문에, 이 시간을 사용하여 하드디스크에 대하여 3 슈퍼 클러스터(64㎳)를 기입할 수 있다.
또한, 데이터의 전송 속도가 가장 느릴 때에는, NAND 플래시 메모리에의 기입 속도는 1 슈퍼 클러스터 128KByte를 기입하는 데에 263㎳(Small Page의 경우) 걸리기 때문에, 하드디스크에 대하여 13 슈퍼 클러스터(278㎳) 기입할 수 있다. NAND 플래시 메모리에 기입이 종료된 시점에서, 하드디스크에 기입하고 있는 슈퍼 클러스터를 인식하여, 다음 슈퍼 클러스터를 NAND 플래시 메모리에 기입하면, 전체적인 전송 속도는 하드디스크 드라이브의 전송 속도와 NAND 플래시 메모리에의 전송 속도의 합과 거의 동일해진다.
도 10에 도시한 바와 같이, 1 슈퍼 클러스터 중, 32KByte를 NAND 플래시 메모리에, 96KByte를 하드디스크에 Small Page를 이용하여 기입하는 경우의 평균 시간은,
2×7.26㎳=14.52㎳<16㎳=6×2.67㎳
로 되어, 거의 완전한 병렬 기입이 실현된다.
또한, 슈퍼 클러스터 단위로의 데이터에의 액세스가 행해지는 경우에는, 불휘발성 고체 메모리(22)에 슈퍼 클러스터의 선두를 기입해 놓음으로써, 선두 슈퍼 클러스터에 대해서는 거의 지연 없이 데이터를 출력할 수 있다. 그 동안, 하이브리드 기억 장치(4)는, 디스크(11)에의 씨크 동작을 행하고, 남은 데이터(슈퍼 클러스터)가 존재하는 위치로 헤드를 이동시켜, 데이터를 읽어내어 데이터를 호스트 장치(2)에 전송하면, 종래, 낭비되었던 씨크 동작 동안을 효율적으로 활용할 수 있 어, 데이터 읽어냄 속도도 고속화할 수 있다.
또한, 불휘발성 고체 메모리(22)에의 기입 속도가 느린 경우에는, 불휘발성 고체 메모리(22)에 기입하는 데이터의 할당(차지하는 비율)을 줄이도록 제어한다. 예를 들면, 슈퍼 클러스터를 128KByte로부터 256KByte로 늘리고, 불휘발성 고체 메모리에의 할당을 16KByte로 하는 것으로 하여 32KByte의 할당을 16KByte로 줄인 경우,
32.9㎳<40㎳=15×2.67㎳
로 되어, 데이터 전송 속도는 약간 떨어지지만, 마찬가지로 효율적인 병렬 기입을 실현할 수 있다.
또한, 상술한 바와 같이, 호스트 장치(2)는, 하이브리드 기억 장치(4)에 대하여, 논리 섹터 번호(LSN)가 아니라, 논리 블록 어드레스(LBA)를 사용하여 액세스를 행한다. 본 발명에서는, 도 12에 도시하는 개념도와 같이, 디스크(11)의 일부의 영역과, 불휘발성 고체 메모리(22)의 일부의 영역에 LBA가 중복하여 부여되어 있는 영역 X가 형성되어 있어도 된다. 또한, 도 12에서는, 디스크 캐쉬 영역 CA와, 시스템 영역 SA와, 유저 영역 UA 모두에 영역 X가 형성되어 있는 예를 도시하고 있지만, 영역 X는, 어느 하나 또는 두 개의 영역에 형성되어 있어도 된다.
하이브리드 기억 장치 제어부(16)는, 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드(도 13)에 기초하여, 영역 X에 호스트로부터 전송된 데이터를 기록하도록 처리를 행한다. 또한, 하이브리드 기억 장치 제어부(16)는, 해당 커맨드(Set Write File Parameter)의 「MP」의 상태에 따라서, 영역 X에 데이터를 기입 할지, 그 이외의 영역에 기입할지를 판단한다. 예를 들면, 디스크(11)의 영역 X의 「MP」는, 「0」이고, 불휘발성 고체 메모리(22)의 영역 X의 「MP」는, 「1」이다.
이렇게 해서 본 발명에 따른 하이브리드 기억 장치(4)는, 예를 들면, 시스템 영역 SA에 영역 X가 형성되어 있는 경우, FAT 등이 디스크(11)와, 불휘발성 고체 메모리(22)의 쌍방에 기록되고, 또한, 유저 영역 UA에 영역 X가 형성되어 있는 경우, 중요한 데이터가 디스크(11)와, 불휘발성 고체 메모리(22)의 쌍방에 기록되게 되어, 강고한 시스템의 구축이 가능해진다.
본 발명에 따른 기록 재생 장치 및 방법에 따르면, 기록 매체의 일부의 영역과, 불휘발성 고체 메모리의 일부의 영역에 논리 블록 어드레스가 중복하여 부여되어 있으므로, 기록 매체나 불휘발성 고체 메모리에 기입한 데이터를 관리하기 위한 관리 정보나, 중요한 데이터에 대하여, 강고한 보호를 실시할 수 있다.
또한, 본 발명에 따른 기록 재생 장치 및 방법에 따르면, 기록 매체 및 불휘발성 고체 메모리를 구비한 하이브리드 기억 장치로 하고, 기록 매체 및 불휘발성 고체 메모리에는, 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 각각 제1 영역 및 제2 영역으로 이루어지는 제1 기입 영역을 형성한다. 그리고, 호스트 장치로부터 전송된 데이터를 제1 기입 영역에 일시적으로 기입하고, 소정의 타이밍에서 상기 기록 매체의 제1 영역보다 데이터의 전송 속도가 느린 제3 영역을 포함하는 제2 기입 영역으로 이동시켜 상기 제1 기입 영역을 개방하도록 제어함으로써, 고속 액세스가 가능한 불휘발성 고체 메모리와, 기입 속도가 빠른 기록 매체를 조 합하여 사용할 수 있어, 데이터의 기입 속도, 읽어냄 속도를 고속화할 수 있다. 예를 들면, 기록 매체로서 디스크를 구비하는 경우, 기입 시에는, 전송된 데이터의 선두 부분을 불휘발성 고체 메모리에 기입하면, 디스크의 씨크 시간이나 회전 대기 시간 등을 효율적으로 이용할 수 있다.
또한, 호스트 장치에 버퍼를 설치하는 등의 부담을 주지 않아, 데이터 기입 속도를 고속화함으로써, 데이터의 읽어냄보다 기입 비율이 현저하게 높은 예를 들면 디지털 카메라 등의 민생용 기기에 적합한 기록 재생 시스템을 제공할 수 있다.
Claims (15)
- 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제1 영역을 갖는 기록 매체와,호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제2 영역을 갖는 불휘발성 고체 메모리와,호스트 장치로부터 전송된 데이터를 상기 기록 매체 및 불휘발성 고체 메모리가 갖는 기록 영역에 기입하도록 제어하는 제어 수단을 갖고,상기 기록 영역은, 상기 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 상기 제1 영역 및 제2 영역으로 이루어지는 제1 기입 영역과, 상기 기록 매체에서 그 제1 영역보다 데이터의 전송 속도가 느린 제3 영역을 포함하는 제2 기입 영역과, 상기 기록 매체의 일부의 영역과 상기 불휘발성 고체 메모리의 일부의 영역에 논리 블록 어드레스가 중복하여 부여되어 있는 제3 기입 영역을 갖고,상기 제어 수단은, 상기 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드에 기초하여, 상기 제1 기입 영역, 상기 제2 기입 영역 또는 상기 제3 기입 영역에 상기 호스트 기기로부터 전송된 데이터를 기입하도록 제어하는 것을 특징으로 하는 데이터 기록 장치.
- 제1항에 있어서,상기 제어 수단은, 상기 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드에 기초하여, 상기 제1 기입 영역 및 상기 제2 기입 영역에 기입되는 데이터를 관리하는 관리 정보를 상기 제3 기입 영역에 기록하도록 제어하는 것을 특징으로 하는 데이터 기록 장치.
- 제1항에 있어서,상기 제어 수단은, 상기 호스트 장치로부터 전송된 데이터를 상기 제1 기입 영역에 기입하고, 소정의 타이밍에서 그 제1 기입 영역에 기입된 데이터를 상기 제3 영역을 포함하는 제2 기입 영역으로 이동시켜 상기 제1 기입 영역을 개방하도록 제어하는 것을 특징으로 하는 데이터 기억 장치.
- 제1항에 있어서,상기 제어 수단은, 상기 호스트 장치로부터 전송되는 데이터 중, 선두 부분의 데이터는 상기 제2 영역에 기입하고, 상기 선두 부분 이외의 데이터는 적어도 상기 제1 영역에 기입하도록 제어하는 것을 특징으로 하는 데이터 기억 장치.
- 제4항에 있어서,상기 제어 수단은, 상기 호스트 장치로부터 전송되는 데이터 중, 상기 선두 부분 이외의 데이터는, 상기 제1 영역 및 제2 영역에 병렬적으로 기입하도록 제어하는 것을 특징으로 하는 데이터 기억 장치.
- 제5항에 있어서,상기 기록 매체는, 회전 기록 매체이고,상기 제어 수단은, 상기 기록 매체의 씨크 동작에 필요한 동안은, 상기 호스트 장치로부터 전송되는 데이터를 상기 제2 영역에 기입하도록 제어하는 것을 특징으로 하는 데이터 기억 장치.
- 제1항에 있어서,상기 제2 기입 영역은, 상기 불휘발성 고체 메모리의 상기 제2 영역 이외의 제4 영역을 포함하고,상기 제어 수단은, 상기 호스트 장치로부터의 액세스 요구가 미리 정해진 일정 시간 이상 발생하지 않은 경우에, 상기 제1 기입 영역에 기입된 데이터를 상기 제2 기입 영역으로 이동시키는 것을 특징으로 하는 데이터 기억 장치.
- 제7항에 있어서,상기 제어 수단은, 상기 데이터를 이동시킬 때, 상기 제2 영역에 기입된 데이터를 소거하는 것을 특징으로 하는 데이터 기억 장치.
- 제7항에 있어서,상기 제어 수단은, 상기 데이터를 이동시킬 때, 선두 부분의 데이터는 상기 제4 영역에 기입하고, 상기 선두 부분 이외의 데이터는 적어도 상기 제3 영역에 기 입하도록 제어하는 것을 특징으로 하는 데이터 기억 장치.
- 제9항에 있어서,상기 제어 수단은, 상기 데이터를 이동시킬 때, 상기 선두 부분 이외의 데이터는 상기 제3 영역 및 제4 영역에 병렬적으로 기입하도록 제어하는 것을 특징으로 하는 데이터 기억 장치.
- 제7항에 있어서,상기 호스트 장치로부터 전송되는 데이터를 파일로 관리하기 위한 테이블을 기억하는 메모리를 갖고,상기 테이블은, 상기 제2 기입 영역의 소정의 영역에 기록된 것이고,상기 제어 수단은, 상기 호스트 장치로부터의 소정의 모드 절환 명령에 따라서, 상기 메모리에 상기 소정의 영역에 기록된 테이블을 읽어 들이고, 읽어 들인 테이블을 참조하여, 상기 기록 매체 및 불휘발성 고체 메모리의 빈 영역을 검색하는 것을 특징으로 하는 데이터 기억 장치.
- 제11항에 있어서,상기 파일은, 복수의 슈퍼 클러스터로 이루어지고, 그 슈퍼 클러스터는, 상기 호스트 장치의 액세스 단위인 클러스터의 정수배의 크기이며,상기 제어 수단은, 상기 기록 매체 및 불휘발성 고체 메모리의 기입 속도에 따라서, 상기 호스트 장치로부터의 데이터를, 상기 슈퍼 클러스터 단위로 그 기록 매체 및 불휘발성 고체 메모리에 기입하도록 제어할지, 상기 클러스터 단위로 그 기록 매체 및 불휘발성 고체 메모리에 기입하도록 제어할지를 절환하는 절환 기능을 갖는 것을 특징으로 하는 데이터 기억 장치.
- 제1항에 있어서,상기 제어 수단은, 데이터를 압축하여 상기 제1 영역에 기입하고, 상기 제3 영역으로 데이터를 이동시키기 전에 압축 데이터를 복원하는 것을 특징으로 하는 데이터 기억 장치.
- 호스트 장치로부터 데이터가 전송되고,상기 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드에 기초하여, 상기 데이터를 기록 매체의 기록 영역 중 미리 정해진 제1 영역 및 불휘발성 고체 메모리의 기록 영역 중 미리 정해진 제2 영역으로 이루어지는 제1 기입 영역,상기 기록 매체의 기록 영역 중 상기 제1 기록 영역보다 데이터의 전송 속도가 느린 제3 영역을 포함하는 제2 기입 영역,또는 상기 기록 매체의 기록 영역 중 미리 정해진 일부의 영역 및 상기 불휘발성 고체 메모리의 기록 영역 중 미리 정해진 일부의 영역에 논리 블록 어드레스가 중복하여 부여되어 있는 제3 기입 영역에 상기 호스트 기기로부터 전송된 데이터를 기입하는 것을 특징으로 하는 데이터 기록 방법.
- 호스트 장치와, 해당 호스트 장치의 제어에 따라서 기록 매체에 액세스하여 데이터의 기입 및/또는 데이터의 읽어냄을 하는 데이터 기억 장치를 갖는 기록 재생 시스템에 있어서,상기 데이터 기억 장치는,상기 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제1 영역을 갖는 기록 매체와,상기 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 제2 영역을 갖는 불휘발성 고체 메모리와,상기 호스트 장치로부터 전송된 데이터를 상기 기록 매체 및 불휘발성 고체 메모리가 갖는 기록 영역에 기입하도록 제어하는 제어 수단을 갖고,상기 기록 영역은, 상기 호스트 장치로부터 전송된 데이터가 일시적으로 기입되는 상기 제1 영역 및 제2 영역으로 이루어지는 제1 기입 영역과, 상기 기록 매체에서 그 제1 영역보다 데이터의 전송 속도가 느린 제3 영역을 포함하는 제2 기입 영역과, 상기 기록 매체의 일부의 영역과 상기 불휘발성 고체 메모리의 일부의 영역에 논리 블록 어드레스가 중복하여 부여되어 있는 제3 기입 영역을 갖고,상기 제어 수단은, 상기 호스트 장치로부터 전송된 데이터의 기록을 명하는 커맨드에 기초하여, 상기 제1 기입 영역, 상기 제2 기입 영역 또는 상기 제3 기입 영역에 상기 호스트 기기로부터 전송된 데이터를 기입하도록 제어하는 것을 특징으로 하는 기록 재생 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2005-00215104 | 2005-07-25 | ||
JP2005215104A JP4736593B2 (ja) | 2005-07-25 | 2005-07-25 | データ記憶装置、データ記録方法、記録及び/又は再生システム、並びに、電子機器 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070013227A true KR20070013227A (ko) | 2007-01-30 |
Family
ID=37674127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060069157A KR20070013227A (ko) | 2005-07-25 | 2006-07-24 | 데이터 기억 장치 및 방법, 및 기록 재생 시스템 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7472219B2 (ko) |
JP (1) | JP4736593B2 (ko) |
KR (1) | KR20070013227A (ko) |
CN (1) | CN100557577C (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011019216A2 (en) * | 2009-08-13 | 2011-02-17 | Lg Electronics Inc. | Hybrid storage device, and control method |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070152076A1 (en) * | 2004-12-13 | 2007-07-05 | Chiang Kuo C | Monitoring system with a wireless transmitting/receiving module |
KR100801015B1 (ko) * | 2006-08-30 | 2008-02-04 | 삼성전자주식회사 | 하이브리드 하드 디스크 드라이브와 데이터 저장 방법 |
US20080189558A1 (en) * | 2007-02-01 | 2008-08-07 | Sun Microsystems, Inc. | System and Method for Secure Data Storage |
JP4900807B2 (ja) * | 2007-03-06 | 2012-03-21 | 株式会社日立製作所 | ストレージシステム及びデータ管理方法 |
KR100866962B1 (ko) * | 2007-03-08 | 2008-11-05 | 삼성전자주식회사 | Hdd를 하이브리드 hdd에서 노멀 hdd로 전환시키는방법 |
US7913025B1 (en) * | 2007-07-23 | 2011-03-22 | Augmentix Corporation | Method and system for a storage device |
US8161222B1 (en) | 2007-07-23 | 2012-04-17 | Augmentix Corporation | Method and system and apparatus for use in data storage |
US8014093B2 (en) * | 2007-08-22 | 2011-09-06 | Thomson Licensing | Hard disk sector/track remapping for transparent wear leveling |
US20090180248A1 (en) * | 2008-01-10 | 2009-07-16 | Karsten Roth | Combination Drive |
JP2009187604A (ja) * | 2008-02-04 | 2009-08-20 | Fujitsu Ltd | 磁気ディスク装置 |
RU2440629C1 (ru) * | 2008-03-11 | 2012-01-20 | Шарп Кабусики Кайся | Устройство привода оптического диска |
DE102008022831B4 (de) * | 2008-05-08 | 2015-09-10 | Fujitsu Technology Solutions Intellectual Property Gmbh | Arbeitsverfahren für ein Speichersubsystem und Vorrichtungen zur Durchführung des Arbeitsverfahrens |
JP5782214B2 (ja) * | 2008-05-30 | 2015-09-24 | 富士通株式会社 | 情報検索プログラム、情報検索装置および情報検索方法 |
KR101636777B1 (ko) | 2008-08-08 | 2016-07-21 | 시게이트 테크놀로지 엘엘씨 | 하이브리드 저장 장치 및 그에 대한 논리 블록 어드레스 할당 방법 |
JP2010055702A (ja) * | 2008-08-29 | 2010-03-11 | Nippon Hoso Kyokai <Nhk> | ハードディスク装置 |
DE112008004010T5 (de) * | 2008-09-15 | 2011-06-30 | Hewlett-Packard Development Company, L.P., Tex. | Verfahren und Vorrichtung zum Verwalten eines nichtflüchtigen Disk-Cache |
KR20100041313A (ko) * | 2008-10-14 | 2010-04-22 | 삼성전자주식회사 | 데이터 저장 방법, 데이터 저장 장치 및 그 시스템 |
EP2180408B1 (en) * | 2008-10-23 | 2018-08-29 | STMicroelectronics N.V. | Method for writing and reading data in an electrically erasable and programmable nonvolatile memory |
JP2010118112A (ja) * | 2008-11-12 | 2010-05-27 | Toshiba Storage Device Corp | 記憶装置および記憶装置の制御方法 |
JP5272917B2 (ja) * | 2009-06-18 | 2013-08-28 | 富士通株式会社 | 無線通信システム、端末装置、及び無線通信システムにおける無線通信方法 |
JP5215255B2 (ja) * | 2009-07-10 | 2013-06-19 | シャープ株式会社 | プログラム実行装置、プログラム実行方法、コンテンツ再生装置、プログラムおよび記録媒体 |
JP2011023089A (ja) * | 2009-07-21 | 2011-02-03 | Hitachi-Lg Data Storage Inc | 記録再生装置 |
CN101719103B (zh) * | 2009-11-25 | 2012-07-18 | 成都市华为赛门铁克科技有限公司 | 基于存储设备的信息处理方法以及存储设备 |
CN102163130B (zh) * | 2010-02-23 | 2013-01-02 | 慧荣科技股份有限公司 | 管理存储器读出数据的方法以及记忆装置 |
US8782336B2 (en) * | 2010-05-11 | 2014-07-15 | Marvell World Trade Ltd. | Hybrid storage system with control module embedded solid-state memory |
US8639872B1 (en) * | 2010-08-13 | 2014-01-28 | Western Digital Technologies, Inc. | Hybrid drive comprising write cache spanning non-volatile semiconductor memory and disk |
CN101937321B (zh) * | 2010-09-15 | 2013-08-21 | 中兴通讯股份有限公司 | 一种实现混合缓存的方法和装置 |
US8612798B1 (en) * | 2010-10-21 | 2013-12-17 | Western Digital Technologies, Inc. | Hybrid drive storing write data in non-volatile semiconductor memory if write verify of disk fails |
US8429343B1 (en) | 2010-10-21 | 2013-04-23 | Western Digital Technologies, Inc. | Hybrid drive employing non-volatile semiconductor memory to facilitate refreshing disk |
US8427771B1 (en) | 2010-10-21 | 2013-04-23 | Western Digital Technologies, Inc. | Hybrid drive storing copy of data in non-volatile semiconductor memory for suspect disk data sectors |
CN101996250B (zh) * | 2010-11-15 | 2012-07-25 | 中国科学院计算技术研究所 | 一种基于Hadoop的海量流数据存储和查询方法及*** |
JP2012113789A (ja) * | 2010-11-26 | 2012-06-14 | Buffalo Inc | ハードディスクドライブ装置およびその処理装置 |
US9244848B2 (en) | 2011-10-10 | 2016-01-26 | Intel Corporation | Host controlled hybrid storage device |
BR112014009915B1 (pt) | 2011-10-26 | 2021-06-15 | Hewlett-Packard Development Company, L.P. | Método para alocação de memória, dispositivo e meio de armazenamento não transitório legível por máquina |
CN102541466A (zh) * | 2011-10-27 | 2012-07-04 | 忆正存储技术(武汉)有限公司 | 一种混合存储控制***和方法 |
JP2015517697A (ja) * | 2012-05-23 | 2015-06-22 | 株式会社日立製作所 | 二次記憶装置に基づく記憶領域をキャッシュ領域として用いるストレージシステム及び記憶制御方法 |
US20140310536A1 (en) * | 2013-04-16 | 2014-10-16 | Qualcomm Incorporated | Storage device assisted inline encryption and decryption |
KR102164617B1 (ko) * | 2014-03-24 | 2020-10-12 | 삼성전자주식회사 | 데이터 저장 장치의 동작 방법과 상기 데이터 저장 장치를 포함하는 시스템의 동작 방법 |
US9443553B2 (en) | 2014-04-28 | 2016-09-13 | Seagate Technology Llc | Storage system with multiple media scratch pads |
US8947817B1 (en) * | 2014-04-28 | 2015-02-03 | Seagate Technology Llc | Storage system with media scratch pad |
JP6178287B2 (ja) * | 2014-07-11 | 2017-08-09 | 株式会社東芝 | 記憶装置、及び制御方法 |
CN104182353A (zh) * | 2014-08-21 | 2014-12-03 | 段超 | 一种采用不同存储介质的数据存储*** |
US20170024297A1 (en) * | 2015-07-22 | 2017-01-26 | Kabushiki Kaisha Toshiba | Storage Device and Data Save Method |
US10705745B2 (en) * | 2015-09-30 | 2020-07-07 | Hewlett Packard Enterprise Development Lp | Using a memory controller to mange access to a memory based on a memory initialization state indicator |
US10558570B2 (en) * | 2016-03-14 | 2020-02-11 | Intel Corporation | Concurrent accesses of asymmetrical memory sources |
US10635331B2 (en) * | 2017-07-05 | 2020-04-28 | Western Digital Technologies, Inc. | Distribution of logical-to-physical address entries across bank groups |
US10785301B2 (en) * | 2017-08-03 | 2020-09-22 | Toshiba Memory Corporation | NVM express over fabrics |
JP2020038740A (ja) * | 2018-09-04 | 2020-03-12 | 株式会社東芝 | 磁気ディスク装置および制御方法 |
EP3920184A4 (en) * | 2019-01-28 | 2022-04-06 | FUJIFILM Corporation | RECORDING DEVICE, RECORDING METHOD, RECORDING PROGRAM, AND MAGNETIC TAPE |
US11113007B2 (en) * | 2019-05-13 | 2021-09-07 | Micron Technology, Inc. | Partial execution of a write command from a host system |
CN112241614B (zh) * | 2020-10-09 | 2021-05-18 | 广芯微电子(广州)股份有限公司 | 一种时钟延时链延时的检测方法、***及电子设备 |
CN112241615B (zh) * | 2020-10-09 | 2021-05-18 | 广芯微电子(广州)股份有限公司 | 一种数据平衡性时序的检测方法、***及电子设备 |
CN112233727B (zh) * | 2020-10-29 | 2024-01-26 | 北京诺禾致源科技股份有限公司 | 数据分区存储方法及装置 |
CN113838487B (zh) * | 2021-09-28 | 2023-04-25 | 北京信息科技大学 | 一种多读写头的盘状存储器、读写方法及数据保护方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5473584A (en) * | 1992-01-29 | 1995-12-05 | Matsushita Electric Industrial Co., Ltd. | Recording and reproducing apparatus |
JP2000181766A (ja) * | 1998-12-17 | 2000-06-30 | Fuji Xerox Co Ltd | ファイル入出力装置 |
JP3994306B2 (ja) * | 1999-08-17 | 2007-10-17 | ソニー株式会社 | 情報処理装置及び情報記録媒体のアクセス方法 |
JP2001117821A (ja) * | 1999-10-22 | 2001-04-27 | Sony Corp | 記録媒体、編集装置、記録システム |
JP3770138B2 (ja) * | 2001-10-18 | 2006-04-26 | ソニー株式会社 | 情報処理装置、情報処理装置の制御方法、情報処理装置の制御プログラム及び情報処理装置の制御プログラムを記録した記録媒体 |
JP4106702B2 (ja) * | 2002-05-30 | 2008-06-25 | ソニー株式会社 | 情報処理装置、データ記録再生方法、データ記録再生方法のプログラム及びデータ記録再生方法のプログラムを記録した記録媒体 |
JP3983650B2 (ja) * | 2002-11-12 | 2007-09-26 | 株式会社日立製作所 | ハイブリッドストレージ、および、それを用いた情報処理装置 |
JP2004199743A (ja) * | 2002-12-17 | 2004-07-15 | Matsushita Electric Ind Co Ltd | 記録再生装置および記録再生制御方法 |
JP4269915B2 (ja) * | 2003-12-03 | 2009-05-27 | ソニー株式会社 | 記録再生装置及び方法、並びに記録再生システム |
JP2006186842A (ja) * | 2004-12-28 | 2006-07-13 | Toshiba Corp | 情報記憶媒体、情報再生方法、情報デコード方法、および情報再生装置 |
JP2008004163A (ja) * | 2006-06-22 | 2008-01-10 | Sony Corp | 記録装置、異常検出方法、およびプログラム |
-
2005
- 2005-07-25 JP JP2005215104A patent/JP4736593B2/ja not_active Expired - Fee Related
-
2006
- 2006-07-18 US US11/458,204 patent/US7472219B2/en not_active Expired - Fee Related
- 2006-07-24 KR KR1020060069157A patent/KR20070013227A/ko not_active Application Discontinuation
- 2006-07-25 CN CNB2006101074968A patent/CN100557577C/zh not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011019216A2 (en) * | 2009-08-13 | 2011-02-17 | Lg Electronics Inc. | Hybrid storage device, and control method |
WO2011019216A3 (en) * | 2009-08-13 | 2011-06-30 | Lg Electronics Inc. | Hybrid storage device, and control method |
Also Published As
Publication number | Publication date |
---|---|
CN1904858A (zh) | 2007-01-31 |
US7472219B2 (en) | 2008-12-30 |
JP2007034536A (ja) | 2007-02-08 |
US20070019315A1 (en) | 2007-01-25 |
CN100557577C (zh) | 2009-11-04 |
JP4736593B2 (ja) | 2011-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4736593B2 (ja) | データ記憶装置、データ記録方法、記録及び/又は再生システム、並びに、電子機器 | |
US8245003B2 (en) | Composite memory device, data processing method and data processing program | |
US6735678B2 (en) | Method and apparatus for disc drive defragmentation | |
JP2007193883A (ja) | データ記録装置及び方法、及びデータ再生装置及び方法、並びにデータ記録再生装置及び方法 | |
US7373477B2 (en) | Fragmentation executing method and storage device | |
US7647470B2 (en) | Memory device and controlling method for elongating the life of nonvolatile memory | |
CN100520914C (zh) | 地址分配方法、磁盘驱动器和数据写入方法 | |
JP2006523882A (ja) | ユニバーサルなドライブ装置のためのフォーマットマッピング方式 | |
JP4604806B2 (ja) | 記録装置 | |
KR20060134149A (ko) | 복합형 기억 장치, 데이터 기입 방법 및 프로그램 | |
JP2007034537A (ja) | 複合型記憶装置、データ書込方法及びプログラム | |
US20020015252A1 (en) | Method and apparatus for a disc drive adaptive file system | |
JP4802791B2 (ja) | データ記憶装置及びデータアクセス方法 | |
JP4496790B2 (ja) | データ記憶装置及び方法、並びに記録再生システム | |
KR101072730B1 (ko) | 기록 재생 장치 및 기록 방법 | |
JP4470471B2 (ja) | 記録再生装置及び方法、並びに記録再生システム | |
JP4301026B2 (ja) | データ記録装置及びデータ記録方法、並びに記録再生システム | |
KR20030061948A (ko) | 정보 저장 장치 및 그를 이용한 파일 관리 방법 | |
JP4269915B2 (ja) | 記録再生装置及び方法、並びに記録再生システム | |
JP2006313514A (ja) | 複合型記憶装置、アクセス方法及びプログラム | |
JP2008117491A (ja) | 記録装置、記録方法、およびプログラム | |
JP2006178778A (ja) | データ記録装置及びデータ記録システム | |
JP2002312132A (ja) | ファイル管理方法、ファイル管理装置、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |