News headline
Application to the ICT 2008 event on 25-27 November 2008 in Lyon, France
News headline
MORPHEUS presentation at VLSI SoC 2008 conference October 13-15 Rhodes Island, Greece.
News headline
MORPHEUS-AETHER Autumn School and Workshop Oct 7-9 2008 in Lugano, Switzerland.
News headline
RAW 2008,15th Reconfigurable Architectures Workshop. April 14-15, 2008. Miami, Florida, USA.
News headline
MORPHEUS at DATE 2008 Munich, Germany 10-14 March 2008.
News headline
Two papers at SYMPA08 conference. Fribourg, Switzerland, Feb. 11-13 2008.

MORPHEUS (IST-4-027342) WP2 METHODOLOGIES AND TOOLS.

Objectives

The goal of this MORPHEUS work package is to provide a semi-automatic tool platform for reconfigurable computing supporting a fully integrated and entire design process rather than isolated parts.

Furthermore, we are interested in having realistic albeit ambitious goals. Developing the entire platform from the beginning may pose a high risk within the time frame and the personnel constraints of a single work package. We intend to use, when possible, existing software and enhance it appropriately to develop tools for the reconfigurable components. The work proposed by the current proposal intends to bridge the gap between what is readily available and what is needed to develop a fully integrated, semi-automatic reconfigurable workbench.
We address here the design of an application on a reconfigurable platform, that is to say the design of an architecture dedicated to the application ("spatial" or "hardware" computation, i.e. configuration of a reconfigurable array, possible selection of microprocessors, etc) as well as the implementation of the application on this architecture ("time" or "software" computation, i.e. mapping of tasks on operators array, run-time reconfigurations scheduling, code generation on processors, etc).

Challenges

The design flow of a global application implies many actors from algorithm specialists to implementation designers. The global challenge for the tools provided to these actors is to allow them to take full benefit of their expertises.
The tools provided by MORPHEUS will have to tackle several challenges. These challenges will constitute the list of criteria to evaluate the capabilities of the tools finally offered to the users:
a) design productivity
b) architecture resources utilisation efficiency (time and space parallelisation)
c) design portability (to ensure the sustainability of applications)
d) debug & verification
e) performance modelling
Some of these challenges are particularly demanding because of the nature of Reconfigurable Computing and have not, up to now, encountered a satisfying answer. This is particularly the case for efficient resource utilisation because of the large spectrum of solutions that re-configurability offers.

Toolset position within a global approach

A global design flow can be considered at 2 levels:
• A high level where the design flow starts from a high level description of the application, and, using an abstract description of an heterogeneous architecture results in a particular partitioning,
• A low level refined design flow, optimised for a particular targeted architecture and producing both hardware and software code.

MORPHEUS will mainly address this lower level approach. MORPHEUS tools will thus first address the MORPHEUS architecture, which is mainly composed of a host processor, combined with a fine grain and coarse grain reconfigurable array. However, we will employ techniques transposable to most architectures.

The project will not focus on the back-end part (very specific of the hardware, like logic synthesis, place and route, bit-stream generation, etc).
The set of tools offered by MORPHEUS will satisfy a modular approach. This is important for several reasons. First, the research and development process of new components can be carried out independently.
Furthermore, it allows multiple approaches to co-exist and it allows existing (e.g. industrial) software/hardware packages to be incorporated in a single platform. Finally modularity allows for standardisation.
It should be noted that we envision the tool chain to be fully compatible with existing back-end (e.g. FPGA) industrial tools (synthesis, place and route, etc).

n
n
n
The top border of MORPHEUS tools can be defined as the output of "high level compilers" (HLC) whose role would be to produce the mapping of an application description towards a roughly defined architecture. This mapping would either be done automatically or through an interactive design-space exploration [LEN03][VUL04] [ZHA00].

The development of these HLC tools is out of the scope of the project: it should typically be addressed in further studies (in FP6 IST call 5 for example) and thus their output shall be considered as the potential input for the tools developed in this project. The log file for generating the configuration dependency graph has to be specified from bottom up view. Content of this log-file has to be the schedule of the different tasks and the resulting allocation of the hardware resources. The results of this specification are the requirements on log files of future (NOT part of MORPHEUS!) high-level compilers.
Moreover, the existing model-based verification techniques/tools has to be extended in a manner, that dynamic reconfiguration schedules as well as data dependencies are an additional input for the verification tool and the functionality/task models to be formally verified, including the derived constraints/properties to be verified. These constraints/properties should be derived from the log files of the high-level compiler and the generated configuration-dependency graph.
This input therefore consists in the description of a rough mapping of the application on an architecture. This mapping may possibly be composed of the three following partitioned parts (Figure 1):

• reconfigurable function (spatial) descriptions combined with
• processor-mapped sequential descriptions and
• configuration state descriptions (characteristics and dependencies of application modes).

The languages necessary for these descriptions will have to be defined or chosen among possible candidates identified. One can already mention as reasonable candidates for the three different inputs from high level compilation:

• Set of Tasks bound to protocols: tasks are CDFGs to be bound to protocol. This opens the way to possible connection to many high level design tools like SIMULINK, etc.
• Task activations generated/extracted from control flow (dynamic configuration description):Process Networks (CSP-like, stream computations, object-oriented, etc.)
• Programmable flow that includes hardware process activations: processor mapped sequential descriptions (C language, etc.)

On the other end, the bottom border of the set of proposed tools can be defined as the input of the "back end tools", such as logic synthesis tools, place & route and bit-stream generation. As stated above, we consider that these tools are not in the scope of this work package since they are considered as either available on the market or provided with the architecture (even MORPHEUS architecture).

Therefore, the outputs of the proposed tools developed in this work package are a hardware description of the spatial implementation (in VHDL for fine grain and adequate description for coarse grain possibly based on open models of different blocks of architecture) and the software description in C language plus possible complementary micro-code when necessary.

Figure 1 MORPEUS tools

Starting from the 3 inputs defined above (spatial reconfigurable function descriptions, sequential function descriptions and configuration set descriptions), the design flow is structured around the following items: spatial design, dynamic control design and sequential code retargetable compilation.

Another way of viewing the design flow is to distinguish between design time components and runtime components. The former, such as spatial computation, concern tools preparing static code while the latter, such as dynamic control design and sequential code compilation, concern tools preparing dynamic management.

The low level spatial design tools consist of either COTS environments like ISE XILINX, PACT, M2000, either tools developed in the project to optimise the integration.


Template by FreeTemplates4all.com
Design downloaded from FreeWebTemplates.com
Free web design, web templates, web layouts, and website resources!