SoC 设计中的系统架构是什么?

文摘   2024-11-03 06:00   上海  

您知道系统架构师在片上系统 (SoC) 设计中到底做什么吗?如果您已经知道或是一位经验丰富的系统架构师,那么可能无需继续阅读。但如果您是我们众多正在探索行业机会的年轻读者之一,请继续阅读,看看这是否是您希望从事的岗位。

随着尖端数字 ASIC 设计每年都变得越来越复杂,需要数十人的团队来处理它的各个方面,对系统架构师的需求日益增长。据先进芯片设计公司 Sondrel 称,系统架构师对于协调设计项目的各个方面都很重要。

系统架构师就像管弦乐队中的指挥。(图片:Sondrel)

Sondrel 的设计架构主管 Paul Martin 将系统架构师比作管弦乐队的指挥。他说:“他/她必须深入了解项目所需的所有技能,并知道这些技能何时适合项目的顺序,就像指挥家让管弦乐队的所有部分在正确的时间演奏自己的部分一样。只有在这种情况下,才能确保每个项目都符合规格,并按时按预算完成。我们成功做到这一点的声誉是每个季度都会带来更多项目,这就是为什么我们在世界各地的所有设计中心招募多技能工程师作为系统架构师以满足需求的原因。”

具有数十亿门的先进节点芯片设计的复杂性需要大量经验丰富的工程师。正如 Sondrel 首席执行官 Graham Curren 去年在工程师招聘活动中解释的那样,“例如,我们最近完成了一项 16nm 的设计,需要一百多人全职工作一年多;这种资源部署通常只有在大型蓝筹公司中才能实现。”

Curren 提到的 16nm 芯片是该公司为客户设计的最大芯片,500 平方毫米的芯片上集成了超过 300 亿个晶体管、4000 万个触发器和 23000 个 I/O、电源和接地焊盘。芯片平面图的三分之一左右是客户 IP 模块,用于处理实时图像处理。Sondrel 包裹着图形处理器单元、两个中央处理器单元、片上高速缓存、PCI 和 USB 接口以及内存控制器等支持块,这些块连接到片外内存,使用了邮票大小的芯片上超过 7 公里的金属轨道。

一次性设计出如此复杂的芯片是不可能的,因为它有 3 亿个可放置的逻辑单元,而放置工具一次只能处理 300 万个逻辑单元,否则运行时间会过长。因此,它被分成易于管理的大小,功能块分布在金字塔结构的四个层次上。

为了达到这一点,在 SoC 开发周期的早期,产品经理、系统架构师和相关的技术利益相关者会讨论并阐述产品需求。每个团队往往都有一个特定的产品心理模型,通常产品经理会专注于最终用途和产品应用。同时,系统架构师会专注于功能和执行,以及需求的实现。

这个“需求捕获阶段”识别、制定和记录所有已知的功能和指标,包括性能要求,并将其记录在一份清晰完整的提案中。此外,此练习还会识别尚未完全理解或可能在以后包含的功能,并试图确定和计划完成此类功能的资格和量化所需的任务。

在完成或在项目开始时尽可能完整时,系统架构团队的需求会经历一个分析阶段,并得到设计和实施团队的适当输入。这个迭代过程的结果是一份架构设计规范,其中包括一份架构设计,其中确定了所有功能、功耗、性能和面积的估计。

在初始阶段纳入设计和实施工作可确保规范和架构具有更高的准确性和验证水平,并确定指导设计选择所需的敏感性。

架构分析包括架构探索、IP 选择/规范、需求验证和项目执行计划的生成,主要任务在后续阶段详细说明。

候选架构的架构探索是一个主要组成部分。它通过对提案进行建模并评估已知或参考用例来完善架构设计,动态地允许定义系统拓扑并分配资源(内存、总线结构数据/控制路径等)

虽然它允许对功能的各个方面(连接性、时序、性能)进行评估和验证,以确保设计的正确性,但后期阶段将使用更详细和更准确的模型来确定和纠正架构实施过程中的潜在错误。

SoC 架构探索的初始部分是一种严格的方法,用于捕获 SoC 需要执行的一个或多个应用程序用例和数据流。准确而完整的用例描述对于在产品定义阶段早期与利益相关者沟通并就需求达成一致是必不可少的。系统架构师力求提出产品需求并表达出来,以便技术和非技术利益相关者能够跟上产品意图和架构选择,而无需过多的技术细节。

从产品需求到可执行架构模型的流程。(来源:Sondrel)

此协作流程有八个步骤:

  • 产品经理对潜在的 SoC 解决方案进行市场分析、行业趋势和产品需求定义。

  • 产品用例需求通常通过演示文稿、电子表格或文档传达给系统架构师。

  • 建模流程所需的需求转换为 DSL 格式。

  • 工具生成可执行规范和用例可视化。

  • 工具还生成用例架构探索所需的周期精确的 SystemC 模型。

  • 系统架构师检查探索练习的结果,并逐步收敛到 SoC 的最佳架构

  • 系统架构师与产品经理沟通调查结果。

  • 产品经理可以决定修改需求或与系统架构师合作以进一步完善候选 SoC 架构。


为了说明系统架构探索的 SoC 应用用例,Sondrel 发表了一篇论文,介绍了建模在程序架构阶段的使用。下图显示了一个典型的自主视觉用例数据流图,其中节点代表处理功能,边缘代表数据流。


自主视觉用例数据流示例 - Sondrel

自主视觉用例数据流示例。(来源:Sondrel)

流程中的具体阶段是:

  • 帧曝光 - 相机传感器拍摄其视野快照的间隔。图像传感器可以配置为全局快门或滚动快门模式,每种模式都有与之相关的曝光时间。

  • 帧 RX – 图像像素按行分组通过实时接口(如 MIPI CSI-3)发送到 SoC 的间隔。

  • 图像调节 – 在实际计算阶段之前对接收数据执行的任何图像预处理、过滤或汇总步骤。

  • 经典计算机视觉 – 众所周知的视觉处理算法,例如相机校准、运动估计或立体视觉的单应性操作。

  • 计算成像 – 视觉算法通过自定义处理步骤(如像素云或深度图估计)得到增强

  • AI 推理 – 基于神经网络的图像处理,用于语义分割、对象分类等。

  • 数据融合 – 最后阶段的传感器融合和跟踪。还可能包括格式化或分组处理。

  • 数据 TX – 可以通过 PCIE 或实时接口(如 MIPI CSI-3)以恒定或可变的数据速率进行。


本文接着定义了两个模拟结构,即应用用例模型和硬件平台模型,然后定义了一个完整的模拟模型,其中用例任务映射到硬件平台的子系统上。

软硬件协同设计 HW-SW Co-Design
欢迎后台留言,AI 客服全天在线。脱离物理硬件,开发测试和调试软件。基于虚拟原型的软硬件协同设计,提前一年实现产品上市创收,降低一半开发时间。
 最新文章