[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1109/ICCAD.2004.1382603acmconferencesArticle/Chapter ViewAbstractPublication PagesiccadConference Proceedingsconference-collections
Article

Hardware/software managed scratchpad memory for embedded system

Published: 07 November 2004 Publication History

Abstract

We propose a methodology for energy reduction and performance improvement. The target system comprises of an instruction scratchpad memory instead of an instruction cache. Highly utilized code segments are copied into the scratchpad memory, and are executed from the scratchpad. The copying of code segments from main memory to the scratchpad is performed during runtime. A custom hardware controller is used to manage the copying process. The hardware controller is activated by strategically placed custom instructions within the executing program. These custom instructions inform the hardware controller when to copy during program execution. Novel heuristic algorithms are implemented to determine locations within the program to insert these custom instructions, as well as to choose the best sets of code segments to be copied to the scratchpad memory. For a set of realistic benchmarks, experimental results indicate the method uses 50.7% lower energy (on average) and improves performance by 53.2% (on average) when compared to a traditional cache system which is identical in size. Cache systems compared had sizes ranging from 256 to 16K bytes and associativities ranging from 1 to 32.

References

[1]
{1} K. Lahiri et al., "Communication Architecture Based Power Management for Battery Efficient System Design," DAC, 2002.
[2]
{2} J. Luo and N. K. Jha, "Power-profile Driven Variable Voltage Scaling for Heterogeneous Distributed Real-time Embedded Systems," VLSI Design , 2003.
[3]
{3} F. Sun et al., "Custom-Instruction Synthesis for Extensible-Processor Platforms," TCAD, 2004.
[4]
{4} J. M. Rabaey, "Digital Integrated Circuits: A Design Perspective," Prentice Hall, 1996.
[5]
{5} J. Kin et al., "The Filter Cache: An Energy Efficient Memory Structure," IEEE Micro, 1997.
[6]
{6} J. Montanaro et at., "A 160MHz, 32b, 0.5W CMOS RISC microprocessor," JSSC, vol. 31(11), pp. 1703-1712, 1996.
[7]
{7} R. Banakar et. al., "Scratchpad Memory: A Design Alternative for Cache On-chip Memory in Embedded Systems," CODES, 2002.
[8]
{8} O. Avissar and R Barua, "An Optimal Memory Allocation Scheme for Scratch-Pad-Based Embedded Systems," ACM Trans. on Embedded Computing Systems, vol. 1, pp. 6-26, 2002.
[9]
{9} P.R. Panda, "Efficient Utilization of Scratch-Pad Memory in Embedded Processor Applications," European Design and Test Conference, Proceedings of, 1997.
[10]
{10} M. Kandemir and A. Choudhary, "Compiler-Directed Scratch Pad Memory Hierarchy Design and Management," DAC, 2002.
[11]
{11} F. Angiolini et.al., "Polynomial-Time Algorithm for On-Chip Scratch-pad Memory Partitioning," CASES, 2003.
[12]
{12} S. Udayakumaran and R. Barua, "Compiler-Decided Dynamic Memory Allocation for Scratch-Pac Based Embedded Systems," CASES, 2003.
[13]
{13} S. Steinke et.al., "Assigning Program and Data Objects to Scratchpad for Energy Reduction," DATE, 2002.
[14]
{14} S. Steinke et.al., "Reducing Energy Consumption by Dynamic Copying of Instructions onto Onchip Memory," ISSS, 2002.
[15]
{15} D. Burger and T. M. Austin, "The SimpleScalar Tool Set, Version 2.0," TR-CS.1342, University of Wisconsin-madison, June 1997.
[16]
{16} P. Bartlett et.al., "Profiling in the ASP Codesign Environment," Journal of Systems Architecture, vol. 46, no. 14, pp. 1263-1274, Elsevier, Netherlands, Dec. 2000.
[17]
{17} M. R. Garey and D. S. Johnson, "Computers and Intractability," W. H. Freeman and Company, New York, 2000.
[18]
{18} D. Brooks et.al., "Wattch: A Framework for Architectural-Level Power Analysis and Optimizations," ISCA, 2000.
[19]
{19} P. Shivakumar and N. P. Jouppi, "Cacti 3.0: An Integrated Cache Timing, Power, and Area Model," Technical Report 2001/2, Compaq Computer Corporation, August, 2001. 2001.
[20]
{20} IBM Microelectronics Division, "Embedded DRAM SA-27E," http://ibm.com/chips, 2002.
[21]
{21} C. Lee et.al., "'MediaBench: A Tool for Evaluating Multimedia and Communications Systems," IEEE MICRO 30, 1997.
[22]
{22} Synplicity Inc, "Synplify Pro," http://www.synpticity.com, 2004.
[23]
{23} R. Sedgewick, "Algorithm In C," Addison-Wesley, 3rd Edition, 1998.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICCAD '04: Proceedings of the 2004 IEEE/ACM International conference on Computer-aided design
November 2004
913 pages
ISBN:0780387023

Sponsors

Publisher

IEEE Computer Society

United States

Publication History

Published: 07 November 2004

Check for updates

Qualifiers

  • Article

Conference

ICCAD04
Sponsor:

Acceptance Rates

Overall Acceptance Rate 457 of 1,762 submissions, 26%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)1
Reflects downloads up to 01 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)COMPADJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2023.103022145:COnline publication date: 1-Dec-2023
  • (2017)LMStrProceedings of the International Symposium on Memory Systems10.1145/3132402.3132440(152-165)Online publication date: 2-Oct-2017
  • (2013)SPM-SieveProceedings of the 2013 International Conference on Compilers, Architectures and Synthesis for Embedded Systems10.5555/2555729.2555750(1-10)Online publication date: 29-Sep-2013
  • (2013)Dynamic task partition for video decoding on heterogeneous dual-core platformsACM Transactions on Embedded Computing Systems10.1145/2435227.243524912:1s(1-22)Online publication date: 29-Mar-2013
  • (2012)Integrating software caches with scratch pad memoryProceedings of the 2012 international conference on Compilers, architectures and synthesis for embedded systems10.1145/2380403.2380440(201-210)Online publication date: 7-Oct-2012
  • (2012)WCET-aware data selection and allocation for scratchpad memoryACM SIGPLAN Notices10.1145/2345141.224842547:5(41-50)Online publication date: 12-Jun-2012
  • (2012)WCET-aware data selection and allocation for scratchpad memoryProceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems10.1145/2248418.2248425(41-50)Online publication date: 12-Jun-2012
  • (2011)Architecture extensions for efficient management of scratch-pad memoryProceedings of the 21st international conference on Integrated circuit and system design: power and timing modeling, optimization, and simulation10.5555/2045364.2045369(43-52)Online publication date: 26-Sep-2011
  • (2011)Cache-tuning-aware scratchpad allocation from binariesProceedings of the 24th symposium on Integrated circuits and systems design10.1145/2020876.2020926(221-226)Online publication date: 30-Aug-2011
  • (2010)Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systemsProceedings of the Conference on Design, Automation and Test in Europe10.5555/1870926.1871199(1124-1129)Online publication date: 8-Mar-2010
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media