origen 0.59.2 → 0.59.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 89baf7d80756d514b233a6504c168792ede60723771d6673b8fde4530934da9f
4
- data.tar.gz: a611364a5944c4e2180b9221f9ad1faafd57b025717d0f40b3f0d03ee53084c3
2
+ SHA1:
3
+ metadata.gz: 6246b37ae9f9365ad8bc63a147fd608bc5dd67e9
4
+ data.tar.gz: 5965e90e95ab652206de23fa6ee3a19cd2375cf2
5
5
  SHA512:
6
- metadata.gz: 0762063e63b7ba5fcfc1cfd9a53454f22b538e7b1aa82d9f80a621e025c8f0a75111d6e49900a1864ccebb98d5efdbc39847546a4cb8293fefbd240b0b3a8cbf
7
- data.tar.gz: 826110283c6a70adb0e3470f7a1f720e2175534747a63f13026316293e9e84482ad27d76716fc5556ffc010ae979e31324ae4e96bf3180f12e40fe4b436c0231
6
+ metadata.gz: d7466ded12bb2a437b4f87c445d0772e2586d04ff9f43c562910fccf3ac8adf3d5ab7f7997b3dbce60b5aa1c7953c2409f0ddc98e577b8c092afa04fa3057e7d
7
+ data.tar.gz: 602d11f8137bee33a26a9da86f4f20092abadd5aaddc81dde86ff83165b1e95e1a528f837a5e8214126837c3fa16a144375405ee48763a337bfb2f0b1c70b8c2
@@ -1,7 +1,7 @@
1
1
  module Origen
2
2
  MAJOR = 0
3
3
  MINOR = 59
4
- BUGFIX = 2
4
+ BUGFIX = 7
5
5
  DEV = nil
6
6
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
7
7
  end
@@ -2,6 +2,18 @@ module Origen
2
2
  module Controller
3
3
  extend ActiveSupport::Concern
4
4
 
5
+ # Workaround due to reserved keywords in Ruby, Display in the case below.
6
+ def display
7
+ # If the DUT responds to a sub_block "display" return the sub_block
8
+ if model.sub_blocks.include? 'display'
9
+ Origen.log.debug "Found a sub_block \'display\', passing control to the #{model.class}..."
10
+ model.sub_blocks['display']
11
+ else
12
+ # Else, pass control to the ruby core.
13
+ super
14
+ end
15
+ end
16
+
5
17
  module ClassMethods
6
18
  def model(options = {})
7
19
  options[:controller_class] = self
@@ -132,6 +132,13 @@ module Origen
132
132
  line_size = 150
133
133
  end
134
134
  line_size -= 16 if tester.try(:sim?)
135
+ # This should only occur when $tester.handshake has been called on the V93K or a similar API
136
+ # which splits a pattern up until multiple outputs.
137
+ # This is a quick patch to skip rendering an execution profile for pattern parts 1 to n, instead
138
+ # of crashing.
139
+ # It should be possible to get an execution profile in these cases if someone were to invest the
140
+ # time in it to workout why this variable is not set upstream in these cases.
141
+ return unless @cycle_count_stop
135
142
  cycles_per_tick = (@cycle_count_stop / (line_size * 1.0)).ceil
136
143
  if tester.try(:sim?)
137
144
  execution_time = tester.execution_time_in_ns / 1_000_000_000.0
@@ -193,7 +200,7 @@ module Origen
193
200
  elsif time < 1.s
194
201
  "%.#{number_decimal_places}fms" % (time * 1_000)
195
202
  else
196
- "%.#{number_decimal_places}fs" % tick_time
203
+ "%.#{number_decimal_places}fs" % time
197
204
  end
198
205
  end
199
206
 
@@ -22,8 +22,8 @@ module Origen
22
22
  # before falling back to a default
23
23
  PACKAGE_SCOPED_ATTRIBUTES = [:location, :dib_assignment, :dib_meta]
24
24
 
25
- # Pin Types
26
- TYPES = [:analog, :digital]
25
+ # Pin Types, 'digital' and 'analog' are legacy types kept for backwards compatibility
26
+ TYPES = [:analog, :digital, :signal, :ground, :power, :virtual]
27
27
 
28
28
  attr_accessor :order
29
29
  # Inverts pin states for drive and compare, can be useful if a timing set change requires clocks to drive low for example when all pattern logic has been set up to drive them high.
@@ -574,6 +574,16 @@ module Origen
574
574
  }.merge(options)
575
575
  result = []
576
576
 
