TMS320VC54系列EPROM加載方法研究及實現(xiàn)
出處:國外電子元器件 發(fā)布于:2011-06-04 18:19:41
DSP芯片(數(shù)字信號處理器)已成為人們?nèi)找骊P注并得到迅速發(fā)展的具有前沿技術的一種集成電路,并且得到越來越廣泛的應用。TI公司推出的5000系列DSP具有高性能、低功耗等優(yōu)良性能,一推出就受到了用戶的歡迎。正由于其快速的數(shù)字信號處理能力,5000系列DSP被廣泛應用于電信、雷達、儀器儀表、圖像處理等許多方面,與單片機一起完成數(shù)字信號的處理和控制。其應用范圍的廣泛性決定了必須有靈活多樣的加載方式與之相適應。正因為如此,它的加載方式也較單片機的加載要復雜得多。本文立足實際經(jīng)驗,對DSP的各種加載方法進行了闡述,并較為詳細地介紹了EPROM并行加載方法,研究了在線燒寫應用程序的方法以及應用中的注意事項。
1 DSP的各種加載方式
在TMS320VC5402的片內(nèi)ROM區(qū)(F800h~FBFFh)是片內(nèi)自引導程序區(qū),片內(nèi)自引導就是利用片內(nèi)ROM中的引導程序將程序從外部(FLASH)加載到程序存儲器中運行,TMS320VC5402片內(nèi)掩模ROM中固化的引導裝載(Bootloader)程序用于在上電復位時把用戶程序從外部引導到片內(nèi)RAM或片外高速RAM中,以保證其全速運行。TMS320VC5402提供的片內(nèi)引導方法有:主機口HPI模式、8位串口EEPROM模式、8位或16位并口模式、8位或16位I/O模式和8位或16位串口模式等。
C5000系列可提供的加載方式有以下幾種:
?。?) 主機端口(HPI)加載:程序的執(zhí)行代碼由主機通過主機接口(HPI)加載到DSP的片內(nèi)存儲器;
?。?) 并行加載:加載程序通過外部并行總線從數(shù)據(jù)空間讀取自舉表,自舉表內(nèi)包含有程序代碼部分、每部分代碼的目的地址、加載成功后程序的執(zhí)行地址以及其它一些配置信息;
?。?) 標準串口加載:加載程序通過多通道緩沖串口(MBSP)來接收自舉表,并根據(jù)自舉表中的信息來加載代碼。MBSP0支持16位的串行接收方式,MBSP1支持8位的串行接收方式;
?。?) 8位或16位I/O加載:加載程序通過使用異步握手協(xié)議從I/O的0H口讀取自舉表;
(5) 8位EEPROM串口加載:加載程序從一個連接到MBSP1的串行EEPROM來接收數(shù)據(jù)。

2 C5000的加載過程
C5000 DSP沒有內(nèi)部提供掉電保存程序的ROM/EPROM/Flash,上電時需要從外部加載應用程序。C5000 DSP提供了多種程序加載方式,滿足不同應用的需要:串行加載、并行加載、HPI加載等,實際應用多的是并行加載,本實驗主要介紹8位并行存貯器加載。加載過程:DSP上電時,如果MP/MC引腳為低電平,則跳轉到內(nèi)部ROM的FF80中斷向量表的Reset中斷,該處有一個跳轉指令轉到稱為Bootloader的加載程序執(zhí)行,該程序的功能是按照一定順序查找可用的加載方式,如果找到,則開始加載應用程序,加載完畢轉向應用程序執(zhí)行。實現(xiàn)并行存貯器加載的關鍵是建立一個加載表(boottable),該表包括:一個或多個程序代碼段、部分需要初始化的寄存器值、程序入口等信息。CCS附帶有一個應用程序(C5000系列是hex500.exx)可以把。out程序轉成。hex格式的加載表,然后可以燒錄到非易失性存貯器中,如OTP/EPPOM/EEPROM/Flash中。C5000的具體加載過程如下:
?。?)首先,在自舉加載前對其進行初始化,其中包括:使中斷無效(INTM=1),內(nèi)部RAM映射到程序/數(shù)據(jù)區(qū)(OVLY=1),對程序和數(shù)據(jù)區(qū)均設置七個等待狀態(tài)等。
?。?)檢查INT2,決定是否從HPI中載。主機接口(HPI)是利用INT2進行自舉加載的。如果沒有INT2信號,說明不是HPI加載。
?。?)檢查INT3決定是否進行串行EEPROM加載。如果DSP檢測到INT3信號,則進行串行EEPROM加載,否則轉到(4)。
?。?)初始化串口,置XF為低。若McBSP1接收到一個數(shù)據(jù),先檢查是否是有效的關鍵字,若是則通過McBSP1進行串口加載,否則檢查McBSP0,其過程與McBSP1相同。
?。?)檢測BID引腳是否為低,若為低再檢查是否為有效的關鍵字,若是則進行I/O加載,否則檢測是否是有效的入口點,若是,則轉入入口點,若都不是則跳到(5)。
初始化工作包括:使中斷無效(INTM=1),內(nèi)部RAM映射到程序/數(shù)據(jù)區(qū)(OVLY=1),對程序和數(shù)據(jù)區(qū)均設置7個等待狀態(tài)。初始化結束后就進入DSP自引導程序。根據(jù)實際需要,我們采用了16位的并口模式,具體的連接圖如圖2所示。上電前設置MP/MC=0,上電后,首先置DSP的IS引腳為低電平,讀取I/O空間地址0FFFFh單元的值,接著判斷數(shù)據(jù)空間的0FFFFh單元的值,判斷是8位BOOT還是16位BOOT模式,然后根據(jù)EPROM的數(shù)據(jù)組織結構進行讀取認可,把片外數(shù)據(jù)的內(nèi)容BOOT到DSP片內(nèi)的程序區(qū),根據(jù)程序的跳轉指令執(zhí)行相應的程序。

