專利名稱:遙控指令保護(hù)間隔精確定時方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種主要用于實(shí)現(xiàn)遙控指令保護(hù)間隔精確定時的方法。
背景技術(shù):
目前,現(xiàn)有技術(shù)中用于遙控指令保護(hù)間隔的定時裝置,通常采用定時精度不高,定時不準(zhǔn)確的監(jiān)控軟件定時,而采用可編程門陣列芯片(FPGA)及數(shù)字信號處理芯片(DSP)相結(jié)合的方式定時,定時精度可以達(dá)到50納秒,大大提高了定時精度。
發(fā)明內(nèi)容
為了克服現(xiàn)有技術(shù)監(jiān)控軟件定時精度不高、定時不準(zhǔn)確的問題,本發(fā)明提出一種定時準(zhǔn)確可靠的遙控指令保護(hù)間隔的精確定時方法。本發(fā)明提出的一種遙控指令保護(hù)間隔精確定時的方法,具有如下技術(shù)特征(1)用可編程門陣列芯片(FPGA)編程生成發(fā)令窗信號(tcwindow),將初始化及無遙控指令發(fā)送時發(fā)令窗(tcwindow)輸出設(shè)為0,遙控指令正在發(fā)送時發(fā)令窗(tcwindow)的輸出設(shè)為1,并把上述tcwindow信號上報給數(shù)字信號處理芯片(DSP);(2)在數(shù)字信號處理芯片(DSP)中編程,初始化時遙控標(biāo)志flag = 0,在DSP的中斷程序中根據(jù)FPGA上報的發(fā)令窗(tcwindow)信號得到標(biāo)志flag的狀態(tài)Acwindow信號由“0”變?yōu)椤?”時,進(jìn)入遙控發(fā)令程序,標(biāo)志flag = 1 ;tcwindow信號由“1”變?yōu)椤?”時, 遙控發(fā)令完畢,進(jìn)入定時程序,標(biāo)志flag = 2 ;定時結(jié)束后,遙控空閑,標(biāo)志flag為0 ;(3)數(shù)字信號處理芯片(DSP)收到遙控指令后,按先后順序緩存指令,然后在主程序循環(huán)中,判斷遙控狀態(tài),若遙控標(biāo)志flag不為“0”,則跳過遙控發(fā)令程序執(zhí)行其它程序, 等待下次循環(huán)再查詢;若遙控標(biāo)志flag為“0”,則發(fā)送當(dāng)前遙控指令,遙控指令發(fā)送完畢, 進(jìn)入DSP定時器時間保護(hù)間隔,保護(hù)間隔過后,設(shè)置flag = 0,進(jìn)入遙控空閑狀態(tài),可以繼續(xù)發(fā)送遙控指令。本發(fā)明相比于現(xiàn)有技術(shù)具有如下有益效果(1)實(shí)現(xiàn)簡單,定時可靠。該精確定時技術(shù)不需要軟件參與控制,利用DSP和FPGA 相結(jié)合的方式,DSP判決FPGA上報的遙控發(fā)令窗,判斷遙控指令發(fā)送完畢后進(jìn)入定時程序, 等待定時時間結(jié)束后,可以繼續(xù)發(fā)送緩存的遙控指令,有效解決了原來遙控指令保護(hù)間隔定時不夠準(zhǔn)確的問題。(2)定時精度高。該精確定時技術(shù)中使用的數(shù)字信號處理芯片(DSP)的定時器中, 采用20MHz為時鐘來定時,定時精度達(dá)到50納秒,遠(yuǎn)大于計算機(jī)的定時精度。
下面結(jié)合附圖對本發(fā)明進(jìn)一步說明。圖1是本發(fā)明可編程門陣列芯片(FPGA)和數(shù)字信號處理芯片(DSP)的連接框圖。圖2是圖1的有力示意圖。
圖3本發(fā)明的控制流程框圖。
具體實(shí)施例方式參閱圖1、圖2。實(shí)施本發(fā)明方法的硬件設(shè)備,包括控制遙控發(fā)送命令的計算機(jī)、傳輸遙控指令的總線接口(CPCI)、以及通過CPCI串聯(lián)的可編程門陣列芯片(FPGA)和數(shù)字信號處理芯片(DSP),數(shù)字信號處理芯片(DSP)并聯(lián)接CPCI。參閱圖3。用可編程門陣列芯片(FPGA)編程,設(shè)置發(fā)令窗信號(tcwindow),初始化及無遙控指令發(fā)送時輸出為0,遙控指令正在發(fā)送時輸出為1,發(fā)令窗信號(tcwindow)上報給數(shù)字信號處理芯片(DSP);在數(shù)字信號處理芯片(DSP)中編程,初始化時定義遙控空閑, 即flag = 0,同時在DSP的中斷程序中接收FPGA上報的tcwindow信號的變化,tcwindow信號由“0”變?yōu)椤?”時,進(jìn)入遙控發(fā)令程序,標(biāo)志(flag = 1) ;tcwindow信號由“1”變?yōu)椤?” 時,遙控發(fā)令完畢,進(jìn)入定時程序,標(biāo)志(flag = 2),定時結(jié)束后,標(biāo)志(flag = 0)遙控空閑。遙控指令到來時,先進(jìn)入DSP存儲器中緩存,然后進(jìn)入DSP主程序中循環(huán)程序,DSP在循環(huán)程序中,先判斷存儲器中是否有遙控指令,無遙控指令,則跳過遙控發(fā)令程序,有遙控指令,則查詢目前遙控的狀態(tài),若標(biāo)志flag為“0”,則立刻發(fā)出當(dāng)前遙控指令,否則等待下次循環(huán)再查詢,直至在循環(huán)中查詢到標(biāo)志(flag = 0)再發(fā)出當(dāng)前遙控指令??刂屏鞒倘缦鲁跏蓟删幊涕T陣列芯片(FPGA)及數(shù)字信號處理芯片(DSP), tcwindow = 0&flag = 0。計算機(jī)通過CPCI發(fā)送遙控指令,首先在DSP存儲器中緩存,當(dāng)存儲器中有遙控指令時,判斷flag,若flag不為“0”,則該條指令不做處理,繼續(xù)緩存,執(zhí)行其他程序;若flag為“0”,該條遙控指令馬上發(fā)至FPGA,F(xiàn)PGA收到指令后馬上進(jìn)行發(fā)令處理, 同時tcwindow信號一直上報給數(shù)字信號處理芯片(DSP),DSP在中斷程序中更新flag的值,中斷中判斷到flag = 1時,說明指令正在發(fā)送;當(dāng)在中斷中判斷到flag = 2時,說明遙控指令發(fā)畢,進(jìn)入DSP定時器,開始時間保護(hù),保護(hù)時間過后,設(shè)置flag = 0,遙控空閑,可以執(zhí)行其他程序,然后在主程序中重新查詢。
權(quán)利要求
1.一種遙控指令保護(hù)間隔精確定時方法,具有如下技術(shù)特征(1)用可編程門陣列芯片(FPGA)編程生成發(fā)令窗信號(tcwindow),將初始化及無遙控指令發(fā)送tcwindow輸出設(shè)為0,遙控指令正在發(fā)送tcwindow的輸出設(shè)為1,并把上述 tcwindow信號通過中斷上報給數(shù)字信號處理芯片(DSP);(2)在數(shù)字信號處理芯片(DSP)中編程,定義遙控的三種狀態(tài)遙控空閑標(biāo)志flag= 0,遙控發(fā)令標(biāo)志flag = 1,遙控保護(hù)間隔標(biāo)志flag = 2,初始化時標(biāo)志(flag = 0);(3)在數(shù)字信號處理芯片(DSP)的中斷程序中設(shè)置判斷FPGA上報發(fā)令窗(tcwindow) 信號的子程序,若tcwindow信號由“0”變?yōu)椤?1 ”,則表示遙控正在發(fā)令,標(biāo)志flag = 1 ;若 tcwindow信號由“1”變?yōu)椤?”,則表示遙控指令發(fā)送完畢,進(jìn)入定時程序,標(biāo)志flag = 2 ;定時結(jié)束后,標(biāo)志flag = 0 遙控空閑。因?yàn)橹袛喑绦虻膬?yōu)先級最高,所以遙控標(biāo)志flag的狀態(tài)可以及時更新;G)DSP收到遙控指令后,按先后順序緩存指令,然后在主程序循環(huán)中判斷遙控標(biāo)志 flag的狀態(tài),若標(biāo)志flag = 0,則進(jìn)入遙控發(fā)令程序,否則跳過遙控發(fā)令程序,繼續(xù)執(zhí)行其它操作直至循環(huán)結(jié)束,再重新循環(huán)判斷。
2.如權(quán)利要求1所述的遙控指令保護(hù)間隔精確定時的方法,其特征在于,初始化時定義遙控標(biāo)志flag = 0,遙控指令到來時先進(jìn)入DSP存儲器中緩存,然后進(jìn)入DSP主程序中循環(huán)程序。
3.如權(quán)利要求2所述的遙控指令保護(hù)間隔精確定時的方法,其特征在于,DSP在循環(huán)程序中,先判斷存儲器中是否有遙控指令,無遙控指令,則跳過遙控發(fā)令程序;有遙控指令,則查詢目前遙控的狀態(tài),若當(dāng)前狀態(tài)為遙控空閑,則立刻發(fā)出當(dāng)前遙控指令,否則等待下次循環(huán)再查詢,直至在循環(huán)中查詢到遙控狀態(tài)為空閑再發(fā)出當(dāng)前遙控指令。
4.如權(quán)利要求3所述的遙控指令保護(hù)間隔精確定時的方法,其特征在于,DSP在循環(huán)程序中,查詢到存儲器中有遙控指令后,判斷標(biāo)志flag,若標(biāo)志flag = 0,則遙控空閑,馬上發(fā)送當(dāng)前遙控指令;若遙控標(biāo)志flag = 1,則遙控指令正在發(fā)送;若遙控標(biāo)志flag = 2,則遙控指令已經(jīng)發(fā)送完畢,進(jìn)入DSP定時器時間保護(hù)間隔,保護(hù)間隔過后,設(shè)置flag = 0,進(jìn)入遙控空閑狀態(tài),可以繼續(xù)發(fā)送遙控指令。
全文摘要
本發(fā)明涉及一種遙控指令保護(hù)間隔精確定時方法,旨在提供一種實(shí)現(xiàn)遙控指令保護(hù)間隔精確定時的方法,定時準(zhǔn)確可靠。本發(fā)明通過下述技術(shù)方案予以實(shí)現(xiàn)用可編程門陣列芯片(FPGA)編程生成發(fā)令窗信號(tcwindow),初始化及無遙控指令發(fā)送時發(fā)令窗信號(tcwindow)輸出設(shè)為0,遙控指令正在發(fā)送時發(fā)令窗信號輸出設(shè)為1,將tcwindow上報給數(shù)字信號處理芯片(DSP),在DSP中編程,在中斷程序中判斷tcwindow的狀態(tài),tcwindow由“1”跳變?yōu)椤?”時,判斷遙控指令發(fā)送完畢后進(jìn)入定時程序,等待定時時間結(jié)束后可以繼續(xù)發(fā)送緩存的遙控指令。本發(fā)明利用數(shù)字信號處理芯片(DSP)和可編程門陣列芯片(FPGA)相結(jié)合的方式,有效解決了遙控指令保護(hù)間隔定時不夠精確的問題。
文檔編號G06F9/52GK102231123SQ20111013778
公開日2011年11月2日 申請日期2011年5月24日 優(yōu)先權(quán)日2011年5月24日
發(fā)明者郭靖, 陳玲 申請人:中國電子科技集團(tuán)公司第十研究所