SoC芯片中Clock Gen和Reset Gen的时钟树综合

news2025/1/17 1:17:22

社区目前已经开设了下面列举的前四大数字后端实战课程,均为直播课,且均是小编本人亲自授课!遇到项目问题,都可以远程一对一指导解决具体问题。小编本人是一线12年后端经验的数字后端工程师。想找一线IC后端技术专家亲自带你做后端实战项目的同学,可以私信。

社区第四期复杂时钟设计Clock Gen时钟树综合训练营将于10月19号正式开班!超小班教学,星主亲自授课!

本期包含两个复杂时钟clock gen设计,即在原来clock gen设计项目的基础上另外再加入一个更复杂的clock gen设计(包含1000 clock +)。

复杂时钟clock gen结构

复杂时钟设计时钟树综合(clock tree synthesis)常见20大问题
数字IC后端设计实现系列课程

CRG全称是Clock &Reset Generator。所以它包含两大部分,一部分是时钟产生电路,另外一部分是时钟复位电路。下方为小编画的一个SoC芯片中CRG的思维导图。作为一名资深的IC后端工程师还是需要对这里面的Clock Generator有一定的了解。我们可以不用自己去写各种时钟产生电路的代码,但一定要对这些电路结构有所了解。这样才比较有利于我们做时钟树综合。

在这里插入图片描述

数字IC后端时钟树综合专题(OCC电路案例分享)

对于时钟复位和咱们数字后端工程师相关的就是在做时序检查timing signoff时会看到recovery和removal的timing问题。

在这里插入图片描述

一般来说整个SoC芯片的CRG设计是由相对比较资深的IC前端设计工程师来完成的。并且他们还会整理出整个设计的时钟结构框图。对于设计中存在分频的点必须明确在文档中指出,以免出现后续写时序约束SDC遗漏时钟的情况。

在这里插入图片描述

下图所示为咱们社区复杂时钟结构clock gen设计时钟树训练营项目的时钟结构图。咱们每个学员都可以根据design的netlist轻松画出来如下所示的时钟结构图。

在这里插入图片描述

在这里插入图片描述

社区新一期复杂时钟Clock Gen时钟树综合训练营将于10月份正式开班!本期将在原来项目的基础上再增加一个1000+个clock的项目。
在这里插入图片描述

下图为一个典型的SoC芯片的时钟结构图。这里展示的部分均为Clock Generator。

在这里插入图片描述

整个芯片的时钟源头为外部晶振输入的32K或24MHz。这个外部时钟通过IO送给芯片中的各个PLL锁相环,经过图中的各个Clock 开关Switch(ICG),再经过分频电路和无毛刺时钟切换电路,最终送给各个数字和模拟IP(局部也会送到IO作为时钟观测用)。

在这里插入图片描述

【思考题】下图为一个典型的时钟结构设计,我们应该如何来做时钟树综合?CTS Constraint需要怎么写?
在这里插入图片描述

写这个CRG时还需要和DFT工程师沟通好mbist,occ时钟的结构(不同OCC属于异步关系)。如果这里设计不合理会导致后续timing完全收敛不了。经常会出现scan测试模式hold violation特别大,其根本原因是时钟结构不合理,长tree过程是完全按照异步来做,但最终时序检又是同步的。这种情况的timing signoff一定会让你崩溃的。

下图所示为一个典型的OCC电路,这里面包含三路时钟,分别是fast_clock,slow_clock和ijtag_clock。针对这种OCC电路,我们在做时钟树综合时必须把不相干的clock隔开开,否则会出现IP和OCC Controller中的寄存器tree被拖长的情况。
在这里插入图片描述

芯片Tapeout前到底应该如何来做signoff?

数字IC后端时钟树综合专题(OCC电路案例分享)

Lockup latch的用法,看这个就够了

【惊呆了】你居然还在用flatten方式进行timing signoff

