KR101423867B1 - L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법 - Google Patents

L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법 Download PDF

Info

Publication number
KR101423867B1
KR101423867B1 KR1020130010478A KR20130010478A KR101423867B1 KR 101423867 B1 KR101423867 B1 KR 101423867B1 KR 1020130010478 A KR1020130010478 A KR 1020130010478A KR 20130010478 A KR20130010478 A KR 20130010478A KR 101423867 B1 KR101423867 B1 KR 101423867B1
Authority
KR
South Korea
Prior art keywords
data
cache memory
memory block
cache
accessed
Prior art date
Application number
KR1020130010478A
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 KR1020130010478A priority Critical patent/KR101423867B1/ko
Application granted granted Critical
Publication of KR101423867B1 publication Critical patent/KR101423867B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/40Specific encoding of data in memory or cache
    • G06F2212/401Compressed data
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법에 관한 것으로서, 보다 구체적으로는 L2 이상의 레벨 캐쉬 캐시 메모리의 누설 에너지를 감소하기 위하여 콜드(cold) 영역을 압축함으로써, 캐시 관리 장치 및 방법에 관한 것이다. 본 발명은 자주 사용하지 않는 L2 이상의 레벨 캐쉬 캐시 메모리를 압축함으로써 누설 에너지를 감소시키는 캐시 관리 장치 및 방법을 제공할 수 있다.

Description

