Deriving Resource Efficient Designs Using the REFLECT Aspect-Oriented Approach - (Extended Abstract)

نویسندگان

  • José Gabriel F. Coutinho
  • João M. P. Cardoso
  • Tiago Carvalho
  • Ricardo Nobre
  • Sujit Bhattacharya
  • Pedro C. Diniz
  • Liam Fitzpatrick
  • Razvan Nane
چکیده

In the context of the REFLECT project[1] we have developed an aspect-oriented compilation and synthesis toolchain that aims at facilitating the mapping of applications described in high-level imperative programming languages, such as C, to heterogeneous and configurable computing systems. More specifically, we have designed an aspect-oriented domain-specific language, called LARA[2], that allows programmers to convey application-specific and domain-specific knowledge as a way to capture non-functional concerns. The LARA specifications and the subsequent control of the tools via a code weaver allows a seamless exploration of alternative designs and run-time adaptive strategies, in effect enabling designspace exploration (DSE). Figure 1 depicts a specific instantiation of the REFLECT aspect-oriented design-flow, which generates resource-efficient Xilinx designs from C kernels and LARA descriptions. This design-flow operates as follows. There are 3 main inputs: (1) C application sources, (2) input parameters that control which and how kernels are synthesized to hardware, and (3) LARA aspects that capture the DSE strategy that derives the final designs. The DSE weaver invokes the Harmonic weaver to compute the word-lengths of variables based on user-provided parameters, such as input ranges and required output accuracy. The results of the word-length analysis are captured as a LARA aspect and passed down to the Reflectc weaver, which controls the CoSy [3] engines. The word-length information contains the precision of each variable, including the minimum number of bits for the integer, fraction and signal that satisfy the target output accuracy. The Reflectc weaver receives the LARA aspect with the word-length information and the C kernel, and uses the weaveshrink CoSy engine [3] to change data-types from floating-point to fixed-point using the specified word-length information. Next, the weaver invokes the DWARV code generator to derive the optimized design in VHDL. Finally, the DSE weaver invokes the Xilinx ISE tools to generate the corresponding hardware design.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

MEng Individual Project Aspect Oriented Design for Dataflow Engines

Dataflow designs implemented on custom streaming architectures can be orders of magnitudes more efficient than traditional software, but they are developed with reduced productivity. We propose a novel design flow for generating dataflow designs based on Aspect-oriented programming and explain how the proposed approach can be used to decouple design optimisation from design specification by enc...

متن کامل

Automating Product Derivation in Software Product Line Engineering

This paper deals with deriving software products from a software product line (SPL) in an efficient and automated way. We present an approach that (1) represents the SPL with a set of integrated models, (2) specifies variability and configuration options for possible product variants and (3) automatically derives executable products with model transformations and aspect-oriented techniques. The...

متن کامل

PROBE: From Requirements and Design to Proof Obligations for Aspect- Oriented Systems

† On leave from Computer Science Department, The Technion, Haifa, Israel. Abstract Aspect-oriented software development (AOSD) techniques support the systematic modularization and composition of crosscutting concerns, the so-called “aspects”. Though AOSD techniques have been proposed to handle crosscutting concerns at various stages during the software life cycle, there are gaps between the asp...

متن کامل

A New Approach to Control and Guide the Mapping of Computations to FPGAs

Field-Programmable Gate-Arrays (FPGAs) are becoming increasingly popular as computing platforms for high-performance embedded systems. Their flexibility and customization capabilities allow them to achieve orders of magnitude better performance than conventional embedded computing systems. Programming FPGAs is, however, cumbersome and error-prone and as a result their true potential is often on...

متن کامل

Measurement of Dynamic Metrics Using Dynamic Analysis of Programs

Dynamic analysis of programs is a prerequisite for the measurement of dynamic metrics. Dynamic analysis of an application involves the collection of run-time data from the run-time profiles or from dynamic models of the software system. Dynamic analysis is more precise specially in handling object-oriented features like inheritance, polymorphism, etc but is at the same time, slow and complex pr...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013