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 ...
随机推荐
- c++设计模式:观察者模式
主要思想:建立一个一对多的关系,当一个对象发生发生变化时,其他对象也发生变化. 可以举个博客订阅的例子,当博主发表新文章的时候,即博主状态发生了改 变,那些订阅的读者就会收到通知,然后进行相应的动作, ...
- 第五章 Odoo 12开发之导入、导出以及模块数据
大多数Odoo 模块的定义,如用户界面和安全规则,实际是存储在对应数据表中的数据记录.模块中的 XML 和 CSV 文件不是 Odoo 应用运行时使用,而是载入数据表的手段.正是因为这个原因,Odoo ...
- python 日记 day5 字典
一.数据类型分为: 1.不可变数据类型:元组,bool,int,str (不可更改的又叫可哈希) 2.可变数据类型 :list,dict ,set (可变的又叫不可哈希) 字典: 优点:1.可二分 ...
- Python爬虫笔记【一】模拟用户访问之表单处理(3)
学习的课本为<python网络数据采集>,大部分代码来此此书. 大多数网页表单都是由一些HTML 字段.一个提交按钮.一个在表单处理完之后跳转的“执行结果”(表单属性action 的值)页 ...
- 巧用having
mysql学习教程参考:https://www.w3school.com.cn/sql/index.asp where 与 having实例运用参考:https://www.2cto.com/data ...
- jQuery Validate扩展验证方法 (zhangxiaobin)
/***************************************************************** jQuery Validate扩展验证方法 (zhangxiaob ...
- JobTracker与TaskTracker的关系
JobTracker 对应于 NameNode TaskTracker 对应于 DataNode DataNode 和NameNode 是针对数据存放来而言的 JobTracker和TaskTrac ...
- ImportError: No module named 'pycocotools'
错误原因很简单,就是缺少了pycocotools这个包,首先你需要pip install pycocotools,看少了什么包没安装,我这里少了Cython 于是我又安装了Cython,然后再安装py ...
- Lamdba表达式的代码使用讲解
public class Lambda{ public static void main(String[] args) { repeat(10, (i)->System.out.print(&q ...
- Redis源码解析:14Redis服务器与客户端间的交互
Redis服务器是典型的一对多服务器程序,通过使用由IO多路复用技术实现的文件事件处理器,Redis服务器使用单线程单进程的方式来处理命令请求,并与多个客户端进行网络通信. Redis客户端与服务器之 ...