Verilog语法--生成块语句

什么是生成块

生成块能够动态的生成Verilog的代码,可以用于对矢量中的多个位进行重复操作、多个模块的实例引用并根据程序中的参数确定程序中是否包含哪段代码。生成语句可以控制变量的声明、任务和函数的调用。在编程时,可以使用关键字generate_endgenerate来表明生成块语句的范围。

生成块语句

生成块语句根据功能可以分为三种形式,它们分别是条件、case和循环。

if语句

generate 
if(condition)
    operation_1
else
    operation_2
endgenerate

其中,“condition”是逻辑表达式作为判决条件。当判决条件为真时,就进行“operation_1”操作;否则,进行“operation_2”操作。

case语句

generate 
case(constant_express)
  value_1:operation_1
  value_2:operation_2
....
  value_n:operation_n
  default:operation_default
endgenerate

循环语句

generate 
genvar genvarvar
for(genvarvar=start_value:loop_condition:circle_express)
begin:instant_name
    operations
end
endgenerate

在结构中,“start_value”、“loop_condition”、“circle_express”具有和一般for循环的相似。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

daijingxin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值