DOC PREVIEW
Software Virtual Memory Management for MMU Less Embedded Systems

This preview shows page 1-2-19-20 out of 20 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Software Virtual Memory Management for MMU-lessEmbedded SystemsSiddharth ChoudhuriTony GivargisTechnical Report CECS-05-16November 6, 2005Center for Embedded Computer SystemsUniversity of California, IrvineIrvine, CA 92697-3425, USA(949) 824-8168{sid, givargis}@cecs.uci.eduAbstractFor an embedded system designer, the rise in processing speeds of embedded processors and micro-controller evolution has lead to the possibility of running computation and data intensive applicationson small embedded devices that earlier only ran on desktop-class systems. From a memory stand point,there is a similar need for running larger and more data intensive applications on embedded devices.However, support for large memory adadress spaces, specifically, virtual memory, for MMU-less em-bedded systems is lacking. In this paper, we present a software virtual memory scheme for MMU-lesssystems based on an application level virtual memory library and a virtual memory aware assembler.Our virtual memory support is transparent to the programmer, can be tuned for a specific application,correct by construction, and fully automated. Our experiements validate the feasibility of virtual memoryfor MMU-less embedded systems using benchmark programs.Contents1 Introduction 12 Related Work 33 Technical Approach 43.1 System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43.2 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.3 Virtual Memory Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.3.1 Approach 1 - Pure VM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.3.2 Approach 2 - Fixed Address VM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.3.3 Approach 3 - Selective VM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Experiments 94.1 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94.2 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Conclusion 15References 16iList of Figures1 Overall Design Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Memory Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Hit Rate - Pure VM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Hit Rate - Fixed Address VM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Execution Time Comparision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Hit Rate Variation for Benchmarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Average Memory Access Time for Benchmarks . . . . . . . . . . . . . . . . . . . . . . . . 15iiSoftware Virtual Memory Management for MMU-less Embedded SystemsSiddharth Choudhuri, Tony GivargisCenter for Embedded Computer SystemsUniversity of California, IrvineIrvine, CA 92697-3425, USA{sid,givargis}@cecs.uci.eduhttp://www.cecs.uci.eduAbstractFor an embedded system designer, the rise in processing speeds of embedded processors and microcontrollerevolution has lead to the possibility of running computation and data intensive applications on small em-bedded devices that earlier only ran on desktop-class systems. From a memory stand point, there is a similarneed for running larger and more data intensive applications on embedded devices. However, support forlarge memory adadress spaces, specifically, virtual memory, for MMU-less embedded systems is lacking.In this paper, we present a software virtual memory scheme for MMU-less systems based on an applica-tion level virtual memory library and a virtual memory aware assembler. Our virtual memory support istransparent to the programmer, can be tuned for a specific application, correct by construction, and fullyautomated. Our experiements validate the feasibility of virtual memory for MMU-less embedded systemsusing benchmark programs.1 IntroductionEmbedded ubiquitous devices have revolutionized our day to day life. Most of these devices are based onmicrocontrollers and low end processors. The rise in use and variety of such embedded systems is drivenby the fact that microcontrollers and low end embedded processors are cheap, easy to program using welldefined programming models, and provide great flexibility in design and function of embedded systems.1According to the semiconductor industry association [19], the global microcontroller market, driven byconsumer and automotive applications, will reach $13.5 billion by 2007. It is estimated that in five years, thenumber of processors in the average home could grow from 40 to 280 and the number of embedded chipssold to support increasingly intelligent devices could grow to over nine billion [19]. In fact, microcontrollersaccount for more than 97% of total processors sold [6].While microcontrollers were initially designed for small control based applications, driven by Moore’slaw, this class of processors have evolved from tiny 4-bit systems running at a few KHz to more complex8/16-bit systems running at a few MHz, as well as some 32-bit systems running at 100s of MHz [18].For an embedded system designer, this steady rise in processor speed has lead to the possibility ofrunning complex and computationally intensive applications on small embedded devices that could earlierrun only on desktop-class systems. From a memory stand point, there is a similar need for running largerand more data intensive applications on embedded devices. However, support for large memory …


Software Virtual Memory Management for MMU Less Embedded Systems

Download Software Virtual Memory Management for MMU Less Embedded Systems
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Software Virtual Memory Management for MMU Less Embedded Systems and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Software Virtual Memory Management for MMU Less Embedded Systems 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?