0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅谈Azure 上的芯片设计工作流

要长高 来源:Azure上云直升机 作者:王树桐 2022-06-15 14:37 次阅读

作者 王树桐

微软客户工程师

电子设计自动化(英语:Electronic design automation,缩写:EDA)是指利用计算机辅助设计(CAD)软件,来完成超大规模集成电路VLSI芯片的功能设计、综合、验证、物理设计(包括布局、布线、版图、设计规则检查等)等流程的设计方式。在传统芯片设计环境中,计算平台是核心职能之一,它依赖IT硬件底层的支撑,满足更高效、安全的大量EDA计算的需要。然而,随着应用需求的发展,以及设计复杂性的提升,这样的芯片设计环境的不足愈加凸出。具体包括:IT资源不足、数据安全担忧、机器负载不均衡、仿真速度慢、图形界面卡顿、项目环境不一致、运维工作量大、技术支持困难、服务器配置不一致以及协同困难 等等问题。这些问题往往会对芯片设计工作效率造成持续影响。

云计算的角度来看,Azure 作为 HPC 平台提供的安全性、可靠性和可伸缩性非常适合 EDA。此外,Azure 一直在不断发展。各种企业组织可以从众多的不断增长的云服务中进行选择,这些云服务使开发人员能够使用他们喜欢的工具和框架在庞大的全球网络上构建,管理和部署应用程序。

对于考虑迁移到云的半导体公司,Azure 提供:

高性能且可销售的基础架构,能够支持生产级芯片设计工作。

EDA工具迁移到Azure上的策略,帮助企业优化成本并且提高效率。

丰富的合作伙伴生态系统,包括半导体公司、代工厂、工具供应商、SOT(外部半导体组装和测试)和系统集成商(实施顾问)。

解决常见行业障碍的解决方案,例如产品差距、安全性和自身成本。

01Azure 上的芯片设计工作流

复杂芯片设计过程中的每个步骤(从前端设计的初始规范到后端设计的最终 GDSII 流片)都有一套专用的 EDA 工具。Azure 服务和开发者工具可以优化这些工作流中使用的设计和协作环境,使得团队拥有最佳产出。Azure 还提供了一些机制来帮助组织做出最佳性能和成本组合的工作流选择。

前端(逻辑)设计

使用软件进行仿真模拟,前端设计能够从规范式形式转向逻辑验证设计。与软件研发一样,此阶段是具有一些块级的仿真模拟和代码调试。此工作流受益于 Azure DevOps 工具和服务,这些工具和服务通过提高团队协作和敏捷实践来改进设计周期。

poYBAGKpfaWAA_mAAADipWG9YR4755.png

图 1.前端设计阶段的步骤使用软件仿真

当开发设计模块时,团队可以通过运行功能仿真来验证设计元素的正确性。RTL(寄存器传输级)仿真使设计人员能够确认设计在逻辑上将按预期运行。为了最大限度地减少仿真时间,这些不同的设计元素在数十到数千个系统中并行仿真,具体取决于设计的规模和可用资源。Azure 具有近乎无限的计算资源,可以通过允许更多作业并行运行来加速验证过程,从而缩短总周转时间。

pYYBAGKpfauAc1vZAAEBvRoy4HA180.png

图 2.EDA 软件将逻辑设计映射到物理设计和代工流程

许多后端工作有非常大的计算和内存需求。这些工作负载可以扩展到多核,并依靠高性能存储来访问庞大的数据集。对于许多产品团队,甚至是大公司的产品团队来说,维持如此大的内核数量和内存系统的可用性是一个非常大的挑战。即使系统位于数据中心,保持访问这几个系统的可行性来运行大型后端工作仍是一个挑战,这同时会限制这些工作负载的规模,从而延长周转时间。

此类工作流非常适合在 Azure 上运行,可以在数小时内启动数千个内核以交付结果,而不是本地设置所需的几天

02、适用于EDA工作的Azure 架构

