1、Lauterbach
Lauterbach GmbH 公司是德国一家电子设计自动化公司,主要提供嵌入式系统的仿真、调试、软硬件跟踪及逻辑分析的全面解决方案,是世界上领先的微处理器开发工具厂商。该公司成立于1979年,总部设于慕尼黑,目前在中国北京、深圳、苏州三地设有分公司,主要负责劳特巴赫产品在中国的销售及技术支持。目前,全球有超20万套的Trace32工具在被使用,客户主要集中于芯片通信、汽车电子、工业应用和科研院所等领域,市场份额更是遥遥领先,已经成为硬件辅助调试工具的全球的技术和市场领导者。其中,各行业的客户详见下图:
2、TRACE32
TRACE32是由德国Lauterbach公司研制开发的一款仿真测试工具,可以参与到嵌入式开发全生命周期:芯片 BringUp(上电启动)、软件烧写、APP仿真、测试、失效调试及跟踪。调试器支持的功能:单步调试、打断点、OS调试、变量/内存/外设查看等;跟踪器功能:统计代码覆盖率、分析CPU负载、历史代码回溯、OS调度分析等;
TRACE32功能强大,主要在于:
一、统一用户界面:
TRACE32 - PowerView用户界面,客户只需一次学习,即可轻松切换到其他任何处理器平台的TRACE32系列产品。
二、广泛处理器架构:
其支持其可支持包括Arm®、RISC-V®、Tricore、PowerArchitecture、RH850、MIPS、RISC-V和诸多DSP等 250+ 处理器架构、5000+ 芯片型号的调试。在车规应用方向,TRACE32也通过了ISO26262功能安全调试工具相关认证。
三、复杂系统的异构多核同时调试和跟踪:
支持AMP,SMP多核处理器的启动调试。
SMP,Symmetric Multi-Processing,对称多处理器结构,在一个计算机上汇集了一组处理器 (多 CPU), 各 CPU 之间共享内存子系统以及总线结构,SMP 模式系统中所有 CPU 的地位相同,共同运行一个操作系统实例,所有 CPU 共享系统内存和外设资源。如Tricore397芯片上6个tricore内核;
AMP,Asymmetric Multi-Processing,非对称多处理器结构,相互之间通过访问受限的共享内存进行通信。异构处理器要解决多核之间的互相通信,IPC(inter-processor communication) 是多核处理器之间通信的一种机制。如TDA4VM芯片上的Cortex M3,Cortex R5,C66,C7X等处理器;
四、跨平台:
在不同的操作系统上均有TRACE32 GUI界面,一样的使用体验,如Mac,Windows,Linux;并且支持众多编译器生成的文件,如Bin,Hex,S19,ELF,AXF…;
其中,TRACE32硬件部分分为 Dedugger 和 Trace 两部分硬件,硬件独立,需要分别购买。Debugger 调试器由 PowerDebug 和 DebugCable两部分组成,通过选用不同的调试头模块(Debug Cable)连接到JTAG接口,以支持不同处理器平台。Trace 部分由 PowerTrace 和 Preprocessor两部分组成,通过选用不同的跟踪模块(Preprocessor)连接到TRACE接口,以支持不同处理器平台。具体图如下:
3、软硬件安装
3.1、软件获取
1、购买产品,可免费索取最新的光盘;
2、官网下载,提供了不同操作系统的安装包。
3.2、软件安装
1、Windows
下好安装包后,运行安装包的setup.bat 即可启动安装程序。安装过程不复杂,大部分界面保持默认并点击“Next”即可。
选择典型安装 Typical Installation;
勾选需要调试的平台,从R.2021.02 TRACE32开始 ARM 和 ARM64 合并为一个程序入口;
安装驱动;
选择Register Later,暂时不注册;
2、Linux
不同发行版的兼容情况及需要的依赖包:
以 Ubantu64 为例,进入光盘(安装包)文件夹,运行 setup_linux.sh;
根据提示完成安装即可。
3.3、硬件安装
Debugger 连接示意图(USB):
Debugger 连接示意图(以太网):
Debugger 硬件与目标板连接实物图:
Debug & Trace 连接示意图:
Debug & Trace 连接实物图:
正确识别TRACE32硬件(Windows):
第一次使用,在TRACE32软件安装好后,给将TRACE32硬件通过USB连接至PC机并上电后;
先打开Windows设备管理器,确保TRACE32能够被正确识别出来。
正确识别TRACE32硬件(Linux):
Linux下可以通过dmesg查看设备是否被正确识别到;
Lauterbach TRACE32的USB Vendor ID为0x897。
或者通过lsusb命令也能查看到设备是否正确识别;
Lauterbach的基础使用说明将会在下一节中展开介绍!