从IC设计来看Trace32的用途

来源:互联网 发布:房地产数据 编辑:程序博客网 时间:2024/06/04 17:45

      通常的芯片设计,在开发阶段都会先在一个包含硬IP核的FPGA上进行,通过使用硬件描述语言HDL来对FPGA进行编程,这样既能加快设计速度又能够节省成本,最重要的是可以在芯片开发阶段发现可能存在的HW问题。一般的设计思路是首先将各个外围的控制模块给调试好,例如通常的SD和USB模块,最后再去开发系统控制器,如Clock Domain等。

      在上面的过程中,因为很多的软件资源和硬件资源相对较少,所以使用单独的调试Pattern来调试硬件远胜过写个bootloader或者eboot啥的来的快,而且方便。通过使用Makefile对测试Pattern进行编译后,利用Trace32将最终的axf文件透过模拟器下载到FPGA的内部SRAM或者外部的DDR上去,再利用PC端功能非常强大的IDE环境,实现对单个模块Pattern的调试。例如单步执行,执行过程中修改Reg(包括ARM内核中的寄存器)的值,以及修改RAM单元,配置软件和硬件断点(具体的支持个数和IP核有关),而且利用调试器测试HW的性能等。

      除了在芯片的设计过程中的应用,在OS运行起来的时候也一样可以使用,类似经常碰到的死机和DataAbort(当然了,某些dataabort也会导致死机)问题,就不用使用CELOG/Dump file或者Passive Kitl的方式来进行调试分析了,直接使用Trace32就成了。

      除此之外,还可以用来调试Driver和OAL的开发,效率非常高过KITL。

      不过有利就有弊,使用Trace32的话,需要自己去写很多的脚本文件,但是对于全新的IC设计和CPU的话,磨刀不误砍柴工,这些时间都是值得的。

 

原创粉丝点击