后仿之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

在家也能做 AI 导演!本地部署 Wan2.1 视频生成模型全攻略

在家也能做 AI 导演!本地部署 Wan2.1 视频生成模型全攻略

文章目录 * 前言 * 1.软件准备 * 1.1 ComfyUI * 1.2 文本编码器 * 1.3 VAE * 1.4 视频生成模型 * 2.整合配置 * 3. 本地运行测试 * 4. 公网使用Wan2.1模型生成视频 * 4.1 创建远程连接公网地址 * 5. 固定远程访问公网地址 * 总结 前言 Wan2.1 模型搭配 ComfyUI 框架,能实现文本转视频、图片转动画等功能,生成的视频质量可媲美专业工具,普通 PC 就能运行,特别适合自媒体创作者、短视频团队和 AI 爱好者快速制作动态内容,无需复杂技术背景也能上手,且完全开源免费,性价比很高。 使用时发现,选择模型版本要结合显卡配置:

AutoGPT+Python:让AI智能体自动完成复杂任务的终极指南

AutoGPT+Python:让AI智能体自动完成复杂任务的终极指南

AutoGPT+Python:让AI智能体自动完成复杂任务的终极指南 引言:在人工智能迈向自主化的新阶段,AutoGPT作为基于大语言模型(LLM)的自主智能体代表,正掀起一场让AI自己思考、自主执行的技术革命。当它遇上Python的全栈生态与极致灵活性,开发者不再只是调用AI接口,而是能深度定制专属智能体——让AI听懂自然语言、拆解复杂目标、调用外部工具、联网检索信息、迭代优化结果,独立完成从市场调研、内容创作、代码开发到自动化运维的全流程任务。 本文从核心原理、本地部署、Python实战、插件扩展、生产优化五大维度,手把手带你从0到1搭建可落地、可监控、可进化的AI智能体系统,不管是AI爱好者、全栈开发者还是创业者,都能靠这份指南,掌握下一代人机协作的核心生产力。 一、先搞懂:AutoGPT到底是什么? 传统ChatGPT类模型是被动应答,你问一句它答一句,需要人工一步步引导;而AutoGPT是自主智能体,你只给它一个最终目标,它就能自己完成: * 任务拆解:把复杂目标拆成可执行子步骤 * 自主决策:判断下一步该做什么、调用什么工具 * 记忆管理:短期记忆存上下文

OpenClaw 为什么突然爆火?从上门安装到排队体验,我看到的 AI Agent 破圈真相

OpenClaw 为什么突然爆火?从上门安装到排队体验,我看到的 AI Agent 破圈真相

🔥 个人主页:杨利杰YJlio❄️ 个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》《Python》《Kali Linux》《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更简单,让重复的工作自动化 OpenClaw 为什么突然爆火?从上门安装到排队体验,我看到的 AI Agent 破圈真相 * 1、OpenClaw 这次为什么让我有点震撼? * 2、OpenClaw 到底是什么?它和普通聊天 AI 有什么不同? * 2.1 普通大模型解决的是“回答问题” * 2.2 OpenClaw 这类 Agent 试图解决的是“帮我完成任务” * 3、从控制台截图看,它已经不是“纯概念”了 * 4、

AI【应用 04】FunASR离线文件转写服务开发指南(实践篇)

FunASR离线文件转写服务开发指南(实践篇) * 1.是什么 * 2. 快速上手 * 2.1 docker安装 * 2.2 镜像启动 * 2.3 服务端启动 * 2.4 客户端测试与使用 * 3. 客户端用法详解 * 3.1 python-client * 3.2 cpp-client * 3.3 Html网页版 * 3.4 Java-client * 3.4.1 Building for Linux/Unix * 4. 服务端用法详解 * 4.1 启动FunASR服务 * 4.2 关闭FunASR服务 * 4.3 修改模型及其他参数