新闻中心

EEPW首页>模拟技术>设计应用> ARM 仿真器应用指导

ARM 仿真器应用指导

作者: 时间:2010-11-11 来源:网络 收藏

外部模式是当程序存储器,可能还有部分数据存储器,位于MCU外部的情况,需要有地址和数据总线来访问这部分存储器。外部模式也称扩展模式,用户芯片、bondout芯片和增强型hooks芯片都能够产生这种工作模式,这种情况下芯片的地址和数据总线引脚不能作为通用I/O口使用。Nohau的使用这三种芯片来实现有效的程序调试。

五、Bondout、增强型Hooks芯片和标准产品芯片

这些名词是指所使用的、用来替代目标MCU的三种仿真处理器。只有Bondout和增强型Hooks芯片能够实现单片调试,标准产品芯片不能。和标准产品芯片相比,bondout芯片有一些增加的引脚,连接到芯片内部硅片的电路节点上,所有又称“超脚芯片”。P51XA系列单片机都使用bondout芯片,EMUL51XA-PC就是很好的例子。

增强型Hooks芯片利用各种芯片引脚上面没有的机器周期来提供地址和数据总线,一些80C51系列仿真器就是使用增强型Hooks芯片。有趣的是,这些增强型Hooks芯片中的一些也是标准的产品芯片。使用增强型Hooks芯片作为仿真CPU需要一些额外的特殊功能电路来从复用的芯片引脚中,分解出地址和数据总线以及一些必须的控制信号,用户的目标板没有这些电路,所有仍然是单片工作模式。采用bondout芯片和增强型Hooks芯片能够实现极为精确的仿真,从功能一直到芯片的功耗。

六、使硬件工作起来

软件模拟器是很好的,可是它不能考虑进所有的变化因素。软件模拟器设计师必须考虑到每一件事情,特别是那些只有在硬件搭起来以后才会出现的因素,比如电容、定时、电感、芯片版本等,随着 CPU速度的增加,这些变得越来越重要。

目标Monitor相比之下要好得多,因为它是在实际硬件中运行的。但是为了使Monitor程序能够运行起来,目标系统必须是一个完整的、能够工作的系统。采用仿真器后就不是这样,仿真器在目标系统硬件不完整、或者是一点硬件都没有的情况下都可以运行。然而目标Monitor可以安装在最终产品的程序中,随时都可以激活,用来进行调试,所以这对于测试和维护来说还是有一定优势的。

七、仿真器的优点

仿真器具有软件模拟器和目标Monitor的所有功能,加上下面一些优点:

1.不使用目标系统或CPU资源

目标Monitor内核一般需要10K的ROM和10~20字节的RAM以及一个空闲的通信端口。一个好的仿真器不会使用上面任何一项。仿真器对于目标系统应当是不可见的,也就是所谓的“全透明仿真”。

2.硬件断点

软件断点的实现是通过在用户目标代码中插入2字节的TRAP(陷井)指令,将正常的程序流偏转到调试器上。如果程序计数器碰巧落到第二个字节上,程序就会崩溃。 Nohau仿真器的硬件断点功能使用比较器,将系统总线状态与预先设定的锁存器内容相比较,用以监测对于指定地址的访问,而不修改任何程序存储器内容。区域断点需要使用硬件断点来实现,但是软件断点仍然是很方便、有用的,所以Nohau的仿真器两种断点功能都提供。


当用户的目标程序存放在ROM中时,软件断点是不能用的,因为无法插入TRAP指令。对于ROM程序存储器系统,只能使用硬件断点。


3.跟踪功能(TRACE)

跟踪功能以时间为线索记录所有的处理器机器周期、以及可选的外部信号电平。跟踪功能能够记录所有的取指操作,并且在采用流水线并行处理模式的单片机中,如P51XA,区分在流水线中被取消的指令以及那些成功地执行的指令。跟踪的开始通过条件触发来实现,这样可以实现过滤功能,也就是只有感兴趣的指令周期被记录下来,其余的被舍弃。软件模拟器和目标Monitor没有跟踪存储器,也不能实现Trace功能。

4.条件触发

条件触发是非常强大、便于使用的功能,它使你可以在某些事件发生时,进行某个预先设定的行动,触发条件可以包括地址、数据、时钟周期和外部信号,这些条件可以触发一个断点、启动/停止跟踪记录、记录一个时间标记、以及很多其它由仿真器功能所决定的行动。这种强大的工具只有在仿真器中才能实现。Nohau仿真器的条件触发功能和跟踪功能有机地结合在一起,具有三级时间触发,最高级触发具有计数功能。



关键词:ARM仿真器

评论


相关推荐

技术专区

关闭