class CLKInfElm
class InfElm
private # def add_dsize_func # _dsize = @dsize # @dsize.define_singleton_method("*") do |a| # if(_dsize.is_a? Numeric) # @dsize * a # elsif _dsize.is_a? String # "#{_dsize} * #{a}" # else # @dsize * a # end # end # end
end
Attributes
clock[RW]
origin_freqM[RW]
reset[RW]
Public Class Methods
new(clock:nil,reset:nil,dimension:[],freqM:nil)
click to toggle source
Calls superclass method
InfElm::new
# File lib/tdl/elements/originclass.rb, line 585 def initialize(clock:nil,reset:nil,dimension:[],freqM:nil) # super(dimension:dimension,clock:clock,reset:reset,freqM:freqM) super(dimension:dimension) @clock = clock @reset = reset @origin_freqM = freqM check_freqM end
Public Instance Methods
FreqM()
click to toggle source
# File lib/tdl/elements/originclass.rb, line 624 def FreqM() "#{@name}.FreqM".to_nq end
check_freqM()
click to toggle source
# File lib/tdl/elements/originclass.rb, line 628 def check_freqM if @origin_freqM && @clock.is_a?(Clock) if @origin_freqM != @clock.freqM raise TdlError.new("Interface origin clock freqM[#{@origin_freqM}Mhz] dont eql CLOCK freqM[#{@clock.freqM}Mhz]") end end end
clock_reset_taps(def_clock_name,def_reset_name,self_clock,self_reset)
click to toggle source
# File lib/tdl/elements/originclass.rb, line 652 def clock_reset_taps(def_clock_name,def_reset_name,self_clock,self_reset) new_clk = belong_to_module.logic.clock(self.FreqM) - def_clock_name new_reset = belong_to_module.logic.reset('low') - def_reset_name belong_to_module.Assign do new_clk <= self_clock new_reset <= self_reset end [new_clk,new_reset] end
freqM()
click to toggle source
# File lib/tdl/elements/originclass.rb, line 595 def freqM if @clock.is_a?(Clock) @clock.freqM elsif @origin_freqM @origin_freqM else nil end end
freq_align_signal()
click to toggle source
# File lib/tdl/elements/originclass.rb, line 615 def freq_align_signal data = freqM if data align_signal(data) else align_signal( 1.11 ) end end
intf_def_freqM()
click to toggle source
# File lib/tdl/elements/originclass.rb, line 605 def intf_def_freqM if @clock.is_a?(Clock) @clock.freqM elsif @origin_freqM @origin_freqM else 1.11 end end
use_which_freq_when_copy(argv_clock,argv_origin)
click to toggle source
# File lib/tdl/elements/originclass.rb, line 636 def use_which_freq_when_copy(argv_clock,argv_origin) if argv_clock == @clock && @clock @origin_freqM elsif argv_clock != @clock && argv_clock.is_a?(Clock) argv_clock.freqM elsif !(argv_clock.is_a?(Clock)) && argv_origin argv_origin else nil end end