您当前的位置: 首页 > 

张巧龙

暂无认证

  • 0浏览

    0关注

    1208博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

FPGA的Veilog HDL语法、框架总结

张巧龙 发布时间:2021-06-29 15:11:42 ,浏览量:0

摘要:Verilog HDL硬件描述语言是在用途最广泛的C语言的基础上发展起来的一种硬件描述语言,具有灵活性高、易学易用等特点。Verilog HDL可以在较短的时间内学习和掌握,FPGA的Veilog HDL基础语法总结,看完这些,FPGA的基本语法应该就没啥问题了!

一、基础知识 1、逻辑值

逻辑0:表示低电平,也就对应我们电路GND

逻辑1:表示高电平,也就是对应我们电路的VCC

逻辑X:表示未知,有可能是高电平,也有可能是低电平;

逻辑Z:表示高阻态,外部没有激励信号,是一个悬空状态

2、进制格式

Verilog数字进制格式包括二进制、八进制、十进制和十六进制。

一般常用的为二进制、十进制和十六进制。

二进制表示如下:4b0101表示4位二进制数字0101

十进制表示如下:4'd2表示4位十进制数字2(二进制0010)

十六进制表示如下:4ha表示4位十六进制数字a(二进制1010)

16'b1001 1010 1010 1001=16'h9AA9

3、标识符

标识符(identifier)用于定义模块名、端口名、信号名等。

标识符可以是任意一组字母、数字、$符号和(下划线)符号的组合;

但标识符的第一个字符必须是字母或者下划线;

标识符是区分大小写的;

4、标识符推荐写法

不建议大小写混合使用;

普通内部信号建议全部小写;

信号命名最好体现信号的含义,简洁、清晰、易懂;

以下是一些推荐的写法:

  • 1、用有意义的有效的名字如sumcpu_addr等。

  • 2、用下划线区分词,如cpu addr

  • 3、采用一些前缀或后缀,比如时钟采用clk前缀:clk_50clk_cpu

二、数据类型

在Verilog 语言中,主要有三大类数据类型。

寄存器数据类型、线网数据类型和参数数据类型。

从名称中,我们可以看出,真正在数字电路中起作用的数据类型应该是寄存器数据类型和线网数据类型。

1、寄存器类型

寄存器表示一个抽象的数据存储单元,通过赋值语句可以改变寄存器储存的值寄存器数据类型的关键字是reg,reg类型数据的默认初始值为不定值x。

reg类型的数据只能在always语句initial语句中被赋值。

如果该过程语句描述的是时序逻辑,即always语句带有时钟信号,则该寄存器变量对应为触发器;

如果该过程语句描述的是组合逻辑,即always语句不带有时钟信号,则该寄存器变量对应为硬件连线;

//计数器对系统时钟计数,计时0.2秒
always @(posedge sys_clk or negedge sys_rst_n) begin
    if (!sys_rst_n)
        counter             
关注
打赏
1665727216
查看更多评论
0.0410s