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 ...
随机推荐
- 记一次server 2008 R2的按装过程
项目上一直在用的dell务器在去年年底突然出现系统过期,导致c盘的东西全部丢失.我们用激活工具激活,还是没能找回丢失的东西. 为了装这个系统,跟同事一起折腾了好些次,最后发现安装服务器的时候有个磁盘阵 ...
- 63 搜索旋转排序数组II
原题网址:https://www.lintcode.com/problem/search-in-rotated-sorted-array-ii/description 描述 跟进“搜索旋转排序数组”, ...
- python 获取公网 ip
from urllib2 import urlopen my_ip = urlopen('http://ip.42.pl/raw').read() print 'ip.42.pl', my_ip fr ...
- python第四课
1.lambda()函数 可以直接定义一个函数,简化用def的定义. >>> func=lambda x,y:x+y>>> print(func(3,4))7> ...
- nfsv3 vs nfsv4
https://www.quora.com/What-is-the-difference-between-NFSv3-and-NFSv4
- 2018-8-17-C#-从零开始写-SharpDx-应用-控制台创建-Sharpdx-窗口
title author date CreateTime categories C# 从零开始写 SharpDx 应用 控制台创建 Sharpdx 窗口 lindexi 2018-8-17 9:3:3 ...
- Docker(一)简介及核心概念
1.简介 Docker是一个开源的应用容器引擎:是一个轻量级容器技术: Docker支持将软件编译成一个镜像:然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像: 运行中的这 ...
- SELinux安全方式
一.SElinux配置文件 在CentOS 7系统中部署SELinux非常简单,由于SELinux已经作为模块集成到内核中,默认SELinux已经处于激活状态.对管理员来说,更多的是需要配置与管理SE ...
- 【html、CSS、javascript-12】jquery-效果
一.jQuery 效果- 隐藏和显示 通过 jQuery,您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素: $("#hide").click(func ...
- 洛谷 3089 [USACO13NOV]POGO的牛Pogo-Cow
单调队列优化dp; 对于每个点开个单调队列,按转移到它的点到它的距离从大到小,得分也从大到小排列. 每次枚举当前点前面的所有点,对于每个点的队列中二分一个距离小于等于它到当前点的答案值,放到当前点的队 ...