新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 基于TMS320C6713及AM29LV800B的上電自舉設(shè)計

基于TMS320C6713及AM29LV800B的上電自舉設(shè)計

作者: 時間:2009-08-31 來源:網(wǎng)絡(luò) 收藏
A行利用匯編偽指令“.sect”為引導程序定義了一個段,通過鏈接命令文件將該段程序準確定位在指定的地址空間。B行引用_c_int00子程序,是由系統(tǒng)自動生成的復位中斷服務(wù)子程序,利用該子程序使程序在執(zhí)行完引導程序后跳轉(zhuǎn)到主程序入口地址執(zhí)行主程序。
4.2 對Flash的操作
對Flash的操作有復位、數(shù)據(jù)讀、擦除、燒寫。Flash的復位操作相對簡單,只要向Flash任意地址單元寫入數(shù)據(jù)“0xF0”便可實現(xiàn)其復位操作。數(shù)據(jù)讀與一般的RAM存儲器相同,但Flash的擦除和燒寫操作卻有其自身特點。
4.2.1 Flash的擦除
由于Flash的燒寫操作只能將其內(nèi)部存儲單元由“1”改寫為“0”,反之不行,所以必須先將Flash內(nèi)部存儲單元擦除后才能寫操作。也就是說,擦除操作是將Flash內(nèi)部存儲單元全部寫為“1”。
由Flash擦除命令字看出,F(xiàn)lash的擦除分為片擦除和扇區(qū)擦除,采用片擦除,需要向2個地址寫入不同數(shù),從而擦除整個器件。其擦除子程序代碼如下:

本文引用地址:http://butianyuan.cn/article/188692.htm


擦除操作完成后,可通過CCS查看0x90000000開始的單元,如均改寫成“0xFFFFFFFFF”則表明擦除成功。
4.2.2 Flash的燒寫
通常燒寫有兩種方式,一種是在燒寫器上對器件燒寫后再插到PCB板上,待調(diào)試完成再將其焊接固定。但目前多采用貼片式元器件,所以方案采用第二種燒寫方法,即在線燒寫法。利用仿真器通過JTAG仿真口按照一定的時序和要求對Flash燒寫。燒寫部分程序代碼如下:


在A行中,0x555左移1位后加到Flash的起始地址,這是因為寫Flash要求向0x555地址寫入數(shù)據(jù)“Oxaa”,該地址為Hash的地址,即要求Flash地址線AO~A18上出現(xiàn)0x555數(shù)據(jù),由于DSP的第l位地址線EA2與Flash的AO相連,32位DSP對指向“short”型數(shù)據(jù)的指針操作時會自動將地址左移1位,以滿足對偶地址操作的要求,所以應(yīng)像A、B行中手動將0x555,0x2aa地址左移l位,再加上DSP自動左移1位,就使地址0x555的第1位出現(xiàn)在EA2上,即AO~A18得到數(shù)據(jù)0x555,而DSP實際輸出地址為Ox90000AAA。D行的操作是將32位DSP內(nèi)部RAM中的n個16位二進制數(shù)搬移到16位Flash中,指針變量“flash_addr,source”均為指向“short”型數(shù)據(jù)的指針變量(16位),所以Flash會使用全部的16位數(shù)據(jù)線,而DSP只使用32位數(shù)據(jù)線的低16位用于傳輸數(shù)據(jù)。
4.3 鏈接命令文件(*.cmd文件)
鏈接命令文件是DSP開發(fā)過程中生成可執(zhí)行文件(.out)必不可少的一個文件。其作用是對DSP固有段和由用戶自定義的段在使用仿真器load程序時定位,將各段程序分配到存儲器的指定地址。這樣用戶就可以知道引導程序、中斷向量表和主程序在DSP內(nèi)存空間的準確地址。
由于待燒寫的引導程序、中斷向量表和主程序需定位在DSP內(nèi)存Ox00000000~0x00003FFF的地址空間中。燒寫程序需定位在Ox00004000~0x000141FF的地址空間。鏈接命令文件部分程序代碼如下:


5 結(jié)語
為例,介紹了DSP的上電自舉過程及實現(xiàn)方法,詳細說明了其中關(guān)鍵問題及技術(shù)難點,并應(yīng)用程序?qū)嵗涂驁D加深讀者的理解。對于讀者開發(fā)TI公司的其他產(chǎn)品也有一定的借鑒作用,特別對于從事DSP設(shè)計的入門級人員會有很大的幫助。所涉及的內(nèi)容均經(jīng)過實踐證明,運行穩(wěn)定可靠。


上一頁 1 2 下一頁

關(guān)鍵詞: C6713 320C 6713 800B

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