• DocumentCode
    3072166
  • Title

    Optimization of Bank Switching Instructions in Embedded Systems through Static Analysis of Machine Codes

  • Author

    Chacko, Mariamma ; Jacob, Poulose

  • Author_Institution
    Dept. of Ship Technol., Cochin Univ. of Sci. & Technol., Cochin
  • fYear
    2009
  • fDate
    6-7 March 2009
  • Firstpage
    76
  • Lastpage
    80
  • Abstract
    This paper describes a static machine code analyzer which helps to eliminate the redundant bank switching instructions in partitioned memory architectures. Our approach rests on a state transition diagram representing the memory bank switching corresponding to each bank selection instruction. Redundant data memory bank selection instructions in the intraprocedural sequence, loops and interprocedural routines in the application program are eliminated. Analysis is done at machine code levels, so no software or runtime overhead. This results in reduced code size as well as increased execution speed. No assertion or annotated assembly code is needed. This method scales well into large number of memory blocks as well as other architectures, once appropriate information is available. A prototype based on PIC 16F87X microcontrollers is described. A detailed algorithm is prescribed in this paper.
  • Keywords
    embedded systems; memory architecture; PIC 16F87X microcontrollers; bank switching instruction optimization; intraprocedural sequence; machine codes; memory blocks; partitioned memory architectures; redundant data memory bank selection instructions; static analysis; static machine code analyzer; Application software; Assembly; Embedded software; Embedded system; Memory architecture; Microcontrollers; Optimizing compilers; Random access memory; Runtime; Software safety;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Advance Computing Conference, 2009. IACC 2009. IEEE International
  • Conference_Location
    Patiala
  • Print_ISBN
    978-1-4244-2927-1
  • Electronic_ISBN
    978-1-4244-2928-8
  • Type

    conf

  • DOI
    10.1109/IADCC.2009.4808984
  • Filename
    4808984