DDRPHY数字IC后端设计实现系列专题之数字后端floorplanpowerplan设计

3.2.3 特殊单元的布局

布图阶段除了布置 I/O 单元和宏单元,在 28nm 制程工艺时,还需要处理两种特 殊的物理单元,Endcap 和 Tapcell。

DDRPHY数字IC后端设计实现系列专题之后端设计导入,IO Ring设计

(1)拐角单元
Endcap cell 俗称拐角单元,它的作用是确保 N 阱nwell关闭。主要加在 row 的结尾, 以及 hard macro 的周边,确保阱电位一致。添加 endcap cell 脚本命令如下:

addEndCap -powerDomain powerDomain_name

(2)tapcell 单元

在进入先进工艺后,标准单元的版图没有设计阱接触孔和衬底接触孔,而是将 两个孔做成单元 tapcell,以节省面积。如果不加,则可能会引起闩锁效应。需要注意 的是,我们在添加两种 cell 的时候,必须按照先添加 macro 左右两侧的 endcap,再添 加 tapcell,最后添加 macro 上下侧的 endcap 。否则,可能会导致 DRC 的错误。本次 设计中在布局阶段每隔 57.54,并隔行错开的方式添加 tapcell。添加 tapcell 的脚本命令如下:

addWellTap -cell TAP4CCHM -cell Interval 115.08 -prefix WELLTAP -checkerBoard -powerDomain powerDomain_name

数字后端零基础入门系列 | Innovus零基础LAB学习Day9

(3)MGFILLER

MGFiller 是一种尺寸较大的填充单元,常在拐角单元和 tapcell 单元加入后进行 进行等比例预先添加。在芯片测试阶段,如果因为功能问题进行 ECO(Engneering Change Order 工程改变计划)[41] ,则可以利用到 MGFiller 单元,只改变 metal1 而改 变单元的功能,这样见啥了底层光照,降低了芯片修改成本。本设计采用每 4 行,隔 105μm 加入 MGFiller,命令可以采用加 well-tap 的方式如下:
addWellTap -cell MGFILL -cell Interval 105 -skipRow 4 -startRowNum 2 -prefix MGFILL -powerDomain powerDomain_name

(4)电源开关单元

电源开关单元 PowerSwich 可开关电源网络,在低功耗设计中常使用。电源开关 单元中一个输入和输出供电网络,并且至少有一个信号控制开关,通过信号控制开关 的状态控制整个设计中各个电压域的开关。本次设计在 PD_PUB 电压域中间位置添 加电源开关单元,保证该电压域的开启和关断。

(5)隔离单元

隔离单元 Isolation cell 主要是低功耗设计使用。隔离单元的作用是,在逻辑信号 跨电压域传输,进行电源关断时,隔离单元生成一个己知逻辑,在上电和掉电的过程 中进行电平逻辑转换和隔离。

在这里插入图片描述

隔离单元有一个控制端口 EN,当 EN 端口的输入无效时,隔离单元可以等效为 一个缓冲单元,输出 Y 端直接接受输入 A 端的信号,当 EN 端输入有效时,缓冲单 元将断开,输出端 Y 将保持高电平或者低电平。上图所示的隔离单元有两组电源, 主 要电源 VDD 和备用电源 VDDB,当主要电源关断时,就要使用备用电源 VDDB 进行 供电,来维持输出端的固定电平。根据 CPF 文件对隔离单元的设置,一共四种隔离 单元,如表 3.2 所示:
在这里插入图片描述
本次设计隔离单元的放置方式为:将隔离单元均放置在输入端所在电压域,并有 顶层电源线作为备用电源供电,保证主要电源关断时,输出端电平维持正确,并由工 具自动布局完成布置。

3.3 电源规划设计

Powerplan 即是电源规划,一般情况下 powerplan 是布局规划的的最后一个阶段。

Powerplan 主要包括划分电压域,确认电源线的金属层,电源环线的规划,电源条线 的规划以及打电源孔等内容。

在该阶段主要需要考虑的因素是电压降(IR Drop)与电子迁移(EM)。电压降指 的是芯片中电源电压下降或地电压上升的情况,包括静态 IR_Drop 与动态 IR_Drop。 如果出现较大的电压降,则可能导致芯片失效。电子迁移指的是电子在金属线中流动 时,,原子因为电子的碰撞可能会随电子的方向移动导致金属线断裂,或停留在某处 引起金属线短路,从而导致逻辑功能错误。

所以需要在项目的前期做一个高质量的电源规划,来避免在项目后期出现比较棘 手的电压降问题以及电子迁移问题。良好的电源规划需要合理的电源网络结构, 层间 关系以及金属线宽度间隔,金属空大小等。接下来的章节将具体讨论 powerplan 的设 计内容

