MCD API
真实硬件和软件模拟的统一调试界面
如今,SoC 设计流程跨越多个抽象层次,从高级模拟到最终的集成硬件。在整个设计过程中,各种现成的知识产权(IP)组件被组合在一起,以便在短时间内实现高质量的设计。IP 重用和集成开放式 SoC 设计平台(SPRINT)项目已着手开发一个基于标准的平台,支持创建可互操作和重用的 IP,并将其高效集成到高级 SoC 中。SPRINT 联盟由 IP 业务领域的众多公司和研究机构组成,包括提供商和用户。
在该项目范围内,ARM 、英飞凌科技、劳特巴赫、恩智浦半导体、意法半导体和 TIMA 实验室共同创建了 MCD API。其目的是为调试工具提供与真实硬件和软件仿真的统一调试接口。这样,工程师就可以在 SoC 平台设计流程的早期开始应用开发,而无需在从虚拟原型到真实硬件的过渡期间切换到其他调试工具。此外,MCD API 还能解决多核调试问题,而由于当今 SoC 设计的复杂性,多核调试是不可避免的。SPRINT 项目的实验证明了该接口的可行性和适用性。
功能强大而简单的 C 语言接口
MCD 应用程序接口为多核 SoC 的高效应用调试提供了必要的手段,它包含一组子应用程序接口,提供以下功能:
目标连接
连接/创建和配置调试服务器,以便将调试工具连接到多核系统;一个系统的多个核可同时连接到一个工具。
目标系统描述
通过 API 函数调用和 IP-XACT 描述(如 SPIRIT 联盟所规定的)检索连接系统的信息;实现调试工具的可重定向性以及额外的调试和分析功能。
目标运行控制
为多核系统设计的运行控制;系统处理单元对这些调用的反应可以逐核配置。
触发器支持
通用触发器接口;提供预定义的触发器类型(如用于断点)并允许自定义类型;可通过触发器总线进行交叉触发。
跟踪支持
通用跟踪界面;提供预定义跟踪源,并允许自定义跟踪源。
内存和寄存器访问
使用事务列表的统一内存和寄存器访问机制。