数字IC后端设计实现OCC(On-chip Clock Controller)电路介绍及时钟树综合案例

数字IC后端时钟树综合专题(OCC电路案例分享)
复杂时钟设计时钟树综合(clock tree synthesis)常见20个典型案例
1、什么是OCC?
片上时钟控制器(On-chip Clock Controllers ,OCC),也称为扫描时钟控制器(Scan Clock Controllers,SCC)。OCC 是插在SoC上的逻辑电路。在ATE(自动测试设备)上对芯片做ATPG测试时,OCC用于控制内部scan flip-flop时钟。
OCC电路可以实现ate clock和function clock之间的切换,并且控制在什么时刻跳转。所以standard的OCC在设计时需要拥有三个主要功能:clock selection, clock chopping control and clock gating。

2、OCC的架构及功能
这里我们会介绍一下Synopsys的OCC 1.0 ,Synopsys的OCC定义了多个输入输出端口:

-OCC的基本逻辑
下图显示了one-single clock OCC的概念操作,未显示电路实现细节,本文目的是演示它是如何工作的。
当OCC处于function mode时,test mode = 0,此时pll _clk选通,OCC会向内部 design输入function clock,此时可以将OCC电路视为transparent。

当OCC处于shift mode时,我们在ate clock的控制下将测试向量load进internal scan chain和clock chain内,所以test mode = 1,scan_en = 1,此时ate _clk选通,完成shift操作。

OCC的shift mode
Synopsys的OCC 1.0 没有真正的slow capture mode,需要做stuck-at 测试时,可以直接从ATE机台提供OCC bypass mode capture clock。通过外部ATE机台对ate clock的pulse进行适当的控制就可以进行stuck-at测试,不需要clock chain的控制。此时test mode = 1,pll_bypass = 1。


OCC的bypass mode
当OCC处于fast capture mode时,期望在capture阶段生成两个function clock脉冲。所以test mode = 1,scan_en = 0,pll_bypass = 0,此时pll _clk选通,并且PLL cycle counter 和clock chain的输出经过ICG共同决定gating几个时钟脉冲,完成at-speed测试。
OCC的fast capture mode
Fast capture mode的波形图如下图所示,下面我们来简单地分析一下。

Fast capture mode波形图
当我们进行capture操作时,scan enable信号要从1变为0,为了保证得到的是稳定的0信号,我们需要先经过sync cell的3个synchronization cycles。
通过先前shift过程中load在clock chain里的test pattern(0110)以及PLL cycle counter的共同控制,在第2、3个cycle给出两个pulse,即launch和capture。
最后scan enable信号从0变为1,完成capture的操作,进入shift过程。
需要注意的是,对于Synopsys的OCC,Scan_en = 1后,ate clock在第二个pulse才出现 ,此过程被称为pre_shift 。
介绍完OCC电路的结构和工作模式后,我们来看看一个包含OCC设计的时钟树综合。一般来说这个电路在长clock tree阶段不做特殊处理,func clock的时钟树会被拖得比较长。
下图所示为典型OCC电路的时钟结构(本次复杂时钟clock gen训练营新增案例)。欢迎大家来讨论应该如何长clock tree? 如果直接让工具自动做clock tree,通常会遇到哪些问题?

