1 |
1
호스트의 논리 주소 스트림들과 불휘발성 메모리 장치들의 물리 주소 스트림들 사이의 맵핑 정보를 관리하는 플래시 변환 계층(FTL) 구조에 있어서,상기 호스트로부터 수신되는 입출력 요청들에 대한 전체 논리 주소 공간을 n(n은 정수)등분하여 n개의 가상 논리 주소 스트림들로 설정하고, 상기 n개의 가상 논리 주소 스트림들의 선택된 스트림 속성에 따라 상기 n개의 가상 논리 주소 스트림들을 k (k는 n보다 작은 수)개의 물리 주소 스트림들에 맵핑하는 예비 클러스터 맵핑 테이블을 생성하도록 구성되는 스트림 클러스터링 매니저 모듈; 및상기 예비 클러스터 맵핑 테이블에 대하여 적응적 k-평균 클러스터링 알고리즘을 수행하여, 상기 n개의 가상 논리 주소 스트림들을 c(c는 k 보다 작은 수)개의 물리 주소 스트림들에 맵핑하는 축약된 클러스터 맵핑 테이블을 생성하도록 구성되는 적응적 k-평균 클러스터링 알고리즘 모듈을 포함하는 플래시 변환 계층 구조
|
2 |
2
제1항에 있어서, 상기 플래시 변환 계층 구조는,상기 축약된 클러스터 맵핑 테이블에 대하여 DFTL(Demand-based FTL) 방식을 이용하여 상기 축약된 클러스터 맵핑 테이블에서 상대적으로 자주 참조되는 맵핑 테이블의 일부로 구성되는 캐시드 클러스터 맵핑 테이블을 생성하도록 구성되는 DFTL 캐시 맵 매니저 모듈을 더 포함하는 플래시 변환 계층 구조
|
3 |
3
제2항에 있어서, 상기 DFTL 캐시 맵 매니저 모듈은,상기 축약된 클러스터 맵핑 테이블을 이용하여 (k-c)개의 맵핑되지 않은 물리 주소 스트림들에 할당되어 있던 휘발성 메모리의 데이터 버퍼 공간을 상기 캐시드 클러스터 맵핑 테이블을 저장하도록 확장하는 것을 특징으로 하는 플래시 변환 계층 구조
|
4 |
4
제1항에 있어서, 상기 스트림 클러스터링 매니저 모듈은,상기 n개의 가상 논리 주소 스트림들에 대응하는 하나 이상의 스트림 속성들을 추적하여 획득하고, 획득된 스트림 속성들 중 하나를 선택하여 상기 선택된 스트림 속성으로 제공하도록 구성되고,상기 획득된 스트림 속성들은 상기 n개의 가상 논리 주소 스트림들의 예상 수명, 빈도, 시간적 지역성, 순차성, 입출력 크기, 입출력 격리 레벨 및 QoS(Quality of Service) 요구 사항과 관련되는 속성들인 것을 특징으로 하는 플래시 변환 계층 구조
|
5 |
5
제1항에 있어서, 상기 적응적 k-평균 클러스터링 알고리즘 모듈은,상기 n개의 가상 논리 주소 스트림들의 상기 선택된 속성을 기반으로, 상기 k개의 물리 주소 스트림들 사이의 중심을 계산하고, 상기 k개의 물리 주소 스트림들끼리의 거리를 계산하고, 가까운 물리 주소 스트림들을 합병하는 동작을 반복 수행하여 상기 축약된 클러스터 맵핑 테이블을 생성하도록 구성되는 것을 특징으로 하는 플래시 변환 계층 구조
|
6 |
6
불휘발성 메모리 장치들;휘발성 메모리 장치; 및호스트의 논리 주소 스트림들과 상기 불휘발성 메모리 장치들의 물리 주소 스트림들 사이의 맵핑 정보를 관리하는 플래시 변환 계층(FTL) 구조를 이용하여, 상기 호스트로부터 수신되는 입출력 요청들에 응답하여 상기 불휘발성 메모리 장치들 및 상기 휘발성 메모리 장치를 제어하는 콘트롤러를 포함하고,상기 플래시 변환 계층 구조는,상기 호스트의 입출력 요청들에 대한 전체 논리 주소 공간을 n(n은 정수)등분하여 n개의 가상 논리 주소 스트림들로 설정하고, 상기 n개의 가상 논리 주소 스트림들을 k (k는 n보다 작은 수)개의 물리 주소 스트림들에 맵핑하는 예비 클러스터 맵핑 테이블을 생성하고, 상기 예비 클러스터 맵핑 테이블에 대하여 적응적 k-평균 클러스터링 알고리즘을 수행하여 상기 n개의 가상 논리 주소 스트림들을 c(c는 k 보다 작은 수)개의 물리 주소 스트림들에 맵핑하는 축약된 클러스터 맵핑 테이블을 생성하도록 구성되는 데이터 저장 장치
|
7 |
7
제6항에 있어서, 상기 플래시 변환 계층 구조는,상기 축약된 클러스터 맵핑 테이블에 대하여 DFTL(Demand-based FTL) 방식을 이용하여 상기 축약된 클러스터 맵핑 테이블에서 상대적으로 자주 참조되는 맵핑 테이블의 일부로 구성되는 캐시드 클러스터 맵핑 테이블을 생성하도록 구성되는 것을 특징으로 하는 데이터 저장 장치
|
8 |
8
불휘발성 메모리 장치들, 휘발성 메모리 장치 및 콘트롤러를 포함하고, 상기 콘트롤러는 호스트로부터 수신되는 입출력 요청들에 응답하여 상기 불휘발성 메모리 장치들 및 상기 휘발성 메모리 장치를 제어하도록 구성되는 데이터 저장 장치의 동작 방법에 있어서,상기 콘트롤러에 의해, 상기 호스트의 입출력 요청들에 대한 전체 논리 주소 공간을 n(n은 정수)등분하여 n개의 가상 논리 주소 스트림들로 설정하는 단계;상기 콘트롤러에 의해, 상기 n개의 가상 논리 주소 스트림들을 k (k는 n보다 작은 수)개의 물리 주소 스트림들에 맵핑하는 예비 클러스터 맵핑 테이블을 생성하는 단계;상기 콘트롤러에 의해, 상기 예비 클러스터 맵핑 테이블에 대하여 적응적 k-평균 클러스터링 알고리즘을 수행하여 상기 n개의 가상 논리 주소 스트림들을 c(c는 k 보다 작은 수)개의 물리 주소 스트림들에 맵핑하는 축약된 클러스터 맵핑 테이블을 생성하는 단계; 및상기 콘트롤러에 의해, 상기 축약된 클러스터 맵핑 테이블에 대하여 DFTL(Demand-based FTL) 방식을 이용하여 상기 축약된 클러스터 맵핑 테이블에서 상대적으로 자주 참조되는 맵핑 테이블의 일부로 구성되는 캐시드 클러스터 맵핑 테이블을 생성하는 단계를 포함하는 데이터 저장 장치의 동작 방법
|
9 |
9
제8항에 있어서, 상기 데이터 저장 장치의 동작 방법은,상기 콘트롤러에 의해, 상기 캐시드 클러스터 맵핑 테이블을 상기 휘발성 메모리 장치의 DFTL 맵 캐시 공간에 저장하는 단계;상기 콘트롤러에 의해, 상기 축약된 클러스터 맵핑 테이블을 상기 휘발성 메모리 장치의 스트림 맵 테이블 공간; 및상기 콘트롤러에 의해, 상기 호스트의 상기 입출력 요청들의 데이터를 데이터 버퍼 공간에 저장하는 단계를 더 포함하는 것을 특징으로 하는 데이터 저장 장치의 동작 방법
|
10 |
10
제9항에 있어서, 상기 데이터 저장 장치의 동작 방법은,상기 콘트롤러에 의해, 상기 축약된 클러스터 맵핑 테이블을 이용하여 (k-c)개의 맵핑되지 않은 물리 주소 스트림들에 할당되어 있던 상기 데이터 버퍼 공간을 상기 DFTL 맵 캐시 공간으로 확장하는 단계를 더 포함하는 것을 특징으로 하는 데이터 저장 장치의 동작 방법
|