基于VHDL語(yǔ)言的智能撥號(hào)報(bào)警器的設(shè)計(jì)
2.3 摘/掛機(jī)控制模塊PICK
電話摘/掛機(jī)的實(shí)現(xiàn)是由摘/掛機(jī)控制模塊PICK控制摘/掛機(jī)電路來(lái)完成的。設(shè)計(jì)的PICK模塊如圖7所示。CLK是系統(tǒng)時(shí)鐘輸入;EN是人體檢測(cè)傳輸器采集的盜竊信號(hào)輸入;RESET是系統(tǒng)復(fù)位信號(hào)輸入;STOP為撥號(hào)完成的掛機(jī)控制信號(hào)輸入;BUSY為遇忙信號(hào)輸入;PICK為摘/掛機(jī)信號(hào)輸出。當(dāng)有盜竊發(fā)生時(shí),EN輸入信號(hào)有效,該模塊使摘機(jī)輸出信號(hào)PICK有效,從而驅(qū)動(dòng)摘/掛機(jī)電路產(chǎn)生摘機(jī)動(dòng)作。如果摘機(jī)后電話信號(hào)音識(shí)別模塊JUDGE送來(lái)的是系統(tǒng)忙的信號(hào),即UBSY輸入信號(hào)有效時(shí),輸出掛機(jī)信號(hào)PICK。兩秒鐘后重新啟動(dòng)摘機(jī),直到電話信號(hào)音為可撥號(hào)狀態(tài)。撥號(hào)完成后,STOP信號(hào)有效, PICK模塊產(chǎn)生掛機(jī)信號(hào)。當(dāng)RESET有效時(shí),掛機(jī)輸出信號(hào)有效。摘/掛機(jī)控制模塊PICK的部分VHDL程序如下:
process(clk,stop,busy,en,delay)
begin
if(clk'event and clk='1') then
if(reset='1' or stop='1') then
/*復(fù)位或撥號(hào)完成后掛機(jī)*/
pick='0';
elsif(en='1') then /*報(bào)警信號(hào)觸發(fā)摘機(jī)*/
if(busy='0') then
pick='1';
elsif(delay='1') then /*遇忙延時(shí)后重新摘機(jī)*/
pick='1';
else
pick='0'; /*遇忙掛機(jī)*/
end if;
end if;
end if;
end process;
3 系統(tǒng)設(shè)計(jì)和邏輯仿真
FPGA 中的3個(gè)功能模塊用VHDL語(yǔ)言描述進(jìn)行綜合仿真后,連接起來(lái)的系統(tǒng)電話原理圖如圖8所示。系統(tǒng)的工作過(guò)程:STEAL報(bào)警信號(hào)輸入PICK模塊,產(chǎn)生 PICK摘機(jī)信號(hào),控制摘機(jī)/掛機(jī)電路。摘機(jī)后,RECEI-SEND模塊將呼叫處理控制字寫(xiě)入MT8880芯片中,將MT8880設(shè)置為叫處理模式。然后電話信號(hào)音識(shí)別模塊JUDGE對(duì)MT8880芯片的輸出信號(hào)IRQ計(jì)數(shù),判別電話音是否為撥號(hào)音。若非撥號(hào)音,產(chǎn)生電話忙信號(hào)BUSY至PICK模塊,輸出掛機(jī)信號(hào)PICK,電話掛機(jī)。然后摘機(jī)后重判,若為撥號(hào)音,則JUDGE模塊輸出撥號(hào)信號(hào)DIAL至RECEI-SEND模塊,RECEI-SEND 模塊模擬與MT880直接接口進(jìn)行數(shù)據(jù)通訊的DTMF收發(fā)時(shí)序,控制MT8880按預(yù)先設(shè)置的電話進(jìn)行自動(dòng)撥號(hào)。撥號(hào)后延時(shí),由JUDGE模塊判別電話音是否為電話回鈴音,若為電話回鈴音電話回鈴音,則延時(shí)掛機(jī)。若不是電話回鈴音,則掛機(jī)重?fù)堋?
本系統(tǒng)采用的FPGA芯片為XILINX公司的XCS30/XL,邏輯門(mén)數(shù)為1.3萬(wàn)門(mén),用FOUNDATION2.1軟件工具開(kāi)發(fā)。設(shè)計(jì)輸入完成后,進(jìn)行整體的編譯和邏輯仿真,然后進(jìn)行轉(zhuǎn)換、布局、布線、延時(shí)仿零點(diǎn)生成配置文件,最后下載至FPGA器件,完成結(jié)構(gòu)功能配置,實(shí)現(xiàn)其硬件功能。FPGA的系統(tǒng)邏輯功能仿真波形如圖9所示。各信號(hào)的邏輯功能和時(shí)序配合完全達(dá)到設(shè)計(jì)要求。
本系統(tǒng)是用FPGA實(shí)現(xiàn)的智能報(bào)警器,全部通過(guò)編譯仿真和系統(tǒng)測(cè)試。由于系統(tǒng)的很多邏輯功能由一片F(xiàn)PGA實(shí)現(xiàn),外圍器件很少,所以系統(tǒng)體積小、可靠性高,且器件的可編程性使得系統(tǒng)功能易于完善。隨著可編程ASIC器件的應(yīng)用范圍不斷擴(kuò)大,越來(lái)越多的產(chǎn)生在開(kāi)發(fā)過(guò)程中都使用VHDL語(yǔ)言,綜使我們得以脫離底層電路,站在更高的層次上考慮各種邏輯和時(shí)序關(guān)系,從而快速完成設(shè)計(jì)。
評(píng)論