KR101031338B1 - 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법 - Google Patents

동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법 Download PDF

Info

Publication number
KR101031338B1
KR101031338B1 KR1020090104543A KR20090104543A KR101031338B1 KR 101031338 B1 KR101031338 B1 KR 101031338B1 KR 1020090104543 A KR1020090104543 A KR 1020090104543A KR 20090104543 A KR20090104543 A KR 20090104543A KR 101031338 B1 KR101031338 B1 KR 101031338B1
Authority
KR
South Korea
Prior art keywords
data
buffer memory
area
disk
time
Prior art date
Application number
KR1020090104543A
Other languages
English (en)
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 KR1020090104543A priority Critical patent/KR101031338B1/ko
Application granted granted Critical
Publication of KR101031338B1 publication Critical patent/KR101031338B1/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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법이 제공된다. 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법은, (i) 제 1 버퍼 메모리 중 디스크의 데이터가 반입되는 영역(
Figure 112009067005641-pat00001
)으로 상기 디스크의 데이터를 선반입하는데 걸리는 시간을 산출하는 단계, (ii) 상기 영역(
Figure 112009067005641-pat00002
)에 반입된 데이터를, 제 2 버퍼 메모리로 이동하는데 걸리는 시간을 산출하는 단계, (iii) 상기 (ii)단계에서 산출된 시간에 기초하여, 상기 영역(
Figure 112009067005641-pat00003
)에 선반입되는 데이터를 반복하여 상기 제 2 버퍼 메모리로 이동시켜 상기 제 2 버퍼 메모리를 채우는데 걸리는 시간을 산출하는 단계, (iv) 제 1 버퍼 메모리 중에서, 상기 데이터가 제 1 버퍼 메모리에 선반입되는 동안, 상기 데이터의 재생 끊김을 방지하기 위하여 필요한 영역(
Figure 112009067005641-pat00004
)에 존재하는 데이터를 소모하는데 걸리는 시간을 산출하는 단계, (v) 상기 영역(
Figure 112009067005641-pat00005
)에 존재하는 데이터를 소모하는데 걸리는 시간이, 상기 영역(
Figure 112009067005641-pat00006
)에 상기 데이터를 선반입하는데 걸리는 시간, 상기 제 2 버퍼 메모리를 채우는데 걸리는 시간, 상기 디스크를 활성 모드로 동작시키는데 걸리는 시간(
Figure 112009067005641-pat00007
), 상기 디스크를 저전력 모드로 동작시키는데 걸리는 시간(
Figure 112009067005641-pat00008
) 및 상기 디스크의 탐색 시간()의 합보다 클 경우의, 상기 영역(
Figure 112009067005641-pat00010
)의 최소 값을 산출하는 단계, 및 (vi) 상기 산출된 영역(
Figure 112009067005641-pat00011
)의 최소 값에 기초하여, 상기 제 1 버퍼 메모리를 분할하는 단계를 포함하며, 상기 제 1 버퍼 메모리의 영역
Figure 112009067005641-pat00012
및 상기 제 2 버퍼 메모리에는 상기 디스크에서 재생될 데이터가 선반입되며, 상기 영역
Figure 112009067005641-pat00013
및 상기 제 2 버퍼 메모리에 상기 데이터의 선반입이 완료되는 때에 상기 디스크가 저전력 모드로 동작한다.
하드 디스크, 저전력, 에너지, DRAM, 플래시 메모리, 선반입, 영역, 분할

Description

