hw_server
的命令行选项
以下是
hw_server
命令行选项的列表。
重要提示
!
远程连接到
PC
上的
hw_server
时
,
请确保正确配置防火墙策略。请确保
hw_server.exe
有权监
听端口
3121
上的新套接字连接。
detect-ir-length:
禁用在扫描链发现期间对
IR
检测长度进行检测。
该选项用于启动
hw_server
并在其器件表中添加额外的器件。默认情况下
,
hw_server
启动
时显示预设列表
,
其中包含从
XICOM SQL jtag
主表编译输入的器件。可通过使用此
set
device-info-file
选项来覆盖或扩展这些设置。指定的文件为
.csv
文件
,
该文件会忽略以
“
#
”开头的行。
在
hw_server
启动时指定
.csv
文件的方式如下
:
hw_server -e "set device-info-file my_file.csv"
.cvs
文件格式如下
(
hw_server_device_info_file.csv
)
:
############################################################
# File: hw_server_device_info_file.csv
# Description:
# This is a sample jtag ID table. This file can be used to define
# additional devices to be detected by the hw_server application.
#
# In this file empty lines, lines with spaces, and lines that begin
# with the '#' character will be ignored.
#
# The format of this file is as follows:
#
# ROW 1: fields
# The standard JTAG id fields are "idcode,mask,irlen,name"
# ROW 2: field types
# For each field specified in ROW 1, the type is used to
# interpret the field data read per device. The types
# accepted are "i" for integer and "s" for string. If
# you use the standard fields on ROW 1 then you should
# use "i,i,i,s" in ROW 2 to set the fields idcode,mask
# irlength to integer and name as string
#
# To use this table you start hw_server with the following
# command line arguments:
#
# hw_server -e "set device-info-file <file>"
#
# Where <file> is replaced with this filename.
############################################################
idcode,mask,irlen,name
i,i,i,s
167784595,268435455,10,chipscope_soft_tap
device-info-file
设置要使用的默认器件文件
.csv
max-jtag-devices
增加在单一扫描链中可检测的器件的最大数量。默认值为
32
。
该选项用于启动
hw_server
并且单一扫描链中可检测的数量多于默认器件数量。此设置的默认值
为
32
。用户可增大该值以便延长
jtag
链。请注意
,
增大该数值会导致器件发现流程变慢
,
从而导
致电缆接入速度变慢。因此
,
如果用户要增大该值
,
此设置仅适用于含大量器件的系统。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set max-jtag-devices 64"
xdb-user-bscan
此项可设置将用于扫描
xsdb
核的
bscan
。
该选项用于启动
hw_server
并在其它
bscan
上扫描
xsdb
主核。默认情况下
,
hw_server
将扫
描用户
1
和
3 bscan
。通过该选项
,
您可启动
hw_server
并使其在其它
bscan
用户插槽中查找
bscan
。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set xsdb-user-bscan 1,2,3,4"
此参数的实参可用于指定参数列表。该列表将为逗号分隔列表
,
范围为
1-4
。列表指定的最小元素
数量为
1
,
最大数量为
4
。
mdm-detect-bscan-mask
此项可设置将用于扫描
mdm
核的
bscan
。
该选项用于启动
hw_server
并在其它
bscan
上扫描
MicroBlaze
主核。默认情况下
,
hw_server
将扫描用户
2 bscan
。通过该选项
,
用户可启动
hw_server
并使其在其它
bscan
用
户插槽上查找
MicroBlaze
。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set mdm-detect-bscan-mask 2"
位掩码适用于由
hw_server
发现的任意
FPGA
或
ACAP
。以下是一些常见位掩码设置示例
:
掩码值
BSCAN
扫描
0 none
1 User1
3 User1
、
User2
7 User1
、
User2
、
User3
f User1
、
User2
、
User3
、
User4
always-open-jtag
强制
hw_server
在启动时打开所有目标。
默认情况下
,
当
hw_server
启动时
,
不会对任何电缆进行初始化。发起首个连接时
,
将发现并打
开电缆。此发现周期耗时数秒至数分钟
,
因系统而异。完全初始化后
,
即可读取电缆并发现器件。
在某些情况下
,
需要先发现电缆并备用。例如
,
将
Linux
系统设置为开发板服务器时
,
最好始终初
始化电缆并准备好提供连接。对于此类情况
,
您可使用
always-open-jtag
选项来强制打开电
缆。
默认情况下
,
这是启动时的设置
(
无需传入任何实参
):
hw_server -e "set always-open-jtag 0"
要强制打开电缆
,
请传入以下实参
,
如下所示
:
hw_server -e "set always-open-jtag 1"
auto-open-servers
打开含特定参数的电缆服务器
,
用于打开
XVC
电缆。
该选项为调试选项
,
用于自动打开
XVC
线缆连接
,
并控制
hw_server
应检测的
USB
线类型。
auto-open-servers
参数的实参为由字段组成的逗号分隔列表。每个字段均为由子字段构成的冒号
分隔列表
,
其中首个子字段即为其类型
,
而其余子字段则因类型而异。对于
xilinx-xvc
类型
,
子字段为
host
和
port
。
auto-open-servers
的默认值为“
*
”
,
表示
hw_server
应检测它
可支持的所有电缆类型。需要参数的
Cables
类型
(
如
XVC
)
则不在“
*
”覆盖范围内。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set auto-open-servers xilinx-xvc:localhost:10200"
要打开
2
台服务器
,
应使用
:
hw_server -e "set auto-open-servers xilinx
xvc:localhost:10200,xilinx-xvc:localhost:10210"
要打开
2
台
XVC
服务器
,
除了所有基于
USB
的电缆外
,
还应使用
:
hw_server -e "set auto-open-servers *:xilinx
xvc:localhost:10200,xilinx-xvc:localhost:10210"
auto-open-ports
控制端口
(
链或扫描链
)
的自动打开。
该选项用于控制
JTAG
扫描链的自动打开。
auto-open-ports
参数的实参为布尔值
,
1
表示自
动打开所有已知
JTAG
扫描链
,
0
表示客户端将打开选定的
JTAG
扫描链。默认值为
1
。例如
,
当有
多个
JTAG
扫描链连接到单一主机并使用
hw_server
的不同实例来访问每个扫描链时
,
即可将该
值设置为
0
。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set auto-open-ports 0"
xvc-timeout
更改
XVC
超时值有助于调试
XVC
服务器。
该选项为调试选项
,
用于增大
XVC
传输事务终止所需的超时周期。
xvc-timeout
参数的实参为
以秒为单位的时间。值为
0
将禁用超时
,
即无限等待。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set xvc-timeout 100"
xvc-servers
启动
XVC
服务器以使用电缆。
该选项用于使
hw_server
启动
XVC
服务器以使用指定
JTAG
线缆。
xvc-servers
参数的实参为
由
XVC
服务器描述组成的逗号
(,)
分隔列表。每条
XVC
服务器描述均为冒号
(:)
分隔列表
,
其中包
含电缆标识、
XVC
服务器主机名或编号以及端口号。电缆标识为制造商名称和唯一标识
,
以斜杠
(/)
字符分隔。电缆标识可取自完整电缆标识中的一部分
,
主机名可为空。如果为空
,
则表示服务
器应监听所有网络接口上的传入连接。
请参阅
processor-debug-claim
以了解当
XVC
客户端与
XVC
服务器均为相同器件类型的调试
器并使用
XVC
锁定模式时
,
如何避免干扰。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set xvc-servers 210203356596A:localhost:3000"
请注意
,
您将仍需首先连接到此
hw_server
实例
,
然后才能初始化电缆接口。如不连接到电缆
,
您将看到如下消息
:
TCF 19:11:02.417: XVC open port failed: Cannot find
JTAG cable matching 210203A0314DA
要自动打开
XVC
线缆并锁定至
XVC
,
请添加
always-open-jtag
选项
,
如下所示
:
hw_server -e 'set xvc-servers 210203A0314DA:xcoatslab-9:3122' -e
'set always-open-jtag 1'
xvc-packet-len
更改
XVC
服务器的最大封装长度。
该选项用于控制使用
xvc-servers option
启动的
XVC
服务器所返回的
XVC
封装长度。当前
,
默认封装长度为
16000
,
但在后续更新版本中可能更改此设置。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set xvc-servers 210203356596A:localhost:3000" -e
"set xvc-packet-len 1000"
xvc-version
更改
XVC
服务器的
XVC
协议版本。
这是调试选项
,
可搭配
xvc-servers
一起使用
,
以控制对
XVC
客户端公开的
XVC
协议版本。当前
默认协议版本为
1.1
,
但如果定义了新版本的
XVC
协议
,
则此设置可能更改。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set xvc-servers 210203356596A:localhost:3000" -e
"set xvc-version 1.0"
xvc-capabilities
更改
XVC
服务器的
XVC
功能。
这是调试选项
,
可搭配
xvc-servers
一起使用
,
以控制对
XVC
客户端公开的功能。当前
,
默认功能
包括
locking
、
status
和
state-aware
,
但在将来版本中可能添加其它功能。如果
xvc
version
设为
1.0
,
则该选项无效。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set xvc-servers 210203356596A:localhost:3000"
-e "set xvc-capabilities status,state-aware"
processor-debug-claim
自动申领所选器件类型
,
以阻止调试器使用这些类型。
该选项用于阻止
hw_server
调试器使用选定的器件类型进行调试。给予该选项的实参为位掩码。
默认情况下
,
hw_server
使用所有已知的器件类型进行调试。位编号含义
位 器件类型
0 Arm DAP
1 MPSoC
2 FPGA
或
ACAP
在如下情况下可适用该选项
:
当使用
xvc-servers
启动
XVC
服务器并且
XVC
客户端作为以上一个
或多个器件的调试器时
,
或者当
hw_server
连接到
XVC
服务器
,
且该服务器作为以上一个或多
个器件的调试器时。在这两种情况下
,
仅当使用锁定功能时
,
此设置才有效
,
因为这样即可在调试
器之间支持时间共享。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set processor-debug-claim 2"
jtag-poll-delay
此项表示延迟值
(
以
uS
为单位
)
。默认值为
50000
。
该选项属于轮询选项
,
用于降低
JTAG
轮询频率。
JTAG
轮询频率为
2
次
JTAG
轮询操作之间的最短
周期。默认值和最小值均为
50,000 uS
。
jtag-poll-delay
参数的实参是以
uS
为单位的数值。
help
显示
hw_server
“
e
”选项
该选项用于显示
hw_server
的所有可用“
e
”选项。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e help
show-all
显示
hw_serv
中设置的所有通过的选项。
该选项用于显示
hw_server
的所有“
e
”选项设置。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e show-all
jtag-default-frequency
设置所有电缆的默认频率。
该选项用于设置
JTAG TCK
默认频率。
jtag-default-frequency
参数是以
Hz
为单位的数
值。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set jtag-default-frequency 5000000"
jtag-port-filter
设置
JTAG
端口筛选。
该选项用于控制
JTAG
端口筛选。设置该选项后
,
hw_server
会忽略与筛选不匹配的所有
JTAG
端
口。此参数的实参为完整或部分端口标识组成的逗号分隔列表。端口标识是
<manufacturer>/
<productid>/<serial><port>
形式的字符串。当在端口标识字符串中可找到任意端口筛选工
具的字符串时
,
即表示筛选结果匹配。
当在同一个主机上运行
hw_server
的多个实例时
,
可使用此参数来指定应由
hw_server
处理的
电缆。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set jtag-port-filter Xilinx/DLC10/0000128f515601"
另一个示例是在端口
3122
上启动
hw_server
时筛选任意赛灵思
DLC9
或
DLC10
电缆
:
hw_server -stcp::3122 -e "set jtag-port-filter DLC9,DLC10"
bscan-switch-user-mask
启用
bscan
切换。
该选项用于控制
bscan
切换检测。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set bscan-switch-user-mask <user-bit-mask>"
jtag-port-devices
设置
JTAG
端口器件列表。
该选项用于指定
JTAG
扫描链的器件静态列表。指定该选项后
,
hw_server
不会读取
IDCODE
寄
存器以检测扫描链上的器件。当扫描链包含不遵循
IEEE 1149.1
规范的器件时
,
适用该选项。给予
该参数的值为
IDCODE
值组成的逗号分隔列表
,
其中的值的顺序与扫描链上的器件顺序相同。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set jtag-port-devices 0xe970203f,0x03632093"
max-ir-length
启用
JTAG
链中的器件
,
这些器件的
ir
长度大于
64
位。
该选项用于启动
hw_server
并且能够启用大于
64
位的
ir
长度。此设置的默认值为
64
。用户可为
JTAG
链中
ir
长度较宽
(
例如
,
93
)
的器件增大该值。请注意
,
增大该数值会导致器件发现流程变
慢
,
从而导致电缆接入速度变慢。因此
,
如果用户要增大该值
,
此设置仅适用于含大量器件且
ir
长度较长的系统。
在
hw_server
启动时指定该选项的方式如下
:
hw_server -e "set max-ir-length 93"