L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법{DEVICE AND METHOD WHICH SUPERVISE L2 CACHE MEMORY}
본 발명은 L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법에 관한 것으로서, 보다 구체적으로는 L2 이상의 레벨 캐쉬 캐시 메모리의 누설 에너지를 감소하기 위하여 콜드(cold) 영역을 압축함으로써, 캐시 관리 장치 및 방법에 관한 것이다.
반도체 회로를 포함하는 반도체 장치는 소형화 및 경량화 되고 있는 반면, 반도체 장치에 내장되는 기능 블록들은 계속적으로 증가하고 있다. 내장되는 기능 블록들이 증가함에 따라 반도체 장치의 소비 전력의 크기는 증가한다. 특히, 제한된 용량의 배터리를 사용하는 경우에 반도체 장치의 소모 전력의 크기는 반도체 장치를 포함하는 각종 전자 기기 및 시스템의 개발에 제약 조건이 될 수 있다. 발열을 줄이고, 제한된 공급전원에 의한 반도체 장치의 지속 가능 시간을 연장하기 위하여 대기모드에서 기능 블록들에 의하여 불필요하게 소모되는 전력을 감소시킬 필요가 있다. 이를 위하여 대기 모드에서 기능 블록들에 불필요하게 전력이 공급되는 것을 방지하기 위한 파워 게이팅 회로가 반도체 장치에 적용될 수 있다.
이와 관련된 종래 기술로는 파워 게이팅 반도체 회로 및 이를 포함하는 반도체 장치(한국공개특허 제2012-0090513호)이 있다.
도 1은 종래의 파워 게이팅 반도체 회로의 블록도이다. 도 1을 참조하면, 반도체 회로(10)는 논리부(12) 및 파워 게이팅부(11)를 포함한다.
논리부(12)는 대기모드 동안에 출력 신호(VOUT)를 대기 논리레벨로 유지한다. 논리부(12)는 임의의 논리 연산을 수행하는 논리 게이트들 및 트랜지스터들을 포함하는 회로일 수 있다. 논리부(12)는 구동모드 동안에 상기 논리 게이트들 및 트랜지스터들을 구동시키기 위한 구동전압을 인가받고, 입력신호(VIN)에 기초하여 출력 신호(VOUT)를 생성한다. 논리부(12)는 대기모드에서 상기 구동모드 동안에 인가 받는 구동전압 대신에 파워 게이팅부(11)로부터 대기모드 전원전압을 게이팅 전압라인(VEXIT)을 통하여 인가받는다.
파워 게이팅부(11)는 파워 게이팅 신호(PG)에 기초하여, 구동모드 동안에 전원라인(VEXT)을 통하여 인가 받은 전원전압을 게이팅 전원라인(VEXTT)을 통하여 논리부(12)에 전체적으로 인가한다. 파워 게이팅 신호(PG)는 대기모드 활성화 신호(PGE)를 포함할 수 있다. 실시예에 따라, 파워 게이팅 신호(PG)는 대기모드 비활성화 신호(PGB), 즉, 대기모드 인에이블 신호(PGE)의 반전된 신호를 더 포함할 수 있다.
본 발명의 목적은 자주 사용하지 않는 L2 이상의 레벨 캐쉬 캐시 메모리를 압축함으로써 누설 에너지를 감소시키고, 누설 에너지 감소에 따라 발생 열을 줄이는 데 있다.
또한, 본 발명의 목적은 캐시 메모리 블록에 저장된 데이터 값이 모두 0인 경우 캐시 메모리 블록의 태그에 제로 플래그 비트 값을 1로 저장함으로써, 캐시 메모리 블록 전체를 읽지 않고 캐시 메모리 블록에 저장된 데이터를 읽는데 있다.
본 발명의 일실시예에 따른 캐시 관리 장치는 개별 L2 이상의 레벨 캐쉬 캐시를 사용하는 프로세서 환경에서 캐시의 누설 에너지를 고려하고, 캐시 메모리 블록에 저장된 데이터에 대해서 미리 설정된 시간 동안 상기 프로세서에 의한 접근 여부를 판별하는 판별부; 상기 판별부를 통해 판별된 상기 프로세서에 의해 접근되지 않은 데이터를 압축하여 다시 상기 캐시 메모리 블록에 저장하는 압축부; 및 데이터가 저장된 캐시 메모리 블록에만 전원을 공급하는 전원부;를 포함할 수 있다.
상기 판별부는 캐시 메모리 블록의 태그 안에 저장된 카운터(counter) 값을 이용하여 상기 프로세서에 의해 접근되지 않은 데이터를 판별함을 특징으로 할 수 있다.
상기 판별부는 상기 프로세서에 의해 데이터를 읽어 들일 때마다 태그의 카운터 값이 감소하는 방식인 경우, 캐시 메모리 블록의 태그 안에 저장된 카운터(counter)값이 제1 임계값인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터로서 판별하고, 캐시 메모리 블록으로부터 데이터를 읽어 들일 때마다 태그의 카운터 값이 증가하는 방식인 경우, 캐시 메모리 블록의 태그 안에 저장된 카운터 값이 제2 임계값이상인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터로서 판별함을 특징으로 할 수 있다.
상기 캐시 메모리 블록은 데이터가 저장된 정도를 표현하는 블록 용량 값을 태그에 더 포함하고, 상기 전원부는 상기 블록 용량 값에 따라 상기 캐시 메모리 블록에 전원을 공급함을 특징으로 할 수 있다.
본 발명의 일실시예에 따른 개별 L2 이상의 레벨 캐쉬 캐시를 사용하는 프로세서 환경에서 캐시의 누설 에너지를 고려한 캐시 관리 방법은 캐시 메모리 블록에 저장된 데이터가 미리 설정된 시간 동안 상기 프로세서에 의한 접근 여부를 판별하는 단계; 캐시 메모리 블록에 저장된 데이터가 상기 프로세서에 의해 접근되지 않은 데이터인 경우, 상기 데이터를 압축하여 다시 저장하는 단계; 및 데이터가 저장된 캐시 메모리 블록에만 전원을 공급하는 단계를 포함할 수 있다.
상기 판별하는 단계는 캐시 메모리 블록의 태그 안에 저장된 카운터(counter) 값을 이용하여 상기 프로세서에 의해 접근되지 않은 데이터인지 여부를 판별함을 특징으로 할 수 있다.
상기 판별하는 단계는 상기 프로세서에 의해 데이터를 읽어 들일 때마다 태그의 카운터 값이 감소하는 방식인 경우, 캐시 블록의 태그 안에 저장된 카운터(counter)값이 제1 임계값인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터를 판별하고, 상기 프로세서에 의해 데이터를 읽어 들일 때마다 태그의 카운터 값이 증가하는 방식인 경우, 캐시 메모리 블록의 태그 안에 저장된 카운터 값이 제2 임계값이상인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터를 판별함을 특징으로 할 수 있다.
상기 캐시 메모리 블록은 데이터가 저장된 정도를 나타내는 블록 용량 값을 태그에 더 포함하고, 상기 전원을 공급하는 단계는 상기 블록 용량 값에 따라 전원을 공급함을 특징으로 할 수 있다.
상기 캐시 메모리 블록은 저장된 데이터가 모두 제로(zero)인지 여부를 나타내는 제로 비트 플래그를 포함하고, 상기 제로 비트 플래그는 상기 캐시 메모리 블록에 저장된 데이터가 모두 '0'인 경우, 1로 설정됨을 특징으로 할 수 있다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명은 자주 사용하지 않는 L2 이상의 레벨 캐쉬 캐시 메모리를 압축함으로써 누설 에너지를 감소시키는 캐시 관리 장치 및 방법을 제공할 수 있다.
또한, 본 발명은 캐시 메모리 블록에 저장된 데이터 값이 모두 0인 경우 캐시 메모리 블록의 태그에 제로 플래그 비트 값을 1로 저장함으로써, 캐시 메모리 블록 전체를 읽지 않으면서 캐시 메모리 블록 전체의 데이터를 알 수 있다.
도 1은 종래의 파워 게이팅 반도체 회로의 블록도.
도 2은 본 발명의 일실시예에 따른 캐시 관리 장치의 블록도.
도 3는 본 발명의 일실시예에 따른 캐시 관리 방법의 흐름도.
도 4는 일반적인 메모리 계층 구조를 나타낸 도면.
도 5는 본 발명의 일실시예에 따른 캐시 메모리의 태그 구조를 나타낸 도면.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다.
L2 이상의 레벨 캐쉬 캐시는 CPU(중앙처리장치)와 메인메모리(main memory)간의 데이터 병목현상을 해소하고 메인메모리의 느린 속도를 극복하기 위하여 중간에 삽입된 메모리이다. 캐시는 CPU와 같은 다이에 구현되어 엑세스 속도가 메인메모리에 비해 빠르다. 또한, 캐시는 크기가 클 경우, 엑세스 속도가 느려지기 때문에 제1 레벨 캐시의 경우 크기를 줄임으로써 엑세스 속도를 빠르게 하며 제2 레벨 혹은 제3 레벨의 경우에는 속도를 느리게 하는 대신에 그 크기를 크게 하여 CPU가 원하는 데이터 대역폭을 만족시키는 방향으로 캐시 디자인이 이루어지고 있다.
프로세스 기술이 90nm 이하로 발전함에 따라 전체 에너지에서 누설에너지가 차지하는 비중이 커진다. 이러한 누설 에너지를 감소시키기 위해 캐시 블록이 비활성화되는 기간 동안 캐시 블록에 공급되는 전압을 차단함으로써 누설 에너지의 소모를 없앨 수 있다.
이와 관련하여 종래에는 L2 이상의 레벨 캐쉬 캐시 메모리에 저장된 데이터를 압축함으로써 캐시 메모리 중 데이터 저장 영역을 줄여서 누설 에너지를 감소시키는 방법이 "static energy reduction in cache memories using data compression"(Kiyofumi Tanaka, Aiko Matsuda, JAIST, 2006)에 개시되어 있다.
종래의 누설 에너지를 감소시키는 방법은 압축된 데이터를 다시 압축 해제해야 하는데, 이를 통해 좀더 많은 에너지가 필요하고 압축 해제에 따른 오버 헤드가 발생하는 문제점이 있었다.
그리하여, 본 발명의 캐시 관리 장치 및 방법은 자주 사용하지 않는 데이터만을 압축하고 자주 사용하는 데이터는 압축하지 않음으로써, 압축 해제에 따른 에너지 및 성능의 오버헤드, 성능 오버헤드로 인한 코어 부분과 캐쉬 부분의 누수 전력 증가를 없애는 장치 및 방법이다.
본 발명의 캐시 관리 장치 및 방법은 자주 사용하지 않는 데이터(cold data) 및 자주 사용하는 데이터(hot data)를 선별하는 기술, 자주 사용하지 않는 데이터(cold data)를 압축하는 기술을 포함할 수 있다. 또한, 본 발명의 캐시 관리 장치 및 방법은 캐시 블록의 모든 비트가 '0'인 경우, 제로 플래그 비트를 셋팅함으로써, 캐시 블록 전체를 읽거나 접근하지 않고도 캐시 블록 전체의 데이터를 획득할 수 있는 기술도 포함할 수 있다.
도 2은 본 발명의 일실시예에 따른 캐시 관리 장치의 블록도이다.
캐시 관리 장치(100)은 판별부(110), 압축부(120), 전원공급부(130)를 포함할 수 있다.
판별부(110)는 캐시 메모리 블록에 저장된 데이터 중에서 자주 사용하는 데이터 혹은 자주 사용하지 않는 데이터를 판별한다. 판별부(110)는 미리 설정된 시간 동안 프로세서에 의해 접근된 데이터 혹은 프로세서에 의해 접근되지 않은 데이터를 판별한다. 자주 사용하지 않는 데이터(프로세서에 의해 미리 설정된 시간 동안 접근되지 않은 데이터)가 cold data이고, 자주 사용하는 데이터(프로세서에 의해 미리 설정된 시간 동안 접근된 데이터)가 hot data이다.
일반적으로 캐시 메모리의 태그값을 이용하여 cold data 및 hot data를 구별할 수 있다. 캐시 메모리에 접근할 때마다 카운터 값이 증가하는 경우에는 캐시 메모리의 값 중에서 카운터 값이 0인 캐시 메모리 블록이 cold data가 될 수 있다. 캐시 메모리에 접근할 때마다 카운터 값이 감소하는 경우에는 캐시 메모리의 값 중에서 카운터 값이 5이상인 캐시 메모리 블록이 cold data가 될 수 있다.
압축부(120)는 판별부를 통해 판별된 자주 사용하지 않는 데이터를 압축하여 다시 캐시 메모리 블록에 저장한다. 압축부(120)는 판별부를 통해 판별된 프로세서에 의해 접근되지 않은 데이터를 압축하여 다시 캐시 메모리 블록에 저장한다. 자주 사용하는 데이터(프로세서에 의해 접근된 데이터)는 압축하지 않기 때문에 압축된 데이터를 압축 해제에 따른 오버 헤드가 발생하지 않게 될 수 있다. 그러면서, 자주 사용하지 않는 데이터(프로세서에 의해 접근되지 않은 데이터)를 압축하게 되면 캐시 메모리 블록의 일부에만 데이터가 저장되게 될 수 있다.
전원공급부(130)는 데이터가 저장된 캐시 메모리 블록에 전원을 공급한다.
본 발명의 캐시 관리 장치 및 방법에 따르면, 미리 설정된 시간 동안 프로세서에 의해 접근되지 않은 데이터, 즉 자주 사용하지 않는 데이터를 압축함으로써, 데이터가 저장된 캐시 메모리 블록의 수가 감소하게 된다. 혹은 데이터가 저장된 캐시 메모리 블록의 블록 용량 값 역시 감소하게 된다. 사용하지 않는 캐시 메모리 블록에는 전원 공급을 차단함으로써 전체 캐시 메모리에 공급되는 전원이 감소하게 된다.
캐시 메모리 블록의 블록 용량 값은 캐시 메모리 블록의 데이터 저장 정도를 나타내는 값으로서 태그 중 하나의 필드를 차지 할 수 있다.
예를 들어, 캐시 메모리 블록에 1/2 만큼 데이터가 저장된 경우, 블록 용량 값은 1/2과 대응되는 값10으로 변경된다. 캐시 메모리 블록에 데이터 저장 정도와 블록 용량 값을 대응 시킨 표는 아래와 같을 수 있다.
데이터 저장 정도 블록 용량 값
1/4 00
1/2 01
3/4 10
4/4 11
도 3는 본 발명의 캐시 관리 방법의 흐름도이다.
본 발명의 캐시 관리 방법은 캐시 메모리 블록에 저장된 데이터가 상기 프로세서에 의해 미리 설정된 시간 동안 접근된 데이터 인지 여부를 판별하는 단계(S320), 캐시 메모리 블록에 저장된 데이터가 상기 프로세서에 의해 접근되지 않은 데이터인 경우, 상기 데이터를 압축하여 다시 저장하는 단계(S330), 데이터가 저장된 캐시 메모리 블록에만 전원을 공급하는 단계(S340)를 포함할 수 있다.
S320에서는 캐시 메모리 블록에 저장된 데이터가 자주 사용되는 데이터인지 혹은 자주 사용되지 않는 데이터인지 여부를 판별한다. 즉, S320에서는 캐시 메모리 블록에 저장된 데이터가 미리 설정된 시간 동안 프로세서에 의해 접근된 데이터 인지 여부를 판별한다.
캐시 메모리 블록에 저장된 데이터에 있어서, 프로세서에 의한 접근 여부를 판별하는 데에는 위에서 설명한 cold data/hot data 선별법을 이용될 수 있다. 즉, 캐시 메모리 블록에 저장된 데이터가 자주 사용되는 데이터인지 혹은 자주 사용되지 않는 데이터인지 여부를 선별하는 데에는 위에서 설명한 cold data/hot data 선별법이 사용될 수 있다.
S330에서는 캐시 메모리 블록에 저장된 데이터가 자주 사용되지 않는 데이터인 경우, 상기 데이터를 압축하여 다시 저장한다. S330에서는 캐시 메모리 블록에 저장된 데이터가 상기 프로세서에 의해 접근되지 않은 데이터인 경우, 상기 데이터를 압축하여 다시 저장한다.
S340에서는 데이터가 저장된 캐시 메모리 블록에만 전원을 공급한다. 캐시 메모리에 공급되는 전원은 데이터가 저장된 캐시 메모리 블록에 따라 결정된다. 캐시 메모리에 많은 데이터가 저장된 경우가 적은 데이터가 저장된 경우보다 더 많은 전원을 소비하게 된다.
도 5는 본 발명의 일실시예에 따른 캐시 메모리의 태그 구조를 나타낸다.
본 발명의 일실시예에 따른 캐시 메모리의 태그에는 Coherence, Csize, Address tag, Counter 및 zero flag bit를 포함한다.
Csize는 캐시 메모리에 저장된 데이터 사이즈를 나타내며, 데이터 사이즈는 1/4, 1/2, 3/4, 4.4 중 하나를 의미할 수 있다. Counter는 캐시 메모리에 따라서 주기적으로 감소하거나 증가하는 값으로서, 캐시 메모리가 자주 사용되는지 여부를 확인하는데 사용될 수 있다. zero flag bit는 캐시 메모리에 저장된 데이터가 모두 '0'인 경우를 나타내는 값으로서, 캐시 메모리에 저장된 데이터가 모두 '0'이면 '1'로 설정될 수 있다.
캐시 메모리를 read하기 전에 zero flag bit를 확인하고, zero flag bit가 1인 경우, 캐시 메모리를 모두 읽을 필요가 없으므로, 메모리 read 시간을 단축시킬 수 있다.
본 발명의 일실시예에 따른 캐시 관리 장치 및 방법은 3D 캐시 구조에 대해서 더 효율적인 점이 있다. 즉 누설 에너지(전력, 전원)의 감소 효과가 더 뛰어나게 된다.
이상에서는 본 발명의 바람직한 실시예 및 응용예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예 및 응용예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.
100: 캐시 관리 장치 110: 판별부
120: 압축부 130: 전원공급부