동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법{MEMORY MANAGEMENT METHOD FOR REDUCING DISK ENERGY CONSUMPTION IN VIDEO PLAYBACK}
본 발명은 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법에 관한 것으로서, 보다 상세하게는, 하드 디스크의 데이터를 별도의 외장 메모리에 선반입하고, 내부 메모리에서 데이터가 선반입될 영역을 효과적으로 할당하는, 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법에 관한 것이다.
최근 동영상 데이터와 같이 크기가 큰 멀티미디어 데이터가 증가함에 따라 용량 대비 가격이 저렴한 하드 디스크를 사용하는 디바이스가 증가하고 있다. 이러한 디바이스들에서는 전력 소모를 감소시키는 것이 중요하며, 하드 디스크에서의 전력 소모가 디바이스의 전체 전력 소모 중 많은 부분을 차지하고 있다. 따라서, 디바이스의 동작 시간을 늘이기 위해서, 디바이스 내의 하드 디스크 전력 소모를 감소시키는 것이 무엇보다 중요시되고 있다.
일반적으로, 디스크의 소모 전력을 줄이기 위해, 디스크들은 상황에 따라 여러 가지 전력 소비 모드를 포함하는 다중 전력 모드(multiple power modes)를 가진 다. 예를 들어, 활성 모드에서는, 디스크의 플래터들(platters)이 회전하며 헤드는 데이터를 판독하거나 기록한다. 또한, 검색 모드에서는, 헤드가 검색을 수행하며, 아이들 모드에서는, 디스크가 전속력으로 회전하지만, 디스크 요구는 존재하지 않는다. 또한, 저전력 또는 대기 모드에서는, 디스크가 회전을 완전히 정지하고 다른 어떤 모드들에서보다 훨씬 적은 에너지를 소비한다. 따라서, 디스크를 가능한 오랫동안 저전력 모드에 두는 것이 유리하나, 저전력 모드에서는 데이터를 읽고 쓸 수가 없으며, 저전력 모드 진입을 위해서는 디스크의 끄고 켜는 스핀 업, 스핀 다운이 요구된다.
한편, 상용 미디어 재생기에서의 동영상 재생 방식은, 비디오 재생 시 지속적으로 동영상 데이터를 하드 디스크로부터 동영상 플레이어의 디코더에 공급하므로, 하드 디스크가 대기 모드로 진입 할 수 없었다. 또한, 하드 디스크를 저전력 모드로 전환하기 위해서는 동영상 플레이어가 요구하는 데이터를 DRAM에 미리 선반입하고, 디스크를 저전력 모드로 전환한 뒤, 디스크가 꺼져 있는 동안 DRAM에서 디코더로 데이터를 공급함으로써 비디오를 재생 시 디스크 소모 전력을 줄일 수 있었다. 도 1은 이와 같이 선반입하였을 때의 전력 모드 전환 사이클을 보여준다.
이때, 한번에 선반입한 데이터의 양이 많을수록 전력 감소 효과가 크므로, 가용가능한 DRAM의 크기가 디스크 전력 감소량을 결정한다. 그러나, 휴대용 멀티미디어 기기의 경우 DRAM의 용량이 제한적이기 때문에 선반입할 수 있는 데이터의 양도 작고, 하드 디스크가 저전력 모드로 동작하는 시간 짧을 수 밖에 없다.
또한, 종래의 하드 디스크의 데이터 선반입 방법은 도 2에 도시된 바와 같 이, DRAM 버퍼를 두 개의 고정된 영역으로 분할하였으며, 그 중 하나의 영역을 선반입 데이터를 저장하는 영역으로 사용하고, 나머지 영역을 선반입된 데이터를 동영상 재생기에 제공하는 역할을 하는 영역으로 사용하였다. 그러나, 이러한 방법은 DRAM을 2개의 동일 크기의 버퍼로 정적으로 이분할하여 사용하기 때문에 메모리 활용률이 떨어지며, 재생이 끊기는 문제가 자주 발생하였다
나아가, DRAM만을 선반입 버퍼로 사용하기 때문에 DRAM의 크기가 제한적이었으며, 이로 인하여, 동영상 재생기의 디코더에 지속적으로 동영상 데이터가 공급되지 않을 경우에 동영상 재생의 끊기는 현상이 발생할 수 있었다.
따라서, 선반입되는 데이터의 양을 최대화하고, 선반입 과정에서 소모되는 시간 및 선반입에 필요한 최소한의 데이터의 양을 정확하게 예측하여 디스크가 저전력 모드에 있는 시간을 연장할 수 있는, 디스크 소모 에너지 감소를 위한 메모리 관리 방법이 절실히 요구되고 있다.
본 발명의 일부 실시예는, 하드 디스크의 데이터를 별도의 외장 메모리에 선반입하고, 내부 메모리에서 데이터가 선반입될 영역을 정확하게 산출하여, 하드 디스크의 데이터를 선반입할 수 있는, 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법을 제공한다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은, (i) 제 1 버퍼 메모리 중 디스크의 데이터가 반입되는 영역(
Figure 112009067005641-pat00014
)으로 상기 디스크의 데이터를 선반입하는데 걸리는 시간을 산출하는 단계, (ii) 상기 영역(
Figure 112009067005641-pat00015
)에 반입된 데이터를, 제 2 버퍼 메모리로 이동하는데 걸리는 시간을 산출하는 단계, (iii) 상기 (ii)단계에서 산출된 시간에 기초하여, 상기 영역(
Figure 112009067005641-pat00016
)에 선반입되는 데이터를 반복하여 상기 제 2 버퍼 메모리로 이동시켜 상기 제 2 버퍼 메모리를 채우는데 걸리는 시간을 산출하는 단계, (iv) 제 1 버퍼 메모리 중에서, 상기 데이터가 제 1 버퍼 메모리에 선반입되는 동안, 상기 데이터의 재생 끊김을 방지하기 위하여 필요한 영역(
Figure 112009067005641-pat00017
)에 존재하는 데이터를 소모하는데 걸리는 시간을 산출하는 단계, (v) 상기 영역(
Figure 112009067005641-pat00018
)에 존재하는 데이터를 소 모하는데 걸리는 시간이, 상기 영역(
Figure 112009067005641-pat00019
)에 상기 데이터를 선반입하는데 걸리는 시간, 상기 제 2 버퍼 메모리를 채우는데 걸리는 시간, 상기 디스크를 활성 모드로 동작시키는데 걸리는 시간(
Figure 112009067005641-pat00020
), 상기 디스크를 저전력 모드로 동작시키는데 걸리는 시간(
Figure 112009067005641-pat00021
) 및 상기 디스크의 탐색 시간(
Figure 112009067005641-pat00022
)의 합보다 클 경우의, 상기 영역(
Figure 112009067005641-pat00023
)의 최소 값을 산출하는 단계, 및 (vi) 상기 산출된 영역(
Figure 112009067005641-pat00024
)의 최소 값에 기초하여, 상기 제 1 버퍼 메모리를 분할하는 단계를 포함하며, 상기 제 1 버퍼 메모리의 영역
Figure 112009067005641-pat00025
및 상기 제 2 버퍼 메모리에는 상기 디스크에서 재생될 데이터가 선반입되며, 상기 영역
Figure 112009067005641-pat00026
및 상기 제 2 버퍼 메모리에 상기 데이터의 선반입이 완료되는 때에 상기 디스크가 저전력 모드로 동작하는 것인 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법을 제공할 수 있다.
전술한 본 발명의 과제 해결 수단에 의하면, 하드 디스크의 데이터를 선반입할 수 있는 영역을 최대한 확보하면서도, 동영상 데이터의 재생 시의 끊김을 효과적으로 방지할 수 있도록 메모리의 선반입 영역을 정확하게 산출할 수 있다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하, 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
본 발명의 일 실시예에서 사용한 선반입 모델은 크게 두 가지로 표현될 수 있다. 첫번째는 DOM(DRAM Only Model)으로써, 도 3과 같이, 디코더에 적시에 데이터를 공급하지 못함으로써 야기되는 비디오 끊김 현상을 방지하기 위해 선반입 과정에서 필요한 최소한의 데이터를 저장하는 영역
Figure 112009067005641-pat00027
와 이를 제외한 영역인
Figure 112009067005641-pat00028
에 선반입하는 모델. 그리고 두번째는, 도 4와 같이, DRAM 버퍼(제 1 버퍼 메모리)에 추가적으로 플래시 메모리(제 2 버퍼 메모리)를 사용하는 형태의 모델인 FMM(Flash Memory Model)으로 표현 가능하며, 두 번째 모델 역시
Figure 112009067005641-pat00029
영역을 제 외한
Figure 112009067005641-pat00030
영역과 플래시 메모리 영역에 선반입이 가능하다. 또한, DRAM은 동영상 재생 장치의 내부 메모리일 수 있으며, 플래시 메모리는 동영상 재생 장치의 외부 메모리로서 장치에 탈부착가능한 메모리일 수 있다. 두 모델 다 영역에 데이터를 다 소모하고 오직 영역에 데이터가 남겨지기 시작하였을 경우 디스크를 스핀 업하고 데이터를 선반입한다.
Figure 112009067005641-pat00031
영역의 크기가 클수록 많은 데이터의 선반입이 가능하여 디스크를 저전력 모드로 오랫동안 동작시킬 수 있으나, 너무 늦게 디스크를 스핀 업하면, 디코더에 데이터 공급이 늦어져서, 영화가 끊기는 현상이 발생할 수 있다. 이를 극복하기 위해서 본 발명의 일 실시예에서는 선반입에 필요한 최소 시간을 미리 예측하고 저전력 모드로 동작중인 하드 디스크를 다시 활성 모드로 동작하게 해야하는 시점(스핀 업)과 활성 모드로 동작중인 하드 디스크를 다시 저전력 모드로 동작하게 해야 하는 시점(스핀 다운)을 예측하여 최적화된 선반입이 가능하도록 한다.
본 발명의 설명에서 사용된 약어들과 약어들이 갖는 의미는 아래 표 1과 같다.
<표 1: 약어>
약어 설명
공통으로 사용되는 약어
Figure 112009067005641-pat00032
DRAM 버퍼의 크기
Figure 112009067005641-pat00033
플래시 버퍼의 크기
Figure 112009067005641-pat00034
메모리 뱅크의 크기
Figure 112009067005641-pat00035
디스크 전송률
Figure 112009067005641-pat00036
플래시 메모리 쓰기 대역폭
Figure 112009067005641-pat00037
DRAM 메모리 대역폭
Figure 112009067005641-pat00038
디스크 스핀 업, 스핀 다운, 탐색, 회전 지연 시간
Figure 112009067005641-pat00039
디스크 스핀 업, 스핀 다운 에너지
Figure 112009067005641-pat00040
디스크가 저전력, 유휴, 탐색, 활성모드에 소비하는 전력
Figure 112009067005641-pat00041
메모리 뱅크가 nap, act 모드에서 소비하는 전력
Figure 112009067005641-pat00042
DRAM에 한 바이트를 읽거나 쓰는데 소모되는 에너지
Figure 112009067005641-pat00043
플래시 메모리에서 한 바이트를 읽는데 소모되는 에너지
Figure 112009067005641-pat00044
플래시 메모리에서 한 바이트를 쓰는데 소모되는 에너지
Figure 112009067005641-pat00045
동영상의 비트율, 동영상의 길이
DOM에서 사용되는 약어
Figure 112009067005641-pat00046
한 주기의 길이
Figure 112009067005641-pat00047
한 주기
Figure 112009067005641-pat00048
에서 DRAM이 소모한 에너지
Figure 112009067005641-pat00049
한 주기
Figure 112009067005641-pat00050
에서 Disk가 소모한 에너지
Figure 112009067005641-pat00051
전체 동영상 재생에서 소모한 에너지
Figure 112009067005641-pat00052
디스크 스핀 업과 선반입하는 동안 필요한
최소한의 데이터 양
FMM에서 사용되는 약어
Figure 112009067005641-pat00053
한 주기의 길이
Figure 112009067005641-pat00054
한 주기
Figure 112009067005641-pat00055
에서 DRAM이 소모한 에너지
Figure 112009067005641-pat00056
한 주기
Figure 112009067005641-pat00057
에서 Disk가 소모한 에너지
Figure 112009067005641-pat00058
한 주기
Figure 112009067005641-pat00059
에서 플래시 메모리가 소모한 에너지
Figure 112009067005641-pat00060
전체 동영상 재생에서 소모한 에너지
Figure 112009067005641-pat00061
디스크 스핀 업과 선반입하는 동안 필요한 최소한의 데이터 양
본 발명의 일 실시예에서 제안하는 두가지 방법에서, 앞서 언급한 비디오 끊김 현상을 방지하기 위해 필요한 데이터의 데이터 양(
Figure 112009067005641-pat00062
의 크기와 같은 의미를 갖는다.)을 DOM의 경우
Figure 112009067005641-pat00063
, FMM의 경우
Figure 112009067005641-pat00064
라고 하며, 이하에서는, 본 발명의 일 실시예에 따른
Figure 112009067005641-pat00065
Figure 112009067005641-pat00066
의 최소 값을 산출하기 위한 방법을 설명하기로 한다.
DOM -
Figure 112009067005641-pat00067
의 계산법
DOM의 경우 도 3에서 버퍼의 크기
Figure 112009067005641-pat00068
Figure 112009067005641-pat00069
와 같으며,
Figure 112009067005641-pat00070
에 대한 선반입이 완료되는 순간 하드 디스크는 저전력 모드로 동작하게 된다.
Figure 112009067005641-pat00071
의 크기가 너무 작을 경우에 비디오 끊김 현상이 발생하게 된다. 하드 디스 크로부터
Figure 112009067005641-pat00072
영역에 데이터를 선반입하는데 소모되는 시간은 하드 디스크의 전송률을
Figure 112009067005641-pat00073
이라고 할 때
Figure 112009067005641-pat00074
와 같고,
Figure 112009067005641-pat00075
영역에 선반입된 동영상 데이터를 소모하는데 걸리는 시간은
Figure 112009067005641-pat00076
와 같다.
따라서,
Figure 112009067005641-pat00077
를 만족하는
Figure 112009067005641-pat00078
의 최소값을 다음과 같이 산출할 수 있다.
Figure 112009067005641-pat00079
FMM -
Figure 112009067005641-pat00080
의 계산법
FMM의 경우 추가적으로 플래시 메모리를 사용하는 모델이다. FMM의 경우에는 별도의 외장 메모리를 플래시 메모리로 사용할 수 있다. 도 4에서와 같이 플래시 메모리에 데이터를 선반입하기 위해서는 하드 디스크로부터 우선 DRAM의
Figure 112009067005641-pat00081
를 제외한 영역, 즉
Figure 112009067005641-pat00082
의 영역에 선반입 후 이 데이터를 다시 플래시 메모리에 선반입하며, 플래시 메모리의 영역과
Figure 112009067005641-pat00083
영역에 대한 데이터의 선반입이 종료되는 순간 하드 디스크는 저전력 모드로 동작하게 된다.
Figure 112009067005641-pat00084
영역의 크기는
Figure 112009067005641-pat00085
로 나타낼 수 있고, 하드 디스크에서 DRAM 버퍼의 영역 중
Figure 112009067005641-pat00086
를 제외한 영역에 데이터를 선반입하는데 필요한 시간은
Figure 112009067005641-pat00087
이며, 이 데이터를 다시 플래시 메모리에 선반입하는데 소모되는 시간은
Figure 112009067005641-pat00088
이다. 이러한 과정을
Figure 112009067005641-pat00089
만큼 반복하게 된다.
도 4의 (5)에서와 같이 플래시 메모리에 선반입 되는 데이터의 총량이 항상
Figure 112009067005641-pat00090
영역의 배수만큼이 될 수는 없다. 이와 같은 경우에는 플래시 메모리의 나머지 영역에 대해서 추가적으로 선반입을 수행하도록 하여야 하는데 이때 추가적으로 선반입에 필요한 시간을
Figure 112009067005641-pat00091
와 같이 산출할 수 있다.
따라서, 상기 영역(
Figure 112009067005641-pat00092
)에 존재하는 데이터를 소모하는데 걸리는 시간을
Figure 112009067005641-pat00093
과 같이 산출하고,
Figure 112009067005641-pat00094
와 같은 조건을 만족하는
Figure 112009067005641-pat00095
의 최소값을 다음과 같이 산출할 수 있다.
Figure 112009067005641-pat00096
따라서, 본 발명의 일 실시예에 따른 각 모델에서는, 산출된
Figure 112009067005641-pat00097
또는
Figure 112009067005641-pat00098
값에 기초하여, 하드 디스크의 전력 소모를 최소화할 수 있도록 DRAM을 효과적으로 이분할할 수 있다. 나아가, 하드 디스크에 연결된 메모리의 종류가 다르더라도, 연결된 메모리의 특성을 반영하여 DRAM의 영역을 최적으로 분할할 수 있게 된다.
이하에서는, 본 발명의 일 실시예에 따른 각 모델에서 소모하는 에너지를 하드 디스크가 소모하는 에너지와 DRAM이 소모하는 에너지, 그리고 FMM의 경우 추가적으로 플래시 메모리가 소모하는 에너지로 구분하여 산출하였다.
DOM - 하드 디스크가 소모하는 에너지
재생 비트율을 r이라고 하고 도 1에서의 전력 소모 주기 한 싸이클을
Figure 112009067005641-pat00099
라고 한다면 다음과 같이 한 주기를 계산 할 수 있다.
Figure 112009067005641-pat00100
한 주기에서 소모되는 데이터의 양은
Figure 112009067005641-pat00101
와 같다고 할 때 하드 디스크가 저전력 모드로 동작하는 시간은
Figure 112009067005641-pat00102
이라고 할 수 있다. 스핀 업 에너지와 스핀 다운 에너지, 그리고 탐색 시간과 회전 지연 시간을 고려하였을 때 하드 디스크가 한 주기에서 소모하는 에너지는 다음과 같이 산출 가능하다.
Figure 112009067005641-pat00103
DOM - DRAM 이 소모하는 에너지
DRAM의 경우, 소모하는 에너지를 크게 둘로 구분 할 수 있다. 첫째, 정적 에너지(static energy)는 메모리가 유휴 모드(idle mode)일 때 소모하는 에너지를 의미하고, 둘째, 동적 에너지는 메모리가 요청에 의해 데이터를 제공 할 때 소모하는 에너지를 의미한다. 정적 에너지 소모의 경우에는 유휴 모드에서 동작한 시간에 의존적이고, 동적 에너지의 경우에는 메모리로의 접근 횟수에 의존적이다. 본 발명의 시뮬레이션에서 사용한 DRAM은 Rambus사의 128Mbit DRAM 모델인 RDRAM을 사용하였으며, 각 모델에서 RDRAM이 소모하는 에너지는 도 5와 같다.
도 5에 도시된 바와 같이, 읽기 및 쓰기 연산을 위해서는 어텐션 모드(attention mode)를 거쳐야 하는데 어텐션 모드에서의 에너지 소모는 312mW이며, 읽기 및 쓰기 연산에 소모되는 에너지는 1325mW이다.
Figure 112009067005641-pat00104
을 RDRAM의 메모리 뱅크(bank) 크기라고 하고,
Figure 112009067005641-pat00105
를 읽기 및 쓰기 연산 동안 뱅크가 소모한 전력,
Figure 112009067005641-pat00106
을 냅 모드(nap mode)에서 동작하는 동안 뱅크가 소모한 전력이라고 할 때 뱅크란 RDRAM의 관리가 가능한 최소의 단위이다.
DOM의 한 주기 동안 읽거나 쓰여진 데이터의 양을
Figure 112009067005641-pat00107
이라고 한다면 한 주기 동안 소모된 접근 시간(access time)은
Figure 112009067005641-pat00108
으로 표현 가능하다. 따라서, 한 주기동안 접근 시간을 제외한 나머지의 시간은 유휴 모드에서 소모한 시간과 같으며,
Figure 112009067005641-pat00109
으로 표현될 수 있다. 활성화된 뱅크의 개수는
Figure 112009067005641-pat00110
으로 계산되며, 정적 에너지는
Figure 112009067005641-pat00111
으로 표현될 수 있다. 한 바이트를 읽거나 쓰는데 요구되는 에너지를
Figure 112009067005641-pat00112
라고 할 때, 정적 에너지는
Figure 112009067005641-pat00113
가 된다. 따라서 한 주기 동안 DRAM이 소모한 에너지인
Figure 112009067005641-pat00114
는 다음과 같다.
Figure 112009067005641-pat00115
DOM - 전체 에너지 소모
한 주기
Figure 112009067005641-pat00116
동안 DOM이 소모한 에너지는
Figure 112009067005641-pat00117
와 같다. 그리고, 전체 주기의 횟수는
Figure 112009067005641-pat00118
로 구할 수 있으며, DOM의 전체 주기 동안 소모한 에너지
Figure 112009067005641-pat00119
는 다음과 같이 산출 가능하다.
Figure 112009067005641-pat00120
FMM - 하드 디스크가 소모한 에너지
FMM에서 한 주기를 의미하는
Figure 112009067005641-pat00121
는, 동영상의 재생 비트율을 의미하는 r, 선반입된 데이터의 양을 의미하는
Figure 112009067005641-pat00122
와의 연산으로 나타낼 수 있으며 다음과 같다.
Figure 112009067005641-pat00123
디스크가 활성 모드로 동작하는 시간은 선반입이 이루어지는 시간과 동일하며, 선반입이 이루어지는 시간은
Figure 112009067005641-pat00124
와 같다. DOM과 다르게 FMM의 경우
Figure 112009067005641-pat00125
만큼 유휴 모드에서의 동작시간이 발생하게 된다. 그리고, 저전력 모드에서의 동작시간은 선반입된 데이터를 디코더에게 공급 가능한 시간과 동일하며,
Figure 112009067005641-pat00126
로 표현된다.
따라서, 한 주기에서 하드 디스크가 소모하는 에너지를 의미하는
Figure 112009067005641-pat00127
는 다음과 같다.
Figure 112009067005641-pat00128
FMM - DRAM 이 소모하는 에너지
FMM의 경우, 플래시 메모리에 선반입되는 모든 데이터는 DRAM을 거치기 때문에 DRAM의 동적 에너지를 산출하는 과정에서 읽거나 쓰여지는 데이터의 양은
Figure 112009067005641-pat00129
이며, 소모되는 시간은
Figure 112009067005641-pat00130
으로 표현되며, 동적 에너지는
Figure 112009067005641-pat00131
와 같다. 정적 에너지의 경우, 한 주기의 시간
Figure 112009067005641-pat00132
에서 동적 에너지를 소모한 시간을 의미하는
Figure 112009067005641-pat00133
를 제외한 시간, 즉,
Figure 112009067005641-pat00134
과 같다.
그러므로, 한 주기 동안 DRAM이 소모한 에너지를 의미하는
Figure 112009067005641-pat00135
는 다음과 같다.
Figure 112009067005641-pat00136
FMM - 플래시 메모리에서 소모한 에너지
FMM의 경우, DOM과 다르게 플래시 메모리를 추가적으로 사용하기 때문에 이를 고려해 주어야 한다. 한 바이트를 읽거나 쓰는데 소모되는 에너지를 각각
Figure 112009067005641-pat00137
라고 한다면, 플래시 메모리에서 소모한 에너지
Figure 112009067005641-pat00138
는 다음과 같다.
Figure 112009067005641-pat00139
FMM - 전체 에너지 소모
한 주기
Figure 112009067005641-pat00140
동안 소모한 에너지는
Figure 112009067005641-pat00141
로 나타낼 수 있으며, 주기의 반복 횟수는
Figure 112009067005641-pat00142
가 된다. 따라서, 전체 주기 동안 FMM이 소모한 에너지를 의미하는
Figure 112009067005641-pat00143
는 다음과 같다.
Figure 112009067005641-pat00144
<시뮬레이션 결과>
DOM 과 기존 방법인 더블 버퍼링의 에너지 소모 비교.
시뮬레이션을 위하여 표2와 같이 Fujitsu사의 2.5인치 하드 디스크의 실제 사양을 사용하였으며, 표3과 같은 해상도와 재생 비트율을 갖는 영화의 사양을 토대로 시뮬레이션을 하였다.
표 2 - 하드 디스크의 실제 사양
Figure 112009067005641-pat00145
표 3 - 시뮬레이션에 사용된 동영상의 특징
Figure 112009067005641-pat00146
시뮬레이션의 결과, 종래의 더블 버퍼링과 비교하여 DOM의 경우 도 6에서와 같이 18% ~ 33%의 에너지 소모 감소 효과가 있음을 확인할 수 있었다.
FMM - DOM 의 에너지 소모 비교.
FMM과 DOM의 에너지 소모 시뮬레이션 결과, 도 7에서와 같이, 최대 86%의 에너지 소모 감소 효과가 있음을 확인 할 수 있었다. 도 7에서, 플래시 메모리 버퍼의 크기가 0인 것이 DOM을 의미한다. 도 7a에서, DOM의 경우에 평균 비트율이 4850.1 kb/s인 경우 비디오 끊김 현상을 방지하기 위한 최소한의 데이터 양을 의미하는
Figure 112009067005641-pat00147
를 만족 시켜주지 못하기 때문에, 동영상의 재생이 불가능하므로 시뮬레이션의 결과에서 제외하였다. 평균 재생 비트율이 2057.6 kb/s인 동영상을 재생할 때 플래시 메모리를 2MB만 추가해주더라도 에너지의 감소 효율이 약 40%에 가까우며, 이를 통해 플래시 메모리 버퍼를 추가적으로 사용하는 것이 효율적이라는 사실을 알 수 있었다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨 터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
도 1은, 상용 미디어 재생기에서의 동영상 재생 방식의 전력 모드 전환 사이클을 도시한 도면.
도 2는, 종래의 하드 디스크의 데이터 선반입 방법을 도시한 도면.
도 3 및 도 4는, 본 발명의 일 실시예에서 따른 DOM(DRAM Only Model) 모델에서의 데이터 선반입 과정을 도시한 도면.
도 4는, 본 발명의 일 실시예에 따른 FMM(Flash Memory Model) 모델에서의 데이터 선반입 과정을 도시한 도면.
도 5는, 본 발명의 일 실시예에 따른 시뮬레이션에서 사용된 Rambus사의 128Mbit DRAM(모델명: RDRAM)이 각각의 동작 모드에서 소모하는 에너지를 도시한 도면.
도 6a 내지 도 6c는, 본 발명의 일 실시예에 따른 DOM(DRAM Only Model)모델에서의 에너지 소모량 및 종래의 더블 버퍼링 방법에서의 에너지 소모량을 비교한 그래프.
도 7a 내지 도 7d는, 본 발명의 일 실시예에 따른 DOM(DRAM Only Model) 및 FMM(Flash Memory Model) 모델에서의 에너지 소모량을 비교한 그래프.

