亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種利用cpld控制dsp實現(xiàn)二次啟動的方法

文檔序號:6386265閱讀:617來源:國知局
專利名稱:一種利用cpld控制dsp實現(xiàn)二次啟動的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種嵌入式系統(tǒng)技術(shù)領(lǐng)域,具體涉及一種由可編程邏輯器件控制數(shù)字信號處理器實現(xiàn)二次啟動的方法。
背景技術(shù)
隨著現(xiàn)代電子技術(shù)的發(fā)展,數(shù)字信號處理器DSP由于具有體積小、速度快、集成度高、一致性好、接口豐富、易于擴(kuò)展和抗干擾能力強(qiáng)等諸多特點優(yōu)點在嵌入式系統(tǒng)中得到了日益廣泛的應(yīng)用。基于芯片構(gòu)架及商業(yè)利益等原因,很多采用DSP的嵌入式系統(tǒng)中每次啟動時都需要從DSP片外程序空間把代碼加載到片內(nèi)RAM中才能運(yùn)行。隨著嵌入式系統(tǒng)功能的日益強(qiáng)大,DSP代碼量也越來越大,代碼加載的時間也越來越長。由于系統(tǒng)在啟動過程中,工作電源容易受到干擾,會造成系統(tǒng)代碼加載錯誤造成啟動失敗的現(xiàn)象。而一旦首次啟動失敗,通常需要斷電或復(fù)位以進(jìn)行二次啟動,造成啟動時間過長,無法滿足用戶要求。為了防止啟動失敗的現(xiàn)象,通常都需要對電源采取嚴(yán)格的隔離保護(hù)措施。但是,由于干擾的不確定性,這樣做并不能確保每次啟動都能成功,特別是對啟動時間和啟動可靠性要求高的場合,僅僅對電源采取措施是不夠的。那么,如何提高嵌入式系統(tǒng)啟動的可靠性,并有效縮短二次啟動時間就成為需要解決的技術(shù)問題。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于,提供一種利用CPLD控制DSP實現(xiàn)二次啟動的方法,以提高啟動可靠性并縮短二次啟動時間。本發(fā)明所述的嵌入式系統(tǒng)中數(shù)字信號處理器DSP的程序全部存儲在片外程序存儲器中。每次上電DSP程序加載需要分為一級加載和二級加載兩個階段。一級加載是由DSP通過DMA或EDMA方式自動進(jìn)行,將位于片外程序存儲器開頭的一段代碼傳輸?shù)狡瑑?nèi)地址0x00處執(zhí)行,整個傳輸過程不受用戶控制;二級加載是在一級加載成功的基礎(chǔ)上進(jìn)行的,執(zhí)行一級加載的代碼把用戶的應(yīng)用程序由加載地址拷貝到運(yùn)行地址的過程。本發(fā)明的技術(shù)解決方案是
一種利用CPLD控制DSP實現(xiàn)二次啟動的方法,其特征在于,該方法包括
1)把CPLD的某個通用IO腳,暫名為IOl;和DSP自身的復(fù)位信號相與后,接到DSP的復(fù)位管腳RST上;
2)把DSP的某個通用GPIO腳接到CPLD的某個通用IO腳上,暫名為102;把DSP的寫信號WR接到CPLD的某個通用IO腳上,暫名為103 ;把DSP的地址空間選擇信號CEx接到CPLD的某個通用IO腳上,暫名為104 ;
3)把DSP的外部數(shù)據(jù)總線DO到D31全部接到CPLD的IO管腳上,
和以上IO管腳不重復(fù);
4)把DSP的外部地址總線A17到A21全部接到CPLD的IO管腳上,和以上IO管腳不重
復(fù);5)可用VHDL或Verilog硬件描述語言編寫CPLD的代碼;
6)每次CPLD上電復(fù)位結(jié)束后,初始化啟動標(biāo)志寄存器的值,把IOl輸出高電平;
7)用匯編語言,在DSP的一級代碼增加使其GPIO輸出一個低脈沖信號,低脈沖持續(xù)時間可使CPLD充分識別即可;然后,給標(biāo)志寄存器中寫入特征值;
8)每次上電后,CPLD若在規(guī)定時間內(nèi)未捕獲到102管腳出現(xiàn)低脈沖信號,則把IOl輸出低電平,中斷當(dāng)前啟動,重新開始啟動;否則,讀取啟動標(biāo)志寄存器;
9)若啟動標(biāo)志寄存器的內(nèi)容等于特征值,則表明首次啟動成功;否則,把IOl輸出低電平,中斷當(dāng)前啟動,重新開始啟動。2、根據(jù)權(quán)利要求1所述一種利用CPLD控制DSP實現(xiàn)二次啟動的方法,其特征在于所述DSP只要是二級啟動的處理器即可,具體為TI公司的TMS320C6713 ;所述CPLD具體為ALTERA公司的EPM1270。本發(fā)明的優(yōu)點是1.二次啟動時間短。所述CPLD每次在DSP —級加載期間就可預(yù)判DSP是否會啟動失敗,不必等到二級加載結(jié)束后才去判斷,明顯節(jié)約了二次啟動時間。2.判斷方式可靠性高。不僅通過DSP的GPIO電平變化來判斷,還通過DSP的數(shù)據(jù)總線D
是否寫操作正常來判斷,綜合考慮了兩個方面的因素。3.代碼編寫容易。用戶只需`在DSP的一級代碼中增加對GPIO和給定地址寄存器的寫操作即可。4.調(diào)試方便,可以很方便地用示波器在IO管腳上監(jiān)測到信號。5.和DSP之間連線方便靈活,便于印制板布線。


圖1為二次啟動原理框 圖2為CPLD控制DSP 二次啟動流程圖。
具體實施例方式1.發(fā)明中的數(shù)字信號處理器為TI公司的TMS320C6713,可編程邏輯器件為ALTERA公司的EPM1270。啟動原理,參見圖1,CPLD對DSP進(jìn)行二次啟動的流程,參見圖2。2.把CPLD的某個通用IO腳(暫名為IOl ^PDSP自身的復(fù)位信號相與后,接到DSP的復(fù)位管腳RST上。3.把DSP的某個通用GPIO腳接到CPLD的某個通用IO腳(暫名為102)上。把DSP的寫信號WR接到CPLD的某個通用IO腳(暫名為103)上。把DSP的地址空間選擇信號CEx接到CPLD的某個通用IO腳(暫名為104)上。4.把DSP的外部數(shù)據(jù)總線DO到D31全部接到CPLD的IO管腳上,和以上IO管腳
不重復(fù)。5.把DSP的外部地址總線A17到A21全部接到CPLD的IO管腳上,和以上IO管腳
不重復(fù)。6 可用VHDL、Verilog等硬件描述語言編寫CPLD的代碼。7.每次CPLD上電復(fù)位結(jié)束后,初始化啟動標(biāo)志寄存器的值,例如可以寫成0X00。把IOl輸出高電平。8.用匯編語言,在DSP的一級代碼增加使其GPIO輸出一個低脈沖信號,低脈沖持續(xù)時間可使CPLD充分識別即可。然后,給標(biāo)志寄存器中寫入特征值,例如0X55AA55AA。9.每次上電后,CPLD若在規(guī)定時間內(nèi)未捕獲到102管腳出現(xiàn)低脈沖信號,則把IOl輸出低電平,中斷當(dāng)前啟動,重新開始啟動。否則,讀取啟動標(biāo)志寄存器。10.若啟動標(biāo)志寄存器的內(nèi)容等于特征值,則表明首次啟動成功。否則,把IOl輸出低電平,中斷當(dāng)前啟動,重新開始啟動。本發(fā)明實現(xiàn)以下結(jié)果
I )DSP和CPLD同時上電,各自有獨立的上電復(fù)位電路;正常啟動時,CPLD并不控制DSP的復(fù)位;只有在DSP 二次啟動時,CPLD才控制DSP 二次復(fù)位;每次DSP開始加載之前,CPLD已加載復(fù)位完畢處于工作狀態(tài);
2)DSP每次啟動時,在一級加載期間,DSP會在規(guī)定的時間內(nèi)發(fā)出通知信號給CPLD,并給CPLD中指定地址的寄存器寫入預(yù)先約定好的值,該值是判斷DSP是否已經(jīng)啟動成功的標(biāo)
O3) CPLD每次上電復(fù)位后,都會把指定地址的寄存器清零,并在規(guī)定的時間內(nèi)判讀該寄存器的值是否已經(jīng)被DSP寫入規(guī)定好的值。若沒有檢測到通知信號則表明DSP啟動失敗,若檢測到則進(jìn)一步讀取指定地址的寄存器是否是預(yù)定值。若是預(yù)定值,則表明DSP啟動成功,否則失敗。4)CPLD 在發(fā)現(xiàn)DSP啟動失敗后,立即給DSP發(fā)出復(fù)位信號,中斷當(dāng)前加載進(jìn)程,使DSP開始重新開始啟動。
權(quán)利要求
1.一種利用CPLD控制DSP實現(xiàn)二次啟動的方法,其特征在于,該方法包括 1)把CPLD的某個通用IO腳,暫名為IOl;和DSP自身的復(fù)位信號相與后,接到DSP的復(fù)位管腳RST上; 2)把DSP的某個通用GPIO腳接到CPLD的某個通用IO腳上,暫名為102;把DSP的寫信號WR接到CPLD的某個通用IO腳上,暫名為103 ;把DSP的地址空間選擇信號CEx接到CPLD的某個通用IO腳上,暫名為104 ; 3)把DSP的外部數(shù)據(jù)總線DO到D31全部接到CPLD的IO管腳上, 和以上IO管腳不重復(fù); 4)把DSP的外部地址總線A17到A21全部接到CPLD的IO管腳上,和以上IO管腳不重復(fù); 5)可用VHDL或Verilog硬件描述語言編寫CPLD的代碼; 6)每次CPLD上電復(fù)位結(jié)束后,初始化啟動標(biāo)志寄存器的值,把IOl輸出高電平; 7)用匯編語言,在DSP的一級代碼增加使其GPIO輸出一個低脈沖信號,低脈沖持續(xù)時間可使CPLD充分識別即可;然后,給標(biāo)志寄存器中寫入特征值; 8)每次上電后,CPLD若在規(guī)定時間內(nèi)未捕獲到102管腳出現(xiàn)低脈沖信號,則把IOl輸出低電平,中斷當(dāng)前啟動,重新開始啟動;否則,讀取啟動標(biāo)志寄存器; 9)若啟動標(biāo)志寄存器的內(nèi)容等于特征值,則表明首次啟動成功;否則,把IOl輸出低電平,中斷當(dāng)前啟動,重新開始啟動。
2.根據(jù)權(quán)利要求1所述一種利用CPLD控制DSP實現(xiàn)二次啟動的方法,其特征在于所述DSP只要是二級啟動的處理器即可,具體為TI公司的TMS320C6713 ;所述CPLD具體為ALTERA 公司的 EPM1270。
全文摘要
一種利用CPLD控制DSP實現(xiàn)二次啟動的方法,本發(fā)明嵌入式系統(tǒng)中數(shù)字信號處理器DSP的程序全部存儲在片外程序存儲器中;每次上電DSP程序加載需要分為一級加載和二級加載兩個階段;一級加載是由DSP通過DMA或EDMA方式自動進(jìn)行,將位于片外程序存儲器開頭的一段代碼傳輸?shù)狡瑑?nèi)地址0x00處執(zhí)行,整個傳輸過程不受用戶控制;二級加載是在一級加載成功的基礎(chǔ)上進(jìn)行的,執(zhí)行一級加載的代碼把用戶的應(yīng)用程序由加載地址拷貝到運(yùn)行地址的過程。本發(fā)明具有二次啟動時間短、判斷方式可靠性高、代碼編寫容易、調(diào)試方便,可以很方便地用示波器在IO管腳上監(jiān)測到信號以及和DSP之間連線方便靈活,便于印制板布線的優(yōu)點。
文檔編號G06F13/20GK103064806SQ20121058901
公開日2013年4月24日 申請日期2012年12月31日 優(yōu)先權(quán)日2012年12月31日
發(fā)明者劉升, 何健 申請人:西安奇維科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1