1 |
1
제1 버퍼와 제2 버퍼를 포함하는 메모리에 대한 적응적 버퍼 운영 장치에 있어서,요청된 데이터에 대한 미스(miss)가 발생하면, 상기 요청된 데이터에 해당하는 서브 블록(sub block)을 저장소(storage)에서 찾고, 상기 서브 블록을 포함하는 라지 블록 셋(large block set) - 복수의 서브 블록을 포함함 - 을 상기 저장소로부터 상기 제1 버퍼로 페치하는 라지 블록 페치부;상기 제1 버퍼의 잔여 공간이 미리 정해진 임계치 미만이고 요청된 데이터에 대한 미스가 발생하면, 상기 제1 버퍼에 기 페치된 라지 블록 셋 중 방출될 라지 블록 셋을 선택하고, 상기 선택된 라지 블록 셋의 서브 블록들 중 접근 횟수가 한 번 이상인 서브 블록을 필터링하여 상기 제2 버퍼로 이동시키는 서브 블록 필터링부; 및상기 제2 버퍼로 이동되는 서브 블록에 대하여 상기 제2 버퍼 내에서의 ‘잔여 라이프 사이클 수 - 방출될 순서에서 다시 버퍼 내에 잔류할 수 있는 기회가 주어지는 횟수를 의미함 - 를 결정하는 잔여 라이프 사이클 수 결정부를 포함하되,상기 제1 버퍼는 상기 제2 버퍼보다 더 큰 저장 공간을 가지며,상기 서브 블록 필터링부는상기 요청된 데이터에 대한 미스가 발생 시, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들에 대한 ‘재활용 가능성의 높고 낮음’을 나타내는 기준을 선택하고, 상기 잔여 라이프 사이클 수 결정부는상기 선택된 기준에 따라서 상기 제2 버퍼에 기 존재하는 서브 블록의 상기 잔여 라이프 사이클 수를 감소시키거나 현재 상태를 유지하는 것을 특징으로 하는 적응적 버퍼 운영 장치
|
2 |
2
제1 항에 있어서,상기 서브 블록 필터링부는상기 ‘재활용 가능성의 높고 낮음’을 나타내는 기준으로서 ‘Hot victim period’ 또는 ‘Cold victim period’를 선택하되,현재의 미스 발생 속도와 현재까지 미스가 발생한 속도의 평균을 비교하여, 상기 현재의 미스 발생 속도가 현재까지 미스가 발생한 속도의 평균 보다 크면, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들의 재활용 가능성이 낮다고 예측하는 ‘Hot victim period’를 선택하여 상기 잔여 라이프 사이클 수를 미리 정해진 수만큼 감소시키고,상기 현재의 미스 발생 속도가 현재까지 미스가 발생한 속도의 평균 보다 작으면, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들의 재활용 가능성이 높다고 예측하는 ‘Cold victim period’를 선택하여 상기 잔여 라이프 사이클 수를 변경하지 않고 유지시키는 것을 특징으로 하는 적응적 버퍼 운영 장치
|
3 |
3
제2 항에 있어서,상기 서브 블록 필터링부는상기 현재의 미스 발생 속도를 계산 시 미리 정해진 미스 발생 회수와 상기 미리 정해진 미스 발생 회수에 도달하기까지의 시간의 비율을 이용하는 것을 특징으로 하는 적응적 버퍼 운영 장치
|
4 |
4
제1 항에 있어서,상기 잔여 라이프 사이클 수 결정부는상기 제2 버퍼로 이동하는 서브 블록들의 최소 접근 횟수, 최대 접근 횟수, 평균 접근 횟수를 계산하여 [0, 1]의 범위로 정규화(normalization)하고, 상기 평균 접근 횟수를 기준 값(threshold)으로 설정하며,상기 제2 버퍼로 이동하는 서브 블록 각각의 접근 횟수를 [0, 1]에 매칭시켜 상기 기준 값과 비교한 후, 상기 비교 결과가 상기 기준 값보다 큰 경우 또는 작은 경우 및 각각의 접근 횟수에 따라서 상기 잔여 라이프 사이클 수를 결정하는 것을 특징으로 하는 적응적 버퍼 운영 장치
|
5 |
5
제1 항에 있어서,상기 라지 블록 페치부는상기 저장소로부터 상기 제1 버퍼로 데이터를 페치 시, 상기 라지 블록 셋 단위로 페치하되,상기 라지 블록 셋의 사이즈는 2KB이고, 상기 라지 블록 셋의 서브 블록들의 사이즈는 64Byte인 것을 특징으로 하는 적응적 버퍼 운영 장치
|
6 |
6
적응적 버퍼 운영 장치가 제1 버퍼와 제2 버퍼를 포함하는 메모리에 대하여 적응적으로 버퍼를 운영하는 방법에 있어서,(a) 요청된 데이터에 대한 미스가 상기 제1 버퍼 및 제2 버퍼에서 발생하고, 상기 제1 버퍼의 잔여 공간이 미리 정해진 임계치 미만이면, 상기 제1 버퍼에 기 페치된 라지 블록 셋(large block set) - 복수의 서브 블록(sub block)을 포함함 - 중 방출될 라지 블록 셋을 선택하는 단계;(b) 상기 방출 대상으로 선택된 라지 블록 셋의 서브 블록들 중 접근 횟수가 한 번 이상인 서브 블록을 필터링하여 상기 제2 버퍼로 이동시키는 단계; 및(c) 상기 요청된 데이터에 해당하는 서브 블록을 저장소(storage)에서 찾고, 상기 찾은 서브 블록을 포함하는 라지 블록 셋을 상기 저장소로부터 상기 제1 버퍼로 페치하는 단계를 포함하되,상기 제1 버퍼는 상기 제2 버퍼보다 더 큰 저장 공간을 가지며,상기 (b) 단계는상기 미스가 발생한 현재, 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들에 대한 ‘재활용 가능성의 높고 낮음’을 나타내는 기준을 선택하는 단계;상기 제2 버퍼로 이동되는 서브 블록에 대하여 상기 제2 버퍼 내에서의 ‘잔여 라이프 사이클 수 - 방출될 순서에서 다시 버퍼 내에 잔류할 수 있는 기회가 주어지는 횟수를 의미함 - 를 결정하는 단계; 및상기 선택된 기준에 따라서 상기 제2 버퍼에 기 존재하는 서브 블록의 상기 잔여 라이프 사이클 수를 감소시키거나 현재 상태를 유지하는 단계를 포함하는 것을 특징으로 하는 적응적 버퍼 운영 방법
|
7 |
7
제6 항에 있어서,상기 (b) 단계는상기 ‘재활용 가능성의 높고 낮음’을 나타내는 기준으로서 ‘Hot victim period’ 또는 ‘Cold victim period’를 선택하되,현재의 미스 발생 속도와 현재까지 미스가 발생한 속도의 평균을 비교하여, 상기 현재의 미스 발생 속도가 현재까지 미스가 발생한 속도의 평균 보다 크면, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들의 재활용 가능성이 낮다고 예측하는 ‘Hot victim period’를 선택하여 상기 잔여 라이프 사이클 수를 감소시키고,상기 현재의 미스 발생 속도가 현재까지 미스가 발생한 속도의 평균 보다 작으면, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들의 재활용 가능성이 높다고 예측하는 ‘Cold victim period’를 선택하여 상기 잔여 라이프 사이클 수를 변경하지 않고 유지시키는 것을 특징으로 하는 적응적 버퍼 운영 방법
|
8 |
8
제6 항에 있어서,상기 (b) 단계는상기 제2 버퍼로 이동하는 서브 블록들의 최소 접근 횟수, 최대 접근 횟수, 평균 접근 횟수를 계산하여 [0, 1]의 범위로 정규화(normalization)하고, 상기 평균 접근 횟수를 기준 값(threshold)으로 설정하는 단계; 및상기 제2 버퍼로 이동하는 서브 블록 각각의 접근 횟수를 [0, 1]에 매칭시켜 상기 기준 값과 비교한 후, 상기 비교 결과가 상기 기준 값보다 큰 경우 또는 작은 경우 및 각각의 접근 횟수에 따라서 상기 잔여 라이프 사이클 수를 결정하는 단계를 포함하는 것을 특징으로 하는 적응적 버퍼 운영 방법
|
9 |
9
제6 항 내지 제8 항 중 어느 하나의 항에 따른 방법을 수행하기 위한 일련의 명령을 포함하는 기록 매체에 저장된 컴퓨터 프로그램
|
10 |
10
메모리에 있어서,제1 버퍼; 및상기 제1 버퍼보다 작은 공간을 가지는 제2 버퍼를 포함하되,상기 제1 버퍼는요청된 데이터에 대한 미스(miss) 발생 시, 저장소(storage)에 저장된, 상기 요청된 데이터에 해당하는 서브 블록(sub block)을 포함하는 라지 블록 셋(large block set)이 페치되고,상기 제2 버퍼는상기 제1 버퍼의 잔여 공간이 미리 정해진 임계치 미만이고 요청된 데이터에 대한 미스가 발생하면, 상기 제1 버퍼에 기 페치된 라지 블록 셋 중에서 방출 대상으로 선택된 라지 블록 셋의 서브 블록 중 접근 횟수가 한 번 이상인 서브 블록이 이동되되,상기 제2 버퍼로 이동되는 서브 블록은상기 제2 버퍼 내에서의 ‘잔여 라이프 사이클 수 - 방출될 순서에서 다시 버퍼 내에 잔류할 수 있는 기회가 주어지는 횟수를 의미함 - 가 결정되고,상기 서브 블록의 이동 시 잔여 공간이 미리 정해진 임계치 미만이면,상기 제2 버퍼에 기 존재하는 서브 블록은상기 요청된 데이터에 대한 미스가 발생 시, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들에 대한 ‘재활용 가능성의 높고 낮음’을 나타내는 선택된 기준에 따라서 상기 잔여 라이프 사이클 수가 감소되거나 현재 상태를 유지하는 것을 특징으로 하는 메모리
|
11 |
11
제10 항에 있어서,상기 ‘재활용 가능성의 높고 낮음’을 나타내는 선택된 기준은 ‘Hot victim period’ 또는 ‘Cold victim period’이며,상기 ‘Hot victim period’은현재의 미스 발생 속도와 현재까지 미스가 발생한 속도의 평균을 비교하여, 상기 현재의 미스 발생 속도가 현재까지 미스가 발생한 속도의 평균 보다 크면 선택되고, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들의 재활용 가능성이 낮다고 예측되어 상기 잔여 라이프 사이클 수가 미리 정해진 수만큼 감소되며,상기 ‘Cold victim period’은상기 현재의 미스 발생 속도가 현재까지 미스가 발생한 속도의 평균 보다 작으면 선택되고, 현재 상기 제1 버퍼와 제2 버퍼에 저장된 서브 블록들의 재활용 가능성이 높다고 예측되어 상기 잔여 라이프 사이클 수가 변경되지 않고 유지되는 것을 특징으로 하는 메모리
|
12 |
12
제10 항에 있어서,상기 잔여 라이프 사이클 수는상기 제2 버퍼로 이동하는 서브 블록들의 최소 접근 횟수, 최대 접근 횟수, 평균 접근 횟수를 계산하여 [0, 1]의 범위로 정규화(normalization)하고, 상기 평균 접근 횟수를 기준 값(threshold)으로 설정되며,상기 제2 버퍼로 이동하는 서브 블록 각각의 접근 횟수를 [0, 1]에 매칭시켜 상기 기준 값과 비교한 후, 상기 비교 결과가 상기 기준 값보다 큰 경우 또는 작은 경우 및 각각의 접근 횟수에 따라서 결정되는 것을 특징으로 하는 메모리
|
13 |
13
제10 항에 있어서,상기 제1 버퍼는 128KB의 저장 공간을 가지고,상기 제2 버퍼는 16KB의 저장 공간을 가지며,상기 라지 블록 셋은 2KB의 사이즈를 가지고,상기 서브 블록은 6Byte의 사이즈를 가지는 것을 특징으로 하는 메모리
|
14 |
14
제10 항에 있어서,상기 메모리는 DRAM 또는 SRAM이고,상기 메모리가 SRAM인 경우상기 SRAM은MCU(Micro Controller Unit) 또는 AP(Application Processor)와 원-칩(one-chip)으로 구현되는 것을 특징으로 하는 메모리
|