Claims (4)

  1. 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법에 있어서,
    (i) 제 1 버퍼 메모리 중 디스크의 데이터가 선반입되는 영역(
    Figure 112009067005641-pat00148
    )으로 상기 디스크의 데이터를 선반입하는데 걸리는 시간을 산출하는 단계,
    (ii) 상기 영역(
    Figure 112009067005641-pat00149
    )에 반입된 데이터를, 제 2 버퍼 메모리로 이동하는데 걸리는 시간을 산출하는 단계,
    (iii) 상기 (ii)단계에서 산출된 시간에 기초하여, 상기 영역(
    Figure 112009067005641-pat00150
    )에 선반입되는 데이터를 반복하여 상기 제 2 버퍼 메모리로 이동시켜 상기 제 2 버퍼 메모리를 채우는데 걸리는 시간을 산출하는 단계,
    (iv) 상기 제 1 버퍼 메모리 중에서, 상기 데이터가 상기 제 1 버퍼 메모리에 선반입되는 동안 재생 끊김 현상을 방지하기 위하여 필요한 영역(
    Figure 112009067005641-pat00151
    )에 존재하는 데이터를 소모하는데 걸리는 시간을 산출하는 단계,
    (v) 상기 영역(
    Figure 112009067005641-pat00152
    )에 존재하는 데이터를 소모하는데 걸리는 시간이, 상기 영역(
    Figure 112009067005641-pat00153
    )에 상기 데이터를 선반입하는데 걸리는 시간, 상기 제 2 버퍼 메모 리를 채우는데 걸리는 시간, 상기 디스크를 활성 모드로 동작시키는데 걸리는 시간(
    Figure 112009067005641-pat00154
    ), 상기 디스크를 저전력 모드로 동작시키는데 걸리는 시간(
    Figure 112009067005641-pat00155
    ) 및 상기 디스크의 탐색 시간(
    Figure 112009067005641-pat00156
    )의 합보다 클 경우의, 상기 영역(
    Figure 112009067005641-pat00157
    )의 최소 값을 산출하는 단계 및
    (vi) 상기 산출된 영역(
    Figure 112009067005641-pat00158
    )의 최소 값에 기초하여, 상기 제 1 버퍼 메모리를 분할하는 단계
    를 포함하며,
    상기 제 1 버퍼 메모리의 영역
    Figure 112009067005641-pat00159
    및 상기 제 2 버퍼 메모리에는 상기 디스크에서 재생될 데이터가 선반입되고, 상기 영역
    Figure 112009067005641-pat00160
    및 상기 제 2 버퍼 메모리에 상기 데이터의 선반입이 완료되는 때에 상기 디스크가 저전력 모드로 동작하는 것인 메모리 관리 방법.
  2. 제 1 항에 있어서,
    상기 제 1 버퍼 메모리의 크기(
    Figure 112009067005641-pat00161
    ), 상기 제 2 버퍼 메모리의 크기(
    Figure 112009067005641-pat00162
    ), 상기 제 2 버퍼 메모리의 쓰기 대역폭 값(
    Figure 112009067005641-pat00163
    ), 상기 동영상 데이 터의 비트 재생율(
    Figure 112009067005641-pat00164
    ) 및 상기 디스크의 전송률(
    Figure 112009067005641-pat00165
    )에 기초하여,
    상기 (i) 단계에서는, 상기 디스크의 데이터를 상기 영역
    Figure 112009067005641-pat00166
    로 반입하는데 걸리는 시간을
    Figure 112009067005641-pat00167
    로 산출하고,
    상기 (ii) 단계에서는, 상기 영역(
    Figure 112009067005641-pat00168
    )에 반입된 데이터를 상기 제 2 버퍼 메모리로 이동하는데 걸리는 시간을
    Figure 112009067005641-pat00169
    로 산출하며,
    상기 (iii) 단계에서는, 상기 제 2 버퍼 메모리를 채우는데 걸리는 시간을
    Figure 112009067005641-pat00170
    로 산출하는 것인 메모리 관리 방법.
  3. 제 2 항에 있어서,
    상기 (iv) 단계에서는,
    상기 영역(
    Figure 112009067005641-pat00171
    )에 존재하는 데이터를 소모하는데 걸리는 시간을
    Figure 112009067005641-pat00172
    로 산출하며,
    상기 (v) 단계에서는,
    Figure 112009067005641-pat00173
    을 만족하는 상기 영역(
    Figure 112009067005641-pat00174
    )의 최소 값을 산출하는 것인 메모리 관리 방법.
  4. 제 1 항에 있어서,
    상기 제 1 버퍼 메모리는 상기 데이터를 재생하는 장치의 내부 메모리로서 DRAM이며, 상기 제 2 버퍼 메모리는 상기 데이터를 재생하는 장치의 외장 메모리로서 플래시 메모리인 것인 메모리 관리 방법.
