|
ABSTRACT
In this paper we present a low-power tag organization for physically tagged caches in embedded processors with virtual memory support. An exceedingly small subset of tag bits is identified for each application hot-spot so that only these tag bits are used for cache access with no performance sacrifce as they provide complete address resolution. The minimal subset of physical tag bits, i.e. the compressed tag, is dynamically updated following the changes in the physical address space of the application. Special support from the operating system (OS) is introduced in order to maintain the compressed tag during program execution. The compressed tag is updated by the OS to match the current set of physical memory pages allocated to the application. We have proposed efficient algorithms that are incorporated within the memory allocator and the dynamic linker in order to achieve dynamic update of the compressed tags in the cases where the mapping between virtual and physical addresses is modifed; such cases include memory allocation/deallocation and swapping physical pages on the secondary memory storage. The only hardware support needed within the I/D-caches is the support for disabling bitlines of the tag arrays. An extensive set of experimental results demonstrates the efficacy of the proposed approach.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
J. Montanaro et al., "A 160Mhz, 32b 0.5W CMOS RISC Microprocessor", in IEEE ISCC, pp. 214--229, February 1996.
|
| |
2
|
John H. Edmondson , Paul I. Rubinfeld , Peter J. Bannon , Bradley J. Benschneider , Debra Bernstein , Ruben W. Castelino , Elizabeth M. Cooper , Daniel E. Dever , Dale R. Donchin , Timothy C. Fischer , Anil K. Jain , Shekhar Mehta , Jeanne E. Meyer , Ronald P. Preston , Vidya Rajagopalan , Chandrasekhara Somanathan , Scott A. Taylor , Gilbert M. Wolrich, Internal organization of the Alpha 21164, a 300-MHz 64-bit quad-issue CMOS RISC microprocessor, Digital Technical Journal, v.7 n.1, p.119-135, Jan. 1995
|
| |
3
|
Atsushi Hasegawa , Ikuya Kawasaki , Kouji Yamada , Shinichi Yoshioka , Shumpei Kawasaki , Prasenjit Biswas, SH3: High Code Density, Low Power, IEEE Micro, v.15 n.6, p.11-19, December 1995
[doi> 10.1109/40.476254]
|
| |
4
|
|
| |
5
|
|
| |
6
|
Jesung Kim , Sang Lyul Min , Sanghoon Jeon , Byoungchu Ahn , Deog-Kyoon Jeong , Chong Sang Kim, U-cache: a cost-effective solution to synonym problem, Proceedings of the 1st IEEE Symposium on High-Performance Computer Architecture, p.243, January 22-25, 1995
|
| |
7
|
|
| |
8
|
N. Bellas, I. Hajj and C. Polychronopoulos, "A detailed, transistor-level energy model for SRAM-based caches", in ISCAS, pp. 198--201, June 1999.
|
| |
9
|
|
| |
10
|
Chunho Lee , Miodrag Potkonjak , William H. Mangione-Smith, MediaBench: a tool for evaluating and synthesizing multimedia and communicatons systems, Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, p.330-335, December 01-03, 1997, Research Triangle Park, North Carolina, United States
|
| |
11
|
E. Witchel and K. Asanovic, "The span cache: software controlled tag checks and cache line size", in Workshop on Complexity-Effective Design, 28th ISCA, June 2001.
|
|