Verilog基本语法介绍(课堂记录的笔记)

本文介绍了Verilog语言的基础语法,包括赋值方式的区别、敏感信号列表的作用、always块的使用方法,以及如何定义函数和task等。重点讲解了阻塞与非阻塞赋值的区别、并行与顺序执行的概念,并探讨了不同类型的触发方式及其对电路设计的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

assign  

module

 

endmodule

阻塞赋值  =

在begin end 语句块中顺序执行

<= 则是并行执行

 

fork

语句块1

语句块2

join

多用于仿真

语句块之间并行执行

begin       end   包围起来的是一个语句块

单独的语句也是一个语句块

 

敏感信号列表 

always@(敏感信号列表)

电平触发  用 = 阻塞赋值   

边沿触发  用<= 非阻塞赋值 

always 赋值左边必须为 reg 

if                       

else   与C语言一致 

case(xxxxxx)       效率高,可以达到很高频率时钟 

电平触发  写了 if  不写 else  会综合出锁存器  因为电平触发,会有毛刺。

 

循环语句

for()  与C语言一致

repeat 多用于仿真

 

函数 function 可综合 

 

function<返回值位宽或类型>  <函数名>

输入端口与类型说明

处理语句 (必须可综合)

endfunction

 

task 不可综合 通常用于仿真   

无返回值

上述是系统的任务,不可综合。

 

需要明确设计电路       组合/数字

明确设计逻辑

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值