IDEAS home Printed from https://ideas.repec.org/a/spr/jcomop/v23y2012i2d10.1007_s10878-010-9365-z.html
   My bibliography  Save this article

Analysis and approximation for bank selection instruction minimization on partitioned memory architecture

Author

Listed:
  • Minming Li

    (City University of Hong Kong)

  • Tiantian Liu

    (City University of Hong Kong)

  • Chun Jason Xue

    (City University of Hong Kong)

  • Yingchao Zhao

    (City University of Hong Kong)

Abstract

A large number of embedded systems include 8-bit microcontrollers for their energy efficiency and low cost. Multi-bank memory architecture is commonly applied in 8-bit microcontrollers to increase the size of memory without extending address buses. To switch among different memory banks, a special instruction, Bank Selection, is used. How to minimize the number of bank selection instructions inserted is important to reduce code size for embedded systems. In this paper, we consider how to insert the minimum number of bank selection instructions in a program to achieve feasibility. A program can be represented by a control flow graph (CFG). We prove that it is NP-hard to insert the minimum number of bank selection instructions if all the variables are pre-assigned to memory banks. Therefore, we introduce a 2-approximation algorithm using a rounding method. When the CFG is a tree or the out-degree of each node in the CFG is at most two, we show that we can insert the bank selection instructions optimally in polynomial time. We then consider the case when there are some nodes that do not access any memory bank and design a dynamic programming method to compute the optimal insertion strategy when the CFG is a tree. Finally, if the variables are not yet assigned, we show that it is NP-hard to decide the variable assignment with the minimum number of insertions needed even if the input CFG is a tree.

Suggested Citation

  • Minming Li & Tiantian Liu & Chun Jason Xue & Yingchao Zhao, 2012. "Analysis and approximation for bank selection instruction minimization on partitioned memory architecture," Journal of Combinatorial Optimization, Springer, vol. 23(2), pages 274-291, February.
  • Handle: RePEc:spr:jcomop:v:23:y:2012:i:2:d:10.1007_s10878-010-9365-z
    DOI: 10.1007/s10878-010-9365-z
    as

    Download full text from publisher

    File URL: http://link.springer.com/10.1007/s10878-010-9365-z
    File Function: Abstract
    Download Restriction: Access to the full text of the articles in this series is restricted.

    File URL: https://libkey.io/10.1007/s10878-010-9365-z?utm_source=ideas
    LibKey link: if access is restricted and if your library uses this service, LibKey will redirect you to where you can use your library subscription to access this item
    ---><---

    As the access to this document is restricted, you may want to search for a different version of it.

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:spr:jcomop:v:23:y:2012:i:2:d:10.1007_s10878-010-9365-z. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: Sonal Shukla or Springer Nature Abstracting and Indexing (email available below). General contact details of provider: http://www.springer.com .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.