我是靠谱客的博主 顺心小鸭子,最近开发中收集的这篇文章主要介绍SystemVerilog学习笔记一SystemVerilog学习笔记一,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

SystemVerilog学习笔记一

一、SystemVerilog语法简介

在正式学习SystemVerilog语法之前需要注意两点:

  1. 首先要明确实现什么样的电路,然后再有硬件代码
  2. 不同语法是对电路不同程度的抽象,在实现的时候可以根据实际情况进行选择。

二、常量和变量

在数字电路中,SystemVerilog是硬件描述语言,而每一种电路均可以是二进制。
常量
SystemVerilog的常量与Verilog是比较类似的。

1'b1;
1'b0;
16'habcd;
4'd10;

变量
SystemVerilog使用“logic”进行变量的定义

logic a;
logic [3:0] b;
logic [7:0] [7:0] c;

组合/位绑定

{a,1'b1}
{a,b}
//a和b进行拼接
{16{a}}
//16个a组合

三、运算符

基本运算符

运算符描述举例
&与运算a & b
I或运算a I b
~非运算~a
^异或运算a ^ b
!!a
+,-加运算,减运算a - b
?:条件运算a ? b : c
>>逻辑右移a>>2
>>>算数右移a>>>2
<<左移a<<1
*,/,%乘运算,除运算,取模运算尽量少用
<,<=,!=,>,>=,==比较运算a == b

缩位运算符

运算符描述举例
&向量与所有位相与运算&b[x-1:0]
I向量与所有位相或运算Ia[x-1:0]

四、赋值语句

格式:variable = expression
说明:

  1. 等号左边的variable,可以是单个变量,也可以是{a,b},但不能有常量或运算符
  2. 等号右边的expression,可以是单个变量或常量,也可以是{a+b,1’b1},但要注意位数
a=1;
//未标明位宽,系统自动识别为32bit,即a=32'b1
b=a;
c={a,b,a-b}
{d,e}={16{b},a,b}

五、电路语句

以上说明只是对systemverilog的基础语法进行了介绍,但不是正真的电路语句,后续会继续进行说明和学习。

最后

以上就是顺心小鸭子为你收集整理的SystemVerilog学习笔记一SystemVerilog学习笔记一的全部内容,希望文章能够帮你解决SystemVerilog学习笔记一SystemVerilog学习笔记一所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部