Plunify.com

Monday, January 10, 2011

How to run logic simulations online!



Need to run Verilog or VHDL simulations but don't have the right software installed?
Simulations running a little too slowly?

With Plunify's online simulation service (and in future, synthesis and implementation), now all you need are:
  • An Internet connection and any major web browser.
  • The ability to run a Perl script on your PC (see detailed requirements below).
  • A user configuration file telling us about your simulation (see sample below).
  • Verilog or VHDL source files.


Here's a VHDL example:
  1. Download the sample:
    - a Perl script (platypus.pl),
    - the sample user configuration file (adder.cfg); and
    - source code (adder.zip).

  2. Extract adder.zip into a local folder.

  3. Edit the username, password, source_folder fields in adder.cfg
    (First-time users need to check email and click on an activation link before viewing results).

  4. Run the script: perl platypus.pl --cfg adder.cfg
    If it is successful, you should see the following message:



    (see below under "Requirements" if you hit errors for missing Perl modules)

  5. Log on at https://www.plunify.com/login.php
    Go to Results


That's it.

If the job submission is successful, you will get a notification email after 2-3 minutes.
It takes a little longer to run the first simulation job, but subsequent ones will be faster.

Requirements:
  • A working installation of Perl and the CPAN modules:
    Getopt::Long
    Archive::Zip
    LWP::UserAgent

    Do use mechanisms like the CPAN shell (In Linux, perl -MCPAN -e shell, install Archive::Zip) to install modules.
How it works:
  • The configuration file contains your details

    username = email address as a user name to log on to Plunify
    password = user password (> 5 characters), in plain text
    jobtype = type of job (currently 'SIM' is the only valid type)
    language = Verilog or VHDL (Icarus Verilog or GHDL, pending mixed language support)
    source_folder = root folder of directory tree containing source files
    toplevel = top level module name
    apicode = PLATYPUS, for our internal use
The script sends both your configuration file and your source files to Plunify via a secure connection, and runs your simulation.

Let us know what you think and how we can improve it.

0 comments:

Post a Comment