看看这个分频程序怎么改
时间:10-02
整理:3721RD
点击:
下面这个程序是个分频器,clk=50MHz,dclk=25M,gclk=25M。
现在需要把gclk改成14M、7M(这是最大值),dclk不变。请高手帮忙看看怎么改。我是外行啊,gclk那一段我没看懂。
module wave(clk,rst,key,key1,dclk,gclk);
input clk;
input rst;
input[3:0] key;
output dclk;
output gclk;
reg dclk;
reg gclk;
reg[11:0] cnt;
always @(posedge clk or negedge rst)
begin
if(!rst)
begin
dclk <= 1'b0;
gclk <= 1'b0;
end
else
begin
dclk <= ~dclk;
gclk <= ~gclk;
end
end
always @(posedge gclk)
begin
if(!rst || key)
cnt <= 12'b0;
else if(cnt == 12'hfff)
;
else
cnt <= cnt +1'b1;
end
现在需要把gclk改成14M、7M(这是最大值),dclk不变。请高手帮忙看看怎么改。我是外行啊,gclk那一段我没看懂。
module wave(clk,rst,key,key1,dclk,gclk);
input clk;
input rst;
input[3:0] key;
output dclk;
output gclk;
reg dclk;
reg gclk;
reg[11:0] cnt;
always @(posedge clk or negedge rst)
begin
if(!rst)
begin
dclk <= 1'b0;
gclk <= 1'b0;
end
else
begin
dclk <= ~dclk;
gclk <= ~gclk;
end
end
always @(posedge gclk)
begin
if(!rst || key)
cnt <= 12'b0;
else if(cnt == 12'hfff)
;
else
cnt <= cnt +1'b1;
end
自个顶一下
现在需要把gclk改成14M、7M(这是最大值)?问题不明确
另外贴的代码,最后的counter根本没用
恩,简单的说就是把25M的gclk再分一次频。
自己查书,已解决!
你这个50MHz,怎么分出来14M的呢,能否贴出来看看?
