The analysis of burning program ontoFlashmemory inDSPTMS320F206
摘 要:本文以TI公司提供的PGMR20PP.ZIP燒錄程序壓縮包為例,詳細介紹了此壓縮包的文件構成、程序燒錄的步驟、注意事項和錯誤信息及相應的解決辦法。
關鍵詞:微處理器;FLASH;燒錄 1. 引言
---TMS320F206是TI公司生產的高性能定點DSP芯片,其片內具有32KB的閃爍存儲器(FLASH),利用閃爍存儲器存儲程序,不僅降低了成本,減小了體積,同時系統(tǒng)升級也很方便。當用戶程序調試完成后,如何將程序燒錄進FLASH以保證程序能夠獨立運行,本文就此問題進行了詳細的分析。
---TI公司提供了PGMR20.ZIP和PGMR20PP.ZIP兩個壓縮包供不同用戶燒錄FLASH用,PGMR20.ZIP適用于采用ISA總線的XDS510型仿真器,PGMR20PP.ZIP適用于并口XDS510PP型仿真器,以后者為例,XDS510PP仿真器一端通過EPP并口與PC主機相聯(lián),另一端通過符合IEEE標準1149.1的JTAG口與DSP相連,其接線如圖1所示。
---對FLASH的燒錄必須按照“清零”--讓所有位為零、“置1”--讓所有位為1、“編程”--使選擇位為0這樣三步來進行,PGMR20PP.ZIP壓縮包提供了兩種方法即B0法和SARAM法來實現(xiàn)這樣操作。
2. B0法
---所謂“B0法”是指利用DSP內的B0 RAM空間作為燒錄程序的空間,利用B0法燒錄時,清零、置1、編程的操作只能分別單獨執(zhí)行,這雖然影響效率,但對于調試和診斷確是非常有利的,實現(xiàn)B0法的批處理文件如下:
---①BTEST.BAT--測試程序;用于檢測JTAG口與目標板的連接是否完好,在對FLASH燒錄之前都要實施這一檢測,若出錯,則任何對FLASH的操作都將不能正確執(zhí)行。
---②BC0.BAT--對FLASH 0清零的算法;BC1.BAT--對FLASH 1清零的算法。
---③BE0.BAT--對FLASH 0的置1算法;BE1.BAT--對FLASH 1的置1算法。
---④BP32K.BAT--例程。
---⑤BFLW0.BAT--對FLASH 0的編程算法;BFLW1.BAT--對FLASH 1的編程算法。
3. SARAM法
---所謂“SARAM法”是指利用DSP內的SARAM空間作為燒錄程序的空間,它不再局限于B0法的單獨執(zhí)行,而是可以綜合執(zhí)行清零、置1、編程的操作,提高了效率。但是對于TMS320F240這種沒有SARAM存儲空間的DSP芯片就不能用此法,而只能用B0法。實現(xiàn)SARAM法的批處理文件如下:
---①STEST.BAT--測試程序,作用同B0法。
---②SCE0.BAT--對FLASH 0進行清零和置1的算法;SCE1.BAT--對FLASH 1進行清零和置1的算法;SARAM法允許在一個批處理文件中完成清零和置1的綜合操作,但如果清零失敗,將不會繼續(xù)置1的操作而是會中止。
---③SP32K.BAT--例程。
---④SCEP0.BAT--對FLASH 0進行清零、置1并編程的算法; SCEP1.BAT--對FLASH 1進行清零、置1并編程的算法;同理,若清零、置1不能順利完成,則不會進行編程操作而是會中止。
4.個性化的燒錄法
---盡管有了B0法和SARAM法,但實際情況是多變的,而每個人的要求也是不同的,為此介紹一種個性化的燒錄方法,其基本格式是:PRG2XXPP -[OPTIONS] C2XX_SPX.OUT NAME.OUT
----[OPTIONS]項的說明如表1所示。
---在表1中 -s 設定一個16進制數(shù)初始化變量PRG_option ,PRG_option說明見表2。