origen_arm_debug 0.10.0 → 0.10.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: 6fba804b692152d859fe005174df7a52b74ac636
4
- data.tar.gz: b9b02e218c1525893ccf429e71a0169931a169e5
3
+ metadata.gz: 3b9c86cc50df6d0c06e836b469ac5c5505538507
4
+ data.tar.gz: 5ff8f7838d12c691a28d5b32129762391e0c0413
5
5
  SHA512:
6
- metadata.gz: b394aa148fc46d0e8586ee16a44f7e30da09d14d75b2c77eb7982dddc3d8144cf6e8fc81beb0d64c2161e24712858972e98e070c22ef6f75e2ce0ca8f00691ad
7
- data.tar.gz: 1bb7ff132cdce3a2d9302b10f6b02c4689cfe7598f6ecdb92f8702dbba04af96dbb19aa67b11e570573149f757d18e60b3b560f6adab198442e52d09f876e5ee
6
+ metadata.gz: c607efbf26b27c0d7c178d6c3eb825c5e57d7568031a91bc6ca42be0e701fea7fcc138a7116d6a5f0a6537b28deb231bd77991a064f24f37f956c9d9732ec805
7
+ data.tar.gz: 10f47615a8dadfe981bf165c9edde516f4fbf3c23dc04836e1e42972be98b362dd12fd6112e24a7cf59599e35548578e0e3a043b48806f4540cc2b99d56252ce
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module OrigenARMDebug
2
2
  MAJOR = 0
3
3
  MINOR = 10
4
- BUGFIX = 0
4
+ BUGFIX = 1
5
5
  DEV = nil
6
6
 
7
7
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
@@ -11,6 +11,10 @@ module OrigenARMDebug
11
11
  # either a DUT object or a protocol abstraction
12
12
  attr_reader :owner
13
13
 
14
+ # Customizable delay that will be applied after any read/write register transaction
15
+ # defaults to 0
16
+ attr_reader :latency
17
+
14
18
  # Initialize class variables
15
19
  #
16
20
  # @param [Hash] options Options to customize the operation
@@ -23,6 +27,7 @@ module OrigenARMDebug
23
27
  # (also used to support case on non-register based calls)
24
28
  add_reg :buffer, 0x00, 32, data: { pos: 0, bits: 32 }
25
29
 
30
+ @latency = options[:latency] || 0
26
31
  instantiate_subblocks(options)
27
32
  end
28
33
 
@@ -19,7 +19,7 @@ module OrigenARMDebug
19
19
  add_reg :test, 0x0, 32, data: { pos: 0, bits: 32 },
20
20
  bit: { pos: 0 }
21
21
 
22
- sub_block :arm_debug, class_name: 'OrigenARMDebug::Driver', aps: { mem_ap: 0x00000000, mdm_ap: 0x01000000 }
22
+ sub_block :arm_debug, class_name: 'OrigenARMDebug::Driver', aps: { mem_ap: 0x00000000, mdm_ap: 0x01000000 }, latency: 2
23
23
  arm_debug.add_mem_ap('alt_ahbapi', 0x02000000)
24
24
 
25
25
  # arm_debug.add_mem_ap('mem_ap', 0x00000000)
@@ -64,6 +64,8 @@ module OrigenARMDebug
64
64
  cc "MEM-AP(#{@name}): WR-#{size.to_s(10)}: "\
65
65
  "addr=0x#{addr.to_s(16).rjust(size / 4, '0')}, "\
66
66
  "data=0x#{reg(:drw).data.to_s(16).rjust(size / 4, '0')}"
67
+
68
+ apply_latency
67
69
  end
68
70
 
69
71
  def read_register(reg_or_val, options = {})
@@ -88,6 +90,8 @@ module OrigenARMDebug
88
90
 
89
91
  cc "MEM-AP(#{@name}): R-#{size.to_s(10)}: "\
90
92
  "addr=0x#{addr.to_s(16).rjust(size / 4, '0')}"
93
+
94
+ apply_latency
91
95
  end
92
96
 
93
97
  # -----------------------------------------------------------------------------
@@ -289,5 +293,12 @@ module OrigenARMDebug
289
293
  end
290
294
  wdata
291
295
  end
296
+
297
+ # Apply delay as specified by the top-level attribute 'latency' (defaults to 0).
298
+ #
299
+ # @param [Hash] options Options to customize the operation
300
+ def apply_latency(options = {})
301
+ Origen.tester.cycle(repeat: parent.latency)
302
+ end
292
303
  end
293
304
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: origen_arm_debug
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.10.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ronnie Lajaunie
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-07 00:00:00.000000000 Z
11
+ date: 2016-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: origen