周慶芳
(曲靖師范學(xué)院教育技術(shù)研究所,云南曲靖 655011)
?
基于FPGA的分頻器的設(shè)計與實現(xiàn)
周慶芳
(曲靖師范學(xué)院教育技術(shù)研究所,云南曲靖 655011)
摘要:在數(shù)字邏輯電路設(shè)計中,分頻器通常用來對某個給定頻率進行分頻,以得到所需的頻率。整數(shù)分頻器的實現(xiàn)采用標(biāo)準(zhǔn)的計數(shù)器,也可采用可編程邏輯器件實現(xiàn)。有時,時鐘源與所需的頻率不成整數(shù)倍關(guān)系可采用小數(shù)分頻器進行分頻。本文在模擬設(shè)計頻率計脈沖信號時,使用半整數(shù)分頻器設(shè)計電路,且利用VHDL硬件描述語言和原理圖輸入方式,通過Quartus II以及EPM240T100C5型FPGA方便地完成了半整數(shù)分頻器電路的設(shè)計。
關(guān)鍵詞:FPGA;QUARTUSⅡ;VHDL語言;分頻器
(一)整數(shù)分頻的基本原理
整數(shù)分頻包含偶數(shù)分頻和奇數(shù)分頻,對于偶數(shù)N分頻通常使用N/2計數(shù)器實現(xiàn)占空比為1:1的N分頻器,分頻輸出信號模為N2自動取反;對于奇數(shù)分頻必須分頻輸出信號為模N計數(shù)中的一位[1]。整數(shù)分頻器的實現(xiàn),采用可編程邏輯器件設(shè)計實現(xiàn),當(dāng)時鐘源與所需的頻率不成整數(shù)倍關(guān)系,此時可采用小數(shù)分頻器進行分頻。
(二)小數(shù)分頻的基本原理
小數(shù)分頻的基本原理是采用脈沖吞吐計數(shù)器和鎖相環(huán)技術(shù)先設(shè)計兩個不同分頻比的整數(shù)分頻器,然后通過控制單位時間內(nèi)兩種分頻比出現(xiàn)的不同次數(shù)來獲得所需要的小數(shù)分頻值,分頻系數(shù)為N-0.5(N為整數(shù))時,可控制扣除脈沖的時間,以使輸出成為一個穩(wěn)定的脈沖頻率,而不是一次N分頻,一次N-1分頻[2]。
使用Quartus II仿真軟件,使用半整數(shù)分頻的方式,通過VHDL語言將整個分頻器各個模塊的編寫使用FPGA實現(xiàn)分頻器的整個設(shè)計和實現(xiàn),通過分頻器的設(shè)計實現(xiàn)掌握基本的整數(shù)分頻和小數(shù)分頻的原理,加強對硬件語言的理解,以及對使用組合電路設(shè)計復(fù)雜器件的能力[3]。
1.運行 Quartus II,新建立一個工程,器件選擇EPM240T100C5新片,完成新工程的建立[4]。
2.創(chuàng)建圖形設(shè)計文件,新建子模塊,完成模塊的定義以及模塊之間的連接,完成分頻器頂層設(shè)計原理圖。
3.將圖形設(shè)計文件保存。
4.底層的半整數(shù)分頻器使用VHDL語言設(shè)計一個可預(yù)置系數(shù)的實現(xiàn)N=1~15的半整數(shù)分頻器,并且在此過程中調(diào)用子模塊。編寫半整數(shù)分頻器的底層程序[5]。
5.將設(shè)計文件保存。
6.編譯源文件。
7.編譯無誤后建立仿真波形文件[8]。
①新建一個新的仿真波形文件。
②將創(chuàng)建的仿真波形文件保存。
③在對話框中列出項目中選出使用的輸入、輸出的引腳。
④選擇所需要觀察的引腳,在波形編輯器窗口中,編輯輸入引交的邏輯關(guān)系,輸入完成后保存仿真波形文件。
⑤在仿真工具窗口中可以選擇時序仿真或功能仿真,指定仿真波形文件的位置等操作。開始仿真。經(jīng)過分析仿真結(jié)果符合設(shè)計的需要。仿真完成后得到仿真波形窗口如圖3.1。
圖3.1 仿真后分頻器實驗波形圖
8.仿真正確,選擇輸入/輸出引交及對應(yīng)的CPLD引腳[7]。
9.引腳分配完成,重新對此工程進行邏輯分析、綜合適配、時序分析等。完成后觀察引交分配的結(jié)果。
10.引腳分配完成,經(jīng)過編輯后會生成可以培植到CPLD 的POF文件。此時就可以將設(shè)計配置到芯片中。
11.設(shè)計配置芯片完成,連接實驗箱并驗證,所得結(jié)果符合實驗設(shè)計要求。
實驗結(jié)果如下表4.1所示,波形的輸出是QOUT輸出波形經(jīng)過二次分頻的方波。本次設(shè)計主要是通過FPGA通過仿真軟件對分頻器各個模塊的設(shè)計與實現(xiàn),本次實驗結(jié)果通過使用半整數(shù)分頻的方式通過對分頻模為2到14的偶數(shù)和3到15的奇數(shù)值進行分頻,通過實驗得到的結(jié)果準(zhǔn)確。通過使用硬件語言以及FPGA對于分頻器的設(shè)計與實現(xiàn),對比MMOS和PMOS管對于分頻器的設(shè)計,可編程邏輯門電路可以有效地解決前兩種元器件在低壓的狀況下分頻器出現(xiàn)無法工作的問題,更好地實現(xiàn)分頻器的設(shè)計,大大提高時間效率,對比CMOS器件設(shè)計,F(xiàn)PGA可以提高分頻器的頻率[8]。
表4.1 分頻器分頻模數(shù)實驗結(jié)果
參考文獻:
[1]劉勇.數(shù)字電路[M].電子工業(yè)出版社,2007.
[2]幸云輝,楊旭東.計算機組成原理實用教程[M].清華大學(xué)出版社,2009.
[3]楊軍,周克峰.計算機組成與系統(tǒng)結(jié)構(gòu)指導(dǎo)書[M].云南大學(xué)信息學(xué)院實驗室,2008.
[4]徐振林.Verilog HDL硬件描述語言[M].機械工業(yè)出版社,2000.
[5]夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京航空航天大學(xué)出版社,2008.
[6]黃宇.基于Quartus 2.0的FPGA/CPLD數(shù)字系統(tǒng)設(shè)計與應(yīng)用[M].電子工業(yè)出版社,2014.
[7]梁成志,王誠,趙延賓.Lattice FPGA/GPLD設(shè)計[M].人民郵電出版社,2011.
[8]韓波,唐廣.2.4Hz動態(tài)CMOS分頻器的設(shè)計[J].電子設(shè)計工程,2006.
[責(zé)任編輯張敬亞]
中圖分類號:G64
文獻標(biāo)識碼:A
文章編號:1673-9132(2016)25-0023-02
DOI:10.16657/j.cnki.issn1673-9132.2016.25.013