KR20110113505A - Hdd를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법 - Google Patents

Hdd를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법 Download PDF

Info

Publication number
KR20110113505A
KR20110113505A KR1020100032938A KR20100032938A KR20110113505A KR 20110113505 A KR20110113505 A KR 20110113505A KR 1020100032938 A KR1020100032938 A KR 1020100032938A KR 20100032938 A KR20100032938 A KR 20100032938A KR 20110113505 A KR20110113505 A KR 20110113505A
Authority
KR
South Korea
Prior art keywords
file
memory
storage control
control device
stored
Prior art date
Application number
KR1020100032938A
Other languages
English (en)
Other versions
KR101101324B1 (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 KR1020100032938A priority Critical patent/KR101101324B1/ko
Publication of KR20110113505A publication Critical patent/KR20110113505A/ko
Application granted granted Critical
Publication of KR101101324B1 publication Critical patent/KR101101324B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Abstract

본 발명은 파일을 제1 메모리에 저장하는 중앙 처리 장치, 제1 메모리로부터 파일을 추출하여 제2 메모리에 저장하는 스토리지 제어 장치를 포함하되, 스토리지 제어 장치는 접근 시간 정보를 참조하여 제2 메모리에 저장된 파일이 지정된 기간 동안 엑세스 되지 않은 콜드 파일인지 확인하고, 제2 메모리에 저장된 파일이 콜드 파일인 경우, 콜드 파일을 하드 디스크에 저장한다. 본 발명의 실시 예에 의하면, 파일이 저장되는 매체를 스토리지 제어 장치에서 결정함으로써, 중앙 처리 장치의 부하를 낮추어 효율을 증가시킬 수 있다.

Description

HDD를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법{Mobile Device Including Storage Controlling Apparatus for Controlling Hard Disk Drive and Method for Controlling Storage}
본 발명의 실시예들은 스토리지 기술에 관련된 것으로, 보다 자세하게는 하드 디스크 드라이브를 포함하는 모바일 장치의 데이터 저장 기술에 관한 것이다.
모바일 장치를 이용한 영화, 게임 및 인터넷 등과 같은 멀티미디어 기능이 증대되고 있다. 이에 따라 모바일 장치의 스토리지 모듈은 대용량의 데이터를 저장할 수 있어야 하고, 이를 위해 스토리지 모듈이 마그네틱 디스크(magnetic disk)를 구비하는 모바일 장치가 등장하게 되었다.
즉, 모바일 장치를 위한 스토리지 모듈은 DRAM과 마그네틱 디스크 (magnetic disk)로 구비하게 되었다. 하지만 마그네틱 디스크의 특성상 기존 스토리지 모듈은 파일 로딩 속도가 느린 문제점이 있다.
특히 마그네틱 디스크를 구비한 스토리지 모듈의 특성상 전력 소비량이 크기 때문에, 모바일 장치에 마그네틱 디스크가 장착되는 경우, 배터리 소모가 문제가 되어 전력 소비를 줄이는 방법이 필요하다.
본 발명의 실시 예는 스토리지 제어 장치를 사용하여 하드 디스크 드라이브의 성능을 향상 시키고, 전력 소모를 낮추는 하드 디스크 드라이브 제어 장치 및 방법을 제공하고자 한다.
본 발명의 일 측면에 따르면, 파일을 제1 메모리에 저장하는 중앙 처리 장치; 및 상기 제1 메모리로부터 상기 파일을 추출하여 제2 메모리에 저장하는 스토리지 제어 장치를 포함하되, 상기 스토리지 제어 장치는 접근 시간 정보를 참조하여 상기 제2 메모리에 저장된 파일이 지정된 기간 동안 엑세스 되지 않은 콜드 파일인지 확인하고, 상기 제2 메모리에 저장된 파일이 콜드 파일인 경우, 상기 콜드 파일을 상기 하드 디스크에 저장하는 것을 특징으로 하는 모바일 장치가 제공된다.
상기 스토리지 제어 장치는 상기 제2 메모리에 저장된 상기 콜드 파일을 상기 하드 디스크에 저장한 후, 상기 콜드 파일을 상기 제2 메모리에서 삭제할 수 있다.
상기 스토리지 제어 장치는 정해진 주기마다 상기 제2 메모리에 저장된 파일이 콜드 파일인 것을 확인할 수 있다.
상기 제1 메모리는 휘발성 메모리이고, 상기 제2 메모리는 SLC(Single-Level Cell) 혹은 MLC(Multi-Level Cell) 구조의 플래시 메모리일 수 있다.
상기 접근 시간 정보는 상기 제2 메모리에 저장된 파일이 최근에 엑세스된 시간 정보일 수 있다.
상기 중앙 처리 장치는 파일 요청 명령을 상기 제1 메모리에 저장하고, 상기 스토리지 제어 장치는 상기 파일 요청 명령에 상응하는 요청 파일이 상기 제2 메모리에 저장되어 있는지 확인할 수 있다.
상기 요청 파일이 상기 제2 메모리에 저장되어 있는 경우, 상기 스토리지 제어 장치는 상기 요청 파일을 상기 제2 메모리로부터 추출하여 상기 제1 메모리에 저장할 수 있다.
상기 스토리지 제어 장치는 상기 요청 파일을 상기 제2 메모리로부터 추출할 때 상기 파일에 상응하는 상기 접근 시간 정보를 상기 파일을 추출한 시각으로 갱신할 수 있다.
상기 스토리지 제어 장치는 상기 요청 파일이 상기 제2 메모리에 저장되어 있지 않은 경우, 상기 요청 파일을 상기 하드 디스크로부터 추출하여 상기 제1 메모리에 저장하고, 상기 제1 메모리로부터 상기 요청 파일을 추출하여 상기 제2 메모리로부터 저장할 수 있다.
상기 스토리지 제어 장치는 상기 파일의 논리 주소와 상기 파일이 저장될 상기 제2 메모리의 물리 주소의 매핑 관계를 나타낸 매핑 테이블을 갱신하고, 상기 제2 메모리의 상기 물리 주소로 상기 파일을 저장할 수 있다.
본 발명의 다른 측면에 따르면, 모바일 장치가 스토리지를 제어하는 방법에 있어서, (a)중앙 처리 장치가 파일을 제1 메모리에 저장하는 단계; (b)스토리지 제어 장치가 상기 제1 메모리로부터 상기 파일을 추출하는 단계; (c)상기 스토리지 제어 장치가 상기 파일을 제2 메모리에 저장하는 단계; (d)상기 스토리지 제어 장치가 접근 시간 정보를 참조하여 상기 제2 메모리에 저장된 상기 파일 중 상기 파일이 지정된 기간 동안 엑세스 되지 않은 콜드 파일인지 확인하는 단계; 및 (e)상기 콜드 파일을 상기 하드 디스크에 저장하는 단계를 포함할 수 있다.
스토리지 제어 방법은 상기 스토리지 제어 장치가 상기 제2 메모리에 저장된 상기 콜드 파일을 상기 하드 디스크에 저장한 후, 상기 콜드 파일을 상기 제2 메모리에서 삭제하는 단계를 더 포함할 수 있다.
상기 단계 (d)는 정해진 주기마다 수행되는 단계일 수 있다.
상기 접근 시간 정보는 상기 제2 메모리에 저장된 파일이 최근에 엑세스된 시간 정보일 수 있다.
스토리지 제어 방법은 상기 중앙 처리 장치가 파일 요청 명령을 상기 제1 메모리에 저장하는 단계; 및 상기 스토리지 제어 장치가 상기 파일 요청 명령에 상응하는 요청 파일이 상기 제2 메모리에 저장되어 있는지 확인하는 단계를 더 포함할 수 있다.
스토리지 제어 방법은 상기 요청 파일이 상기 제2 메모리에 저장되어 있는 경우, 상기 스토리지 제어 장치가 상기 요청 파일을 상기 제2 메모리로부터 추출하여 상기 제1 메모리에 저장하는 단계를 더 포함할 수 있다.
상기 스토리지 제어 장치가 상기 요청 파일을 상기 제2 메모리로부터 추출할 때 상기 요청 파일에 상응하는 상기 접근 시간 정보를 상기 요청 파일을 추출한 시각으로 갱신할 수 있다.
스토리지 제어 방법은 상기 파일이 상기 제2 메모리에 저장되어 있지 않은 경우, 상기 스토리지 제어 장치가 상기 요청 파일을 상기 하드 디스크로부터 추출하여 상기 제1 메모리에 저장하는 단계; 및 상기 제1 메모리에 저장된 상기 요청 파일을 추출하여 상기 제2 메모리로 저장하는 단계를 더 포함할 수 있다.
상기 단계 (c)는 상기 스토리지 제어 장치가 상기 파일의 논리 주소와 상기 파일이 저장될 상기 제2 메모리의 물리 주소의 매핑 관계를 나타낸 매핑 테이블을 갱신하고, 상기 제2 메모리의 상기 물리 주소로 상기 파일을 저장하는 단계일 수 있다.
본 발명의 실시 예에 의하면, 파일이 저장되는 매체를 스토리지 제어 장치에서 결정함으로써, 중앙 처리 장치의 부하를 낮추어 효율을 증가시킬 수 있다.
본 발명의 실시 예에 의하면, 데이터 처리를 위해 상대적으로 높은 전력을 소모하는 하드 디스크 접근을 줄임으로써 전력 소모를 줄일 수 있다.
본 발명의 실시 예에 의하면, 하드디스크로부터 파일 축출 빈도를 줄이고 상대적으로 속도가 높은 비휘발성 플래시메모리를 사용하므로 파일 로딩 속도를 높일 수 있다.
도 1은 본 발명의 일 실시예에 따른 모바일 장치를 예시한 도면.
도 2는 본 발명의 일 실시예에 따른 스토리지 제어 장치를 예시한 도면.
도 3은 본 발명의 일 실시예에 따른 모바일 장치가 데이터를 저장하는 과정을 예시한 도면.
도 4는 본 발명의 일 실시예에 따른 모바일 장치가 데이터를 로드하는 과정을 예시한 도면.
도 5는 본 발명의 일 실시예에 따른 모바일 장치의 데이터를 저장하는 과정을 예시한 순서도.
도 6은 본 발명의 일 실시예에 따른 모바일 장치의 데이터를 로드하는 과정을 예시한 순서도.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 모바일 장치를 예시한 도면이다.
도 1을 참조하면, 모바일 장치는 중앙 처리 장치(110), 제1 메모리(120), 스토리지 제어 장치(130) 및 제2 메모리(140)을 포함할 수 있다.
중앙 처리 장치(110)는 CPU(Central Processing Unit)로써, 어플리케이션을 수행하거나 데이터 저장을 요청하는 등의 시스템 제어를 수행한다. 중앙 처리 장치(110)는 파일 시스템(file system)에 따라 저장될 데이터를 포함하는 파일을 생성하여 제1 메모리(120)에 저장할 수 있다.
중앙 처리 장치(110)는 제1 메모리(120)와 연결되어 처리할 데이터를 제1 메모리(120)에 저장하거나, 제1 메모리(120)로부터 불러올 수 있다.
제1 메모리(120)는 데이터를 저장하기 위한 휘발성 메모리로써, 제1 저장 영역(122), 제2 저장 영역(124), 제3 저장 영역(126)으로 구분된다.
제1 저장 영역(122)은 중앙 처리 장치(110)에서 시스템 제어나 어플리케이션 수행에 상응하는 데이터를 임시로 저장하는 메모리 영역이다.
제2 저장 영역(124)는 제2 메모리(140)에 저장할 파일을 임시로 저장하는 영역이다. 제2 저장 영역(124)은 듀얼 포트(dual port)를 구비하여 중앙 처리 장치(110) 및 스토리지 제어 장치(130)에서 접근 가능한 영역이다.
제3 저장 영역(126)은 스토리지 제어 장치(130)가 제2 메모리(140)에 데이터를 저장하기 위해 수행할 명령어 및 프로그램 등을 저장하는 영역이다.
스토리지 제어 장치(130)는 제1 메모리(120)의 제2 저장 영역(124)에 저장된 파일을 제2 메모리(140)에 저장한다. 이 때, 스토리지 제어 장치(130)는 파일의 논리 주소와 제2 메모리(140)의 물리 주소를 매핑하고, 매핑된 물리 주소에 따라 파일을 제2 메모리(140)에 저장한다. 또한 스토리지 제어 장치(130)는 논리 주소와 물리 주소의 매핑 관계를 나타내는 매핑 테이블의 갱신을 수행한다. 또한 스토리지 제어 장치(130)는 제2 메모리(140)에 저장된 파일 중 지정된 기간 동안 엑세스되지 않은 파일(이하 콜드 파일이라 지칭)을 하드 디스크(150)에 저장할 수 있다. 이 때, 하드 디스크(150)에 저장된 파일은 제2 메모리(140)에서 삭제될 수 있다.
제2 메모리(140)는 스토리지 제어 장치(130)의 제어에 의해 파일을 저장한다. 이 때, 제2 메모리(140)는 SLC(Single-Level Cell) 혹은 MLC(Multi-Level Cell) 구조의 플래시 메모리일 수 있다.
하드 디스크(150)는 제2 메모리(140)에 저장된 파일 중 콜드 파일을 저장한다. 하드 디스크(150)로 수신되는 파일이나 데이터 요청은 하드 디스크 컨트롤러에서 수신하여 하드 디스크(150)를 제어하지만, 이하에서는 발명의 명확한 설명을 위해 하드 디스크(150)가 하드 디스크 컨트롤러를 포함하는 것으로 가정하여, 파일 및 명령 수신 등의 하드 디스크 컨트롤러의 역할의 주체를 하드 디스크(150)로 하여 설명하기로 한다.
이하 상술한 본 발명의 일 실시예에 따른 모바일 장치의 각 구성부를 참조하여 중앙 처리 장치(110)에서 데이터를 제2 메모리(140) 및 하드 디스크(150)로 저장하는 과정을 설명하도록 한다.
중앙 처리 장치(110)는 어플리케이션의 수행 등으로 저장이 필요한 데이터를 포함하는 파일을 생성하여 제2 저장 영역(124)로 저장한다.
제1 메모리(120)는 제2 저장 영역(124)에 데이터가 저장되면 스토리지 제어 장치(130)로 인터럽트(interrupt)를 발생시킨다.
스토리지 제어 장치(130)는 인터럽트를 감지하는 경우, 제2 저장 영역(124)에 접근하여 저장된 명령 및 파일을 추출한다.
스토리지 제어 장치(130)는 추출한 파일의 논리 주소와 제2 메모리(140)의 물리 주소를 매핑하고, 파일을 매핑된 물리 주소에 상응하는 블록 내의 페이지에 저장한다.
스토리지 제어 장치(130)는 주기적으로 제2 메모리(140)에 저장된 파일 중 콜드 파일을 추출하여 하드 디스크(150)에 저장한다.
이하 상술한 본 발명의 일 실시예에 따른 모바일 장치의 각 구성부를 참조하여 제2 메모리(140) 또는 하드 디스크(150)에 저장된 파일을 추출하는 과정을 설명하도록 한다.
중앙 처리 장치(110)는 어플리케이션의 수행 등으로 인해 플래쉬 메모리(140)에 저장된 파일의 추출을 요청하는 명령을 제2 저장 영역(124)을 통해 스토리지 제어 장치(130)로 전송한다.
스토리지 제어 장치(130)는 수신된 명령에 상응하는 파일의 매핑 테이블을 제1 메모리(140)로부터 추출한다. 스토리지 제어 장치(130)는 매핑 테이블을 참조하여, 플래쉬 메모리(140)에 저장된 파일을 추출한다. 스토리지 제어 장치(130)는 추출된 파일에 포함된 데이터를 추출하여 제2 저장 영역(124)로 전송한다.
이 때, 제1 메모리(140)에 명령에 상응하는 파일이 저장되어 있지 않을 경우, 스토리지 제어 장치(130)는 하드 디스크(150)로 접근하여 해당 파일을 추출한다.
제1 메모리(120)는 스토리지 제어 장치(130)가 제2 저장 영역(124)에 데이터를 저장하는 경우, 인터럽트를 중앙 처리 장치(110)로 발생시킨다.
중앙 처리 장치(110)는 인터럽트를 감지하고, 제2 저장 영역(124)로부터 데이터를 추출한다.
도 2는 본 발명의 일 실시예에 따른 스토리지 제어 장치를 예시한 도면이다.
도 2를 참조하면, 스토리지 제어 장치(130)는 인터페이스 드라이버(210), 파일 관리부(220), FTL(230), 플래시 드라이버(240) 및 하드 디스크 드라이버(250)을 포함한다.
이하 도 2에 예시된 각 기능부가 데이터를 저장하는 과정을 설명하도록 한다.
인터페이스 드라이버(210)은 제1 메모리(120)에 연결되어 데이터를 송수신할 수 있는 인터페이스로써, 제1 메모리(120)에서 발생한 인터럽트를 감지하고, 제2 저장 영역(124)에 저장된 파일을 추출할 수 있다.
파일 관리부(220)는 추출된 파일이 FTL(230) 및 플래시 드라이버(240)를 통해 제2 메모리(140)에 저장한다.
즉, FTL(230)은 파일의 논리 주소에 파일의 데이터가 실제로 저장될 제2 메모리(140)의 물리 주소를 매핑한다. 이 때, FTL(230)는 파일의 논리 주소와 물리 주소 간의 매핑 관계를 나타내는 테이블(이하 매핑 테이블이라 지칭)을 상술한 매핑 관계에 따라 갱신할 수 있다.
플래시 드라이버(240)은 FTL(230)에서 매핑된 결과에 따라 파일을 제2 메모리(140)에 저장한다. 즉, 플래시 드라이버(230)은 파일에 매핑된 물리 주소에 상응하는 제2 메모리(140)의 블록에 해당 파일을 저장한다. 이 때, 플래시 드라이버(240)은 매핑 테이블을 제2 메모리(140)에 저장할 수 있다.
파일 관리부(220)는 미리 정해진 주기마다 제2 메모리(140)에 저장된 파일이 콜드 파일인지 확인하고, 콜드 파일을 하드 디스크(150)에 저장한다.
즉, 파일 관리부(220)는 하드 디스크 드라이버(250)로 콜드 파일의 저장을 요청하고, 하드 디스크 드라이버(250)는 하드 디스크(150)와 연결되어 데이터를 송수신할 수 있는 인터페이스로써, 하드 디스크(150)의 데이터를 저장 및 추출을 제어한다.
파일 관리부(220)는 콜드 파일을 하드 디스크(150)에 저장하도록 한 후, 제2 메모리(140)에서 해당 콜드 파일을 삭제한다.
이하 도 2에 예시된 각 기능부가 데이터를 로드하는 과정을 설명하도록 한다.
인터페이스 드라이버(210)는 제1 메모리(120)를 통해 중앙 처리 장치(110)로부터 제2 메모리(140)에 저장된 파일의 추출을 요청하는 명령(이하 데이터 로드 명령)를 수신한다.
파일 관리부(220)는 FTL(230)을 호출하여 데이터 로드 명령에 상응하는 파일을 요청한다.
FTL(230)는 데이터 로드 명령에 상응하는 매핑 테이블을 플래시 드라이버(230)을 통해 제2 메모리(140)로부터 추출한다. 이어서, FTL(230)은 매핑 테이블에 포함된 물리 주소에 상응하는 파일을 플래시 드라이버(230)를 통해 제2 메모리(140)로부터 추출한다. 이 때, FTL(230)은 매핑 테이블에 데이터 로드 명령에 상응하는 파일이 포함되어 있지 않을 경우, 파일이 제2 메모리(140)에 저장되어 있지 않은 콜드 파일임을 나타내는 비접근 신호를 파일 관리부(220)로 전송한다.
파일 관리부(220)는 FTL(230)로부터 파일을 수신하는 경우, 파일을 인터페이스 드라이버(210)를 통해 제1 메모리(120)의 제2 저장 영역(124)에 저장한다.
파일 관리부(220)는 비접근 신호를 수신하는 경우, 하드 디스크 드라이버(250)를 통해 하드 디스크(150)에 저장된 파일을 추출한다. 파일 관리부(220)는 추출한 파일을 FTL(230)을 통해 제2 메모리(140)에 저장한다.
또한 파일 관리부(220)는 인터페이스 드라이버(210)를 통해 제1 메모리(120)의 제2 저장 영역(124)에 추출한 파일을 저장한다.
도 3은 본 발명의 일 실시예에 따른 모바일 장치가 데이터를 저장하는 과정을 예시한 도면이다.
도 3을 참조하면, 중앙 처리 장치(110)는 어플리케이션의 수행이나 사용자의 데이터 저장을 요청하는 입력에 의해 제1 저장 영역(122)에 저장된 데이터를 포함하는 파일을 생성한다. 중앙 처리 장치(110)는 생성한 파일 및 파일 저장을 요청하는 명령(이하 파일 저장 명령이라 지칭)을 제2 저장 영역에 저장한다. 이 때, 파일 저장 명령은 파일이 저장될 논리 주소(예를 들어, 디렉토리)를 포함할 수 있다.
제1 메모리(110)는 제2 저장 영역에 파일 및 파일 저장 명령이 저장되면 스토리지 제어 장치(130)로 인터럽트를 발생시킨다. 스토리지 제어 장치(130)는 제1 메모리(110)로부터 인터럽트를 수신하는 경우, 제1 메모리(110)의 제2 저장 영역에 저장된 파일 및 파일 저장 명령을 추출한다. 스토리지 제어 장치(130)는 파일 저장 명령에 따라 파일을 제2 메모리(140)에 저장한다. 즉, 스토리지 제어 장치(130)는 파일 저장 명령에 따른 논리 주소와 제2 메모리(140)의 물리 주소를 매핑하고, 매핑된 물리 주소에 파일을 저장한다. 이 때, 스토리지 제어 장치(130)는 논리 주소 및 물리 주소 간의 매핑 관계를 매핑 테이블에 업데이트한다. 이 때, 매핑 테이블에는 제2 메모리(140)에 저장된 파일이 최근 접근(로드 또는 저장)된 시간을 나타내는 정보(이하 접근 시간 정보라 지칭)가 포함될 수 있다.
또한 스토리지 제어 장치(130)는 주기적으로 제2 메모리(140)에 저장된 파일 중 콜드 파일이 있는지 확인한다. 스토리지 제어 장치(130)는 콜드 파일을 하드 디스크(150)에 저장하고, 제2 메모리(140)에서 콜드 파일을 삭제한다.
도 4는 본 발명의 일 실시예에 따른 모바일 장치가 데이터를 로드하는 과정을 예시한 도면이다.
도 4를 참조하면, 중앙 처리 장치(110)는 어플리케이션의 실행 또는 사용자의 파일을 요청하는 입력에 상응하는 파일 요청 명령을 제2 메모리(140)의 제2 저장 영역(124)에 저장한다. 이하 사용자가 요청하는 파일을 요청 파일이라 지칭하도록 한다.
제2 메모리(120)는 파일 요청 명령이 저장되는 경우, 인터럽트를 스토리지 제어 장치(130)로 발생시킨다.
스토리지 제어 장치(130)는 인터럽트를 수신하고, 제2 메모리(140)의 제2 저장 영역(124)에 저장된 파일 요청 명령을 추출한다.
스토리지 제어 장치(130)는 파일 요청 명령에 포함된 논리 주소에 상응하는 파일을 제2 메모리(140)로부터 추출한다. 즉, 스토리지 제어 장치(130)는 매핑 테이블에서 해당 논리 주소를 검색하고, 검색된 논리 주소에 매핑되는 물리 주소의 페이지에 저장된 요청 파일을 추출한다. 이 때, 스토리지 제어 장치(130)는 제2 메모리(140)로부터 추출한 요청 파일의 접근 시간 정보를 파일의 추출한 시각으로 업데이트한다.
이 때, 스토리지 제어 장치(130)는 파일 요청 명령에 포함된 논리 주소가 매핑 테이블에 포함되어 있지 않을 경우, 하드 디스크(160)로 논리 주소에 상응하는 파일을 요청한다. 즉, 스토리지 제어 장치(130)는 제2 메모리(140)에 파일 요청 명령에 상응하는 파일이 저장되어 있지 않을 경우, 하드 디스크(160)로부터 해당 파일을 추출한다.
스토리지 제어 장치(130)는 추출한 요청 파일을 제1 메모리(120)의 제3 저장 영역(126)에 저장한다.
스토리지 제어 장치(130)는 요청 파일을 제3 저장 영역(126)에서 추출하여 제2 저장 영역(124)으로 저장한다.
또한 스토리지 제어 장치(130)는 제3 저장 영역(126)에 저장된 파일을 제2 메모리(140)에 저장한다. 즉, 스토리지 제어 장치(130)는 파일 저장 명령에 따른 논리 주소와 제2 메모리(140)의 물리 주소를 매핑하고, 매핑된 물리 주소에 파일을 저장한다. 이 때, 스토리지 제어 장치(130)는 논리 주소 및 물리 주소 간의 매핑 관계를 매핑 테이블에 업데이트한다. 이 때, 매핑 테이블에는 제2 메모리(140)에 저장된 파일이 최근 접근(로드 또는 저장)된 접근 시간 정보가 포함될 수 있다.
제1 메모리(120)는 요청 파일이 제2 저장 영역(124)에 저장됨에 따라 중앙 처리 장치(110)로 인터럽트를 발생시킨다.
중앙 처리 장치(110)는 인터럽트를 수신하고, 제2 저장 영역(124)에 저장된 요청 파일을 추출하고, 요청 파일에 포함된 데이터를 제1 저장 영역(122)에 저장한다.
도 5는 본 발명의 일 실시예에 따른 모바일 장치의 데이터를 저장하는 과정을 예시한 순서도이다.
도 5를 참조하면, 단계 510에서 중앙 처리 장치(110)는 어플리케이션의 수행 또는 사용자의 입력에 상응하는 데이터를 포함하는 파일을 생성한다.
단계 520에서 중앙 처리 장치(110)는 파일을 제1 메모리(120)의 제2 저장 영역(124)에 저장한다.
단계 530에서 제1 메모리(120)는 인터럽트를 스토리지 제어 장치(130)로 발생시킨다.
단계 540에서 스토리지 제어 장치(130)는 인터럽트를 수신하는 경우, 제1 메모리(120)의 제2 저장 영역(124)로부터 파일을 추출한다.
단계 550에서 스토리지 제어 장치(130)는 추출한 파일의 논리 주소와 물리 주소를 매핑하고, 이에 따른 매핑 테이블을 갱신한다.
단계 560에서 스토리지 제어 장치(130)는 물리 주소에 따라 파일을 저장한다. 이 때, 스토리지 제어 장치(130)는 매핑 테이블을 제1 메모리(120)의 제3 저장 영역에 저장하고, 주기적으로 제2 메모리(140)에 저장될 수 있다.
단계 570에서 스토리지 제어 장치(130)는 저장된 파일이 지정된 기간 동안 엑세스된 적이 있는지 확인한다. 즉, 스토리지 제어 장치(130)는 저장된 파일이 콜드 파일인지 확인한다. 이 때, 스토리지 제어 장치(130)는 저장된 파일이 콜드 파일인 것에 대한 확인을 주기적으로 수행한다. 즉, 스토리지 제어 장치(130)는 해당 파일이 콜드 파일이 아닌 경우, 지정된 시간 후에 다시 단계 570을 수행한다.
단계 580 에서 스토리지 제어 장치(130)는 저장된 파일이 콜드 파일인 경우, 해당 파일을 하드 디스크(150)에 저장하고, 제2 메모리(140)에서 해당 파일을 삭제한다. 이 때, 스토리지 제어 장치(130)는 제2 메모리(140)에서 해당 파일이 삭제됨에 따라 매핑 테이블에서 해당 파일의 논리 주소 및 물리 주소의 매핑을 나타낸 데이터를 삭제한다.
도 6은 본 발명의 일 실시예에 따른 모바일 장치의 파일을 로드하는 과정을 예시한 순서도이다.
도 6을 참조하면, 단계 610에서 중앙 처리부에서 요청 파일를 요청하는 파일 요청 명령을 제1 메모리(120)의 제2 저장 영역으로 저장한다.
단계 620에서 제1 메모리(120)는 파일 요청 명령의 저장에 따른 인터럽트를 스토리지 제어 장치(130)로 발생시킨다.
단계 630에서 스토리지 제어 장치(130)는 인터럽트를 수신함에 따라 파일 요청 명령을 제1 메모리(120)로부터 추출한다.
단계 640에서 스토리지 제어 장치(130)는 파일 요청 명령에 상응하는 파일이 제2 메모리(140)에 저장되어 있는지 확인한다. 즉, 스토리지 제어 장치(130)는 매칭 테이블을 참조하여 파일 요청 명령에 상응하는 요청 파일이 제2 메모리(140)에 저장되어 있는지 확인한다.
파일이 제2 메모리(140)에 저장되어 있는 경우, 단계 650에서 스토리지 제어 장치(130)는 파일 요청 명령에 상응하는 요청 파일을 제2 메모리(140)로부터 추출한다.
단계 660에서 스토리지 제어 장치(130)는 제2 메모리(140) 또는 제1 메모리(120)의 제3 저장 영역(126)에서 추출한 요청 파일을 제1 메모리(120)의 제2 저장 영역(124)에 저장한다.
단계 670에서 제1 메모리(120)는 요청 파일의 저장에 따른 인터럽트를 중앙 처리 장치(110)로 발생시킨다.
단계 680에서 중앙 처리 장치(110)는 제1 메모리(120)에 저장된 요청 파일을 추출한다.
파일이 제2 메모리(140)에 저장되어 있지 않은 경우, 단계 682에서 스토리지 제어 장치(130)는 하드 디스크(150)에서 요청 파일을 추출한다.
단계 684에서 스토리지 제어 장치(130)는 추출한 요청 파일을 제1 메모리(120)의 제3 저장 영역(126)에 저장한다.
단계 686에서 스토리지 제어 장치(130)는 제3 저장 영역(126)에 저장된 요청 파일을 제2 메모리(140)로 저장한다. 이 때, 스토리지 제어 장치(130)는 요청 파일의 저장에 따른 매핑 테이블을 업데이트한다.
이후 상술한 단계 660 내지 단계 680의 과정이 수행된다. 이 때, 단계 686 이후에 단계 660이 수행되는 것으로 설명하였으나, 구현 방법에 따라 단계 686 이전에 단계 660이 수행될 수 있다.
이제까지 본 발명에 대하여 그 실시 예를 중심으로 살펴보았다. 전술한 실시 예 외의 많은 실시 예들이 본 발명의 특허청구범위 내에 존재한다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예는 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (19)

  1. 파일을 제1 메모리에 저장하는 중앙 처리 장치; 및
    상기 제1 메모리로부터 상기 파일을 추출하여 제2 메모리에 저장하는 스토리지 제어 장치를 포함하되,
    상기 스토리지 제어 장치는 접근 시간 정보를 참조하여 상기 제2 메모리에 저장된 파일이 지정된 기간 동안 엑세스 되지 않은 콜드 파일인지 확인하고,
    상기 제2 메모리에 저장된 파일이 콜드 파일인 경우, 상기 콜드 파일을 하드 디스크에 저장하는 것을 특징으로 하는 모바일 장치.
  2. 제1 항에 있어서,
    상기 스토리지 제어 장치는 상기 제2 메모리에 저장된 상기 콜드 파일을 상기 하드 디스크에 저장한 후, 상기 콜드 파일을 상기 제2 메모리에서 삭제하는 것을 특징으로 하는 모바일 장치.
  3. 제1 항에 있어서,
    상기 스토리지 제어 장치는 정해진 주기마다 상기 제2 메모리에 저장된 파일이 콜드 파일인 것을 확인하는 것을 특징으로 하는 모바일 장치.
  4. 제1 항에 있어서,
    상기 제1 메모리는 휘발성 메모리이고,
    상기 제2 메모리는 SLC(Single-Level Cell) 혹은 MLC(Multi-Level Cell) 구조의 플래시 메모리인 것을 특징으로 하는 모바일 장치.
  5. 제1 항에 있어서,
    상기 접근 시간 정보는 상기 제2 메모리에 저장된 파일이 최근에 엑세스된 시간 정보인 것을 특징으로 하는 모바일 장치.
  6. 제1 항에 있어서,
    상기 중앙 처리 장치는 파일 요청 명령을 상기 제1 메모리에 저장하고,
    상기 스토리지 제어 장치는 상기 파일 요청 명령에 상응하는 요청 파일이 상기 제2 메모리에 저장되어 있는지 확인하는 것을 특징으로 하는 모바일 장치.
  7. 제6 항에 있어서,
    상기 요청 파일이 상기 제2 메모리에 저장되어 있는 경우, 상기 스토리지 제어 장치는 상기 요청 파일을 상기 제2 메모리로부터 추출하여 상기 제1 메모리에 저장하는 것을 특징으로 하는 모바일 장치.
  8. 제7 항에 있어서,
    상기 스토리지 제어 장치는 상기 요청 파일을 상기 제2 메모리로부터 추출할 때 상기 파일에 상응하는 상기 접근 시간 정보를 상기 파일을 추출한 시각으로 갱신하는 것을 특징으로 하는 모바일 장치.
  9. 제6 항에 있어서,
    상기 스토리지 제어 장치는 상기 요청 파일이 상기 제2 메모리에 저장되어 있지 않은 경우,
    상기 요청 파일을 상기 하드 디스크로부터 추출하여 상기 제1 메모리에 저장하고, 상기 제1 메모리로부터 상기 요청 파일을 추출하여 상기 제2 메모리로부터 저장하는 것을 특징으로 하는 모바일 장치.
  10. 제1 항에 있어서,
    상기 스토리지 제어 장치는 상기 파일의 논리 주소와 상기 파일이 저장될 상기 제2 메모리의 물리 주소의 매핑 관계를 나타낸 매핑 테이블을 갱신하고,
    상기 제2 메모리의 상기 물리 주소로 상기 파일을 저장하는 것을 특징으로 하는 모바일 장치.
  11. 모바일 장치가 데이터를 저장하는 방법에 있어서,
    (a)중앙 처리 장치가 파일을 제1 메모리에 저장하는 단계;
    (b)스토리지 제어 장치가 상기 제1 메모리로부터 상기 파일을 추출하는 단계;
    (c)상기 스토리지 제어 장치가 상기 파일을 제2 메모리에 저장하는 단계;
    (d)상기 스토리지 제어 장치가 접근 시간 정보를 참조하여 상기 제2 메모리에 저장된 상기 파일 중 상기 파일이 지정된 기간 동안 엑세스 되지 않은 콜드 파일인지 확인하는 단계; 및
    (e)상기 콜드 파일을 하드 디스크에 저장하는 단계를 포함하는 스토리지 제어 방법.
  12. 제11 항에 있어서,
    상기 스토리지 제어 장치가 상기 제2 메모리에 저장된 상기 콜드 파일을 상기 하드 디스크에 저장한 후, 상기 콜드 파일을 상기 제2 메모리에서 삭제하는 단계를 더 포함하는 것을 특징으로 하는 스토리지 제어 방법.
  13. 제11 항에 있어서,
    상기 단계 (d)는 정해진 주기마다 수행되는 단계인 것을 특징으로 하는 스토리지 제어 방법
  14. 제11 항에 있어서,
    상기 접근 시간 정보는 상기 제2 메모리에 저장된 파일이 최근에 엑세스된 시간 정보인 것을 특징으로 하는 스토리지 제어 방법.
  15. 제11 항에 있어서,
    상기 중앙 처리 장치가 파일 요청 명령을 상기 제1 메모리에 저장하는 단계; 및
    상기 스토리지 제어 장치가 상기 파일 요청 명령에 상응하는 요청 파일이 상기 제2 메모리에 저장되어 있는지 확인하는 단계를 더 포함하는 스토리지 제어 방법.
  16. 제15 항에 있어서,
    상기 요청 파일이 상기 제2 메모리에 저장되어 있는 경우, 상기 스토리지 제어 장치가 상기 요청 파일을 상기 제2 메모리로부터 추출하여 상기 제1 메모리에 저장하는 단계를 더 포함하는 스토리지 제어 방법.
  17. 제16 항에 있어서,
    상기 스토리지 제어 장치가 상기 요청 파일을 상기 제2 메모리로부터 추출할 때 상기 요청 파일에 상응하는 상기 접근 시간 정보를 상기 요청 파일을 추출한 시각으로 갱신하는 것을 특징으로 하는 스토리지 제어 방법.
  18. 제15 항에 있어서,
    상기 파일이 상기 제2 메모리에 저장되어 있지 않은 경우,
    상기 스토리지 제어 장치가 상기 요청 파일을 상기 하드 디스크로부터 추출하여 상기 제1 메모리에 저장하는 단계; 및
    상기 제1 메모리에 저장된 상기 요청 파일을 추출하여 상기 제2 메모리로 저장하는 단계를 더 포함하는 것을 특징으로 하는 스토리지 제어 방법.
  19. 제11 항에 있어서,
    상기 단계 (c)는 상기 스토리지 제어 장치가 상기 파일의 논리 주소와 상기 파일이 저장될 상기 제2 메모리의 물리 주소의 매핑 관계를 나타낸 매핑 테이블을 갱신하고,
    상기 제2 메모리의 상기 물리 주소로 상기 파일을 저장하는 단계인 것을 특징으로 하는 스토리지 제어 방법.
KR1020100032938A 2010-04-09 2010-04-09 Hdd를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법 KR101101324B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100032938A KR101101324B1 (ko) 2010-04-09 2010-04-09 Hdd를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100032938A KR101101324B1 (ko) 2010-04-09 2010-04-09 Hdd를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법

Publications (2)

Publication Number Publication Date
KR20110113505A true KR20110113505A (ko) 2011-10-17
KR101101324B1 KR101101324B1 (ko) 2011-12-30

Family

ID=45028844

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100032938A KR101101324B1 (ko) 2010-04-09 2010-04-09 Hdd를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법

Country Status (1)

Country Link
KR (1) KR101101324B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102023351B1 (ko) 2013-03-19 2019-11-04 삼성전자 주식회사 저장 장치 내 할당 촉진을 위한 데이터 분석 방법 및 장치

Also Published As

Publication number Publication date
KR101101324B1 (ko) 2011-12-30

Similar Documents

Publication Publication Date Title
EP2997459B1 (en) System and method for high performance and low cost flash translation layer
KR101281326B1 (ko) 메모리 장치의 활용 영역 확장
US20180018259A1 (en) Apparatus and method for low power low latency high capacity storage class memory
US8239613B2 (en) Hybrid memory device
US8526234B1 (en) Controller management of memory array of storage device using magnetic random access memory (MRAM)
US9792227B2 (en) Heterogeneous unified memory
US20170177497A1 (en) Compressed caching of a logical-to-physical address table for nand-type flash memory
US10802734B2 (en) Method for fast boot read
KR20170097609A (ko) 압축된 데이터 백그라운드를 캐싱하는 장치, 시스템 및 방법
KR20130031046A (ko) 플래시 메모리 장치 및 플래시 메모리 장치의 데이터 관리 방법
KR20150095781A (ko) 메모리 리클레임 방법 및 장치
US11269765B2 (en) Operating method of controller and memory system
CN103678166A (zh) 一种采用固态硬盘作为计算机高速缓存的实现方法及系统
EP3196767B1 (en) Method for writing data into flash memory device, flash memory device and storage system
EP3142014B1 (en) Method, device and user equipment for reading/writing data in nand flash
KR20200114052A (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법
US10073851B2 (en) Fast new file creation cache
US11662932B2 (en) Tiered storage system with defragmentation based on weighted flash fragmentation factor
KR20200114086A (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법
KR101101324B1 (ko) Hdd를 제어하는 스토리지 제어 장치를 포함하는 모바일 장치 및 스토리지 제어 방법
US10831656B2 (en) System and method to improve input output command latency by dynamic size logical to physical caching
CN105138294A (zh) 一种硬盘设备及信息处理方法
CN102662866B (zh) 一种文件cache管理方法及内存管理系统
US20150120991A1 (en) Data processing system and operating method thereof
KR101175355B1 (ko) 스토리지 제어 장치, 이를 포함하는 모바일 장치 및 스토리지 제어 방법

Legal Events

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

Payment date: 20141224

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151224

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee