Class: Origen::Tester::JLink
- Inherits:
-
CommandBasedTester
- Object
- CommandBasedTester
- Origen::Tester::JLink
- Defined in:
- lib/origen/tester/jlink/jlink.rb
Instance Attribute Summary
Attributes included from API
#comment_level, #generating, #includes, #inhibit_comments, #inhibit_vectors
Instance Method Summary collapse
- #delay(cycles) ⇒ Object
-
#initialize ⇒ JLink
constructor
A new instance of JLink.
- #read(address, number_of_regs = 1) ⇒ Object
- #write_byte(address, data) ⇒ Object
- #write_longword(address, data) ⇒ Object
- #write_word(address, data) ⇒ Object
Methods inherited from CommandBasedTester
#call_subroutine, #cycle, #direct_write, #format_vector, #loop
Methods included from Origen::Tester
Methods included from API
#annotate, #any_clocks_running?, #c1, #c2, #clocks_running, #comment_char, #cycle, #doc?, #generate?, #generating_pattern?, #generating_program?, #ignore_fails, #import_test_time, #inhibit_vectors_and_comments, #is_command_based?, #is_vector_based?, #j750?, #j750_hpt?, #name, #pat_extension, #pattern_footer, #pattern_header, #pattern_section, #pins_need_toggling, #pop_running_clock, #program_comment_char, #push_running_clock, #slice_repeats, #snip, #ss, #step_comment_prefix, #ultraflex?, #update_running_clocks, #v93k?
Methods included from Timing
#before_timeset_change, #called_timesets, #count, #current_period_in_ns, #current_timeset, #cycles_to_ms, #cycles_to_time, #cycles_to_ts, #cycles_to_us, #max_repeat_loop, #ms_to_cycles, #ns_to_cycles, #s_to_cycles, #set_timeset, #timeset_changed, #us_to_cycles, #wait
Methods included from VectorGenerator
#_render, #add_microcode_to_last_or_cycle, #before_write_pattern_line, #compressable_vector?, #current_pin_vals, #cycle_count, #dec_vec_count, #dont_compress, #dont_compress=, #expand_vector, #format, #format_pin_state, #format_vector, #get_pingroup, #inc_cycle_count, #inc_vec_count, #inhibit_pin, #inhibited_pins, #last_object, #last_vector, #multi_mode_optimize, #optimize, #ordered_pins, #ordered_pins_cache, #pingroup_map, #pipeline, #preset_next_vector, #push_comment, #push_microcode, #push_vector, #render, #render_body, #render_footer, #render_header, #render_template, #reset_cycle_count, #stage, #track_and_format_vector, #update_pin_from_formatted_state, #update_vector, #update_vector_pin_val, #vec_count, #vector_group_size, #vector_group_size=, #with_vector_group_size
Constructor Details
#initialize ⇒ JLink
Returns a new instance of JLink.
4 5 6 7 8 9 10 |
# File 'lib/origen/tester/jlink/jlink.rb', line 4 def initialize super # The minimum time unit is 1ms set_timeset('default', 1_000_000) @pat_extension = 'jlk' @comment_char = '//' end |
Instance Method Details
#delay(cycles) ⇒ Object
12 13 14 |
# File 'lib/origen/tester/jlink/jlink.rb', line 12 def delay(cycles) microcode "Sleep #{cycles_to_ms(cycles)}" end |
#read(address, number_of_regs = 1) ⇒ Object
28 29 30 |
# File 'lib/origen/tester/jlink/jlink.rb', line 28 def read(address, number_of_regs = 1) microcode "mem 0x#{address.to_s(16)}, #{number_of_regs}" end |
#write_byte(address, data) ⇒ Object
16 17 18 |
# File 'lib/origen/tester/jlink/jlink.rb', line 16 def write_byte(address, data) microcode "w1 0x#{address.to_s(16).upcase}, 0x#{data.to_s(16).upcase}" end |
#write_longword(address, data) ⇒ Object
24 25 26 |
# File 'lib/origen/tester/jlink/jlink.rb', line 24 def write_longword(address, data) microcode "w4 0x#{address.to_s(16).upcase}, 0x#{data.to_s(16).upcase}" end |
#write_word(address, data) ⇒ Object
20 21 22 |
# File 'lib/origen/tester/jlink/jlink.rb', line 20 def write_word(address, data) microcode "w2 0x#{address.to_s(16).upcase}, 0x#{data.to_s(16).upcase}" end |