基于51單片機(jī)和CPLD的數(shù)字頻率計的設(shè)計
引言
在傳統(tǒng)的控制系統(tǒng)中,通常將單片機(jī)作為控制核心并輔以相應(yīng)的元器件構(gòu)成一個整體。但這種方法硬件連線復(fù)雜、可靠性差,且在實際應(yīng)用中往往需要外加擴(kuò)展芯片,這無疑會增大控制系統(tǒng)的體積,還會增加引入干擾的可能性。對一些體積小的控制系統(tǒng),要求以盡可能小的器件體積實現(xiàn)盡可能復(fù)雜的控制功能,直接應(yīng)用單片機(jī)及其擴(kuò)展芯片就難以達(dá)到所期望的效果。
復(fù)雜可編程邏輯器件(CPLD)具有集成度高、運(yùn)算速度快、開發(fā)周期短等特點(diǎn),它的出現(xiàn),改變了數(shù)字電路的設(shè)計方法、增強(qiáng)了設(shè)計的靈活性。基于此,本文提出了一種采用Altera公司的CPLD(ATF1508AS) 和Atmel公司的單片機(jī)(AT89S52)相結(jié)合的數(shù)字頻率計的設(shè)計方法。該數(shù)字頻率計電路簡潔,軟件潛力得到充分挖掘,低頻段測量精度高,有效防止了干擾的侵入。獨(dú)到之處體現(xiàn)在用軟件取代了硬件。
CPLD開發(fā)環(huán)境簡介
1 VHDL語言
VHDL(Very High Speed Integrated Circuit Hardware Description Language,超高速集成電路硬件描述語言)是由美國國防部開發(fā)的一種快速設(shè)計電路的工具,目前已經(jīng)成為IEEE的一種工業(yè)標(biāo)準(zhǔn)硬件描述語言。相比傳統(tǒng)的電路系統(tǒng)設(shè)計方法,VHDL具有多層次描述系統(tǒng)硬件功能的能力,支持自頂向下和基于庫的設(shè)計的特點(diǎn),因此設(shè)計者可以不必了解硬件結(jié)構(gòu)。從系統(tǒng)設(shè)計入手,在頂層進(jìn)行系統(tǒng)方框圖的劃分和結(jié)構(gòu)設(shè)計,在方框圖一級用VHDL對電路的行為進(jìn)行描述,并進(jìn)行仿真和糾錯,然后在系統(tǒng)一級進(jìn)行驗證,最后再用邏輯綜合優(yōu)化工具生成具體的門級邏輯電路的網(wǎng)表,下載到具體的CPLD器件中去,從而實現(xiàn)可編程的專用集成電路(ASIC)的設(shè)計。
2 Max+PlusⅡ開發(fā)工具
Max+PlusⅡ開發(fā)工具是美國Altera公司自行設(shè)計的一種CAE軟件工具。它具有全面的邏輯設(shè)計能力,設(shè)計者可以自由組合文本、圖形和波形輸入法,建立起層次化的單器件或多器件設(shè)計。利用該工具配備的編輯、編譯、仿真、綜合、芯片編程等功能,將設(shè)計的電路圖或電路描述程序變成基本的邏輯單元寫入到可編程芯片中(如CPLD、FPGA),做成ASIC芯片。
它支持FLEX、MAX及Classic等系列CPLD器件,設(shè)計者無須精通器件內(nèi)部的復(fù)雜結(jié)構(gòu) ,只需用自己熟悉的設(shè)計輸入工具,如高級行為語言、原理圖或波形圖進(jìn)行設(shè)計輸入,它便將這些設(shè)計轉(zhuǎn)換成目標(biāo)結(jié)構(gòu)所要求的格式,從而簡化了設(shè)計過程。而且 Max+PlusⅡ提供了豐富的邏輯功能庫供設(shè)計者使用。設(shè)計者利用以上這些庫及自己添加的宏功能模塊,可大大減輕設(shè)計的工作量。使用Max+PlusⅡ 設(shè)計CPLD器件的流程如圖1所示。
圖1 Max+PlusⅡ設(shè)計CPLD器件的流程圖
評論