初级会员

- 积分
- 95
- 金钱
- 95
- 注册时间
- 2020-12-19
- 在线时间
- 18 小时
|
assign vga_hs = (cnt_h <= H_SYNC - 1'b1) ? 1'b0 : 1'b1;这里假设H_SYNC =2
assign是连续赋值语句,
cnt_h = 0,vga_hs=0;
cnt_h = 1,vga_hs=0;
cnt_h = 2,vga_hs=1;......
共有H_SYNC 个周期的低电平
if(cnt_v < V_TOTAL - 1'd1)
这里假设V_TOTAL = 2
假设当前复位
cnt_v = 0执行了1个周期然后进入always模块,if成立继续
cnt_v = 1执行了1个周期然后进入always模块,if不成立继续
所以cnt_v 计了V_TOTAL个!
这个要区别于类似C语言for(i=0;i<10;i++)这个循环共执行10次
这里的话是进入了for里面才让i=0;
而Verilog中cnt_v会在复位的时候就已经cnt_v=0了
|
|