版本 B
xTIMEcomposer 用户指南
出版日期:2013 年 11 月 14 日
XMOS © 2013 版权所有
目录
A 安装............................................................................. .................................................................. 3
1
xTIMEcomposer 运行系统要求.................................... .................................................... 4
2 安装说明.................................................................... ........................................................... ..5
2.1 工具安装.................................................................. ................................................................ 5
2.2 USB 驱动安装............................................................ ........................................................... 6
B 快速启动................................................................................................................................. 7
3 启动 xTIMEcomposer..........................................................................................................8
3.1 启动 xTIMEcomposer Studio.....................................................................................8
3.1.1 xTIMEcomposer 注册..................................................................................... .......... 8
3.2 启动命令行工具.......................................................................................................... 9
3.3 欢迎界面..............................................................................................................................10
3.4 开发者专栏........................................................................................................................ 10
4 常用命令................................................................................................................................12
XCC................................................................................................................................12
4.1
XRUN............................................................................................................................12
4.2
4.3
XGDB............................................................................................................................13
4.4
XSIM.............................................................................................................................13
.
C 在 XDE 中开发.....................................................................................................................14
5 在 xTIMEcomposer 中导入或导出项目.......................................................................15
5.1 导入 xSOFTip 组件.................................................................................................. 16
5.2 导入 HowTo 示例.......................................................................................................16
5.3 导入社群项目…………………………………………………………………16
5.4 导入 xTIMEcomposer 项目…………………………………………………17
5.5 导出 xTIMEcomposer 项目………………………………….……………….17
6 使用 xSOFTip 开发应用程序...............................................................................18
6.1
xSOFTip 浏览器视图.....................................................................................19
6.1.1 将 xSOFTip 加入项目中……………………………………………………20
6.2 系统信息..........................................................................................................21
6.2.1 识别合适的 xCORE 设备..............................................................................21
6.3
xSOFTip 组件配置.........................................................................................22
6.4 从应用程序中生成项目...................................................................................22
D 编译.............................................................................................................................23
7 使用 xTIMEcomposer Studio 构建项目...................................................................24
8 XCC 程序指令...........................................................................................................25
9 XCC 命令行选项.......................................................................................................27
9.1 总体选项............................................................................................................27
9.2 警告选项............................................................................................................30
9.3 调试选项............................................................................................................33
9.4 优化选项............................................................................................................33
9.5 预处理器选项.............................................................................................35
9.6 链接程序和映射程序选项.........................................................................35
9.7 目录选项.....................................................................................................36
9.8 影响 XCC 的环境变量...............................................................................37
9.9
提供的板支持........................................................................37
10 使用 XMOS Makefiles........................................................................................38
10.1 项目、应用和模块.........................................................................................38
10.1.1 结构示例..................................................................................................40
10.2 应用 Makefile..................................................................................................40
10.3 项目 Makefile..................................................................................................42
10.4 module_build_info 文件...................................................................................43
11 使用 XMOS Makefiles 生成二进制库................................................................44
11.1 module_build_info 文件...................................................................................44
11.2 模块 Makefile..................................................................................................45
11.3 使用模块.........................................................................................................45
E 计时......................................................................................................................46
12 将 xTIMEcomposer 用于给程序计时.................................................................47
12.1 启动计时分析仪..............................................................................................47
12.2 代码段计时......................................................................................................48
12.2.1 可视化路径................................................................................................49
12.2.2 Visualizations 视图.....................................................................................49
12.3 规定计时要求...................................................................................................50
12.4 添加程序执行信息...........................................................................................50
12.4.1 细化最差案例分析.....................................................................................51
12.5 编译时验证计时要求........................................................................................51
13 自命令行使用 XTA 53
13.1 常用命令…………………………………………………………………….53
13.1.1 加载二进制库…………………………………………………………...53
13.1.2 路径……………………………………………………………………...53
13.1.3 端点………………………………………………………………………53
13.1.4 在源库中加入端点………………………………………………………54
13.1.5 端点间计时………………………………………………………………54
13.1.6 计时函数…………………………………………………………………54
13.1.7 计时环路…………………………………………………………………55
13.1.8 设置计时要求……………………………………………………………55
13.2 可见结果……………………………………………………………………..55
13.2.1 路由器标识………………………………………………………………55
13.2.2 节点标识………………………………………..…………………………55
13.2.3 概要……………………………………………………………………….55
13.2.4 结构……………………………………………………………………….56
13.2.5 源代码批注……………………………………………………………….56
13.2.6 指令跟踪………………………………………………………………….56
13.2.7 获取停止操作指令……………………………………………………….57
13.2.8 缩放结果………………………………………………………………….57
13.2.9 未知……………………………………………………………………….57
13.3 精确计时结果………………………………………………………………...57
13.3.1 除外条款…………………………………………………………………..58
13.3.2 循环迭代…………………………………………………………………..59
13.3.3 环路迭代…………………………………………………………………..60
13.3.4 循环范围…………………………………………………………………..61
13.3.5 指令执行时间……………………………………………………………..63
13.3.6 作用时间…………………………………………………………………63
13.3.7 路径时间…………………………………………………………………64
13.3.8 现用数据块………………………………………………………………66
13.3.9 节点频率…………………………………………………………………66
13.3.10 逻辑核心数……………………………………………………………..66
13.4 程序结构…………………………………………………………………….66
13.4.1XTA 编译…………………………………………………………………66
13.4.2 结构节点…………………………………………………………………67
13.4.3 识别节点:代码引用……………………………………………………68
13.4.4 引用类……………………………………………………………………69
13.4.5 后方痕迹…………………………………………………………………70
13.4.6 引用范围…………………………………………………………………71
13.5 进程自动化…………………………………………………………………..72
13.5.1 写脚本……………………………………………………………………72
13.5.2 运行脚本…………………………………………………………………72
13.5.3 在源代码中嵌入命令……………………………………………………73
13.6 通过 Jython 界面为 XTA 编写脚本………………………………………...73
14 XTA 命令行手册…………………………………………………………………74
14.1 命令…………………………………………………………………………..74
14.1.1 添加……………………………………………………………………….74
14.1.2 分析……………………………………………………………………….75
14.1.3 配置……………………………………………………………………….75
14.1.4 清除……………………………………………………………………….76
14.1.5 调试……………………………………………………………………….76
14.1.6 重复……………………………………………………………………….77
14.1.7 退出……………………………………………………………………….77
14.1.8 帮助……………………………………………………………………….77
14.1.9 历史记录………………………………………………………………….77
14.1.10 加载……………………………………………………………………...77
14.1.11 列表………………………………………………………………….......78
14.1.12 打印……………………………………………………………………...79
14.1.13 打印工作目录…………………………………………………………...80
14.1.14 删除……………………………………………………………………...80
14.1.15 写脚本…………………………………………………………………...80
14.1.16 设置……………………………………………………………………...81
14.1.17 源代码…………………………………………………………………...81
14.1.18 状态……………………………………………………………………...81
14.1.19 版本……………………………………………………………………..82
14.2 注记…………………………………………………………………………..82
14.3 计时模式……………………………………………………………………..82
14.4 循环范围……………………………………………………………………..83
14.5 引用类别……………………………………………………………………..83
14.5.函数……………………………….……………………………………….83
14.5.2 分支……………………………………………………………………..83
14.5.3指令………………………………………………………………………84
14.5.4 端点……………………………………………………………………..84
14.5.5 ANY …………………………………………………………………….84
14.5.6 FUNCTION_WITH_EVERYTHING……………………………………85
14.5.7 BRANCH_WITH_EVERYTHING . …………………………………….85
14.5.8 INSTRUCTION_WITH_EVERYTHING………………………………..86
14.5.9 ENDPOINT_WITH_EVERYTHING…………………………………….86
14.5.10ANY_WITH_EVERYTHING……………………………………………87
14.6 XTA Jython 界面……………………………………………………………88
14.6.1 加载方式………………………………………………………………...88
14.6.2 路径建立/删除方式……………………………………………………..88
14.6.3 添加/删除方式…………………………………………………………..88
14.6.4 设置方式………………………………………………………………...89
14.6.5 获取方式………………………………………………………………...89
14.6.6 配置方式………………………………………………………………...89
14.7 代码引用语法……………………………………………………………….90
F 硬件上运行............................................................................................................92
15 使用 xTIMEcomposer 运行程序...........................................................................93
15.1 创建一个运行配置.............................................................................................93
15.2 重新运行一个程序...........................................................................................94
16 XRUN 命令行手册................................................................................................95
16.1 总体选项.............................................................................................................95
16.2 目的选项.............................................................................................................95
16.3 调试选项............................................................................................................96
16.4 XScope 选项..................................................................................................... 96
G 应用仪表和微调.......................................................................................................98
17 使用 xTIMEcomposer 和 XScope 实时追踪数据.................................................99
17.1 XN 文件配置........................................................................................................99
17.2 给程序装备仪表..................................................................................................100
17.3 启用追踪后的程序配置与运行...........................................................................102
17.4 离线分析数据.......................................................................................................103
17.5 实时分析数据.......................................................................................................104
17.5.1 捕集控制........................................................................................................104
17.5.2 信号控制........................................................................................................105
17.5.3 触发控制........................................................................................................106
17.5.4 时间基准控制................................................................................................106
17.5.5 屏幕控制.........................................................................................................107
17.6 使用 UART 界面追踪...........................................................................................107
18 XScope 性能数据.......................................................................................................109
18.1 xCORE 数据块与 XTAG-2 之间的转移速率.......................................................109
18.2 XTAG-2 和 Host PC 之间的转移速率...................................................................109
19 XScope 库应用程序接口............................................................................................110
19.1 函数........................................................................................................................110
19.2 列举........................................................................................................................115
H 模拟..............................................................................................................................117
20 使用 xTIMEcomposer 模拟程序................................................................................118
20.1 模拟器配置.............................................................................................................118
20.2 信号追踪.................................................................................................................119
20.2.1 启用信号追踪..................................................................................................119
20.2.2 查看追踪文件..................................................................................................120
20.2.3 查看信号..........................................................................................................120
20.3 设置回路..................................................................................................................121
20.4 配置模拟器插件......................................................................................................122
21 XSIM 命令行手册........................................................................................................123
21.1 总体选项...................................................................................................................123
21.2 警告选项..................................................................................................................123
21.3 追踪选项..................................................................................................................124
21.4 回路插件选项..........................................................................................................126
21.5 xScope 选项………………………………………………………………………127
22 XSIM 测试台和插件界面…………………………………………………………..128
22.1 运行插件………………………………………………………………………….129
22.2 插件通知………………………………………………………………………….130
22.3 执行测试台……………………………………………………………………….131
22.4 插件应用程序界面……………………………………………………………….131
22.4.1 与模拟器界面结合………………………………………………………………..132
22.5 测试台应用程序界面…………………………………………………………….135
22.5.1 与模拟器界面结合…………………………………………………………...136
I 调试.................................................................................................................................139
23 使用 xTIMEcomposer 调试程序....................................................................................140
23.1 启动调试器..................................................................................................................141
23.2 控制程序执行..............................................................................................................141
23.3 检查暂停程序.............................................................................................................142
23.4 设置断点.....................................................................................................................144
23.5 查看反汇编代码.........................................................................................................145
24 通过 printf 实时调试.....................................................................................................146
24.1 将 stdout 和 stderr 重定向到 XTAG-2.......................................................................147
24.2 在 XTAG-2 输出启用的情况下运行程序.................................................................148
24.3 使用 UART 接口输出................................................................................................148
J 闪存编程.........................................................................................................................150
25 具有闪存的设计和制造系统.........................................................................................151
25.1 从闪存引导程序........................................................................................................151
25.2 生产一个用于制造的闪存镜像 ..............................................................................152
25.3 执行一个现场升级....................................................................................................152
25.3.1 写一个自我更新的程序.....................................................................................152
25.3.2 编译和部署升级器.............................................................................................154
25.4 优化闪存加载器........................................................................................................154
25.4.1 编译加载器.........................................................................................................155
25.4.2 增加额外的镜像.................................................................................................155
26
libflash 应用程序接口...................................................................................................156
26.1 一般操作....................................................................................................................156
26.2 引导分区函数............................................................................................................157
26.3 数据分区函数............................................................................................................159
26.3.1 页面级别的函数.................................................................................................159
26.3.2 扇区级别函数.....................................................................................................160
27
libflash 原生支持的设备列表........................................................................................161
28 增加对新闪存设备的支持.............................................................................................162
28.1 Libflash 设备标识.......................................................................................................163
28.2 页面大小和页面数量................................................................................................163
28.3 地址大小....................................................................................................................164
28.4 时钟频率..................................................................................................................164
28.5 读取设备标识..........................................................................................................165
28.6 扇区擦除..................................................................................................................166
28.7 写入启用/禁用.........................................................................................................166
28.8 内存保护..................................................................................................................167
28.9 编程命令...................................................................................................................168
28.10 读数据....................................................................................................................169
28.11 矢量信息.................................................................................................................169
28.12 状态寄存器比特.....................................................................................................170
28.13 添加支持到 xTimeComposer ................................................................................171
28.14 选择闪存设备.........................................................................................................172
29 XFLASH 命令行手册....................................................................................................173
29.1 总体选项...................................................................................................................173
29.2 目的选项...................................................................................................................174
29.3 安全选项...................................................................................................................175
29.4 编程选项...................................................................................................................176
K 安全和一次性编程........................................................................................................177
30 维护 IP 和设备准确度...................................................................................................178
30.1 xCORE AES 模块......................................................................................................179
30.2 启用 AES 开发模块..................................................................................................180
30.3 生产闪存编程流程....................................................................................................181
30.4 生产 OTP 编程流程..................................................................................................182
31 XBURN 命令行手册......................................................................................................183
31.1 整体选项....................................................................................................................183
31.2 安全寄存器选项........................................................................................................184
31.3 目的选项....................................................................................................................184
31.4 编程选项....................................................................................................................185
L C/ XC 语言编程..............................................................................................................186
32 C / C ++和 XC 之间的调用............................................................................................187