Verilog采用模块化的结构来描述电子电路系统,模块是它描述电路的基本单元,像C语言中的函数一样。模块的不同结构实现了不同的功能,对应着硬件上的逻辑实体,同时模块有输入和输出端口,能够和其他模块相连。

Verilog中有26个基本的单元。

名称

多输入门

and、nand、or、nor、xor、xnor

多输出门

buf、bot

三态门

bufif0、bufif1、notif0、notif1

上拉下、拉电阻

pulldown、pullup

MOS开关

coms、nmos、pmos、rcmos、rnmos、rpmos

反向开关

tran、tranif0、tranif1、rtran、rtranif0、rtranif1

门级建模是使用基本的单元进行的,与行为级建模相比效率低,verilog多用来进行寄存器传输级的描写电路设计,rtl最后也是会被综合成具体的门级电路。

Verilog模块的结构:

module template1(a,b,c,d);/*template1:模块名,后面的括号里跟端口,端口的输入输出说明可以在端口列表里,也可以在下面写。*/input a,b;output c;output d;//数据类型wire ;reg [14:0]; //15位的parameter;//描述逻辑功能的语句assign ;//多用于组合逻辑always @();/*既可用于组合逻辑也可用于时序逻辑,C语言里的case,if-else,for循环之类的都可以写,括号内是敏感信号,像上升下降沿之类*//*例化调用模块调用模块名 被调用的模块的模块,端口列表(.a(a),.b(b),.c(c),.d(d));*/endmodule

Verilog程序由各种符号流组成,标识符由字母、数字、下划线、$和_(下划线)组成,且$和数字不能开头,区分字符大小写。

数字:位宽’数制 数字;’和数制之间不能有空格;?z Z都代表高阻态。整数可以写符号。没有数制时默认是十进制。

Verilog的数据类型有4种逻辑值:0、1、x不确定、z高阻态。

数据类型是用来表示数字电路里的物理连线、数据存储和传输单元等的。分net和variable两种。

Net型有wire 和tri。

Variable型有reg和integer。

Net型的数据相当于硬件电路中的物理连接。特点是输出随输入的变化而变化,可以用assign语句进行赋值。

Variable类型是用在initial和always这样的过程语句中赋值的。

Parameter用来定义符号常量,例如parameter 参数名=表达式, , ;

Always语句过程的敏感信号列表有边沿敏感型和电平敏感型,*是通配符,表示对所有的信号变量都敏感,通常在组合逻辑中使用。

Initial语句没有触发条件,只执行一次。

块语句:begin-end和fork-join。Begin-end中的语句是顺序执行的,fork-join块中的语句是并发执行的。

Verilog语言、语法相关推荐

  1. [SugerTangYL] Verilog 语言入门(零基础视角)

    目录 前言 一.示例 1.一位全加器功能及电路图 2.一位全加器Verilog代码 (1)模块定义声明 (2)变量声明定义 (3)子模块调用 二.模块声明定义模板 总结 前言 hi guys,这是我第 ...

  2. 使用Verilog语言实现时间计数器

    数字逻辑课程设计报告 课题名称 电子时钟设计 姓 名 周策 学 号 2018207129 专业班级 18级物联网一班 指导教师 巨春民 2019年 10月 25日 一.设计任务及要求: 设计任务:用V ...

  3. FPGA笔记之verilog语言(基础语法篇)

    文章目录 FPGA笔记之verilog语言(基础语法篇) 1. verilog 的基础结构 1.1 verilog设计的基本单元--module 1.2 module的使用 1.3 I/O的说明 1. ...

  4. Verilog语言基础语法

    Verilog基础知识 数字进制格式 标识符 数据类型 寄存器类型 线网类型 参数类型 运算符 运算优先级 数字进制格式 Verilog数字进制格式包括二进制,八进制,十进制,十六进制.常用为二进制, ...

  5. b 计数器位选信号 verilog_Verilog HDL菜鸟学习笔记———三、Verilog常用语法之一...

    1.一个完整版实例 上一次Verilog学习笔记中,我通过几个小例子,较为直观的对Verilog编程有了一些了解.这次笔记,我开始着重的系统学习Verilog编程语法基础.在我系统学习语法之前,我先用 ...

  6. FPGA学习之verilog语言入门指导

    本人985硕士,在此分享下学习过程,verilog通关!本人博客页也分享了很多课程设计和毕业设计,欢迎收藏观看订阅!谢谢支持! 在学习之前,要思考下为什么学习FPGA,老师要求?项目要求?课题组要求? ...

  7. Verilog语言与数字系统设计

    学习Verilog语言必要的基础知识 计算机导论 数字逻辑或数字电路与逻辑设计 计算机科学概论 拓展学习: 计算机组成原理 计算机体系结构 学习视频链接: 基于FPGA的Verilog语法基础课程(至 ...

  8. Verilog语言基础

    Verilog HDL 和 VHDL对比 VHDL: 语法严谨(Basic语言). 行为与系统级抽象描述能力强.代码冗长. 编程耗时多: Verilog HDL:语法灵活(C语言). 版图级与门级描述 ...

  9. Verilog语言要素(二)

    1 Verilog语言要素 1.2 标识符-关键字-属性 1.2.1 标识符(Identifier) 规范原文如下: An identifier is used to give an object a ...

  10. Verilog语言初学1

    Verilog语言初学1 Verilog初学 Verilog的一些常用标识符 入门笔记 Verilog初学 本人初学Verilog,自己做一点笔记 Verilog的一些常用标识符 入门笔记 veril ...

最新文章

  1. 程序员如何写出更好的代码
  2. python安装出错0xc00006b_Python安装时我遇到的一些问题
  3. 存到mysql的中文乱码_将用户输入的中文保存到数据库出现中文乱码问题
  4. 基于八叉树快速分类的Shear-Warp交互式体绘制算法
  5. CVPR 2020 | 北航提出:通过由粗到精特征自适应进行跨域目标检测,表现SOTA!
  6. jquery中如何表达本页网址_如何用js得到当前页面的url信息方法(JS获取当前网址信息)...
  7. 决策树ID3和C4.5
  8. 只用两个函数实现事务的设计模式!
  9. 如何使Android应用程序获取系统权限来修改系统时间
  10. 6个高级Python技巧
  11. 中兴智能视觉大数据报道:人脸识别画上浓妆也不耽误识别
  12. 抖音创作规范_实体店如何借势抖音为门店获客?
  13. 推荐一门开源课程“C/C++:从基础语法到优化策略”
  14. SCADA电力系统基础业务知识
  15. CSS 字体加粗,导致布局宽度改变怎么处理?
  16. python做数学计算器_python作为计算器 数学用法
  17. Ubuntu镜像名称解释
  18. 2012年8月编程语言排行榜:C# 的航向在哪里
  19. 负载均衡_Maglev
  20. 为什么墨刀的动效这么酷炫?学会神奇移动,你也可以

热门文章

  1. jasypt 配置文件加解密
  2. (Java实现) 洛谷 P1605 迷宫
  3. java扫雷设计_Java扫雷设计
  4. android底部滑动出现虚拟按键,Android适配底部虚拟按键的方法详解
  5. esp_easy固件配合domoticz用于智能家居温湿度监控
  6. 服务器一直被攻击怎么办?
  7. 震惊!AI居然轻松消除马赛克-文字增强,GitHub开源项目上线三天收获近7000星
  8. Activiti reassign task to another user
  9. 怎么用计算机打出汉字,Windows XP电脑入门如何使用输入法输入汉字
  10. 正则匹配中文英文字符及标点