Claims (9)

  1. 개별 L2 이상의 레벨 캐쉬 캐시를 사용하는 프로세서 환경에서 캐시의 누설 에너지를 고려한 캐시 관리 장치에 있어서,
    캐시 메모리 블록에 저장된 데이터에 대해서 미리 설정된 시간 동안 상기 프로세서에 의한 접근 여부를 판별하는 판별부;
    상기 판별부를 통해 판별된 상기 프로세서에 의해 접근되지 않은 데이터를 압축하여 다시 상기 캐시 메모리 블록에 저장하는 압축부; 및
    데이터가 저장된 캐시 메모리 블록에만 전원을 공급하는 전원부;를 포함하고,
    상기 압축부는 상기 프로세서에 의해 상대적으로 높은 빈도로 접근되는 데이터 및 상대적으로 낮은 빈도로 접근되거나 접근되지 않은 데이터 중 상기 상대적으로 낮은 빈도로 접근되거나 접근되지 않은 데이터를 선택적으로 압축하는 캐시 관리 장치.
  2. 제1항에 있어서,
    상기 판별부는
    캐시 메모리 블록의 태그 안에 저장된 카운터(counter) 값을 이용하여 상기 프로세서에 의해 접근되지 않은 데이터를 판별함을 특징으로 하는 캐시 관리 장치.
  3. 제2항에 있어서,
    상기 판별부는
    상기 프로세서에 의해 데이터를 읽어 들일 때마다 태그의 카운터 값이 감소하는 방식인 경우, 캐시 메모리 블록의 태그 안에 저장된 카운터(counter)값이 제1 임계값인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터로서 판별하고,
    캐시 메모리 블록으로부터 데이터를 읽어 들일 때마다 태그의 카운터 값이 증가하는 방식인 경우, 캐시 메모리 블록의 태그 안에 저장된 카운터 값이 제2 임계값이상인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터로서 판별함을 특징으로 하는 캐시 관리 장치.
  4. 제1항에 있어서,
    상기 캐시 메모리 블록은 데이터가 저장된 정도를 표현하는 블록 용량 값을 태그에 더 포함하고,
    상기 전원부는 상기 블록 용량 값에 따라 상기 캐시 메모리 블록에 전원을 공급함을 특징으로 하는 캐시 관리 장치.
  5. 개별 L2 이상의 레벨 캐쉬 캐시를 사용하는 프로세서 환경에서 캐시의 누설 에너지를 고려한 캐시 관리 방법에 있어서,
    캐시 메모리 블록에 저장된 데이터가 미리 설정된 시간 동안 상기 프로세서에 의한 접근 여부를 판별하는 단계;
    캐시 메모리 블록에 저장된 데이터가 상기 프로세서에 의해 접근되지 않은 데이터인 경우, 상기 데이터를 압축하여 다시 저장하는 단계; 및
    데이터가 저장된 캐시 메모리 블록에만 전원을 공급하는 단계를 포함하고,
    상기 데이터를 압축하여 다시 저장하는 단계는 상기 프로세서에 의해 상대적으로 높은 빈도로 접근되는 데이터 및 상대적으로 낮은 빈도로 접근되거나 접근되지 않은 데이터 중 상기 상대적으로 낮은 빈도로 접근되거나 접근되지 않은 데이터를 선택적으로 압축하는 단계를 포함하는 캐시 관리 방법.
  6. 제5항에 있어서,
    상기 판별하는 단계는 캐시 메모리 블록의 태그 안에 저장된 카운터(counter) 값을 이용하여 상기 프로세서에 의해 접근되지 않은 데이터인지 여부를 판별함을 특징으로 하는 캐시 관리 방법.
  7. 제6항에 있어서,
    상기 판별하는 단계는
    상기 프로세서에 의해 데이터를 읽어 들일 때마다 태그의 카운터 값이 감소하는 방식인 경우, 캐시 블록의 태그 안에 저장된 카운터(counter)값이 제1 임계값인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터를 판별하고,
    상기 프로세서에 의해 데이터를 읽어 들일 때마다 태그의 카운터 값이 증가하는 방식인 경우, 캐시 메모리 블록의 태그 안에 저장된 카운터 값이 제2 임계값이상인 캐시 메모리 블록을 상기 프로세서에 의해 접근되지 않은 데이터를 판별함을 특징으로 하는 캐시 관리 방법.
  8. 제5항에 있어서,
    상기 캐시 메모리 블록은 데이터가 저장된 정도를 나타내는 블록 용량 값을 태그에 더 포함하고,
    상기 전원을 공급하는 단계는
    상기 블록 용량 값에 따라 전원을 공급함을 특징으로 하는 캐시 관리 방법.
  9. 제 1 항에 있어서,
    상기 캐시 메모리 블록은 저장된 데이터가 모두 제로(zero)인지 여부를 나타내는 제로 비트 플래그를 포함하고,
    상기 제로 비트 플래그는 상기 캐시 메모리 블록에 저장된 데이터가 모두 '0'인 경우, 1로 설정됨을 특징으로 하는 캐시 관리 장치.

