verilog-實現(xiàn)小數(shù)分頻(小數(shù)分頻器)代碼_第1頁
verilog-實現(xiàn)小數(shù)分頻(小數(shù)分頻器)代碼_第2頁
verilog-實現(xiàn)小數(shù)分頻(小數(shù)分頻器)代碼_第3頁
verilog-實現(xiàn)小數(shù)分頻(小數(shù)分頻器)代碼_第4頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上verilog 實現(xiàn)小數(shù)分頻(小數(shù)分頻器)    小數(shù)分頻無法做到1:1 的占空比。例如用77 分頻得到16M 時鐘的生成原理如下:對于77 M的時鐘,一個sts-12幀有9720拍。對于16M時鐘,一個sts-12幀有32*8*8拍。即77M下每計數(shù)1215,16M下計數(shù)256.1215/256 =4.76 考慮到數(shù)字處理只能是整數(shù),則需要在每m 個5拍扣一拍,每 n個4拍扣一拍。列方程為:        m + n =256 

2、      5m + 4n =1215得到 m= 191, n = 65, 即通過191個5分頻和65個4分頻實現(xiàn)16M的時鐘。    小數(shù)分頻是通過可變分頻和多次平均的方法實現(xiàn)的。例如要實現(xiàn)4.7分頻,需要在10次分頻中做3 次4分頻和7次5分頻就可以做到,再如實現(xiàn) 5.67分頻,只要在100次分頻中,做67次6分頻,33次5分頻即可。因為從N分頻到N+1分頻和從N+1分頻到N分頻的切換,會產(chǎn)生一個隨時間增長 的相位移。考慮到小數(shù)分頻中需要多次進行兩種頻率分頻,必須將兩種分頻均勻,這種“均勻”

3、工作是通過計數(shù)器完成的,這里僅給出一位小數(shù)的情況,下面簡要介 紹這種混合的方法:   每進行一次分頻,計數(shù)值為10減去分頻系數(shù)的小數(shù)部分,各次計數(shù)值累加。若累加結(jié)果小于10,則進行 N +1 分頻,若大于或等于10,則進行 分頻。以8.7 分頻為例進行設計時,需要進行3次 8分頻,7次 9 分頻。該例中計數(shù)值(10-7)=3,前三次累加結(jié)果都小于10,所以為9分頻,第四次累加結(jié)果為12,則去掉十位數(shù)后累加結(jié)果變?yōu)?,同時進行8分頻,下表給出了該分頻器的分頻過程。         

4、60; 分頻系數(shù)8.7-序號           累加結(jié)果       分頻系數(shù) 1              3               

5、60;  9 2              6                  9 3            

6、0; 9                  9 4           12-10 =2              8 5 

7、60;            5                  9 6              8    

8、;              9 7           11-10 =1              8 8       

9、;       4                  9 9              7         &

10、#160;        9 10             10                 8以下是代碼模塊:/top modulemodule fd89bits( clkin,reset,a,clkou

11、t    );  input clkin;    input reset;  input a;    output reg clkout;          wire clkout1,clkout2;       fd8bits  dut1(clkin,reset,clkout1);   fd9bits

12、60; dut2(clkin,reset,clkout2);    clkin) begin     if(a)        clkout <= clkout1;     else        clkout <= clkout2;   endendmoduletimescale 1ns / 1psmodule f

13、d8bits(  clk_in,reset,clk_out  );   input clk_in;  input reset;  output reg clk_out;   reg3:0 count;   clk_in) begin    if(!reset)     count <= 0;  else begin     if(count  < 7)&#

14、160;        count  <= count + 1;     else     count  <= 0;  end   clk_out  <= count2; endendmodule/ 9 分頻module fd9bits(    clk_in,reset,clk_out  );   input

15、clk_in;  input reset;  output reg clk_out;   reg3:0 count;   clk_in) begin    if(!reset)     count <= 0;  else begin     if(count  < 8)         count  <

16、;= count + 1;     else     count  <= 0;  end   clk_out  <= count2; endendmodule/ testbenchmodule testbench(    );   reg clk_in;  reg reset;  reg a;  wire clk_out;    fd89bits dut(clk_in,reset,a,clk_out);   initial begin    clk_in= 0;  reset = 0;  #11;  reset = 1;  fore

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論