您的位置:首页 > 其它

verilog实现占空比为1/2的奇数分频电路

2013-07-06 19:33 281 查看
最近正在准备找工作,由于是做FPGA开发,所以verilog实现技术分频电路是一道经常出现的题目,三分频,五分频电路等等;

经过一下午时间总结出了一个通用电路,可以实现任意奇数分频电路。

verilog代码如下:

module fenpin3(clk,clkout,rst);//奇数分频电路,能够进行3,5,7分频

input clk,rst;

output clkout;

reg [2:0] a,b;

reg clkout;

parameter fenpin=3;

always@(posedge clk or negedge rst)

begin

if(!rst)

a<=0;

else if(a==fenpin-1)

a<=0;

else

a<=a+1;

end

always@(negedge clk or negedge rst)

begin

if(!rst)

b<=0;

else if(b==fenpin-1)

b<=0;

else

b<=b+1;

end

always@(a or b or rst)

begin

if(!rst)

clkout<=0;

else if((a+b==1)||(a+b==fenpin+1))

clkout<=~clkout;

end

endmodule

通过以上电路,可以实现任意占空比为1/2的电路。仿真波形如下:

三分频:



五分频:



七分频:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: