Verilog基本语法初学

一、语言要素

(一)概述

1、空白符(White Space)
空格、换行、换页、Tab等;
是代码错落有致,提高可读性。
2、注释(Comment)
单行注释:“ // ”;
多行注释:“ /* ”~“ */ ”。
3、标识符(Identifier)
字母、数字、_、$,最长1023个字符。
4、关键字(Key Word)
所有的关键字都是小写的。
5、运算符(Operator)

(二)常量

1、整数(Integer)
+/-<位宽>’<进制><数字>
(1)较长的数之间可用下划线分开;
(2)未定义整数位宽,则默认32位;
(3)定义位宽比数值位数长,通常在左边填0补位,如果数最左边一位为x或z,就相应地用x或z在左边补位;
(4)“?”是高阻态z的另一种表示符号,数字表示中与“z”等价可互相替代;
(5)x(或z)在二进制中代表1位x(或z),在八进制中代表3位x(或z),在十六进制中代表4位x(或z),其代表的宽度取决于所用的进制。;
(6)整数可以带符号,且正负号应写在最左边,负数通常表示为二进制补码形式;
(7)位宽与进制默认时默认是十进制数;
(8)位宽和’之间、进制与数值之间允许出现空格,‘和进制之间、数值之间不允许出现空格;
(9)带符号整数定义;例:8’sh5a。
2、实数(Real)
十进制表示法 小数点两侧都必须有数字;
科学计数法
实数转整数 四舍五入
3、字符串(String)
reg型变量
若声明的reg型变量位数大于字符串实际长度,则赋值操作后字符串变量的左端(即高位)补0;若小于,则字符串左端被截去。

(三)数据类型

1、四值逻辑
0:低电平、逻辑0或逻辑非;
1:高电平、逻辑1或“真”;
z或Z:高阻态;
x或X:不确定或未知的逻辑状态。
2、数据类型:
net型
相当于硬件电路各物理连接,特点是输出的值紧跟输入值的变化而变化。
(1)wire型
默认为wire型。位连接到驱动,值为高阻态。
(2)tri型
增加程序可读性,可以更清除地表示该信号综合后的电路连线具有三态的功能。
variable型(register型)。
(1)reg型
综合时综合器根据具体情况映射成寄存器或连线。
(2)integer型
多用于表示循环的变量。不能做为位向量访问。
综合时初始值为x。
(3)real型
表示实数寄存器,主要用于仿真,不可综合。
(4)time型
用于对模拟时间的存储与处理,不可综合。

(四)参数

1、参数parameter

2、参数声明

3、参数传递
(1)“#”符号隐式重载
(2)在线显式重载
(3)defparam语句显示重载
4、localparam
定义局部参数。

(五)向量

1、标量与向量
2、位选择和域选择
3、存储器

(六)运算符

1、算数运算符
+
-
*
/
%
2、逻辑运算符
&&
||
!
3、位运算符
~
&
|
^
^~ ,~^
4、关系运算符
<
<=
>
>=
5、等式运算符
== 相等运算符
!=
=== 全等运算符
!==
6、缩减运算符(是单目运算符)
&
~&
|
~|
^ 异或
^~ , ~^ 同或
7、移位运算符
>>
<<
>>>
<<<
算数移位操作符"<<<"">>>"
8、指数运算符
**
9、条件运算符
?:
10、位拼接运算符
{ }
将两个或多个信号某些位拼接起来;符号位扩展;嵌套使用;移位操作。
11、运算符的优先级

二、语句语法

(一)过程语句

initial:用于初始化,只执行一次;
always:重复执行,可综合。

always过程语句
带触发条件
1、敏感信号列表“sensitivity list”
边沿敏感型、电平敏感型
2、posedge与negedge关键字
posedge clk:时钟信号clk的上升沿作为触发条件;
negedge clk:时钟信号clk的下降沿作为触发条件。
3、Verilog-2001标准对敏感信号列表
(1)敏感信号列表中可用逗号分隔敏感信号
(2)敏感信号列表中使用通配符“**”
4、用always过程块实现较复杂的组合点亮

initial过程语句
initial语句不带触发条件,其块语句沿时间轴只执行一次。

(二)块语句

串行块begin-end
并行块fork-join

(三)赋值语句

1、持续赋值与过程赋值
assign 为持续赋值语句,主要用于对wire型变量的赋值;
过程赋值语句主要用于对reg型变量进行赋值。
2、阻塞赋值与非阻塞赋值

(四)条件语句

if-else语句
case语句
1、case语句
2、casez与casex语句

(五)循环语句

for语句
repeat语句:连续执行一条语句n次
while语句
forever语句:连续执行语句;多用在initial块中,以生成时钟等周期性波形。

(六)编译指示语句

1、宏替换define
2、文件包含include
3、条件编译ifdef、else、endif
if 宏名
endif
当宏名在程序中被定义过的话,则下面的语句块参与源文件的编译,否则,该语句块将不参与源文件的编译。

(七)任务与函数

1、任务
2、函数

(八)顺序执行与并发执行