KR1020090104543A 2009-10-30 2009-10-30 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법 KR101031338B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090104543A KR101031338B1 (ko) 2009-10-30 2009-10-30 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090104543A KR101031338B1 (ko) 2009-10-30 2009-10-30 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법

Publications (1)

Publication Number Publication Date
KR101031338B1 true KR101031338B1 (ko) 2011-04-29

Family

ID=44050613

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090104543A KR101031338B1 (ko) 2009-10-30 2009-10-30 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법

Country Status (1)

Country Link
KR (1) KR101031338B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101055845B1 (ko) 2010-07-26 2011-08-11 인하대학교 산학협력단 저전력 스트리밍 데이터 재생장치
KR101314594B1 (ko) 2012-01-03 2013-10-14 인하대학교 산학협력단 동영상 데이터 선반입 방법 및 이를 이용한 동영상 재생 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000034442A (ko) * 1998-11-30 2000-06-26 전주범 데이터 재생용 버퍼링 시스템
KR20050010594A (ko) * 2003-07-21 2005-01-28 원유집 데이터 재생 방법 및 시스템
US20070097816A1 (en) 2003-11-18 2007-05-03 Koninklijke Philips Electronics N.V. Determining buffer refilling time when playing back variable bit rate media streams
JP2007157216A (ja) 2005-12-02 2007-06-21 Matsushita Electric Ind Co Ltd ディスク記録再生装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000034442A (ko) * 1998-11-30 2000-06-26 전주범 데이터 재생용 버퍼링 시스템
KR20050010594A (ko) * 2003-07-21 2005-01-28 원유집 데이터 재생 방법 및 시스템
US20070097816A1 (en) 2003-11-18 2007-05-03 Koninklijke Philips Electronics N.V. Determining buffer refilling time when playing back variable bit rate media streams
JP2007157216A (ja) 2005-12-02 2007-06-21 Matsushita Electric Ind Co Ltd ディスク記録再生装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101055845B1 (ko) 2010-07-26 2011-08-11 인하대학교 산학협력단 저전력 스트리밍 데이터 재생장치
KR101314594B1 (ko) 2012-01-03 2013-10-14 인하대학교 산학협력단 동영상 데이터 선반입 방법 및 이를 이용한 동영상 재생 장치

