日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
TMS320C5410燒寫(xiě)Flash實(shí)現(xiàn)并行自舉引導(dǎo)
TMS320C5410燒寫(xiě)Flash實(shí)現(xiàn)并行自舉引導(dǎo)
 更新時(shí)間:2008-8-4 5:21:20  點(diǎn)擊數(shù):40
【字體: 字體顏色


 。2)并行自舉引導(dǎo)

  這種方式是比較常用的一種,外部存儲(chǔ)器的字寬為8位或16位。在自舉引導(dǎo)時(shí),通過(guò)外部并行接口總線(xiàn)將這些代碼從數(shù)據(jù)存儲(chǔ)空間傳送到程序存儲(chǔ)空間,而且可以重新設(shè)置SWWSRBSCR寄存器的內(nèi)容。并行自舉引導(dǎo)方式首先從地址為0FFFFHI/O口讀取自舉表首地址的內(nèi)容,如果此內(nèi)容不符合8位或16位的引導(dǎo)方式,就從地址為0FFFFH的數(shù)據(jù)存儲(chǔ)器讀取,進(jìn)行8位或16位并行自舉引導(dǎo)。所以,在燒寫(xiě)Flash數(shù)據(jù)的同時(shí),也要在0FFFFH燒入自舉表的首地址。引導(dǎo)流程如2所示。

3)建立自舉表

  自舉表內(nèi)容不僅包括欲加載的各段代碼,而且包括各段代碼長(zhǎng)度、各代碼段存放的目標(biāo)地址、程序入口地址等信息。若要完成自舉引導(dǎo)功能,必須建立正確的自舉表。自舉表可以由hex500格式轉(zhuǎn)換器自動(dòng)生成;也可以手動(dòng)建立自舉表,就是把被燒寫(xiě)的程序直接放在燒寫(xiě)程序中,根據(jù)被燒寫(xiě)程序的相關(guān)信息手動(dòng)建立自舉表。

3 C5410
燒寫(xiě)Flash和并行自舉引導(dǎo)

  下面通過(guò)一個(gè)Flash燒寫(xiě)實(shí)例,介紹怎樣將用戶(hù)程序燒寫(xiě)進(jìn)Flash,以及怎樣手動(dòng)建立自舉表,并且脫離仿真器以并行自舉引導(dǎo)方式使用戶(hù)程序獨(dú)立運(yùn)行。被燒寫(xiě)和燒寫(xiě)程序如下:
  .title FLASH”
  .mmregs
