人物专访:如何解决 IP 集成问题

原文地址:Interview: How to solve the IP integration problem

原作者:eoin_mccann

我最近很荣幸地访问了 David Murray,并讨论了 IP 集成在系统构建过程中的现状。你们有些人可能不认识 David。他是一位充满激情的技术专家,曾担任 Duolog 公司的首席技术官;目前在 ARM 担任令人印象深刻的职位 - IP 工具架构师。他非常有活力并且善于表达,能在聆听时始终保持专注,希望您能享受以下专访。您可以在下面的备注区域提出问题,David 将尽快给予答复。

这篇博文延续了我在几周前对 Norman Walsh 的专访内容。Norman 讲述了 IP 集成的历史以及它如何演变成我们当前所看到的状态。您可以在此处查阅该篇专访人物专访:IP 集成的简史

 

David,您好。请问 IP 集成领域的进展如何?

IP 集成将继续作为 SoC 发展所面临的关键挑战。我们已经看到,在解决 IP 集成问题的紧密连接的日程中,IP 重复利用、IP 可配置性以及系统复杂性正持续增长。由于它会影响越来越多的前端到后端团队(如软件、RTL 设计、验证、物理实施等),系统的 IP 数量将持续增长,IP 本身具备的复杂性和可配置性以及总体集成范围也在不断增长。

我们已非常熟悉这一问题领域,并且过去几年来一直专注于架构集成解决方案。   其中一项提高 IP 集成流程的基础核心就是实现流程数据标准化。Norman Walsh 在他的人物专访中也提到了这一点,那就是我们需要通过使用元数据来实现 IP 数据(特别是接口数据)标准化。如果 IP 能够与接口实现标准相连,那么,整个 IP SoC 集成流程将变得更加轻松。如果我们对所有 IP 接口都规定了一个正式的定义(以某种元数据格式表示),那么,我们就可以使用更加自动化的智能,规定如何连接 IP 接口并启用其他关键流。例如,能够识别 AMBA 接口、时钟、重设、中断、DMA、调试和追踪接口等。此外,它不仅仅涉及我所讨论的硬件接口,对于全面了解硬件/软件接口(如 IP 中的寄存器和内存图),也同样重要。

 

那么,如何实现该接口信息的标准化?

在我看来,当务之急是实现接口信息的标准化,以便让 IP 实际使用尽可能多的行业标准协议,如 AMBAACEAXIAHBAPB 等)。这些接口的可配置性非常强,因此使用元数据格式定义接口内容和配置十分重要。业界使用的主要标准为 IP-XACT 格式,最初由 SPIRIT Consortium 制定,现在由 Accellera 制定。这从本质上指定了机器可读取 (XML) 格式的定义,该格式可以描述 IP 接口、内存图及其内容和连接性。我们目前已在 ARM 中采用该格式,以提高 ARM IP 的标准化,从而实现更为轻松的集成。

只要设计流能够创建此 IP-XACT,我们就可以据此进行工作并在 IP-XACT 上运行查询。由于知道工具读取和解析的内容,我们能够与合作伙伴携手合作,帮助他们定义必要的 IP-XACT 规格。

 

 

01.png

快速 IP 集成需要标准化 IP

 

这听起来非常棒,但它如何与许多不同的第三方 IP 或合作伙伴的内部 IP 一同运行?

ARM 还制定了 IP-XACT 标准总线定义;任何人都可以通过 ARM 网站下载使用。如果其他 IP 提供商使用这些标准定义,那么它将提供更为简单的机制,以便在子系统或顶层中连接这些 IP。同时,请不要忘记这不仅会启用更有效的集成 - 通过提供可以利用元数据的更佳 EDA 解决方案,我们的合作伙伴还能从中受益。

那么,ARM 目前是否有许多工作需要完成?

这是我们过去六七年来一直努力的方向,我们甚至在 Duolog 公司就开始努力,因为在减少漏洞、简化设计和验证流程方面存在着巨大的改进空间。目前,我们非常注重于提高 ARM IP 的标准化级别,甚至组件了内部 IP-XACT 建模定义组。我们正在针对 IP-XACT 的运用创建新的总线定义、新的扩展和指南,当然,我们也会利用 ARM Socrates 创建更好的 IP-XACT 流。在 ARM 系统和软件集团工作让我们得以了解子系统和 SoC 级别,进而成了狂热的 IP-XACT 消费者,这让深刻体会到合作伙伴的体验。我们面临的主要挑战可能也是业界的常见挑战。我们正在尝试使用元数据格式标准化我们需要的所有接口,但是首先,我们需要了解全部不同利益相关方的需求。

这是一件非常棒的事情,因为当我们标准化 IP 接口后,集成和验证流程的速度得到了显著的提高。但是,当您相对从容地标准化大多数接口时,我们却发现,目前有许多 IP 块可以通过不同的方式得到调整。在某些方面,我们将 IP 可配置性视为最大的集成挑战。