3.3.1 多电压域的 CPF 文件

CPF 是 Cadence 开发的通用功耗格式文件(common power format,CPF),Innovus 通过 CPF 文件为多电源电压域的低功耗设计指定供电系统。CPF 对电源设计提供了 具体实现方法,但没有具体说明这些电源的物理实现。通过 CPF 文件中的命令,设 计者能进行电源域划分,为不同电源域定义和建立电源网络以及进行相应的低功耗设 计等。与 RTL 描述普通信号连接不同,CPF 文件是电源信号连接信息的描述。CPF 文 件中的内容包括:电压域,电源网线和端口,电源开关单元(Power switch)、隔离单 元(isolation cell)等特殊单元等。

3.3.2 电压域划分

由 CPF 文件可 知 ,本 次 设计 的模块 中划 分 了 2 个 电压域 PD_PUB 和 PD_PUB_VDD0PP9 ,PD_PUB_VDD0P9 电压域包括 PLL 模块,IO 单元及 PUB , Address/Command PHY(AC),Data PHY(DATX8),PD_PUB 电压域主要包括缓存 控制单元相关功能逻辑单元。使用命令 read_power_intent pub_sys_top.cpf -cpf 与 commit_power_intent 将 CPF 文件信息及 PowerDomain 导入进 Innovus 中。

3.3.3 多电源电压的总体设计

本次设计的封装方式采用的是倒装技术(FlipChip),所以电源信号通过 Bump 流 入到芯片中。本次设计的电源电压规划如图3.8 所示:
在这里插入图片描述
由图 3.8 并结合 CPF 文件,本次设计主要有四组电源线进行供电,如表 3.3 所示:
在这里插入图片描述
VCC_TOP 电源通过电源开关单元控制 VCC_PUB_SW 电源的电压以开启或关断 电压域 PD_PUB,电压域 PD_PUB 关断后,添加在该电压域周围的隔离单元将保持 断电前的逻辑,与电压域 PD_PUB_VCC0P9 进行正确交互。

3.3.4 电源条线的设计

整个芯片的电源网络由电源环线(Power Ring),电源条线(Power stripe)和供电 I/O 构成。本次设计为整个芯片上的 DDR 物理层接口模块,所以其供电网络主要为 供电 I/O 和电源条线。电源条线是芯片内部的电源网络, 在本次设计中电源条线连接了模块内内所有逻辑单元的电源引脚,以及相关供电 I/O。为了建立稳定且均匀的电 源网络,需要考虑电压降和电子迁移的问题。电源条线一般有横向和纵向两种类型。 本设计采用 VHV 的方式进行电源条线的布置,即偶数层为横向布线,奇数层位纵向 布线。电源条线的类型选择应该符合工艺厂制定的规则, 否则将容易导致绕线资源不 足,从而引起拥塞。本次设计采用的是 1P8M11006+RDL28KA 工艺进行绕线,在此 工艺下一共有九层金属,其中低 6 层为细金属层,七层和八层是厚金属层,最高层 RDL 为铝层。第 1 ,3 ,5 ,7 层为纵向走线,2 ,4 ,6 ,8 层为水平走线层。在本芯片 设计中,第一层金属,厚金属层和 RDL 层作为电源专用层,只用来进行电源线绕线, 第一层金属只用做标准单元的电源条线,其余金属层为信号线绕线层。

为了提高电源信号的稳定,2 ,5 ,6 金属层也被用来进行电源条线绕线,其中只 有电源开关单元在第二层进行电源条线绕线。电源条线如此规划的优势:

(1)高层金属线宽,电阻小,有利于减小电压降,利用高层金属绕线则增加了 了底层细金属的绕线资源,提高底层金属利用率[26]。

(2)本次设计中的 PLL、DATX8 和 AC 宏单元自身的电源线使用用第 5 层,所 以本次设计中,这三种模块的上方不使用第 5 层金属绕线,避免产生短路。在这三个 模块上方,直接使用第 6 层金属线打孔,将其电源交错连接值顶层金属,完成了其电 源绕线。标准单元的自身电源线使用第一层金属,标准单元的配置是由 row 约束, row 是布图中横向排列的网格,相邻的 row 方向相反,标准单元在布置时,会紧紧摆 放到 row 上,在第一层金属电源规划中,将在 row 上配置电源线 follow pin 并且 GND 和 VDD 交错配置。这样就完成了标准单元的供电网络,并实现了电源网络均匀分布。

