verilog 中如何让一个高电平在经过一个时钟周期后回到低电平 用了#延迟没有用啊
我一开始初始化为一个低电平,然后执行一个运算,当运算结束,结果输出的时候,这个电平置高,起到一个done的作用,但是我不想让它一致高下去,让它在一个周期以后变回低电平,请...
我一开始初始化为一个低电平,然后执行一个运算,当运算结束,结果输出的时候,这个电平置高,起到一个done的作用,但是我不想让它一致高下去,让它在一个周期以后变回低电平,请问如何实现。
begin
flout_c={s3,exp3[7:0],man3[22:0]};
done= 1'b1;
//#10 done= 1'b0;
end
end
因为没有用,我把它注释掉了,如果不注释掉的话,done就一直是低电平,根本不会变高,这是为什么呢? 展开
begin
flout_c={s3,exp3[7:0],man3[22:0]};
done= 1'b1;
//#10 done= 1'b0;
end
end
因为没有用,我把它注释掉了,如果不注释掉的话,done就一直是低电平,根本不会变高,这是为什么呢? 展开
2个回答
展开全部
看你的问题你并不是在写测试代码,只是在写设计代码,设计中输出高低电平变化要由输入来控制。延时有关的语句在设计中是不可综合的,在编译综合后,编译器会自动忽略。所以你还要一个输入来控制
当然你这个done 本身就可以定义为一个input 然后对应的 IO 外接控制高低电平的按键来控制done 的高低 简要思路如下:
module XX (done,XX,……);
input done;
output XX;
…… ;
reg XX;
always @ (done)
begin
if (done) //done 由输入IO口控制
XX = 0;
else
XX = ……;
end
........
..........
..........
endmodule
当然如果是些测试代码的话就是上面那位仁兄所写的。希望能帮到你,共同进步,加油!!
当然你这个done 本身就可以定义为一个input 然后对应的 IO 外接控制高低电平的按键来控制done 的高低 简要思路如下:
module XX (done,XX,……);
input done;
output XX;
…… ;
reg XX;
always @ (done)
begin
if (done) //done 由输入IO口控制
XX = 0;
else
XX = ……;
end
........
..........
..........
endmodule
当然如果是些测试代码的话就是上面那位仁兄所写的。希望能帮到你,共同进步,加油!!
艾普斯
2024-07-18 广告
2024-07-18 广告
稳频稳压电源哪家好?艾普斯电源(苏州)有限公司开始专业研发、制造及营销交流稳压电源,满足全球电子及信息业对电源设备日益蓬勃的市场需求。迄今为止,业已发展成为交流不间断电源、稳压电源、变频电源、中频航空- 军事专用电源、直流电源、逆变电源等产...
点击进入详情页
本回答由艾普斯提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询