Sha256: c0749334c67da8ad12e73a9f53af2d99fcb66214f4374669dcfc4a57d1b41a7d

Contents?: true

Size: 560 Bytes

Versions: 176

Compression:

Stored size: 560 Bytes

Contents

module Origen
  module Models
    class Mux
      include Origen::Model

      attr_reader :size
      attr_reader :select_lines

      def initialize(options = {})
        @input = []
        (2**select_lines).times do |i|
          @input << port("input#{i}".to_sym, size: size)
        end

        port :select, size: select_lines
        port :output, size: size

        output.connect_to do |i|
          unless ports[:select].data.undefined?
            send("input#{ports[:select].data}")[i].path
          end
        end
      end
    end
  end
end

Version data entries

176 entries across 176 versions & 1 rubygems

Version Path
origen-0.60.19 lib/origen/models/mux.rb
origen-0.60.18 lib/origen/models/mux.rb
origen-0.60.17 lib/origen/models/mux.rb
origen-0.60.16 lib/origen/models/mux.rb
origen-0.60.14 lib/origen/models/mux.rb
origen-0.60.13 lib/origen/models/mux.rb
origen-0.60.12 lib/origen/models/mux.rb
origen-0.60.11 lib/origen/models/mux.rb
origen-0.60.10 lib/origen/models/mux.rb
origen-0.60.9 lib/origen/models/mux.rb
origen-0.60.8 lib/origen/models/mux.rb
origen-0.60.7 lib/origen/models/mux.rb
origen-0.60.6 lib/origen/models/mux.rb
origen-0.60.5 lib/origen/models/mux.rb
origen-0.60.4 lib/origen/models/mux.rb
origen-0.60.3 lib/origen/models/mux.rb
origen-0.60.2 lib/origen/models/mux.rb
origen-0.60.1 lib/origen/models/mux.rb
origen-0.60.0 lib/origen/models/mux.rb
origen-0.59.8 lib/origen/models/mux.rb