逻辑分析仪是一种类似于示波器的波形测试设备,它是用于监测硬件电路工作时的逻辑电平,并加以存储,用图形的方式直观地表达出来,便于用户检测、分析电路设计(硬件设计和软件设计)中的错误。
根据硬件设备设计上的差异,目前市面上逻辑分析仪大致上可分为台式逻辑分析仪和基于PC的
模拟逻辑分析仪。台式逻辑分析仪是将所有的测试软件、运算管理元件以及显示部分整合在一台仪器之中;模拟的分析仪则需要搭配PC机一起使用,通过PC机来显示之后结果。相比动辄上十数万元的台式逻辑分析仪,模拟逻辑分析仪具有价格便宜、性价比高、分析能力强、用户界面友好、操作简单、体积小巧等优点。
模拟逻辑分析仪是PC技术和测量技术结合的产物,触发和记录功能由虚拟逻辑分析仪硬件完成,波形显示、输入设置等功能由PC机去完成,因此不会对逻辑分析仪性能造成影响,同时节省了显示和输入方面的成本,在开发工程师熟悉的Windows操作系统下工作操作起来更加方便。与传统逻辑分析仪相比虚拟的具有质优价廉、方面使用等优点。
嵌入式系统的开发人员通常使用在线仿真器(ICE)来完成软件的调试,但随着嵌入式系统复杂性的提高,单纯的软件调试已经很难适应需求。在线仿真器+逻辑分析仪已经构成一种新的组合调试平台。借助逻辑分析仪可以发现许多隐匿很深的问题。例如,在为NiosII处理器开发SD卡驱动的时候,遇到一个很奇怪的情况,SD卡命令已正确发送,逻辑分析仪也捕捉到了有效应答信号,但是程序仍然返回应答信号等待超时错误。
单步调试程序发现,虽然逻辑分析仪捕捉到了有效应答信号,但是由SPI核读入数据却是0x80,即SD卡忙。之后,问题的原因是,SPI核的CPOL=1,CPHA=0模式并不适合SD卡,将SPI核的工作模式设为CPOL=1,CPHA=1则驱动程序就可以正常工作了。
综上所述,模拟逻辑分析仪在嵌入式系统调试中的应用可以从基本数字电路的时序分析到器件间总线协议的分析,还以配合在线仿真器调试驱动软件。