3 8位EPROM加載過程
當檢測到不是串行EEPROM加載時,加載程序則轉入并行加載方式。此時加載程序從并口(外部存儲器)傳輸代碼到程序空間,支持8位和16位加載。另外,程序也可自動配置SWWSR(軟件等待狀態(tài)寄存器)和BSCR(分區(qū)轉換控寄存器),使之與不同加載方式相適應,從而使DSP能與不同速率的EPROM相連接??紤]到高速器件與低速器件的匹配問題,加載程序使用默認的七個等待周期。
加載程序能從I/O空間的0FFFFH和數(shù)據(jù)空間的0FFFFH處獲取代碼的首地址。通常,從數(shù)據(jù)空間獲取代碼的首地址較方便。因為在數(shù)據(jù)空間不需要另擴I/O空間,同時又可增加電路改動的靈活性。對5402來說,自舉表可以位于4000H~FFFFH處的任何位置。圖2詳細描述了EPROM加載過程。
應當注意的是:如果不用并行加載方式,D0必須通過一個小的上拉電阻置為高電平,以此來避免加載程序從數(shù)據(jù)空間讀到0AAH關鍵字。另外,加載程序事先并不知道存儲器的寬度,所以它要同時檢查存儲器的低位(0FFFFH)和高位(0FFFFH)以獲取正確的源地址。
4 自舉表
表1 自舉表的結構圖
| 08AAh or 10AAh |
| Initialize value of SWWSR 16 |
| Initizlixe value of BSCR 16 |
| Entry point (XPC)7 |
| Entry point(PC)16 |
| Size of first section 16 |
| Destination of first section (XPC)7 |
| Destination of first section (PC)16 |
| Code word(1)16 |
| … |
| … |
| Code word(N)16 |
| Size of last section 16 |
| Destination of last section(XPC)7 |
| Destination of section (PC)16 |
| Code word(1)16 |
| Code word(N)16 |
| 0000h |
假設用戶編制的源程序文件為radar.asm,鏈連器命令文件為radar.cmd,生成的COFF文件為radar.out,生成的INTEL的十六進制文件為radar.hex,用戶可以通過EPROM編程器將它燒錄到EPROM中。
?。?)首先,使用編譯器對應用程序進行編譯。值得注意的是必須在編譯器的命令行上加-V548選項,若遺忘了這個選項,以后HEX轉換工具將會產(chǎn)生C54早期版本的自舉表,而不提供任何錯誤與警告信息。這個錯誤極其隱蔽,務必注意。
(2)第二步,對步產(chǎn)生的目標文件進行鏈接。在鏈接過程中,鏈接器將各個目標文件合并,并完成以下工作:
●將各個段配置到目標系統(tǒng)的存儲器;
●對各個符號和段進行重新定位,并給它們指定一個終的地址;
●解決輸入文件之間未定義的外部引用。
?。?),運行HEX代碼轉換工產(chǎn)生自舉表。十六進制轉換程序可以很方便的將COFF目標文件轉換成TI,INTEL,MOTOROLA或TEKTRONIX公司的目標文件格式。轉換后生成的文件到EPROM編程器。
本文介紹了C5000芯片加載過程、各種引導方式,詳細分析了EPROM的并行應用,實踐證明EPROM加載方法及其注意事項。改實驗是一種低成本、簡捷、有效的方法。
版權與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關法律責任。
本網(wǎng)轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。
如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。
- 掌握 DSP:原理剖析與應用實踐2025/5/8 14:03:24
- 模糊邏輯在 DSP 上實時執(zhí)行2023/7/25 17:13:30
- 多速率DSP及其在數(shù)模轉換中的應用2023/6/12 15:28:52
- 使用 DSP 加速 CORDIC 算法2023/3/29 15:46:30
- 高速DSP系統(tǒng)的信號完整性2022/9/26 16:45:38









