always@(posedge xinhao)是学院派的做法,而且实际应该是
always@(posedge xinhao or negedge rst)
if (!rst)
清零
else
开始计数
原理上是对的,不过,公司做产品是没人这么用的
fpga编程最忌讳时钟满天飞
也忌讳always@(posedge clk)和always@(negedge clk)同时出现
也就是除非万不得已,否则只能有一个全局时钟信号,且这个全局时钟信号硬件上是连在芯片的全局时钟脚上的
另外,捕获信号边沿的最健壮程序是
reg xinhao_buf[1:0];
always@(posedge clk)
xinhao_buf