wind330

验证语言:SVA与PSL的几点分析

0
阅读(34217)

关于为什么要使用验证语言网络上已经说了很多,wind330进入FPGA行业日子尚浅,也无法给出很精辟的讲解,所以不再赘述。结合自己看的一些资料,抛出一些砖头,希望有不同见解的同行也能提出供大家探讨。

SVA可以继承SystemVerilog表达式的特性,如数据类型,语法,能直接与SystemVerilog一起工作,对其他HDL语言的支持还有待发展。

在整个设计流程中都采用SystemVerilog,可以有以下好处:

1、可以将断言直接嵌入到硬件设计以及测试向量中;清楚准确的描述设计者的假设,期望及意图;

2、可以在设计代码及测试向量文件外部定义temporal correctness properties(正确的时序特性)和coverage events(覆盖事件);

3、极大地方便各个测试模块的交互通信;

4、Method Calls,当某一特定事件发生,允许Assertion调用Method来分析当前状态的数据;

PSL是独立的语言,可以间接嵌入至多种HDL语言。

现实中,PSL主要用来扩展VDHL以及Verilog的验证能力。

1、在不久将来,越来越多的大公司在系统级设计中采用SystemC,并期望在系统建模中就加入断言(Assertions),期望能平滑的过渡到RTL设计中;

2、PSL支持系统级验证,提供GDL(Generic Definition Language)特色;

3、有机构已经把PSL扩展至混合信号、异步数字设计以及太空控制领域,反映了PSL良好的可扩展性;

总结:

PSL是一种多目的、多层次、多特征的验证语言,不仅限于数字设计领域,可以结合多种语言使用;而SVA与SystemVerilog紧密联系在一起。

 

参考文献:

 

PSL and SVA:Two Standard Assertion Languages Addressing Complementary Engineering Needs

1798664545447.pdf