功能验证对VC开发与集成的功能验证分类课件.pptx

上传人(卖家):晟晟文业 文档编号:5014820 上传时间:2023-02-02 格式:PPTX 页数:86 大小:449.57KB
下载 相关 举报
功能验证对VC开发与集成的功能验证分类课件.pptx_第1页
第1页 / 共86页
功能验证对VC开发与集成的功能验证分类课件.pptx_第2页
第2页 / 共86页
功能验证对VC开发与集成的功能验证分类课件.pptx_第3页
第3页 / 共86页
功能验证对VC开发与集成的功能验证分类课件.pptx_第4页
第4页 / 共86页
功能验证对VC开发与集成的功能验证分类课件.pptx_第5页
第5页 / 共86页
点击查看更多>>
资源描述

1、谢谢观赏1功能验证功能验证 2019-6-9谢谢观赏2主要内容主要内容 对对VC开发与集成的开发与集成的功能验证分类功能验证分类VSI联盟对虚拟元件的开发与集成的联盟对虚拟元件的开发与集成的功能验证术语功能验证术语、验证技巧及语言风格验证技巧及语言风格2019-6-9谢谢观赏3功能验证分类功能验证的技术主要分为以下四大块:功能验证的技术主要分为以下四大块:从验证方法上分:从验证方法上分:l 目的性验证目的性验证 目的是验证设计所试图完成的功能在设计中已正确实现。最典目的是验证设计所试图完成的功能在设计中已正确实现。最典型的情况是在抽象程度最高的层次完成,其最终结果是建立一套型的情况是在抽象程度

2、最高的层次完成,其最终结果是建立一套“黄金模型黄金模型”,它可以在整个设计过程中作为设计细节的参考。,它可以在整个设计过程中作为设计细节的参考。l l 等价性验证等价性验证 目的是验证设计过程中产生的不同层次的设计结果功能是否符目的是验证设计过程中产生的不同层次的设计结果功能是否符合合“黄金模型黄金模型”。从验证对象上分:从验证对象上分:l l VC验证验证 对某个对某个VC的功能(如:单元测试)进行验证的过程。的功能(如:单元测试)进行验证的过程。l l 集成块验证集成块验证 对包含一个或多个对包含一个或多个VC的的SOC进行功能验证的过程。进行功能验证的过程。2019-6-9谢谢观赏4在以

3、上每项任务所使用的技术和工具之间有很大的交在以上每项任务所使用的技术和工具之间有很大的交迭。虽然验证和迭。虽然验证和SOC验证的过程相同或者相似,验证的过程相同或者相似,但是,验证测试序列的模型和源代码则可能迥然不同。但是,验证测试序列的模型和源代码则可能迥然不同。对验证而言,关键的是对的内部逻辑进行详对验证而言,关键的是对的内部逻辑进行详细的功能验证以确保功能的正确性。而集成片验细的功能验证以确保功能的正确性。而集成片验证却只是把研究的重点放在证却只是把研究的重点放在VC的连接和相互作用上,的连接和相互作用上,其验证模型只需考虑对其验证模型只需考虑对VC的接口进行精确的描述,对的接口进行精确

4、的描述,对VC的内部功能则无太高要求。的内部功能则无太高要求。2019-6-9谢谢观赏5适合于目的验证的工具和技术 动态验证动态验证 动态验证是在一系列激励的作用下,对以下几个方动态验证是在一系列激励的作用下,对以下几个方 面的测试:一个设计方案的一个或几个模块、某设面的测试:一个设计方案的一个或几个模块、某设 计的硬件实现等。计的硬件实现等。静态功能验证静态功能验证 静态功能验证利用公式化的数学技巧来进行验证静态功能验证利用公式化的数学技巧来进行验证 而不使用验证测试序列。其测试方法还没有统一而不使用验证测试序列。其测试方法还没有统一 的工业标准,说法比较含糊。的工业标准,说法比较含糊。形式

