@@ -3,28 +3,50 @@ Terminology
33
44These are the key terms used by pyOCD and its documentation.
55
6- - ** CoreSight** — A standard Arm architecture for debug subsystems. It defines a standardised way
6+ - ** ADI** : Arm Debug Interface, an Arm architecture standard for how JTAG and SWD interface with CoreSight.
7+ It defines the DAP structure and registers.
8+ - ** AP** : Access Port, part of the DAP, connected to the DP, that allows the debugger to perform operations
9+ on the chip and cores. There are multiple types of AP that serve different purposes (see MEM-AP). Some MCU
10+ vendors implement proprietary APs in their chips.
11+ - ** CoreSight** : A standard Arm architecture for debug subsystems. It defines a standardised way
712 to discover the debug resources provided by a device.
8- - ** debug link** — The interface provided by a chip to allow for its debugging. Mostly SWD or JTAG.
9- - ** debug probe** — The device that drives SWD or JTAG. Usually connected to the host via USB.
10- - ** delegation** — A code pattern used to extend or modify functionality of a class by implementing
13+ - ** DAP** : Debug Access Port, the debugging module that is accessed via the JTAG or SWD port. Composed of a
14+ DP and one or more APs.
15+ - ** DP** : Debug Port, part of the DAP that handles SWD or JTAG. Most chips only have a single DP.
16+ - ** debug link** : The connection between the debugger and target. This is usually a physical connection over
17+ which the SWD or JTAG wire protocol runs, but different arrangements are possible.
18+ - ** debug probe** : The device that drives SWD or JTAG. Usually connected to the host via USB.
19+ - ** delegation** : A code pattern used to extend or modify functionality of a class by implementing
1120 methods in a companion object rather than through subclassing.
12- - ** flash algorithm** — A small piece of code downloaded to and executed from target RAM that
21+ - ** core** : Refers to a CPU and the closely coupled components surrounding it such as debug and trace
22+ support.
23+ - ** flash algorithm** : A small piece of code downloaded to and executed from target RAM that
1324 performs flash erase and program operations.
14- - ** gdbserver** — A server that implements gdb's Remote Serial Protocol (RSP) to allow gdb to debug a remote
25+ - ** gdbserver** : A server that implements gdb's Remote Serial Protocol (RSP) to allow gdb to debug a remote
1526 target. PyOCD acts as a bridge between gdb and the target.
16- - ** host** — The computer running pyOCD.
17- - ** JTAG** — Debug link standard defined by IEEE Std 1149.1-2001 and subsequent specifications.
18- - ** session** — Represents a connection to a debug probe and the runtime object graph.
19- - ** session option** — A named setting that controls some feature of pyOCD. Options are associated with
27+ - ** host** : The computer running pyOCD.
28+ - ** JTAG** : Debug link wire protocol standard defined by IEEE Std 1149.1-2001 and subsequent specifications.
29+ - ** MEM-AP** : Generic standard for a special type of AP used by the debugger to perform memory reads and
30+ writes within the chip. Concrete MEM-APs have names that represent the kind of bus fabric with which they
31+ interface, such as AHB-AP or AXI-AP.
32+ - ** probe server** : Server that shares a debug probe over TCP/IP.
33+ - ** session** : Represents a connection to a debug probe and the runtime object graph.
34+ - ** session option** : A named setting that controls some feature of pyOCD. Options are associated with
2035 a session, and each session can have different values for a given option.. They can be set from the
2136 command line or configuration files.
22- - ** SWD** — Serial Wire Debug, an Arm standard for a 2-signal debug link.
23- - ** target** — The device that is being controlled by pyOCD through the debug probe.
24- - ** target type** — The part number for the target. Represented by an identifier that is either
37+ - ** SoC** : System on Chip, a complete computer on a single chip, like a microcontroller.
38+ - ** SWD** : Serial Wire Debug, an Arm standard for a 2-signal serial wire protocol that is an alternative to
39+ JTAG. It provides nearly the same functionality, except for lack of boundary scan.
40+ - ** SWO** : Serial Wire Output, SWV frames usually come out this one pin output. Because it shares the JTAG
41+ signal TDO, SWO is only accessible when using SWD.
42+ - ** SWV** : Serial Wire Viewer, A trace capability providing display of reads, writes, exceptions, PC Samples
43+ and printf.
44+ - ** target** : The device that is being controlled by pyOCD through the debug probe.
45+ - ** target type** : The part number for the target. Represented by an identifier that is either
2546 the full part number or a shortened form of it.
26- - ** unique ID** — The unique identifier for a debug probe. Nominally a URI, but usually just the probe's
47+ - ** unique ID** : The unique identifier for a debug probe. Nominally a URI, but usually just the probe's
2748 serial number.
28- - ** user script** — A Python script written by the user and loaded at runtime that can extend or
49+ - ** user script** : A Python script written by the user and loaded at runtime that can extend or
2950 modify pyOCD's behaviour.
51+ - ** wire protocol** : The protocol used on the debug link, either SWD or JTAG for Arm-based devices.
3052
0 commit comments