周 鵬,孫榮慶
(撫順職業(yè)技術(shù)學(xué)院,遼寧 撫順 113122)
基于CPLD的全數(shù)字式2FSK調(diào)制器的設(shè)計(jì)
周 鵬,孫榮慶
(撫順職業(yè)技術(shù)學(xué)院,遼寧 撫順 113122)
設(shè)計(jì)一種基于CPLD器件的2FSK調(diào)制器。在總體的設(shè)計(jì)過(guò)程中,完成2FSK調(diào)制器所需的各個(gè)模塊的功能設(shè)計(jì)及其硬件電路的實(shí)現(xiàn),其中包括分頻模塊、M序列生成模塊、正弦載波頻率選擇模塊和UFM存儲(chǔ)模塊。在Quartus II13.0軟件中編寫testbench測(cè)試程序,同時(shí)調(diào)用modelsim軟件對(duì)2FSK調(diào)制器進(jìn)行了仿真與測(cè)試,測(cè)試結(jié)果較為準(zhǔn)確,能夠完成調(diào)制所需的工作任務(wù)。
CPLD;2FSK;調(diào)制器;UFM
在現(xiàn)代通信系統(tǒng)中,2FSK是一種常見的調(diào)制方式,它的調(diào)制方法簡(jiǎn)單,容易實(shí)現(xiàn),且抗噪聲及抗衰落能力強(qiáng),可以進(jìn)行異步傳輸,所以在一些中﹑低速的數(shù)據(jù)信息傳輸中應(yīng)用非常廣泛[1]。傳統(tǒng)的2FSK調(diào)制器基本上采用的是專用集成芯片及數(shù)字電路的方式來(lái)實(shí)現(xiàn),但這種設(shè)計(jì)的電路連接復(fù)雜,穩(wěn)定性差,且體積也較大[2]。隨著復(fù)雜可編程邏輯器件性能的不斷提升及EDA技術(shù)的飛速發(fā)展,利用CPLD器件來(lái)設(shè)計(jì)2FSK調(diào)制器不但可以提高系統(tǒng)的可靠性[3]﹑降低設(shè)計(jì)成本﹑縮減電路板體積,還能增加設(shè)計(jì)的靈活性。同時(shí),CPLD器件所設(shè)計(jì)的邏輯電路,其時(shí)序延時(shí)是均勻的﹑可預(yù)測(cè)的。Altera公司的MAX II系列的CPLD內(nèi)部具有一個(gè)8 Kbit的FLASH存儲(chǔ)器UFM[4](用戶閃存),這不但減少了對(duì)外部存儲(chǔ)資源的需求,還提高了系統(tǒng)的通用性。因此,本文提出了一種使用CPLD器件來(lái)設(shè)計(jì)2FSK調(diào)制器的方法。
2FSK調(diào)制信號(hào)是采用2種不同頻率的正弦載波來(lái)表示被傳數(shù)字基帶信號(hào)“0”和“1”的變化[5],即當(dāng)正弦載波信號(hào)頻率為F1時(shí),對(duì)應(yīng)傳遞數(shù)字信號(hào)“1”;當(dāng)正弦載波信號(hào)頻率為F2時(shí),對(duì)應(yīng)傳遞數(shù)字信號(hào)“0”。2FSK調(diào)制的實(shí)現(xiàn)方式主要有載波調(diào)頻法和頻率鍵控法,其中載波調(diào)頻法是采用模擬電路的方法進(jìn)行調(diào)制,而頻率鍵控法則是在數(shù)字基帶信號(hào)的調(diào)控下,通過(guò)數(shù)字選擇開關(guān)對(duì)載波信號(hào)進(jìn)行選通輸出,其實(shí)現(xiàn)方式簡(jiǎn)單容易[6],因此文本采用頻率鍵控法進(jìn)行設(shè)計(jì)。利用Matlab軟件對(duì)2FSK調(diào)制信號(hào)進(jìn)行仿真,為了便于觀察最終的仿真結(jié)果,這里設(shè)定2種正弦載波信號(hào)的頻率分別為F1= 10 Hz,F(xiàn)2= 5 Hz,其仿真波形如圖1所示。
從圖1中可以看到當(dāng)隨機(jī)數(shù)字基帶信號(hào)為“0”時(shí),選擇輸出頻率為F2的正弦載波信號(hào);當(dāng)隨機(jī)數(shù)字基帶信號(hào)為“1”時(shí),選擇輸出頻率為F1的正弦載波信號(hào),即實(shí)現(xiàn)了數(shù)字基帶信號(hào)的2FSK調(diào)制。
2.1 2FSK調(diào)制器的總體設(shè)計(jì)
2FSK調(diào)制器主要由分頻模塊﹑M序列生成模
塊﹑正弦載波頻率選擇模塊﹑UFM存儲(chǔ)模塊構(gòu)成。其總體結(jié)構(gòu)簡(jiǎn)圖如圖2所示。
圖1 2FSK調(diào)制信號(hào)的仿真波形
圖2 2FSK調(diào)制器總體結(jié)構(gòu)簡(jiǎn)圖
其中clk為CPLD的外部100 MHz系統(tǒng)時(shí)鐘,rst_n為2FSK調(diào)制器的系統(tǒng)復(fù)位輸入。分頻模塊主要用于產(chǎn)生2種不同正弦載波信號(hào)的采樣頻率,分別為clk1和clk2,同時(shí)還產(chǎn)生隨機(jī)數(shù)字基帶信號(hào)的系統(tǒng)時(shí)鐘clkdata;M序列生成模塊主要用于生成隨機(jī)數(shù)字基帶信號(hào)mdata;正弦載波頻率選擇模塊是一個(gè)2選1的數(shù)據(jù)選擇器,在mdata的控制下,通過(guò)clk_2fsk選擇輸出不同正弦載波信號(hào)的采樣頻率;UFM存儲(chǔ)模塊主要用于存儲(chǔ)一個(gè)周期的正弦信號(hào)采樣數(shù)據(jù),在時(shí)鐘信號(hào)clk_2fsk的控制下,輸出16位并行的2FSK[15∶0]正弦載波調(diào)制信號(hào)。
2.2 2FSK調(diào)制器的各個(gè)模塊設(shè)計(jì)
2FSK調(diào)制器的硬件設(shè)計(jì)主要使用CPLD核心板來(lái)完成。所使用的主要芯片是Altera公司的MAX II系列器件,芯片的型號(hào)為EPM240T100C5N,其內(nèi)部包含了240個(gè)邏輯功能單元﹑并擁有80個(gè)外部用戶輸入輸出引腳,其所含資源完全可以滿足2FSK調(diào)制器的設(shè)計(jì)。核心板上具有CPLD開發(fā)的最小系統(tǒng),包括電源電路﹑時(shí)鐘電路﹑復(fù)位按鍵﹑JTAG下載電路等。利用Verilog HDL硬件描述語(yǔ)言對(duì)所設(shè)計(jì)的各個(gè)模塊進(jìn)行了功能描述,在Quartus II 13.0軟件中完成了功能代碼的編輯輸入﹑編譯﹑綜合調(diào)試及硬件電路實(shí)現(xiàn)的工作,下面給出每個(gè)模塊的具體設(shè)計(jì)過(guò)程。
2.2.1 分頻模塊設(shè)計(jì)
該模塊主要完成正弦載波信號(hào)采樣頻率及隨機(jī)數(shù)字基帶信號(hào)系統(tǒng)時(shí)鐘的設(shè)計(jì)。clk1﹑clk2和clkdata主要通過(guò)對(duì)CPLD核心板上的100 MHz系統(tǒng)時(shí)鐘進(jìn)行分頻處理得到,在模塊內(nèi)部可以修改程序設(shè)計(jì)的參數(shù),對(duì)不同的時(shí)鐘頻率進(jìn)行配置,為2FSK調(diào)制器載波信號(hào)的正確輸出提供保證。下面給出本模塊的設(shè)計(jì)仿真波形,為了便于觀察波形,這里設(shè)定clk1為10 MHz,clk2為5 MHz,clkdata為2.5 MHz,如圖3所示。
從圖3中可以看到clk1輸出的時(shí)鐘周期為100 000 ps,即其輸出頻率為10 MHz;clk2輸出的時(shí)鐘周期為200 000 ps,即其輸出頻率為5 MHz;clkdata輸出的時(shí)鐘周期為400 000 ps,即其輸出頻率為2.5 MHz,實(shí)現(xiàn)了分頻的功能。
圖3 分頻模塊時(shí)鐘頻率信號(hào)
2.2.2 M序列生成模塊設(shè)計(jì)
該模塊主要完成2FSK調(diào)制器測(cè)試所需的隨機(jī)數(shù)字基帶信號(hào)的生成,本隨機(jī)測(cè)試信號(hào)是通過(guò)M序列來(lái)實(shí)現(xiàn)的,其系統(tǒng)時(shí)鐘為clkdata。本模塊的M序列是一個(gè)采用多級(jí)反饋移位寄存器設(shè)計(jì)的偽隨機(jī)序列,使用的本原多項(xiàng)式為[7]:
M序列的modelsim仿真波形如圖4所示。
圖4 M序列仿真波形圖
從圖4中可以看出,該模塊實(shí)現(xiàn)了隨機(jī)數(shù)字基帶信號(hào)mdata的生成。
2.2.3 正弦載波頻率選擇模塊設(shè)計(jì)
該模塊主要完成對(duì)2種不同正弦載波信號(hào)采樣頻率的選擇工作,在隨機(jī)數(shù)字基帶信號(hào)mdata的控制下,使用2選1數(shù)據(jù)選擇器,實(shí)現(xiàn)對(duì)2中不同頻率信號(hào)的選擇。為了便于觀察設(shè)計(jì)的結(jié)果,這里設(shè)定clk1的頻率為2 MHz,clk2的頻率為1 MHz,其modelsim仿真波形如圖5所示。
圖5 載波頻率選擇仿真波形圖
從圖5中可以看出,當(dāng)mdata信號(hào)為“0”時(shí),clk_2fsk選擇輸出頻率為clk2(1 MHz)的載波采樣頻率;當(dāng)mdata信號(hào)為“1”時(shí),clk_2fsk選擇輸出頻率為clk1(2 MHz),即實(shí)現(xiàn)了載波頻率選擇的功能。
2.2.4 UFM存儲(chǔ)模塊設(shè)計(jì)
本模塊主要用于存儲(chǔ)一個(gè)周期正弦載波信號(hào)的數(shù)據(jù),并在clk_2fsk時(shí)鐘的驅(qū)動(dòng)下產(chǎn)生2種不同頻率的正弦載波信號(hào),以實(shí)現(xiàn)對(duì)數(shù)字基帶信號(hào)的2FSK調(diào)制,其設(shè)計(jì)過(guò)程如下:
1)采集一個(gè)周期的正弦波信號(hào)數(shù)據(jù)。在MATLAB軟件中設(shè)計(jì)一個(gè)正弦波信號(hào)采樣程序,對(duì)一個(gè)周期的正弦波信號(hào)進(jìn)行512點(diǎn)的數(shù)據(jù)采樣,設(shè)其每個(gè)數(shù)據(jù)的位寬為16位。
2)建立存儲(chǔ)采樣數(shù)據(jù)的MIF文件。在Quartus II13.0軟件中建立一個(gè)新的MIF(Memory Initialization File)文件,設(shè)置文件中數(shù)據(jù)存儲(chǔ)的個(gè)數(shù)為512個(gè),每一位數(shù)據(jù)位寬為16位。在MIF文件的存儲(chǔ)表格中按順序依次存儲(chǔ)前面通過(guò)采樣得到的512個(gè)數(shù)據(jù),用于初始化CPLD器件的UFM存儲(chǔ)單元。
3)創(chuàng)建UFM宏功能單元。UFM是Altera公司CPLD器件內(nèi)特有的一個(gè)用戶閃存,它擁有一個(gè)8 Kbit的Flash,該Flash被分為2個(gè)區(qū),每個(gè)區(qū)都具有4 Kbit的存儲(chǔ)容量,而且它不占用CPLD器件的資源,可以省去部分外部的存儲(chǔ)資源,減少設(shè)計(jì)費(fèi)用。UFM宏單元可以使用I2C,SPI,Parallel等總線接口,完成對(duì)其內(nèi)部存儲(chǔ)數(shù)據(jù)的讀寫訪問(wèn)控制工
作。UFM的具體建立過(guò)程為:在Quartus II13.0軟件中打開宏功能對(duì)話框MegaWizard plug-In Manager,選擇創(chuàng)建新的宏單元,打開Memory Compile文件夾,選擇ALTUFM_PARALLEL來(lái)創(chuàng)建UFM宏功能模塊,即通過(guò)Parallel總線來(lái)讀寫其內(nèi)部數(shù)據(jù);對(duì)UFM模塊進(jìn)行相關(guān)的參數(shù)設(shè)置,存儲(chǔ)單元的訪問(wèn)模式設(shè)定為只讀模式,地址總線為9位,數(shù)據(jù)總線為16位,使用之前建立好的MIF文件對(duì)UFM的存儲(chǔ)空間進(jìn)行初始化設(shè)置,同時(shí)命名該模塊為UFM_2FSK。
4)UFM存儲(chǔ)采樣數(shù)據(jù)讀取的設(shè)計(jì)。為了能夠有效的讀取UFM存儲(chǔ)單元中的正弦載波信號(hào)采樣數(shù)據(jù),需要在clk_2fsk時(shí)鐘信號(hào)驅(qū)動(dòng)下對(duì)UFM存儲(chǔ)空間的地址按順序進(jìn)行增加,以此控制512個(gè)采樣數(shù)據(jù)的正確輸出,形成2中不同頻率的正弦載波信號(hào)。對(duì)UFM模塊內(nèi)部采樣數(shù)據(jù)的讀取,是按照UFM模塊的控制時(shí)序進(jìn)行的,具體過(guò)程如下:以采樣頻率clk_2fsk為時(shí)鐘信號(hào),在其上升沿檢測(cè)UFM模塊的nbusy信號(hào),當(dāng)其為高電平時(shí),UFM地址總線增加1位,同時(shí)設(shè)定UFM模塊的nread信號(hào)為低電平,并輸出當(dāng)前存儲(chǔ)單元的采樣數(shù)據(jù);當(dāng)nbusy信號(hào)為低電平時(shí),設(shè)置nread信號(hào)為高電平,保持當(dāng)前輸出值;若按下系統(tǒng)復(fù)位按鍵,則地址總線復(fù)位清零,同時(shí)設(shè)定nread信號(hào)為高電平。
設(shè)計(jì)好所有模塊后,在Quartus II13.0軟件中編寫testbench測(cè)試程序,對(duì)2FSK調(diào)制器進(jìn)行總體的仿真與測(cè)試,這里設(shè)置2種載波采樣頻率分別為:clk1為1 MKHz,clk2為100 Hz,其仿真測(cè)試波形如圖6所示。
圖6 2FSK調(diào)制器的仿真波形
從圖6的波形中可以看出,mdata為輸出的2進(jìn)制隨機(jī)數(shù)字基帶信號(hào)。當(dāng)其數(shù)值為“0”時(shí),調(diào)制器OUT_2FSK輸出的是頻率為1 MHz的正弦載波信號(hào);當(dāng)其數(shù)值為“1”時(shí),調(diào)制器OUT_2FSK輸出的是頻率為100 KHz的正弦載波信號(hào),因此可以看到該2FSK調(diào)制器的設(shè)計(jì)基本正確。
本文主要使用CPLD器件完成了2FSK調(diào)制器的設(shè)計(jì)。在獨(dú)立的CPLD芯片上,實(shí)現(xiàn)了系統(tǒng)時(shí)鐘分頻的工作,利用隨機(jī)數(shù)字基帶信號(hào)來(lái)控制選擇兩種不同的正弦載波采樣時(shí)鐘,根據(jù)MAX II系列CPLD內(nèi)部UFM模塊的讀寫時(shí)序要求,完成了對(duì)存儲(chǔ)于UFM模塊中的正弦波數(shù)據(jù)的讀取工作,最終采用Verilog HDL硬件描述語(yǔ)言,對(duì)2FSK調(diào)制器進(jìn)行了設(shè)計(jì)﹑綜合﹑布線與仿真測(cè)試。通過(guò)對(duì)測(cè)試結(jié)果的分析可知,該調(diào)制器的工作效率高﹑穩(wěn)定性較好,并且能夠?qū)Τ绦虻牟糠謪?shù)進(jìn)行靈活的配置和修改,可以滿足不同設(shè)計(jì)工作的需求。
[1] 胡之惠,李淵,施瑛,等.基于V/F轉(zhuǎn)換的2FSK調(diào)制電路設(shè)計(jì)[J].上海電機(jī)學(xué)院學(xué)報(bào),2015,18(1):19-23.
[2] 謝大川,李海兵.基于FPGA的FSK調(diào)制與接收系統(tǒng)設(shè)計(jì)[J].電子世界,2013(11):72-73.
[3] 孫榕.用FPGA器件實(shí)現(xiàn)2FSK/2PSK調(diào)制器的設(shè)計(jì)[J].科技資訊,2007(25):32-33.
[4] 王立華,邵玉芹,孟秀錦.基于MAX II CPLD的LCD控制器設(shè)計(jì)[J].微計(jì)算機(jī)信息,2010,26(5-2):128-130.
[5] 關(guān)進(jìn)輝,姜恒,劉全海,等.基于FPGA的相位連續(xù)的2FSK信號(hào)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2013,36(9):79-81.
[6] 應(yīng)亞萍,許建鳳,陳婉君.2FSK調(diào)制解調(diào)系統(tǒng)的FPGA設(shè)計(jì)與實(shí)現(xiàn)[J].浙江工業(yè)大學(xué)學(xué)報(bào),2010,38(3):
282-285.
[7] 周鵬.PDH標(biāo)準(zhǔn)的E3次群測(cè)試序列發(fā)生器的FPGA設(shè)計(jì)[J].鹽城工學(xué)院學(xué)報(bào)(自然科學(xué)版),2015,28(1):56-60.
[責(zé)任編輯:吳卓]
我校2項(xiàng)目獲2016年度廣東省輕工業(yè)協(xié)會(huì)科學(xué)技術(shù)進(jìn)步獎(jiǎng)
日前,廣東省輕工業(yè)協(xié)會(huì)發(fā)布公告,由我校殷少有老師主持的“大功率風(fēng)光互補(bǔ)LED路燈系統(tǒng)關(guān)鍵技術(shù)研究及產(chǎn)業(yè)化”項(xiàng)目獲2016年度廣東省輕工業(yè)協(xié)會(huì)科技進(jìn)步獎(jiǎng)一等獎(jiǎng);由我校徐言生老師主持的“空調(diào)器變徑雙向節(jié)流關(guān)鍵技術(shù)研究及產(chǎn)業(yè)化”項(xiàng)目獲2016年度廣東省輕工業(yè)協(xié)會(huì)科技進(jìn)步獎(jiǎng)二等獎(jiǎng)。
“大功率風(fēng)光互補(bǔ)LED路燈系統(tǒng)關(guān)鍵技術(shù)研究及產(chǎn)業(yè)化”項(xiàng)目完全采用環(huán)保可再生能源風(fēng)光互補(bǔ)關(guān)鍵技術(shù)驅(qū)動(dòng)大功率LED燈,利用風(fēng)力發(fā)電機(jī)把風(fēng)能轉(zhuǎn)換為電能,利用太陽(yáng)能電池把太陽(yáng)能轉(zhuǎn)換為電能,利用納米熱管強(qiáng)化LED燈換熱,有效解決了目前照明中普遍采用的高壓鈉燈功率大﹑壽命短﹑光效差等問(wèn)題。利用風(fēng)能和太陽(yáng)能可再生能源風(fēng)光互補(bǔ)關(guān)鍵技術(shù)驅(qū)動(dòng)大功率LED燈,節(jié)能環(huán)保,積極推進(jìn)我國(guó)照明行業(yè)快速發(fā)展。
“空調(diào)器變徑雙向節(jié)流關(guān)鍵技術(shù)研究及產(chǎn)業(yè)化”項(xiàng)目發(fā)明了一種空調(diào)器新的節(jié)流原理和節(jié)流元件,具有結(jié)構(gòu)簡(jiǎn)單﹑加工成本低﹑可靠性好等優(yōu)點(diǎn),并獲得了發(fā)明專利。該項(xiàng)目是依托我校廣東高校熱泵工程技術(shù)開發(fā)中心與廣東恒基金屬制品實(shí)業(yè)有限公司聯(lián)合成立的“短管節(jié)流應(yīng)用研究中心”取得的研發(fā)成果之一,這也是我校設(shè)立校企聯(lián)合研發(fā)中心的所取得的標(biāo)志性成果。
科技處
2016-09-26
The Design of Digital 2FSK Modulator Based on CPLD
ZHOU Peng,SUN Rongqing
(Fushun Vocational Technology Institute,F(xiàn)ushun Liaoning 113122,China)
A 2FSK modulator based on CPLD is designed. In the whole design process,the functional design of each module and the realization of hardware circuit of 2FSK modulator are completed,including frequency division module,M sequence generation module,sinusoidal carrier frequency selection module and UFM memory module. In the Quartus II13.0 software,the testbench test program is written and the modelsim software is used to simulate and test the 2FSK modulator. The test result is accurate and can complete the work required for modulation.
CPLD; 2FSK; modulator; UFM
TN761.2
A
1672-6138(2016)04-0016-05
10.3969/j.issn.1672-6138.2016.04.004
2016-10-11
周鵬(1983—),男,山東兗州人,講師,碩士,研究方向:數(shù)字信號(hào)處理及應(yīng)用,嵌入式系統(tǒng)設(shè)計(jì)。
順德職業(yè)技術(shù)學(xué)院學(xué)報(bào)2016年4期