经过上面的分析,已经大致介绍了宏单元和标准单元的供电网络,下面以一个 IO 单元为例,介绍 IO 模块的供电网络。

在这里插入图片描述
由图 3.9 可知,该 IO 模块自身电源线(metal 8)一共包括 3 种电源线,MVAA_PLL-
-用来接受模拟电压 PLL_VDD,MVDD–用来接受核心电压 CORE_VDD,MVDDQ–用来接受 DDR 电压 DDR_VDDQ。根据 IO 模块自身的分布,完成第 8 层金属的电源 规划,将 IO 单元接入至供电单元。

电源条线的宽度,间距由工艺厂提供的 lef 文件,布线资源,电压降情况决定。 经过不断调整和综合考虑,定下电源条线参数如表 3.4 所示。最终,利用 Innovus 工 具添加 Bump 以及手动规划 RDL 铝层,完成整个供电网络。

在这里插入图片描述
在这里插入图片描述
由图 3.10 可知,Data phy 内部顶层使用 metal5,且为横向,所以通过 metal7 的 电源线与 metal5 直接相连进行供电。图 3.11 为本次电源网络方案的最终设计图。

在这里插入图片描述
在布图规划阶段,完成了芯片尺寸的确定,I/O 单元,宏单元和特殊单元的布局, 并完成电源网络的规划。到目前为止,芯片的数字后端版图已基本完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/60843.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实现金蝶云与MySQL的无缝数据集成

金蝶云与MySQL的费用申请单数据集成案例 金蝶云星空数据集成到MySQL的技术案例分享 在企业信息化系统中,数据的高效流转和准确对接是业务顺利运行的关键。本文将聚焦于一个具体的系统对接集成案例:如何通过轻易云数据集成平台,将金蝶云星空中…

Flink Source 详解

Flink Source 详解 原文 flip-27 FLIP-27 介绍了新版本Source 接口定义及架构 相比于SourceFunction,新版本的Source更具灵活性,原因是将“splits数据获取”与真“正数据获取”逻辑进行了分离 重要部件 Source 作为工厂类,会创建以下两…

Android Settings 单元测试 | 如何运行单元测试?

背景 在Android Settings 单元测试 | Telephony Network 模块 APN 案例中粗略介绍了单元测试逻辑内容,但是在独立APK里面如何将单元测试跑起来还是有疑问,因为APP不能直接install,无法借助Android Studio直接Run,在安装的一步会报…

【Qt聊天室】客户端实现总结

目录 1. 项目概述 2. 功能实现 2.1 主窗口设计 2.2 功能性窗口 2.3 主界面功能实现 2.4 聊天界面功能实现 2.5 个人信息功能开发 2.6 用户信息界面设置功能 2.7 单聊与群聊 2.8 登录窗口 2.9 消息功能 3. 核心设计逻辑 3.1 核心类 3.2 前后端交互与DataCenter 4…

java瑞吉外卖

环境搭建 一、数据库环境搭建 1.新建数据库reggie&#xff0c;这里字符集一般用utf8mb4&#xff0c;排序规则一般用utf8mb4_general_ci或utf8mb4_unicode_ci 2.然后导入表结构 二、创建springboot工程 然后检查maven仓库设置&#xff0c;jdk 这是我的pom.xml文件 <?xml …

App Store用户评论如何影响ASO优化

您是否专注于提高应用的知名度&#xff0c;并想知道应用商店评分和用户评论如何发挥作用&#xff1f;应用商店用户评论和评分对于塑造应用的成功至关重要&#xff0c;并且可以显著影响您的应用商店优化 (ASO) 策略。本文提供了利用这些元素为您带来优势的见解和策略。 如今&…

我谈二值形态学基本运算——腐蚀、膨胀、开运算、闭运算

Gonzalez从集合角度定义膨胀和腐蚀&#xff0c;不易理解。 Through these definitions, you can interpret dilation and erosion as sliding neighborhood operations analogous to convolution (or spatial filtering). 禹晶、肖创柏、廖庆敏《数字图像处理&#xff08;面向…

【AIGC】如何通过ChatGPT提示词Prompt定制个性学习计划

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AIGC | 提示词Prompt应用实例 文章目录 &#x1f4af;前言&#x1f4af;提示词&#x1f4af;配置信息使用方法 &#x1f4af;指令/language/plan/start/test/continue/config &#x1f4af;小结 &#x1f4af;前言 在这篇文章中…

RFID被装信息化监控:物联网解决方案深入分析

