
Memory Allocation Problems in Embedded Systems
Optimization Methods
By: Maria Soto, Marc Sevaux, André Rossi, Johann Laurent
Hardcover | 14 December 2012 | Edition Number 1
At a Glance
208 Pages
24.13 x 16.26 x 2.54
Hardcover
$395.75
or 4 interest-free payments of $98.94 with
orShips in 5 to 10 business days
The significant development in embedded systems is mainly due to advances in nano-technology. These continuous advances have made possible the design of minia- turized electronic chips, leading to drastically extend the features supported by embed- ded systems. Smartphones that can surf the WEB and process HD images are a typical example. In addition to market pressure, this context has favored the development of Computer Assisted Design CAD software, which bring a deep change in the designers' line of work. While technology offers more and more opportunities, the design of em- bedded systems becomes more and more complex. Indeed, the design of an integrated circuit, whose size is calculated in billions of transistors, thousands of memories, etc., requires the use of competitive computer tools. These tools have to solve optimization problems to ensure a low cost in terms of area and time, and they must meet some standards in electronics.
Currently, in the electronics industry, the problems are often addressed using either ad-hoc methods based on the designer expertise or general methods (typically genetic algorithms). But both solving methods do not work well in large scale industrial problems.
On the other hand, computer-aided design software like Gaut [Gau93, COU 06] have been developed to generate the architecture of a chip (circuit) from its specifi- cations. While the design process is significantly faster with these types of software, the generated layouts are considered to be poor on power consumption and surface compared to human expert designed circuits. This is a major drawback as embedded products have to feature low-power consumption. In the design of embedded systems, memory allocation and data assignment are among the main challenges that electronic designers have to face. Indeed, they deeply impact the main cost metrics (power consumption, performance and area) in elec- tronic devices [WUY 96]. Thus designers of embedded system have to carefully pay attention to minimize memory requirements, improving memory throughput and lim- iting the power consumption by the system's memory. Electronic designers attempt to minimize memory requirements with the aim of lowering the overall system costs.
Moreover, the need for optimization of the allocation of data structures is expected to become even more stringent in the future, as embedded systems will run heavy com- putations. As an example, some cell phones already support multi threading operating systems.
For these reasons, we are interested in the allocation of data structures into memory banks. This problem rather difficult to handle is often left to the compiler with which automatic rules are applied. Nevertheless, an optimal allocation of data to memory banks may lead to great savings in terms of running time and energy consumption. As it has often been observed in microelectronics, this complex problem is poorly or not modeled. The proposed solutions are based on a lower modeling level that often only considers one objective at a time. Also, the optimization of methods is little (or not) quantified, only the running time is available and assessed. Thus, the models and data are not analyzed much. In this work we model this problem and propose optimization methods from oper- ations research for addressing it.
II. Unconstrained memory allocation problem
III. Memory allocation with constraint on the number of memory banks
IV. General memory allocation problem
V. Dynamic memory allocation problem
VI. Conclus
Introduction ix
Chapter 1. Context 1
1.1. Embedded systems 2
1.1.1. Main components of embedded systems 3
1.2. Memory management for decreasing power consumption, performance and area in embedded systems 4
1.3. State of the art in optimization techniques for memory management and data assignment 8
1.3.1. Software optimization 9
1.3.2. Hardware optimization 11
1.3.3. Data binding 16
1.3.3.1. Memory partitioning problem for low energy 17
1.3.3.2. Constraints on memory bank capacities and number of accesses to variables 18
1.3.3.3. Using external memory 19
1.4. Operations research and electronics 21
1.4.1. Main challenges in applying operations research to electronics 23
Chapter 2. Unconstrained Memory Allocation Problem 27
2.1. Introduction 28
2.2. An ILP formulation for the unconstrained memory allocation problem 31
2.3. Memory allocation and the chromatic number 32
2.3.1. Bounds on the chromatic number 33
2.4. An illustrative example 35
2.5. Three new upper bounds on the chromatic number 38
2.6. Theoretical assessment of three upper bounds 45
2.7. Computational assessment of three upper bounds 49
2.8. Conclusion 53
Chapter 3. Memory Allocation Problem With Constraint on the Number of Memory Banks 57
3.1. Introduction 58
3.2. An ILP formulation for the memory allocation problem with constraint on the number of memory banks 61
3.3. An illustrative example 64
3.4. Proposed metaheuristics 65
3.4.1. A tabu search procedure 66
3.4.2. A memetic algorithm 69
3.5. Computational results and discussion 71
3.5.1. Instances 72
3.5.2. Implementation 72
3.5.3. Results 73
3.5.4. Discussion 75
3.6. Conclusion 75
Chapter 4. General Memory
Allocation Problem 77
4.1. Introduction 78
4.2. ILP formulation for the general memory allocation problem 80
4.3. An illustrative example 84
4.4. Proposed metaheuristics 85
4.4.1. Generating initial solutions 86
4.4.1.1. Random initial solutions 86
4.4.1.2. Greedy initial solutions 86
4.4.2. A tabu search procedure 89
4.4.3. Exploration of neighborhoods 91
4.4.4. A variable neighborhood search hybridized with a tabu search 93
4.5. Computational results and discussion 94
4.5.1. Instances used 95
4.5.2. Implementation 95
4.5.3. Results 96
4.5.4. Discussion 97
4.5.5. Assessing TabuMemex 101
4.6. Statistical analysis 105
4.6.1. Post hoc paired comparisons 106
4.7. Conclusion 107
Chapter 5. Dynamic Memory Allocation Problem 109
5.1. Introduction 110
5.2. ILP formulation for dynamic memory allocation problem 113
5.3. An illustrative example 116
5.4. Iterative metaheuristic approaches 119
5.4.1. Long-term approach 119
5.4.2. Short-term approach 122
5.5. Computational results and discussion 123
5.5.1. Results 124
5.5.2. Discussion 125
5.6. Statistical analysis 128
5.6.1. Post hoc paired comparisons 129
5.7. Conclusion . 130
Chapter 6. MemExplorer: Cases Studies 131
6.1. The design flow 131
6.1.1. Architecture used 131
6.1.2. MemExplorer design flow 132
6.1.3. Memory conflict graph 134
6.2. Example of MemExplorer utilization 139
Chapter 7. General Conclusions and Future Work 147
7.1. Summary of the memory allocation problem versions 147
7.2. Intensification and diversification 149
7.2.1. Metaheuristics for memory allocation
problem with constraint on the number of memory banks 149
7.2.1.1. Tabu-Allocation 149
7.2.1.2. Evo-Allocation 151
7.2.2. Metaheuristic for general memory allocation problem 151
7.2.3. Approaches for dynamic memory allocation problem 152
7.3. Conclusions 152
7.4. Future work 154
7.4.1. Theoretical perspectives 154
7.4.2. Practical perspectives 156
Bibliography 159
Index 181
ISBN: 9781848214286
ISBN-10: 1848214286
Series: Wiley-ISTE Series
Published: 14th December 2012
Format: Hardcover
Language: English
Number of Pages: 208
Audience: Professional and Scholarly
Publisher: John Wiley & Sons Inc (US)
Country of Publication: GB
Edition Number: 1
Dimensions (cm): 24.13 x 16.26 x 2.54
Weight (kg): 0.49
Shipping
| Standard Shipping | Express Shipping | |
|---|---|---|
| Metro postcodes: | $9.99 | $14.95 |
| Regional postcodes: | $9.99 | $14.95 |
| Rural postcodes: | $9.99 | $14.95 |
Orders over $79.00 qualify for free shipping.
How to return your order
At Booktopia, we offer hassle-free returns in accordance with our returns policy. If you wish to return an item, please get in touch with Booktopia Customer Care.
Additional postage charges may be applicable.
Defective items
If there is a problem with any of the items received for your order then the Booktopia Customer Care team is ready to assist you.
For more info please visit our Help Centre.
You Can Find This Book In

CompTIA A+ Complete Study Guide, 2-Volume Set
Volume 1 Core 1 Exam 220-1201 and Volume 2 Core 2 Exam 220-1202
Paperback
RRP $107.95
$75.75
OFF

Digital Technologies for Wind Turbine Control and Integration
Advances in Digital Technologies for Smart Applications
Hardcover
RRP $305.00
$263.75
OFF

Application of Computational Techniques in Power Systems for Power Quality Improvement
Knowledge-based Engineering for Innovation
Hardcover
RRP $168.00
$149.75
OFF





