(九)Verilog—2001语言标准

1、改进和增强的语法结构
提高Verilog行为级和RTL级建模的能力;
改进Verilog在深亚微米设计和IP建模的能力;
纠正和改进了Verilog-1995标准中的错误和易产生歧义之处。
(1)ANSI C风格的模块声明
(2)逗号分隔的敏感信号表
(3)在组合逻辑敏感信号列表中使用通配符“ * ”
(4)generate语句
(5)带符号的算数扩展
(6)指数运算符 * *
(7)变量声明时进行赋值
(8)常数函数
(9)向量的位选和域选
(10)多维矩阵
(11)矩阵的位选则和部分选择
(12)模块的实例化时的参数重载
(13)register改为variable
(14)新增条件编译语句
(15)超过32位的自动宽度扩展
(16)可重入任务(Re-entrant Task)和递归函数(Recursive Function)
(17)文件和行编译指示
2、属性及PLI接口
(1)设计管理
(2)属性
(3)增强的文件输入、输出操作
(4)VCD文件的扩展
(5)提高了对SDF(标准延时文件)的支持
(6)编程语言接口(PLI)的改进

三、Verilog设计的层次与风格

(一)Verilog设计的层次

抽象级别5级:
系统级(System Level)
算法级(Algorithm Level)
寄存器传输级(Register Transfer Level,RTL)
门级(Gate Level)
开关级(Switch Level)
描述方式:
结构(Structural)描述
行为(Behavioural)描述
数据流(Data Flow)描述

(二)门级结构描述

1、门元件
2、门级结构描述
3、行为描述
4、数据流描述
5、不同描述风格设计
6、多层次结构电路设计
7、基本组合电路设计
8、基本时序电路设计
9、三态逻辑设计

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

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

相关文章

spring 事务持久性_项目学生:Spring数据的持久性

spring 事务持久性这是Project Student的一部分。 其他职位包括带有Jersey的Webservice Client&#xff0c;带有Jersey的 Webservice Server和业务层 。 RESTful webapp onion的最后一层是持久层。 持久层有两种哲学。 一个阵营将数据库视为一个简单的存储&#xff0c;并希望…

【渝粤教育】广东开放大学 商法 形成性考核 (40)

选择题 题目&#xff1a;2020年1月1日&#xff0c;小李到广州A超市购物&#xff0c;发现A超市设有服务台和自助寄存柜。考虑到服务台需要排队&#xff0c;为节省时间&#xff0c;小李根据A超市对自助寄存柜的使用方法及物品的保管等问题的明确指引和警示&#xff0c;进行操作&a…

力扣算法001_两数之和

1、 两数之和 给定一个整数数组 nums 和一个目标值 target&#xff0c;请你在该数组中找出和为目标值的那 两个 整数&#xff0c;并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素不能使用两遍。 示例: 给定 nums [2, 7, 11…

使用Apache Ignite瘦客户端– Apache Ignite内部博客

从2.4.0版本开始&#xff0c;Apache Ignite引入了一种新的连接到Ignite群集的方法&#xff0c;该方法允许与Ignite群集进行通信而无需启动Ignite客户端节点。 从历史上看&#xff0c;Apache Ignite提供了客户端和服务器节点两个概念。 点燃旨在用作轻量级模式的客户端节点&…

【渝粤教育】广东开放大学 岭南文化概论 形成性考核 (45)

选择题 题目&#xff1a; &#xff08;&#xff09;是岭南文化中最有响并最具典型性的文化。 选择一项&#xff1a; 答案&#xff1a;看左侧 题目&#xff1a; &#xff08;&#xff09;是岭南文化中最有响并最具典型性的文化。 选择一项&#xff1a; 答案&#xff1a;看左侧…

【渝粤教育】广东开放大学 数据采集技术 形成性考核 (29)

选择题 题目&#xff1a;GET和POST的区别&#xff0c;以下说法不正确的有&#xff08;&#xff09;。 题目&#xff1a;以下属于HTTP协议的主要特点的是&#xff08;&#xff09;。 题目&#xff1a;增量式爬虫中的&#xff08;&#xff09;指的是&#xff1a;爬虫以相同的频率…

2020-12-15通信原理

1、随机过程是一类随时间作随机变化的过程&#xff0c;不能用确切的时间函数描述。 不同角度理解&#xff1a;&#xff08;1&#xff09;对应不同随机试验结果的时间过程的集合&#xff1b;&#xff08;2&#xff09;随机过程是随机变量概念的延伸。 可以把随机过程看作是在时间…

【渝粤教育】广东开放大学 机械制造基础 形成性考核 (51)

选择题 题目&#xff1a;退火一般安排在 ( ) 题目&#xff1a;从蠕墨铸铁的牌号上可以看出其硬度和冲击韧性。 题目&#xff1a;钎焊接头的主要缺点是&#xff08; &#xff09; 题目&#xff1a;高碳钢淬火后回火时,随回火温度升高其&#xff08; &#xff09; 题目&#xff1…

