The Design Space Exploration (DSE) methodology proposed in the MULTICUBE project allows a fast optimization of parameterized system architecture towards a set of objective functions (e.g., energy, delay and area). This is obtained by executing an optimization routine within an explorer tool (e.g. Multicube Explorer) which interacts with a system-level simulator (e.g. Multicube SCoPE). The explorer toll provides a set of sampling and optimization techniques to help finding the best objective-function trade-offs. It also provides an XML interface for supporting new platform/architecture simulators.

Among other within the MULTICUBE project the DSE methodology has been deployed in different tools publicly available as Multicube explorer, modeFRONTIER and Multicube SCoPE which software can be used independently and are available with different licenses.

An open source DSE tool-flow is freely available and is here used for demonstrating the capabilities of the proposed methodology and the portability of the overall flow towards different architectural optimization problem.

Design flow example

Considering the open-source tool-chain, the following figure describes the interaction between Multicube Explorer and Multicube SCoPE (i.e. the System Level Simulator):

XML interface (System metrics and configuration): Contains design space definition with the parameters of the different target platforms that belong to the design space.

Multicube explorer: Instantiates a set of architectural configurations by means of the design space iterators, and passes the corresponding representation to the XML driver which will execute the simulator through the requested iterations.

System-level simulator (SCoPE): The system architect provides a simulator or which can also be develop using Multicube-SCoPE. This module analyzes the system performance, supports the dynamically reconfigurable XML system description (provided by the XML interface) and provides the required system metrics required to drive the DSE process automatically.

Downloads and examples

In order to install Multicube Explorer and Multicube-SCoPE it is necessary to have the following packages installed in the system:

  • g++
  • flex
  • bison
  • gnuplot
  • libxml2
  • libxml2-dev
Multicube explorer is an open source tool and it's available for download here.

An example architectural database for the SESC multiprocessor architecture and the corresponding XML design space definition can be found here.

Multicube-SCoPE can be downloaded here.

The Multicube-SCoPE can be downloaded separately with the following links:

M3P SCoPE XML Plug-in (V1.0.5) is available for download Multicube-SCoPE can be downloaded here.

SCoPE v1.1.5 and manual.

An auto-installation script is available here. Note that for using this script you need also to install into your system the package:

  • patch

An example of the usage of M3-SCoPE in combination with M3Explorer for design space exploration, the links below provide an MPEG4. The example can be exercised in three different ways: a virtual machine image, execution an installation script or manually getting all the components. Please, follow the next links for downloading. Additionally you can take a look on the report generated by M3Explorer, analyzing the design space.

MPEG4 Example License

The MPEG4 binary files are provided by the Interuniversitair Micro-Electronica Centrum (IMEC) under the terms of the following lincense.

Downloadable files

For easy checking how the exploration is performed, an image of a virtual machine ready to execute with VMWare is provided:

Self installation and execution script.

For manual installation the components needed and example are:

Copyright 2009 MULTICUBE Consortium