首页天道酬勤()

()

admin 12-02 18:20 218次浏览

Verilog快速入门知识学习

服务器的硬件电路设计采用CPLD,其主要功能是控制上电顺序和电平之间的转换。那么,我们用什么语言写代码呢?想必大家都知道使用了Verilog。Verilog不仅可以用于CPLD,还可以作为FPGA的编程语言。作为一门硬件语言,也是我们硬件工程师需要掌握的知识。在学习的过程中,我们会走很多弯路。下面,我将总结一下我认为快速入门很重要的知识点,希望能给初学者提供一些帮助。

Verilog基本语法

1, 二进制表示如下:4'b0101表示4位二进制数0101;

2, 标识符用于定义模块名、端口名、信号名,例如:clk_50;

3, 寄存器数据类型,线网数据类型和参数数据类型;

reg[31:0]delay _ CNT;//延迟计数

reg key _ reg//默认位宽为1

Reg类型的数据只能在always语句和初始语句中分配;

如果procedure语句描述的是时序逻辑,也就是说,always语句有一个时钟信号,将寄存器变量改为触发器;

如果过程语句描述组合逻辑,也就是说,总是语句没有时钟信号,将寄存器变量改为硬件连接;

3.1网络类型:指结构实体(如门)之间的物理连接;

无法存储值,其值由驱动它的组件决定;

如果没有驱动元件连接到网络类型的变量,则变化量为高阻,即值为Z;

线键标志;//默认位宽为1

3.2参数类型:参数实际上是一个常量,由参数定义;

参数H _ SYNC=11 ' d41//行同步

参数H _ DISP=11 ' d480;//有效数据行

常用于状态机的状态,数据是宽度和延迟大小;

00-1010算术运算符

如何使用符号的说明

A b a加b

-A-B-A减b

* a*b a乘以b

/a/b a除以b //a除以B整数

% a%b a用b的余数模除b//。

关系运算子

如何使用符号的说明

a大于b。

a比b小。

=a=b a大于或等于b。

=a=b a小于或等于b

==a==b a等于b。

!=a!=b a不等于b。

逻辑算子

如何使用符号的说明

!的非

a和b。

| A | | a | | b a或B

条件运算符

如何使用符号的说明

?a?B: C如果A为真,选择B,否则选择C。

位置算子

如何使用符号的说明

~ ~a反转a的每一位。

用b的相同位相位A的每个位。

| a|b将A的每个位与b的相同位进行OR运算。

将A的每一位与b的同一位相加

(注意:如果宽度不同,高位用零填充)

移位运算符

如何使用符号的说明

乙将甲向左移动乙。

乙把甲向右移了乙。

向左移动时,位宽增加;向右移动时,位宽不变;

4 ' b10012=6 ' b100100

4 ' b1001 2=4 ' b0100

拼接算子

如何使用符号的说明

{} {a,b}将A和B拼接在一起作为新信号;

C={a,b[3:0]};//如果A和B都是4位数,那么C就是8位数。

操作员优先级:

00-1010关键词含义

模块开始定义

输入端口定义

输出端口定义

Inout双向端口定义

参数信号参数定义

有线信号定义

Reg reg信号定义

总是生成reg信号语句的关键字

指定生成接线信号的语句的关键字

开始语句开始标志

结束语句结束标志

边缘/偏边缘/负边缘时序电路的标记

Case case语句开始标记

默认案例语句的默认分支标志

Endcase case语句结束标记

if/else语句标记

Else if/else语句标记

For for语句标记

结束模块结束定义

原文:卧龙会御景龙

这是卧龙社PCB设计工程师余景龙转行做硬件设计师的学习经历。我觉得自己很坚强,可以静下心来学习。工作了这么多年,没心思学习了!

广港IPLC雷士灯具管理系统
c上m下n公式(C罩杯) 博图怎么在项目中搜索变量(PLC程序中如何给差值赋变量)
相关内容