• DocumentCode
    1768788
  • Title

    Simulation-based memory dependence checker for CGRA-mapped code verification

  • Author

    Heejun Shim ; Soojung Ryu

  • Author_Institution
    Processor Archit. Lab., Samsung Electron., Yongin, South Korea
  • fYear
    2014
  • fDate
    1-5 June 2014
  • Firstpage
    1235
  • Lastpage
    1238
  • Abstract
    In a coarse-grained reconfigurable array (CGRA) architecture, software pipelining is primarily used to improve performance by exploiting loop-level parallelism (LLP). In this technique, the loop-carried memory dependence in user code prevents high parallelism, and it is difficult to be detected. In this paper, we propose a simulation-based memory dependence checker, which is used in the verification of CGRA-mapped code. We use as a reference the memory access behavior of the sequential processor and compare it to that of the CGRA-mapped code. Although it cannot guarantee perfect verification of memory dependence violations, our approach is useful by guiding the programmer to modify the source code. When a memory dependence violation is detected, our approach provides debugging information from the sequential compiled code. Moreover, our checker is implemented in the register transfer level; it enables verification time reduction and the testing of the CGRA-mapped code with a large test input stream in FPGA or ASIC implementations.
  • Keywords
    application specific integrated circuits; field programmable gate arrays; formal verification; parallel processing; pipeline processing; program control structures; reconfigurable architectures; storage management; ASIC implementation; CGRA architecture; CGRA-mapped code testing; CGRA-mapped code verification; FPGA implementation; LLP; coarse-grained reconfigurable array architecture; debugging information; large test input stream; loop-carried memory dependence; loop-level parallelism; memory access behavior; memory dependence violations; performance improvement; register transfer level; sequential compiled code; sequential processor; simulation-based memory dependence checker; software pipelining; source code modification; user code; verification time reduction; Computer architecture; History; Indexes; Pipeline processing; Processor scheduling; Registers; Software; CGRA; Memory Dependence; Verification;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Circuits and Systems (ISCAS), 2014 IEEE International Symposium on
  • Conference_Location
    Melbourne VIC
  • Print_ISBN
    978-1-4799-3431-7
  • Type

    conf

  • DOI
    10.1109/ISCAS.2014.6865365
  • Filename
    6865365