相关文章:
数字IC后端设计实现OCC(On-chip Clock Controller)电路介绍及时钟树综合案例
数字IC后端时钟树综合专题(OCC电路案例分享) 复杂时钟设计时钟树综合(clock tree synthesis)常见20个典型案例 1、什么是OCC? 片上时钟控制器(On-chip Clock Controllers ,OCC),也称为扫描时钟控制器(Scan Clock Con…...
Linux内核,slub分配流程
我们根据上面的流程图,依次看下slub是如何分配的 首先从kmem_cache_cpu中分配,如果没有则从kmem_cache_cpu的partial链表分配,如果还没有则从kmem_cache_node中分配,如果kmem_cache_node中也没有,则需要向伙伴系统申请…...
本地部署DeepSeek-R1(Ollama+Docker+OpenWebUI知识库)
安装Ollama 打开 Ollama官网 https://ollama.com/下载安装 Ollama服务默认只允许本机访问,修改允许其它主机访问 OLLAMA_HOST0.0.0.0 ollama serve也可以添加系统环境变量 都知道模型体积很大,顺便也通过环境变量修改模型存放位置,我这…...
Java 实现快速排序算法:一条快速通道,分而治之
大家好,今天我们来聊聊快速排序(QuickSort)算法,这个经典的排序算法被广泛应用于各种需要高效排序的场景。作为一种分治法(Divide and Conquer)算法,快速排序的效率在平均情况下非常高ÿ…...
20250223下载并制作RTX2080Ti显卡的显存的测试工具mats
20250223下载并制作RTX2080Ti显卡的显存的测试工具mats 2025/2/23 23:23 缘起:我使用X99的主板,使用二手的RTX2080Ti显卡【显存22GB版本,准备学习AI的】 但是半年后发现看大码率的视频容易花屏,最初以为是WIN10经常更换显卡/来回更…...
element-ui的组件使用
1. 安装 Element UI(在文件夹最上面输入cmd进入dos窗口,然后输入安装指令 npm install element-ui --save) 2.在main.js文件全局引入(main.js文件负责 全局注册 ),在该文件注册的所有组件在其他文件都能直接调用,一般…...
医疗AI领域中GPU集群训练的关键技术与实践经验探究(上)
医疗AI领域中GPU集群训练的关键技术与实践经验探究(上) 一、引言 1.1 研究背景与意义 在科技飞速发展的当下,医疗 AI 作为人工智能技术与医疗领域深度融合的产物,正引领着医疗行业的深刻变革。近年来,医疗 AI 在疾病诊断、药物研发、健康管理等诸多方面取得了显著进展,…...
详解Redis淘汰策略
引言 Redis 是一个高性能的内存数据库,广泛应用于缓存系统、消息队列等场景。当 Redis 的内存达到限制时,需要根据一定的策略来淘汰数据,以便腾出空间给新数据。本文将深入解析 Redis 的内存淘汰机制,帮助更好地配置 Redis&#…...
HarmonyOS 5.0应用开发——鸿蒙接入高德地图实现POI搜索
【高心星出品】 文章目录 鸿蒙接入高德地图实现POI搜索运行结果:准备地图编写ArkUI布局来加载HTML地图 鸿蒙接入高德地图实现POI搜索 在当今数字化时代,地图应用已成为移动设备中不可或缺的一部分。随着鸿蒙系统的日益普及,如何在鸿蒙应用中…...
nginx关于配置SSL后启动失败原因分析
在配置SSL后,启动./nginx失败,报错提示如下: nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx-1.27.4/conf/nginx.conf:36 这个错误提示表在配置nginx启用SSL时,nginx未启用 ng…...
【自学嵌入式(9)ESP8266网络服务器的使用】
ESP8266网络服务器的使用 ESP8266WiFi 库① WiFiClass② WiFiClient③ WiFiServer④ WiFiUDP ESP8266WiFiMulti 库① WiFiMulti ESP8266WebServer 库① ESP8266WebServer 网络服务器实例在浏览器中控制ESP8266指示灯将开发板引脚状态显示在网页中 在之前的文章中,曾…...
危化品经营单位安全管理人员的职责及注意事项
危化品经营单位安全管理人员肩负着保障经营活动安全的重要责任,以下是其主要职责及注意事项: 职责 1. 安全制度建设与执行:负责组织制定本单位安全生产规章制度、操作规程和生产安全事故应急救援预案,确保这些制度符合国家相关法…...
项目实战--网页五子棋(匹配模块)(5)
上期我们实现了websocket后端的大部分代码,这期我们实现具体的匹配逻辑 1. 定义Mather类 我们新建一个Matcher类用来实现匹配逻辑 Component public class Matcher {//每个匹配队列代表不同的段位,这里约定每一千分为一个段位private ArrayList<Queue<User…...
mysql 迁移到人大金仓数据库
我是在windows上安装了客户端工具 运行数据库迁移工具 打开 在浏览器输入http://localhost:54523/ 账号密码都是kingbase 添加mysql源数据库连接 添加人大金仓目标数据库 添加好的两个数据库连接 新建迁移任务 选择数据库 全选 迁移中 如果整体迁移不过去可以单个单个或者几个…...
uniapp 网络请求封装(uni.request 与 uView-Plus)
一、背景 在开发项目中,需要经常与后端服务器进行交互;为了提高开发效率和代码维护性,以及降低重复性代码,便对网络请求进行封装统一管理。 二、创建环境文件 2.1、根目录新建utils文件夹,utils文件夹内新建env.js文…...
计算机网络与通讯知识总结
计算机网络与通讯知识总结 基础知识总结 1)FTP:文件传输 SSH:远程登录 HTTP:网址访问 2)交换机 定义:一种基于MAC地址实现局域网(LAN)内数据高速转发的网络设备,可为接入设备提供独享通信通道。 - 核心功能: 1.数据链路层(OSI第二层)工作,通过MAC地址…...
DPVS-2:单臂负载均衡测试
上一篇编译安装了DPVS,这一篇开启DPVS的负载均衡测试 : 单臂 FULL NAT模式 拓扑-单臂 单臂模式 DPVS 单独物理机 CLINET,和两个RS都是另一个物理机的虚拟机,它们网卡都绑定在一个桥上br0 , 二层互通。 启动DPVS …...
open webui 部署 以及解决,首屏加载缓慢,nginx反向代理访问404,WebSocket后端服务器链接失败等问题
项目地址:GitHub - open-webui/open-webui: User-friendly AI Interface (Supports Ollama, OpenAI API, ...) 选择了docker部署 如果 Ollama 在您的计算机上,请使用以下命令 docker run -d -p 3000:8080 --add-hosthost.docker.internal:host-gatewa…...
交通物联网:概念、历史、现状与展望
交通物联网:概念、历史、现状与展望 李升伟 李昱均 一、概念 交通物联网(Internet of Vehicles, IoV)是物联网(IoT)在交通领域的延伸,旨在通过信息传感设备,实现车、路、人、云之间的全方位连…...
如何实现应用程序与中间件的类进行隔离
以下是一些可以实现类似阿里巴巴 Pandora 功能的框架和工具,这些项目可以帮助你实现类隔离以及中间件和应用的 JAR 包隔离: 1. Pandora Boot Pandora Boot 是阿里巴巴开源的一个基于 Pandora 的轻量级隔离容器,用于管理第三方包,…...
如何快速掌握抖音下载器:面向内容创作者的完整工具指南
如何快速掌握抖音下载器:面向内容创作者的完整工具指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback supp…...
深度学习实战:基于TextCNN的新闻分类模型构建与调优全解析
1. TextCNN新闻分类模型的核心原理 TextCNN作为卷积神经网络在文本领域的经典应用,其核心思想是将图像处理中的卷积操作迁移到文本序列上。想象一下,我们用不同尺寸的筛子(卷积核)在文本上滑动,每个筛子都能捕捉特定长…...
Intv_AI_MK11 Node.js 环境集成教程:构建全栈智能应用
Intv_AI_MK11 Node.js 环境集成教程:构建全栈智能应用 1. 开篇:为什么选择Node.js集成AI能力 如果你是一名Node.js开发者,想要给自己的应用添加AI能力,这篇教程就是为你准备的。我们将一步步带你完成从零开始的环境搭建…...
【实战解析】ESP12F在STA+AP双模下的无线网卡实现与驱动优化
1. ESP12F双模工作原理深度解析 ESP12F模块作为ESP8266系列中的明星产品,其STAAP双模工作能力堪称物联网开发的"瑞士军刀"。想象一下你的手机既能连接家里路由器(STA模式),又能开热点给平板用(AP模式&#…...
G-Helper:华硕笔记本用户如何告别臃肿控制软件,实现极致性能优化?
G-Helper:华硕笔记本用户如何告别臃肿控制软件,实现极致性能优化? 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting acro…...
京东购物评价自动化终极指南:告别繁琐评价,释放你的宝贵时间
京东购物评价自动化终极指南:告别繁琐评价,释放你的宝贵时间 【免费下载链接】jd_AutoComment 自动评价,仅供交流学习之用 项目地址: https://gitcode.com/gh_mirrors/jd/jd_AutoComment 还在为京东购物后堆积如山的评价任务而烦恼吗?…...
JADX深度解析:如何高效反编译Android应用并理解其内部架构
JADX深度解析:如何高效反编译Android应用并理解其内部架构 【免费下载链接】jadx Dex to Java decompiler 项目地址: https://gitcode.com/gh_mirrors/ja/jadx JADX作为Android逆向工程领域的核心工具,能够将Dex字节码转换为可读的Java源代码。这…...
【JVM深度解析】第25篇:volatile与synchronized深度原理
摘要 volatile 和 synchronized 是 Java 并发编程中最常用的两个关键字,但它们的底层原理却大不相同。volatile 通过内存屏障保证可见性和有序性(无原子性),synchronized 通过监视器锁保证原子性、可见性和有序性。本文深入解析两…...
通用人工智能(AGI)与当前大模型的本质区别(2024权威白皮书级对比:自主目标生成、跨域因果推理、元认知闭环)
第一章:通用人工智能(AGI)与当前大模型的本质区别 2026奇点智能技术大会(https://ml-summit.org) 通用人工智能(AGI)指具备跨领域自主推理、目标建模、持续学习与具身适应能力的系统,其认知架构不依赖于海…...
AGI技术路线图实战手册:用NASA级系统工程方法拆解通用智能——含可复用的6阶段验证框架与失败率预警阈值
第一章:AGI技术路线图:从当前AI到通用智能 2026奇点智能技术大会(https://ml-summit.org) 当前人工智能系统在特定任务上已展现出超越人类的表现,但其本质仍是窄域智能(Narrow AI)——依赖大量标注数据、固定分布假设…...
