Tag: v1.3.0

Branch: ‘master’
by Paul DeRouen on 28-Feb-2022 11:25AM

add support for dap v6

Tag: v1.2.0

Branch: ‘master’
by Paul DeRouen on 28-Jan-2022 08:26AM

add basic AXI-AP support

Tag: v1.1.4

Branch: ‘master’
by Ronnie Lajaunie on 14-May-2020 09:17AM

Add ability to switch between SWD and JTAG DPs from application

  dut.arm_debug.set_dp(:jtag)

  dut.arm_debug.set_dp(:swd)

  dut.arm_debug.reset_dp

Tag: v1.1.3

Branch: ‘master’
by Corey Engelken on 21-Jan-2019 10:57AM

Cleanup of the register flags when reading or capturing a register.

Tag: v1.1.2

Branch: ‘master’
by Chris P Nappi on 01-Jun-2018 07:22AM

Fix auto address increment boundary check

Tag: v1.1.1

Branch: ‘master’
by Corey Engelken on 01-May-2018 07:44AM

Add support for apacc_wait_states to SWD.

Tag: v1.1.0

Branch: ‘master’
by nxa18793 on 14-Feb-2018 07:48AM

IR shift size and register select values are now configurable through instantiation options

Tag: v1.0.2

Branch: ‘master’
by Lajaunie Ronald-B01784 on 16-Nov-2017 13:56PM
  • Allow read mask to fall through to origen_jtag driver (shifted 3 bits to match JTAG-DP DR setup)
  • Switch wait-state and latency attr to be accessors, so they can be updated on the fly at the top-level if necessary
  • Additional documentation about how to customized for company-specific implementations

Tag: v1.0.1

Branch: ‘master’
by Lajaunie Ronald-B01784 on 08-Jun-2017 09:19AM
  • Fix model build error that causes documnetation generation to crash

Tag: v1.0.0

Branch: ‘master’
by Lajaunie Ronald-B01784 on 12-May-2017 10:47AM
  • Overhauled API to match ARM Debug Interface v5 Spec

  • Internal registers switched to use Origen register models

arm_debug.sw_dp.idcode.read!(0x2BA01477)
arm_debug.sw_dp.ctrlstat.write!(0x5000_0000) # Power-up
arm_debug.sw_dp.ctrlstat.read!(0xF0000000)   # Verify
arm_debug.ahb_ap.idr.read!(0x24770011)
arm_debug.sw_dp.select.write!(0) # Select AHB-AP, bank 0

# Set the SIZE field of CSW to 0x2 (32-bit transfers) + AddrInc=1
arm_debug.ahb_ap.csw.write!(0x23000052)

Tag: v1.0.0.pre1

Branch: ‘master’
by Lajaunie Ronald-B01784 on 12-May-2017 10:38AM
  • Pre-production test release

Tag: v0.10.1

Branch: ‘master’
by Ronnie Lajaunie on 13-Apr-2016 18:41PM

Added ‘latency’ parameter to the the top-level driver that can be used to apply an application specific delay (in cycles).

  # To specify a post-read/write delay, pass it into the sub_block call as an option
called ":latency".
  #
  sub_block :arm_debug, class_name: 'OrigenARMDebug::Driver', aps: { mem_ap: 0x00000000,
mdm_ap: 0x01000000 }, latency: 2

Tag: v0.10.0

Branch: ‘master’
by Ronnie Lajaunie on 07-Apr-2016 07:59AM

Fix register bit definition for swj_dp.apacc and swj_dp.abort (bug #5).

Tag: v0.10.0.pre0

Branch: ‘master’
by Ronnie Lajaunie on 30-Mar-2016 09:30AM

Patched SWD reads (compares were inadvertently removed in 0.9.0 release).

Tag: v0.9.0

Branch: ‘master’
by Ronnie Lajaunie on 29-Mar-2016 12:51PM

Update write_register/read_register to follow standard of requiring ‘data’ argument for non-register based transactions.

For example:

  arm_debug.write_register(0x20000000, 0x55555555)             # OLD STYLE
  arm_debug.read_register(0x20000000, edata: 0x55555555)       # OLD STYLE


  arm_debug.write_register(0x55555555, address: 0x20000000)    # NEW STYLE
  arm_debug.read_register(0x55555555, address: 0x20000000)     # NEW STYLE

Switch ARMDebug module to be Origen::Model to be used as a sub_block by the top-level.

class DUT
  include Origen::TopLevel
  include OrigenARMDebug

  # Also include the required physical driver, JTAG in this example
  include OrigenJTAG

  def initialize
    reg :myreg, 0x0012, size: 16 do |reg|
      reg.bits 15..8, :upper_byte
      reg.bits 7..0,  :lower_byte
    end

    sub_block :arm_debug, class_name: "OrigenARMDebug::Driver", aps: { mem_ap: 0x00000000,
mdmap: 0x01000000 }
  end
end

Tag: v0.8.4

Branch: ‘master’
by Ronnie Lajaunie on 07-Jan-2016 09:30AM

Increase code coverage.

Tag: v0.8.3

Branch: ‘master’
by Ronnie Lajaunie on 11-Dec-2015 17:06PM

Switch to internal register dpacc instead of relying on top-level dap register

Tag: v0.8.2

Branch: ‘master’
by Ronnie Lajaunie on 08-Dec-2015 12:51PM

Fix mem_ap.write_read bug

Tag: v0.8.1

Branch: ‘master’
by Ronnie Lajaunie on 03-Dec-2015 09:27AM

Patch RDBUFF comparing functionality.

Tag: v0.8.0

Branch: ‘master’
by Ronnie Lajaunie on 03-Dec-2015 08:35AM

Fixes a bug in the AP-ACCESS routine.

Tag: v0.7.0

Branch: ‘master’
by Ronnie Lajaunie on 05-Oct-2015 21:11PM

Add register model handling to read and write methods.

Tag: v0.6.0

Branch: ‘master’
by Ronnie Lajaunie on 05-Oct-2015 20:28PM

Added register model handling to read and write methods.

Tag: v0.4.3

Branch: ‘master’
by Ronnie Lajaunie on 28-Aug-2015 13:21PM

Added coverage and documentation.

Tag: v0.4.2

Branch: ‘master’
by Ronnie Lajaunie on 27-Aug-2015 08:04AM

Additional code coverage and documentation.

Tag: v0.4.1

Branch: ‘master’
by Ronnie Lajaunie on 25-Aug-2015 10:16AM

Removed some extra files.

Tag: v0.4.0

Branch: ‘master’
by Ronnie Lajaunie on 24-Aug-2015 21:37PM

Initial release


Comments