分頻器設計
1.簡單的二分頻
2.任意偶數分頻module
half_clk(reset, clk_in, clk_out);
input clk_in, reset;
output clk_out;
reg clk_out;
always @(posedge clk_in)
begin
if(!reset)
clk_out = 0;
else
clk_out = ~clk_out;
endendmodule
例如20分頻
3.占空比為1:n的n分頻器module fdivision(reset, f10m, f500k);
input reset, f10m;
output f500k;
reg f500k;
reg[7:0]
j;always @(posedge f10m)
if(!reset)
begin
f500k <= 0;
j<= 0;
endelse
begin
if( j == 19)
begin
f500k <= ~f500k;
j<= 0;
endelse
j<= j+1;
endendmodule
以n=5為例
4.實現占空比為50%的n倍奇數分頻:module counter5( clk , clr, clkout);
input clk, clr;
output clkout;
reg[2:0] count;
reg clkout;
always @(posedge clk or posedge clr)
begin
if(clr)
begin
clkout = 0;
count = 3'b000;
endelse
if(count == 3
'b100)
begin
clkout = 1;
count = 3'b000;
endelse
begin
count = count + 1;
clkout = 0;
endend
endmodule
首先進行上公升沿觸發進行模n計數,計數到某乙個值時進行輸出時鐘翻轉,然後經過(n-1)/2再次進行翻轉得到乙個占空比非50%的奇數n分頻時鐘。再者 同時進行下降沿觸發的模n計數,到和上公升沿觸發輸出時鐘翻轉選定值相同值時,進行輸出時鐘時鐘翻轉,同樣經過(n-1)/2時,輸出時鐘再次翻轉生成占空 比非50%的奇數n分頻時鐘。兩個占空比非50%的n分頻時鐘相或運算,得到占空比為50%的奇數n分頻時鐘。
部分資料來自module div5(clr,clk,clkout);
input clr,clk;
output clkout;
reg clkreg1,clkreg2;
parameter n=5;
reg[n:0] counter1,counter2;
assign clkout=clkreg1||clkreg2;
always @(posedge clk)
if(clr==1)
begin
clkreg1=0;
counter1=0;
endelse
begin
if(counter1==n-1)
begin
counter1=0;
clkreg1=~clkreg1;
endelse
if(counter1==(n-1)/2)
begin
counter1=counter1+1;
clkreg1=~clkreg1;
endelse
begin
counter1=counter1+1;
endend
always @(negedge clk)
if(clr==1)
begin
clkreg2=0;
counter2=0;
endelse
begin
if(counter2==n-1)
begin
counter2=0;
clkreg2=~clkreg2;
endelse
if(counter2==(n-1)/2)
begin
counter2=counter2+1;
clkreg2=~clkreg2;
endelse
begin
counter2=counter2+1;
endend
endmodule
1.《數字ic系統設計》
2.
基於 Verilog HDL偶數分頻和奇數
fpga開發板上的晶振頻率都是固定值,只能產生固定頻率的時鐘訊號,但是實際工程中需要各種不同頻率的訊號,這時就需要對晶振產生的頻率進行分頻。比如 fpga開發板上的晶振頻率為50mhz,若想要得到1mhz的方波訊號,那麼就需要對晶振產生的訊號進行50分頻 若要實現秒計數,則需對50mhz頻率進行50...
verlog任意奇數和偶數分頻
下面展示一些內聯 片。執行環境 quartus ii 13.0 module five div input clk,rst n,output reg clk div 5分頻時鐘只能用於奇數分頻 reg clk pose reg clk nege reg clk oushu parameter fen...
FPGA奇數分頻
前注 設計中盡量還是要避免使用自己計數分頻得到的時鐘,去使用廠家自帶的分頻ip 如vivado中的clock wizard 偶數分頻比較簡單,這裡略過。對於不要求占空比為50 的奇數分頻,也比較簡單,直接模n計數,期間進行兩次翻轉就可以了。這裡重點介紹要求占空比為50 的奇數分頻。步驟 1.在時鐘上...