No.3 Verilog 语言要素
- 标识符
任意字母、数字、"$"和"_"组成,标识符第一个不能是数字。 - 注释
()/*可扩展多行*/
()//本行结束 - 系统函数
以$字符开始的标识符。
()$display("...") //$display系统函数用新的一行字符显示指定的信息
()$time //返回当前仿真时间 - 编译器指令
()‘define和‘undef //类似于C语言
()‘ifdef、‘ifndef、‘else、‘elseif、‘endif //条件编译
()‘default_nettype //为隐式线网指定线网类型
()‘include //用于在代码中包含任何其他文件的内容
‘include "../../asim.v"
()‘timescale //定义时间单位
()‘restall //讲所有的编译指令重新设置为缺省值
()‘line //将行号和文件名复位至指定的值 - 值集合
四种基本值:、、x(未知)、z(高阻态)
整型数:
()简单十进制:,,...
()基数格式:
'B0_x1 ----4位二进制
'O32 ----5位八进制
'D2 ----4位十进制
'Hx ----4位x,即xxxx
*位长不能是表达式,x和z在十六进制中为四位,八进制中为三位。
*若位宽定义比数值小,则左边的多余位被相应截断,若大则填0补齐。
()实数:十进制表示,科学计数法,5E-,23_45e3... - 数据类型
()线网类型:结构化元件间的物理连线,缺省值为z。
wire & tri
wor & trior
wand & triand
trireg
tri0 & tri1
supply0 & supply1
*未声明的线网缺省设置为1位的wire。
*线网分为向量线网(vectored)和标量线网(scalared),其中向量线网不允许对其进行局部操作,必须整体操作。
()变量类型:抽象的数据存储单元,只能在initial和always中被赋值,缺省值为x。
reg、integer、time、real、realtimme
reg [:] pus; //pus为4位的变量
reg [:] memory[:];//memory为一个由64个四位reg变量组成的数组(存储器)
integer: 定义整型变量
integer run_state[:][:] //16x16的整型数组
()命名事件:event ... - 参数
参数是一个常量。
全局参数:parameter
局部参数:localparam
eg: parameter N = ;
No.3 Verilog 语言要素的更多相关文章
- 【iCore、iCore2 双核心板】EPCS 实验(SPI Flash)(基于Verilog语言)
_____________________________________ 深入交流QQ群: A: 204255896(1000人超级群,可加入) B: 165201798(500人超级群,满员) C ...
- java与.net比较学习系列(2) 基础语言要素
这一篇从最基础的开始对比总结,说起基础语言要素,故名思义,就是学习语言的基础,主要内容包括标识符,关键字和注释.我想从以下几点进行总结,有区别的地方有都使用红色粗体字进行了总结. 1,标识符 2,关键 ...
- 基于MATLAB2016b图形化设计自动生成Verilog语言的积分模块及其应用
在电力电子变流器设备中,常常需要计算发电量,由于电力电子变流器设备一般是高频变流设备,所以发电量的计算几乎时实时功率的积分,此时就会用到一个积分模块.发电量计算的公式如下:Q=∫P. FPGA由于其并 ...
- Verilog语言实现并行(循环冗余码)CRC校验
1 前言 (1) 什么是CRC校验? CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定.循环冗余检查(CRC)是一种数据传输检错功能, ...
- Verilog语言:还真的是人格分裂的语言
人气腹语术师天愿在现场披露了被人偶搭档夺取灵魂的腹语术师将妻子杀害的表演节目.天愿真的陷入了多重人格,命令自己杀害妻子和子的人偶的人格出现了.为了不(让自己)杀害和弟子登川有外遇的妻子,天愿提出委托想 ...
- Verilog 语言 001 --- 入门级 --- 编写一个半加器电路模块
Verilog 语言编写一个 半加器 电路模块 半加器 的电路结构: S = A 异或 B C = A 与 B 1. 程序代码 module h_adder (A, B, SO, CO); input ...
- FPGA基础(verilog语言)——语法篇
verilog语言简介 verilog语言是一种语法类似于c的语言,但是与c语言也有不同之处,比如: 1.verilog语言是并行的,每个always块都是同时执行,而c语言是顺序执行的 2.veri ...
- 从RTL视图到Verilog语言-转可乐豆原创
从RTL视图到Verilog语言 曾经听过某位大牛都说:“当你的学习FPGA到一个境界的时候,你看到的硬件描述语言,将不再是单纯的语言,而是由一个个逻辑门组成的电路图,一旦达到这个境界,方能把代码写到 ...
- Verilog语言中的系统任务和系统函数
Verilog语言中预先定义了一些任务和函数,用于完成一些特殊的功能,它们被称为系统任务和系统函数,这些函数大多数都是只能在Testbench仿真中使用的,使我们更方便的进行验证. `timescal ...
随机推荐
- final,finally和finalize之间的区别
(1)final用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承.内部类要访问局部变量,局部变量必须定义成final类型,比如一段代码 (2)finally是异常处理语句结构的一部 ...
- windows下 将tomcat做成服务,并于oracle后启动
一.将tomcat做成服务 1.下载解压版的tomcat 6.*, 设置java.tomcat的环境(这个就不说了). 2.运行->cmd->到tomcat安装目录的bin目录: 3.运行 ...
- CentOS7.4 安装JDK 步骤
1.先在官网下载jdk1.8的压缩文件 2.用putty将压缩文件拷到home目录下 3.新建一个/home/jdk1.8目录 : mkdir /home/jdk1.8 4.将压缩文件解压到hom ...
- Mybatis逆向工程文件标签的详细介绍:
?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUB ...
- YUM配置文件
创建容器,位置在/etc/yum.repos.d,扩展名必须是.repo #cd /etc/yum.repos.d #vim yum.repo 新建一个仓库文件,名字可以随便定义,在 ...
- 解决pip安装过慢的问题
1.pip install scipy -i https://pypi.douban.com/simple/ 2.pip install --index https://pypi.mirrors.us ...
- shell 第一篇
1. 查看当前linux 支持的shell 类型 [root@nfs01 ~]# cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash / ...
- 【vue】/vue-ele-project
作者大大的地址是:https://github.com/JinwenXie/vue-ele-project 还是老办法,先运行项目看看效果 我不算是外卖爱好者,不过觉得那个添加商品到购物车的动画效果很 ...
- 设置mysql二进制日志过期时间
((none)) > show variables like 'expire_logs_days'; +------------------+-------+ | Variable_name | ...
- bzoj 3033 太鼓达人——欧拉图搜索
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3033 思路:肯定是把2^m个数当成点,每个点连了2条入边.2条出边,然后求一个经过所有点一次 ...