【渝粤教育】广东开放大学 电子支付与安全 形成性考核 (59)

选择题 题目&#xff1a;直接参与者&#xff1a;商行和央行&#xff08;商行以其不通层次的管辖银行在相应层次的央行开设清算帐户&#xff09; 答案&#xff1a;看左侧 题目&#xff1a;支付系统全国处理中心是控制支付系统运行&#xff0c;管理国家金融网络通信、接收、结算、…

java 将光标移至行首_Java:将条件移至消息文件

java 将光标移至行首Java类ResourceBundle和MessageFormat提供了一个很好的工具集&#xff0c;用于解决Java应用程序内部的本地化消息。 这篇文章提供了一个小示例&#xff0c;说明如何使用ChoiceFormat将与消息相关的简单条件从Java代码移动到消息文件中。 如果您已经知道Choi…

2020-12-19通信电子线路第一章

振幅键控&#xff08;Amplitude-shift keying&#xff09; (ASK) 相位键控&#xff08;phase-shift keying&#xff09; (PSK) 频率键控&#xff1a;&#xff08;Frequency-shift keying&#xff09; (FSK) CDMA (Code Division Multiple Access) 码分多址 软件无线电结构&am…

【渝粤教育】广东开放大学 网络市场与预测 形成性考核 (23)

选择题 题目&#xff1a;&#xff08;&#xff09;是利用互联网发掘和了解顾客需求、市场机会、竞争对手、行业潮流、分销渠道以及战略合作伙伴等方面的情况。 题目&#xff1a;市场调查首先要解决的问题是&#xff08; &#xff09;。 题目&#xff1a;为了在市场调查方案实施…

在Ubuntu 18.04上实际安装OpenJDK 11

OpenJDK 11于 1018年9月25日发布 。由于这是版本8之后的第一个LTS版本&#xff0c;因此期待已久。 在Ubuntu 18.04&#xff08;Bionic Beaver&#xff09;上安装了该软件包后&#xff0c;该软件包附带了一个名为openjdk-11-jdk的软件包&#xff0c;令我惊讶的是它仍然是早期版本…

【渝粤教育】广东开放大学 计量基础知识 形成性考核 (48)

选择题 题目&#xff1a;工业计量也称工程计量。一般指工业、工程、生产企业中的&#xff08;&#xff09;计量。 答案&#xff1a;看左侧 题目&#xff1a;我国古代有许多令炎黄子孙骄傲自豪的计量文化&#xff0c;我们耳熟能详的就有&#xff08;&#xff09;等。 答案&#…

Verilog二选一数据选择器

//二选一数据选择器module mux2_1(a0,a1,s,f) input a0,a1,s; output f;//默认是wire&#xff08;线&#xff09;变量 assign f(s)?a1:a0;//assign 专门给线类型变量赋值 endmodulemodule mux2_1(a,s,f) input s; input [1:0]a&#xff1b; output f; reg f;//reg(寄存器型) a…

【渝粤教育】电大中专Office办公软件 (1)作业 题库

1.西文字符一般采用的编码是&#xff08; &#xff09;。 A.ASCII码 B.BCD码 C.国标码 D.EBCDIC码 正确 正确答案&#xff1a;左边查询 学生答案&#xff1a;A 2.若已知一汉字的国标码是5E38&#xff0c;则其内码是&#xff08; &#xff09;。 A.DE38 B.DEB8 C.7E58 D.5EB8 错…

现代交换技术学习笔记001

1、交换 在通信领域中&#xff0c;所谓交换&#xff0c;就是在通信网上&#xff0c;负责在通信的源和目的终端之间建立通信信道传送通信信息的机制&#xff08;控制&#xff09;。 2、通信网的组成&#xff08;三要素&#xff09; 交换设备&#xff0c;传输设备&#xff0c;终端…

【渝粤教育】电大中专中医基础知识 (3)作业 题库

1.“证”是指 A.疾病的体征与症状 B.对疾病的症状与体征的分析 C.对疾病某一阶段的病理概括 D.对疾病全过程规律的认识 E.对疾病的症状与体征的调查 错误 正确答案&#xff1a;左边查询 学生答案&#xff1a;未作答 2.中医学认识疾病和治疗疾病的基本思路是 A.恒动观念 B.同病异…

【渝粤教育】电大中专会计电算化作业 题库

1.下列有关会计电算化狭义概念的说法正确的是()。 A.以会计理论为主体的电子信息技术在会计工作中的应用 B.与实现电算化有关的所有工作 C.以电子计算机为主体的电子信息技术在会计工作中的应用 D.与实现电算化有关的主要工作 错误 正确答案&#xff1a;左边查询 学生答案&…

移动通信学习笔记_01概述

OSI 7层模型&#xff1a;应用层、表示层、会话层、传输层、网络层、数据链路层、物理层 TCP/IP共5层&#xff1a;物理层、数据链路层、网络层、传输层&#xff08;运输层&#xff09;、应用层 物理层&#xff1a;编码&#xff08;信道编码&#xff09;、调制 本课程&#xff1a…