应用程序和软件服务是智能手机和平板电脑等移动设备的主要区别。复杂多功能软件应用程序的原型设计、开发、调试和验证是一项重大工作,当软件依赖于仍在开发中的硬件功能且电路板尚不可用时,这尤其具有挑战性。
今天的硬件是根据软件需求定义和配置的。基于各种软件和硬件服务(如音频/视频、GPS、传感器和无线电)的应用程序的启动带来了重大的调试挑战。调试不会在单个软件模块、库或软件层的边界处结束;它涉及分析多个软件实体之间的交互。同样,验证需要涵盖功能性能和功率要求。
对于复杂软件服务的原型设计、开发、调试和验证,Synopsys 提供了一个同时解决软件和硬件架构的原型设计环境。该环境的核心是 ARM Cortex-A9x4 四核 Versatile Express 板的虚拟原型(图 1),它捆绑了完整的 Android 2.1 端口。软件开发人员可以充分利用 Cortex-A9 CPU 以及 Android 和 Linux 2.6 内核支持的四路对称多处理 (SMP)。
图 1: Synopsys 虚拟查看器简化了 Java 应用程序中的本机代码分析和调试。

通过虚拟化以太网连接,通过 Android Debug Bridge 与 Google 的基于 Eclipse 的软件开发工具包集成,虚拟原型可用于一般的 Android 应用程序开发。它提供了专门的支持来简化 Java 应用程序中的本地代码分析和调试。越来越多的性能关键代码以及遗留 C 代码被编译到 ARM CPU 的本机库中。挑战在于调试这些库以及 Java 应用程序、Android 运行时环境、中间件库和操作系统。这对于 SMP Linux 来说更加困难,因为形成复杂的多功能软件服务所需的每个进程和线程都可能在不同的 CPU 上执行,并在重新调度时更改 CPU。
虚拟原型与软件分析环境相辅相成,该环境可视化每个 CPU 随着时间的推移这些进程的调度。执行此分析的能力基于虚拟原型内的专用操作系统感知监视器。因此,不需要嵌入式软件工具。每个过程都可以分析到功能甚至指令级别。
脚本可以对所有硬件和软件方面进行全自动控制和检查。这对于功能、性能和功率验证至关重要。具有环境交互的复杂场景(例如触摸屏、键盘或无线电事件)可以轻松地以确定性方式记录和重复。系统级以软件为中心的断言框架允许软件工程师轻松地将断言挂钩到重放场景中。这些断言可以验证用户通过应用程序执行的操作是否通过不同的软件层正确传播到硬件。连同功能方面,随着时间的推移分析电源状态,提供有关消耗能量的信息。
虚拟原型基于 Synopsys 模型库和 ARM 的快速模型。用户可以使用自定义 SystemC TLM-2.0 兼容模型扩展虚拟原型。
审核编辑:郭婷
-
ARM
+关注
关注
135文章
9589浏览量
393752 -
嵌入式
+关注
关注
5209文章
20679浏览量
337231 -
cpu
+关注
关注
68文章
11332浏览量
225945
发布评论请先 登录
Android虚拟屏软件分享
深入解析RK平台Android/Linux Bootloader核心文件:android_bootloader.c
嵌入式开发新选择:明远智睿2351核心板,48元解锁四核ARM强悍性能
48 元四核 ARM 核心板!明远智睿 2351 刷新嵌入式市场性价比认知
48 元四核 ARM 核心板!明远智睿 2351 进入嵌入式市场
国产!全志T113-i 双核Cortex-A7@1.2GHz 工业开发板—ARM + DSP、RISC-V核间通信开发案例
创龙瑞芯微 RK3562 国产 2GHz 四核A53 工业开发板—调试工具安装
全国产!瑞芯微 RK3576 ARM 八核 2.2GHz 工业开发板—Linux应用开发手册
全国产!瑞芯微 RK3576 ARM 八核 2.2GHz 工业开发板—Linux开发环境搭建
全国产!瑞芯微 RK3576 ARM 八核 2.2GHz 工业开发板—Linux系统使用手册
全国产!瑞芯微 RK3576 ARM 八核 2.2GHz 工业开发板—LVGL应用开发案例
视美泰AIoT-3568A四核智慧终端主板重磅升级Android 15.0,助力全球AIoT市场再进阶!
Arm 公司面向 PC 市场的 Arm Niva 深度解读
带有集成耦合器的 Tx/Rx 前端模块,适用于四频 GSM 和 EDGE 应用 skyworksinc
带有Android的四核ARM虚拟原型
评论