YAPI 2.1.0

New features:
  1. Multicast added. Fifos and input ports can be given as arguments to constructors multiple times. See Section 2.2.4 of the YAPI user's manual.
  2. License changed from GPL to LGPL.
  1. vya-1.4.0, video yapi data types and coding guidelines.
  2. util-1.1.0, parse options utilities taken from PFSPD tool set. Now LGPL.
  3. pc-1.1.0, producer-consumer example.
  4. bytestreamfebe-1.1.0, bytestream frontend and backend.
  5. pfspdfebe-1.1.0, PFSPD frontend and backend.
  6. scaling-1.1.0, 2D video scaling.
  7. videomux-1.0.0, combining of video streams based on image positions and depths.
  8. jpegdec-1.0.0, JPEG decoding.

YAPI 2.0.0

First SourceForge release.
  1. Build system has been replaced by automake.
  2. Directory structure has been changed.
  3. Multithreading kernels have been replaced by a modified version of TRT (Tile Run-Time) designed by Jan Hoogerbrugge. Interfaces to the old multithreading kernels may be added in later releases.
  4. Debug traces have been removed.
  5. Licensing has been removed.
  6. Graphical editor (GRED) has been removed.

YAPI 1.3

New Features:
  1. YAPI-SystemC, yapisc, for HP-UX, Linux and SunOS is added to the release. This package makes the YAPI primitives and functionality available in SystemC, such that an existing YAPI model can be simulated by the SystemC simulator. Simply by replacing the yapi.h include file by yapisc.h. An other advantage is that YAPI and SystemC models can be mixed, see examples/yapisc/sc_pc.
  2. An example on how to link YAPI-SystemC with the NC-SystemC simulator and simulate a YAPI model is available in examples/yapincsc/pc.
  3. The + operator is added to class id, this allows e.g. id("xxx")+"yyy".
  4. Debug Traces are extended to platform Cygwin. So debug traces are now available for Linux, SunOS and Cygwin. These traces can be viewed with Telescope. Telescope is a tool developed for performance analysis of the multiprocessor systems.
  5. Some modifications were made to the GRaphical EDitor (GRED):

Solved bugs:

  1. Bug in Gred: in some cases connecting a process port to a processnetwork ports caused a problem.
  2. Solved a bug in debug Traces caused by hierarchical processnetworks.

YAPI 1.2

New Features:
  1. Performance improvement on HP-UX, replaced the default setjmp longjmp by the much faster _setjmp and _longjmp.
  2. Added debug Traces for Linux and SUN, that can be viewed with Telescope. Telescope is a tool developed for performance analysis of the multiprocessor systems.
  3. GRED, GRaphical EDitor to design hierarchical networks and generate YAPI template code.
  4. Upgraded to g++ 3.0.4 compiler.
  5. Licensing added to the SystemC run-time-environment.
  6. Licensing added for Solaris platform.

Solved bugs:

  1. Bug in fifo constructor with two argument. In particular when the second arguments was larger then the default maximum size.
  2. Debugged yapidoc script.
  3. Fixed warnings when SystemC is used as run-time-environment.

YAPI 1.1

New features:

  1. The YAPI interface is extended with a SelectList class and a new select (SelectList& l) function. The application engineer can add ports in the SelectList class using the pushBack member and call the select member subsequently. The interface extension is as follows:
         class SelectList : private SelectImpl
             SelectList (const Id& n) : SelectImpl (n) {};
             void pushBack(const InPort& p, unsigned int n=1);
             void pushBack(const OutPort& p, unsigned int n=1);
             inline unsigned int select ();
         inline unsigned int select(SelectList& l);
  2. Restructering of the yapi header files. The "yapi.h" header is the only yapi header file that needs to be included by the application. The previous includes like "rte.h" does not exist anymore.
  3. The default Run Time Environment can be replaced with the SystemC Run Time Environment.The SystemC Run Time Environment is available for SUN Solaris and linux.
  4. The member functions name() and fullName(..) are available for ports.

Solved bugs:

  1. The printCommunicationWorkload(..) showed more tokens read than written for some fifo's. The number of written tokens for fifos that were growing was not properly administrated and caused an incorrect number of tokens written, when the size of the fifo was enlarged.

YAPI 1.0.1

New features:

  1. User can instantiate default cosyRte and customise output error streams
    The added member functions for directing streams are:
         inline ostream& getOutStream();
         inline ostream& getErrorStream();
         inline void     setOutStream (ostream& o);
         inline void     setErrorStream (ostream& e);
    Default the outstream is directed to cout and errorstream is directed to cerr.

    Furthermore the printDotty function has an extra optional argument for setting the error stream:

         void printDotty(const ProcessNetwork& n, std::ostream& o = std::cout,
                         std::ostream& e = std::cerr);
    For example:
         #include "rte.h"
         main() {
           RTE rte;
           PC pc();
           printDotty(pc, cout, cout);
    The interface is backward compatible. Thus the previous start() function can also be used but this is depreciated.

Solved bugs:

  1. License problem on standalone (node locked) linux machines.

YAPI 1.0

First official ED&T Synthesis release

YAPI 0.5

New features:

  1. growing FIFOs
  2. multiple (re)starts
  3. network visualization via dotty
  4. dynamically linked libraries
  5. dynamic linking of Run Time Environments (RTE)
  6. pSoS/MIPS/TSS implementation
  7. C-HEAP implementation
  8. support for user-defined implementations

YAPI 0.4

 New Features:

  1. Id's are mandatory for fifos, ports, processes and process networks.
  2. the select() function is implemented for 2 - 4 ports.
  3. the efficiency of the vector read and write has been improved
  4. Fifo size 0 is supported
  5. workload analysis im implemented with function execute() and printComputationWorkload().

YAPI 0.3

New Features:

  1. In<T>::read and In<T>::write do not longer have a bool return type. Both return void.
  2. Processes, Fifos and Ports can be identified by name and type (class name) by deriving them from class Id. The name of an Id is set via the constuctor. A default constructor is supplied for backward compatibility. The function name() returns the name of an Id object, as specified in the constructor, or the class name when the default constuctor was used. The function type() is a virtual function which returns the class name of an Id object. By default it uses run-time type identification to obtain the class name.
  3. Fifo is derived from base class FIFO, to be able to store Fifos in a list, for instance.
  4. class IN and OUT have been removed
  5. Initialization of the library is now done automatically, making the function begin() obsolete.
  6. the function start() is obsolete.
  7. A minimum and maximum size can now be specified for a fifo. The implementation is free to choose any size within the specified range. Specification of a minimum size can be used to avoid deadlock. Specification of the maximum size can be used to force deadlock.
  8. Deadlock detection is on by default. When deadlock is detected, the state of all fifos is printed.

© Royal Philips Electronics N.V. 2006. All rights are reserved.
Last modified: Thu Feb 23 14:10:31 CET 2006
This page is hosted by
SourceForge.net Logo