上一篇文章介紹了偶分頻,今天來介紹一下奇數分頻器的設計。
入門從簡單開始,先來個三分頻分析一下。 三分頻其實就是把輸入時鐘的三個周期當作一個周期,具體波形如圖所示。 (本文只針對于占空比為50%的分析)
此處還是用計數器的方式完成設計,但是與偶分頻有所區(qū)別。 因為奇數分頻的頻率與輸入的時鐘頻率有相位差,因此需要增加一些信號完成設計。 clk_n是下降沿觸發(fā)的信號,clk_p是上升沿觸發(fā)的信號,通過計數并且因為不同的邊沿觸發(fā)而形成一定的相位差,并將兩個信號進行或門處理,最后輸出的就是奇數分頻結果了。
缺點分析:奇數分頻需要在兩個觸發(fā)器之后再加一個組合邏輯門,這個組合邏輯門不僅會增加時鐘的延時,而且在設計當中可能出現毛刺。
具體的占空比為50%的任意奇數分頻的代碼如下所示。
`timescale 1ns/1ps
module CLK_DIV #(parameter DIV_NUM=3)(
input clk,
input rst_n,
output clk_out
);
//all odd div
reg [4:0] cnt1,cnt2;
reg clk_p,clk_n;
always @(posedge clk,negedge rst_n)
if(!rst_n) begin
cnt1 <= 0;
clk_p <= 1'b0;
end
else begin
if(cnt1 == DIV_NUM-1) begin
cnt1 <= 0;
clk_p <= clk_p;
end
else begin
cnt1 <= cnt1 + 1'b1;
if(cnt1 == ((DIV_NUM-1)/2)-1 || cnt1 == DIV_NUM-2)
clk_p <= ~clk_p;
end
end
always @(negedge clk,negedge rst_n)
if(!rst_n) begin
cnt2 <= 0;
clk_n <= 1'b0;
end
else begin
if(cnt2 == DIV_NUM-1) begin
cnt2 <= 0;
clk_n <= clk_n;
end
else begin
cnt2 <= cnt2 + 1'b1;
if(cnt2 == ((DIV_NUM-1)/2)-1 || cnt2 == DIV_NUM-2)
clk_n <= ~clk_n;
end
end
assign clk_out = clk_p | clk_n;
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。
舉報投訴
-
邏輯門
+關注
關注
1文章
142瀏覽量
24127 -
分頻器
+關注
關注
43文章
447瀏覽量
50074 -
分頻
+關注
關注
0文章
241瀏覽量
24910 -
觸發(fā)器
+關注
關注
14文章
2003瀏覽量
61347 -
代碼
+關注
關注
30文章
4825瀏覽量
69046
發(fā)布評論請先 登錄
相關推薦
奇數分頻如何得到呢? 解讀奇數分頻和邏輯分析儀(ILA)的使用
前言: 偶數分頻容易得到:N倍偶數分頻,可以通過由待分頻的時鐘觸發(fā)計數器計數,當計數器從0計數到N/2-1時,輸出時鐘進行翻轉,并給計數
需要講解一個占空比50%的奇數分頻器的原理
本帖最后由 haozix521 于 2013-10-4 20:42 編輯
想做一個占空比50%的奇數分頻器,但是不是很了解這其中的意思。網上的資料都是這樣講的“對于實現占空比為50%的N倍奇數分頻
發(fā)表于 10-04 20:35
分頻器的作用是什么 半整數分頻器原理圖分析
分頻器主要分為偶數分頻、奇數分頻、半整數分頻和小數分頻,如果在設計過程中采用參數化設計,就可以隨時改變參量以得到不同的
發(fā)表于 02-01 01:28
?1.8w次閱讀
![<b class='flag-5'>分頻器</b>的作用是什么 半整<b class='flag-5'>數分頻器</b>原理圖分析](https://file.elecfans.com/web1/M00/82/43/o4YBAFw9qHuANfFwAACMlAL49bc630.png)
關于奇數分頻器
第一步:分別使用原時鐘上升沿和下降沿產生兩個計數器(基于上升沿計數的cnt1和基于下降沿計數的cnt2),計數器在計數到2N時,計數器歸零重新從零開始計數,依次循環(huán)
發(fā)表于 08-22 09:54
?914次閱讀
偶數分頻、奇數分頻、半整數分頻和小數分頻詳解
初學 Verilog 時許多模塊都是通過計數與分頻完成設計,例如 PWM 脈寬調制、頻率計等。而分頻邏輯往往通過計數邏輯完成。本節(jié)主要對偶數分頻、奇數分頻、半整
![偶<b class='flag-5'>數分頻</b>、<b class='flag-5'>奇數分頻</b>、半整<b class='flag-5'>數分頻</b>和小<b class='flag-5'>數分頻</b>詳解](https://file1.elecfans.com/web2/M00/81/EE/wKgZomQjsbKAMGBHAAAk26clFsU136.jpg)
評論