Class: Numeric

Inherits:
Object
  • Object
show all
Defined in:
lib/HDLRuby/hruby_high.rb,
lib/HDLRuby/std/fixpoint.rb,
lib/HDLRuby/hruby_low2vhd.rb,
lib/HDLRuby/hruby_verilog.rb,
lib/HDLRuby/hruby_low2high.rb

Overview

Extends the Numeric class with generation of HDLRuby::High text.

Instance Method Summary collapse

Instance Method Details

#msObject

Converts to a new delay in milliseconds.



3872
3873
3874
# File 'lib/HDLRuby/hruby_high.rb', line 3872

def ms
    return Delay.new(self,:ms)
end

#nsObject

Converts to a new delay in nanoseconds.



3862
3863
3864
# File 'lib/HDLRuby/hruby_high.rb', line 3862

def ns
    return Delay.new(self,:ns)
end

#psObject

Converts to a new delay in picoseconds.



3857
3858
3859
# File 'lib/HDLRuby/hruby_high.rb', line 3857

def ps
    return Delay.new(self,:ps)
end

#sObject

Converts to a new delay in seconds.



3877
3878
3879
# File 'lib/HDLRuby/hruby_high.rb', line 3877

def s
    return Delay.new(self,:s)
end

#to_fix(dec) ⇒ Object

Convert to fixed point value with +dec+ digits after the decimal point.



80
81
82
# File 'lib/HDLRuby/std/fixpoint.rb', line 80

def to_fix(dec)
    return (self * (2**dec.to_i)).to_i
end

#to_high(level = 0) ⇒ Object

Generates the text of the equivalent HDLRuby::High code. +level+ is the hierachical level of the object.



733
734
735
# File 'lib/HDLRuby/hruby_low2high.rb', line 733

def to_high(level = 0)
    return self.to_s
end

#to_valueObject

Converts to a new high-level value.



3852
3853
3854
# File 'lib/HDLRuby/hruby_high.rb', line 3852

def to_value
    to_expr
end

#to_value?Boolean

Tell if the expression can be converted to a value.

Returns:

  • (Boolean)


3847
3848
3849
# File 'lib/HDLRuby/hruby_high.rb', line 3847

def to_value?
    return true
end

#to_verilog(level = 0) ⇒ Object

Generates the text of the equivalent verilog code. +level+ is the hierachical level of the object.



2077
2078
2079
# File 'lib/HDLRuby/hruby_verilog.rb', line 2077

def to_verilog(level = 0)
    return self.to_s
end

#to_vhdl(level = 0) ⇒ Object

Generates the text of the equivalent HDLRuby::High code. +level+ is the hierachical level of the object.



1495
1496
1497
# File 'lib/HDLRuby/hruby_low2vhd.rb', line 1495

def to_vhdl(level = 0)
    return self.to_s
end

#usObject

Converts to a new delay in microseconds.



3867
3868
3869
# File 'lib/HDLRuby/hruby_high.rb', line 3867

def us
    return Delay.new(self,:us)
end