1 |
1
SSD 컨트롤러에 의해 수행되는 플래시 메모리 관리 방법에 있어서,플래시 변환 층(Flash Translation Layer, 이하 'FTL'라 칭함)의 읽기/쓰기 특성과 관련된 FTL 요소의 설정 기준을 마련하는 단계; 및상기 설정 기준에 기초하여, 플래시 메모리에 입력할 데이터의 특성에 따라 상기 FTL 요소를 설정하는 단계;를 포함하는 플래시 메모리 관리 방법
|
2 |
2
제1항에 있어서,상기 FTL 요소는, 병렬성, 매핑 단위 및 결합성을 포함하며,상기 FTL 요소의 설정 기준을 마련하는 단계는,상기 FTL이 동시에 접속 가능한 병렬 채널의 개수에 기초하여 병렬성(multi-channel parallelism)의 설정 기준을 마련하는 단계;상기 FTL이 주소 변환에 사용하는 매핑 단위(mapping-level)의 설정 기준을 마련하는 단계; 및상기 매핑 단위를 분석한 결과에 따라 결합성(associativity: log block / data block ratio)의 설정 기준을 마련하는 단계;를 포함하는 플래시 메모리 관리 방법
|
3 |
3
제2항에 있어서,상기 FTL 요소의 설정 기준을 마련하는 단계는,상기 병렬성, 상기 매핑 단위 및 상기 결합성 각각과 입력되는 데이터 사이의 상관관계를 결정하는 단계;를 더 포함하는 플래시 메모리 관리 방법
|
4 |
4
제1항에 있어서,상기 FTL 요소를 설정하는 단계는,상기 데이터의 읽기와 쓰기 비율을 분석하는 단계; 및상기 비율을 분석한 결과에 기초하여 상기 설정 기준에 따라, 상기 데이터의 병렬성을 결정하는 단계;를 포함하는 플래시 메모리 관리 방법
|
5 |
5
제4항에 있어서,상기 데이터의 병렬성을 결정하는 단계는,상기 데이터가 읽기 의존적일 경우, 전체 채널을 병렬 채널로 사용하고, 상기 데이터가 읽기 의존적이지 않은 경우, 상기 데이터의 평균 쓰기 크기에 기초하여 결정된 채널의 개수만큼을 상기 병렬 채널로 사용하는 플래시 메모리 관리 방법
|
6 |
6
제4항에 있어서,상기 FTL 요소를 설정하는 단계는,상기 비율을 분석한 결과에 기초하여, 매핑 단위를 결정하는 단계;를 더 포함하는 플래시 메모리 관리 방법
|
7 |
7
제6항에 있어서,상기 매핑 단위를 결정하는 단계는,상기 데이터의 평균 쓰기 크기가 제1 문턱값 보다 클 경우, 블록 매핑 단위를 상기 매핑 단위로 결정하는 단계;를 포함하는 플래시 메모리 관리 방법
|
8 |
8
제6항에 있어서,상기 매핑 단위를 결정하는 단계는,상기 데이터의 평균 쓰기 크기가 제2 문턱값 보다 작을 경우, 페이지 매핑 단위를 상기 매핑 단위로 결정하는 단계;를 포함하는 플래시 메모리 관리 방법
|
9 |
9
제6항에 있어서,상기 매핑 단위를 결정하는 단계는,상기 데이터의 평균 쓰기 크기를 분석하여 제1 문턱값 보다 작고, 제2 문턱값 보다 큰 경우, 혼합 매핑(hybrid mapping) 방식을 결정하는 단계;를 포함하는 플래시 메모리 관리 방법
|
10 |
10
제9항에 있어서,상기 혼합 매핑(hybrid mapping) 방식을 결정하는 단계는,상기 데이터의 쓰기 빈도 분포(hot-cold distribution)의 균일성을 분석하여 상기 혼합 매핑 방식에서의 결합성(associativity)을 나타내는 혼합 비율을 보정하는 플래시 메모리 관리 방법
|
11 |
11
플래시 변환 층, 버퍼 매니저(Buffer Manager)를 포함하는 SSD(Solid State Drive, SSD) 컨트롤러에 있어서,상기 플래시 변환 층(Flash Translation Layer, 이하 'FTL'라 칭함)의 특성과 관련된 FTL 요소를 분석하는 FTL 특성 분석자; 및상기 FTL 요소를 분석한 결과에 기초하여, 데이터 특성에 따라 상기 FTL 요소를 설정하는 FTL 특성 선택자를 포함하는 SSD 컨트롤러
|