Methods, apparatus and software products are described for design-time
data-assignment techniques for hierarchical memories, e.g., multi-banked
memories in an essentially digital system as well as methods, apparatus
and software products for run-time memory management techniques of such a
system. Memory assignment techniques are described for assigning data to
a hierarchical memory particularly for multi-tasked applications where
data of dynamically created/deleted tasks is allocated at run-time. The
energy consumption of hierarchical memories such as multi-banked memories
depends largely on how data is assigned to the memory banks. Methods,
apparatus and software products are described for design-time
data-assignment techniques for hierarchical memories, e.g., multi-banked
memories in an essentially digital system which improve a cost function
such as energy consumption.