577
+ # Shows the bits that have changed from the reset value of the register/bits.
578
+ # Currently logs it to the console window using Origen logger.
579
+ def changed_bits(options = {})
580
+ temp = named_bits.select { |name, bits| bits.data != bits.reset_val }
581
+ temp.each do |r|
582
+ Origen.log.info "\t\t#{self.name}.#{r[0]} : #{r[1].value.to_hex}".bold.blue
583
+ end
584
+ Origen.log.info ' '
585
+ end
586
+
577
587
  # test if @lookup has any values stored as an array
578
588
  # if so it means there is a split group of bits
579
589
  # process that differently to a single bit or continuous range of bits
@@ -416,9 +416,10 @@ module Origen
416
416
  # Load any centralized site configs now.
417
417
  centralized_site_config = find_val('centralized_site_config')
418
418
  if centralized_site_config
419
- # We know the last two site configs will exists (they are in Origen core) and that they contain the default
420
- # values. We want the centralized config to load right after those.
421
- @configs.insert(-3, Config.new(path: centralized_site_config, parent: self))
419
+ # The first site configs found will exist in Origen core, and they contain the default values.
420
+ # We want the centralized config to load right after those.
421
+ centralized_index = -(@configs.select { |c| c.path.start_with?(File.expand_path('../../../')) }.size + 1)
422
+ @configs.insert(centralized_index, Config.new(path: centralized_site_config, parent: self))
422
423
  end
423
424
 
424
425
  # After all configs have been populated, see if the centralized needs refreshing
@@ -501,8 +501,8 @@ module Origen
501
501
  rescue NameError => e
502
502
  raise if e.message !~ /^uninitialized constant (.*)$/ || tmp_class !~ /#{Regexp.last_match(1)}/
503
503
  begin
504
- tmp_class = class_name.to_s
505
- klass = eval(class_name)
504
+ tmp_class = "::#{class_name}"
505
+ klass = eval(tmp_class)
506
506
  rescue NameError => e
507
507
  raise if e.message !~ /^uninitialized constant (.*)$/ || tmp_class !~ /#{Regexp.last_match(1)}/
508
508
  begin
@@ -1,54 +1,53 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- origen_app_generators (2.1.1)
4
+ origen_app_generators (2.2.0)
5
5
  origen (>= 0.40.2)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activesupport (4.2.11.1)
10
+ activesupport (4.2.11.3)
11
11
  i18n (~> 0.7)
12
12
  minitest (~> 5.1)
13
13
  thread_safe (~> 0.3, >= 0.3.4)
14
14
  tzinfo (~> 1.1)
15
- ast (2.4.0)
15
+ ast (2.4.1)
16
16
  astrolabe (1.3.1)
17
17
  parser (~> 2.2)
18
18
  byebug (9.0.6)
19
- coderay (1.1.2)
19
+ coderay (1.1.3)
20
20
  colored (1.2)
21
21
  colorize (0.8.1)
22
- concurrent-ruby (1.1.5)
22
+ concurrent-ruby (1.1.7)
23
23
  cri (2.10.1)
24
24
  colored (~> 1.2)
25
25
  dentaku (2.0.11)
26
- diff-lcs (1.3)
27
- docile (1.3.1)
26
+ diff-lcs (1.4.4)
27
+ docile (1.3.2)
28
28
  gems (0.8.3)
29
29
  highline (1.7.10)
30
- httparty (0.17.0)
30
+ httparty (0.18.1)
31
31
  mime-types (~> 3.0)
32
32
  multi_xml (>= 0.5.2)
33
33
  i18n (0.9.5)
34
34
  concurrent-ruby (~> 1.0)
35
- json (2.2.0)
36
35
  kramdown (1.17.0)
37
- method_source (0.9.2)
38
- mime-types (3.2.2)
36
+ method_source (1.0.0)
37
+ mime-types (3.3.1)
39
38
  mime-types-data (~> 3.2015)
40
- mime-types-data (3.2019.0331)
39
+ mime-types-data (3.2020.1104)
41
40
  mini_portile2 (2.3.0)
42
- minitest (5.11.3)
41
+ minitest (5.14.2)
43
42
  multi_xml (0.6.0)
44
43
  nanoc (3.7.5)
45
44
  cri (~> 2.3)
46
- net-ldap (0.16.1)
45
+ net-ldap (0.17.0)
47
46
  nokogiri (1.8.5)
48
47
  mini_portile2 (~> 2.3.0)
49
- origen (0.52.0)
48
+ origen (0.59.4)
50
49
  activesupport (~> 4.1)
51
- bundler (~> 1.7)
50
+ bundler (> 1.7)
52
51
  coderay (~> 1.1)
53
52
  colored (~> 1.2)
