Verilog當(dāng)中占空比與分頻的確定方法

2014-08-22 09:26 來源:電子信息網(wǎng) 作者:鈴鐺

一部分工程師會使用Verilog來設(shè)計邏輯電路圖,作為目前世界上最流行的兩種硬件描述語言,Verilog不僅能夠?qū)﹄娐穲D進行表示,還能夠進行一些計算。本篇文章就將為大家介紹Verilog當(dāng)中任意占空比和分頻的的實現(xiàn)方法。

在verilog程序設(shè)計中,我們往往要對一個頻率進行任意分頻,而且占空比也有一定的要求。這樣的話,對于程序就會有一定的要求,本篇文章將在前人經(jīng)驗的基礎(chǔ)上做一個簡單的總結(jié),實現(xiàn)對一個頻率的任意占空比以及任意分頻的確定。

比如:我們FPGA系統(tǒng)時鐘是50M Hz,而我們要產(chǎn)生的頻率是880Hz,那么,我們需要對系統(tǒng)時鐘進行分頻。我們很容易想到用計數(shù)的方式來分頻:

50000000/880 = 56818

這個數(shù)字不是2的整冪次方,那么怎么辦呢?我們可以設(shè)定一個參數(shù),讓它到56818的時候重新計數(shù)不就完了嗎?程序如下:

占空比1

在我們?nèi)粘5脑O(shè)計中很多情形下會用到需要分頻的情形,好多人的做法是先用高頻時鐘計數(shù),然后使用計數(shù)器的某一位輸出作為工作時鐘,進行其他的邏輯設(shè)計,上面的程序就是一個體現(xiàn)。

下面我們來算一下它的占空比:我們清楚地知道,這個輸出波形在counter為0到32767的時候表現(xiàn)為低,在32768到56817的時候為高,占空比為40%多一些,如果我們需要占空比為50%,那么怎么辦呢?

我們再設(shè)定一個參數(shù),使它為56817的一半,使達到它的時候波形翻轉(zhuǎn):

占空比2

占空比是不是神奇地變成50%了呢?

繼續(xù)讓我們來看如何實現(xiàn)任意占空比,比如還是由50 M 分頻產(chǎn)生880 Hz,而分頻得到的信號的占空比為30%。

1 2 > 
占空比 Verilog 分頻

相關(guān)閱讀

暫無數(shù)據(jù)

一周熱門