parameter 类似于C语言中的define
变量
reg类型的数据最为常用
reg [3:0] count;
位宽为4的寄存器赋值为1。其中d代表十进制。4’d1还可以表示为4’b0001
h表示后面的值是用十六进制表示。
reg变量没赋值的情况下默认值是不确定状态。

wire 类型:
wire没有连线的情况下是高阻状态。

数组
Verilog中所有网络和变量数据都可以定义为数组的形式。数组大小(即地址范围)在标识符后面声明,一个地址范围代表一个维度。比如:

reg [15:0] mem_data [255:0];
reg表示数据类型;[15:0]表示单个数据的矢量大小;mem_data是标识符;[255:0]是一维数组的地址。同样,Verilog标准也没有规定数组地址的取值,可以是正数、负数或0。

'd代表后面的数字是十进制的,如果是十六进制就是’h,如果二进制就是’b
_下划线没有实际意义,只是为了方便看数字有多少位。
parameter flash_2Hz = 32’d1250_0000;,若是定义的数据大于位宽,则省略高bit数。
16进制格式。
reg [15:0] value;
value <= 16’hFF;

二维寄存器变量:
reg [7:0] mem[1023:0]; //定义了1024个8bit的寄存器。

ISE中的测试文件:
initial begin
// Initialize Inputs
clk = 0;
rst_n = 0;

 // Wait 100 ns for global reset to finish#100;//#100;rst_n = 1;   //添加的     // Add stimulus here#2000;// //添加的     //$stop;end
always #10 clk = ~ clk; //产生50MHz时钟源′  //添加的

同步复位:
always@(posedge clk)
begin
if(rst_n == 1’b0)
语句;
else
语句;

end

时钟注意点:
尽量不要用分频时钟,尽量用全局时钟。

//串口传输 400 个数据
repeat(Img_HImg_V2)begin
tx_en = 1;
tx_data = tx_data + 1;
#(`CLK_PERIOD)
tx_en = 0;
@(posedge tx_done);//@()中的内容是0/1跳变才触发,wait()和@()都是等待()中的内容的触发
#20;
end

FPGA的顶层文件:
fpga顶层文件的作用就是最大的,
可以将其理解为目录,在里面调用所有子程序

FPGA工程文件:
prj 为工程文件存放目录; rtl 为 verilog 可综合代码存放目录; testbench 为
测试文件存放目录; img 为设计相关图片存放目录; doc 为设计相关文档存放目录; prj 文件
夹下还建立了子文件夹 ip,用于存放 Quartus Prime 中生成的 IP 核文件

module time_count(
input clk,
input rst_n.
output reg flag
);

实例化模块的时候,模块的output reg类型需要连接到wire类型上。如下所示:

wire add_flag;
time_count u_time_count
(
.clk (clk),
.rst_n (rst_n),
.flag (add_flag)
);

同一个模块内,只能用一个时钟。且只能在同一个时钟沿进行操作。
顶层文件最好只包含底层模块的实例化,不好含任何逻辑。
每个verilog文件只含有1个模块。
每个always只对一个reg进行赋值,防止多个赋值造成错误。
模块名尽量见名知意。
低电平有效的信号名字后面加上_n。