SWCR .set 002BH
TEMP .set 0060H
  .data
  .sect ".BOOT"
  .label BOOTTABLE ; 自舉表開(kāi)始
  .word 10AAH ; 16位自舉標(biāo)記
  .word 7FFFH ; 7個(gè)等待周期(SWWSR
  .word 0F000H ; 塊轉(zhuǎn)換寄存器(BSCR
  .word 0000h ; 程序入口XPC
  .word 0200h ; 程序入口地址(MAIN_START
  .word LOADEND - LOADSTART
  ; 程序塊長(zhǎng)度(0116H
  .word 0000h ; 存放目標(biāo)XPC
  .word 0100h ; 存放目標(biāo)地址
LOADSTART: ;
中斷向量表開(kāi)始地址
  .copy “vector.asm”;復(fù)位處跳轉(zhuǎn)MAIN_START
MAIN_START: ;
被燒寫(xiě)的主程序
  STM #0F7h,SP
  STM #012Ch,PMST
  ;IPTR=01(中斷向量指針為100,指向目標(biāo)地址),MP/MC=0,OVLY=1,AVIS=0,DROM=1, CLKOFF=1
LOOPF:RSBX XF ;XF
置低
  CALL DELAY ;延時(shí)
  SSBX XF ;XF置高
  CALL DELAY
  B LOOPF
DELAY:PSHM AR6
  STM #0090H,AR6
DELAY_LOOP:
  RPT #0FF0h
  NOP
  BANZ DELAY_LOOP,*AR6-
  POPM AR6
  RET
LOADEND ;
被燒寫(xiě)的程序結(jié)束
  .space 20h
  .mmregs
  .label FINDTABLE
  .word 8000h
  .text
ERASE_WRITE_Flash: ;
燒寫(xiě)程序開(kāi)始
  STM #0FFA0H,PMST
  STM #07FFFH,SWWSR
  STM #0FFFFH,SWCR
  _RESETFlash ; Flash復(fù)位
  _ERASEFlash ;擦除Flash
WRIFlashSTART: ;
開(kāi)始編程Flash
  SSBX SXM
  RSBX OVM
  _RESETFLASH ; Flash復(fù)位
  STM #8000H,AR0 ;Flash起始地址8000H
  STM BOOTTABLE,AR5 ;被燒寫(xiě)的源地址(自舉
 ;表首地址)
  STM #( LOADEND- BOOTTABLE),AR4
          ; 寫(xiě)入011E個(gè)字
WRI_RPT
  _WRITEFlash *AR0,*AR5 ;調(diào)入編程宏
  LD *AR0+,A
  LD *AR5+,A ;完成AR0AR5地址自動(dòng)加1
  BANZ WRI_RPT,*AR4-
  STM #0FFFFH,AR0; AR0指向數(shù)據(jù)空間的FFFF
              ;地址
  STM FINDTABLE,AR5
  _WRITEFlash *AR0,*AR5 ; 向數(shù)據(jù)空間的FFFF
;地址寫(xiě)入自舉表的首地址8000H
ENDD: NOP
  B ENDD
  .end

  被燒寫(xiě)的主程序是從MAIN_START開(kāi)始,一直到LOADEND。程序的主要功能是不斷改變XF引腳的狀態(tài)。LOADSTART是中斷向量文件(vector.asm)的開(kāi)始,在中斷復(fù)位(RESET)處放入一條跳轉(zhuǎn)到MAIN_START指令(BD MAIN_START)。ERASE_WRITE_FLASH是燒寫(xiě)程序的開(kāi)始,只要程序指針( PC)指向ERASE_WRITE_FLASH,開(kāi)始運(yùn)行就可以完成對(duì)Flash的燒寫(xiě)操作。從自舉表首地址BOOTTABLE 0F8H)到LOADEND0216H)存放的數(shù)據(jù)就是要寫(xiě)入Flash的內(nèi)容,從LOADSTARTLOADEND的數(shù)據(jù)是DSP自舉程序從Flash搬運(yùn)到片內(nèi)RAM的程序,具體如下:
00F8H: BOOTTABLE ;
自舉表開(kāi)始
0100H: LOADSTART ;
中斷向量表首地址
0100H: RESET :BD MAIN_START
... ;
中斷向量表的內(nèi)容
0178H: RESERVED
0200H: MAIN_START
... ;
主程序
0216H: LOADEND
  被燒寫(xiě)的程序只需一個(gè)段,根據(jù)以上信息就可以完成自舉表的內(nèi)容,如表3所列。



整個(gè)并行自舉引導(dǎo)過(guò)程為:C5410上電復(fù)位后,判斷MP/MC=0 處于微計(jì)算機(jī)工作方式,從片內(nèi)ROM0FF80H處執(zhí)行中斷向量表的分支轉(zhuǎn)移指令(BD 0F800H),使程序跳轉(zhuǎn)至0F800H處執(zhí)行自舉引導(dǎo)程序。自舉引導(dǎo)程序完成初始化后,讀取數(shù)據(jù)空間的0FFFFH地址的內(nèi)容,找到自舉表首地址8000H,從8000H處開(kāi)始讀取內(nèi)容。首先,是16位自舉標(biāo)記(10AA)。然后分別是寄存器SWWSRBSCR的內(nèi)容,程序入口地址、代碼段長(zhǎng)度、存放代碼段的目標(biāo)地址等信息。最后,根據(jù)這些信息把Flash8008H811EH的程序搬運(yùn)到片內(nèi)RAM100H開(kāi)始的地址中,跳轉(zhuǎn)至片內(nèi)RAM 100H、即PC100HXPC0,開(kāi)始執(zhí)行用戶(hù)程序,完成用戶(hù)程序的并行自舉過(guò)程。

結(jié)語(yǔ)

  把程序燒寫(xiě)入Flash后,復(fù)位C5410,使其處于微計(jì)算機(jī)工作方式;使用示波器測(cè)試XF引腳,觀察程序運(yùn)行正確與否。通過(guò)上述方法可完成C5410對(duì)Am29LV200B Flash 的燒寫(xiě),很好地實(shí)現(xiàn)了C5410上電后的用戶(hù)程序自舉引導(dǎo)功能。
           參考文獻(xiàn)
1 TMS320VC5410 Bootloader SPRA609A Copyright (c) TI, 2000-04
2 Am29LV200B Copyright (c) 2002 Advanced Micro Devices, 2002-04-12
3
張雄偉, 曹鐵勇. DSP芯片的原理與開(kāi)發(fā)應(yīng)用. 北京:電子工業(yè)出版社, 2001


  • 上一篇: 多種EDA工具的FPGA協(xié)同設(shè)計(jì)
  • 下一篇: PLD/FPGA 結(jié)構(gòu)與原理初步
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話(huà):0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1