高性能FLASH存儲器在DSP電機智能保護中的應用_第1頁
高性能FLASH存儲器在DSP電機智能保護中的應用_第2頁
高性能FLASH存儲器在DSP電機智能保護中的應用_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、    摘要:DSP芯片以其高速、實時性等優(yōu)點逐步被用到電機保護中,利用高性能外圍器件尤其是外圍存儲器與DSP的硬件匹配是充分發(fā)揮其優(yōu)點的必要條件。文中以基于TMS320C32高速CPU為核心芯片的智能型電機保護裝置為模型,介紹了高性能FLASH芯片Am29F010B與DSP芯片的硬件接口電路、軟件編程技術以及應注意的問題和設計技巧。 關鍵詞:Flash存儲器 DSP 嵌入式算法 Am29F010B國內(nèi)的電動機保護裝置種類繁多,但隨著現(xiàn)代大中型電動機對保護要求的不斷提高和VLSI技術的不斷進步,傳統(tǒng)的基于熱敏電阻、機械式繼電器和電子式等保護模式均因可靠性

2、不高,容易出現(xiàn)誤操作等缺點已不能滿足需要;而以單片機為核心的數(shù)字或保護裝置的運算速度不高、資源有限、數(shù)據(jù)處理能力和可擴展性不好等問題日益突出。新的相關理論和技術(如小波變換、自適應保護、故障診斷、模糊整定等)的出現(xiàn)加速了高性能和綜合型微機保護的發(fā)展,但這不僅要求更高性能的CPU(如近年飛速發(fā)展的系列DSP芯片)的支持,而且還要有與之相適應的外圍存儲器的支持。鑒于此,筆者在開發(fā)基于DSP的大中型智能電動機保護裝置(系統(tǒng)結構功能如圖1)時,在外擴存儲器方面采用了AMD公司生產(chǎn)的Flash芯片Am29F010B。該Flash memory因容量大、體積小、功耗低、成本低等優(yōu)點而被廣泛應用于消費類電子

3、、軍事、航空航天等領域。它可以在線更新,并具有較高的靈活性,因而可與高性能CPU芯片TMS320C32達到良好的配合,從而可顯著提高系統(tǒng)性能和可靠性。1 硬件設計1.1 TMS320C32芯片的特點美國TI公司生產(chǎn)的TMS320系列DSP芯片以其改進的哈佛總線結構、獨立的指令系統(tǒng)、專用硬件乘法器、多種尋址方式等優(yōu)點以及高速數(shù)據(jù)處理能力廣泛應用在通訊、雷達、工業(yè)控制等領域。TMS320C32是TI的第一代浮點DSP芯片TMS320C3X系列中的一款高性能浮點芯片,是對TMS320C30、TMS320C31中的不常用資源進行簡化、并對其性能進一步改進后的高性價比處理器。它具有增強的外部存儲器接口,

4、可以靈活方便地存取8/16/24/32位數(shù)據(jù)。它支持16/32位外部程序,從而為其外圍接口電路設計提供了很大的靈活性;其硬件上增加的一個非常有用的程序引導(Bootloader)功能使其程序可以從低速EPROM、PROM或串口裝入到系統(tǒng)的高速RAM中全速運行;它所配備的C編譯器具有很高的效率,可直接用匯編語言或兩者相結合使用,因而靈活性和實時性都很強;由于中斷矢量表可重設位,因此,將其應用到電動機保護中可以大大提高整個保護裝置的各項性能。1.2 Flash Memory芯片Am29F010BAm29F010B是AMD公司生產(chǎn)的多功能閃爍內(nèi)存,它的主要技術特點如下:*可單電壓(5V)進行讀、寫操