用于硅设计的 Azure 基础架构对计算和内存密集型应用程序进行了优化,用高性能文件系统和高效的作业调度来支持这些应用程序,来最大限度地提高 EDA 软件许可投资的吞吐量和性能。图 3 显示了 Azure 上 EDA 的高级体系结构,并介绍了计算、存储、网络和业务流程组件,这些组件将在本节中更详细地介绍。

poYBAGKpfbOAGEsiAAU3PtGbWo4817.png

图 3. 此高级体系结构支持 Azure 上的 EDA 工作负荷

此体系结构包括以下组件子:

Azure compute。Azure 提供具有一系列内存与核心成比率的虚拟机类别,可满足不同的工作负载要求。

Azure NetApp Files. 这种高性能的计量文件储存服务让用户迁移和运行基于文件的EDA工具更方便,不需要额外改变代码。在 Microsoft 的支持下,Azure NetApp Files 构建在 NetApp ONTAP 存储操作系统上,为 EDA 客户提供他们已经熟悉的界面和功能。

Azure HPC Cache. HPC 缓存优化了 NFS 延迟和元数据和读取操作的吞吐量,以支持大型横向扩展 HPC 集群。 HPC 缓存支持单个文件每秒高达 20 GiB 的读取吞吐量,对元数据读取请求提供微秒级响应,并横向扩展需要数百万个文件和目录的工作负载,从而减少对高需求读取量的争抢和网络瓶颈。

Azure Blob storage. 凭借巨大的容量和可扩展性,Blob 存储在热、冷或存档层中存储了数百到数十亿个对象,具体取决于数据访问的频率。 Azure Blob 存储提供了一种更具成本效益的方式来存储数十年的历史设计数据,同时保持对该数据的即时可访问性

Azure CycleCloud. 这是一个免费工具,可以在 Azure 中创建、管理、操作和优化 HPC 集群。例如,您可以在 20 分钟内预置 50,000 个计算核心。

网络。 Azure 虚拟网络架构基于软件定义网络 (SDN) 技术,为过度配置的网络资源提供高带宽和低延迟。建议使用 Azure ExpressRoute 线路,在 Azure 数据中心和本地基础结构之间建立快速连接。

此外,Azure还支持流行的并行虚拟文件系统,例如 Lustre 和 BeeGFS,这些系统在Azure Marketplace中随时可用。

03、迁移到Azure的步骤

Azure 提供了一种系统化的方法来支持当今的云迁移,以及一个有助于未来创新的平台。一些世界上最大的半导体公司已经在Microsoft的帮助下使用 Azure,对其高要求的基础结构 EDA 工作流提供支持。这些公司可以随着需求动态地添加和删除资源,并只需为所需的部分付费 。Azure 还提供可靠的安全性,帮助保护其芯片知识产权。受信任的Azure 解决方案能让公司可以根据需求灵活地选择云模型 - 以高倍数、附加或专用资源突发到云,或者将整个工作迁移到 Azure 中。

开始的六个步骤

许多半导体 IT 组织都在犹豫迁移决策,而这些考虑既复杂又耗时。我们建议采用六步过程来开始使用 Azure:

1 对软件和工作负载进行编目。

2 对性能或工作负荷进行分类。

3 定义在 Azure 中移动到工作流或启动工作流的成功条件。

4 构建用于云集成的核心基础架构组件。

5 获得开发所需的技能。

6 开发云生产支持的模型,为改变而替换一些必要组件 和变更管理。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云计算
    +关注

    关注

    39

    文章

    7778

    浏览量

    137376
  • eda
    eda
    +关注

    关注

    71

    文章

    2757

    浏览量

    173228
  • Azure
    +关注

    关注

    1

    文章

    123

    浏览量

    12780
