내장형 시스템을 위한 선택적 뱅크 알고리즘을 이용한 데이터 캐쉬 시스템
Data Cache System based on the Selective Bank Algorithm
0
조회
0
다운로드
1
인용
0
참고문헌
키워드
초록
캐쉬의 성능을 향상시키는 가장 효과적인 방법은 프로그램 수행 특성에 내재되어 있는 시간적 (temporal locality) 지역성과 공간적 지역성 (spatial locality)을 활용하는 것이다. 본 논문은 프로그램 수행 특성에 적합한 시간적/공간적 지역성을 이용하기 위한 뱅크 선택 메커니즘을 가진 고성능 저전력 캐쉬 구조를 제안하였다. 제안하는 캐쉬 시스템은 다른 블록 크기와 다른 연관도를 가지는 두개의 캐쉬로 구성되어 진다. 즉 작은 블록 크기를 지원하는 직접사상 구조의 주 캐쉬(main direct-mapped cache)와 큰 블록을 지원하는 완전연관 버퍼 (fully associative buffer)로 구성되어 진다. 특히 주 캐쉬는 저전력을 위해 2-뱅크로 구성되며, 완전연관 버퍼에서 선택되어진 작은 블록은 제안된 뱅크 선택 알고리즘에 의해 주 캐쉬의 뱅크에 저장된다. 제안된 뱅크 선택 알고리즘과 3비트 상태 비트를 이용하여 시간적 지역성이 높은 데이터들을 주 캐쉬에 선택적으로 저장함으로써 고성능의 효과를 얻을 수 있었다. 제안된 알고리즘은 또한 충돌 미스 (conflict miss)와 캐쉬 오염 (cache pollution)을 효과적으로 줄여준다. 시뮬레이션 결과에 따르면, 평균 접근 실패율의 경우 Mibench 응용군에 대해 Victim 캐쉬에 비해 23%, STAS 캐쉬에 비해 32%의 감소효과를 보여준다. 평균 메모리 접근 시간의 경우 Victim 캐쉬에 비해 14%, STAS 캐쉬에 비해 18%의 감소효과를 얻을 수 있었다. 에너지 소비의 관점에서도 제안된 캐쉬 시스템은 Victim 캐쉬와 STAS 캐쉬에 비해 약 10% 감소 효과를 얻을 수 있었다.
Abstract
One of the most effective way to improve cache performance is to exploit both temporal and spatial locality given by any program executive characteristics. In this paper we present a high performance and low power cache structure with a bank selection mechanism that enhances exploitation of spatial and temporal locality. The proposed cache system consists of two parts, i.e., a main direct-mapped cache with a small block size and a fully associative buffer with a large block size as a multiple of the small block size. Especially, the main direct-mapped cache is constructed as two banks for low power consumption and stores a small block which is selected from fully associative buffer by the proposed bank selection algorithm. By using the bank selection algorithm and three state bits, We selectively extend the lifetime of those small blocks with high temporal locality by storing them in the main direct-mapped caches. This approach effectively reduces conflict misses and cache pollution at the same time. According to the simulation results, the average miss ratio, compared with the Victim and STAS caches with the same size, is improved by about 23% and 32% for Mibench applications respectively. The average memory access time is reduced by about 14% and 18% compared with the he victim and STAS caches respectively. It is also shown that energy consumption of the proposed cache is around 10% lower than other cache systems that we examine.
참고문헌 (18)
- W. Shiue, "Data memory design and exploration for low-power embedded systems", ACM Trams. Design Automation of Electronic Systems, 6(4), pp.553~568 (2001)
- S. Santhanam, "Strong ARM SA110-A 160Mhz 32b 0.5W CMOS ARM Processor", Hot Chips 8: A Symposium on High-Performance Chips (1996)
- A. j. Smith, "Cache Memories", ACM Computing Surveys, 14(3), pp.473~530 (1982)
- Kessler, R. E, "Inexpensive Implementations of Set-Associativity", Proc. of the 16th International Symposium on Computer Architectures, pp.131~139 (1989)
- Norman P. Jouppi, "Improving Direct-Mapped Cache Perfor mance by the Addition of a Small Fully Associative Cache and Prefetch Buffer", 17th ISCA, pp.347~364 (1990)
- C. Zhang, "Using a Victim Buffer in an Application-Specific Memory Hierarchy", Design Automation and Test in Europe Conference (DATE), pp.220~225 (2004)
- P. J. de Langen, "Reducing traffic generated by conflict misses in caches", The 1st ACM International Conference on Computing Frontiers, pp.235~239 (2004)
- A. Gonzalez, "Data Cache with Multiple Caching Strategies Tuned to Differnt Tyoes of Locality", Suppercomputing '95, pp.338~347 (1995)
- B. Juurlink, "Unified Dual Data Cache", Proceedings. Euromicro Symposium on Digital System Design, pp.33~40 (2003)
- Jude A. Rivers, "Reducing Conflicts in Direct-Mapped Caches with a Temporality-Based Design", Proceedings of the 1996 International Conference on Parallel Processing, 통권 : 1, pp.151~162 (1996)
- J. H. Lee, "A New Cache Architecture Based on Temporal and Spatial Locality", J. Systems Architecture, 46, pp.1451~1467 (2000)
- A. Naz, "Improving data. cache performance with integrated use of split caches, victim. cache and stream buffers", Proceedings of the Workshop. on Memory performance dealing with appli cations, systems and architecture, Conference (DATA) (2004)
- Guthaus, M.R, "MiBench: A free, commercially representative embedded benchmark suite", IEEE 4th Annual Workshop on Workload Characterization (2001)
- "Mibench Version 1.0"[URL]
- Henning, John L., "SPEC CPU2000: Measuring CPU Perfor mance in the New Millennium", IEEE Computer, 33(7), pp.28~35 (2000)
- "SPEC Benchmark Suite"[URL]
- The SimpleScalar tool set, version 2.0, "D. Burger", University of Wisconsin-Madison, ~, pp.Technical Report TR-97-1342 (1997)
- CACTI 3.0: An integrated cache timing and power, and area model, "G. Reinman", Compaq WRL, ~ (2001)