目前可用的 IP 配置级别正面临着集成问题,因为您可以采用相同的 IP 块并以不同方式进行配置;而基于此产生的 IP 块在外形和操作方面却完全不同。因此,将 IP 成功集成至系统将变得更加困难。

我将此比作录音室的调音台,上面带有数百种开关的,你可以通过任意调试来影响性能。这些选项让设计人员能够优化 IP,但是大量选择同样也令人困惑。用户真正需要的是,能够针对体现系统局限性的特殊 IP 块提供最佳配置选项。

 

02.png

多种配置选项通常会让设计人员陷入谜团

 

 

您如何解决这一配置问题呢?

当我们概述 IP 配置时,通常会提到 IP 块有三种不同类型的配置级别。首先,有一种根本无法配置的静态 IP”。这在过去更为常见,通常称作现用”IP,您可以购买用于即插即用型功能。如今,即便是现用”IP 也需要用户根据各个单独设计进行配置。

第二种可配置 IP 较为简单,它拥有可以设置的固定参数集。即便如此 - 创建可配置 IP 也很有挑战性,因为如果您有 10 个或者甚至 20 个参数,就会产生多种可能性,这样很难保证您的 IP 将适用于每个单独配置。验证团队和建模人员将确保 IP 在最可能的场景中能良好地运行,但很难针对所有场景进行测试。您仅拥有有限数量的验证资源来确保它已经过严格的测试。

第三种可配置 IP 的配置在很大程度上依赖于系统,例如系统互联、调试和追踪子系统、电源、时钟&重置、中断、输入/输出以及内存系统。它们的可配置性非常强,并且排列数量大,这意味着您需要其他策略来进行恰当的处理。理想情况下,您应有一些高度智能化的解决方案来解析系统要求和接口,以便用户可以轻松配置上述类型的 IP。我们一直致力于解决这些挑战,并在引导 Socrates 设计环境以提供该领域的解决方案。

ARM 已在该领域提供了大量 IP(包括总线互连 IP),例如 ARM CoreLink NIC-400ARM CoreLink CCI-400 缓存一致性互连ARM CoreLink CCN-512 缓存一致性网络ARM CoreLink GIC-500 以及 CoreSight 调试和追踪 IP。这些 IP 将耗费大量系统连接性,例如级联互连基础架构;并且 CoreSight 调试和追踪可能消耗 50% 以上的系统连接性,因此某种程度而言,高度可配置的 IP 是解决集成解决方案的核心之一。 

我们目前提出的全新关键因素在于帮助管理这些 IP 配置,以便能够适用于对应的系统环境。如果我们可以了解系统内容及其不同的接口需求,便可以帮助指导 IP 配置。

我们该如何执行此操作?借助所有元数据格式的系统组件,当然,还要拥有可以提取此信息的智能流并执行指导配置 - 实际上,这就是智能 IP 配置。

这就是解决 IP 集成问题的方式吗?

是的 - 我们过去数年来借助 ARM Socrates IP 工具努力实现的愿景便是:通过创建智能 IP 配置功能来创建一日系统。在 6 年前,我们首次推出 Socrates 时,人们需要花费数月时间执行集成任务才能获得初始 RTL 网表,并且还得花费好几个月才能创建并运行可用系统。借助 Socrates,我们开始显著缩减日程,将其缩短至数周。然而,我们发现,每件 IP 在设计、构建和集成方面都是相互独立的。因此,如果已根据某个规格构建了互连,那么人们就会尝试根据相同规格(可能已过时)将其集成到系统。一日系统的瓶颈在于这些系统相关 IP 的创建和集成。我们重点关注的解决方案是,在系统环境中寻求配置这些 IP 的智能方法。我们通过 IP 自身的智能配置,找到了应对 IP 集成问题的解决方案。我认为,正确配置系统的每个方面是提高整体连接性最为有效的方法。 

在这里,我们试图使用元数据在系统环境中提供快速、准确的配置。我所说的系统环境,是指您可以在其中看到不同系统要求如何给每个 IP 配置和整体系统带来连锁反应。这会缩短我们将部件集成至系统时所耗费的实际时间,因为 90% 的操作均将通过智能配置完成。我们需要通过智能配置来完成 IP 集成一日系统的愿景。您需要拥有一个适用于这些复杂 IP 块的解决方案,以便它们可以在系统定义过程中自行执行重新配置。

我们看到合作伙伴指出,即便了解了系统中一些更为复杂的 IP 块的透视图,通常也需要花费数周时间进行编译。过去,他们不得不仔细检查 TRM 和规格,以便了解系统需求。我们希望能够根据系统中 IP 的元数据即时提供信息。

03.png

IP 集成问题将通过智能配置得到解决

 

