后仿之SDF 反标Warning的描述和解决

在后仿中SDF的反标log中Error是必须要解决的,但是Warning有时候可能并不会影响到实际的内容,而是工具严格的检查得到的一些警告,因此可能就需要我们仔细的来甄别是否warning需要被解决;针对此,将平时看到的一些warning进行整理,帮助之后解决这些问题:

1. SDFCOM_UHICD:Up-hierarchy Interconnect Delay ignored

     这个warning是指将hier间的delay放在device delay上体现,可以不用处理;对跨层次的端口标注INTERCONNECT delay时出现该warning,在层次铺平之后是不会有问题的。

2. SDFCOM_IWSBA:INTERCONNECT will still be annotated

    也不用处理,delay实际上也是反标了。

    vcs是无法识别assign语句代表的是单纯的连线还是作为一个device存在,所以当vcs检测到对assign语句反标INTERCONNECT delay时会报出该警告,但是依然会将INTERCONNECT delay标注。要求designer做出进一步的确认,如果确认assign只是连线,那么是可以选择屏蔽这条warning。不过我们是推荐使用相同的变量连接两个同一层级下cell的端口,并仅对这两个端口标注INTERCONNECT delay。

3. SDFCOM_INF: IOPATH not found

    这个一般是sdf和specify中的没有对应上,这个需要判别是否需要处理。
    这个会造成sdf反标失败  -- 要针对对应的case来判别有没有影响:
    clk  to clk 的警告应该还好;但是clk to Q -- 这个就要好好检查

4. SDFCOM_CFTC: Cannot find timing check

    这个一般是sdf和specify中的没有对应上;
    比如某些时候,两者中 一个是多bit一个是拆分bit,这个会造成match不上;对这种位宽拆分的可以在编译时添加: -tcheckvecsplit, 其他的情况就需要检查为何不匹配。需要被解决。

5. SDFCOM_TANE:TIMINGCHECK Annotation Not Enabled

    SDF中有timing check,但是verilog没有这个specify的指定,这个sdf 的约束就没有意义了
正常情况下是需要解决掉的。

6. SDFCOM_IANE: IOPATH Annotation Not Enabled

    SDF中有对应IOPATH约束,但是verilog没有这个specify的指定,这个sdf 的约束就没有意义了
正常情况下是需要解决掉的

7. SDFCOM_STCLOR: SCALED TC Limit Out of Range

    vcs 用32bit做为deay,所以就是2^31, 超过最大delay就会报;
有时候没有超过delay也会报,因为module没有指定timesale,但是采用的是top的timescale来计算,还是超过了。修改delay或者用 -override_timiescale= 重新指定timescale来覆盖之前的timescale来解决这个问题。

8. SDFCOM_RLTPD:RETAIN value larger than IOPATH delay

     RETAIN delay一定不能比IOPATH delay大。首先得去确认是否需要RETAIN,如果不需要就去掉RETAIN的编译选项,如果需要就去确认为什么出现这种不合理的延时关系

9. SDFCOM_SWC:Simple Wire Connection

    这个提示是啥Y->A之间不是简单的wire连接,在经过了几级assign,可能是会这么report的,但是delay还是吃上了的。可以不用修改,只要符合实际设计就可以。

10. SDFCOM_NICD: INTERCONNECT Delay encountere

    仿真器对应的处理是根据前后级的关系来处理的,可以参考:SDF 优先级和相关的概念
一般来讲,仿真工具在默认情况下,是会将负值当成0处理,这样一来,约束就会更紧
如果想正常处理这些负延迟数值,除了要添加仿真工具使能选项之外,还要确认SDF文件或者specify模型中,关于时序定义是否支持负值,比如$setup不支持,而$setuphold就支持。

    本质上都是因为负的延时无法被补偿为正值,需要仔细确认。

11. SDFCOM_NTCDNC- Negative Timing Check Did Not Converge

    当vcs无法converge多条negative timing check中的delay时会报告这条warning,可能有两种原因,第一种是vcs无法识别互斥condition导致的。第二种是timing出问题导致delay无法收敛,需要仔细检查并去解决;

12. SDFCOM_NDMD - NTC Delay is larger than ModPath Delay

    ModPath Delay小于NTC Delay是不合理的,需要解决。

