Sha256: 6cf28139d87c53daea9e922d49cb1b24999a2efbb624fc266a128056a8e1de14

Contents?: true

Size: 1.18 KB

Versions: 2

Compression:

Stored size: 1.18 KB

Contents

# General project information.
#--
# Copyright 2006 Suraj N. Kurapati
# See the file named LICENSE for details.

module RubyVPI
  PROJECT_ID      = 'ruby-vpi'
  PROJECT_NAME    = 'Ruby-VPI'
  PROJECT_URL     = "http://#{PROJECT_ID}.rubyforge.org"
  WEBSITE_URL     = PROJECT_URL + "/doc"
  PROJECT_SUMMARY = "Ruby interface to IEEE 1364-2005 Verilog VPI"
  PROJECT_DETAIL  = "#{PROJECT_NAME} is a #{PROJECT_SUMMARY} and a platform for unit testing, rapid prototyping, and systems integration of Verilog modules through Ruby. It lets you create complex Verilog test benches easily and wholly in Ruby."

  Simulator = Struct.new(:name, :compiler_args, :linker_args)

  # List of supported Verilog simulators.
  SIMULATORS = {
    :cver   => Simulator.new('GPL Cver',        '-DPRAGMATIC_CVER',   ''),
    :ivl    => Simulator.new('Icarus Verilog',  '-DICARUS_VERILOG',   ''),
    :vcs    => Simulator.new('Synopsys VCS',    '-DSYNOPSYS_VCS',     ''),
    :vsim   => Simulator.new('Mentor Modelsim', '-DMENTOR_MODELSIM',  ''),
    :ncsim  => Simulator.new('Cadence NC-Sim',  '-DCADENCE_NCSIM',    ''),
  }

  def RubyVPI.say fmt, *args #:nodoc:
    Vpi.vpi_printf("#{PROJECT_NAME}: #{fmt}\n", *args)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ruby-vpi-18.0.2 lib/ruby-vpi.rb
ruby-vpi-18.0.1 lib/ruby-vpi.rb