origen_jtag 0.19.0 → 0.19.1

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
2
  SHA1:
3
- metadata.gz: cb7c96360f9c37b9ee800ddeba73ade40d00ecfe
4
- data.tar.gz: 40a8cfbd5ff79aa405b8bdb5a9fa619d0e1eae05
3
+ metadata.gz: a547831f27d0e3aee365d0904b6b56edeb411a15
4
+ data.tar.gz: 0998268995cd00c92fc8d9d8c60bd13f128cc0f3
5
5
  SHA512:
6
- metadata.gz: cd920d9c30fc4041ff89acba0ab793a2ea2a06e5093cae3582ab470817325c861d40d8e0c133da8f89ad4646e27fff7352c99d5d64708bdb2bdb84a52a5ea4b4
7
- data.tar.gz: 26ff839dd8cb0c2a121b751727031310236502c4f11e2b0497e3399c585d567a684b2701b7c6296312d837ad26fddc3bd21d128bf12c0084c4d10855dc85d426
6
+ metadata.gz: 9f0fe30cb011330ce5fe9883e5d90abb2cf273e2e70788ffdcaa82d51c275779bfe6c3d9e225aaf202d1e4e501c9f850ab1e78b1fa0af836d4e7c6c753ec63e9
7
+ data.tar.gz: 67611ad15cf3bf3278c256eab874d56215ce2bab934b0f606706d43756194ebfb7f5bf82b4451643533b5380c9733a451966fe8cdad149a1dadddb0b5d9f588d
@@ -1,64 +1,64 @@
1
- class OrigenJTAGApplication < Origen::Application
2
-
3
- # This file contains examples of some of the most common configuration options,
4
- # to see a real production example from a large application have a look at:
5
- # sync://sync-15088:15088/Projects/common_tester_blocks/blocks/C90TFS_NVM_tester/tool_data/origen_v2/config/application.rb
6
-
7
- # This information is used in headers and email templates, set it specific
8
- # to your application
9
- config.name = "Origen JTAG"
10
- config.initials = "OrigenJTAG"
11
- # Force naming for gem, done here because JTAG will not automatically convert to
12
- # 'jtag' when OrigenJTAG is snakecased
13
- self.name = "origen_jtag"
14
- self.namespace = "OrigenJTAG"
15
- config.rc_url = "git@github.com:Origen-SDK/origen_jtag.git"
16
- config.release_externally = true
17
-
18
- # To enable deployment of your documentation to a web server (via the 'origen web'
19
- # command) fill in these attributes.
20
- config.web_directory = "git@github.com:Origen-SDK/Origen-SDK.github.io.git/jtag"
21
- config.web_domain = "http://origen-sdk.org/jtag"
22
-
23
- config.semantically_version = true
24
-
25
- config.lint_test = {
26
- # Require the lint tests to pass before allowing a release to proceed
27
- run_on_tag: true,
28
- # Auto correct violations where possible whenever 'origen lint' is run
29
- auto_correct: true,
30
- # Limit the testing for large legacy applications
31
- #level: :easy,
32
- # Run on these directories/files by default
33
- #files: ["lib", "config/application.rb"],
34
- }
35
-
36
- # Ensure that all tests pass before allowing a release to continue
37
- def validate_release
38
- if !system("origen examples") #|| !system("origen specs")
39
- puts "Sorry but you can't release with failing tests, please fix them and try again."
40
- exit 1
41
- else
42
- puts "All tests passing, proceeding with release process!"
43
- end
44
- end
45
-
46
- # Run code coverage when deploying the web site
47
- def before_deploy_site
48
- Dir.chdir Origen.root do
49
- system "origen examples -c"
50
- dir = "#{Origen.root}/web/output/coverage"
51
- FileUtils.remove_dir(dir, true) if File.exists?(dir)
52
- system "mv #{Origen.root}/coverage #{dir}"
53
- end
54
- end
55
-
56
- # Deploy the website automatically after a production tag
57
- def after_release_email(tag, note, type, selector, options)
58
- command = "origen web compile --remote --api"
59
- Dir.chdir Origen.root do
60
- system command
61
- end
62
- end
63
-
64
- end
1
+ class OrigenJTAGApplication < Origen::Application
2
+
3
+ # This file contains examples of some of the most common configuration options,
4
+ # to see a real production example from a large application have a look at:
5
+ # sync://sync-15088:15088/Projects/common_tester_blocks/blocks/C90TFS_NVM_tester/tool_data/origen_v2/config/application.rb
6
+
7
+ # This information is used in headers and email templates, set it specific
8
+ # to your application
9
+ config.name = "Origen JTAG"
10
+ config.initials = "OrigenJTAG"
11
+ # Force naming for gem, done here because JTAG will not automatically convert to
12
+ # 'jtag' when OrigenJTAG is snakecased
13
+ self.name = "origen_jtag"
14
+ self.namespace = "OrigenJTAG"
15
+ config.rc_url = "git@github.com:Origen-SDK/origen_jtag.git"
16
+ config.release_externally = true
17
+
18
+ # To enable deployment of your documentation to a web server (via the 'origen web'
19
+ # command) fill in these attributes.
20
+ config.web_directory = "git@github.com:Origen-SDK/Origen-SDK.github.io.git/jtag"
21
+ config.web_domain = "http://origen-sdk.org/jtag"
22
+
23
+ config.semantically_version = true
24
+
25
+ config.lint_test = {
26
+ # Require the lint tests to pass before allowing a release to proceed
27
+ run_on_tag: true,
28
+ # Auto correct violations where possible whenever 'origen lint' is run
29
+ auto_correct: true,
30
+ # Limit the testing for large legacy applications
31
+ #level: :easy,
32
+ # Run on these directories/files by default
33
+ #files: ["lib", "config/application.rb"],
34
+ }
35
+
36
+ # Ensure that all tests pass before allowing a release to continue
37
+ def validate_release
38
+ if !system("origen examples") #|| !system("origen specs")
39
+ puts "Sorry but you can't release with failing tests, please fix them and try again."
40
+ exit 1
41
+ else
42
+ puts "All tests passing, proceeding with release process!"
43
+ end
44
+ end
45
+
46
+ # Run code coverage when deploying the web site
47
+ def before_deploy_site
48
+ Dir.chdir Origen.root do
49
+ system "origen examples -c"
50
+ dir = "#{Origen.root}/web/output/coverage"
51
+ FileUtils.remove_dir(dir, true) if File.exists?(dir)
52
+ system "mv #{Origen.root}/coverage #{dir}"
53
+ end
54
+ end
55
+
56
+ # Deploy the website automatically after a production tag
57
+ def after_release_email(tag, note, type, selector, options)
58
+ command = "origen web compile --remote --api"
59
+ Dir.chdir Origen.root do
60
+ system command
61
+ end
62
+ end
63
+
64
+ end
data/config/boot.rb CHANGED
@@ -1,24 +1,24 @@
1
- # This file is used to boot your plugin when it is running in standalone mode
2
- # from its own workspace - i.e. when the plugin is being developed.
3
- #
4
- # It will not be loaded when the plugin is imported by a 3rd party app - in that
5
- # case only lib/origen_jtag.rb is loaded.
6
- #
7
- # Therefore this file can be used to load anything extra that you need to boot
8
- # the development environment for this app. For example this is typically used
9
- # to load some additional test classes to use your plugin APIs so that they can
10
- # be tested and/or interacted with in the console.
11
- require 'origen_jtag'
12
-
13
- module OrigenJTAGDev
14
- # Example of how to explicitly require a file
15
- # require "origen_jtag_dev/my_file"
16
-
17
- # Load all files in the lib/origen_jtag_dev directory.
18
- # Note that there is no problem from requiring a file twice (Ruby will ignore
19
- # the second require), so if you have a file that must be required first, then
20
- # explicitly require it up above and then let this take care of the rest.
21
- Dir.glob("#{File.dirname(__FILE__)}/../lib/origen_jtag_dev/**/*.rb").sort.each do |file|
22
- require file
23
- end
24
- end
1
+ # This file is used to boot your plugin when it is running in standalone mode
2
+ # from its own workspace - i.e. when the plugin is being developed.
3
+ #
4
+ # It will not be loaded when the plugin is imported by a 3rd party app - in that
5
+ # case only lib/origen_jtag.rb is loaded.
6
+ #
7
+ # Therefore this file can be used to load anything extra that you need to boot
8
+ # the development environment for this app. For example this is typically used
9
+ # to load some additional test classes to use your plugin APIs so that they can
10
+ # be tested and/or interacted with in the console.
11
+ require 'origen_jtag'
12
+
13
+ module OrigenJTAGDev
14
+ # Example of how to explicitly require a file
15
+ # require "origen_jtag_dev/my_file"
16
+
17
+ # Load all files in the lib/origen_jtag_dev directory.
18
+ # Note that there is no problem from requiring a file twice (Ruby will ignore
19
+ # the second require), so if you have a file that must be required first, then
20
+ # explicitly require it up above and then let this take care of the rest.
21
+ Dir.glob("#{File.dirname(__FILE__)}/../lib/origen_jtag_dev/**/*.rb").sort.each do |file|
22
+ require file
23
+ end
24
+ end
data/config/commands.rb CHANGED
@@ -1,127 +1,127 @@
1
- # This file should be used to extend the origen command line tool with tasks
2
- # specific to your application.
3
- #
4
- # Also see the official docs on adding commands:
5
- # http://origen-sdk.org/origen/guides/custom/commands/
6
-
7
- # Map any command aliases here, for example to allow origen -x to refer to a
8
- # command called execute you would add a reference as shown below:
9
- aliases ={
10
- # "-x" => "execute",
11
- }
12
-
13
- # The requested command is passed in here as @command, this checks it against
14
- # the above alias table and should not be removed.
15
- @command = aliases[@command] || @command
16
-
17
- # Now branch to the specific task code
18
- case @command
19
-
20
- ## Run the unit tests
21
- when "specs"
22
- require "rspec"
23
- exit RSpec::Core::Runner.run(['spec'])
24
-
25
- when "examples", "test"
26
- Origen.load_application
27
- status = 0
28
-
29
- # Pattern generator tests
30
- ARGV = %w(jtag_workout -t RH1.rb -e v93k -r approved)
31
- load "#{Origen.top}/lib/origen/commands/generate.rb"
32
- ARGV = %w(jtag_workout -t RH1.rb -e j750.rb -r approved)
33
- load "#{Origen.top}/lib/origen/commands/generate.rb"
34
- ARGV = %w(jtag_workout -t RL1.rb -e j750.rb -r approved)
35
- load "#{Origen.top}/lib/origen/commands/generate.rb"
36
-
37
- ARGV = %w(jtag_workout -t RH2.rb -e j750.rb -r approved)
38
- load "#{Origen.top}/lib/origen/commands/generate.rb"
39
- ARGV = %w(jtag_workout -t RH2_1.rb -e j750.rb -r approved)
40
- load "#{Origen.top}/lib/origen/commands/generate.rb"
41
-
42
- ARGV = %w(jtag_workout -t RH4.rb -e v93k -r approved)
43
- load "#{Origen.top}/lib/origen/commands/generate.rb"
44
- ARGV = %w(jtag_workout -t RH4.rb -e j750.rb -r approved)
45
- load "#{Origen.top}/lib/origen/commands/generate.rb"
46
- ARGV = %w(jtag_workout -t RL4.rb -e j750.rb -r approved)
47
- load "#{Origen.top}/lib/origen/commands/generate.rb"
48
-
49
- ARGV = %w(rww_test -t RH4.rb -e j750.rb -r approved)
50
- load "#{Origen.top}/lib/origen/commands/generate.rb"
51
-
52
- ARGV = %w(global_label_test -t RH1.rb -e j750.rb -r approved)
53
- load "#{Origen.top}/lib/origen/commands/generate.rb"
54
-
55
- ARGV = %w(full_reg_ovly_cap -t RH4.rb -e uflex.rb -r approved)
56
- load "#{Origen.top}/lib/origen/commands/generate.rb"
57
-
58
- # Pattern generator tests -- confirm sub_block instanced jtag gives same results
59
- ARGV = %w(jtag_workout -t new_RH1 -e v93k -r approved)
60
- load "#{Origen.top}/lib/origen/commands/generate.rb"
61
- ARGV = %w(jtag_workout -t new_RH1 -e j750.rb -r approved)
62
- load "#{Origen.top}/lib/origen/commands/generate.rb"
63
- ARGV = %w(jtag_workout -t new_RL1 -e j750.rb -r approved)
64
- load "#{Origen.top}/lib/origen/commands/generate.rb"
65
-
66
- ARGV = %w(jtag_workout -t new_RH2.rb -e j750.rb -r approved)
67
- load "#{Origen.top}/lib/origen/commands/generate.rb"
68
- ARGV = %w(jtag_workout -t new_RH2_1.rb -e j750.rb -r approved)
69
- load "#{Origen.top}/lib/origen/commands/generate.rb"
70
-
71
- ARGV = %w(jtag_workout -t new_RH4 -e v93k -r approved)
72
- load "#{Origen.top}/lib/origen/commands/generate.rb"
73
- ARGV = %w(jtag_workout -t new_RH4 -e j750.rb -r approved)
74
- load "#{Origen.top}/lib/origen/commands/generate.rb"
75
- ARGV = %w(jtag_workout -t new_RL4 -e j750.rb -r approved)
76
- load "#{Origen.top}/lib/origen/commands/generate.rb"
77
-
78
- ARGV = %w(rww_test -t new_RH4 -e j750.rb -r approved)
79
- load "#{Origen.top}/lib/origen/commands/generate.rb"
80
-
81
- ARGV = %w(global_label_test -t new_RH1 -e j750.rb -r approved)
82
- load "#{Origen.top}/lib/origen/commands/generate.rb"
83
-
84
- ARGV = %w(full_reg_ovly_cap -t new_RH4 -e uflex.rb -r approved)
85
- load "#{Origen.top}/lib/origen/commands/generate.rb"
86
-
87
- ARGV = %w(two_port -t new_2port_RH4 -e j750.rb -r approved)
88
- load "#{Origen.top}/lib/origen/commands/generate.rb"
89
-
90
- ARGV = %w(jtag_workout -t new_P1 -e v93k -r approved)
91
- load "#{Origen.top}/lib/origen/commands/generate.rb"
92
-
93
- ARGV = %w(jtag_workout -t new_P4 -e v93k -r approved)
94
- load "#{Origen.top}/lib/origen/commands/generate.rb"
95
-
96
- if Origen.app.stats.changed_files == 0 &&
97
- Origen.app.stats.new_files == 0 &&
98
- Origen.app.stats.changed_patterns == 0 &&
99
- Origen.app.stats.new_patterns == 0
100
-
101
- Origen.app.stats.report_pass
102
- else
103
- Origen.app.stats.report_fail
104
- status = 1
105
- end
106
- puts
107
- if @command == "test"
108
- Origen.app.unload_target!
109
- require "rspec"
110
- result = RSpec::Core::Runner.run(['spec'])
111
- status = status == 1 ? 1 : result
112
- end
113
- exit status
114
-
115
- # Always leave an else clause to allow control to fall back through to the
116
- # Origen command handler.
117
- # You probably want to also add the command details to the help shown via
118
- # origen -h, you can do this be assigning the required text to @application_commands
119
- # before handing control back to Origen. Un-comment the example below to get started.
120
- else
121
- @application_commands = <<-EOT
122
- specs Run the specs (tests), -c will enable coverage
123
- examples Run the examples (tests), -c will enable coverage
124
- test Run both specs and examples, -c will enable coverage
125
- EOT
126
-
127
- end
1
+ # This file should be used to extend the origen command line tool with tasks
2
+ # specific to your application.
3
+ #
4
+ # Also see the official docs on adding commands:
5
+ # http://origen-sdk.org/origen/guides/custom/commands/
6
+
7
+ # Map any command aliases here, for example to allow origen -x to refer to a
8
+ # command called execute you would add a reference as shown below:
9
+ aliases ={
10
+ # "-x" => "execute",
11
+ }
12
+
13
+ # The requested command is passed in here as @command, this checks it against
14
+ # the above alias table and should not be removed.
15
+ @command = aliases[@command] || @command
16
+
17
+ # Now branch to the specific task code
18
+ case @command
19
+
20
+ ## Run the unit tests
21
+ when "specs"
22
+ require "rspec"
23
+ exit RSpec::Core::Runner.run(['spec'])
24
+
25
+ when "examples", "test"
26
+ Origen.load_application
27
+ status = 0
28
+
29
+ # Pattern generator tests
30
+ ARGV = %w(jtag_workout -t RH1.rb -e v93k -r approved)
31
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
32
+ ARGV = %w(jtag_workout -t RH1.rb -e j750.rb -r approved)
33
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
34
+ ARGV = %w(jtag_workout -t RL1.rb -e j750.rb -r approved)
35
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
36
+
37
+ ARGV = %w(jtag_workout -t RH2.rb -e j750.rb -r approved)
38
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
39
+ ARGV = %w(jtag_workout -t RH2_1.rb -e j750.rb -r approved)
40
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
41
+
42
+ ARGV = %w(jtag_workout -t RH4.rb -e v93k -r approved)
43
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
44
+ ARGV = %w(jtag_workout -t RH4.rb -e j750.rb -r approved)
45
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
46
+ ARGV = %w(jtag_workout -t RL4.rb -e j750.rb -r approved)
47
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
48
+
49
+ ARGV = %w(rww_test -t RH4.rb -e j750.rb -r approved)
50
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
51
+
52
+ ARGV = %w(global_label_test -t RH1.rb -e j750.rb -r approved)
53
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
54
+
55
+ ARGV = %w(full_reg_ovly_cap -t RH4.rb -e uflex.rb -r approved)
56
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
57
+
58
+ # Pattern generator tests -- confirm sub_block instanced jtag gives same results
59
+ ARGV = %w(jtag_workout -t new_RH1 -e v93k -r approved)
60
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
61
+ ARGV = %w(jtag_workout -t new_RH1 -e j750.rb -r approved)
62
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
63
+ ARGV = %w(jtag_workout -t new_RL1 -e j750.rb -r approved)
64
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
65
+
66
+ ARGV = %w(jtag_workout -t new_RH2.rb -e j750.rb -r approved)
67
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
68
+ ARGV = %w(jtag_workout -t new_RH2_1.rb -e j750.rb -r approved)
69
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
70
+
71
+ ARGV = %w(jtag_workout -t new_RH4 -e v93k -r approved)
72
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
73
+ ARGV = %w(jtag_workout -t new_RH4 -e j750.rb -r approved)
74
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
75
+ ARGV = %w(jtag_workout -t new_RL4 -e j750.rb -r approved)
76
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
77
+
78
+ ARGV = %w(rww_test -t new_RH4 -e j750.rb -r approved)
79
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
80
+
81
+ ARGV = %w(global_label_test -t new_RH1 -e j750.rb -r approved)
82
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
83
+
84
+ ARGV = %w(full_reg_ovly_cap -t new_RH4 -e uflex.rb -r approved)
85
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
86
+
87
+ ARGV = %w(two_port -t new_2port_RH4 -e j750.rb -r approved)
88
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
89
+
90
+ ARGV = %w(jtag_workout -t new_P1 -e v93k -r approved)
91
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
92
+
93
+ ARGV = %w(jtag_workout -t new_P4 -e v93k -r approved)
94
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
95
+
96
+ if Origen.app.stats.changed_files == 0 &&
97
+ Origen.app.stats.new_files == 0 &&
98
+ Origen.app.stats.changed_patterns == 0 &&
99
+ Origen.app.stats.new_patterns == 0
100
+
101
+ Origen.app.stats.report_pass
102
+ else
103
+ Origen.app.stats.report_fail
104
+ status = 1
105
+ end
106
+ puts
107
+ if @command == "test"
108
+ Origen.app.unload_target!
109
+ require "rspec"
110
+ result = RSpec::Core::Runner.run(['spec'])
111
+ status = status == 1 ? 1 : result
112
+ end
113
+ exit status
114
+
115
+ # Always leave an else clause to allow control to fall back through to the
116
+ # Origen command handler.
117
+ # You probably want to also add the command details to the help shown via
118
+ # origen -h, you can do this be assigning the required text to @application_commands
119
+ # before handing control back to Origen. Un-comment the example below to get started.
120
+ else
121
+ @application_commands = <<-EOT
122
+ specs Run the specs (tests), -c will enable coverage
123
+ examples Run the examples (tests), -c will enable coverage
124
+ test Run both specs and examples, -c will enable coverage
125
+ EOT
126
+
127
+ end
@@ -1,15 +1,15 @@
1
- # This file is similar to environment.rb and will be loaded
2
- # automatically at the start of each invocation of Origen.
3
- #
4
- # However the major difference is that it will not be loaded
5
- # if the application is imported by a 3rd party app - in that
6
- # case only environment.rb is loaded.
7
- #
8
- # Therefore this file should be used to load anything you need
9
- # to setup a development environment for this app, normally
10
- # this would be used to define some dummy classes to instantiate
11
- # your objects so that they can be tested and/or interacted with
12
- # in the console.
13
- module OrigenJTAG
14
- autoload :DUT, "origen_jtag/dut"
15
- end
1
+ # This file is similar to environment.rb and will be loaded
2
+ # automatically at the start of each invocation of Origen.
3
+ #
4
+ # However the major difference is that it will not be loaded
5
+ # if the application is imported by a 3rd party app - in that
6
+ # case only environment.rb is loaded.
7
+ #
8
+ # Therefore this file should be used to load anything you need
9
+ # to setup a development environment for this app, normally
10
+ # this would be used to define some dummy classes to instantiate
11
+ # your objects so that they can be tested and/or interacted with
12
+ # in the console.
13
+ module OrigenJTAG
14
+ autoload :DUT, "origen_jtag/dut"
15
+ end