5、验证形式验证动态形式化混合验证动态形式化混合验证 为了更好的发挥形式化验证技术全面为了更好的发挥形式化验证技术全面 性的特点,在处理大型设计、更加广性的特点,在处理大型设计、更加广 泛的设计风格的设计时使用。泛的设计风格的设计时使用。(符号(符号 仿真、半形式化仿真仿真、半形式化仿真)硬、软件联合验证硬、软件联合验证硬件仿真硬件仿真物理样机物理样机虚拟样机虚拟样机2019-6-9谢谢观赏6适用于目的验证的动态验证工具和技术适用于目的验证的动态验证工具和技术确定性仿真确定性仿真概念:概念:对一个模块施加激励信号并由这个模块产生响应信号的过程。在确对一个模块施加激励信号并由这个模块产生响应信号的过

6、程。在确定性仿真中,激励信号被明确给出,而且模块的响应信号能够预知并被检定性仿真中,激励信号被明确给出,而且模块的响应信号能够预知并被检测到。测到。分类:分类:基于事件的仿真基于事件的仿真基于事件的软件仿真器通过事件的发生(一次一个事件)和在设计中进行基于事件的软件仿真器通过事件的发生(一次一个事件)和在设计中进行传播而进行操作直至获得一个稳定的状态。该设计方案的模块包含内部周传播而进行操作直至获得一个稳定的状态。该设计方案的模块包含内部周期时钟的概念和功能性的概念。输入的激励信号的任何变化都将作为事件期时钟的概念和功能性的概念。输入的激励信号的任何变化都将作为事件被检测到,并将被传遍设计的每

7、个阶段。由于输入信号的到达不同时和底被检测到,并将被传遍设计的每个阶段。由于输入信号的到达不同时和底层被测元素的信号的反馈不同时,可以在每个时钟周期对设计的某个元素层被测元素的信号的反馈不同时,可以在每个时钟周期对设计的某个元素评估多次。评估多次。虽然这能提供高精度的仿真环境,但执行速度有赖于设计的规虽然这能提供高精度的仿真环境,但执行速度有赖于设计的规模,在大型的设计中其验证速度会相应降低。模,在大型的设计中其验证速度会相应降低。基于时间的仿真基于时间的仿真基于时间的仿真采用了不同的方法。这种仿真不再具有内部周期时钟的概基于时间的仿真采用了不同的方法。这种仿真不再具有内部周期时钟的概念,它在

8、单个周期中对状态及念,它在单个周期中对状态及/或各端口之间进行逻辑评估。由于每个逻辑或各端口之间进行逻辑评估。由于每个逻辑元素在每个周期中只赋值一次,因此元素在每个周期中只赋值一次,因此这种方法极大地缩短了执行时间这种方法极大地缩短了执行时间。基。基于时间仿真的简单模型(没有时序,逻辑状态少等等)于时间仿真的简单模型(没有时序,逻辑状态少等等)限制了仿真器能够限制了仿真器能够处理的电路类型。处理的电路类型。比如说,依赖于内部周期时钟的电路或在恰当的仿真中比如说,依赖于内部周期时钟的电路或在恰当的仿真中传播不确定值的电路就不能使用这种基于时间的仿真方法。传播不确定值的电路就不能使用这种基于时间的

9、仿真方法。2019-6-9谢谢观赏7适用于目的验证的动态验证工具和技术适用于目的验证的动态验证工具和技术 随机模式仿真随机模式仿真分类:分类:直接模式直接模式随机地址和随机控制信号被加入总线或信号流中,而且一个或多个总线随机地址和随机控制信号被加入总线或信号流中,而且一个或多个总线监测器对这些信号进行监控,以确保总线协议不会因为这些操作而产生监测器对这些信号进行监控,以确保总线协议不会因为这些操作而产生误操作。这种方法误操作。这种方法对总线验证尤其适用对总线验证尤其适用。验证测试序列是直接的,因为操作周期的产生并非纯粹的随机产生,而验证测试序列是直接的,因为操作周期的产生并非纯粹的随机产生,而

10、是以某种特殊的方式来强调设计。是以某种特殊的方式来强调设计。这种向量发生器可用来以特定的分配这种向量发生器可用来以特定的分配产生特定的传输周期产生特定的传输周期,如:在伪随机序列中产生,如:在伪随机序列中产生20的读,的读,30的写和的写和50的变址读写。的变址读写。类似的,在数据和地址领域中也可产生随机序列,但类似的,在数据和地址领域中也可产生随机序列,但是得在有限的范围内使用有限的离散数值。是得在有限的范围内使用有限的离散数值。这些类型的测试验证验证用确定性仿真很难验证的临界状态、临界序列这些类型的测试验证验证用确定性仿真很难验证的临界状态、临界序列以及依赖于数据的状态。用这种方法,任何算

11、法错误都能在设计周期的以及依赖于数据的状态。用这种方法,任何算法错误都能在设计周期的早期就能被发现和更正。早期就能被发现和更正。间接模式间接模式在间接仿真中,设计的输入直接由随机向量发生器驱动,之后检查其输在间接仿真中,设计的输入直接由随机向量发生器驱动,之后检查其输出以检测任何无效的操作。出以检测任何无效的操作。这种方法最常用于验证数据通道和算术元素,这种方法最常用于验证数据通道和算术元素,或者用来验证能够接收任何随机序列的小模块或者用来验证能够接收任何随机序列的小模块。2019-6-9谢谢观赏8适用于目的验证的动态验证工具和技术适用于目的验证的动态验证工具和技术硬件加速硬件加速 硬件加速是

12、特指为加速某些仿真操作而设计的将软件仿真中部分硬件加速是特指为加速某些仿真操作而设计的将软件仿真中部分或全部的成分映射到硬件平台中的操作或全部的成分映射到硬件平台中的操作。最典型情况就是测试平台。最典型情况就是测试平台仍然保留在软件中运行,而被验证的设计却是在硬件加速器中运行。仍然保留在软件中运行,而被验证的设计却是在硬件加速器中运行。有些类型的加速器也能运行行为级的代码,这种情况下,具体的时有些类型的加速器也能运行行为级的代码,这种情况下,具体的时钟周期的行为表现并没有给出详细的说明,因此,有可能会全部在钟周期的行为表现并没有给出详细的说明,因此,有可能会全部在硬件加速器中运行纯确定性或随机

13、模式仿真。硬件加速器中运行纯确定性或随机模式仿真。硬件建模硬件建模有些软件仿真模型的设计元件难以实现,或者不够精确。解决这个有些软件仿真模型的设计元件难以实现,或者不够精确。解决这个难题的方法就是难题的方法就是运行硬件模型中的一个半导体元件,将它连接到软运行硬件模型中的一个半导体元件,将它连接到软件仿真器上件仿真器上。这个硬件模型的输入是接收来自仿真器的信号,然后。这个硬件模型的输入是接收来自仿真器的信号,然后将该信号送到半导体元件中运行一个周期,最后获得输出信号并将将该信号送到半导体元件中运行一个周期,最后获得输出信号并将它送回仿真器。它送回仿真器。2019-6-9谢谢观赏9适用于目的验证的

14、动态验证工具和技术适用于目的验证的动态验证工具和技术协议检验协议检验协议检验器指的是监测接口的数据处理以及检查任何无效操作的元协议检验器指的是监测接口的数据处理以及检查任何无效操作的元件。如果在仿真器中有任何无效操作被检验到,检验器将会作标记。件。如果在仿真器中有任何无效操作被检验到,检验器将会作标记。这种元件可以装备在测试平台中而不作为设计的部分。在这种应用这种元件可以装备在测试平台中而不作为设计的部分。在这种应用中,检验器仅仅在仿真时才起作用。当然,协议检验器也可以植入中,检验器仅仅在仿真时才起作用。当然,协议检验器也可以植入设计之中,这样检验器不仅可以在仿真的时候,而且可以在实际的设计之

15、中,这样检验器不仅可以在仿真的时候,而且可以在实际的物理设备进行的普通操作中都能查错。不过,设计中植入的这种设物理设备进行的普通操作中都能查错。不过,设计中植入的这种设备要能够在门级进行综合。备要能够在门级进行综合。预期结果检验预期结果检验是系统测试平台的一部分。它对仿真结果与事先的规定是系统测试平台的一部分。它对仿真结果与事先的规定期望响期望响应文件进行比较。如果结果不符,将会报错。应文件进行比较。如果结果不符,将会报错。2019-6-9谢谢观赏10形式验证形式验证利用数学方法对设计结果的功能进行验证。由于它依赖形式验证利用数学方法对设计结果的功能进行验证。由于它依赖于对设计的数学分析,因此

16、无需使用验证测试序列。于对设计的数学分析,因此无需使用验证测试序列。适用于等价性检验和目的性验证。适用于等价性检验和目的性验证。适用于目的性验证的形式验证工具和技巧:适用于目的性验证的形式验证工具和技巧:性能性能/模型验证模型验证 性能性能/模型验证是运用公式化的数学技巧来校验设计的功能特性。模型验证器搜模型验证是运用公式化的数学技巧来校验设计的功能特性。模型验证器搜索一个设计在所有可能条件下的状态空间,去寻找通过仿真很难发现的缺陷。索一个设计在所有可能条件下的状态空间,去寻找通过仿真很难发现的缺陷。当模型验证员的报告说某种性质是正确的,那么设计者就可以放心:他的报告当模型验证员的报告说某种性

17、质是正确的,那么设计者就可以放心:他的报告是是100的精确。模型验证不需要建立任何测试平台,其要验证的性质是用以特的精确。模型验证不需要建立任何测试平台,其要验证的性质是用以特殊的规范语言描述的查询表形式。当模型验证工具发现错误的时候,它会产生自殊的规范语言描述的查询表形式。当模型验证工具发现错误的时候,它会产生自初始状态开始,到行为或特性出错的地方为止的完全搜索路径。初始状态开始,到行为或特性出错的地方为止的完全搜索路径。因为包含数据通道的系统经常包含很大很广的状态空间,对这样的系统进行验因为包含数据通道的系统经常包含很大很广的状态空间,对这样的系统进行验证就花费昂贵的存储空间和大量的处理时

18、间。所以模型验证通常在控制密集设计证就花费昂贵的存储空间和大量的处理时间。所以模型验证通常在控制密集设计的验证中比数据通道密集设计验证更加有效。的验证中比数据通道密集设计验证更加有效。模型验证者通常能够在各种合法输入序列和合法的输入状态下,如模型验证和模型验证者通常能够在各种合法输入序列和合法的输入状态下,如模型验证和性能一样可以直接从仿真验证出某种特定的条件总是真,最终为真还是永远不会性能一样可以直接从仿真验证出某种特定的条件总是真,最终为真还是永远不会是真。这种性质就是对设计的断言,对仿真和模型验证都十分有用。是真。这种性质就是对设计的断言,对仿真和模型验证都十分有用。通常,断言表明了某些

19、特定条件必须总是正确,就将该条件列入通常,断言表明了某些特定条件必须总是正确,就将该条件列入checker的职能的职能范围之内,一旦在仿真中这种条件有丝毫偏离,范围之内,一旦在仿真中这种条件有丝毫偏离,checker就会就会“罢工罢工”,从而使用,从而使用户得到通知。户得到通知。2019-6-9谢谢观赏11形式验证理论证明理论证明 基于理论证明技术的验证系统通常支持某种基于选定形式的逻辑的规范语言,并支持基于理论证明技术的验证系统通常支持某种基于选定形式的逻辑的规范语言,并支持一组以该语言命令的形式机械地构造逻辑断言的证明。一组以该语言命令的形式机械地构造逻辑断言的证明。一个使用基于理论证明技

20、术的验证系统的硬件设计的形式化验证,通常包含:一个使用基于理论证明技术的验证系统的硬件设计的形式化验证,通常包含:对设对设计模型计模型(M)的初步描述,将由验证系统支持的逻辑的初步描述,将由验证系统支持的逻辑/规范语言的性能(规范语言的性能(P)的初步描述。)的初步描述。在所有可能的输入条件下在所有可能的输入条件下M能够正确地推出能够正确地推出P的断言,从而验证性能的断言,从而验证性能P。证明标准的完证明标准的完备性保证了在所有可能的输入状态下,该设计的性能都是正确的。备性保证了在所有可能的输入状态下,该设计的性能都是正确的。已经有很多的理论证明系统在大型的设计中得以成功地运用,如在已经有很多

21、的理论证明系统在大型的设计中得以成功地运用,如在浮点指针单元浮点指针单元和和在在复杂流水控制复杂流水控制中。中。同模型校验一样,理论证明验证也不需要创建任何验证测试平台,但是需要有待证同模型校验一样,理论证明验证也不需要创建任何验证测试平台,但是需要有待证明的性能公式。与模型校验不一样的是,理论证明验证不受输入规模和状态空间的限明的性能公式。与模型校验不一样的是,理论证明验证不受输入规模和状态空间的限制。制。因此,理论证明验证更加适于基于数据通道的设计和高层应用的功能验证,如浮因此,理论证明验证更加适于基于数据通道的设计和高层应用的功能验证,如浮点指针单元和复杂流水控制中冒险的验证等。点指针单

22、元和复杂流水控制中冒险的验证等。同时,理论证明验证还能用于性能检查同时,理论证明验证还能用于性能检查中,中,就如同在一个设计的两个模型之间的等价性校验一样。但是对两个模型的等价性就如同在一个设计的两个模型之间的等价性校验一样。但是对两个模型的等价性检验而言,在运用系统验证语言对两个模型进行描述之后,还得给两个模型写一个合检验而言,在运用系统验证语言对两个模型进行描述之后,还得给两个模型写一个合适的断言并对之加以证明。适的断言并对之加以证明。通过理论证明的验证的主要缺点就是它不如模型校验那样自动化程度较高。通过理论证明的验证的主要缺点就是它不如模型校验那样自动化程度较高。因为在因为在通过理论证明

23、的验证中,用户必须使用理论证明的命令进行通过理论证明的验证中,用户必须使用理论证明的命令进行交互式的证明交互式的证明。同时,另。同时,另一个缺点就是在对某事件的证明失败时,验证系统无法自动构造搜索指针。用户必须一个缺点就是在对某事件的证明失败时,验证系统无法自动构造搜索指针。用户必须通过人为的分析来寻找错误发生的原因。通过人为的分析来寻找错误发生的原因。2019-6-9谢谢观赏12 硬、软件联合验证硬、软件联合验证 在传统的系统设计的串行流程中,首先构造硬件,然后在硬件的在传统的系统设计的串行流程中,首先构造硬件,然后在硬件的基础上编写和调试系统软件。基础上编写和调试系统软件。但是在硬、软件联

24、合验证技术中,对系统硬件和软件的验证是同但是在硬、软件联合验证技术中,对系统硬件和软件的验证是同时进行的。时进行的。在硬件被开发的同时,相应的软件也在硬件仿真平台在硬件被开发的同时,相应的软件也在硬件仿真平台中执行,这样就实现了硬件和软件的并行调试。中执行,这样就实现了硬件和软件的并行调试。虽然联合验证环境的建立需要大量的时间和丰富的经验,但是使虽然联合验证环境的建立需要大量的时间和丰富的经验,但是使用硬、软件联合验证技术的回报也是十分丰厚的。用硬、软件联合验证技术的回报也是十分丰厚的。首先,使用硬、首先,使用硬、软件联合验证技术能够在软件联合验证技术能够在SOC芯片制造之前就芯片制造之前就能

25、发现并纠正许多能发现并纠正许多系统级漏洞和问题。系统级漏洞和问题。在实际的处理器和固件模型中进行的仿真,在实际的处理器和固件模型中进行的仿真,结果会更加精确结果会更加精确,而且同旧的使用总线传输模型的设计流程比较,而且同旧的使用总线传输模型的设计流程比较起来,起来,可以进行更广泛的验证可以进行更广泛的验证。而且,在仿真过程中,。而且,在仿真过程中,软件也得软件也得到了调试和验证。到了调试和验证。相应的允许在芯片实际生成的同时,相应的允许在芯片实际生成的同时,给系统的给系统的发展提供较高的发展速度。发展提供较高的发展速度。最终结果是,硬、软件联合验证技术最终结果是,硬、软件联合验证技术通过在设计

26、的早期就很快的解决了问题而通过在设计的早期就很快的解决了问题而提高了整个产品开发周提高了整个产品开发周期的质量,节省了时间和金钱。期的质量,节省了时间和金钱。2019-6-9谢谢观赏13硬件仿真硬件仿真硬件仿真器是通常由某些可重构逻辑(通常为现场可编程门阵列,硬件仿真器是通常由某些可重构逻辑(通常为现场可编程门阵列,如如FPGA)组成的专门设计的硬件和软件系统)组成的专门设计的硬件和软件系统。编程这些系统以模。编程这些系统以模仿设计目标的行为和功能,甚至达到将仿真过的设计同设计即将在仿设计目标的行为和功能,甚至达到将仿真过的设计同设计即将在其中操作的系统的剩余部分直接连接的程度。其中操作的系统

27、的剩余部分直接连接的程度。由于这些系统是以硬件为基础的,因此,它们由于这些系统是以硬件为基础的,因此,它们能够提供与最终设计能够提供与最终设计目标接近的电路仿真速度。目标接近的电路仿真速度。这些几千这些几千Hz的速度同以软件为基础的仿的速度同以软件为基础的仿真所提供的几十真所提供的几十Hz的速度形成鲜明的对比。这种几个量级的行为差的速度形成鲜明的对比。这种几个量级的行为差异使得模拟技术能够执行在软件硬件仿真时要用几个月甚至几年才异使得模拟技术能够执行在软件硬件仿真时要用几个月甚至几年才能完成的大型验证任务。这种验证任务的例子包括能完成的大型验证任务。这种验证任务的例子包括数据集的处理如数据集的

28、处理如视频数据流等,或者是有成千上万行的软件如操作系统的引导程序视频数据流等,或者是有成千上万行的软件如操作系统的引导程序等。在带有嵌入式处理器的等。在带有嵌入式处理器的SOC在转化至硅片之前,在软件在与周在转化至硅片之前,在软件在与周围逻辑协同工作时,需要硬件仿真技术或样机技术对软件在嵌入的围逻辑协同工作时,需要硬件仿真技术或样机技术对软件在嵌入的处理器上运行时的复杂功能进行验证。处理器上运行时的复杂功能进行验证。正因为这样,通常认为这种正因为这样,通常认为这种硬件仿真系统在并行设计流程中是介于硬件和软件之间的。硬件仿真系统在并行设计流程中是介于硬件和软件之间的。2019-6-9谢谢观赏14

29、硬件仿真硬件仿真有很多不同的体系结构都借用这种硬件仿真系统来提供灵活性、可控性、有很多不同的体系结构都借用这种硬件仿真系统来提供灵活性、可控性、可视性和性能可视性和性能。这些体系结构包括。这些体系结构包括FPGA的互联阵列,自定义处理器阵列,的互联阵列,自定义处理器阵列,带有可编程纵横切换器的磁头系统和可编程总线接口的系统带有可编程纵横切换器的磁头系统和可编程总线接口的系统等。这些不等。这些不同的体系结构能够在设计容量、行为特性和最优布局结构方面能提供一同的体系结构能够在设计容量、行为特性和最优布局结构方面能提供一定程度的折衷方案,并且力图能够兼容并辅助包括其他验证技术如软件定程度的折衷方案,

30、并且力图能够兼容并辅助包括其他验证技术如软件模拟、时序验证、形式化验证和逻辑分析的验证方法。模拟、时序验证、形式化验证和逻辑分析的验证方法。虽然硬件仿真的设计方案是从建立在一般的硬件平台上的,但是在某种虽然硬件仿真的设计方案是从建立在一般的硬件平台上的,但是在某种程度上可以看作有限精度的样机。程度上可以看作有限精度的样机。通常硬件仿真器支持对设计的内部节通常硬件仿真器支持对设计的内部节点保持高度的可观察性,使设计在更类似于模拟而非真实物理样机的方点保持高度的可观察性,使设计在更类似于模拟而非真实物理样机的方式除错。式除错。事实上,因为软件模拟器与仿真器交互工作的方式在本质上与事实上,因为软件模

31、拟器与仿真器交互工作的方式在本质上与硬件模拟加速器相同,硬件模拟加速器相同,有时仿真器也用作模拟目的。有时仿真器也用作模拟目的。虽然硬件仿真器有时候能够接近最终设计的速度,但是,除非它们能够虽然硬件仿真器有时候能够接近最终设计的速度,但是,除非它们能够同与最终设计一样的系统相联,否则,它们的速度仍将受到限制。另外,同与最终设计一样的系统相联,否则,它们的速度仍将受到限制。另外,硬件仿真系统的成本往往限制了一个项目中允许的系统数目,反过来,硬件仿真系统的成本往往限制了一个项目中允许的系统数目,反过来,这又限制了能够同时运行硬件仿真的工程师的数目。这又限制了能够同时运行硬件仿真的工程师的数目。20

32、19-6-9谢谢观赏15物理样机物理样机一种目标设计的硬件代替品,它的运行能够一种目标设计的硬件代替品,它的运行能够“接近接近”目标设计平目标设计平台的性能。执行速度能够比软件仿真系统的速度快出许多。台的性能。执行速度能够比软件仿真系统的速度快出许多。物理物理样机能够支持以下功能:样机能够支持以下功能:在在SOC器件可用之前,应用软件和系统软件的开发和调试器件可用之前,应用软件和系统软件的开发和调试 系统的系统级性能测试系统的系统级性能测试 目标设计的高性能仿真平台,该设计能支持复杂测试周期目标设计的高性能仿真平台,该设计能支持复杂测试周期 具有支持硬、软件联合仿真的硬件平台和软件环境具有支持

33、硬、软件联合仿真的硬件平台和软件环境 用于测试的逻辑分析接口用于测试的逻辑分析接口 目标设计的市场演示目标设计的市场演示 典型情况下,物理样机在与目标系统速度相同的数量级范围内运典型情况下,物理样机在与目标系统速度相同的数量级范围内运行,因此,行,因此,它的执行速度能够比软件仿真系统的速度快出许多它的执行速度能够比软件仿真系统的速度快出许多。这意味着全部的测试序列都能够装载到物理样机中去,并同系统这意味着全部的测试序列都能够装载到物理样机中去,并同系统级验证测试向量一起运行。在考虑到可以样机化的设计的数目、级验证测试向量一起运行。在考虑到可以样机化的设计的数目、执行速度以及性能变化时间时,通过

34、不同的方法得到的样机就会执行速度以及性能变化时间时,通过不同的方法得到的样机就会有不同的性能。有不同的性能。在以下系统中都可以在在以下系统中都可以在SOC设计上建立可重用的样机:设计上建立可重用的样机:硬件仿真系统的样机硬件仿真系统的样机 可重构样机系统可重构样机系统 专用样机系统专用样机系统2019-6-9谢谢观赏16虚拟样机虚拟样机 一个虚拟样机就是一个产品、一个元件或一个系统的计算机模拟模型一个虚拟样机就是一个产品、一个元件或一个系统的计算机模拟模型。同其它。同其它基于其自身特性的基于其自身特性的“模型模型”术语不一样的是,术语不一样的是,“虚拟样机虚拟样机”这个术语并不是指这个术语并不

35、是指任何特殊的模型特性,而指任何特殊的模型特性,而指在设计流程中做模型的角色在设计流程中做模型的角色。一般来说,一个虚拟模型应该支持下列任务:一般来说,一个虚拟模型应该支持下列任务:l l 试探开发设计的替代品试探开发设计的替代品l l 证明设计的概念证明设计的概念l l 测试需求的满意度和正确度测试需求的满意度和正确度虚拟样机可以在各个抽象的层次上构建也可以包含一个多层次的混合体虚拟样机可以在各个抽象的层次上构建也可以包含一个多层次的混合体。在一。在一个设计系统中可以有一个和几个虚拟样机同时存在,每个虚拟样机都能完成上个设计系统中可以有一个和几个虚拟样机同时存在,每个虚拟样机都能完成上述所说

36、的任务。为了能在更大的设计系统中发挥作用,述所说的任务。为了能在更大的设计系统中发挥作用,一个虚拟样机应该对设一个虚拟样机应该对设计的元件或系统的接口进行定义。计的元件或系统的接口进行定义。与物理样机相比,与物理样机相比,物理样机需要有详细的硬件和软件设计描述物理样机需要有详细的硬件和软件设计描述,而,而虚拟样机能虚拟样机能够更快、更有效、更加抽象而且在设计流程中能够更早的加以构建够更快、更有效、更加抽象而且在设计流程中能够更早的加以构建。因此,其。因此,其中的一个区别就是,中的一个区别就是,虚拟样机虚拟样机作为一个计算机仿真器,比起物理样机的常规操作为一个计算机仿真器,比起物理样机的常规操作

37、来,作来,能提供有关内部状态的更多的,无害的可视化信息能提供有关内部状态的更多的,无害的可视化信息。此外,与物理样机。此外,与物理样机相比较而言,相比较而言,虚拟样机的一个主要缺点就是,它的操作速度同软件仿真器的速虚拟样机的一个主要缺点就是,它的操作速度同软件仿真器的速度十分接近,因此就限制了在一定的时间内所能完成的验证数目度十分接近,因此就限制了在一定的时间内所能完成的验证数目。2019-6-9谢谢观赏17适合于等价性验证的工具和技术动态验证动态验证形式化等价性检验形式化等价性检验 物理验证物理验证 2019-6-9谢谢观赏18等价性验证中的动态验证工具和技术确定性仿真确定性仿真:给模型施加

38、明确定义的信号,产生相应的响应,在将仿真结:给模型施加明确定义的信号,产生相应的响应,在将仿真结果与预期值比较。果与预期值比较。一旦在一旦在RTL级模型上的验证平台和验证测试向量被开发级模型上的验证平台和验证测试向量被开发出来,那么同样地验证向量集合也能在门级网表上对原设计进行仿真,以出来,那么同样地验证向量集合也能在门级网表上对原设计进行仿真,以检查结果是否相同。在有些情形下,也有可能在对同样的设计的高层或者检查结果是否相同。在有些情形下,也有可能在对同样的设计的高层或者低层仿真过程中进行同样的验证测试。低层仿真过程中进行同样的验证测试。预期结果检查预期结果检查:对仿真结果同先前指定了的预期

39、响应文件进行比较。出现:对仿真结果同先前指定了的预期响应文件进行比较。出现任何错误的时候,检查者就会报错。任何错误的时候,检查者就会报错。黄金模型检查黄金模型检查:监视一个设计中两个模型的响应,将响应信号与输入激励:监视一个设计中两个模型的响应,将响应信号与输入激励相比较,并且对任何偏差作出标记。其中一个为相比较,并且对任何偏差作出标记。其中一个为“黄金模型黄金模型”或可信任模或可信任模型,而另外一个则是待证明的模型。一般情况下,这种比较不包括任何形型,而另外一个则是待证明的模型。一般情况下,这种比较不包括任何形式化验证技术,两个模型之间的响应信号比较仅基于信号的变化。式化验证技术,两个模型之

40、间的响应信号比较仅基于信号的变化。验证测试序列的迁移验证测试序列的迁移:把系统级验证测试序列应用到设计的其它层次需要:把系统级验证测试序列应用到设计的其它层次需要有可以将其迁移或转换为设计的有可以将其迁移或转换为设计的RTL级或网表级应用序列格式的能力。级或网表级应用序列格式的能力。包包括:功能级向括:功能级向RTL级的迁移级的迁移 和和RTL级向网表级迁移。级向网表级迁移。2019-6-9谢谢观赏19等价性验证中的动态验证工具和技术回归测试回归测试:最通常用来验证一个设计的更改没有使现有的验证测试产生:最通常用来验证一个设计的更改没有使现有的验证测试产生失败。失败。在一个设计上运行一个回归测

41、试通常意味着两种验证环境属性:在一个设计上运行一个回归测试通常意味着两种验证环境属性:第一种是在自动化验证环境下,其中所有的第一种是在自动化验证环境下,其中所有的EDA工具、验证测试过程工具、验证测试过程及结果分析都能成批的进行;第二种真正回归测试方法的特点是测试的及结果分析都能成批的进行;第二种真正回归测试方法的特点是测试的成功或失败都在批处理模式中实现。成功或失败都在批处理模式中实现。在每次运行的随机行为都等价时,回归测试最经常被用来与目的在每次运行的随机行为都等价时,回归测试最经常被用来与目的性模拟和随机向量模拟一起使用性模拟和随机向量模拟一起使用。Regression environm

42、ent:用以收集,编译,并运行用以收集,编译,并运行testbench和激励文件和激励文件的机制。的机制。验证有一个很典型的问题,即在解决验证有一个很典型的问题,即在解决bug的的过程中,可能会无意识地的的过程中,可能会无意识地引入另一个引入另一个bug,在此时我们应该在其中加入,在此时我们应该在其中加入regression测试组,帮助验测试组,帮助验证:在新特性加入、旧证:在新特性加入、旧bug解除时,现存的功能基本点得以保留。在整解除时,现存的功能基本点得以保留。在整个项目的验证阶段,个项目的验证阶段,在验证的过程之中,一旦检测到在验证的过程之中,一旦检测到bug,在,在regressio

43、n测试组就应加入对测试组就应加入对bug的测试,这一点非常重要。的测试,这一点非常重要。regression测试组可以基于一个规则一定的基础。测试组可以基于一个规则一定的基础。在同一个模型上的不在同一个模型上的不同的环境同的环境context(如不同的激励向量序列,或反标时序)中运行验证(如不同的激励向量序列,或反标时序)中运行验证工具(如模拟)。对于每次运行都同时备有建立工具(如模拟)。对于每次运行都同时备有建立pass/fail 状态的机制。状态的机制。2019-6-9谢谢观赏20形式化等价性检验形式化等价性检验 形式化等价性检验工具要证明的是:两个设计从形式化等价性检验工具要证明的是:两

44、个设计从I/O接口和基于一接口和基于一个接一个的周期的角度来看功能上是等价的。个接一个的周期的角度来看功能上是等价的。形式化等价性检验形式化等价性检验通常用在设计的通常用在设计的RTL级和门级网表级。在有些情形下,也能用于级和门级网表级。在有些情形下,也能用于更高或者更低的模型。更高或者更低的模型。同软件仿真相比,形式化等价性检验具有几个同软件仿真相比,形式化等价性检验具有几个优点优点。首先,与仿。首先,与仿真不同,形式化等价性检验真不同,形式化等价性检验能够提供完整的等价性检验能够提供完整的等价性检验,而仿真,而仿真只验证到一个验证测试组是否在设计中运行的程度。另外,形式只验证到一个验证测试

45、组是否在设计中运行的程度。另外,形式化等价性检验化等价性检验能够在很短的时间内执行完需要复杂仿真才能完成能够在很短的时间内执行完需要复杂仿真才能完成的任务的任务,这就有利于将验证和错误调试自动化。等价性检验工具,这就有利于将验证和错误调试自动化。等价性检验工具通常会提供与小的独立逻辑块不匹配的详细通常会提供与小的独立逻辑块不匹配的详细“反例反例”。包括包括布尔等价性检验布尔等价性检验和和时序等价性检验。时序等价性检验。2019-6-9谢谢观赏21形式化等价性检验形式化等价性检验布尔等价性检验布尔等价性检验许多等价性检验工具是布尔等价性检验器,这意味着许多等价性检验工具是布尔等价性检验器,这意味

46、着它们检验的是组合逻它们检验的是组合逻辑辑。运用这些工具,通常自动进行两个设计的存储元件(如触发器、锁存。运用这些工具,通常自动进行两个设计的存储元件(如触发器、锁存器等)间格式的比较,从而完成对名词的映射。当映射确定以后,相应的器等)间格式的比较,从而完成对名词的映射。当映射确定以后,相应的工具就开始对存储器的每对映射名词的输入的组合逻辑开始检查是否等价。工具就开始对存储器的每对映射名词的输入的组合逻辑开始检查是否等价。这意味着对每一种可能的输入组合,组合逻辑输出(也即存储器元件的输这意味着对每一种可能的输入组合,组合逻辑输出(也即存储器元件的输入)是相同的。入)是相同的。时序等价性检验时序

47、等价性检验有这样一种情况:两个设计的存储元件的数目不同或排列不同,但是就输有这样一种情况:两个设计的存储元件的数目不同或排列不同,但是就输入输出数据流的生成以及在两个状态机之间给定的某些初始状态方面两入输出数据流的生成以及在两个状态机之间给定的某些初始状态方面两者是等价的。这就是时序等价。者是等价的。这就是时序等价。这样的例子如有限状态机的两种实现方式:这样的例子如有限状态机的两种实现方式:一个采用全译码方式,即用一个采用全译码方式,即用3个锁存器编码个锁存器编码8个状态;另一种采用个状态;另一种采用one-hot编码,用编码,用8个锁存器为个锁存器为8个状态编码。然而这两个状态机都有同样的输

48、出个状态编码。然而这两个状态机都有同样的输出/入数据信号,都开始于相同的初始状态,有相同的输入数据流。入数据信号,都开始于相同的初始状态,有相同的输入数据流。时序等价性检验比布尔等价性检验存在更大的困难。因此能够执行这种任时序等价性检验比布尔等价性检验存在更大的困难。因此能够执行这种任务的工具更加稀少。有很多的布尔等价性检验确实支持时序等价性检验,务的工具更加稀少。有很多的布尔等价性检验确实支持时序等价性检验,允许检验很小的有限状态机(通常用户必须手动地支持一些等价状态赋值允许检验很小的有限状态机(通常用户必须手动地支持一些等价状态赋值的映射,因而限制了这种检验只能适合于小规模的状态机),或者

49、允许检的映射,因而限制了这种检验只能适合于小规模的状态机),或者允许检验某些组合逻辑器件跨越存储器元件边界的简单操作。但是,从实际的观验某些组合逻辑器件跨越存储器元件边界的简单操作。但是,从实际的观点来看,总的说来大规模设计的时序等价性检验中有很多有待解决的问题。点来看,总的说来大规模设计的时序等价性检验中有很多有待解决的问题。2019-6-9谢谢观赏22物理验证物理验证 物理验证就是通过检验图形设计的数据库以确信物理实现确实是原始逻物理验证就是通过检验图形设计的数据库以确信物理实现确实是原始逻辑设计的正确表述。物理验证包括以下三个部分:辑设计的正确表述。物理验证包括以下三个部分:电学规则检验

50、电学规则检验(以下(以下简称简称ERC)、)、设计规则检验设计规则检验(以下简称(以下简称DRC)及)及布线和电路图检验布线和电路图检验(以(以下简称下简称LVS)。标准的图形数据库形式是)。标准的图形数据库形式是GDSII数据流。一个设计的数据流。一个设计的GDSII数据流数据库包括电路的多边形表述,并对目标设计划分成不数据流数据库包括电路的多边形表述,并对目标设计划分成不同的设计层次。同的设计层次。ERC指的是检验图形数据库是否有与电学设计规则相违背之处。这些电指的是检验图形数据库是否有与电学设计规则相违背之处。这些电学规则就是流程说明,并包含检验是否有无用输入,浮点输入和装载冲学规则就是

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(功能验证对VC开发与集成的功能验证分类课件.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|