0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

参数随机策略:从randc到off-line cyclic random

sanyue7758 来源:验证芯发现 2023-06-01 09:09 次阅读

根据对randc的了解和思考,分享一种基于testcase颗粒度的"周期性"随机控制思路(off-line cyclic random)。并从编码实现上,验证了该思路的可行性。

randc背景

在systemverilog中,随机循环变量(randc),在一次仿真中多次调用randomize,会随机循环遍历其声明范围的所有值。随机序列中的值都被取到后,产生一个新的随机序列。

f01e4464-0017-11ee-90ce-dac502259ad0.png

randc修饰的变量存在一些限制,如对变量类型的限制,不能参与solve before。而且randc只能是在一次仿真中具有“周期性”随机的特性,此前用例的随机结果不会影响当前仿真的周期性取值序列。也可以认为randc是一种on-line的周期性随机

off-line cyclic random

验证用例集中的testcase多次仿真时,当前testcase的随机过程无法知道此前用例的随机状态和结果。因此有一定概率会出现随机变量在多次仿真时取到相同的值。

和randc类似,有没有可能off-line的周期性随机:随机变量在testcase的多次仿真之间具有周期性。

off-line cyclic random:随机变量的随机取值不会和已有用例的随机结果重复,并能够"周期性"取值。已有的随机结果可以是已有用例的随机结果,也可以是预指定的取值集合。

f0437036-0017-11ee-90ce-dac502259ad0.png

编码实践

为验证上述思路的可行性,并且还要降低对已有的随机激励结构的影响,开发一个randc_plugin的package。使用时需要两步骤适配:

已有的随机激励class继承base_randc_plugin;

使用参数宏添加随机参数;

一个简单的demo如下:

f060d5fe-0017-11ee-90ce-dac502259ad0.png

参数宏randc_int_registry表示注册一个需要randc based testcase的int型变量,适用于systemverilog中的int,bit和enum类型。数组和其他复杂类型的注册宏待后续补充完整。

on-line multi randomize

即使是使用rand修饰的随机变量,使用randc_int_registry注册后,仍具有randc的性质,而且还可以参与solve before,并且原有的constraint不受影响。

测试函数如下:

f078a936-0017-11ee-90ce-dac502259ad0.png

汇总得到的随机结果如下:

f09e5f28-0017-11ee-90ce-dac502259ad0.png

off-linemulti randomize

测试函数如下:

f0c26850-0017-11ee-90ce-dac502259ad0.png

将用例仿真10次后,汇总的随机结果如下:

f0ef0b08-0017-11ee-90ce-dac502259ad0.png

由于每个领域的验证各具特色,这里仅提供一种随机控制的思路和编码实现尝试,randc_plugin还在持续完善中。





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编码器
    +关注

    关注

    45

    文章

    3599

    浏览量

    134181

原文标题:参数随机策略:从 randc 到 off-line cyclic random

文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    off-line LED driver

    驱动器的离线off line怎么理解?
    发表于 04-06 19:05

    浅析cache控制器的分配策略与替换策略

    linefillvictim cacheline。整个替换的过程称为eviction。替换策略控制着victim选择的过程,备选的cache line中选择哪个cache
    发表于 06-15 16:24

    AN-43 TOPSwitch-HX的应用指南

    The TOPSwitch-HX is a highly integrated monolithic off-line switcher IC designed for off-line power
    发表于 04-27 16:45 61次下载

    LM5021,pdf datasheet (AC-DC Cu

    The LM5021 off-line pulse width modulation (PWM) controllercontains all of the features needed
    发表于 09-08 19:06 42次下载

    LM5021,off-line pulse width mo

    The LM5021 off-line pulse width modulation (PWM) controllercontains all of the features needed
    发表于 09-29 15:01 16次下载

    Integrated Off-Line Switcher w

    TOPSwitch-HX cost effectively incorporates a 700 V powerMOSFET, high voltage switched current source, PWM control,oscillator, thermal shutdown circuit, fault protection and othercontrol circuitry onto a monolithic device.
    发表于 11-02 13:41 15次下载

    Off-Line SMPS Quasi-Resonant P

    ICs. It isoptimized for off-line switch mode power supplyapplications such as LCD monitor, DVD R/W, DVDCombo, Blue-ray DVD, s
    发表于 11-10 15:19 21次下载

    Multi-Output Flyback Off-Line

    Basic ConceptR26; Outputs can be positive or negative depending on which side ofthe output (top or bottom) is grounded. 
    发表于 07-30 10:14 11次下载
    Multi-Output Flyback <b class='flag-5'>Off-Line</b>

    UCC2888,UCC3888,pdf(Off-line P

    The UCC3888 controller is optimized for use as an off-line, low-power, low-voltage, regulated bias
    发表于 09-30 00:13 10次下载

    什么是CRC (Cyclic Redundancy Chec

    什么是CRC (Cyclic Redundancy Check)  英文缩写: CRC (Cyclic Redundancy Check) 中文译名: 循环冗余校验
    发表于 02-22 17:31 840次阅读

    C语言random函数伪随机数产生

    由C语言的stalib.h库里面的random函数可以得到一个0-0x7FFFh的随机数,当然,调用随机数函数之前,是要进行种子的筛选的,以当前的时间参数作为种子,可以使得伪
    发表于 08-25 17:56 1.3w次阅读

    KA1M0565R_KA1H0565R pdf

    The Fairchild Power Switch(FPS) product family is specially designed for an off-line SMPS with minimal external.
    发表于 04-11 14:37 65次下载
    KA1M0565R_KA1H0565R pdf

    AUXILIARY POWER SUPPLY USING VIPer20

    The present board prototype is a 120 to 375 VDC input off-line single switch Flyback, working
    发表于 06-03 15:23 20次下载

    三相电流连续型Off-line PFC

    三相电流连续型Off-line PFC
    发表于 09-11 10:57 7次下载
    三相电流连续型<b class='flag-5'>Off-line</b> PFC

    如何利用SystemVerilog仿真生成随机

    随机变量,且在指定范围内服从均匀分布;randc是在rand的基础上要求当生成的随机数已经在指定范围内完成一次遍历之后,将重复遍历,c为cyclic(循环)。声明
    的头像 发表于 10-30 10:33 1.1w次阅读
    如何利用SystemVerilog仿真生成<b class='flag-5'>随机</b>数