数字IC后端低功耗设计实现案例分享(3个power domain,2个voltage domain)

下图所示为咱们社区T12nm A55低功耗实现项目。其实这个项目还可以根据产品的需求做一些改进。改进后项目实现的难度会大大增加。也希望通过今天的这个项目案例分享,帮助到今年IC秋招的同学。

芯片低功耗设计实现upf编写指南(附低功耗项目案例)
在这里插入图片描述

T12nm工艺数字IC后端实现难点都有哪些?

如何规避顶层Top到子模块接口的setup和hold violation?

Timing Signoff之check_timing检查(今晚19:10分直播)

这个T12nm A55低功耗项目使用的upf部分截图如下所示。

在这里插入图片描述
在这里插入图片描述

低功耗数字IC后端设计实现典型案例| UPF Flow如何避免工具乱用Always On Buffer?

比如下图所示的A55包含三个Power Domain,分别是PDCPU(PD_PSO),PDSYS(PD_AW_ON)和PDCPU_MEM。

在这里插入图片描述

这里把PDCPU子power domain中的Memory又划了一个单独的power domain。如果想再复杂点,还可以按照不同memory划分成多个memory的power domain。

【思考题】PDCPU_mem这个Power Domain的powerplan应该如何设计?

这里的Memory需要选用自带power gating的memory类型,这些memory的端口也有类似power switch cell NSLEEP信号,用来控制memory的开和关。

在这里插入图片描述
在这里插入图片描述

所以这样的设计不仅要给PDCPU中的power switch cell串链,还需要给memory串链。

假如所有Memory是串在一条chain上,那么大体上串链的结果如下图所示。稍微有点sense的数字后端工程师看到这里就知道此时会有max transition violation。

在这里插入图片描述

低功耗设计实现典型案例| UPF Flow如何避免工具乱用Always On Buffer?

图片

这些max transition violation主要出现在以下几个地方。

左侧memory和右侧memory进行chain连接的net

memory_req和memory_ack信号(第一颗memory和最后一颗memory)

【思考题】memory_req和memory_ack信号在PDSYS Domain中是否需要插always on buffer? Memory之间这根串链信号在PR阶段是否需要特殊处理?为什么?

对于两个power domain中的power switch cell串链,需要留意到PDSYS Power Domain也是需要power off的,只不过它比PDCPU更AON(PDCPU OFF,PDSYS ON)。所以这两个power domain内部的power switch cell链不能串在一起,串链控制信号也必须从外部单独提供。

在这里插入图片描述

此外,还可以时序要求,把PDCPU和PDSYS做成两个Voltage Domain即两边工作电压不一样。此时upf还需要描述这两个domain边界处的Level Shifter 的约束。

对于从PDCPU—> PDSYS这个方向的接口信号,需要让工具添加ELS(Isolation cell + LS)。

对于从PDSYS—> PDCPU这个方向的接口信号,只需要插普通的LS。

在这里插入图片描述

【思考题】Enable Level Shifter Cell是应该选用source还是destination类型的?

在这里插入图片描述

另外还需要注意isolation cell和level shifter cell的摆放要求。比如isolation cell到底应该放在哪个power domain?isolation cell或Enable Level Shifter Cell的input pin是否可以插普通buffer?

在这里插入图片描述

而且PR后端实现做完还需要去检查对于PD_PSO这个power domain所有输出的接口是否都有插上isolation cell。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu从入门到精通(一)系统安装

Ubuntu从入门到精通(一) 1 Ubuntu镜像选择 下载Ubuntu 20.04系统ISO镜像 安装 Ubuntu 20.04系统,就必须有 Ubuntu 20.04系统软件安装程序可以通过浏览器访问Ubuntu20.04的官方站点, 然后在导舰栏找划 Dowwnloads->Mirrors链接&#xff…

说说软件工程中的“协程”

在软件工程中,协程(coroutine)是一种程序运行的方式,可以理解成“协作的线程”或“协作的函数”。以下是对协程的详细解释: 一、协程的基本概念 定义:协程是一组序列化的子过程,用户能像指挥家…

【linux】进程等待与进程替换

🔥个人主页:Quitecoder 🔥专栏:linux笔记仓 目录 01.进程等待系统调用获取子进程status常用宏使用示例 02.进程替换替换函数关键点解释:代码详细分析execvpe 函数的使用 01.进程等待 任何子进程,在退出的…

认证鉴权框架SpringSecurity-5--权限管理篇

上面两篇我们重点介绍了如何在代码上集成springSecurity,同时完成登录认证和token认证的过程。我们直到springSecurity处理能帮我们完成认证外,还可以帮助我们完成权限校验的工作,这篇我们来重点介绍下springSecurity是如何实现鉴权的。 一、…

RK3588开发板Android12-SDK更新通知

迅为RK3588开发板Android12 SDK升级至RK的android-12.1-mid-rkr14版本 内核版本:升级至 5.10.160 版本,提供更好兼容性和性能。 rkbin 版本:支持最新的 1.17 版本 bin 和 1.46 版本的 bl31。

stm32教程:OLED屏显示字母、汉字、图片工程讲解

