当前位置: 首页 > news >正文

【芯片设计- RTL 数字逻辑设计入门 番外篇 12 -- SoC 设计中的 ECO】


请阅读【ARM AMBA AXI 总线 文章专栏导读】


请阅读【芯片设计 RTL 数字逻辑设计扫盲 】


转自:简单了解SoC设计中的ECO — 快乐的芯片工程师


在这里插入图片描述

文章目录

    • ECO 概述
      • Pre-Mask ECO(预掩模ECO)
        • 芯片设计前端与后端的区别
      • Post-Mask ECO(后掩模ECO)
      • Tapeout前的ECO
      • Tapeout过程中的ECO
      • Tapeout后的ECO
    • ECO 实施策略和注意事项

ECO 概述

在芯片设计中,ECOEngineering Change Order,工程变更订单)是一个关键的环节,用于在芯片设计后期对设计进行必要的调整和优化。ECO通常应用于数字芯片的版图设计,它是对设计的layout进行局部的小范围修改和重新布线的过程,而不影响设计的其他部分的布局布线。ECO的目的是为了节省时间和成本,特别是在芯片设计的后期阶段,当RTL(寄存器传输级)代码冻结后,通过ECO来修正设计中的问题。
在这里插入图片描述

ECO可以分为不同的阶段,包括:

Pre-Mask ECO(预掩模ECO)

这一阶段的ECO发生在设计的 前端后端 流程之间,特别是在布局布线(Place and Route, P&R)之后但在制造掩模之前。在这个阶段,设计团队可以对逻辑、电路结构、布局或早期的金属层进行修改。由于修改发生在物理实现的较早阶段,因此成本相对较低,主要是时间成本和计算资源消耗。

芯片设计前端与后端的区别
  • 工作内容不同
    IC前端主要是熟悉 CPU/DMA/AXI/AHB总线及各种IP。而 IC后端是芯片物理结构分析、逻辑分析、建立后端设计流程、版图布局布线、版图编辑、版图物理验证、联络代工厂并提交生产数据。

  • 工作着重点不同
    IC前端是根据芯片规格书完成SOC的设计和集成, 使用仿真验证工具完成SOC的设计验证。而 IC 后端是将前端设计产生的门级网表通过EDA设计工具进行布局布线和进行物理验证并最终产生供制造用的GDSII数据

  • 工作要求不同
    IC前端熟练使用硬件描述语言(如Verilog, VHDL)和电路仿真工具(如VCS、NC-Verilog、Modelsim等),能独立完成硬件电路的设计和验证。而IC后端作为连接设计与制造的桥梁,合格的版图设计人员既要懂得IC设计、版图设计方面的专业知识,还要熟悉制程厂的工作流程、制程原理等相关知识。

Post-Mask ECO(后掩模ECO)

当设计已经完成并制造了光刻掩模后,如果需要修改,就只能进行Post-Mask ECO。这种情况下,修改通常局限于金属层(Metal ECO),以避免重新制造掩模的巨大成本。Post-Mask ECO的成本较高,因为它涉及到对已有的物理设计进行局部调整,这可能需要手工或自动的金属层重新路由,以及额外的验证工作。

Tapeout前的ECO

在RTL freeze后,tapeout前这一阶段,RTL已经无法修改,但还有补救的机会。数字前端工程师需要在final RTL的基础上,通过写ECO脚本的方式来实现功能上的ECO。

Tapeout过程中的ECO

当数字后端实现后的design,timing已经符合signoff标准,DRC已经clean,LVS已经pass,此时进入tapeout阶段。如果后期仿真发现的问题不需要添加额外的cell,则不耽误之前的tapeout。

Tapeout后的ECO

当芯片已经tapeout回来,在测试过程中发现了必须修复的bug。这时做ECO的代价相对较大,可能需要修改几层到十几层Metal layer,甚至重新流片。

ECO 实施策略和注意事项

  • ECO的实施阶段越晚,对项目时间和成本的影响越大。因此,应尽量减少Pre-Mask ECO以控制项目进度和成本。
  • Post-Mask ECO,特别是Metal ECO,是成本敏感的,应当谨慎评估变更的必要性和潜在影响,确保只有在必要且经济效益合理的情况下才进行。

在整个设计流程中,有效的ECO管理策略对于控制成本和保证产品质量至关重要。

ECO技术在芯片设计中扮演着重要角色,它允许设计团队在芯片设计的后期阶段对设计进行必要的调整和优化,以提高性能、降低成本并确保产品质量。通过不同的ECO阶段和实施策略,工程师可以在保证项目进度的同时,有效地控制成本并应对设计中的挑战。

推荐阅读
https://www.163.com/dy/article/GBB7DVH50538RW4A.html

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 初识Docker及管理Docker
  • vue3 + antd vue 纯前端 基于xlsx 实现导入excel 转 json,将json数据转换XLSX并下载(下载模版)
  • 如何在空间计算领域赚钱
  • PgSQL报错“绑定消息提供了1个参数,但是已准备好语句““ 要求0个参数“
  • 【Linux服务器Java环境搭建】013 springboot + vue 前后端分离项目详细介绍(理论)
  • 服务器注意事项
  • Typora 【最新1.8.6】版本安装下载教程 (轻量级 Markdown 编辑器),图文步骤详解,免费领取(软件可激活使用)
  • 【LeetCode】翻转二叉树
  • Redis-布隆过滤器(Bloom Filter)详解
  • 【BUG】已解决:Uncaught SyntaxError: Unexpected token ‘<‘
  • 如何获得Cesium的TileSet并设置本地服务器的Url
  • IO半虚拟化-vhost学习笔记
  • U-Net: 一种用于图像分割的深度学习架构
  • MyPostMan 迭代文档管理、自动化接口闭环测试工具(自动化测试篇)
  • go 实现websocket以及详细设计流程过程,确保通俗易懂
  • avalon2.2的VM生成过程
  • C# 免费离线人脸识别 2.0 Demo
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • ES6--对象的扩展
  • express + mock 让前后台并行开发
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • JS学习笔记——闭包
  • opencv python Meanshift 和 Camshift
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 坑!为什么View.startAnimation不起作用?
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 原生Ajax
  • 云大使推广中的常见热门问题
  • kubernetes资源对象--ingress
  • 湖北分布式智能数据采集方法有哪些?
  • ​LeetCode解法汇总307. 区域和检索 - 数组可修改
  • ​linux启动进程的方式
  • "无招胜有招"nbsp;史上最全的互…
  • ######## golang各章节终篇索引 ########
  • #QT(一种朴素的计算器实现方法)
  • #我与Java虚拟机的故事#连载11: JVM学习之路
  • $.ajax()参数及用法
  • (06)Hive——正则表达式
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (Oracle)SQL优化技巧(一):分页查询
  • (已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
  • (已解决)报错:Could not load the Qt platform plugin “xcb“
  • (转)关于pipe()的详细解析
  • ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .net CHARTING图表控件下载地址
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .net8.0与halcon编程环境构建
  • [ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600
  • [ 云计算 | AWS ] 对比分析:Amazon SNS 与 SQS 消息服务的异同与选择
  • []T 还是 []*T, 这是一个问题