origen 0.7.21 → 0.7.22

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: f76d497c905280cf72bbd0cb557394efb9de93ec
4
- data.tar.gz: ed16dfa8b87b2332343c60726cebe88a7823887b
3
+ metadata.gz: ac431b3c69fa97233c3cf47c28ba88f5acff4d63
4
+ data.tar.gz: 1a0f88d62a1cfbfb7305106d2ca77b76d116590c
5
5
  SHA512:
6
- metadata.gz: f4f7a3211f862fbb198e17ae087244d6c350f19fd1b088f7f3e42ca133e183eb027edc57b326cdf0f14405a81a58d8fc41d01ff61c6962ba3f4b13626d4f3dff
7
- data.tar.gz: 17d8ac1c25a3838b0421429286855bfdc9d937284581f51599a440fac938d05d3793f5206294889919cb4c41f8c94a47740cddea2f1abf2b2f39574bcd612942
6
+ metadata.gz: d6c5f3f359a15736467ffa20a9c8369613f90ef0bae436ca9bbb9f193ed4701c61a9e18ee221561cca9727b0d88655df579ff51c99e6a91dcd9ee9e88d929d9a
7
+ data.tar.gz: 960961ec6d3a0e3e2c236ccc81f5c6417ba235e1c5d7c89b2b47038dd41251ddf9dd83796389d70965aa69ff5eeaa1d4af2341080e730955eb76825ef4c28763
data/config/boot.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  # Interfaces must be required, can't autoload
2
2
  require "c99/ate_interface"
3
- require "c99/doc_interface"
4
3
  # The majority of this class is defined in the support application,
5
4
  # this is to test that the importing application can override and
6
5
  # extend imported classes.
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module Origen
2
2
  MAJOR = 0
3
3
  MINOR = 7
4
- BUGFIX = 21
4
+ BUGFIX = 22
5
5
  DEV = nil
6
6
 
7
7
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
@@ -595,7 +595,7 @@ module Origen
595
595
  dynamic_resource(:toplevel_listeners, [], adding: true) << obj
596
596
  end
597
597
 
598
- # Any attempts to instantiate a test within the give block will be forced to instantiate
598
+ # Any attempts to instantiate a tester within the give block will be forced to instantiate
599
599
  # an Origen::Tester::Doc instance
600
600
  def with_doc_tester(options = {})
601
601
  @with_doc_tester = true
@@ -332,6 +332,7 @@ module Origen
332
332
  listener.shutdown(options)
333
333
  end
334
334
  end
335
+ ss 'Pattern complete'
335
336
 
336
337
  # Now the pattern has run call the render method if the tester uses a template
337
338
  Origen.tester.render_template
@@ -279,6 +279,17 @@ module Origen
279
279
  ~data & ((1 << size) - 1)
280
280
  end
281
281
 
282
+ # Returns the reverse of the data value held by the collection
283
+ def data_reverse
284
+ data = 0
285
+ reverse.each_with_index do |bit, i|
286
+ return undefined if bit.is_a?(Origen::UndefinedClass)
287
+ data |= bit.data << i
288
+ end
289
+ data
290
+ end
291
+ alias_method :reverse_data, :data_reverse
292
+
282
293
  # Supports reg.bit[0] and bitcollection.bit[0]
283
294
  def bit
284
295
  self
@@ -151,9 +151,10 @@ module Origen
151
151
 
152
152
  # BIT NAME ROW
153
153
  line = ' '
154
+ first_done = false
154
155
  named_bits include_spacers: true do |name, bit, bitcounter|
155
156
  if _bit_in_range?(bit, max_bit, min_bit)
156
- if max_bit > (size - 1)
157
+ if max_bit > (size - 1) && !first_done
157
158
  (max_bit - (size - 1)).times do
158
159
  line << ' ' * (bit_width + 1)
159
160
  end
@@ -172,8 +173,12 @@ module Origen
172
173
  bit_name = "#{name}[#{upper}:#{lower}]"