目前,验证在 SoC 设计中占据重要位置,Socrates 该如何融入这一趋势?

重新回到我之前提到的 IP-XACT 元数据;使用这种格式,我们能够在早期阶段清楚地了解系统,并且采用轻松可读取的格式 (XML)。然后,我们将关于系统、接口和寄存器视图和内存图的丰富信息传递给我们的 EDA 合作伙伴和其他生态系统利益相关者。由于信息显示为标准的、机器可读取的格式,所以可以即时进行验证。例如,Cadence Design Systems 可以针对 Interconnect Workbench 采用元数据,并自动创建验证环境和开箱即用性能方案和分析。这让我们实现了首要目标,能够帮助合作伙伴在较短时间范围内设计和实施系统。

 

听起来未来将非常振奋人心,但目前是否已实现了一部分?

ARM Socrates 已经是一款经过认证的 IP 标准化和集成解决方案。我们现在开始利用智能 IP 配置方法。现在,我们已经加入 ARM,可以直接使用 IP 并能够执行标准化并简化集成,从而为合作伙伴创造更多价值。这非常令人兴奋,您将在不久后看到新的解决方案问世。

最后一个问题。IP 工具架构师是一个非常有趣的职位,您是如何从 Duolog 公司的首席技术官转向这一角色的?

Duolog 这种小公司工作时,您所肩负的职责远不止于所扮演的角色   我不得不时刻做出调整以适应客户的设计流,并寻找客户开发过程中的任何热点。发现主要问题后,我们必须针对该问题设计并架构解决方案,最终通过敬业的团队开发出高价值的产品(如 Socrates)。我们开发 IP 集成时也是如此,我们并未刻意寻找它,它通过我们的客户自然而然地找到了我们。   然而,一家小公司很难抢占一席之地,因此我们做了很多工作,包括发布消息、撰写白皮书、博客、参加展会等,并且举办了多场客户见面会。    我在 Duolog 做的另一件事情是让我们向标准团队靠齐,并试图推动他们朝真正的解决方案领域发展。作为一家小公司,Duolog 投入了大量的时间和精力来推动 IP-XACT 标准的发展,而这无疑也是我将继续在 ARM 推进的事业,我将帮助发展符合每个人利益的内部标准和行业标准。

这就是我目前考虑的事情;总而言之,我在 ARM 公司担任的角色与之前的非常相似。IP 集成仍是我们所面临的问题 - 我们仍在追求一日系统的愿景,并且我大胆猜测这成为现实 - 最大的转变在于,加入 ARM 后,我们同样获得了 ARM IP - 这将带来巨大的潜力。之前在 Duolog,我们不得不与 ARM 合作以获取有限的 IP 访问权限 - 现在,我们可以在较早的开发阶段直接与 IP 设计人员合作,并能够借助标准化的 IP 块自下而上推动智能 IP 集成 - 这将是一场变革。 

好的,非常棒。David,非常感谢您接受我们的专访。

不客气,这是我的荣幸。(我真的讲了 10 分钟吗?)我希望你们的读者能对这个话题感兴趣。如果他们有任何问题,请让他们留言。

Anonymous
  • 11月25日深圳Design Start沙龙免费报名

    各位中文社区用户, 大家好,Arm中文社区和第三方合作伙伴创易栈开展合作,邀请Arm嵌入式专家 Eric Yang(杨瑞)现场讲解Arm Cortex-M0 和Cortex-M3 如何免费试用,定制自己的SoC的相关知识。 这次,我们现场活动放在深圳,时间是11月25日星期六下午,并且我们会有直播方便不在深圳的朋友参与。 活动信息请看这个海报,扫描/识别二维码可以直接报名。如果有问题欢迎在本贴提问…
  • 一圖看懂 Arm TrustZone 如何保護你日常生活的重要數據

    隨著智慧裝置雲端服務與物聯網技術一路發展、成長,在不知不覺當中,人類的生活已經與海量數據深度結合,人類在各種不經意的情況下,將自己的各種資料主動提供到自己的行動裝置內,在透過網際網路傳遞到網路汪洋之中;這些數據當中,有些是不具任何意義的,但有越來越多個人的重要資訊也在不知不覺中提供給自己最緊密的行動裝置。 無論是無關緊要的數據,或是個人或是企業的私密資訊,當這些數據量日益龐大,數據能產生的價值越來越多…
  • Arm发布《物联网安全宣言》呼吁技术行业必须遵守数字社会契约

    每年,全球经济因为网络犯罪所蒙受损失预计高达5,000 亿美元,其中包括直接经济损失、勒索的赎金和收拾残局的损失。尽管全面互联的网络世界带来的好处仍然远超威胁,但所有科技公司都应承担相应的责任,为相互信赖奠定良好的基础,这样我们才能确保数字世界的安全。事实上,所有公司都必须签署数字社会契约,承担起保护用户的义务。