所以做大型SOC芯片必须要有相对比较懂后端概念的前端工程师和懂得分析时钟结构的后端工程师。这两个条件具备了,我们就可以把后续timing signoff可能遇到的问题提前规避掉。特别是大型走hierarchy flow的设计,前期没有做flatten timing时可能还看不到时钟拼接起来的问题。

无毛刺时钟切换电路时钟树综合方案

关于异步复位同步释放的内容,有兴趣的同学可以查看小编2018年写的这篇文章。深度揭秘异步复位同步释放原理

异步复位同步释放原理

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

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

相关文章

Java Fork-Join框架学习

概述 Fork/Join是Java7提供的一个用于并行执行任务的框架,是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。Fork负责把一个大任务切分为若干并行执行的子任务,Join负责合并这些子任务的执行结果&#xff0…

Ubuntu系衍生版手动修改配置网卡的配置总结

一、Ubuntu系的IP地址配置文件的目录: sudo vim /etc/network/interfaces 二、以DHCP方式配置网卡: 在以上配置文件中添加以下两行: auto enp3s0 iface enp3s0 inet dhcp 三、为网卡配置静态IP地址: 在以上配置文件中添…

实验3,网络地址转换

实验3:网络地址转换 实验目的及要求: 通过实验,掌握NAT技术的工作原理,了解三种不同类型NAT技术的主要作用以及各自的主要应用环境。能够完成静态NAT和复用NAT技术的应用,并熟练掌握NAT技术相关的配置命令。 实验设…

el-date-picker选择时间后标准时间少1小时问题

问题 前端开发中发现Element的时间组件el-date-picker在选择选择部分时间后js对象的标准时间少1小时,如果选择的小时为0,会导致部分转换条件下结果少1天。 比如组件中选择的本地时间为: 1988-08-01 00:00:00 而js对象获取到是标准时间是&am…

ubuntu 安装kali命令补全功能

输入命令时,之前的命令会以阴影显示,按下右键或 Tab 键可以直接补全 安装zsh-autosuggestions sudo apt install zsh-autosuggestions编辑 ~/.zshrc环境变量 if [ -f /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh ]; then. /usr/share/zs…

【从零开始的LeetCode-算法】945. 使数组唯一的最小增量

给你一个整数数组 nums 。每次 move 操作将会选择任意一个满足 0 < i < nums.length 的下标 i&#xff0c;并将 nums[i] 递增 1。 返回使 nums 中的每个值都变成唯一的所需要的最少操作次数。 生成的测试用例保证答案在 32 位整数范围内。 示例 1&#xff1a; 输入&am…

【Hadoop】HDFS基本操作

参考&#xff1a;3.HDFS基本操作_哔哩哔哩_bilibili 创建目录 hadoop fs -mkdir -p /training/qiang查看当前根目录下文件 hadoop fs -ls /hadoop fs -ls /training/目录授权 hadoop fs -chmod -R 777 /training/qm777是最大权限&#xff0c;读写 4、2、1 上传文件 先创…

YZ系列工具之YZ09:VBA_Excel之读心术

我给VBA下的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。我的教程一共九套一部VBA手册&#xff0c;教程分为初级、中级、高级三大部分。是对VBA的系统讲解&#xff0c;从简单的…

Python自动化脚本裁剪图片为1:1比例

一、创建输入文件夹&#xff08;in&#xff09;和输出文件夹&#xff08;out&#xff09;&#xff0c;将原始图片放在输入文件夹&#xff08;in&#xff09;里 二、 安装对应的Python库 pip install Pillow 三、编写自动化脚本代码 import os from PIL import Imagedef crop…

Axure RP电商系统商城PC+app+后台买家卖端高保真原型模板及元件库

AxureRP电商商城PCapp后台买家卖端高保真原型模板本套包含三份原型图素材 APP买家端原型简介&#xff1a; 包含了用户中心、会员成长、优惠券、积分、互动社区、运营推广、内容推荐、商品展示、订单流程、订单管理、售后及服务等完整的电商体系功能架构和业务流程。 本模板由…