verilog语法常用关键字相关推荐

  1. 【Verilog 语法】~ 关键字、运算符、数据类型、缩位运算、三态门设计、可综合、VHDL 的结构、VHDL:WAIT 语句格式、原语、编译预处理

    本章目录: 1. 关键字 2. 运算符 2.1 分类 2.1.1 按其功能分类 2.1.2 按其所带操作数的个数分类 2.1.2.1 举例 2.2 优先级 3. 数据类型 1) wire 型 2) r ...

  2. [转]verilog语法学习心得

    verilog语法学习心得 1.数字电路基础知识: 布尔代数.门级电路的内部晶体管结构.组合逻辑电路分析与设计.触发器.时序逻辑电路分析与设计 2.数字系统的构成: 传感器  AD  数字处理器  D ...

  3. 【系统设计】Verilog语法及示例(2)

    参考Verilog语法 | 教程 (ustc.edu.cn) 1.7 D触发器 D触发器是一个具有记忆功能.具有两个稳定状态的信息存储器件,是构成时序逻辑的最基本逻辑单元.其具有两个稳定状态,即&qu ...

  4. Verilog语法之变量

    本文转自知乎罗成的Verilog语法之三:变量 总的文章链接地址小白如何快速入门Verilog 本文首发于微信公众号"花蚂蚁",想要学习FPGA及Verilog的同学可以关注一下. ...

  5. Verilog语法总结

    Verilog HDL语法总结 逻辑 0:表示低电平,也就是对应我们电路的GND: 逻辑 1:表示高电平,也就是对应我们电路的VCC: 逻辑 X:表示未知,有可能是高电平,也有可能是低电平: 逻辑 Z ...

  6. 3、常用关键字,变量赋值,多个变量赋值,标准数据类型,数字,字符串,列表,元组,字典,数据类型转换

    3Python变量类型 3.1常用关键字 系统中有一些常用关键字不可以用来当做标识符. and lambda except while del return import or class try i ...

  7. sql 数据库前两列值乘_Sql语句常用关键字

    最近接触sql比较多,发现自己已经遗忘的也差不多,要用到的时候迟迟拿不出来,今天开始会在知乎上纪录一些sql语句学习的内容,内容重在说明查询语句的用法. 一.sql查询语句的初始介绍 1.查询语句的一 ...

  8. OC2_点语法(属性关键字)

    // // Dog.h // OC2_点语法(属性关键字) // // Created by zhangxueming on 15/6/16. // Copyright (c) 2015年 zhang ...

  9. Verilog 语法入门知识

    Verilog 语法入门知识 一.变量类型 ①数值 数值表示采用 <二进制位数>'<数值表示的进制><数值>的结构. 其中进制可以为b.o.d.h分别代表二.八.十 ...

最新文章

  1. 自动化是计算机相关专业英语,自动化专业英语词汇
  2. 【任务脚本】京jd东jd炸年兽活动任务全自动程序
  3. Python实现迭代器协议
  4. C语言学习及应用笔记之三:C语言const关键字及其使用
  5. LINUX 对引导加密
  6. Linux环境下使用rpm包安装GitLab
  7. 一个网站大概多少钱_建一个外贸网站大概需要多少钱?角点科技总结建外贸网站的费用...
  8. 人体轮廓_速写人体轮廓的处理有哪些技法?
  9. Linux中 /proc/[pid] 目录各文件简析
  10. 手机水星路由器服务器无响应,水星路由器无线wifi连接成功但上不了网的解决方法...
  11. H3C HCL模拟器配置vlan划分案例
  12. Windows10 mysql解决MySQL服务无法启动 系统出错 发生系统错误 1067
  13. 推荐几个前端 模板 框架,收藏
  14. 好用的用户准入控制管理系统
  15. 服务器被攻击 常见的服务器攻击方式有哪些
  16. scratch和平使者 电子学会图形化编程scratch等级考试一级真题和答案解析2022年12月
  17. Python实验四:Python程序设计之文件
  18. [pat乙]1032 挖掘机技术哪家强
  19. Nginx常用配置及代理转发
  20. 问题: Schrodinger方程的非齐次Strichartz估计

热门文章

  1. 面试官经常问我三次握手和四次挥手,现在终于知道怎么简简单单的叙述出来了
  2. 【信号去噪】基于奇异值分解(SVD)实现数字信号降噪含Matlab源码
  3. 清华大学 研究生 培养方案
  4. Sentry异常日志监控-Java接入
  5. 跨境卖家为什么必须要做YouTube网红营销?
  6. 动态路由协议——OSPF及配置
  7. vue项目打包步骤及运行打包项目
  8. OKHttp原理分析
  9. CF538B Quasi Binary 题解
  10. 28 H5上rtl8189ftv wifi驱动移植