SystemVerilog笔记

SystemVerilog笔记

  1. 使用($isunknown)操作符,可以在表达式的任意位出现X或Z时返回1。
  2. $size函数返回数组的宽度
  3. 关联数组switch,以实现从字符串到数字的映射。
  4. 函数exists()来检查元素是否存在。
  5. 方法unique返回的是在数组中具有唯一值的队列,即排除掉重复的数值。
  6. with可以指示SystemVerilog如何进行搜索。在条件语句with中,item被称为重复参数,它代表了数组中一个单独的元素。
  7. struct只是数据的集合。要想在端口和程序中共享它,则必须创建一个新的类型。
  8. $cast动态转换函数:目的在于把其右边的值赋给左边的量,如果赋值成功, $cast()返回1,对越界的数值进行检查。
  9. 流操作符<< 和 >> 用在赋值表达式的右边,后面带表达式、结构或数组。流操作符用于把其后的数据打包成一个比特流。操作符>>把数据从左至右变成流,而>>则把数据从右至左变成流。
  10. 下标[256]等同于[0:255]而非[255:0]。
  11. ATM以信元为基本传输单位,信元由信头和信报组成。每个ATM信元包含53字节,其中5字节的头部信息,48字节的数据。百分之十的头部开销显得特别高,所以工程人员戏称这种开销为信元税(cell tax)。
  12. 枚举创建了一种强大的变量类型,它仅限于一些限定名称的集合。
  13. name()可以得到枚举变量值对应的字符串。
  14. next(N)返回以后第N个枚举常量。prev(N)返回以前第N个枚举变量。当到达枚举常量列表的头或尾时,函数next和prev会自动以环形方式绕回。
  15. 函数getc(N)返回位置N上的字节,toupper返回一个所有字符大写的字符串,tolower返回一个小写的字符串。任务putc(M,C)把字节C写到字符串的M位上,M必须介于0到len所给出的长度之间。函数substr(start,end)提取出从位置start到end之间的所有字符。
  16. foreach主要用于执行遍历功能的循环。
    在这里插入图片描述
  17. $timeformat的语法如下:
    $timeformat(units_number, precision_number,suffix_string, minimum_field_wdith); 其中: units_number 是 0 到-15之间的整数值,表示打印的时间值的单位:0 表示秒,-3 表示毫秒,-6 表示微秒,-9 表示纳秒, -12 表示皮秒, -15表示飞秒;中间值也可以使用:例如-10表示以100ps为单位。其默认值为`timescalse所设置的仿真时间单位。
    precision_number 是在打印时间值时,小数点后保留的位数。其默认值为0。
    suffix_string是在时间值后面打印的一个后缀字符串。其默认值为空字符串。
    MinFieldWidth是时间值字符串与后缀字符串合起来的这部分字符串的最小长度,若这部分字符串不足这个长度,则在这部分字符串之前补空格。其默认值为20。
  18. 接口信号必须使用非阻塞赋值来驱动。
  19. @(posedge clk)定义了单时钟沿,而@(clk)定义了DDR时钟(双数据率)
  20. TPLH表示低电平到高电平的时间;TPHL表示高电平到低电平的时间
  21. 可以在program中使用initial块,但是不能使用always块。
  22. .*(隐式端口连接)能自动在当前级别自动连接模块实例的端口到具体信号,只要端口和信号的名字和数据类型相同。
  23. 实例名$root允许你从顶层作用域开始明确地引用系统中的成员名。
  24. 设计断言应该期望括号内的表达式为真,否则输出一个错误。断言是声明性的代码,它的执行过程和过程代码有很大差异。
  25. Clocking blocks在UVM的验证中使用非常重要,主要用于对输入的激励驱动和对输出的采样。
  26. malloc时动态内存分配函数,用于申请一块连续的指定大小的内存块区域以void*类型返回分配的内存区域地址.
  27. new函数不能有返回值,因为构造函数总是返回一个指向类对象的句柄,其类型就是类本身。
  28. new()函数仅创建了一个对象,而new[]操作则建立一个含有多个元素的数组。new()可以使用参数设置对象的数值,而new[]只需使用一个数值来设置数组的大小。
  29. Systemverilog的句柄只能指向一种类型,即所谓的“安全类型”。
  30. this是当你使用一个变量名的时候,SystemVerilog将在当前作用域内寻找,接着在上一级作用域内寻找,直到找到该变量为止。
  31. dist操作符带有一个值的列表以及相应的权重,中间用:=或:/分开。:=操作符表示值的范围内的每一个值的权重是相同的;:/操作符表示权重重要均分到值范围内的每一个值。
  32. ->操作符可以产生和case操作符效果类似的语句块,它可以用于枚举类型的表达式。
  33. handle.constrain.constrain_mode()控制一个约束块,用handle.constraint_mode()控制对象的所有约束。
  34. 线程。fork…join_none块在调度其块内语句是时,父线程继续执行。fork…join_any块对块内语句进行调度,当第一个语句完成后,父线程才继续执行,其他停顿的线程也得继续,。在这里插入图片描述
  35. triggered()函数,可用于查询某个事件是否已被触发,包括当前时刻。
  36. @操作符是边沿敏感的,所以它总是阻塞着,等待事件的变换。其他的线程可以通过->操作符来触发事件,接触对第一个线程的阻塞。
  37. 可以使用电平敏感的wait(e1.triggered())来代替边沿敏感的阻塞语句@e1。
  38. 使用旗语可以实现对同一资源的访问控制。使用new方法可以创建一个带单个或多个钥匙的旗语,使用get可以获得一个或多个钥匙,而put则可以返回一个或多个钥匙。如果你试图获取一个旗语而希望不被阻塞,可以使用try_get()函数。
  39. 从硬件角度出发,对信箱最简单的理解是把它看成一个具有源端和收端的FIFO。信箱是一种对象,必须调用new函数来进行实例化。使用put任务把数据放入信箱里,而使用get任务则可以移除数据。peek任务可以获取信箱里数据的拷贝而不移除它。
  40. 继承允许从一个现存的类得到一个新的类并共享其变量和子程序。
  41. 使用super前缀调用前一层类的成员。
  42. 如果你的基类构造函数有参数,那么扩展类必须有一个构造函数而且在其构造函数的第一行调用基类的构造函数。
  43. $cast子程序会检查句柄所指向的对象类型,而不仅仅检查句柄本身。
  44. 虚接口(virtual interface)是一个物理接口的句柄(handle),可以通过使用虚接口来做到这一点。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/242989.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

收入和贷款有什么关系?

说到贷款&#xff0c;收入是至关重要的一环&#xff0c;收入在贷款审核过程中有着举足轻重的作用。那么具体来说&#xff0c;贷款到底和收入有什么关系呢&#xff1f;贷款审核考察借款人的收入目的是为了核实借款人的偿还能力&#xff0c;因此贷款机构不仅要考核借款人的收入&a…

银行系普惠和小贷系普惠,哪个贷款更靠谱?

2017年5月26日银监会发布了《大中型商业银行设立普惠金融事业部实施方案》&#xff0c;《实施方案》明确了大中型商业银行设立普惠金融事业部的总体目标&#xff0c;通过建立适应普惠金融服务需要的事业部管理体制&#xff0c;构建科学的治理机制和组织架构&#xff0c;健全专业…

并串 转换

并串 转换 题目描述 设计一个模块进行并串转换,要求每四位d输为转到一位dout输出,输出valid_in表示此时的输入有效 输入描述: clk为时钟 rst为低电平复位 d 信号输入 输出描述: dout 信号输出 valid_in 表示输入有效 题目解读 串并转换操作是非常灵活的操作,核心思想就…

H.264码流解析 一个SPS的nalu及获取视频的分辨率

00 00 00 01 67 42 00 28 E9 00 A0 0B 77 FE 00 02 00 03 C4 80 00 00 03 00 80 00 00 1A 4D 88 10 94 00 00 00 01 00 00 00 01为NALu头&#xff0c;‍其余码流由十六进制转为二进制 67 0110 0111 42 0100 0010 00 0000 0000 28 0010 1000 E9 1110 1001 00 0000 0000 A…

小额贷款利息违法吗?

我们经常听到很多朋友说&#xff0c;小额贷款利息高&#xff0c;认为小额贷款的利息是高利贷&#xff0c;不合法。那到底小额贷款算不算高利贷呢&#xff0c;是不是合法的呢&#xff1f;在解释这个问题之前&#xff0c;我们先来看下国家法律对合法利息的定义。《最高人民法院关…

什么样的征信才算是好的?

有过贷款的朋友都知道征信报告对贷款有很大的影响&#xff0c;有时候贷款的前期工作都准备好了&#xff0c;突然发现征信有问题&#xff0c;结果贷款就黄了。可见征信报告对贷款的作用还是很大的&#xff0c;贷款机构之所以会看重征信记录&#xff0c;因为它是一个人过去信用的…

时钟 切换

时钟 切换 题目描述 存在两个同步的倍频时钟clk0 clk1,已知clk0是clk1的二倍频,现在要设计一个切换电路,sel选择时候进行切换,要求没有毛刺。 信号示意图 题目解读 通过在每个时钟源的选择路径中插入一个负边沿触发的D触发器,可以确保时钟在高电平时,输出保持不变。 通…

动态时间规整-DTW算法

作者&#xff1a;桂。 时间&#xff1a;2017-05-31 16:17:29 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/6924911.html 前言 动态时间规整&#xff08;Dynamic Time Warping&#xff0c;DTW&#xff09;是孤立词识别的早期技术&#xff0c;梳理一下&#xff0c;主…

到底逾期几次才会影响贷款申请?

大家都知道&#xff0c;申请贷款时&#xff0c;贷款机构会重点考察借款人的征信记录&#xff0c;那么&#xff0c;评估标准是什么呢&#xff1f;到底逾期几次才会影响到贷款的申请&#xff1f;在信贷行业&#xff0c;对逾期标准的评判一般是按“连三累六”的原则&#xff0c;简…

状态机与时钟分频

状态机与时钟分频 题目描述 使用状态机实现时钟分频,要求对时钟进行四分频,占空比为0.25 信号示意图 题目解读 首先考虑输入输出,作为分频电路,有一个时钟输入端,clk,输出端div3,再加一个复位端(这里不加也可)所以输入 clk,rst输出 clk_out再考虑状态转换的问题。4分…

candence 16.6 win8.1 x64 破解

测试机系统截图&#xff1a; 破解说明具体的步骤&#xff1a; 1、安装licensemanager&#xff0c;问license时&#xff0c;单击cancel&#xff0c;然后finish. 2、接下来安装cadence的product,即第二项,直到结束. 2.1 安装cadence16.6最新补丁Hotfix_SPB16.60.003_wint_1of1.ex…

矢量量化(VQ)

作者&#xff1a;桂。 时间&#xff1a;2017-05-31 21:14:56 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/6925955.html 前言 VQ&#xff08;Vector Quantization&#xff09;是一个常用的压缩技术&#xff0c;本文主要回顾&#xff1a; 1&#xff09;VQ原理 2&am…

超前进位加法器

超前进位加法器 题目描述 求两个四位的数据编写一个四位的超前进位加法器,建议使用子模块 提示:超前进位加法器的位公式如下 这里‘+’ ‘’符号不是‘加’和‘乘’,是‘或’和 ‘与’ 题目解析 题目要求 4级可以表示为如下,这里P和G是传播信号和生成信号: `timesc…