Spring中ApplicationEvent事件的实现

1&#xff09;简介 Spring Event (接口名为Aplication Event) 观察者设计模式&#xff0c;由事件发起者publisher发布事件&#xff08;指定事件名&#xff09;&#xff0c;事件监听者监听事件&#xff08;指定事件名&#xff09;。 好比&#xff0c; A 说了一句话&#xff0c…

安卓14无法安装应用解决历程

客户手机基本情况&#xff1a; 安卓14&#xff0c;对应的 targetSdkVersion 34 前天遇到了安卓14适配问题&#xff0c;客户发来的截图是这样的 描述&#xff1a;无法安装我们公司的B应用。 型号&#xff1a;三星google美版 解决步骤&#xff1a; 1、寻找其他安卓14手机测试…

从源码到平台:使用视频美颜SDK构建高性能直播美颜系统详解

本文将深入探讨如何从源码出发&#xff0c;借助视频美颜SDK构建一套高性能的直播美颜系统&#xff0c;涵盖技术架构、核心功能的实现以及性能优化等方面的详解。 一、视频美颜SDK的作用与选择 视频美颜SDK是开发直播美颜系统的基础&#xff0c;它能够提供实时美颜处理功能&am…

STM32的GPIO片上外设

一、STM32的片上外设 片上外设是集成在 MCU 芯片内部的硬件模块&#xff0c;它们通过片内总线与 CPU 直接通信&#xff0c;而不是通过外部引脚或接口连接的设备。 片上外设&#xff1a; 包括 UART、I2C、SPI、ADC、定时器、GPIO、DMA、RTC 等集成在 MCU 内部的模块。这些外设…

《Linux从小白到高手》综合应用篇:深入理解Linux磁盘及IO优化

1. 前言 其实磁盘优化和IO优化&#xff0c;我在前面的其他Linux调优博文中已经讲述过或者涉及过了&#xff0c;但是太过零碎&#xff0c;所以本篇就来集中深入讨论下Linux磁盘和IO调优。 2.磁盘调优 结合我多年的经验&#xff0c;本人认为磁盘调优最重要的是读写性能的提升和…

Unity 实战案例全解析 实现时间停止效果+世界变灰

画面里运动的那个小玩意这么写 using System.Collections; using System.Collections.Generic; using UnityEngine;public class Partol : MonoBehaviour {public Transform pos1;public Transform pos2;public float speed;private Transform target;void Start() {target p…

SpringBoot智能推荐:健康生活新选择

3系统分析 3.1可行性分析 通过对本基于智能推荐的卫生健康系统实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本基于智能推荐的卫生健康系统采用SSM框架&#…

二叉查找树(Binary Search Tree)Java语言实现

一、二叉查找树 二叉查找树&#xff08;Binary Search Tree&#xff09;&#xff0c;也称为二叉搜索树、有序二叉树&#xff08;Ordered Binary Tree&#xff09;或排序二叉树&#xff08;Sorted Binary Tree&#xff09;。 是指一棵空树或者具有下列性质的二叉树&#xff1a…

Unity DOTS中的Archetype与Chunk

Unity DOTS中的Archetype与Chunk 在Unity中&#xff0c;archetype&#xff08;原型&#xff09;用来表示一个world里具有相同component类型组合的entity。也就是说&#xff0c;相同component类型的entity在Unity内部会存储到一起&#xff0c;共享同一个archetype。 使用这样的设…

JAVA毕业设计191—基于Java+Springboot+vue的电子产品商城管理系统(源代码+数据库)

毕设所有选题&#xff1a; https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootvue的电子产品商城管理系统(源代码数据库)191 一、系统介绍 本项目前后端不分离&#xff0c;分为用户、管理员两种角色 1、用户&#xff1a; 注册、登录、商品…