Similar Documents

Publication Publication Date Title
US7821864B2 (en) Power management of memory via wake/sleep cycles
KR101335792B1 (ko) 캐쉬를 탑재한 정보 장치 및 그것을 이용한 정보 처리 장치와, 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
US7549021B2 (en) Enhanced data integrity using parallel volatile and non-volatile transfer buffers
US20190251023A1 (en) Host controlled hybrid storage device
US6876593B2 (en) Method and apparatus for partial refreshing of DRAMS
US20060080501A1 (en) HDD having both dram and flash memory
CN1312590C (zh) 用以降低功率的大容量存储缓存处理
CN100426261C (zh) 一种高速存储器预读方法及装置
CN1890736B (zh) 节能方法与系统
US20140237190A1 (en) Memory system and management method therof
JP4589335B2 (ja) 可変ビットレートメディアストリーム再生時のバッファ再充填時間の決定
CN108572799B (zh) 一种双向哈希链表的异构内存系统数据页迁移方法
US7984313B2 (en) Method, apparatus and system for reducing power consumption involving data storage devices
US7283443B2 (en) Power saving method for portable streaming devices
Chai et al. Efficient data migration to conserve energy in streaming media storage systems
KR101031338B1 (ko) 동영상 재생 시 디스크 소모 에너지 감소를 위한 메모리 관리 방법
CN101807212B (zh) 嵌入式文件系统的缓存方法及嵌入式文件系统的缓存装置
CN107506139A (zh) 一种面向相变存储器的写请求优化装置
JP2002351741A (ja) 半導体集積回路装置
JP2007272721A (ja) ストレージ装置及びその制御方法
Ryu et al. Design and implementation of a disk energy saving scheme for media players which use hybrid disks
KR101162565B1 (ko) 데이터 저장 장치 및 데이터 액세스 요청 처리 방법
US8068373B1 (en) Power management of memory via wake/sleep cycles
KR101142413B1 (ko) 동영상 재생 시 디스크 소모 에너지 감소를 위한 데이터 선반입 방법
CN111984549B (zh) 一种数据按照对象拆分的分级存储方法及系统

Legal Events

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

Payment date: 20140303

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150216

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160404

Year of fee payment: 6