什么是断言?

断言(Assertion)是一种嵌入在 RTL 或验证环境中的声明式语句,用于实时检查设计行为是否满足预期的时序或逻辑条件。它本质上是一段“自动运行的监视器”——当断言条件在仿真或形式验证中被违反时,工具立即报告违规时间、位置与波形上下文。以 SVA(SystemVerilog Assertion)为代表的断言机制是 SystemVerilog 的核心特性之一,也是覆盖率驱动验证(CDV)的重要组成部分。

一、 技术原理

断言分为两种类型:立即断言(Immediate Assertion)写在过程块(always / initial / task / function)中,在仿真执行到该语句时立即求值,用于检查执行到该处的即时条件(如组合逻辑输出、握手信号);并发断言(Concurrent Assertion)使用 assert property 关键字描述跨时钟周期的时序关系(如“请求后三个周期内应答必须到达”),在时钟沿(沿前采样信号值)求值,并在整个仿真期间持续监视。断言还可配合 cover property 收集特定序列是否被触发,形成功能覆盖率指标。在形式验证(FPV)中,断言作为“待证明的属性(property)”输入数学引擎;引擎在用户给定的假设(assume)与约束下,穷举所有可达状态与合法输入序列,证明该属性是否恒成立,且无需编写任何测试激励。

二、 思尔芯EDA原生支持

思尔芯 PegaSim 芯神驰全面兼容 IEEE 1800-2017 SystemVerilog,原生支持 SVA 断言——在软件仿真中实时检查断言,违规时自动记录波形与日志,并配合 Claryti 芯神觉调试环境对断言命中进行可视化呈现。在 FPGA 原型验证侧,芯神瞳 Prodigy 通过 ProtoBridge 协同仿真软件与 MDM Pro 深度调试套件提供更高效的调试能力。

三、 行业标准地位

断言(SVA)自 IEEE 1800-2005 起即为 SystemVerilog 标准的正式组成部分,并在 2012、2017、2023 各版中持续增强;最新版为 IEEE 1800-2023(2023 年 12 月批准,2024 年 2 月出版)。SVA 已被 Synopsys、Cadence、Siemens EDA 及思尔芯等主流 EDA 工具全面支持。据 Wilson Research Group 2022 调研,SVA 是 IC/ASIC 领域使用最广泛的断言语言,占比约 72%(其次为 OVL 约 15%、PSL 约 9%)。断言密度(断言数/千行 RTL)已成为衡量验证成熟度的常用指标之一。

 

最后更新:2026-09-04

 

FAQ

Q:断言和 Testbench 中的 if-else 检查有什么区别?

A:if-else 检查是过程性的,需要手动编写触发条件与检查逻辑,且仅在执行到该代码路径时才生效;断言是声明式的,一旦声明便在整个仿真期间自动监视,不依赖特定激励路径。断言还能用于形式验证,if-else 不能。


获取方案

您在设计什么类型的芯片?
设计中含的ASIC门容量为?
500万 - 2千万
2千万 - 5千万
5千万 - 1亿
1亿 - 10亿
大于10亿
您倾向于使用哪款FPGA?
赛灵思 VU440
赛灵思 KU115
赛灵思 VU19P
赛灵思 VU13P
赛灵思 VU9P
AMD VP1802
AMD VP1902
英特尔 S10-10M
英特尔 S10-2800
不太确定,需要专业建议
您需要什么样的FPGA配置?
单颗FPGA
双颗FPGA
四颗FPGA
八颗FPGA
不太确定,需要专业建议
您需要什么样的外设接口?
您需要多少数量的原型验证平台?
您是否需要以下原型验证配套工具? (可多选)
分割工具
多FPGA调试工具
协同建模工具(允许大量数据在 FPGA 与 PC 主机之间进行交互)
您什么时间内需要使用到我们产品?
0-6个月
6-12个月
大于12个月
不太确定
您是否需要其他工具资讯?(可多选)
架构设计
软件仿真
硬件仿真
数字调试
形式验证
想要更多了解,您是否需要产品选型指南?
其他
提交
输入您的电话,我们即刻给您回电
输入您的电话
验证码
您也可直接拨打电话:400 8888 427 或添加企业微信
电话咨询
微信咨询
Kathylianxiwomen_fuben.png
TOP
Kathylianxiwomen_fuben.png