相关阅读Formalityhttps://blog.csdn.net/weixin_45791458/category_12841971.html?spm1001.2014.3001.5482本文记录博主在使用Synopsys的形式验证工具Formality中遇到的一个Bug。Bug复现情况一// 例1 module dff ( input clk, input d_in, output d_out ); reg q1, q2; always (posedge clk) begin q1 d_in; q2 q1; end assign d_out q2; endmodule首先以例1的RTL代码作为参考设计和实现设计然后在setup模式使用以下set_constant命令使得q1、q2触发器变成不可读触发器。set_constant -type net r:/WORK/dff_chain/d_out 1 set_constant -type net i:/WORK/dff_chain/d_out 1关于不可读的更详细信息可以参考下面的博客。Formality不可读(unread)的概念https://chenzhang.blog.csdn.net/article/details/145242304随后在fm_shell中使用match命令进行匹配或在GUI界面点击Run Matching此时fm_shell中显示的匹配结果与GUI界面显示的匹配结果出现了差别如下所示。// fm_shell的匹配结果 *********************************** Matching Results *********************************** 1 Compare points matched by name 0 Compare points matched by signature analysis 0 Compare points matched by topology 0 Matched primary inputs, black-box outputs 0(0) Unmatched reference(implementation) compare points 0(0) Unmatched reference(implementation) primary inputs, black-box outputs ****************************************************************************************// GUI界面的匹配结果 3 points matched by name 0 points matched by signature analysis 0 points matched by topology 0 points matched by user 0 unmatched reference points 0 unmatched implementation points结果显示fm_shell没有考虑两对匹配的不可读触发器而GUI界面考虑了更严重的是此时输入/输出端口没有显示在任何匹配报告中。这对最后的验证结果没有影响不可读触发器在默认情况下会被归为Not Compared类而不进行验证可通过verification_verify_unread_compare_points变量改变如下所示。********************************* Verification Results ********************************* Verification SUCCEEDED ---------------------- Reference design: r:/WORK/dff_chain Implementation design: i:/WORK/dff_chain 1 Passing compare points ---------------------------------------------------------------------------------------- Matched Compare Points BBPin Loop BBNet Cut Port DFF LAT TOTAL ---------------------------------------------------------------------------------------- Passing (equivalent) 0 0 0 0 1 0 0 1 Failing (not equivalent) 0 0 0 0 0 0 0 0 Not Compared Unread 0 0 0 0 0 2 0 2 ****************************************************************************************情况二以例2的RTL代码的作为实现设计而使用例1的RTL代码作为参考设计匹配结果如下所示。// 例2 module dff ( input clk, input d_in, output d_out ); reg q1, q2, q3; always (posedge clk) begin q1 d_in; q3 d_in; q2 q1; end assign d_out q2; endmodule// fm_shell的匹配结果 *********************************** Matching Results *********************************** 3 Compare points matched by name 0 Compare points matched by signature analysis 0 Compare points matched by topology 2 Matched primary inputs, black-box outputs 0(0) Unmatched reference(implementation) compare points 0(0) Unmatched reference(implementation) primary inputs, black-box outputs 1(0) Unmatched reference(implementation) unread points ****************************************************************************************// GUI界面的匹配结果 5 points matched by name 0 points matched by signature analysis 0 points matched by topology 0 points matched by user 0 unmatched reference points 0 unmatched implementation points结果显示fm_shell的匹配结果中列出了这个未匹配的不可读触发器而输入/输出端口显示在了匹配报告中。情况三以例2的RTL代码作为参考设计和实现设计匹配结果如下所示。// fm_shell的匹配结果 *********************************** Matching Results *********************************** 3 Compare points matched by name 0 Compare points matched by signature analysis 0 Compare points matched by topology 2 Matched primary inputs, black-box outputs 0(0) Unmatched reference(implementation) compare points 0(0) Unmatched reference(implementation) primary inputs, black-box outputs ****************************************************************************************// GUI界面的匹配结果 6 points matched by name 0 points matched by signature analysis 0 points matched by topology 0 points matched by user 0 unmatched reference points 0 unmatched implementation points结果显示fm_shell没有考虑这对匹配的不可读触发器而GUI界面考虑了而输入/输出端口显示在了匹配报告中。Bug总结1、当使用set_constant命令导致不可读触发器时fm_shell和GUI界面的匹配结果不一致输入输出端口不会出现在任何匹配报告中而匹配的不可读触发器不出现在fm_shell中对最终验证没有影响。2、即使不使用set_constant命令fm_shell和GUI界面的匹配结果也不一致匹配的不可读触发器不出现在fm_shell中对最终验证没有影响。Bug反馈目前已在Solvnet上向Synopsys提出反馈如下图所示。
企业数字化 ERP 产品动态
相关推荐
OpenCV 高级 001-图像修复 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 7:30:30
MAA 安装指南:3 步选对安装包,Windows、macOS 到 maa-cli 一次装通 MAA 安装指南:3 步选对安装包,Windows、macOS 到 maa-cli 一次装通 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. … · 2026/11/6 7:29:30
嵌入式:各型号的J-link、J-Trace和Flasher简介 相关阅读
嵌入式https://blog.csdn.net/weixin_45791458/category_12768532.html?spm1001.2014.3001.5482 J-link(主要用于调试) SEGGER的J-Link是业界领先的嵌入式系统开发调试探针系列。凭借卓越的速度、可靠性和多功能性,J-Link已成为全… · 2026/11/6 7:29:30
赣县区电工证报名方式全知道,全国通用怎么选才不被坑 赣县区电工证报名方式全知道,全国通用怎么选才不被坑 你是不是也遇到过这种情况:想考个电工证,结果一打听报名方式,网上各种渠道鱼龙混杂,怕是报了也白报?别急,这篇文章就帮你理清楚赣县区电工证报名方式,让你少走弯路,还能确保证书 全国通用… · 2026/11/7 0:08:43
工地太忙根本没时间复习考试?成都培训电工证良心建议来了 工地太忙根本没时间复习考试?成都培训电工证良心建议来了 你不是一个人在战斗,工地太忙根本没时间复习考试,是很多想考成都培训电工证的学员共同的痛点。今天就从信阳培训机构学员的角度出发,结合真实案例,给出一份良心建议,帮你少走弯路,顺利拿到电工… · 2026/11/7 0:08:43
工地太忙根本没时间复习考试,电工作业中的警告牌值不值得考? 工地太忙根本没时间复习考试,电工作业中的警告牌值不值得考? 你是不是经常在工地忙得连吃饭的时间都没有,更别说抽空复习特种作业操作证考试了?电工作业中的警告牌是考试中必考的内容,但很多人不知道它到底值不值得花时间去准备。今天就从商丘培训机构学… · 2026/11/7 0:08:43
福州电工证图片全流程办理指南:值不值得考?别再被中介坑了 福州电工证图片全流程办理指南:值不值得考?别再被中介坑了 不知道去哪报名怕被中介坑?福州电工证图片看着都眼熟,但真正要办下来,流程复杂、信息混乱,一不小心就掉坑里。特别是像你这样打算考电工证的施工企业负责人, 值不值得考… · 2026/11/7 0:07:43
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23
澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄? 澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄? 证书过期了不知道怎么复审延期?别慌,很多人在拿到【澳洲水电工证考试】的电子证书后,一不小心就忽略了复审时间,结果证书失效,工作受阻,甚至被单位追责。今天就从【澳洲水电工证考试… · 2026/11/7 0:00:41
电工作业提示版通过率揭秘:怎么考才能一次过? 电工作业提示版通过率揭秘:怎么考才能一次过? 怕考不过白交培训费?别急,今天我就从驻马店应届工程类毕业生的视角,带你全面了解电工作业提示版的考试流程、备考要点和真实通过率,帮你少走弯路、提高一次通过率。… · 2026/11/7 0:00:41
电工证年审报名千万别踩坑 外省证转过来要搞清这几点 电工证年审报名千万别踩坑 外省证转过来要搞清这几点 之前考的证在外省能不能转过来?这个问题是很多电工从业者最关心的,特别是像你这样在商丘从事公路工程的人员,经常需要跨省流动,证书的 有效性 和 可迁移性… · 2026/11/7 0:00:41
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23