<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > TMS320VC5410的BOOT設計與實(shí)現

TMS320VC5410的BOOT設計與實(shí)現

作者: 時(shí)間:2011-10-25 來(lái)源:網(wǎng)絡(luò ) 收藏
  TMS320VC54X系列DSP芯片一般都在片內設置有BOOT程序。BOOT程序的主要作用是在開(kāi)機時(shí)將用戶(hù)程序從外部裝入到程序存貯器。不同型號的DSP芯片中BOOT引導程序的大小是不同的。內部就具有2K字的BOOT程序,下面就介紹方法。

1 BOOT的模式選擇
  我們使用的BOOT程序時(shí),需要將DSP設置為微機工作方式(硬件復位后采樣MP/MC=0),則當執行片內的引導程序,并且DSP復位后,程序就從內部ROM的FF80H處開(kāi)始執行程序。在FF80H處,有一條跳轉指令,轉向ROM中已掩模的BOOT程序,這樣便開(kāi)始運行內部的BOOT程序。這個(gè)引導程序首先進(jìn)行初始化。初始化工作包括使中斷無(wú)效(INTM=1)、將內部的雙存取塊/單存取塊映射到程序/數據空間(OVLY=0),對程序和數據空間都設置7個(gè)等待狀態(tài)。
TMS320VC5410程序引導共有5種模式:
 ?。?)HPI模式,這是一種主機接口模式。主機通過(guò)寫(xiě)入主機控制寄存器(HPIC)來(lái)中斷DSP,而  DSP則通過(guò)主機中斷信號來(lái)中斷主機。主機可以響應HINT信號和清除該信號。HINT是否為低電平?jīng)Q定了是否選用主機接口HPI引導模式。
 ?。?)并行I/O口BOOT模式(支持8bits和16bits)。
(3)串行口模式(標準/TDM/BSP)(支持8bits
和16bits),串口引導共有8種方式。按字長(cháng)8位與16位兩種格式和CLKX/FSX引腳的設置決定引導模式。采用8位子長(cháng)時(shí)需要對下列控制位置位:
·接收復位信號RRST;
·發(fā)送模式位TXM;
  ·時(shí)鐘模式位MCM(使CLKX由片內時(shí)鐘源驅動(dòng));
  ·幀同步模式位FSM(必須由外部施加幀同步脈沖信號到FSR引腳);
·格式位FO(選擇8位數據傳輸方式)。(4)外部并行模式(支持8bits和16bits)?! 。?)WARM BOOT,即熱引導模式,可以使傳輸控制入口地址,也可以在器件熱復位或用其他方式把程序代碼已經(jīng)傳輸到片內或片外存儲器(如DMA)后使用WARM引導模式。在WARM引導模式時(shí),由BRS字中的SRC或ADDR字段指定入口地址的高6位。
  本文主要就8位/16位并行I/O口引導模式作探討。
  I/O口引導模式提供了一種異步地把程序代碼從I/O口地址空間0h處傳輸到內部或外部的程序存儲器的方法。圖1是程序流程圖。
  由圖1的流程圖我們可以看到設置合理的數據區的FFFFH地址的內容,使它成為有效地并行引導,就可以實(shí)現我們的并行I/O的BOOT模式。
2 設計FFFFH地址的內容使它成為有效的并行引導數據

  FFFFH地址所填的內容就是所設計的應用程序開(kāi)始的地址,在所設計的程序中起始地址是0頁(yè)的08000h,因此,在此程序中將FFFFH的內容設置為08000h。
3 設置08000h的內容,實(shí)現引導功能
  我們可以根據圖2來(lái)得到我們所需要填寫(xiě)的數據。

  由圖2的流程圖我們可以知道,要往08000h地址開(kāi)始寫(xiě)入所規定的值才符合要求。見(jiàn)表1。
依照表1,我們可以填入符合要求的字。

4 獲取填入字的信息
  要獲取填入字的信息就要生成一張表,而生成這張表之前需要做一個(gè)批處理文件,批處理文件的做法如下:
(1)首先編譯通過(guò)生成“.out”文件;
(2)打開(kāi)UltraEdit-32編輯批處理的軟件;
(3)用hex命令進(jìn)行編輯。
hex命令形式如下:
myfile.out/*輸入的COFF文件名.
-e 0x0000/*程序的起始地址.
-a/*ASCII輸出形式.
-boot/*引導所有的程序單元.
 ?。璪ootorg PARALLEL/*創(chuàng )建PARALLEL的BOOT引導.
-memwidth 16/*16bits的EPROM.
-o myfile.hex/*輸出文件名.
  這里有一個(gè)小程序可以看出具體操作過(guò)程(程序的起始為0x2000):
  hex500 test1.out-e 0x2000-boot-bootorgPARALLEL-memwidth 16-romwidth 16-o test1.  hex




這樣可以生成一個(gè)表,如表2所示。
  表2中帶下劃線(xiàn)者代表每一個(gè)Section的起始地址,有框線(xiàn)者是這一個(gè)Section的長(cháng)度(注意,當我們依據這張表填的時(shí)候,應該將Section的長(cháng)度加1,這是應用后得出來(lái)的經(jīng)驗),最后一個(gè)Section的最后四個(gè)0表示結束。
由上,我們就可以使用并行的BOOT模式了。

  參考文獻
1 李剛主編.數字信號微處理器的原理及其開(kāi)發(fā)應用.天津:天津大學(xué)出版社,2000年4月
2 任麗香,馬淑芬,李方慧編.TMS320C5400系列DSPs的原理與應用.北京:電子工業(yè)出版社,2000,7
3 彭啟琮編.TMS320C54X實(shí)用教程.成都:電子科技大學(xué)出版社,2000,1


關(guān)鍵詞: TMS320VC5410 BOOT設計

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>