Enhancing the Memory Performance of Embedded Systems with the Flexible Sequential and Random Access Memory

The on-chip memory performance of embedded systems directly affects the system designers’ decision about how to allocate expensive silicon area. We investigate a novel memory architecture, flexible sequential and random access memory (FSRAM), for embedded systems. To realize sequential accesses, small “links” are added to each row in the RAM array to point to the next row to be prefetched. The potential cache pollution is ameliorated by a small sequential access buffer (SAB). To evaluate the architecture-level performance of FSRAM, we run the Mediabench benchmark programs [1] on a modified version of the Simplescalar simulator [2]. Our results show that the FSRAM improves the performance of a baseline processor with a 16KB data cache up to 55%, with an average of 9%. We also designed RTL and SPICE models of the FSRAM [3], which show that the FSRAM significantly improves memory access time, while reducing power consumption, with negligible area overhead.

[1]  Todd M. Austin,et al.  The SimpleScalar tool set, version 2.0 , 1997, CARN.

[2]  David J. Lilja,et al.  Measuring computer performance : A practitioner's guide , 2000 .

[3]  Chaitali Chakrabarti,et al.  Memory exploration for low power embedded systems , 1999, ISCAS'99. Proceedings of the 1999 IEEE International Symposium on Circuits and Systems VLSI (Cat. No.99CH36349).

[4]  M. Kandemir,et al.  Automatic data migration for reducing energy consumption in multi-bank memory systems , 2002, Proceedings 2002 Design Automation Conference (IEEE Cat. No.02CH37324).

[5]  A.D. Pimentel,et al.  Hardware versus hybrid data prefetching in multimedia processors: a case study , 2000, Conference Proceedings of the 2000 IEEE International Performance, Computing, and Communications Conference (Cat. No.00CH37086).

[6]  Nikil D. Dutt,et al.  Data cache sizing for embedded processor applications , 1998, Proceedings Design, Automation and Test in Europe.

[7]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[8]  Peter A. Beerel,et al.  Low-power sequential access memory design , 2002, Proceedings of the IEEE 2002 Custom Integrated Circuits Conference (Cat. No.02CH37285).

[9]  Lieven Eeckhout,et al.  Adaptive prefetching for multimedia applications in embedded systems , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[10]  Michael J. Flynn,et al.  A comparison of hardware prefetching techniques for multimedia benchmarks , 1996, Proceedings of the Third IEEE International Conference on Multimedia Computing and Systems.

[11]  David J. Lilja Measuring Computer Performance , 2000 .

[12]  Nikil D. Dutt,et al.  Architectural exploration and optimization of local memory in embedded systems , 1997, Proceedings. Tenth International Symposium on System Synthesis (Cat. No.97TB100114).

[13]  David J. Lilja,et al.  Data prefetch mechanisms , 2000, CSUR.

[14]  Wen-Tsong Shiue,et al.  Memory exploration for low power, embedded systems , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[15]  Ying Chen,et al.  FSRAM: Flexible Sequential and Random Access Memory for Embedded Systems , 2004 .

[16]  James E. Smith,et al.  Prefetching in supercomputer instruction caches , 1992, Proceedings Supercomputing '92.