功能验证对VC开发与集成的功能验证分类课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《功能验证对VC开发与集成的功能验证分类课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 功能 验证 VC 开发 集成 分类 课件
- 资源描述:
-
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、发现并纠正许多能发现并纠正许多系统级漏洞和问题。系统级漏洞和问题。在实际的处理器和固件模型中进行的仿真,在实际的处理器和固件模型中进行的仿真,结果会更加精确结果会更加精确,而且同旧的使用总线传输模型的设计流程比较,而且同旧的使用总线传输模型的设计流程比较起来,起来,可以进行更广泛的验证可以进行更广泛的验证。而且,在仿真过程中,。而且,在仿真过程中,软件也得软件也得到了调试和验证。到了调试和验证。相应的允许在芯片实际生成的同时,相应的允许在芯片实际生成的同时,给系统的给系统的发展提供较高的发展速度。发展提供较高的发展速度。最终结果是,硬、软件联合验证技术最终结果是,硬、软件联合验证技术通过在设计
展开阅读全文