被装物联网信息化监控构成了一套复杂而高效的处理方案&#xff0c;它巧妙地将物联网技术与被装资源管理的具体需求相结合&#xff0c;实现了对被装资源实时监控、智能化调控和优化分配。以下是对被装物联网信息化监控的详细说明&#xff1a; 一、被装物联网信息化监控的定义 …

C++ 关于类与对象(中篇)一篇详解!(运算符重载)

赋值运算符重载 运算符重载 C 为了 增强代码的可读性 引入了运算符重载 &#xff0c; 运算符重载是具有特殊函数名的函数 &#xff0c;也具有其返回值类型&#xff0c;函数名字以及参数列表&#xff0c;其返回值类型与参数列表与普通的函数类似。 函数名字为&#xff1a;关键…

有效对接礼顿销售单:从数据获取到金蝶云存储

礼顿销售单对接项目&#xff1a;轻松实现数据集成 礼顿销售单对接&#xff08;91-零售业务/5-代销售(供货商发货)&#xff09; 在礼顿销售单对接项目中&#xff0c;我们面临的主要任务是将吉客云奇门的数据集成到金蝶云星空平台。这个过程不仅需要确保数据的准确性和完整性&am…

【C++】—— map 与 set 深入浅出:设计原理与应用对比

不要只因一次失败&#xff0c;就放弃你原来决心想达到的目的。 —— 莎士比亚 目录 1、序列式容器与关联式容器的概述与比较 2、set 与 multiset 2.1 性质分析&#xff1a;唯一性与多重性的差异 2.2 接口解析&#xff1a;功能与操作的全面解读 3、map 与 multimap 3.1 性…

基于微信小程序的平安驾校预约平台的设计与实现(源码+LW++远程调试+代码讲解等)

摘 要 互联网发展至今&#xff0c;广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对高校教师成果信息管理混乱&#xff0c;出错率高&#xff0c;信息安全性差&#xff0c;劳动强度大&#xff0c;费时费力…

SpringBoot+Vue3开发会议管理系统

1 项目介绍 会议管理系统&#xff0c;简化公司内会议方面的流程&#xff0c;提供便捷。实现对会议室的管理、会议的管理、会议预约的管理&#xff0c;三大主流程模块。 系统分为三种角色&#xff0c;分别是员工、管理员和超级管理员。 员工角色功能&#xff1a;查看会议室占…

Docker环境搭建Cloudreve网盘服务(附shell脚本一键搭建)

Docker搭建Cloudreve Cloudreve介绍&#xff1a; Cloudreve 是一个基于 ThinkPHP 框架构建的开源网盘系统&#xff0c;旨在帮助用户以较低的成本快速搭建起既能满足个人也能满足企业需求的网盘服务。Cloudreve 支持多种存储介质&#xff0c;包括但不限于本地存储、阿里云OSS、…

Cadence安装

记录一下安装过程&#xff0c;方便以后安装使用Cadence。 去吴川斌的博客下载安装包&#xff0c;吴川斌博客&#xff1a; https://www.mr-wu.cn/cadence-orcad-allegro-resource-downloads/ 下载阿狸狗破戒大师 我这边下载的是版本V3.2.6&#xff0c;同样在吴川斌的博客下载安装…

系统架构设计师:系统架构设计基础知识

从第一个程序被划分成模块开始&#xff0c;软件系统就有了架构。 现在&#xff0c;有效的软件架构及其明确的描述和设计&#xff0c;已经成为软件工程领域中重要的主题。 由于不同人对Software Architecture (简称SA) 的翻译不尽相同&#xff0c;企业界喜欢叫”软件架构“&am…

Java Web 工程全貌

通过下图&#xff0c;我们可以一览 Java Web 工程的全貌 通过上图&#xff0c;我们能够基本窥探整个 Java Web 工程的面貌&#xff0c;包括前端&#xff0c;后端&#xff0c;甚至是运维。 接下来&#xff0c;我们就结合文字描述&#xff0c;加深理解。 部署Vue前端和Spring…

Linux入门:环境变量与进程地址空间

一. 环境变量 1. 概念 1️⃣基本概念&#xff1a; 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数 如&#xff1a;我们在编写C/C代码的时候&#xff0c;在链接的时候&#xff0c;从来不知道我们的所链接的动态静态库在哪里&#x…

【优选算法 — 滑动窗口】水果成篮 找到字符串中所有字母异位词

水果成篮 水果成篮 题目描述 因为只有两个篮子&#xff0c;每个篮子装的水果种类相同&#xff0c;如果从 0 开始摘&#xff0c;则只能摘 0 和 1 两个种类 &#xff1b; 因为当我们在两个果篮都装有水果的情况下&#xff0c;如果再走到下一颗果树&#xff0c;果树的水果种类…