景芯SoC A72的时钟树分析

innovus的ctslog中的Clock DAG信息可以报出来CTS主要运行步骤的关键信息,比如clustering,balancing做完后的clock tree的长度,clock tree上所用的buffer、inverter,icg cell数量,clock skew等信息。我们以景芯SoC A72 TOP项目的maia_cpu core为例:

从clustering到balancing,clock ID(insertion delay)和buffer数量大幅增加,这是由于比如一些sinks存在于不同的skew groups,为了平衡skew group之间的skew,就会插入buffer并做大了clock ID,因此我们需要确认skew group的存在是否合理。

抓取cts.log中的Clock DAG

grep -E -A2 "Clock DAG" cts.log >> SoC_cts_Clock DAG.rpt

可以看到cell、sink的counts,也可以看到BUF、ICG的数量,接下来我们来看看景芯SoC A72 TOP的CLOCK ID和BUF个数的变化吧。

先看下景芯SoC A72项目的cts latency变化过程。​将Clock DAG和Primary reporting一起抓出来:

grep -E -A2 "Clock DAG|Primary reporting" cts.log >> SoC_cts_latency_debug.rpt

打开报告SoC_cts_latency_debug.rpt,Clustering之后,IDmin=0.431 IDmax=0.690

Reducing insertion delay后:IDmax从0.690降低到了0.652

Balancing后:IDmin从0.431升到了0.569,而IDmax从0.652略微降低到了0.648

请思考,为何Balancing后:IDmin从0.431升到了0.569?

相关推荐
栀秋666几秒前
从零开始调用大模型:使用 OpenAI SDK 实现歌词生成,手把手实战指南
前端·llm·openai
l1t几秒前
DeepSeek总结的算法 X 与舞蹈链文章
前端·javascript·算法
好好学习啊天天向上3 分钟前
最新:ubuntu上源码安装llvm,还没有成功
linux·运维·ubuntu
智航GIS22 分钟前
6.2 while循环
java·前端·python
2201_7578308723 分钟前
AOP核心概念
java·前端·数据库
雪人.25 分钟前
JavaWeb经典面试题
java·服务器·前端·java面试题
Stestack33 分钟前
ssh批量机器免密操作
linux·python·ssh
JIngJaneIL34 分钟前
基于java+ vue学生成绩管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端
小恒恒37 分钟前
2025 Vibe Coding 有感
前端·uni-app·trae
用户214118326360237 分钟前
dify案例分享-免费体验Dify + Qwen-Image-2512 文生图图生图全流程
前端