173
174
  bit_span = upper - lower + 1
174
175
  end
175
- width = bit_width * bit_span
176
- line << '|' + "#{bit_name[0..width - 2]}".center(width + bit_span - 1)
176
+ width = (bit_width * bit_span) + bit_span - 1
177
+ if bit_name.length > width
178
+ line << '|' + "#{bit_name[0..width - 2]}*"
179
+ else
180
+ line << '|' + bit_name.center(width)
181
+ end
177
182
 
178
183
  else
179
184
  bit.shift_out_left do |bit|
@@ -186,22 +191,28 @@ module Origen
186
191
  else
187
192
  if name
188
193
  bit_name = "#{name}"
189
- txt = "#{bit_name[0..bit_width - 2]}"
194
+ if bit_name.length > bit_width
195
+ txt = "#{bit_name[0..bit_width - 2]}*"
196
+ else
197
+ txt = bit_name
198
+ end
190
199
  else
191
200
  txt = ''
192
201
  end
193
202
  line << '|' + txt.center(bit_width)
194
203
  end
195
204
  end
205
+ first_done = true
196
206
  end
197
207
  line += '|'
198
208
  desc << line
199
209
 
200
210
  # BIT STATE ROW
201
211
  line = ' '
212
+ first_done = false
202
213
  named_bits include_spacers: true do |name, bit, _bitcounter|
203
214
  if _bit_in_range?(bit, max_bit, min_bit)
204
- if max_bit > (size - 1)
215
+ if max_bit > (size - 1) && !first_done
205
216
  (max_bit - (size - 1)).times do
206
217
  line << ' ' * (bit_width + 1)
207
218
  end
@@ -247,6 +258,7 @@ module Origen
247
258
  end
248
259
  end
249
260
  end
261
+ first_done = true
250
262
  end
251
263
  line += '|'
252
264
  desc << line
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.7.21
4
+ version: 0.7.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen McGinty
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-22 00:00:00.000000000 Z
11
+ date: 2016-08-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -346,7 +346,6 @@ files:
346
346
  - helpers/guides.rb
347
347
  - helpers/url.rb
348
348
  - lib/c99/ate_interface.rb
349
- - lib/c99/doc_interface.rb
350
349
  - lib/c99/nvm.rb
351
350
  - lib/c99/target/mock2.rb
352
351
  - lib/c99/target/subdir/mock3.rb
@@ -573,4 +572,3 @@ signing_key:
573
572
  specification_version: 4
574
573
  summary: The Semiconductor Developer's Kit
575
574
  test_files: []
576
- has_rdoc:
@@ -1,56 +0,0 @@
1
- module C99
2
- class DocInterface
3
- include OrigenTesters::Doc::Generator
4
-
5
- # Options passed to Flow.create and Library.create will be passed in here, use as
6
- # desired to configure your interface
7
- def initialize(_options = {})
8
- end
9
-
10
- def resources_filename=(*_args)
11
- end
12
-
13
- def log(_msg)
14
- end
15
-
16
- def func(name, options = {})
17
- options = {
18
- duration: :static
19
- }.merge(options)
20
-
21
- block_loop(name, options) do |_block, i, group|
22
- ins = tests.add(name, options)
23
- if group
24
- flow.test(group, options) if i == 0
25
- else
26
- flow.test(ins, options)
27
- end
28
- end
29
- end
30
-
31
- def block_loop(name, options)
32
- if options[:by_block]
33
- tests.group do |group|
34
- group.name = name
35
- $nvm.blocks.each_with_index do |block, i|
36
- yield block, i, group
37
- end
38
- end
39
- else
40
- yield
41
- end
42
- end
43
-
44
- def por(_options = {})
45
- end
46
-
47
- def para(name, options = {})
48
- options = {
49
- high_voltage: false
50
- }.merge(options)
51
- ins = tests.add(name, options)
52
- ins.dc_category = 'NVM_PARA'
53
- flow.test(ins, options)
54
- end
55
- end
56
- end