KR1020130010478A 2013-01-30 2013-01-30 L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법 KR101423867B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130010478A KR101423867B1 (ko) 2013-01-30 2013-01-30 L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130010478A KR101423867B1 (ko) 2013-01-30 2013-01-30 L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법

Publications (1)

Publication Number Publication Date
KR101423867B1 true KR101423867B1 (ko) 2014-07-29

Family

ID=51743116

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130010478A KR101423867B1 (ko) 2013-01-30 2013-01-30 L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101423867B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005535051A (ja) * 2002-08-06 2005-11-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 圧縮可能度に基づいて圧縮メイン・メモリを使用するためのシステムおよび方法
JP2009282880A (ja) * 2008-05-26 2009-12-03 Fujitsu Ltd キャッシュメモリシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005535051A (ja) * 2002-08-06 2005-11-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 圧縮可能度に基づいて圧縮メイン・メモリを使用するためのシステムおよび方法
JP2009282880A (ja) * 2008-05-26 2009-12-03 Fujitsu Ltd キャッシュメモリシステム

Similar Documents

Publication Publication Date Title
TWI645334B (zh) 用於管理操作狀態資料之方法、記憶體模組及主機裝置
US7100013B1 (en) Method and apparatus for partial memory power shutoff
US9104413B2 (en) System and method for dynamic memory power management
US9471130B2 (en) Configuring idle states for entities in a computing device based on predictions of durations of idle periods
CN103608782A (zh) Lsb页面和msb页面中的选择性数据存储
CN105630405B (zh) 一种存储系统及采用该存储系统的读写方法
US8381003B2 (en) Memory relocation in computer for power saving
US10514848B2 (en) Data storage method for selectively storing data in a buffer preset in a memory of an electronic device or an inherent buffer in an SSD
US20140310552A1 (en) Reduced-power sleep state s3
US9601180B2 (en) Automatic partial array self-refresh
CN105608016B (zh) Dram与mram结合的固态硬盘及使用mram的存储卡
TW201636769A (zh) 響應於處理器電力喪失事件沖移資料內容之技術
US10146483B2 (en) Memory system
US11379027B2 (en) Electronic device and information recording method of electronic device
US10324959B2 (en) Garbage collection in storage system
US7944770B2 (en) Static random access memory system and control method for static random access memory system
US7024570B2 (en) Low-power indicator
JP5814825B2 (ja) 記憶装置及び記憶方法
EP3188028A1 (en) Cache management method and apparatus
KR101423867B1 (ko) L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법
US20200133862A1 (en) Asymmetric memory tag access and design
CN105653468B (zh) 一种使用mram的存储设备
US10303235B2 (en) Systems and methods for implementing power collapse in a memory
US20140156941A1 (en) Tracking Non-Native Content in Caches
CN110007739B (zh) 一种噪声屏蔽电路及芯片

Legal Events

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

Payment date: 20170424

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180423

Year of fee payment: 5