54
53
  colorize (~> 0.8.1)
@@ -68,33 +67,34 @@ GEM
68
67
  rspec-legacy_formatters (~> 1)
69
68
  rubocop (= 0.30)
70
69
  scrub_rb (~> 1.0)
71
- simplecov (~> 0.9)
70
+ simplecov (~> 0.17)
71
+ simplecov-html (~> 0.10)
72
72
  thor (~> 0.19)
73
73
  yard (~> 0.8)
74
- parser (2.6.3.0)
75
- ast (~> 2.4.0)
76
- powerpack (0.1.2)
77
- pry (0.12.2)
78
- coderay (~> 1.1.0)
79
- method_source (~> 0.9.0)
74
+ parser (2.7.2.0)
75
+ ast (~> 2.4.1)
76
+ powerpack (0.1.3)
77
+ pry (0.13.1)
78
+ coderay (~> 1.1)
79
+ method_source (~> 1.0)
80
80
  rainbow (2.2.2)
81
81
  rake
82
82
  rake (10.5.0)
83
- rspec (3.8.0)
84
- rspec-core (~> 3.8.0)
85
- rspec-expectations (~> 3.8.0)
86
- rspec-mocks (~> 3.8.0)
87
- rspec-core (3.8.0)
88
- rspec-support (~> 3.8.0)
89
- rspec-expectations (3.8.3)
83
+ rspec (3.10.0)
84
+ rspec-core (~> 3.10.0)
85
+ rspec-expectations (~> 3.10.0)
86
+ rspec-mocks (~> 3.10.0)
87
+ rspec-core (3.10.0)
88
+ rspec-support (~> 3.10.0)
89
+ rspec-expectations (3.10.0)
90
90
  diff-lcs (>= 1.2.0, < 2.0)
91
- rspec-support (~> 3.8.0)
92
- rspec-legacy_formatters (1.0.1)
91
+ rspec-support (~> 3.10.0)
92
+ rspec-legacy_formatters (1.0.2)
93
93
  rspec (~> 3.0)
94
- rspec-mocks (3.8.0)
94
+ rspec-mocks (3.10.0)
95
95
  diff-lcs (>= 1.2.0, < 2.0)
96
- rspec-support (~> 3.8.0)
97
- rspec-support (3.8.0)
96
+ rspec-support (~> 3.10.0)
97
+ rspec-support (3.10.0)
98
98
  rubocop (0.30.0)
99
99
  astrolabe (~> 1.3)
100
100
  parser (>= 2.2.0.1, < 3.0)
@@ -103,16 +103,17 @@ GEM
103
103
  ruby-progressbar (~> 1.4)
104
104
  ruby-progressbar (1.10.1)
105
105
  scrub_rb (1.0.1)
106
- simplecov (0.16.1)
106
+ simplecov (0.20.0)
107
107
  docile (~> 1.1)
108
- json (>= 1.8, < 3)
109
- simplecov-html (~> 0.10.0)
110
- simplecov-html (0.10.2)
108
+ simplecov-html (~> 0.11)
109
+ simplecov_json_formatter (~> 0.1)
110
+ simplecov-html (0.12.3)
111
+ simplecov_json_formatter (0.1.2)
111
112
  thor (0.20.3)
112
113
  thread_safe (0.3.6)
113
- tzinfo (1.2.5)
114
+ tzinfo (1.2.8)
114
115
  thread_safe (~> 0.1)
115
- yard (0.9.19)
116
+ yard (0.9.25)
116
117
 
117
118
  PLATFORMS
118
119
  ruby
@@ -123,4 +124,4 @@ DEPENDENCIES
123
124
  origen_app_generators!
124
125
 
125
126
  BUNDLED WITH
126
- 1.17.1
127
+ 1.17.2
@@ -1,7 +1,7 @@
1
1
  module OrigenAppGenerators
2
2
  MAJOR = 2
3
- MINOR = 1
4
- BUGFIX = 1
3
+ MINOR = 2
4
+ BUGFIX = 0
5
5
  DEV = nil
6
6
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
7
7
  end
@@ -1,3 +1,14 @@
1
+ <a class="anchor release_tag" name="v2_2_0"></a>
2
+ <h1><a href="#v2_2_0">Tag: v2.2.0</a></h1>
3
+
4
+ ##### Branch: 'master'
5
+
6
+ ##### by Caquelin, Brian on 03-Dec-2020 08:40AM
7
+
8
+
9
+ * Removed older Ruby dependencies
10
+ * Added Github Actions regression testing
11
+
1
12
  <a class="anchor release_tag" name="v2_1_1"></a>
