由于工作的需要,经常会使用Armulator做前提的仿真和一些Debug。
偶然有一天,同事问我能不能有一种仿真工具可以软件仿真带Timer的ARM环境。因为我经常使用Armulator入软件仿真,所以就在网上搜索了下,但是找到几篇帖子都说的不是很详细。没有办法,就去ARM的官方网站上寻找答案。最后在翻阅了《AppNote32_ARMulator.pdf》这篇应用文档之后,才对Armulator的此类应用有所心得。
首先介绍下Armulator的模块,主要包含下面几个部分:
1。ARM处理器核心以及Cache(有些处理器没有)的模块。
2。外围模块。这些都可以通过配置文件设置,并和基本存储器模块通信。
3。操作系统接口。用来提供执行环境。
包括我在内的很多人,在开始接触Armulator的时候,可能仅仅知道1和3的存在,并不知道Armulator包含了2这个重要的功能。更为重要的是,2是可以修改的,而且Armulator提供了一套完整的方法,可以编写出自己需要使用的模块。这种外围模块的可编辑以及灵活性让Armulator具备了仿真完整系统的能力,这将大大提高软件和硬件协同开发的效率。
本文一开始提到的在Armulator中使用Timer,在Armulator中也属于一个极其简单的应用。后续的文章中,将继续向您展现Armulator model的魅力。