备注1:针对3-6项,warning都是关于SDF 和Library model之间的不匹配导致的,当出现不匹配时vcs默认的行为是忽略SDF中多余的check和delay,需要前端和后端确认哪一个才是golden。

本节只摘录了部分的sdf warning的情况,实际上可能还有各种各样的类型,这里的warning都需要被认真的对待,这样才能保证sdf的反标没有问题,同时后仿也没问题,否则可能会导致大量且无效的debug的工作。

Read more

腾讯游戏 2026 年 Q1 财报解读:AI 赋能下的新增长曲线

腾讯游戏 2026 年 Q1 财报解读:AI 赋能下的新增长曲线

引言 2026 年 3 月,腾讯控股发布 2026 年第一季度财报。游戏业务作为腾讯的现金牛,本季度表现亮眼,总收入达到 580 亿元,同比增长 22%。其中,AI 技术的深度应用成为增长的关键驱动力。 一、核心数据概览 1. 整体业绩 * 游戏总收入:580 亿元,同比增长 22% * 国内游戏:320 亿元,同比增长 12% * 海外游戏:260 亿元,同比增长 38% * 净利润:185 亿元,同比增长 35% 2. 用户数据 * 《王者荣耀》日活突破 1.5 亿,创历史新高

工业物联网数据基础设施:Apache IoTDB 与 TimechoDB 的云原生与 AI 进化之路

工业物联网数据基础设施:Apache IoTDB 与 TimechoDB 的云原生与 AI 进化之路

工业物联网数据基础设施:Apache IoTDB 与 TimechoDB 的云原生与 AI 进化之路 写在前面:AI 时代的物联网数据新范式 2025年的今天,我们谈论物联网数据管理时,已不再仅仅满足于“存得下、查得快”。当大型模型开始渗透工业场景,当 AI Agent 试图直接操作数据库进行 Root Cause Analysis,时序数据库正在经历一场从“被动存储”向“主动智能”的深刻进化。 面对智慧工厂每日 50TB 的振动数据,面对千万级设备的并发接入,传统的数据库架构不仅在性能上捉襟见肘,在智能化分析层面更是断层。国产自研的 Apache IoTDB 及其企业版 TimechoDB,不仅在云原生架构上给出了高分答卷,更在 2026 年的新版本中,交出了“数据库内置 AI”的惊艳方案。 一、重新审视时序数据库:

人工智能:大语言模型(LLM)原理与应用实战

人工智能:大语言模型(LLM)原理与应用实战

人工智能:大语言模型(LLM)原理与应用实战 1.1 本章学习目标与重点 💡 学习目标:掌握大语言模型的核心原理、训练流程与微调方法,学会基于开源大语言模型完成定制化对话与文本生成任务。 💡 学习重点:理解大语言模型的Transformer decoder-only架构,掌握指令微调与RLHF技术,能够使用LoRA高效微调开源LLM。 1.2 大语言模型的核心概念与发展历程 1.2.1 什么是大语言模型 💡 大语言模型(Large Language Model, LLM)是参数量达到十亿级甚至万亿级的Transformer-based模型。它通过在海量文本数据上进行预训练,学习语言的语法、语义、常识和推理能力。 LLM的核心能力包括文本生成、理解、翻译、摘要、问答等。它可以处理复杂的自然语言任务,无需针对每个任务单独设计模型结构。 LLM与传统NLP模型的核心区别: * 参数量级:传统模型参数量通常在千万级,LLM参数量可达十亿到万亿级。 * 训练数据:传统模型依赖标注数据,LLM使用海量无标注文本进行预训练。 * 能力边界:传统模型只能处理单一任务,LL

春节寒假作业辅导:基于 Rokid 灵珠平台打造 AI Glasses 作业助手

春节寒假作业辅导:基于 Rokid 灵珠平台打造 AI Glasses 作业助手

本文应用基于Rokid灵珠智能体/CXR SDK开发,开发指南https://forum.rokid.com/index 文章目录 * 一、引言:为什么我们需要一个 AI Glasses 作业助手? * 二、方案设计与架构 * 2.1 核心功能定义 * 2.2 端到端架构(AI Glasses) * 2.3 业务流程架构 * 三、开发实战:手把手搭建“作业救星” * 3.1 准备工作 * 3.2 步骤一:创建知识库(资源准备) * 3.3 步骤二:创建智能体(Agent) * 3.4 步骤三:搭建核心工作流(Workflow)