2
13
  <h1><a href="#v2_1_1">Tag: v2.1.1</a></h1>
3
14
 
@@ -1,23 +1,23 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: origen_app_generators 2.1.1 ruby lib
2
+ # stub: origen_app_generators 2.2.0 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "origen_app_generators".freeze
6
- s.version = "2.1.1"
6
+ s.version = "2.2.0"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 1.8.11".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
10
10
  s.authors = ["Stephen McGinty".freeze]
11
- s.date = "2020-10-08"
11
+ s.date = "2021-01-08"
12
12
  s.email = ["stephen.f.mcginty@gmail.com".freeze]
13
13
  s.files = ["bin/boot.rb".freeze, "config/application.rb".freeze, "config/boot.rb".freeze, "config/commands.rb".freeze, "config/shared_commands.rb".freeze, "config/version.rb".freeze, "lib/origen_app_generators.rb".freeze, "lib/origen_app_generators/application.rb".freeze, "lib/origen_app_generators/base.rb".freeze, "lib/origen_app_generators/empty_application.rb".freeze, "lib/origen_app_generators/empty_plugin.rb".freeze, "lib/origen_app_generators/new.rb".freeze, "lib/origen_app_generators/new_app_tests.rb".freeze, "lib/origen_app_generators/origen_infrastructure/app_generator_plugin.rb".freeze, "lib/origen_app_generators/plugin.rb".freeze, "lib/origen_app_generators/test_engineering/common.rb".freeze, "lib/origen_app_generators/test_engineering/stand_alone_application.rb".freeze, "lib/origen_app_generators/test_engineering/test_block.rb".freeze, "templates/app_generators".freeze, "templates/app_generators/application".freeze, "templates/app_generators/application/.gitignore".freeze, "templates/app_generators/application/.irbrc".freeze, "templates/app_generators/application/.rspec".freeze, "templates/app_generators/application/.travis.yml".freeze, "templates/app_generators/application/Gemfile".freeze, "templates/app_generators/application/Rakefile".freeze, "templates/app_generators/application/app".freeze, "templates/app_generators/application/app/blocks".freeze, "templates/app_generators/application/app/blocks/top_level.rb".freeze, "templates/app_generators/application/app/lib".freeze, "templates/app_generators/application/app/lib/module.rb".freeze, "templates/app_generators/application/app/templates".freeze, "templates/app_generators/application/app/templates/web".freeze, "templates/app_generators/application/app/templates/web/index.md.erb".freeze, "templates/app_generators/application/app/templates/web/layouts".freeze, "templates/app_generators/application/app/templates/web/layouts/_basic.html.erb".freeze, "templates/app_generators/application/app/templates/web/partials".freeze, "templates/app_generators/application/app/templates/web/partials/_navbar.html.erb".freeze, "templates/app_generators/application/app/templates/web/release_notes.md.erb".freeze, "templates/app_generators/application/config".freeze, "templates/app_generators/application/config/application.rb".freeze, "templates/app_generators/application/config/boot.rb".freeze, "templates/app_generators/application/config/commands.rb".freeze, "templates/app_generators/application/config/maillist_dev.txt".freeze, "templates/app_generators/application/config/maillist_prod.txt".freeze, "templates/app_generators/application/config/version.rb".freeze, "templates/app_generators/application/doc".freeze, "templates/app_generators/application/doc/history".freeze, "templates/app_generators/application/dot_keep".freeze, "templates/app_generators/application/origen_core_session".freeze, "templates/app_generators/application/spec".freeze, "templates/app_generators/application/spec/spec_helper.rb".freeze, "templates/app_generators/application/target".freeze, "templates/app_generators/application/target/debug.rb".freeze, "templates/app_generators/application/target/default.rb".freeze, "templates/app_generators/application/target/production.rb".freeze, "templates/app_generators/new".freeze, "templates/app_generators/new/generator.rb".freeze, "templates/app_generators/new/info.md.erb".freeze, "templates/app_generators/origen_infrastructure".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/application.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/base.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/module.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/plugin.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/config".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/config/load_generators.rb".freeze, "templates/app_generators/plugin".freeze, "templates/app_generators/plugin/Gemfile".freeze, "templates/app_generators/plugin/Rakefile".freeze, "templates/app_generators/plugin/app".freeze, "templates/app_generators/plugin/app/templates".freeze, "templates/app_generators/plugin/app/templates/web".freeze, "templates/app_generators/plugin/app/templates/web/index.md.erb".freeze, "templates/app_generators/plugin/app/templates/web/partials".freeze, "templates/app_generators/plugin/app/templates/web/partials/_navbar_external.html.erb".freeze, "templates/app_generators/plugin/app/templates/web/partials/_navbar_internal.html.erb".freeze, "templates/app_generators/plugin/config".freeze, "templates/app_generators/plugin/config/boot.rb".freeze, "templates/app_generators/plugin/gemspec.rb".freeze, "templates/app_generators/test_engineering".freeze, "templates/app_generators/test_engineering/environment".freeze, "templates/app_generators/test_engineering/environment/j750.rb".freeze, "templates/app_generators/test_engineering/environment/uflex.rb".freeze, "templates/app_generators/test_engineering/environment/v93k.rb".freeze, "templates/app_generators/test_engineering/stand_alone_application".freeze, "templates/app_generators/test_engineering/stand_alone_application/.keep".freeze, "templates/app_generators/test_engineering/test_block".freeze, "templates/app_generators/test_engineering/test_block/.keep".freeze]
