altera_mem_if_sequencer_cpu_no_ifdef_params_sim_cpu_instr.tr 文件是一个跟踪文件,可用于在基于 UniPHY 的内存控制器调试嵌入式Nios II处理器。踪迹文件分三部分组成:标题、描述部分和带有二进制数据的跟踪帧部分。
标题有表 \x7fTRACE0\n
单 。第一个字节是 0x7f
如此表示文件包含二进制数据,而 0
这是一个版本号,可能在未来有不同的值。
该说明部分由由新线字符分隔的多个 ascii 文本行组成( 0xa
)。这些行可能包括各种可选的描述性或上下文设置信息,如跟踪点定义或寄存器集大小。GNU 项目调试器 (GDB) 将忽略它不识别的任何行。本节末尾有一条空线标记。
跟踪帧部分由连续数个帧组成。每个帧以两字节的踪迹编号开头,接着是四字节大小,以提供帧中的数据量。帧中的数据由多个模块组成,每个模块都由标明其类型的字符引入(至少是寄存器、内存和跟踪状态变量)。这部分中的数据是原始二进制的,而不是十六进制或其他编码;其终端性与目标的终端性相匹配。
R
bytes- 注册模块。字节的数量和订购与
g
远程协议中数据包的数量和订购相匹配。请注意,这些是实际字节,按目标顺序和 GDB 寄存器顺序,而不是十六十六字节编码。
M
addresslength bytes...
- 内存模块。这是一个连续的内存块,在 8 字节地址 address ,2 字节长 length ,后接 length 字节。
V
numbervalue- 跟踪状态可变块。此记录 value 踪迹状态变量的 8 字节签名值已编号 number 。
跟踪文件格式仅为 GNU GDB 正常跟踪文件格式。GNU 调试器工具可以使用它。