哪些职业申请贷款比较难?

贷款一般会重点考核借款人的收入&#xff0c;信用&#xff0c;资产&#xff0c; 工作等基本信息&#xff0c;有时候明明借款人有着较高的收入&#xff0c;信用也良好&#xff0c;可是最后还是被拒绝了。这其中有很大一部分是跟借款人的职业有一定的关系。那到底哪些职业的人贷款…

常用音频软件:Wavesufer

作者&#xff1a;桂。 时间&#xff1a;2017-06-02 10:23:39 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/6932408.html 前言 只列举两个自己用过的&#xff08;wavesufer和praat&#xff09;&#xff0c;如果有其他更好的软件&#xff0c;还希望各位留下链接。 本…

等额本息和等额本金,哪个还款方式更划算?

贷款还款方式有很多种&#xff0c;其中等额本息和等额本金最常见的两种还款方式。但是有很多朋友对这两种还款方式没有概念&#xff0c;甚至分不清这两者到底有什么区别&#xff0c;所以今天我们就跟大家来详细解说下&#xff0c;什么是等额本金&#xff0c;什么是等额本息&…

全 加 器

全加器 题目描述 请用题目提供的半加器实现全加器电路 timescale 1ns/1nsmodule add_half(input A ,input B ,output wire S ,output wire C );assign S A ^ B; assign C A & B; endmodule/*****************…

申请表怎么填才能提高信用卡额度?

对于大多数朋友来说&#xff0c;申请信用卡都希望下卡的额度能高一些&#xff0c;但是对于很多人来说&#xff0c;最终下卡的额度一般在5000-2万之间比较多。其实信用卡的额度和申请人的综合评分有很大的关系&#xff0c;综合评分越高额度可能会越大&#xff0c;而综合评分与申…

串行进位加法器

串行进位加法器 题目描述 ② 请用全加器电路①实现串行进位的4位全加器电路 题目解读 可将4个全加器串行相连,实现四位数串行进位加法器。原理图如下: `timescale 1ns/1nsmodule add_half(input A ,input B ,output wire S ,…

个人贷款5级分类,来看看你是哪一级

第一类&#xff08;特优客户&#xff09;年龄&#xff1a;30周岁——50周岁之间。婚姻&#xff1a;已婚且家庭关系稳定。职业&#xff1a;副处级以公务员、事业单位正式编制人员&#xff0c;副团级以上军干部&#xff0c;学校领导人员&#xff0c;二甲以上医院副主治级以上正式…