Mitrion SDK Release Notes

Changes in Mitrion SDK 2.0.1

 

Platform Support

  • Added support for Mitrionics MVP620 and MVP622.  

Changes in Mitrion SDK 2.0.0


Major Feature Additions
  • Simulator GUI now reports FPGA resource usage for each node.
  • New simulator graph visualizes performance and behavior of the Mitrion-C program after optimizations.
  • New Mitrion SPR tool manages synthesis and place & route process on most platforms.
  • Processor configuration unit refactored for improvements to stability, deadlock detection and FPGA resource utilization.

 Language


  • Mitrion-C language updated to version 2.0.
  • Streams are now allowed in vectors.
  • The 'by' index can now be used in for loops.
  • Predicated return can now be used in for and while loops.
  • Multi-dimensional streams can now be partially flattened, i.e. a 4-dimensional stream can be flattened to a 3,2 or 1 dimensional stream using reshape(). Previously multi-dimensional streams could only be completely flattened to a 1-dimensional stream.
  • Operators '/<','</','><' and 'mix()' are now supported for all collection types (list,stream,vector). For lists and vectors multidimensional collections are handled, for streams only the 1-dimensional case is handled. Previously '/<','</' and '><' were only allowed on list and vector, and 'mix()' was only allowed on streams. '/<' and '</' on streams can use a non-constant take/drop amount.
  • New type attribute functions: maxval(type)/minval(type). Returns the max/min value a type can hold.
  • The bit-width of the results from integer addition has increased:
           uint:X + int:Y => int:max(X+1,Y)+1
           int:X + uint:Y => int:max(X:Y+1)+1
    Use a cast operation to emulate the old behavior.
  • Fixed a bug where a vector index could be of the 'bits' type.
  • In Mitrion-C 2.0 and later, a vector index must be 'int' or 'uint'.
  • Other minor additions.

Compiler

  • The resource usage of the drop-first operator on lists has been made constant. Previously the operator consumed FPGA RAM proportional to the size of the list.
  • Line numbers now reported for all errors.
  • Compiler much faster on large Mitrion-C programs.
  • Arbitrary size multiplications now supported.
  • Optimization for common subexpression elimination added.
  • Less memory usage during compilation.
  • Fixed a bug where tuples could not have more than 10 elements.
  • Other minor enhancements and bug fixes.
Simulator
  • Vectors in GUI are split up into one edge per vector component to give a simulation behaviour closer to the actual MVP behaviour.
  • Popups for nodes in the GUI showing location in source code and hardware resource usage.
  • Considerable speedups to clock-cycle correct simulation.
  • Much reduced memory footprint during simulation.
  • Added possibility to set random seed for simulation.
  • New "Run Multiple Steps..." dialog enables the simulator to perform a pre-defined number of steps.
  • The simulator can now be used with the '-platform' option to check the validity of the Mitrion-C program for a given platform.
Mithal
  • Added support for strems.
  • Mithal can now be used with the RASC streaming direct memory access feature on SGI RASC RC100.
  • Improved error handling for simulation.
  • 'mitrion_fpga_load_processor()' now returns error code if the Mitrion-C program does not compile. Previously the host program would hang.
Processor Configuration Unit
  • Added support for input from third-party compilers.
  • Fixed bug where resource usage was not printed when the MVP was too large. Now resource usage is always printed.
Platform Support
  • Added support for Rosta RSP-517 and RSP-523.
  • Removed support for Cray XD1.
Documentation  
  • Added section to 'Mitrion Users' Guide' describing common cases leading to deadlocks in the MVP.
  • New 'Creating VHDL IP-Block Plug-ins' document allows the creation of external functions in VHDL that can be called from Mitrion-C.
  • New AES encryption example application 
Miscellaneous
  • SUN Java Runtime Environment 1.6 is now supported.
  • SUN Java Runtime Environment 1.4 is no longer supported.
  • RC100 option "-keep-watches" removed.
  • When installing using the tar archive, the directory editor-extras is now copied to the installation directory as expected.
  • Parcheck utility removed and replaced by new Mitrion SPR tool functionality. 

Please report bugs and/or feedback to support@mitrionics.com or feedback@mitrionics.com.

 

More info about Mitrionics at http://www.mitrionics.com.