專利名稱:應(yīng)用cpld的mpc8280最小系統(tǒng)及設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種MPC8280最小系統(tǒng)。
背景技術(shù):
隨著技術(shù)的發(fā)展,單板系統(tǒng)對(duì)處理器的性能要求越來越高,高端處理器集成了許多常用的外設(shè)模塊,在構(gòu)建單板系統(tǒng)時(shí)只需外擴(kuò)少量器件就可以實(shí)現(xiàn)功能,有利于降低系統(tǒng)的不穩(wěn)定性,在通信和高端嵌入式設(shè)備領(lǐng)域,高性能處理器PowerPC應(yīng)用廣泛。這里以 MPC8280最小系統(tǒng)為例進(jìn)行說明。MPC8280提供了許多功能接口,用戶在使用時(shí)需要根據(jù)系統(tǒng)需求進(jìn)行靈活選取,并正確配置相關(guān)寄存器和引腳狀態(tài)。如MPC8280的時(shí)鐘設(shè)計(jì),外圍總線頻率由系統(tǒng)輸入時(shí)鐘決定,通信處理器模塊CPM(Communications Processor Module)和內(nèi)核G2_LE頻率由7位時(shí)鐘配置位決定,其中4位為硬復(fù)位配置字的28-31位M0DCK_H,另3位為硬件配置引腳MODCK [1_3]?,F(xiàn)有設(shè)計(jì)中有的直接將硬件配置引腳固定連接相應(yīng)電平,獲得系統(tǒng)所需的CPM和內(nèi)核時(shí)鐘,但這種方法不能更改硬件配置引腳的狀態(tài)。也有設(shè)計(jì)采用選焊電阻的方式給硬件配置引腳提供相應(yīng)電平,相比上一種方法,有一定的靈活性,但每次改變時(shí)鐘都需要對(duì)貼片電阻進(jìn)行拆除和焊接,需要調(diào)試人員掌握基本的焊接技能,同時(shí),隨著拆焊次數(shù)的增多,將對(duì)PCB焊盤造成損傷,嚴(yán)重的會(huì)使焊盤脫落,導(dǎo)致硬件配置引腳不能獲得正常的電平,CPM和內(nèi)核也就得不到時(shí)鐘信號(hào),進(jìn)而整個(gè)單板系統(tǒng)將不能正常工作,損失巨大。又如為了增強(qiáng)PowerPC系統(tǒng)穩(wěn)定性而加入的看門狗設(shè)計(jì),已有許多方案,如授權(quán)公告號(hào)CN2519335Y的實(shí)用新型專利《一種看門狗的控制邏輯電路》、授權(quán)公告號(hào)CN2681231Y的實(shí)用新型專利《一種看門狗電路》都在PowerPC系統(tǒng)中使用了 CPLD,用以通過對(duì)PowerPC給出的喂狗信號(hào)進(jìn)行適當(dāng)處理,實(shí)現(xiàn)可變時(shí)間的看門狗設(shè)計(jì),但上述方法有一定的弊端。一方面,PowerPC內(nèi)部集成了軟件看門狗定時(shí)器,用戶只需簡(jiǎn)單配置寄存器就可以實(shí)現(xiàn)一定周期范圍內(nèi)的看門狗,而且可以在引導(dǎo)系統(tǒng)執(zhí)行完后,在應(yīng)用程序中使用一個(gè)任務(wù)進(jìn)行喂狗操作,還可避免由于引導(dǎo)程序執(zhí)行時(shí)間較長(zhǎng)需要延長(zhǎng)看門狗定時(shí)周期的問題;另一方面,CPLD的引入也沒有用于增加系統(tǒng)設(shè)計(jì)的靈活性,兩方面都存在資源利用不充分的情況。
發(fā)明內(nèi)容
本發(fā)明是為了解決現(xiàn)有應(yīng)用CPLD的PowerPC不能實(shí)現(xiàn)縮短看門狗定時(shí)周期以及不能提高系統(tǒng)的靈活性的問題,提供一種應(yīng)用CPLD的MPC8280最小系統(tǒng)及設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法。應(yīng)用CPLD 的 MPC8280 最小系統(tǒng),它包括 MPC8280、CPLD 和 TPS3110,MPC8280的地址總線信號(hào)輸入引腳60x_BA[31_27]與CPLD的地址總線信號(hào)輸入引腳 60x_BA [31-27]連接;
MPC8280 的數(shù)據(jù)總線 60x_BD
與 CPLD 的數(shù)據(jù)總線 60x_BD
連接;CPLD的電平信號(hào)輸出引腳MODCK [1-3]分別與MPC8280的時(shí)鐘硬件配置引腳MODCK [1-3]連接;CPLD的中斷信號(hào)輸出引腳IRQ1#/IRQ2#分別與MPC8280的中斷信號(hào)輸入引腳 IRQ1#/IRQ2# 連接;MPC8280的片選信號(hào)輸出端與CPLD的片選信號(hào)輸入端連接;MPC8280的硬復(fù)位信號(hào)引腳HRESET#的輸出端與CPLD的硬復(fù)位信號(hào)引腳HRESET#的輸入端連接;CPLD的軟復(fù)位信號(hào)引腳SRESET#的輸出端與MPC8280的軟復(fù)位信號(hào)引腳SRESET#的輸入端連接;CPLD的上電復(fù)位信號(hào)引腳P0RESET#的輸出端與MPC8280的上電復(fù)位信號(hào)引腳P0RESET#的輸入端連接;MPC8280的讀寫控制信號(hào)引腳BCTL0#與CPLD的讀寫控制信號(hào)引腳BCTL0#連接;MPC8280的使能控制信號(hào)引腳BCTL1#與CPLD的控制信號(hào)引腳BCTL1#連接;CPLD的喂狗信號(hào)引腳WDI的輸出端與TPS3110的喂狗信號(hào)引腳WDI的輸入端連接;TPS3110的系統(tǒng)程序異常復(fù)位信號(hào)引腳RESET#的輸出端與CPLD的系統(tǒng)程序異常復(fù)位信號(hào)引腳RESET#的輸入端連接;CPLD的復(fù)位信號(hào)引腳soft_reset#的輸出端與TPS3110的復(fù)位信號(hào)引腳soft_reset#的輸入端連接。基于上述應(yīng)用CPLD的MPC8280最小系統(tǒng)的設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法,所述實(shí)現(xiàn)狀態(tài)轉(zhuǎn)換方法的狀態(tài)機(jī)包括等待狀態(tài)、空閑狀態(tài)、第一字節(jié)狀態(tài)、第二字節(jié)狀態(tài)、第三字節(jié)狀態(tài)、無效地址狀態(tài)和第四字節(jié)狀態(tài),硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法的實(shí)現(xiàn)過程為等待狀態(tài),用于檢測(cè)硬復(fù)位信號(hào)HRESET#,當(dāng)檢測(cè)到硬復(fù)位信號(hào)HRESET#有效時(shí),跳轉(zhuǎn)至空閑狀態(tài),CPLD與MPC8280相連的數(shù)據(jù)總線60x_BD
為高阻態(tài);空閑狀態(tài),用于檢測(cè)片選信號(hào)CS0#和MPC8280地址信號(hào)addr,當(dāng)檢測(cè)到的片選信號(hào)CS0#有效、且地址信號(hào)addr為O時(shí),跳轉(zhuǎn)至第一字節(jié)狀態(tài);第一字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字首字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ h8時(shí),跳轉(zhuǎn)至無效地址狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’ h8時(shí),跳轉(zhuǎn)至第二字節(jié)狀態(tài);第二字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第二字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ hlO時(shí),跳轉(zhuǎn)至無效地址狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’ hlO時(shí),跳轉(zhuǎn)至第三字節(jié)狀態(tài);第三字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第三字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ hl8時(shí),跳轉(zhuǎn)至無效地址狀態(tài);否則,跳轉(zhuǎn)至第四字節(jié)狀態(tài);無效地址狀態(tài),CPLD數(shù)據(jù)總線60x_BD
為高阻狀態(tài),當(dāng)MPC8280地址信號(hào)addr等于5’h8時(shí),跳轉(zhuǎn)至第二字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’hlO時(shí),跳轉(zhuǎn)至第三字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’hl8時(shí),跳轉(zhuǎn)至第四字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr不等于5’ h8、5’ hlO和5’ hl8時(shí),狀態(tài)機(jī)保持無效地址狀態(tài);
第四字節(jié)狀態(tài),CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第四字節(jié),一次硬復(fù)位配置字設(shè)置完成,跳轉(zhuǎn)至等待狀態(tài)。本發(fā)明的優(yōu)點(diǎn)I)、通過CPLD輸出所需電平信號(hào),提供給MPC8280的時(shí)鐘硬件配置引腳M0DCK[l-3],同時(shí)結(jié)合硬復(fù)位配置字中對(duì)M0DCK_H的設(shè)置,可以更改CPM和內(nèi)核的運(yùn)行頻率;2)、將總線緩沖器的控制信號(hào)通過CPLD輸出給緩沖器,對(duì)于不了解板級(jí)支持包BSP(Board Support Package)的開發(fā)人員可以通過CPLD更改緩沖器控制信號(hào)的配置方式,以適應(yīng)不同類型的總線緩沖器;3)、將MPC8280的硬復(fù)位信號(hào)HRESET#輸入到CPLD,當(dāng)引導(dǎo)程序bootrom調(diào)試初期,可以選擇在HRESET#信號(hào)和裝載引導(dǎo)程序的Flash芯片所連接MPC8280片選信號(hào)有效時(shí),根據(jù)地址信號(hào),利用CPLD模擬出GPCM時(shí)序,將32位硬復(fù)位配置字信息通過60x總線配置給MPC8280,在引導(dǎo)程序功能調(diào)試基本完成后,可以在引導(dǎo)程序中輸出硬復(fù)位配置字信息;4)、MPC8280的片選信號(hào)中除CS2#是提供給CPLD使用外,CS0#、CS4#和CS5#都可以通過CPLD靈活選擇,提供給需要的外設(shè)。CPLD的兩個(gè)1/0 口分別接到MPC8280的IRQ1#和IRQ2#,為最小系統(tǒng)后續(xù)應(yīng)用預(yù)留兩個(gè)中斷功能引腳,CPLD可根據(jù)設(shè)置的內(nèi)部寄存器,自定義中斷條件,MPC8280通過60x總線對(duì)CPLD內(nèi)部寄存器進(jìn)行讀寫操作。預(yù)留了 24個(gè)通用1/0引腳給后續(xù)最小系統(tǒng)應(yīng)用時(shí)可能使用的其他外設(shè);5)、在保證系統(tǒng)穩(wěn)定性的看門狗設(shè)計(jì)上,本最小系統(tǒng)也是可以靈活配置的。首先可以使用MPC8280內(nèi)部集成的軟件看門狗定時(shí)器,在引導(dǎo)程序啟動(dòng)時(shí)禁止該寄存器,加載完操作系統(tǒng)后,開啟看門狗定時(shí)器,并生成一個(gè)任務(wù)負(fù)責(zé)進(jìn)行軟件看門狗定時(shí)器的喂狗操作。考慮到最小系統(tǒng)中加入CPLD后存在因?yàn)镃PLD跑飛導(dǎo)致系統(tǒng)失效的可能,所以使用CPLD —個(gè)1/0引腳輸出外擴(kuò)看門狗電壓監(jiān)測(cè)芯片TPS3110所需的喂狗信號(hào)。這樣,如果MPC8280或CPLD跑飛,系統(tǒng)都可以正常復(fù)位,并可以充分利用相關(guān)資源。當(dāng)然,也可以不使用軟件看門狗定時(shí)器,用戶可自定義某個(gè)CPLD內(nèi)部寄存器某位作為看門狗芯片喂狗信號(hào)標(biāo)志,CPLD輸出喂狗信號(hào)邏輯中加入對(duì)該標(biāo)志信號(hào)的判斷,可同時(shí)保證對(duì)MPC8280和CPLD的監(jiān)測(cè)。6)、通過只修改CPLD固件和硬復(fù)位配置字,不對(duì)硬件進(jìn)行更改,就能更改MPC8280內(nèi)核與CPM的運(yùn)行頻率,操作簡(jiǎn)單可靠;7)、在沒有購(gòu)買昂貴的仿真器時(shí)的引導(dǎo)程序前期調(diào)試中,使用CPLD對(duì)MPC8280的硬復(fù)位配置字進(jìn)行設(shè)置,使系統(tǒng)得到正常的時(shí)鐘信號(hào),這個(gè)方法可助于排除一部分硬件上的故障;8)、本最小系統(tǒng)設(shè)計(jì)中通過采用一片低成本的CPLD,充分考慮了系統(tǒng)的可配置性和后續(xù)應(yīng)用的可擴(kuò)展性,預(yù)留了較豐富的I/o和片選資源;9)、部分設(shè)計(jì)采用CPLD固件實(shí)現(xiàn),而不是使用芯片間直連的方式,一定程度上可以保護(hù)本系統(tǒng)的設(shè)計(jì)方案;10)、通過看門狗電路設(shè)計(jì),保證了加入CPLD不會(huì)影響系統(tǒng)的穩(wěn)定性。
圖I為本發(fā)明的應(yīng)用CPLD的MPC8280最小系統(tǒng)的結(jié)構(gòu)示意圖;圖2為CPLD設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換圖;圖3為本發(fā)明的應(yīng)用CPLD的MPC8280最小系統(tǒng)的復(fù)位電路硬件連接關(guān)系圖。
具體實(shí)施例方式具體實(shí)施方式
一下面結(jié)合圖I說明本實(shí)施方式,本實(shí)施方式所述的應(yīng)用CPLD的MPC8280最小系統(tǒng),它包括MPC8280、CPLD和TPS3110,MPC8280的地址總線信號(hào)輸入引腳60x_BA[31-27]與CPLD的地址總線信號(hào)輸入引腳60x_BA[31_27]連接;MPC8280 的數(shù)據(jù)總線 60x_BD
與 CPLD 的數(shù)據(jù)總線 60x_BD
連接; CPLD的電平信號(hào)輸出引腳MODCK [1-3]分別與MPC8280的時(shí)鐘硬件配置引腳MODCK [1-3]連接;CPLD的中斷信號(hào)輸出引腳IRQ1#/IRQ2#分別與MPC8280的中斷信號(hào)輸入引腳IRQ1#/IRQ2# 連接;MPC8280的片選信號(hào)輸出端與CPLD的片選信號(hào)輸入端連接;MPC8280的硬復(fù)位信號(hào)引腳HRESET#的輸出端與CPLD的硬復(fù)位信號(hào)引腳HRESET#的輸入端連接;CPLD的軟復(fù)位信號(hào)引腳SRESET#的輸出端與MPC8280的軟復(fù)位信號(hào)引腳SRESET#的輸入端連接;CPLD的上電復(fù)位信號(hào)引腳P0RESET#的輸出端與MPC8280的上電復(fù)位信號(hào)引腳P0RESET#的輸入端連接;MPC8280的讀寫控制信號(hào)引腳BCTL0#與CPLD的讀寫控制信號(hào)引腳BCTL0#連接;MPC8280的使能控制信號(hào)引腳BCTL1#與CPLD的控制信號(hào)引腳BCTL1#連接;CPLD的喂狗信號(hào)引腳WDI的輸出端與TPS3110的喂狗信號(hào)引腳WDI的輸入端連接;TPS3110的系統(tǒng)程序異常復(fù)位信號(hào)引腳RESET#的輸出端與CPLD的系統(tǒng)程序異常復(fù)位信號(hào)引腳RESET#的輸入端連接;CPLD的復(fù)位信號(hào)引腳soft_reset#的輸出端與TPS3110的復(fù)位信號(hào)引腳soft_reset#的輸入端連接。本實(shí)施方式中的74ALVC16245是總線收發(fā)器,CPLD直接掛載到MPC8280的60x總線,作為一級(jí)總線,為了系統(tǒng)穩(wěn)定,使用總線收發(fā)器對(duì)60x總線信號(hào)擴(kuò)展到二級(jí)總線,F(xiàn)lash芯片是掛載到二級(jí)總線上,DIR是74ALVC16245的輸入輸出方向控制信號(hào),高電平有效;0E#是74ALVC16245的輸出使能信號(hào),低電平有效。BCTL0#/BCTL1#是MPC8280對(duì)外部總線收發(fā)器控制信號(hào)的配置端,可在MPC8280的板級(jí)支持包BSP中進(jìn)行模式設(shè)置,目前使用配置方式為,BCTL0#用作外部總線收發(fā)器的W/R#控制信號(hào),即BCTL0#信號(hào)為低電平,作為讀控制信號(hào),高電平作為寫控制信號(hào)。BCTL1#用作外部總線收發(fā)器的0E#控制信號(hào),低電平有效。
具體實(shí)施方式
二 下面結(jié)合圖I說明本實(shí)施方式,本實(shí)施方式為對(duì)實(shí)施方式一的MPC8280的時(shí)鐘硬件配置引腳MODCK[I-3]的進(jìn)一步說明,本實(shí)施方式所述的MPC8280的時(shí)鐘硬件配置引腳M0DCK[l-3]的狀態(tài)是通過下述方法設(shè)置的對(duì)于不需要?jiǎng)討B(tài)改變MPC8280內(nèi)核與CPM工作時(shí)鐘的應(yīng)用,在邏輯設(shè)計(jì)時(shí)采用初始化的方式設(shè)置輸出到M0DCK[l-3]引腳的狀態(tài);
對(duì)于不需要?jiǎng)討B(tài)改變MPC8280內(nèi)核但是需要改變CPM工作時(shí)鐘的應(yīng)用,在邏輯設(shè)計(jì)時(shí)重新設(shè)置初始值,編程到CPLD中;對(duì)于需要?jiǎng)討B(tài)改變MPC8280內(nèi)核與CPM工作時(shí)鐘但重新編程CPLD的應(yīng)用,自定義CPLD的內(nèi)部寄存器中3位對(duì)應(yīng)MODCK [ 1_3],通過寫入數(shù)據(jù)到該寄存器,改變其輸出到MPC8280時(shí)鐘硬件配置引腳的狀態(tài)值。
具體實(shí)施方式
三下面結(jié)合圖I說明本實(shí)施方式,下面結(jié)合圖I說明本實(shí)施方式,本實(shí)施方式為對(duì)實(shí)施方式一的MPC8280對(duì)CPLD內(nèi)部寄存器的讀寫操作的進(jìn)一步說明,本實(shí)施方式所述MPC8280對(duì)CPLD內(nèi)部寄存器的讀寫操作的實(shí)現(xiàn)方法為寫寄存器,是在CPLD片選信號(hào)CS2#和寫使能信號(hào)有效時(shí),將數(shù)據(jù)線上的值存放到地址總線指定地址的寄存器中;讀寄存器,是在CPLD片選信號(hào)和讀使能信號(hào)有效時(shí),將地
址總線指定地址的寄存器中的值讀入到數(shù)據(jù)線上。
具體實(shí)施方式
四下面結(jié)合圖I說明本實(shí)施方式,本實(shí)施方式為對(duì)實(shí)施方式一的進(jìn)一步說明,本實(shí)施方式所述的看門狗芯片的喂狗操作的實(shí)現(xiàn)方法為看門狗芯片的喂狗信號(hào)輸入端WDI在時(shí)間內(nèi)沒有變化的電平輸入,系統(tǒng)跑飛,進(jìn)行看門狗復(fù)位操作,本實(shí)施方式所述的Iut的范圍為O. 55 I. 65s, tout的典型值為I. Is ;CPLD的I/O引腳輸出的喂狗信號(hào)應(yīng)滿足周期大于I. 82Hz。
具體實(shí)施方式
五下面結(jié)合圖I和圖3說明本實(shí)施方式,本實(shí)施方式為對(duì)實(shí)施方式一的進(jìn)一步說明,本實(shí)施方式所述的應(yīng)用CPLD的MPC8280最小系統(tǒng),它還包括存儲(chǔ)器和連接器;CPLD的Flash復(fù)位引腳Pinl2的輸出端與存儲(chǔ)器的復(fù)位引腳RST#的輸入端連接;連接器的硬復(fù)位信號(hào)引腳Pinl3輸出端的一端連接CPLD硬復(fù)位信號(hào)引腳Pin40的輸入端;連接器的硬復(fù)位信號(hào)引腳Pinl3輸出端的另一端連接MPC8280硬復(fù)位信號(hào)引腳HRESET#的輸入端;連接器的軟復(fù)位信號(hào)引腳Pinll輸出端的一端連接CPLD軟復(fù)位信號(hào)引腳Pin41的輸入端;連接器的軟復(fù)位信號(hào)引腳Pinll輸出端的另一端連接MPC8280軟復(fù)位信號(hào)引腳SRESET#的輸入端。本實(shí)施方式中的CPLD中還設(shè)置有board_reset#復(fù)位信號(hào),該復(fù)位信號(hào)是應(yīng)用CPLD的MPC8280最小系統(tǒng)按鍵復(fù)位信號(hào),實(shí)現(xiàn)手動(dòng)復(fù)位功能,低電平有效,該信號(hào)有效后CPLD 輸出 soft_reset#、f lash_reset#、poreset# 復(fù)位信號(hào)。
具體實(shí)施方式
六下面結(jié)合圖I和圖3說明本實(shí)施方式,本實(shí)施方式為對(duì)實(shí)施方式五中的存儲(chǔ)器和連接器的進(jìn)一步說明,本實(shí)施方式所述的存儲(chǔ)器是采用PC28R)0AM29實(shí)現(xiàn)的,連接器是采用JTAG16實(shí)現(xiàn)的。
具體實(shí)施方式
七下面結(jié)合圖2說明本實(shí)施方式,本實(shí)施方式是基于實(shí)施方式一所述的應(yīng)用CPLD的MPC8280最小系統(tǒng)的設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法,本實(shí)施方式所述的實(shí)現(xiàn)狀態(tài)轉(zhuǎn)換方法的狀態(tài)機(jī)包括等待狀態(tài)、空閑狀態(tài)、第一字節(jié)狀態(tài)、第二字節(jié)狀態(tài)、第三字節(jié)狀態(tài)、無效地址狀態(tài)和第四字節(jié)狀態(tài),硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法的實(shí)現(xiàn)過程為等待狀態(tài),用于檢測(cè)硬復(fù)位信號(hào)HRESET#,當(dāng)檢測(cè)到硬復(fù)位信號(hào)HRESET#有效時(shí),跳轉(zhuǎn)至空閑狀態(tài),CPLD與MPC8280相連的數(shù)據(jù)總線60x_BD
為高阻態(tài);空閑狀態(tài),用于檢測(cè)片選信號(hào)CS0#和MPC8280地址信號(hào)addr,當(dāng)檢測(cè)到的片選信號(hào)CS0#有效、且地址信號(hào)addr為O時(shí),跳轉(zhuǎn)至第一字節(jié)狀態(tài);
第一字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字首字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ h8時(shí),跳轉(zhuǎn)至無效地址狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’ h8時(shí),跳轉(zhuǎn)至第二字節(jié)狀態(tài);第二字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第二字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ hlO時(shí),跳轉(zhuǎn)至無效地址狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’ hlO時(shí),跳轉(zhuǎn)至第三字節(jié)狀態(tài);第三字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第三字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ hl8時(shí),跳轉(zhuǎn)至無效地址狀態(tài);否則,跳轉(zhuǎn)至第四字節(jié)狀態(tài);無效地址狀態(tài),CPLD數(shù)據(jù)總線60x_BD
為高阻狀態(tài),當(dāng)MPC8280地址信號(hào) addr等于5’h8時(shí),跳轉(zhuǎn)至第二字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’hlO時(shí),跳轉(zhuǎn)至第三字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’hl8時(shí),跳轉(zhuǎn)至第四字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr不等于5’ h8、5’ hlO和5’ hl8時(shí),狀態(tài)機(jī)保持無效地址狀態(tài);第四字節(jié)狀態(tài),CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第四字節(jié),一次硬復(fù)位配置字設(shè)置完成,跳轉(zhuǎn)至等待狀態(tài)。本發(fā)明不局限于上述實(shí)施方式,還可以是上述各實(shí)施方式中所述技術(shù)特征的合理組合。
權(quán)利要求
1.應(yīng)用CPLD的MPC8280最小系統(tǒng),它包括MPC8280、CPLD和TPS3110,其特征是 MPC8280的地址總線信號(hào)輸入引腳60x_BA[31-27]與CPLD的地址總線信號(hào)輸入引腳60x_BA [31-27]連接; MPC8280的數(shù)據(jù)總線60x_BD
與CPLD的數(shù)據(jù)總線60x_BD
連接; CPLD的電平信號(hào)輸出引腳MODCK [1-3]分別與MPC8280的時(shí)鐘硬件配置引腳MODCK [1-3]連接; CPLD的中斷信號(hào)輸出引腳IRQ1#/IRQ2#分別與MPC8280的中斷信號(hào)輸入引腳IRQ1#/IRQ2#連接; MPC8280的片選信號(hào)輸出端與CPLD的片選信號(hào)輸入端連接; MPC8280的硬復(fù)位信號(hào)引腳HRESET#的輸出端與CPLD的硬復(fù)位信號(hào)引腳HRESET#的輸入端連接; CPLD的軟復(fù)位信號(hào)引腳SRESET#的輸出端與MPC8280的軟復(fù)位信號(hào)引腳SRESET#的輸入端連接; CPLD的上電復(fù)位信號(hào)引腳P0RESET#的輸出端與MPC8280的上電復(fù)位信號(hào)引腳P0RESET#的輸入端連接; MPC8280的讀寫控制信號(hào)引腳BCTL0#與CPLD的讀寫控制信號(hào)引腳BCTL0#連接;MPC8280的使能控制信號(hào)引腳BCTL1#與CPLD的控制信號(hào)引腳BCTL1#連接; CPLD的喂狗信號(hào)引腳WDI的輸出端與TPS3110的喂狗信號(hào)引腳WDI的輸入端連接;TPS3110的系統(tǒng)程序異常復(fù)位信號(hào)引腳RESET#的輸出端與CPLD的系統(tǒng)程序異常復(fù)位信號(hào)引腳RESET#的輸入端連接;CPLD的復(fù)位信號(hào)引腳soft_reset#的輸出端與TPS3110的復(fù)位信號(hào)引腳soft_reset#的輸入端連接。
2.根據(jù)權(quán)利要求I所述的應(yīng)用CPLD的MPC8280最小系統(tǒng),其特征是MPC8280的時(shí)鐘硬件配置引腳M0DCK[l-3]的狀態(tài)是通過下述方法設(shè)置的 對(duì)于不需要?jiǎng)討B(tài)改變MPC8280內(nèi)核與CPM工作時(shí)鐘的應(yīng)用,在邏輯設(shè)計(jì)時(shí)采用初始化的方式設(shè)置輸出到M0DCK[l-3]引腳的狀態(tài); 對(duì)于不需要?jiǎng)討B(tài)改變MPC8280內(nèi)核但是需要改變CPM工作時(shí)鐘的應(yīng)用,在邏輯設(shè)計(jì)時(shí)重新設(shè)置初始值,編程到CPLD中; 對(duì)于需要?jiǎng)討B(tài)改變MPC8280內(nèi)核與CPM工作時(shí)鐘但重新編程CPLD的應(yīng)用,自定義CPLD的內(nèi)部寄存器中3位對(duì)應(yīng)MODCK [1-3],通過寫入數(shù)據(jù)到該寄存器,改變其輸出到MPC8280時(shí)鐘硬件配置引腳的狀態(tài)值。
3.根據(jù)權(quán)利要求I所述的應(yīng)用CPLD的MPC8280最小系統(tǒng),其特征是MPC8280對(duì)CPLD內(nèi)部寄存器的讀寫操作的實(shí)現(xiàn)方法為 寫寄存器,是在CPLD片選信號(hào)CS2#和寫使能信號(hào)有效時(shí),將數(shù)據(jù)線上的值存放到地址總線指定地址的寄存器中;讀寄存器,是在CPLD片選信號(hào)和讀使能信號(hào)有效時(shí),將地址總線指定地址的寄存器中的值讀入到數(shù)據(jù)線上。
4.根據(jù)權(quán)利要求I所述的應(yīng)用CPLD的MPC8280最小系統(tǒng),其特征是看門狗芯片的喂狗操作的實(shí)現(xiàn)方法為 看門狗芯片的喂狗信號(hào)輸入端WDI在tout時(shí)間內(nèi)沒有變化的電平輸入,系統(tǒng)跑飛,進(jìn)行看門狗復(fù)位操作。
5.根據(jù)權(quán)利要求I所述的應(yīng)用CPLD的MPC8280最小系統(tǒng),其特征是它還包括存儲(chǔ)器和連接器; CPLD的Flash復(fù)位引腳Pinl2的輸出端與存儲(chǔ)器的復(fù)位引腳RST#的輸入端連接;連接器的硬復(fù)位信號(hào)引腳Pinl3輸出端的一端連接CPLD硬復(fù)位信號(hào)引腳Pin40的輸入端; 連接器的硬復(fù)位信號(hào)引腳Pinl3輸出端的另一端連接MPC8280硬復(fù)位信號(hào)引腳HRESET#的輸入端; 連接器的軟復(fù)位信號(hào)引腳Pinll輸出端的一端連接CPLD軟復(fù)位信號(hào)引腳Pin41的輸入端; 連接器的軟復(fù)位信號(hào)引腳Pinll輸出端的另一端連接MPC8280軟復(fù)位信號(hào)引腳SRESET#的輸入端。
6.根據(jù)權(quán)利要求5所述的應(yīng)用CPLD的MPC8280最小系統(tǒng),其特征是存儲(chǔ)器是采用PC28F00AM29實(shí)現(xiàn)的,連接器是采用JTA616實(shí)現(xiàn)的。
7.基于權(quán)利要求I所述的應(yīng)用CPLD的MPC8280最小系統(tǒng)的設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法,其特征是所述實(shí)現(xiàn)狀態(tài)轉(zhuǎn)換方法采用狀態(tài)機(jī)實(shí)現(xiàn),所述的狀態(tài)機(jī)包括等待狀態(tài)、空閑狀態(tài)、第一字節(jié)狀態(tài)、第二字節(jié)狀態(tài)、第三字節(jié)狀態(tài)、無效地址狀態(tài)和第四字節(jié)狀態(tài),硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法的實(shí)現(xiàn)過程為 等待狀態(tài),用于檢測(cè)硬復(fù)位信號(hào)HRESET#,當(dāng)檢測(cè)到硬復(fù)位信號(hào)HRESET#有效時(shí),跳轉(zhuǎn)至空閑狀態(tài),CPLD與MPC8280相連的數(shù)據(jù)總線60x_BD
為高阻態(tài); 空閑狀態(tài),用于檢測(cè)片選信號(hào)CSO#和MPC8280地址信號(hào)addr,當(dāng)檢測(cè)到的片選信號(hào)CSO#有效、且地址信號(hào)addr為O時(shí),跳轉(zhuǎn)至第一字節(jié)狀態(tài); 第一字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字首字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’h8時(shí),跳轉(zhuǎn)至無效地址狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’h8時(shí),跳轉(zhuǎn)至第二字節(jié)狀態(tài); 第二字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第二字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ hlO時(shí),跳轉(zhuǎn)至無效地址狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’ hlO時(shí),跳轉(zhuǎn)至第三字節(jié)狀態(tài); 第三字節(jié)狀態(tài),向CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第三字節(jié),當(dāng)MPC8280地址信號(hào)addr不等于5’ hl8時(shí),跳轉(zhuǎn)至無效地址狀態(tài);否則,跳轉(zhuǎn)至第四字節(jié)狀態(tài); 無效地址狀態(tài),CPLD數(shù)據(jù)總線60x_BD
為高阻狀態(tài),當(dāng)MPC8280地址信號(hào)addr等于5’h8時(shí),跳轉(zhuǎn)至第二字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’hlO時(shí),跳轉(zhuǎn)至第三字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr等于5’ hl8時(shí),跳轉(zhuǎn)至第四字節(jié)狀態(tài);當(dāng)MPC8280地址信號(hào)addr不等于5’ h8、5’ hlO和5’ hl8時(shí),狀態(tài)機(jī)保持無效地址狀態(tài); 第四字節(jié)狀態(tài),CPLD數(shù)據(jù)總線60x_BD
輸出硬復(fù)位配置字第四字節(jié),一次硬復(fù)位配置字設(shè)置完成,跳轉(zhuǎn)至等待狀態(tài)。
全文摘要
應(yīng)用CPLD的MPC8280最小系統(tǒng)及設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法,涉及一種MPC8280最小系統(tǒng)。本發(fā)明是為了解決現(xiàn)有應(yīng)用CPLD的PowerPC未能實(shí)現(xiàn)縮短看門狗定時(shí)周期以及未能提高系統(tǒng)的靈活性的問題。應(yīng)用CPLD的MPC8280最小系統(tǒng)包括MPC8280、CPLD和TPS3110;基于上述應(yīng)用CPLD的MPC8280最小系統(tǒng)的設(shè)置硬復(fù)位配置字的狀態(tài)轉(zhuǎn)換方法,所述實(shí)現(xiàn)狀態(tài)轉(zhuǎn)換方法的狀態(tài)機(jī)包括等待狀態(tài)、空閑狀態(tài)、第一字節(jié)狀態(tài)、第二字節(jié)狀態(tài)、第三字節(jié)狀態(tài)、無效地址狀態(tài)和第四字節(jié)狀態(tài),通過上述狀態(tài)之間的有條件跳轉(zhuǎn)進(jìn)而實(shí)現(xiàn)硬復(fù)位配置字的設(shè)置。本發(fā)明的最小系統(tǒng)和狀態(tài)轉(zhuǎn)換方法適用于單板系統(tǒng)上。
文檔編號(hào)G06F1/24GK102854962SQ201210301370
公開日2013年1月2日 申請(qǐng)日期2012年8月23日 優(yōu)先權(quán)日2012年8月23日
發(fā)明者劉大同, 彭宇, 劉連勝, 見其拓, 劉川 申請(qǐng)人:哈爾濱工業(yè)大學(xué)