收藏 人收藏

    评论

    相关推荐

    基于多QoS目标的工作流任务调度算法

    根据工作流任务的结构特点对其进行分区,按照任务量和通信量将总工作流截止日期和总工作流花费分为每个任务分区的子截止日期和子花费,在考虑用户多个QoS要求及
    发表于 04-22 10:02 15次下载

    基于案例推理的工作流异常处理研究

    工作流的异常和案例推理(Case - Based Reasoning,简称CBR)的机制进行了介绍,给出了一个应用CBR 技术进行异常处理的工作流模型,并研究了应用CBR 方法处理工作流异常的机制。
    发表于 06-15 10:20 14次下载

    企业工作流机模型的设计

    工作流机是一个为工作流实例的执行提供运行服务环境的软件或引擎。它是工作流执行服务的核心,是执行企业经营过程的业务操作系统的内核,它的运转也就带动了企业的经营活
    发表于 06-16 09:45 30次下载

    OA系统中工作流引擎的设计

    本文首先介绍了工作流供理系统的概念及其体系结构模型。基于Web 平台,针对模型中工作流引擎模块的设计提出了一个行之有效解决方案。关键字:工作流; 工作流引擎; UML; 用
    发表于 06-16 11:31 45次下载

    基于本体的柔性工作流研究

    工作流管理系统通常对工作流模型进行严格的定义。然而,现实情况却是工作流实例在运行过程中常常由于信息不足或者需要的资源不可用等诸多原因,而偏离预先的定义。因此
    发表于 06-29 08:43 6次下载

    基于UML的工作流引擎的设计与研究

    由于工作流技术具有在异构环境中处理复杂事务的能力,所以在科学研究、电子政务和商务等方面引起了广泛的关注,工作流引擎是工作流管理系统的核心,本文以工作流管理联盟的工
    发表于 08-19 10:47 23次下载

    基于IPO的工作流模型定义与XPDL解析

    基于IPO的工作流模型定义与XPDL解析:根据工作流联盟的相关标准,基于三维视图给出了工作流过程模型定义,实现了过程模型的XML表述。在此基础,通过使用Java2相关技术完成了XPD
    发表于 01-12 17:15 17次下载

    动态工作流技术的应用研究

    在基于工作流的应用系统中,业务过程的不可预见性往往会要求工作流能够适应不断改变的业务环境,而传统的工作流技术通常对业务动态可变的支持度不够。本文在传统工作流
    发表于 01-15 14:08 7次下载

    基于优先级的柔性时空工作流异常处理

    针对当前工作流异常处理独立于工作流流程的情况,提出一种基于优先级过滤的工作流异常处理方法,通过定义异常处理优先级,结合工作流的整体流程,过滤次要异常,优先处理重要异
    发表于 02-22 15:49 10次下载

    敏捷工作流模式研究

    敏捷工作流模式研究
    发表于 01-10 11:04 0次下载

    基于MVC架构的轻量级工作流引擎设计

    为克服传统工作流引擎的不足,设计了基于MVC架构的轻量级工作流引擎设计
    发表于 05-24 15:23 0次下载
    基于MVC架构的轻量级<b class='flag-5'>工作流</b>引擎设计

    工作流环境下组件的开发

    本文基于对工作流环境下组件的开发为目的,采用工作流技术与组件技术相结合的方法,讨论构建工作流组件的方法。通过在开发中结合Ajax技术,使之克服传统的Web应用中同步交换问题
    发表于 12-17 11:01 0次下载
    <b class='flag-5'>工作流</b>环境下组件的开发

    基于行为特征的语义工作流修正算法

    工作流修正是工作流重用的重要任务,目前在基于工作流的可重用片段-stream的语义工作流修正中,当工作流stream库中不存在与检索语义
    发表于 12-14 15:50 0次下载
    基于行为特征的语义<b class='flag-5'>工作流</b>修正算法

    推荐两个工作流的springboot项目

    今天主要推荐两个工作流的springboot项目,开源项目中有具体的部署操作文档,核心表结构说明,都可以帮助理解工作流原理,其实大厂华为阿里里面的工作流虽然号称自研(很多都是参考开源),跟开源
    的头像 发表于 03-18 09:31 1701次阅读

    联影磁共振参数工作流卡介绍

    工作流卡提供了临床工作应用相关的参数,主要分为三部分,校准工作流、扫描工作流以及加载工作流,此篇内容以腹部屏气T1压脂序列为例。
    的头像 发表于 05-19 16:07 4536次阅读
    联影磁共振参数<b class='flag-5'>工作流</b>卡介绍