5、作;*高性能,最大存取時間為45ns;*可靠性極高,可重復編程不小于10萬次,數(shù)據(jù)保持大于100年;*低功耗(讀操作,寫/擦除操作以及空閑狀態(tài)的電流典型值分別為12mA、30mA和1sA);*具有扇區(qū)擦除能力,對于所分成的8個完全一樣的分扇區(qū),既可以塊擦除,也可以整個芯片一起擦除;*嵌入式擦除算法可自動地預編程和擦除芯片,它可以將設好的扇區(qū)用嵌入式編程算法自動地編程以把數(shù)據(jù)寫到特定的地址;*帶有JEDEC標準的Flash EEPROM管腳輸出和命令集;*具有編程周期結束檢測功能,可縮短等待時間;Am29F010B存儲器采用PDIP,PLCC,TSOP封裝,圖2給出了Am29F010B的PDIP

6、封裝引腳圖,各引腳的功能如下:DQ7DQ0:雙向數(shù)據(jù)線,可用于輸出數(shù)據(jù)或寫入命令和數(shù)據(jù)。A0A16:地址線,其中A16A14為扇區(qū)地址,可用000111代表8個扇區(qū),A13A0為扇區(qū)內(nèi)的字節(jié)地址。CE:片選線,低電平有效,高電平時芯片處于空閑狀態(tài);OE,WE:分別為讀、寫控制線。圖3給出了對FLASH編程時,CE、OE和WE的狀態(tài)時序。其中,PD為編程數(shù)據(jù),tch為CE持續(xù)時間,tcs為CE建立時間,tDS為數(shù)據(jù)建立時間,tDH為數(shù)據(jù)維持時間,twp為寫脈沖寬度。1.3 Am29F010B與TMS320C32的硬件接口Am29F010B與TMS320C32的硬件接口電路原理圖如圖4所示。圖中,

7、Am29F010B的17根地址線A0A16分別與TMS320C32的A0A16相連。每片Am29F010B的容量為128k×8B。在本開發(fā)系統(tǒng)中,數(shù)據(jù)采用的是32位浮點數(shù),連接方法是將四片8位數(shù)據(jù)寬的Am29F010B一起與TMS320C32連接,即將四片Am29F010B的D0D7依次與TMS320C32的D0D7、D8D15、D16D23及D24D31連接,總容量為128k×32B。TMS320C32的外擴存儲器的尋址空間范圍由三組相互獨立的控制信號STRB0、STRB1和IOSTRB來控制,可用于對相互獨立的存取空間進行操作而不會出現(xiàn)端口沖突。所不同的是,IOSTRB

8、只能用32位寬的程序或數(shù)據(jù)存儲器進行存操作;STRB0和STRB1由各自的四個控制引腳來實現(xiàn),可以用8/16/32位寬的存儲器存取8/16/32位數(shù)據(jù),還可以用16或32位寬的程序存儲器進行存取操作,因而比較靈活。圖4的設計中使用的是STRB0,F(xiàn)lash所占的128k×32B存取空間的地址范圍為000000H01FFFFH,外圍程序存儲器配置為32位,可由PRGW置低電平來實現(xiàn)。此時各片的片選信號CE分別由STRB0-B0、STRB0-B1、STRB0-B2、STRB0-B3控制。上電復位后,外部總線接口控制寄存器STRB0可根據(jù)PRGW引腳電平的高低來決定存儲器的寬度控制位和數(shù)據(jù)

9、位數(shù)控制位的復位值。2 Am29F010B的在系統(tǒng)編程技術2.1 Am29F010B的基本編程操作對FLASH的基本操作主要有讀、字節(jié)編程、復位、扇區(qū)擦除、片擦除等。Am29F010B閃爍存儲器的讀操作與普通的存儲器操作相同,它不需要特定的時序,在電路上電或內(nèi)部編程等操作后可自動進入讀數(shù)據(jù)狀態(tài)。而擦除和寫操作相對復雜一些,它不能簡單的直接寫入,同時,out文件不能load到FLASH中,且CCS和CSource Debugger中的load命令均不能對flash寫入,而需要專門的程序才能寫入一系列Flash Memory的命令寄存器中,然后調(diào)用嵌入式算法的內(nèi)部程序來完成相應的命令。Am29F0