14
14
  s.homepage = "http://origen-sdk.org/origen_app_generators".freeze
15
15
  s.licenses = ["MIT".freeze]
16
16
  s.required_ruby_version = Gem::Requirement.new(">= 1.9.3".freeze)
17
- s.rubygems_version = "3.0.3".freeze
17
+ s.rubygems_version = "2.6.14.4".freeze
18
18
  s.summary = "Origen application generators".freeze
19
19
 
20
- s.installed_by_version = "3.0.3" if s.respond_to? :installed_by_version
20
+ s.installed_by_version = "2.6.14.4" if s.respond_to? :installed_by_version
21
21
 
22
22
  if s.respond_to? :specification_version then
23
23
  s.specification_version = 4
@@ -8,6 +8,8 @@ source 'https://rubygems.org'
8
8
 
9
9
  gem 'origen', '>= <%= @latest_origen_version %>'
10
10
 
11
+ gem 'byebug'
12
+
11
13
  gem 'origen_doc_helpers'
12
14
  <% if @development_dependencies -%>
13
15
  <% @development_dependencies.each do |dep| -%>
@@ -15,14 +17,6 @@ gem <%= dep.map{ |d| "\"#{d}\"" }.join(', ') %>
15
17
  <% end -%>
16
18
  <% end -%>
17
19
 
18
- gem 'byebug', '~>8' # You can remove this version constraint if you don't care about your app
19
- # supporting earlier versions of Ruby 2
20
- <% if RUBY_VERSION < "2.3.0" -%>
21
-
22
- # Lock this version of nokogiri to enable compatibility with Ruby 2.2, if you don't need
23
- # that then you can remove this line
24
- gem 'nokogiri', '1.8.5'
25
- <% end -%>
26
20
  <% if (@audience != :external) && Origen.site_config.gem_push_plugins -%>
27
21
  <% Origen.site_config.gem_push_plugins.each do |plugin| -%>
28
22
  gem <%= Array(plugin).map{ |d| "\"#{d}\"" }.join(', ') %>
@@ -13,8 +13,8 @@ source 'https://rubygems.org'
13
13
  # your application's test coverage
14
14
  gem 'coveralls', require: false
15
15
  <% end -%>
16
- gem 'byebug', '~>8' # You can remove this version constraint if you don't care about your app
17
- # supporting earlier versions of Ruby 2
16
+
17
+ gem 'byebug'
18
18
  gem 'ripper-tags'
19
19
  gem 'origen_doc_helpers'
20
20
  <% if (@audience != :external) && Origen.site_config.gem_push_plugins -%>
@@ -1,7 +1,8 @@
1
1
  require 'rspec/core/formatters/base_formatter'
2
2
 
3
3
  class OrigenFormatter < RSpec::Core::Formatters::BaseFormatter
4
- if Gem::Version.new(RSpec::Version::STRING) < Gem::Version.new('3.0.0')
4
+ rspec_version = RSpec.constants.include?(:Version) ? RSpec::Version::STRING : RSpec::Core::Version::STRING
5
+ if Gem::Version.new(rspec_version) < Gem::Version.new('3.0.0')
5
6
  # legacy formatter
6
7
  def dump_summary(duration, example_count, failure_count, pending_count)
7
8
  if failure_count > 0
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: origen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.59.2
4
+ version: 0.59.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen McGinty
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-15 00:00:00.000000000 Z
11
+ date: 2021-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -749,7 +749,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
749
749
  - !ruby/object:Gem::Version
750
750
  version: 1.8.11
751
751
  requirements: []
752
- rubygems_version: 3.0.3
752
+ rubyforge_project:
753
+ rubygems_version: 2.6.14.4
753
754
  signing_key:
754
755
  specification_version: 4
755
756
  summary: The Semiconductor Developer's Kit