环境配置好后就正式进入verilog的学习了
先从最简单的点灯开始
我会向你们介绍最基础的数据类型和语法规则
仍然是从我们熟悉的界面开始
转到顶层模块 start中
首先,verilog都是以模块为单位进行编程
模块以 “module” “endmodule” 作为界限
如图既是定义一个模块start,即顶层模块
当然,可以定义其它模块再设置为顶层模块
首先,一个电路模块肯定有输入输出
还有寄存器,逻辑控制什么的
先附上点灯代码
module start(
input button,//按键输入
output[2:0] led//3个led输出
);
reg[2:0] dat=3'b111; //3个led的状态寄存器
assign led = dat;//将寄存器的3个值连接到led输出
//当检测到按键下降沿时触发
always@(negedge button) begin
//下面与c语言类似
//但也有很大的区别
if(dat == 3'b000)begin
dat = 3'b111;
end
else begin
dat = dat - 3'b1;
end
end
//结束
endmodule
这里看不懂没关系
后面再慢慢解释
先将这些代码写入顶层模块