10、10B編程的一般步驟是復位、擦除、字節(jié)編程等。(1)復位操作復位命令用以取消擦除或寫入操作而使存儲器復位。復位操作不影響各單元的數(shù)據(jù)。在編程、擦除或正常操作出現(xiàn)錯誤時都要使用復位命令。向FLASH存儲器的任意一個地址寫入0F0H均可使其復位并進入讀數(shù)據(jù)狀態(tài)。(2)擦除操作擦除操作的具體軟件命令序列如表1所列。該操作包括按扇區(qū)擦除和整片擦除兩種方式。二者均為6總線周期操作。使用片擦除操作則可一次清除FLASH芯片內(nèi)的所有數(shù)據(jù)。扇區(qū)擦除操作則用于清除某一個扇區(qū)的所有數(shù)據(jù),這在僅需要改動少量數(shù)據(jù)而不是整片數(shù)據(jù)時特別方便。(3)字節(jié)編程操作該操作是一個4總線周期指令,可將任意數(shù)據(jù)寫入Am29F010B

11、獨立使用的編程,只能寫入8位寬的數(shù)據(jù),而本開發(fā)系統(tǒng)每次可寫入32位寬數(shù)據(jù)。具體軟件命令序列如表1所列。 2.2 Am29F010B的編程注意事項及操作技巧在對Am29F010B進行編程操作時,三條關鍵控制檢測線OE、CE和WE都必須處于正確狀態(tài),當CE或WE不是低電平或OE不是高電平時,編程操作將被禁止。由于在32位浮點芯片TMS320C32進行硬件連接時,采用的是4片數(shù)據(jù)寬度為8位的Flash來作為一片數(shù)據(jù)寬度為32位的Flash使用,所以在實際的總線操作過程中,向對應地址寫入的數(shù)據(jù)應為8位16進制數(shù)據(jù)。例如芯片復位操作時,寫入某一地址的數(shù)據(jù)應該是0xF0F0F0,而不應是單片時寫入的0xF

12、0。其軟件命令序列可同時參見表1。表1 Am29F010B編程命令序列表命令序列Flash復位扇區(qū)擦除整片擦除Flash燒錄總線寫周期1地址5555H5555H5555H5555H數(shù)據(jù)0AAAAAAAAH0AAAAAAAAH0AAAAAAAAH0AAAAAAAAH總線寫周期2地址2AAAH2AAAH2AAAH2AAAH數(shù)據(jù)55555555H55555555H55555555H55555555H總線寫周期3地址xxxx5555H5555H5555H數(shù)據(jù)0F0F0F0F0H80808080H80808080H0A0A0A0A0H總線寫周期4地址5555H5555H數(shù)據(jù)0AAAAAAAAH0AAAA

13、AAAAH總線寫周期5地址2AAAH2AAAH數(shù)據(jù)55555555H55555555H總線官周期6地址SA5555H數(shù)據(jù)30303030H10101010H在Am29F010B擦除及編程操作中使用檢測機制可確保操作的正確性和有效性。其核心代碼如下:flash_rase:check_rase:LDI *AR0,R0NOPNOPXOR *AR2,R0BNZ check_raseRETSflash_prog:check_prog:LDI * -AR1,R0NOPNOPXOR *-AR1,R0BNZ check_progRETS在將數(shù)據(jù)或程序燒寫到Am29F010B時,應先單步執(zhí)行燒寫程序,同時應觀察燒寫程序執(zhí)行過程中有無異常。筆者曾遇到過的FLASH的操作指令代碼執(zhí)行后變成.word XXH的情形,后來經(jīng)檢查發(fā)現(xiàn)是由于芯片Am29F010B的地址線引腳再現(xiàn)虛焊所致;另一方面,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論