早上好啊,大佬们,今天带来的是我们 stm32系列的第一个外设——OLED,相信大家对于OLED都不陌生了吧,这个可以说每一个项目里的必需品了,单片机离不开OLED就像西方离不开耶路撒冷。 在生活中,我们见到的OLED的…

力扣 LeetCode 28. 找出字符串中第一个匹配项的下标(Day4:字符串)

解题思路: KMP算法 需要先求得最长相等前后缀,并记录在next数组中,也就是前缀表,前缀表是用来回退的,它记录了模式串与主串(文本串)不匹配的时候,模式串应该从哪里开始重新匹配。 next[ j - 1 ] 记录了 …

我与Linux的爱恋:进程间通信 匿名管道

​ ​ 🔥个人主页:guoguoqiang. 🔥专栏:Linux的学习 文章目录 匿名管道pipe 匿名管道 匿名管道(Anonymous Pipes)是Unix和类Unix操作系统中的一种通信机制,用于在两个进程之间传递数据。匿名…

Java之JDBC,Maven,MYBatis

前言 就是用来操作数据库的 1.JDBC快速入门 注意在使用前一定要导入jar包 在模块那里新建目录,新建lib,粘贴复制jar包,我这个jar设置的是模块有效 package test1017;import java.sql.Connection; import java.sql.DriverManager; import…

基于Matlab的碎纸片的自动拼接复原技术

碎纸片的自动拼接复原技术 摘要:破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。目前发现对碎纸片的拼接大部分由人工完成,准确率较高,但耗费大量人力财力及时间,效率很低。随着计算机技术的…

STM32 设计的较为复杂的物联网项目,包括智能家居控制系统,涵盖了硬件和软件的详细设计。

使用 STM32 设计的较为复杂的物联网项目,包括智能家居控制系统,涵盖了硬件和软件的详细设计。 一、硬件设计 微控制器:选择 STM32F4 系列微控制器,如 STM32F407ZGT6,具有高性能和丰富的外设资源。 传感器模块&#x…

1.7 JS性能优化

从输入url到页面加载完成都做了些什么 输入 URL - 资源定位符 http://www.zhaowa.com - http 协议 域名解析 https://www.zhaowa.com > ip 1. 切HOST? > 浏览器缓存映射、系统、路由、运营商、根服务器 2. 实际的静态文件存放? 大流量 > 多个…

LPDDR4芯片学习(四)——DDR Training

一、ZQ Calibration DDR 学习时间 (Part B - 6):DRAM ZQ 校正 - 知乎 (zhihu.com) 从原理上解释什么是DDR的ZQ校准? - 知乎 (zhihu.com) LPDDR4的训练(training)和校准(calibration)--ZQ校准(Calibration)_wonder_coole-腾讯云开发者社区 01 ZQ校准的…

pycharm分支提交操作

一、Pycharm拉取Git远程仓库代码 1、点击VCS > Get from Version Control 2、输入git的url,选择自己的项目路径 3、点击Clone,就拉取成功了 默认签出分支为main 选择develop签出即可进行开发工作 二、创建分支(非必要可以不使用&#xf…

鸿蒙实战:页面跳转

文章目录 1. 实战概述2. 实现步骤2.1 创建项目2.2 准备图片素材2.3 编写首页代码2.4 创建第二个页面 3. 测试效果4. 实战总结 1. 实战概述 实战概述:本实战通过ArkUI框架,在鸿蒙系统上开发了一个简单的两页面应用。首页显示问候语和“下一页”按钮&…

IDEA部署AI代写插件

前言 Hello大家好,当下是AI盛行的时代,好多好多东西在AI大模型的趋势下都变得非常的简单。 比如之前想画一幅风景画得先去采风,然后写实什么的,现在你只需描述出你想要的效果AI就能够根据你的描述在几分钟之内画出一幅你想要的风景…

深入理解 Spark 中的 Shuffle

Spark 的介绍与搭建:从理论到实践_spark环境搭建-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交:本地与集群模式全解析-CSDN博客 Spark on YARN:Spark集群模式…

常用在汽车PKE无钥匙进入系统的高度集成SOC芯片:CSM2433

CSM2433是一款集成2.4GHz频段发射器、125KHz接收器和8位RISC(精简指令集)MCU的SOC芯片,用在汽车PKE无钥匙进入系统里。 什么是汽车PKE无钥匙进入系统? 无钥匙进入系统具有无钥匙进入并且启动的功能,英文名称是PKE&…

人力资源招聘系统-提升招聘效率与质量的关键工具

在当今这个竞争激烈的商业环境中,企业要想在市场中立于不败之地,关键在于拥有高素质的人才队伍。然而,传统的招聘方式往往效率低下,难以精准匹配企业需求与人才特质,这无疑给企业的发展带来了不小的挑战。 随着科技的飞…

R语言贝叶斯分析:INLA 、MCMC混合模型、生存分析肿瘤临床试验、间歇泉喷发时间数据应用|附数据代码...

全文链接:https://tecdat.cn/?p38273 多模态数据在统计学中并不罕见,常出现在观测数据来自两个或多个潜在群体或总体的情况。混合模型常用于分析这类数据,它利用不同的组件来对数据中的不同群体或总体进行建模。本质上,混合模型是…