Xilinx Software Command Line Tools (XSCT): Reference Guide (UG1208) Xsct
User Manual:
Open the PDF directly: View PDF .
Page Count: 115
Download | ![]() |
Open PDF In Browser | View PDF |
Xilinx Software Command-Line Tool (XSCT) Reference Guide UG1208 (v2017.2) June 7, 2017 UG1208 (v2017.1) April 5, 2017 Revision History 06/07/2017: with the Vivado® Design Suite 2017.2 without changes from 2017.1. The followingReleased table shows revision history for this document. Date Version April 5, 2017 2017.1 Revision • Added new changebsp command • Added support for Serial Vector Format (SVF) for A53 processors Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 2 Table of Contents Xilinx Software Command-Line Tool (XSCT) System Requirements................................................................................................................... 6 Installing and Launching XSCT Installing and Launching XSCT on Windows .................................................................................. 7 Installing and Launching XSCT on Linux ........................................................................................ 8 XSCT Commands Target Connection Management................................................................................................. 11 Target Registers .......................................................................................................................... 15 Program Execution ..................................................................................................................... 17 Target Memory........................................................................................................................... 28 Target Download FPGA/BINARY ................................................................................................. 35 Target Reset ............................................................................................................................... 38 Target Breakpoints/Watchpoints ................................................................................................ 39 Jtag UART................................................................................................................................... 44 Miscellaneous ............................................................................................................................ 46 JTAG Access................................................................................................................................ 54 SVF Operations........................................................................................................................... 64 SDK Projects............................................................................................................................... 69 HSI Commands ........................................................................................................................... 98 XSCT Use Cases Changing Compiler Options of an Application Project................................................................. 99 Creating an Application Project Using an Application Template ................................................ 100 Creating a Bootable Image and Program the Flash.................................................................... 100 Debugging a Program Already Running on the Target ............................................................... 101 Debugging Applications on Zynq UltraScale+ MPSoC ................................................................ 102 Modifying BSP Settings............................................................................................................. 105 Performing Standalone Application Debug ............................................................................... 105 Generating SVF Files................................................................................................................. 108 Running an Application in Non-Interactive Mode ..................................................................... 109 Running Tcl Scripts ................................................................................................................... 110 Switching Between XSCT and Xilinx SDK Development Environment ........................................ 111 Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 3 Using JTAG UART ...................................................................................................................... 111 Working with Libraries ............................................................................................................. 112 Additional Resources and Legal Notices Please Read: Important Legal Notices....................................................................................... 114 Index Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 4 Chapter 1 Xilinx Software Command-Line Tool (XSCT) Graphical development environments such as the Xilinx® Software Development Kit (Xilinx SDK) are useful for getting up to speed on development for a new processor architecture. It helps to abstract away and group most of the common functions into logical wizards that even the novice can use. However, scriptability of a tool is also essential for providing the flexibility to extend what is done with that tool. It is particularly useful when developing regression tests that will be run nightly or running a set of commands that are used often by the developer. Xilinx Software Command-line Tool (XSCT) is an interactive and scriptable command-line interface to Xilinx SDK. As with other Xilinx tools, the scripting language for XSCT is based on Tools Command Language (Tcl). You can run XSCT commands interactively or script the commands for automation. XSCT supports the following actions: • • • • • • Create hardware, board support packages (BSPs), and application projects Manage repositories Set toolchain preferences Configure and build BSPs/applications Download and run applications on hardware targets Create and flash boot images by running Bootgen and program_flash tools. This reference guide is intended to provide information you need to develop scripts for software development and debug targeting the Xilinx family of processors. As you read the document you will notice usage of some abbreviations for various products produced by Xilinx. For example: • Use of ps7 in the source code implies that these files are targeting the Zynq® - 7000 AP SoC family of products, and specifically the dual-core Cortex™ ARM® A9 processors in the SoC. • Use of psu in the source code implies that this code is targeting a Zynq UltraScale+™ MPSoC device, which contains a Cortex Quad-core ARM A53, dual-core ARM R5, ARM Mali 400 GPU, and a MicroBlaze™ processor based platform management unit (PMU). • Hardware definition files (HDF) are used to transfer the information about the hardware system that includes a processor to the embedded software development tools such as Xilinx SDK (XSDK) and Xilinx Software Command-Line Tools (XSCT). It includes information about which peripherals are instantiated, clocks, memory interfaces, and memory maps. • Microprocessor Software Specification (MSS) files are used to store information about the BSP. They contain OS information for the BSP, software drivers associated with each peripheral of the hardware design, STDIO settings, and compiler flags like optimization and debug information level. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 5 Chapter 1: Xilinx Software Command-Line Tool (XSCT) System Requirements If you plan to use capabilities that are offered through the Xilinx SDK or the Xilinx Software Command-Line Tool (XSCT), then you also need to meet the hardware and software requirements that are specific to that capability. The following table lists the hardware and software requirements: Hardware Requirements CPU Speed Processor 2.2 GHz minimum or higher; Hyper-threading (HHT) or Multicore recommended. Intel Pentium 4, Intel Core Duo, or Xeon Processors; SSE2 minimum 2 GB or higher Memory/ RAM Display 1024×768 or higher at normal Resolution size (96 dpi) Supported Operating Systems Windows • Windows 7 SP1 (64-bit) • Windows 8.1 (64-bit) • Windows 10 Pro (64-bit) Linux • Red Hat Enterprise Linux: NOTE: 32-bit machine support is now only available through Lab Tools and Hardware Server standalone product installers. ◦ 6.6-6.7 (64-bit) ◦ 7.0-7.1 (64-bit) • CentOS: ◦ 6.7-6.8 (64-bit) ◦ 7.1-7.2 (64-bit) • SUSE Linux Enterprise: ◦ 11.4 (64-bit) ◦ 12.1 (64-bit) • Ubantu Linux 16.04 LTS (64-bit) NOTE: Additional library installation required. Disk Space Based on the components selected during installation. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 6 Chapter 2 Installing and Launching XSCT The Xilinx® Software Command-Line Tool (XSCT) can be installed either as a part of the Xilinx SDK installer or as a separate command-line tool only installation. XSCT is available for the following platforms: • Microsoft Windows • Linux The following sections explain the installation process for each of these platforms. Installing and Launching XSCT on Windows XSCT can be installed using the Windows executable installer. The installer executable bears the name Xilinx_SDK__Win64.EXE, where indicates the Xilinx Software Development Kit (Xilinx SDK) version number. NOTE: Installing XSCT on Microsoft Windows operating system might require administrator rights. In addition, your project workspace needs to be set up in any folder that you can fully access. 1. To install XSCT, double-click the Windows installer executable file. 2. The installer accepts your login credentials and allows you to select specific tool components. The client then automatically downloads only what you have selected and installs it on your local machine. 3. In the Select Edition to Install window, select the Xilinx Software Command-Line Tool (XSCT) option to install XSCT as a seperate command-line tool only. Alternatively, you can also select the Xilinx Software Development Kit (XSDK) option to install XSCT as a part of the Xilinx SDK, an Eclipse-based integrated development environment. 4. Unless you choose otherwise, XSCT is installed in the C:\Xilinx directory. 5. To launch XSCT on Windows, select Start →Programs →Xilinx Design Tools →SDK and then select Xilinx Software Command Line Tool. Where SDK indicates the Xilinx Software Development Kit version number. 6. You can also launch XSCT from the command line. cd C:\Xilinx\SDK\ \bin xsct.bat 7. To view the available command-line options, issue the help command at the XSCT command prompt. ****** Xilinx Software Commandline Tool (XSCT) Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 7 Chapter 2: Installing and Launching XSCT ** Copyright 1986-2016 Xilinx, Inc. All Rights Reserved. xsct% help Available Help Categories connections registers running memory download reset breakpoints streams miscellaneous jtag sdk petalinux hsi - Target Connection Management Target Registers Program Execution Target Memory Target Download FPGA/BINARY Target Reset Target Breakpoints/Watchpoints Jtag UART Miscellaneous JTAG Access SDK Projects Petalinux commands HSI commands Type "help" followed by above "category" for more details or help" followed by the keyword "commands" to list all the commands xsct% Installing and Launching XSCT on Linux Xilinx Software Command-line Tool (XSCT) can be installed using the small self-extracting web install executable binary distribution file. The installer file bears the name Xilinx_SDK_ _Lin64.BIN, where indicates the Xilinx Software Development Kit (Xilinx SDK) version number. NOTE: The procedure for installing XSCT on Linux depends on which Linux distribution you are using. Ensure that the installation folder has the appropriate permissions. In addition, your project workspace needs to be set up in any folder that you can fully access. 1. To install XSCT, launch the terminal and change the permission of the self-extracting binary executable. $ chmod +x Xilinx_SDK_ _Lin64.BIN 2. Start the installation process or run the .BIN file. ./Xilinx_SDK_ _Lin64.BIN 3. The installer accepts your login credentials and allows you to select specific tool components. The client then automatically downloads only what you have selected and installs it on your local machine. 4. In the Select Edition to Install window, select the Xilinx Software Command-Line Tool (XSCT) option to install XSCT as a seperate command-line tool only. Alternatively, you can also select the Xilinx Software Development Kit (XSDK) option to install XSCT as a part of the Xilinx SDK, an Eclipse-based integrated development environment. 5. Unless you choose otherwise, XSCT is installed in the /opt/Xilinx directory. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 8 Chapter 2: Installing and Launching XSCT 6. To launch XSCT on Linux, select Applications →Other and then select Xilinx Software Command Line Tool . Where is the version number of the XSCT. 7. You can also launch XSCT from the command line. cd /opt/Xilinx/SDK/ /bin ./xsct 8. To view the available command-line options, issue the help command at the XSCT command prompt. ****** Xilinx Software Commandline Tool (XSCT) ** Copyright 1986-2016 Xilinx, Inc. All Rights Reserved. xsct% help Available Help Categories connections registers running memory download reset breakpoints streams miscellaneous jtag sdk petalinux hsi - Target Connection Management Target Registers Program Execution Target Memory Target Download FPGA/BINARY Target Reset Target Breakpoints/Watchpoints Jtag UART Miscellaneous JTAG Access SDK Projects Petalinux commands HSI commands Type "help" followed by above "category" for more details or help" followed by the keyword "commands" to list all the commands xsct% Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 9 Chapter 3 XSCT Commands The Xilinx® Software Command-Line tool allows you to create complete Xilinx SDK workspaces, investigate the hardware and software, debug and run the project, all from the command line. XSCT commands are broadly classified into the following categories. The commands in each category are described subsequently. • • • • • • • • • • • • Target Connection Management Target Registers Program Execution Target Memory Target Download FPGA/BINARY Target Reset Target Breakpoints/Watchpoints Jtag UART Miscellaneous JTAG Access SDK Projects HSI Commands TIP: • Help for each of the commands can be viewed by running help or -help in the XSCT console. All the available XSCT commands can be listed by running help commands. • You can use Ctrl+C to terminate long running commands like fpga or elf download or for/while loops. • You can terminate XSCT by pressing Ctrl+C twice in succession. • Windows style paths are supported when the path is enclosed within curly brackets {}. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 10 Chapter 3: XSCT Commands Target Connection Management Use these commands to connect to or disconnect from hw_server and list or select active targets. The following is a list of connections commands: • • • • • connect disconnect targets gdbremote connect gdbremote disconnect connect Connect to hw_server/TCF agent Syntax connect [options] Allows users to connect to a server, list connections or switch between connections. Options Option -host Description Name/IP address of the host machine -port TCP port number -url URL description of hw_server/TCF agent -list List open connections -set Set active connection -new Create a new connection, even one exist to the same url -xvc-url Open Xilinx Virtual Cable connection Returns The return value depends on the options used. -port, -host, -url, -new: of the new connection or error if the connection fails Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 11 Chapter 3: XSCT Commands -list: list of open channels or nothing when there are no open channels -set: nothing Example(s) connect -host localhost -port 3121 Connect to hw_server/TCF agent on host localhost and port 3121 connect -url tcp:localhost:3121 Identical to previous example. disconnect Disconnect from hw_server/TCF agent. Syntax disconnect Disconnect from active channel. disconnect Disconnect from specified channel. Returns Nothing, if the connection is closed. Error string, if invalid channel-id is specified. targets List targets or switch between targets. Syntax targets [options] List available targets. targets Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 12 Chapter 3: XSCT Commands Select as active target. Options Option -regexp Description Set current target to entry single entry in list. This is useful in comibination with -filter option. An error will be generate if list is empty or contains more than one entry. Use regexp for filter matching -nocase Use case insensitive filter matching -filter Specify filter expression to control which targets are included in list based on its properties. Filter expressions are similar to Tcl expr syntax. Target properties are references by name, while Tcl variables are accessed using the $ syntax, string must be quoted. Operators ==, !=, <=, >=, <, >, && and || are supported as well as (). There operators behave like Tcl expr operators. String matching operator =~ and !~ match lhs string with rhs pattern using either regexp or string match. Returns a Tcl list of dict's containing target properties. -set -targetproperties -index Include targets based on jtag scan chain position. This is identical to specifying -filter {jtag_device_index== }. -timeout Poll until the targets specified by filter option are found on the scan chain, or until timeout. This option is valid only with filter option. The timeout value is in seconds. Default timeout is 3 seconds Returns The return value depends on the options used. : Targets list when no options are used. -filter: Filtered targets list. -target-properties: Tcl list consisting of target properties. An error is returned when target selection fails. Example(s) targets List all targets. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 13 Chapter 3: XSCT Commands targets -filter {name =~ "ARM*#1"} List targets with name starting with "ARM" and ending with "#1". targets 2 Set target with id 2 as the current target. targets -set -filter {name =~ "ARM*#1"} Set current target to target with name starting with "ARM" and ending with "#1". targets -set -filter {name =~ "MicroBlaze*"} -index 0 Set current target to target with name starting with "MicroBlaze" and which is on 1st JTAG device. gdbremote connect Connect to GDB remote server. Syntax gdbremote connect [options] server Connect to a GDB remote server, for example, qemu. A special client named tcfgdbclient is used to connect to remote GDB server. Options Option -architecture Description Specify default architecture is remote server does not provide it. Returns Nothing, if the connection is successful. Error string, if the connection failed. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 14 Chapter 3: XSCT Commands gdbremote disconnect Disconnect from GDB remote server. Syntax gdbremote disconnect [target-id] Disconnect from GDB remote server, for example, qemu. Returns Nothing, if the connection is close. Error string, if there is no active connection. Target Registers These commands can be used to read and write to the target registers The following is a list of registers commands: • rrd • rwr rrd Read register for active target. Syntax rrd [options] [reg] Read registers or register definitions. For a processor core target, processor core register can be read. For a target representing a group of processor cores, system registers or IOU registers can be read. Options Option -defs Description Read register definitions instead of values Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 15 Chapter 3: XSCT Commands Option -no-bits Description Does not show bit fields along with register values. By default, bit fields are shown, when available Returns Register names and values, or register definitions if successful. Error string, if the registers cannot be read or if an invalid register is specified. Example(s) rrd Read top level registers or groups. rrd r0 Read register r0. rrd usr r8 Read register r8 in group usr. rwr Write to register Syntax rwr Write the to active target register specified by For a processor core target, processor core register can be written to. For a target representing a group of processor cores, system registers or IOU registers can be written. Returns Nothing, if successful. Error string, if an invalid register is specified or the register cannot be written. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 16 Chapter 3: XSCT Commands Example(s) rwr r8 0x0 Write 0x0 to register r8. rwr usr r8 0x0 Write 0x0 to register r8 in group usr. Program Execution These commands can be used for program execution, target state, and disassembly. The following is a list of running commands: • • • • • • • • • • • • • • state stop con stp nxt stpi nxti stpout dis print locals backtrace profile mbprofile state Display the current state of the target. Syntax state Return the current execution state of target. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 17 Chapter 3: XSCT Commands stop Stop active target. Syntax stop Suspend execution of active target. Returns Nothing, if the target is suspended. Error string, if the target is already stopped or cannot be stopped. An information message is printed on the console when the target is suspended. con Resume active target. Syntax con [options] Resume execution of active target. Options Option -addr Description Resume execution from address specified by . -block Block until the target stops or a timeout is reached. -timeout Timeout value in seconds. Returns Nothing, if the target is resumed. Error string, if the target is already running or cannot be resumed or does not halt within timeout, after being resumed. An information message is printed on the console when the target is resumed. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 18 Chapter 3: XSCT Commands Example(s) con -addr 0x100000 Resume execution of the active target from address 0x100000. con -block Resume execution of the active target and wait until the target stops. con -block -timeout 5 Resume execution of the active target and wait until the target stops or until the 5 second timeout is reached. stp Step into a line of source code. Syntax stp [count] Resume execution of the active target until control reaches instruction that belongs to different line of source code. If a function is called, stop at first line of the function code. Error is returned if line number information not available. If is greater than 1, repeat times. Default value of count is 1. Returns Nothing, if the target has single stepped. Error string, if the target is already running or cannot be resumed. An information message is printed on the console when the target stops at the next address. nxt Step over a line of source code. Syntax nxt [count] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 19 Chapter 3: XSCT Commands Resume execution of the active target until control reaches instruction that belongs to a different line of source code, but runs any functions called at full speed. Error is returned if line number information not available. If is greater than 1, repeat times. Default value of count is 1. Returns Nothing, if the target has stepped to the next source line. Error string, if the target is already running or cannot be resumed. An information message is printed on the console when the target stops at the next address. stpi Execute a machine instruction. Syntax stpi [count] Execute a single machine instruction. If instruction is function call, stop at first instruction of the function code If is greater than 1, repeat times. Default value of count is 1. Returns Nothing, if the target has single stepped. Error if the target is already running or cannot be resumed. An information message is printed on the console when the target stops at the next address. nxti Step over a machine instruction. Syntax nxti [count] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 20 Chapter 3: XSCT Commands Step over a single machine instruction. If instruction is function call, execution continues until control returns from the function. If is greater than 1, repeat times. Default value of count is 1. Returns Nothing, if the target has stepped to the next address. Error string, if the target is already running or cannot be resumed. An information message is printed on the console when the target stops at the next address. stpout Step out from current function. Syntax stpout [count] Resume execution of current target until control returns from current function. If is greater than 1, repeat times. Default value of count is 1. Returns Nothing, if the target has stepped out of the current function. Error if the target is already running or cannot be resumed. An information message is printed on the console when the target stops at the next address. dis Disassemble instructions. Syntax dis [num] Disassemble instructions at address specified by The keyword "pc" can be used to disassemble instructions at current PC default value for is 1. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 21 Chapter 3: XSCT Commands Returns Disassembled instructions if successful. Error string, if the target instructions cannot be read. Example(s) dis Disassemble an instruction at the current PC value dis pc 2 Disassemble two instructions at the current PC value dis 0x0 2 Disassemble two instructions at address 0x0 print Get or set the value of an expression. Syntax print [options] [expression] Get or set the value of an expression specified by . The can include constants, local/global variables, CPU registers, or any operator, but preprocessor macros defined through #define are not supported. CPU registers can be specified in the format {$r1}, where r1 is the register name. Elements of a complex data types like a structure can be accessed through '.' operator. For example, var1.int_type refers to int_type element in var1 struct. Array elements can be accessed through their indices. For example, array1[0] refers to the element at index 0 in array1. Options Option Description -add Add the to auto expression list. The values or definitions of the expressions in auto expression list are displayed when expression name is not specified. Frequently used expressions should be added to the auto expression list. -defs Return the expression definitions like address, type, size and RW flags. Not all definitions are available for all the expressions. [expression] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 22 Chapter 3: XSCT Commands Option Description For example, address is available only for variables and not when the expression includes an operator. -dict Return the result in Tcl dict format, with variable names as dict keys and variable values as dict values. For complex data like [expression] structures, names are in the form of parent.child. -remove Remove the expression from auto expression list. Only expressions previously added to the list through -add option [expression] can be removed. When the expression name is not specified, all the expressions in the auto expression list are removed. -set Set the value of a variable. It is not possible to set the value of an expression which includes constants or operators. Returns The return value depends on the options used. • or -add: Expression value(s) • -defs: Expression definition(s) • -remove or -set: Nothing • Error string, if expression value cannot be read or set. Example(s) print Int_Glob Return the value of variable Int_Glob. print -a Microseconds Add the variable Microseconds to auto expression list and return its value. print -a Int_Glob*2 + 1 Add the expression (Int_Glob*2 + 1) to auto expression list and return its value. print tmp_var.var1.int_type Return the value of int_type element in var1 struct, where var1 is a member of tmp_var struct. print tmp_var.var1.array1[0] Return the value of the element at index 0 in array array1. array1 is a member of var1 struct, which is in turn a member of tmp_var struct. print Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 23 Chapter 3: XSCT Commands Return the values of all the expressions in auto expression list. print -defs Return the definitions of all the expressions in auto expression list. print -set Int_Glob 23 Set the value of the variable Int_Glob to 23. print -remove Microseconds Remove the expression Microseconds from auto expression list. print {r1} Return the value of CPU register r1. locals Get or set the value of a local variable. Syntax locals [options] [variable-name [variable-value]] Get or set the value of a variable specified by . When variable name and value are not specified, values of all the local variables are returned. Elements of a complex data types like a structure can be accessed through '.' operator. For example, var1.int_type refers to int_type element in var1 struct. Array elements can be accessed through their indices. For example, array1[0] refers to the element at index 0 in array1. Options Option -defs -dict [expression] Description Return the variable definitions like address, type, size and RW flags. Return the result in Tcl dict format, with variable names as dict keys and variable values as dict values. For complex data like structures, names are in the form of parent.child. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 24 Chapter 3: XSCT Commands Returns The return value depends on the options used. • : Variable value(s) • -defs: Variable definition(s) • Nothing, when variable value is set. Error string, if variable value cannot be read or set. Example(s) locals Int_Loc Return the value of the local variable Int_Loc. locals Return the values of all the local variables in the current stack frame. locals -defs Return definitions of all the local variables in the current stack frame. locals Int_Loc 23 Set the value of the local variable Int_Loc to 23. locals tmp_var.var1.int_type Return the value of int_type element in var1 struct, where var1 is a member of tmp_var struct. locals tmp_var.var1.array1[0] Return the value of the element at index 0 in array array1. array1 is a member of var1 struct, which is in turn a member of tmp_var struct. backtrace Stack back trace. Syntax backtrace Return stack trace for current target. Target must be stopped. Use debug information for best result. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 25 Chapter 3: XSCT Commands Returns Stack Trace, if successful. Error string, if Stack Trace cannot be read from the target. profile Configure and run the GNU profiler. Syntax profile [options] Configure and run the GNU profiler. The profiling needs to enabled while building bsp and application to be profiled. Options Option -freq -scratchaddr -out Description Sampling frequency. Scratch memory for storing the profiling related data. It needs to be assigned carefully, as it should not overlap with the program sections. Name of the output file for writing the profiling data. This option also runs the profiler and collects the data. If file name is not specified, profiling data is written to gmon.out Returns Depends on options used. • -scratchaddr, -freq: Returns nothing on successful configuration. Error string, in case of error. • -out: Returns nothing, and generates a file. Error string, in case of error. Example(s) profile -freq 10000 -scratchaddr 0 Configure the profiler with a sampling frequency of 10000 and scratch memory at 0x0. profile -out testgmon.out Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 26 Chapter 3: XSCT Commands Output the profile data in testgmon.out. mbprofile Configure and run the MB profiler. Syntax mbprofile [options] Configure and run the MB profiler, a non-intrusive profiler for profiling the application running on MB. The output file is generated in gmon.out format. The results can be viewed using gprof editor. In case of cycle count, an annotated disassembly file is also generated clearly marking time taken for execution of instructions. Options Option -low Description Low address of the profiling address range. -high High address of the profiling address range. -freq Microblaze clock frequency. Default is 100MHz. -count-instr -start Count no. of executed instructions. By default no. of clock cycles of executed instructions are counted. Cumulative profiling. Profiling without clearing the profiling buffers. Enable and start profiling. -stop Disable/stop profiling. -out Output profiling data to file. Name of the output file for writing the profiling data. If file name is not specified, profiling data is written to gmon.out. -cumulate Returns Depends on options used. • -low, -high, -freq, -count-instr, -start, -cumulate: Returns nothing on successful configuration. Error string, in case of error. • -stop: Returns nothing, and generates a file. Error string, in case of error. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 27 Chapter 3: XSCT Commands Example(s) mbprofile -low 0x0 -high 0x3FFF Configure the mb-profiler with address range 0x0 to 0x3FFF for profiling to count the clock cycles of executed instructions. mbprofile -start Enable and start profiling. mbprofile -stop -out testgmon.out Output the profile data in testgmon.out mbprofile -count-instr Configure the mb-profiler to profile for entire program address range to count no. of instructions executed. Target Memory These commands can be used to Read and Write to the target memory space. The following is a list of memory commands: • • • • mrd mwr osa memmap mrd Memory read. Syntax mrd [options] [num] Read words from the active target's memory address specified by . Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 28 Chapter 3: XSCT Commands Options Option -bin Description Overwrite access protection. By default accesses to reserved and invalid address ranges are blocked. can be one of the values below: b = Bytes accesses h = Half-word accesses w = Word accesses Default access size is w Address will be aligned to access-size before reading memory. Return a Tcl list of values, instead of displaying the result on console. Return data read from the target in binary format. -file Write binary data read from the target to . -force -size -value Access specified memory space instead default memory space of current target. For ARM DAP targets, address spaces DPR, APR and AP can be used to access DP Registers, AP Registers and MEM-AP addresses, respectively. For backwards compatibility -arm-dap and -arm-ap options can be used as shorthand for "-address-space APR" and "-address-space AP ", respectively. The APR address range is 0x0 - 0xfffc, where the higher 8 bits select an AP and lower 8 bits are the register address for that AP. -unaligned-access Memory address is not aligned to access size, before performing a read operation. Support for unaligned accesses is target architecture dependent. If this option is not specified, addresses are automatically aligned to access size. -address-space Note(s) • Select a APU target to access ARM DAP and MEM-AP address space. Returns Memory addresses and data in requested format, if successful. Error string, if the target memory cannot be read. Example(s) mrd 0x0 Read a word at 0x0. mrd 0x0 10 Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 29 Chapter 3: XSCT Commands Read 10 words at 0x0. mrd -value 0x0 10 Read 10 words at 0x0 and return a Tcl list of values. mrd -size b 0x1 3 Read 3 bytes at address 0x1. mrd -size h 0x2 2 Read 2 half-words at address 0x2. mrd -bin -file mem.bin 0 100 Read 100 words at address 0x0 and write the binary data to mem.bin. mrd -address-space APR 0x100 Read APB-AP CSW on Zynq The higher 8 bits (0x1) select the APB-AP and lower 8 bits (0x0) is the address of CSW. mrd -address-space APR 0x04 Read AHB-AP TAR on Zynq The higher 8 bits (0x0) select the AHB-AP and lower 8 bits (0x4) is the address of TAR. mrd -address-space AP1 0x80090088 Read address 0x80090088 on DAP APB-AP 0x80090088 corresponds to DBGDSCR register of Cortex-A9#0, on Zynq AP 1 selects the APB-AP. mrd -address-space AP0 0xe000d000 Read address 0xe000d000 on DAP AHB-AP 0xe000d000 corresponds to QSPI device on Zynq AP 0 selects the AHB-AP. mwr Memory write. Syntax mwr [options] [num] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 30 Chapter 3: XSCT Commands Write words from list of to active target memory address specified by . If words is not specified, all the from the list are written sequentially from the address specifed by If is greater than the size of the list, the last word in the list is filled at the remaining address locations. mwr [options] -bin -file [num] Read values from a binary file and write to active target memory address specified by . If words is not specified, all the data from the file is written sequentially from the address specifed by . Options Option Description -force Overwrite access protection. By default accesses to reserved and invalid address ranges are blocked. -size can be one of the values below: b = Bytes size> accesses h = Half-word accesses w = Word accesses Default access size is w Address will be aligned to access-size before writing to memory. -bin Read binary data from a file and write it to target address space. -file File from which binary data is read to write to target address space. -address-space Access specified memory space instead default memory space of current target. For ARM DAP targets, address spaces DPR, APR and AP can be used to access DP Registers, AP Registers and MEM-AP addresses, respectively. For backwards compatibility -arm-dap and -arm-ap options can be used as shorthand for "-address-space APR" and "-address-space AP ", respectively. The APR address range is 0x0 - 0xfffc, where the higher 8 bits select an AP and lower 8 bits are the register address for that AP. -unalignedMemory address is not aligned to access size, before performing a write operation. Support for unaligned accesses is accesses target architecture dependent. If this option is not specified, addresses are automatically aligned to access size. Note(s) • Select a APU target to access ARM DAP and MEM-AP address space. Returns Nothing, if successful. Error string, if the target memory cannot be written. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 31 Chapter 3: XSCT Commands Example(s) mwr 0x0 0x1234 Write 0x1234 to address 0x0. mwr 0x0 {0x12 0x23 0x34 0x45} Write 4 words from the list of values to address 0x0. mwr 0x0 {0x12 0x23 0x34 0x45} 10 Write 4 words from the list of values to address 0x0 and fill the last word from the list at remaining 6 address locations. mwr -size b 0x1 {0x1 0x2 0x3} 3 write 3 bytes from the list at address 0x1. mwr -size h 0x2 {0x1234 0x5678} 2 write 2 half-words from the list at address 0x2. mwr -bin -file mem.bin 0 100 Read 100 words from binary file mem.bin and write the data at target address 0x0. mwr -arm-dap 0x100 0x80000042 Write 0x80000042 to APB-AP CSW on Zynq The higher 8 bits (0x1) select the APB-AP and lower 8 bits (0x0) is the address of CSW. mwr -arm-dap 0x04 0xf8000120 Write 0xf8000120 to AHB-AP TAR on Zynq The higher 8 bits (0x0) select the AHB-AP and lower 8 bits (0x4) is the address of TAR. mwr -arm-ap 1 0x80090088 0x03186003 Write 0x03186003 to address 0x80090088 on DAP APB-AP 0x80090088 corresponds to DBGDSCR register of Cortex-A9#0, on Zynq AP 1 selects the APB-AP. mwr -arm-ap 0 0xe000d000 0x80020001 Write 0x80020001 to address 0xe000d000 on DAP AHB-AP 0xe000d000 corresponds to QSPI device on Zynq AP 0 selects the AHB-AP. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 32 Chapter 3: XSCT Commands osa Configure OS awareness for a symbol file. Syntax osa -file [options] Configure OS awareness for the symbol file specified. If no symbol file is specifed and only one symbol file exists in target's memory map, then that symbol file is used. If no symbol file is specifed and multiple symbol files exist in target's memory map, then an error is thrown. Options Option -disable -fast-exec -fast-step Description Disable OS awareness for a symbol file. If this option is not specified, OS awareness is enabled. Enable fast process start. New processes will not be tracked for debug and are not visible in the debug targets view. Enable fast stepping. Only the current process will be re-synced after stepping. All other processes will not be re-synced when this flag is turned on. Note(s) • fast-exec and fast-step options are not valid with disable option. Returns Nothing, if OSA is configured successfully. Error, if ambiguous options are specified. Example(s) osa -file -fast-step -fast-exec Enable OSA for and turn on fast-exec and fast-step modes. osa -disable -file Disable OSA for . Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 33 Chapter 3: XSCT Commands memmap Modify memory map. Syntax memmap Add/remove a memory map entry for the active target. Options Option -addr Description Address of the memory region that should be added/removed from the target's memory map. -size Size of the memory region. -flags Protection flags for the memory region. can be a bitwise OR of the values below: 0x1 = Read access is allowed 0x2 = Write access is allowed 0x4 = Instruction fetch access is allowed Default value of is 0x3 (Read/Write Access). List the memory regions added to the active target's memory map. Specify whether the memory region should be removed from the target's memory map. Relocate the address map of the program sections to . This option should be used when the code is self-relocating, so that the debugger can find the debug symbol information for the code. is the relative address, to which all the program sections are relocated. Enable OS awareness for the symbol file. Fast process start and fast stepping options are turned off by default. These options can be enabled using the osa command. See "help osa" for more details. Specify advanced memory map properties. -list -clear -relocatesection-map -osa -properties -meta-data Specify meta-data of advanced memory map properties. Note(s) • Only the memory regions previously added through memmap command can be removed. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 34 Chapter 3: XSCT Commands Returns Nothing, while setting the memory map, or list of memory maps when -list option is used. Example(s) memmap -addr 0xfc000000 -size 0x1000 -flags 3 Add the memory region 0xfc000000 - 0xfc000fff to target's memory map Read/Write accesses are allowed to this region. memmap -addr 0xfc000000 -clear Remove the previously added memory region at 0xfc000000 from target's memory map. Target Download FPGA/BINARY These commands can be used to download elf/binary files to the target or configure FPGA. The following is a list of download commands: • dow • verify • fpga dow Download ELF and binary file to target. Syntax dow [options] Download ELF file to active target. dow -data Download binary file to active target address specified by . Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 35 Chapter 3: XSCT Commands Options Option -clear -keepsym -force -relocatesection-map Description Clear uninitialized data (bss). Keep previously downloaded elfs in the list of symbol files. Default behavior is to clear the old symbol files while downloading an elf. Overwrite access protection. By default accesses to reserved and invalid address ranges are blocked. Relocate the address map of the program sections to . This option should be used when the code is self-relocating, so that the debugger can find debug symbol information for the code. is the relative address, to which all the program sections are relocated. Returns Nothing. verify Verify if ELF/binary file is downloaded correctly to target. Syntax verify [options] Verify if the ELF file is downloaded correctly to active target. verify -data Verify if the binary file is downloaded correctly to active target address specified by . Options Option -force Description Overwrite access protection. By default accesses to reserved and invalid address ranges are blocked. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 36 Chapter 3: XSCT Commands Returns Nothing, if successful. Error string, if the memory address cannot be accessed or if there is a mismatch. fpga Configure FPGA. Syntax fpga Configure FPGA with given bitstream. fpga [options] Configure FPGA with bitstream specified options, or read FPGA state. Options Option Description -file -state Configure FPGA without first clearing current configuration. This options should be used while configuring partial bitstreams created before 2014.3 or any partial bitstreams in binary format. Return whether the FPGA is configured. -config-status Return configuration status. -ir-status Return IR capture status. -boot-status Return boot history status. -timer-status Return watchdog timer status. -cor0-status Return configuration option 0 status. -cor1-status Return configuration option 1 status. -wbstar-status Return warm boot start address status. -partial Note(s) • If no target is selected or if the current target is not a supported FPGA device, and only one supported FPGA device is found in the targets list, then this device will be configured. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 37 Chapter 3: XSCT Commands Returns Depends on options used. -file, -partial: Nothing, if fpga is configured, or an error if the configuration failed. One of the other options Configutation value. Target Reset These commands can be used to reset the target. The following is a list of reset commands: • rst rst Target reset. Syntax rst [options] Reset the active target. Options Option -processor -cores -system -srst Description Reset the active processor target. Reset the active processor group. This reset type is supported only on Zynq. A processor group is defined as a set of processors and on-chip peripherals like OCM. Reset the active System. Generate system reset for active target. With JTAG this is done by generating a pulse on the SRST pin on the JTAG cable assocated with the active target. Returns Nothing, if reset if successful. Error string, if reset is unsupported. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 38 Chapter 3: XSCT Commands Target Breakpoints/Watchpoints These commands can be used to add, remove, enable, disable or list Breakpoints/ Watchpoints. Xilinx SDK supports Breakpoints/Watchpoints at address and source line. The following is a list of breakpoints commands: • • • • • • bpadd bpremove bpenable bpdisable bplist bpstatus bpadd Set a Breakpoint/Watchpoint. Syntax bpadd Set a software or hardware breakpoint at address, function or : , or set a read/write watchpoint, or set a cross-trigger breakpoint. Options Option -addr -file -line Description Specify the address at which the Breakpoint should be set. Specify the in which the Breakpoint should be set. Specify the within the file, where Breakpoint should be set. Specify the Breakpoint type can be one of the values below: auto = Auto - Breakpoint type is chosen by hw_server/TCF agent. This is the default type hw = Hardware Breakpoint sw = Software Breakpoint. -mode Specify the access mode that will trigger the breakpoint. can be a bitwise OR of the values below: 0x1 = Triggered by a read from the breakpoint location 0x2 = -type Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 39 Chapter 3: XSCT Commands Option Description Triggered by a write to the breakpoint location 0x4 = Triggered by an instruction execution at the breakpoint location This is the default for Line and Address breakpoints 0x8 = Triggered by a data change (not an explicit write) at the breakpoint location. -enable Specify initial enablement state of breakpoint. When is 0 the breakpoint is disabled, otherwise the breakpoint is enabled. The default is enabled. -ct-input Specify input and output cross triggers.
is a list of -ct-output
numbers identifying the cross trigger pin. For Zynq 0-7 is CTI for core 0, 8-15 is CTI for core 1, 16-23 is CTI ETB and TPIU, and 24-31 is CTI for FTM. -properties Specify advanced breakpoint properties.
-meta-data Specify meta-data of advanced breakpoint properties. -target-id Specify a target id for which the breakpoint should be set. A breakpoint can be set for all the targets by specifying the as "all". If this option is not used, then the breakpoint is set for the active target selected through targets command. If there is no active target, then the breakpoint is set for all targets. Note(s) • Breakpoints can be set in XSDB before connecting to hw_server/TCF agent. If there is an active target when a Breakpoint is set, the Breakpoint will be enabled only for that active target. If there is no active target, the Breakpoint will be enabled for all the targets. target-id option can be used to set a breakpoint for a specific target, or all targets. An address breakpoint or a file:line breakpoint can also be set without the options -addr, -file or -line. For address breakpoints, specify the address as an argument, after all other options. For file:line breakpoints, specify the file name and line number in the format : , as an argument, after all other options. Returns Breakpoint id or an error if invalid target id is specified. Example(s) bpadd -addr 0x100000 Set a Breakpoint at address 0x100000 Breakpoint type is chosen by hw_server/TCF agent bpadd -addr &main Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 40 Chapter 3: XSCT Commands Set a function Breakpoint at main Breakpoint type is chosen by hw_server/TCF agent bpadd -file test.c -line 23 -type hw Set a Hardware Breakpoint at test.c:23 bpadd -target-id all 0x100 Set a breakpoint for all targets, at address 0x100 bpadd -target-id 2 test.c:23 Set a breakpoint for target 2, at line 23 in test.c bpadd -addr &fooVar -type hw -mode 0x3 Set a Read_Write Watchpoint on variable fooVar bpadd -ct-input 0 -ct-output 8 Set a cross trigger to stop Zynq core 1 when core 0 stops. bpremove Remove Breakpoints/Watchpoints. Syntax bpremove | -all Remove the Breakpoints/Watchpoints specified by or remove all the breakpoints when \"-all\" option is used. Options Option -all Description Remove all breakpoints. Returns Nothing, if the breakpoint is removed successfully. Error string, if the breakpoint specified by is not set. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 41 Chapter 3: XSCT Commands Example(s) bpremove 0 Remove Breakpoint 0. bpremove 1 2 Remove Breakpoints 1 and 2. bpremove -all Remove all Breakpoints. bpenable Enable Breakpoints/Watchpoints. Syntax bpenable | -all Enable the Breakpoints/Watchpoints specified by or enable all the breakpoints when \"-all\" option is used. Options Option -all Description Enable all breakpoints. Returns Nothing, if the breakpoint is enabled successfully. Error string, if the breakpoint specified by is not set. Example(s) bpenable 0 Enable Breakpoint 0. bpenable 1 2 Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 42 Chapter 3: XSCT Commands Enable Breakpoints 1 and 2. bpenable -all Enable all Breakpoints. bpdisable Disable Breakpoints/Watchpoints. Syntax bpdisable | -all Disable the Breakpoints/Watchpoints specified by or disable all the breakpoints when -all option is used. Options Option -all Description Disable all breakpoints. Returns Nothing, if the breakpoint is disabled successfully. Error string, if the breakpoint specified by is not set. Example(s) bpdisable 0 Disable Breakpoint 0. bpdisable 1 2 Disable Breakpoints 1 and 2. bpdisable -all Disable all Breakpoints. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 43 Chapter 3: XSCT Commands bplist List Breakpoints/Watchpoints. Syntax bplist List all the Beakpoints/Watchpoints along with brief status for each Breakpoint and the target on which it is set. Returns List of breakpoints. bpstatus Print Breakpoint/Watchpoint status. Syntax bpstatus Print the status of a Breakpoint/Watchpoint specified by . Status includes the target information for which the Breakpoint is active and also Breakpoint hitcount or error message. Options None Returns Breakpoint status, if the breakpoint exists. Error string, if the breakpoint specified by is not set. Jtag UART These commands can be used to connect to JTAG UART (MDM or ARM DCC). Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 44 Chapter 3: XSCT Commands The following is a list of streams commands: • jtagterminal • readjtaguart jtagterminal Start/Stop Jtag based hyper-terminal. Syntax jtagterminal [options] Start/Stop a Jtag based hyper-terminal to communicate with ARM DCC or MDM UART interface. Options Option -start Description Start the Jtag Uart terminal. This is the default option. -stop Stop the Jtag Uart terminal. -socket Return the socket port number, instead of starting the terminal. External terminal programs can be used to connect to this port. Note(s) • Select a MDM or ARM processor target before runnning this command. Returns Socket port number. readjtaguart Start/Stop reading from Jtag Uart. Syntax readjtaguart [options] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 45 Chapter 3: XSCT Commands Start/Stop reading from the ARM DCC or MDM Uart Tx interface. Jtag Uart output can be printed on stdout or redirected to a file. Options Option -start Description Start reading the Jtag Uart output. -stop Stop reading the Jtag Uart output. -handle Specify the file handle to which the data should be redirected. If no file handle is given, data is printed on stdout. Note(s) • Select a MDM or ARM processor target before runnning this command. • While running a script in non-interactive mode, output from Jtag uart may not be written to the log, until "readjtaguart -stop" is used. Returns Nothing, if successful. Error string, if data cannot be read from the Jtag Uart. Example(s) readjtaguart Start reading from the Jtag Uart and print the output on stdout set fp [open test.log w]; readjtaguart -start -handle $fp Start reading from the Jtag Uart and print the output to test.log. readjtaguart -stop Stop reading from the Jtag Uart. Miscellaneous The following is a list of miscellaneous commands: • • • • • loadhw unloadhw mdm_drwr mb_drwr mdm_drrd Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 46 Chapter 3: XSCT Commands • • • • • • • mb_drrd configparams version xsdbserver start xsdbserver stop xsdbserver disconnect xsdbserver version loadhw Load a Vivado HW design. Syntax loadhw [options] Load a Vivado HW design, and set the memory map for the current target. If the current target is a parent for a group of processors, memory map is set for all its child processors. If current target is a processor, memory map is set for all the child processors of it's parent. This command returns the HW design object. Options Option -hw Description HW design file. -list Return a list of open designs for the targets. Returns Design object, if the HW design is loaded and memory map is set successfully. Error string, if the HW design cannot be opened. Example(s) targets -filter {name =~ "APU"}; loadhw design.hdf Load the HW design named design.hdf and set memory map for all the child processors of APU target. targets -filter {name =~ "xc7z045"}; loadhw design.hdf Load the HW design named design.hdf and set memory map for all the child processors for which xc7z045 is the parent. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 47 Chapter 3: XSCT Commands unloadhw Unload a Vivado HW design. Syntax unloadhw Close the Vivado HW design which was opened during loadhw command, and clear the memory map for the current target. If the current target is a parent for a group of processors, memory map is cleared for all its child processors. If the current target is a processor, memory map is cleared for all the child processors of it's parent. This command doesn't clear memory map explicitly set by users. Returns Nothing. mdm_drwr Write to MDM debug register. Syntax mdm_drwr [options] Write to MDM Debug Register. cmd is 8-bit MDM command to access a Debug Register. data is the register value and bitlen is the register width. Options Option -user Description Specify user bscan port number. Default is 2. Returns Nothing, if successful. Error string, if BSCAN port is invalid. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 48 Chapter 3: XSCT Commands Example(s) mdm_drwr 8 0x40 8 Write to MDM Break/Reset control register. mb_drwr Write to MicroBlaze debug register. Syntax mb_drwr [options] Write to MicroBlaze Debug Register available on MDM. cmd is 8-bit MDM command to access a Debug Register. data is the register value and bitlen is the register width. Options Option -user Description Specify user bscan port number. Default is 2. Returns Nothing, if successful. Error string, if BSCAN port is invalid. Example(s) mb_drwr 1 0x282 10 Write to MB control register. mdm_drrd Read from MDM debug register. Syntax mdm_drrd [options] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 49 Chapter 3: XSCT Commands Read a MDM debug register. cmd is 8-bit MDM command to access a Debug Register and bitlen is the register width. Returns hex register value. Options Option Description Specify user bscan port number. Default is 2. -user Returns Register value, if successful. Error string, if BSCAN port is invalid. Example(s) mdm_drrd 0 32 Read XMDC ID register. mb_drrd Read from MicroBlaze debug register. Syntax mb_drrd [options] Read a MicroBlaze debug register available on MDM. Returns hex register value Options Option -user Description Specify user bscan port number. Default is 2. cmd 8-bit MDM command to access a debug register. bitlen Register width Returns Register value, if successful. Error string, if BSCAN port is invalid. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 50 Chapter 3: XSCT Commands Example(s) mb_drrd 3 28 Read MB status register. configparams List, get or set configuration parameters. Syntax configparams List name and description for available configuration parameters. Configuration parameters can be global or connection specific, therefore the list of available configuration parameters and their value may change depending on current connection. configparams Get configuration parameter value(s). configparams Set configuration parameter value. Options Option -all -context [context] Description Include values for all contexts in result. Specify context of value to get or set. The default context is "" which represet the global default. Not all options support context specific values. Returns Depends on the arguments specified. • : List of paramters and description of each parameter • : Parameter value or error, if unsupported paramter is specified • : Nothing if the value is set, or error, if unsupported paramter is specified Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 51 Chapter 3: XSCT Commands Example(s) configparams force-mem-accesses 1 Disable access protection for dow, mrd, and mwr commands. configparams sdk-launch-timeout 100 Change the SDK launch timeout to 100 second, used for running SDK batch mode commands. version Get SDK or TCF server version. Syntax version [options] Get SDK or TCF server version. When no option is specified, SDK build version is returned. Options Option -server Description Get the TCF server build version, for the active connection. Returns SDK or TCF Server version, on success. Error string, if server verison is requested when there is no connection. xsdbserver start Start XSDB command server. Syntax xsdbserver start [options] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 52 Chapter 3: XSCT Commands Start XSDB command server listener. XSDB command server allows external processes to connect to XSDB to evaluate commands. The XSDB server reads commands from from the connected socket one line at the time. After evaluation a line is sent back starting with "okay " or "error " followed by the result or error as a backslash quoted string. Options Option -host -port Description Limits the network interface on which to listen for incoming connections. Specifies port to listen on. If this option is not specified or if the port is zero then a dynamically allocated port number is used. Returns Server details are disaplayed on the console if server is started. successfully, or error string, if a server has been already started. Example(s) xsdbserver start Start XSDB server listener using dynamically allocated port. xsdbserver start -host localhost -port 2000 Start XSDB server listener using port 2000 and only allow incoming connections on this host. xsdbserver stop Stop XSDB command server. Syntax xsdbserver stop Stop XSDB command server listener and disconnect connected client if any. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 53 Chapter 3: XSCT Commands Returns Nothing, if the server is closed successfully. Error string, if the server has not been started already. xsdbserver disconnect Disconnect active XSDB server connection. Syntax xsdbserver disconnect Disconnect current XSDB server connection. Returns Nothing, if the connection is closed. Error string, if there is no active connection. xsdbserver version Return XSDB command server version. Syntax xsdbserver version Return XSDB command server protocol version. Returns Server version if there is an active connection. Error string, if there is no active connection. JTAG Access The following is a list of jtag commands: • jtag targets • jtag sequence • jtag device_properties Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 54 Chapter 3: XSCT Commands • • • • • • jtag lock jtag unlock jtag claim jtag disclaim jtag frequency jtag servers jtag targets List JTAG targets or switch between JTAG targets. Syntax jtag targets List available JTAG targets. jtag targets Select as active JTAG target. Options Option -regexp Description Set current target to entry single entry in list. This is useful in comibination with -filter option. An error will be generate if list is empty or contains more than one entry. Use regexp for filter matching. -nocase Use case insensitive filter matching. -filter Specify filter expression to control which targets are included in list based on its properties. Filter expressions are similar to Tcl expr syntax. Target properties are references by name, while Tcl variables are accessed using the $ syntax, string must be quoted. Operators ==, !=, <=, >=, <, >, && and || are supported as well as (). There operators behave like Tcl expr operators. String matching operator =~ and !~ match lhs string with rhs pattern using either regexp or string match. Returns a Tcl list of dict's containing target properties. -set -targetproperties -open -close Open all targets in list. List can be shorted by specifying targetids and using filters. Close all targets in list. List can be shorted by specifying targetids and using filters. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 55 Chapter 3: XSCT Commands Returns The return value depends on the options used. • : Jtag targets list when no options are used • -filter: Filtered jtag targets list • -target-properties: Tcl list consisting of jtag target properties • An error is returned when jtag target selection fails. Example(s) jtag targets List all targets. jtag targets -filter {name == "arm_dap"} List targets with name "arm_dap". jtag targets 2 Set target with id 2 as the current target. jtag targets -set -filter {name =~ "arm*"} Set current target to target with name starting with "arm". jtag targets -set -filter {level == 0} List Jtag cables. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 56 Chapter 3: XSCT Commands jtag sequence Create JTAG sequence object. Syntax jtag sequence Create JTAG sequence object. The jtag sequence command creates a new sequence object. After creation the sequence is empty. The following sequence object commands are available: sequence state new-state [count] Move JTAG state machine to and then generate JTAG clocks. If is given and is not a looping state (RESET, IDLE, IRSHIFT, IRPAUSE, DRSHIFT or DRPAUSE) then state machine will move towards RESET state. sequence irshift [options] [bits [data]] Shift data in IRSHIFT state. sequence drshift [options] bits [data] Shift data in DRSHIFT state. Data is either given as the last argument or if -tdi option is given then data will be all zeros or all ones depending on the argument given to -tdi. The and arguments are not used for irshift when the -register option is specified. Option -register -tdi -binary -integer -bits -hex -capture -state Description Select instruction register by name. This option is only supported for irshift. TDI value to use for all clocks in SHIFT state. Format of is binary, for example data from a file or from binary format. Format of is an integer. The least significant bit of data is shifted first. Format of is a binary text string. The first bit in the string is shifted first. Format of is a hexadecimal text string. The least significant bit of the first byte in the string is shifted first. Cature TDO data during shift and return from sequence run command. State to enter after shift is complete. The default is RESET. sequence delay usec Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 57 Chapter 3: XSCT Commands Generate delay between sequence commands. No JTAG clocks will be generated during the delay. The delay is guaranteed to be at least microseconds, but can be longer for cables that do not support delays without generating JTAG clocks. sequence get_pin pin Get value of . Supported pins is cable specific. sequence set_pin pin value Set value of to . Supported pins is cable specific. sequence atomic enable Set or clear atomic sequences. This is useful to creating sequences that are guaranteed to run with precise timing or fail. Atomic sequences should be as short as possible to minimize the risk of failure. sequence run [options] Run JTAG operations in sequence for the currently selected jtag target. This command will return the result from shift commands using -capture option and from get_pin commands. Option -binary -integer -bits -hex -single Description Format return value(s) as binary. The first bit shifted out is the least significant bit in the first byte returned. Format return values(s) as integer. The first bit shifted out is the least significant bit of the integer. Format return value(s) as binary text string. The first bit shifted out is the first character in the string. Format return value(s) as hexadecimal text string. The first bit shifted out is the least significant bit of the first byte of the in the string. Combine all return values as a single piece of data. Without this option the return value is a list with one entry for every shift with -capture and every get_pin. sequence clear Remove all commands from sequence. sequence delete Delete sequence. Returns Jtag sequence object. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 58 Chapter 3: XSCT Commands Example(s) set seqname [jtag sequence] $seqname state RESET $seqname drshift -capture -tdi 0 256 set result [$seqname run] $seqname delete. jtag device_properties Get/set device properties. Syntax jtag device_properties idcode Get JTAG device properties associated with . jtag device_properties key value ... Set JTAG device properties. Returns Jtag device properties for the given idcode, or nothing, if the idcode is unknown. Example(s) jtag device_properties 0x4ba00477 Return Tcl dict containing device properties for idcode 0x4ba00477. jtag device_properties {idcode 0x4ba00477 mask 0xffffffff name dap irlen 4} Set device properties for idcode 0x4ba00477. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 59 Chapter 3: XSCT Commands jtag lock Lock JTAG scan chain. Syntax jtag lock [timeout] Lock JTAG scan chain containing current JTAG target. Wait for scan chain lock to be available and then lock it. If is specified the wait time is limited to milliseconds. The JTAG lock prevents other clients from performing any JTAG shifts or state changes on the scan chain. Other scan chains can be used in parallel. The jtag run_sequence command will ensure that all commands in the sequence are performed in order so the use of jtag lock is only needed when multiple jtag run_sequence commands needs to be done without interruption. Note(s) • A client should avoid locking more than one scan chain since this can cause deadlock. Returns Nothing. jtag unlock Unlock JTAG scan chain. Syntax jtag unlock Unlock JTAG scan chain containing current JTAG target. Returns Nothing. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 60 Chapter 3: XSCT Commands jtag claim Claim JTAG device. Syntax jtag claim Set claim mask for current JTAG device. This command will attept to set the claim mask for the current JTAG device. If any set bits in are already set in the claim mask then this command will return error "already claimed". The claim mask allow clients to negotiate control over JTAG devices. This is different from jtag lock in that 1) it is specific to a device in the scan chain, and 2) any clients can perform JTAG operations while the claim is in effect. Note(s) • Currently claim is used to disable the hw_server debugger from controlling microprocessors on ARM DAP devices and FPGA devices containing Microblaze processors. Returns Nothing. jtag disclaim Disclaim JTAG device. Syntax jtag disclaim Clear claim mask for current JTAG device. Returns Nothing. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 61 Chapter 3: XSCT Commands jtag frequency Get/set JTAG frequency. Syntax jtag frequency Get JTAG clock frequency for current scan chain. jtag frequency -list Get list of supported JTAG clock frequencies for current scan chain. jtag frequency frequency Set JTAG clock frequency for current scan chain. Returns Nothing, if Jtag frequency is successfully set. Current Jtag frequency, if no arguments are specified. Supported Jtag frequencies, if -list option is used. Error string, if invalid frequency is specified or frequency cannot be set. jtag skew Get/set JTAG skew. Syntax jtag skew Get JTAG clock skew for current scan chain. jtag skew Set JTAG clock skew for current scan chain. Note(s) • Clock skew property is not supported by some Jtag cables. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 62 Chapter 3: XSCT Commands Returns Current Jtag clock skew, if no arguments are specified, or if Jtag skew is successfully set. Error string, if invalid skew is specified or skew cannot be set. jtag servers List, open or close JTAG servers. Syntax jtag servers [options] List, open, and close JTAG servers. JTAG servers are use to implement support for different types of JTAG cables. An open JTAG server will enumberate or connect to available JTAG ports. Options Option -format Description List opened servers. This is the default if no other option is given. List format of supported server strings. -open Specifies server to open. -close Specifies server to close. -list Returns Depends on the options specified • , -list: List of open Jtag servers • -format: List of supported Jtag servers • -close: Nothing if the server is closed, or an error string, if invalid server is specified Example(s) jtag servers List opened servers and number of associated ports. jtag servers -open xilinx-xvc:localhost:10200 Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 63 Chapter 3: XSCT Commands Connect to XVC server on host localhost port 10200. jtag servers -close xilinx-xvc:localhost:10200 Close XVC server for host localhost port 10200. SVF Operations Serial Vector Format (SVF) is an industry standard file format that is used to describe JTAG chain operations in a compact, portable fashion. SVF files are portable because complicated vendor-specific programming algorithms can be conveyed by generic SVF instructions, requiring no special knowledge of the target device. XSCT provides commands that can directly generate SVF files for memory accesses, downloading elfs to memory, stop/start the core, reset the core etc. NOTE: This feature is currently available only for ARM® Cortex-A53 cores. The following is a list of svf commands: • • • • • • • svf config svf generate svf mwr svf dow svf stop svf con svf delay svf config Configure options for SVF file. Syntax svf config [options] Configure and generate SVF file. Supported only for Cortex#A53. Options Option -scan-chain Description List of idcode-irlength pairs. This can be obtained from xsdb command - jtag ta. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 64 Chapter 3: XSCT Commands Option -cpu-index
Description This is used to select device in the jtag scan chain. Select DAP. This is used to select A53 core Select 0 for A53#0, 1 for A53#1, 2 for A53#2, 3 for A53#3. -out Output SVF file. -delay Delay in ticks between AP writes. -linkdap Generate SVF for linking DAP to the jtag chain for Silicon versions 2.0 and above. -device-index Returns Nothing. Example(s) svf config -scan-chain {0x14738093 12 0x5ba00477 4} -device-index 1 -cpu-index 0 -out "test.svf" This creates a SVF file with name test.svf for core A53#0. svf generate Generate recorded SVF file. Syntax svf generate Generate SVF file in the path specified in the config command. Options None Returns If successful, this command returns nothing. Otherwise it returns an error. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 65 Chapter 3: XSCT Commands Example(s) svf generate svf mwr Record memory write to SVF file. Syntax svf mwr Write to the memory address specified by . Options None Returns Nothing Example(s) svf mwr 0xffff0000 0x14000000 svf dow Record elf download to SVF file. Syntax svf dow Record downloading of elf file to the memory. Options None Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 66 Chapter 3: XSCT Commands Returns Nothing Example(s) svf dow "fsbl.elf" svf stop Record stopping of core to SVF file. Syntax svf stop Record suspending execution of current target to SVF file. Options None Returns Nothing Example(s) svf stop svf con Record resuming of core to SVF file. Syntax svf con Record resuming the execution of active target to SVF file. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 67 Chapter 3: XSCT Commands Options None Returns Nothing Example(s) svf con svf delay Record delay in tcks to SVF file. Syntax svf delay Record delay in tcks to SVF file. Options None Returns Nothing Example(s) svf delay 1000 Delay of 1000 tcks is added to the SVF file. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 68 Chapter 3: XSCT Commands SDK Projects These commands support creation of hardware, BSP and application projects. You can also use the commands to manage repositories, set toolchain preferences, and configure, build and run applications. The following is a list of sdk commands: • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • openhw closehw openbsp closebsp updatemss getaddrmap getperipherals repo configbsp setlib removelib getlibs setdriver getdrivers setosversion getos regenbsp setws getws createhw updatehw changebsp createbsp createapp createlib projects importprojects importsources getprojects deleteprojects configapp toolchain Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 69 Chapter 3: XSCT Commands openhw Open a hardware design. Syntax openhw Open a hardware design exported from Vivado. HDF/XML file or the hardware project created using 'createhw' command can be passed as argument. Options None Returns If successful, this command returns nothing. Otherwise it returns an error. Example(s) openhw ZC702_hw_platform Open the hardware project ZC702_hw_platform. openhw /tmp/wrk/hw1/system.hdf Open the hardware project corresponding to the system.hdf. closehw Close a hardware design. Syntax closehw Close a hardware design that was opened using 'openhw' command. HDF/XML file or the hardware project created using 'createhw' command can be passed as argument.. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 70 Chapter 3: XSCT Commands Options None Returns If successful, this command returns nothing. Otherwise it returns an error. Example(s) closehw ZC702_hw_platform Close the hardware project ZC702_hw_platform. closehw /tmp/wrk/hw1/system.hdf Close the hardware project corresponding to the system.hdf. openbsp Open the BSP. Syntax openbsp Open the BSP from BSP project created using 'createbsp', or from the MSS file. Options None Returns If successful, this command returns nothing. Otherwise it returns an error. Example(s) openbsp hello_bsp Open the BSP project 'hello_bsp'. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 71 Chapter 3: XSCT Commands openbsp /tmp/wrk/hello_bsp/system.mss Open the bsp project corresponding to the system.mss. closebsp Close the BSP. Syntax closebsp Close the BSP project specified by or the BSP project corresponding to the MSS file specified by . Options None Returns If successful, this command returns nothing. Otherwise it returns an error. Example(s) closebsp hello_bsp Close the BSP project 'hello_bsp'. closebsp /tmp/wrk/hello_bsp/system.mss Close the BSP project corresponding to the system.mss. updatemss Update the mss file with the changes done to the BSP. Syntax updatemss [OPTIONS] Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 72 Chapter 3: XSCT Commands Update the mss file with changes done to the BSP.. Options Option -mss Description MSS file to be updated. Returns If successful, this command returns nothing. Otherwise it returns an error. Example(s) updatemss -mss system.mss Update system.mss file with the changes done to the BSP. getaddrmap Get the address ranges of IP connected to processor. Syntax getaddrmap Return the address ranges of all the IP connected to the processor in a tabular format, along with details like size and access flags of all IP. Options None Returns If successful, this command returns the output of IPs and ranges. Otherwise it returns an error. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 73 Chapter 3: XSCT Commands Example(s) getaddrmap hw1 ps7_cortexa9_0 Return the address map of peripherals connected to ps7_cortexa9_0. hw1 is the hw project, which is created using command 'createhw'. getaddrmap system.hdf ps7_cortexa9_0 Return the address map of peripherals connected to ps7_cortexa9_0. system.hdf is the hw specification file exported from Vivado. getperipherals Get a list of all peripherals in the HW design. Syntax getperipherals Return the list of all the peripherals in the hardware design, along with version and type. If [processor-instance] is specified, return only a list of slave peripherals connected to that processor. Options None Returns If successful, this command returns the list of peripherals. Otherwise it returns an error. Example(s) getperipherals system.hdf Return a list of peripherals in the hardware design. getperipherals system.hdf ps7_cortexa9_0 Return a list of peripherals connected to processor CortexA9#0 in the hardware design. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 74 Chapter 3: XSCT Commands repo Get, set, or modify software repositories. Syntax repo [OPTIONS] Get/set the software repositories path currently used. This command can be used to scan the repositories, to get the list of OS/libs/drivers/apps from repository. Options Option -set -get Description Set the repository path and load all the software cores available. Multiple repository paths can be specified as Tcl list. Get the repository path(s). -os Scan the repositories. Used this option to scan the repositories, when some changes are done. Return a list of all the OS from the repositories. -libs Return a list of all the libs from the repositories. -drivers Return a list of all the drivers from the repositories. -apps Return a list of all the applications from the repositories. -scan Returns Depends on the OPTIONS specified. • -scan, -set : Returns nothing. • -get: Returns the current repository path. • -os, -libs, -drivers, -apps: Returns the list of OS/libs/drivers/apps respectively. Example(s) repo -set Set the repository path to the path specified by . repo -os Return a list of OS from the repo. Xilinx Software Command-Line Tools (XSCT): Reference Guide UG1208 UG1208(v2017.2) (v2017.1)June April7,5,2017 2017 www.xilinx.com Send Feedback 75 Chapter 3: XSCT Commands repo -libs Return a list of libraries from the repo. configbsp Configure settings for BSP projects. Syntax configbsp [OPTIONS] [ [ ]] If