TMS320C5410燒寫Flash實現并行自舉引導

    時間:2024-10-26 00:36:32 理工畢業論文 我要投稿
    • 相關推薦

    TMS320C5410燒寫Flash實現并行自舉引導

    摘要:介紹在TMS320C5410環境下對Am29LV200B Flash存儲器進行程序燒寫,并且實現了TMS320C5410上電后用戶程序并行自舉引導。

      Flash是一種可在線進行電擦寫,掉電后信息不丟失的存儲器。它具有低功耗、大容量、擦寫速度快等特點,并且內部嵌入算法完成對芯片的操作,因而在數字信號處理系統中得到了廣泛的應用。本文通過一個完整的實例,介紹Am29LV200B Flash存儲器的燒寫方法,實現TMS320C5410(以下簡稱C5410)上電后用戶程序的并行自舉引導。

    1 Am29LV200B Flash存儲器

    1.1 Flash存儲器簡介

      Am29LV200B是AMD公司生產的Flash存儲器,其主要特點有:3 V單電源供電,可使內部產生高電壓進行編程和擦除操作;支持JEDEC單電源Flash存儲器標準;只需向其命令寄存器寫入標準的微處理器指令,具體編程、擦除操作由內部嵌入的算法實現,并且可以通過查詢特定的引腳或數據線監控操作是否完成;可以對任一扇區進行讀、寫或擦除操作,而不影響其它部分的數據。本文中128K×16位Am29LV200B Flash 映射為C5410的片外數據存儲空間,地址為:0x8000~0xFFFF,數據總線16位,用于16位方式的并行引導裝載。128K的Flash ROM用32K地址分四頁進行訪問,上電加載程序時使用Flash ROM的第3頁。

    1.2 Flash存儲器的操作命令

      向Flash存儲器的特定寄存器寫入地址和數據命令,就可對Flash存儲器編程,但要按一定的順序操作,否則就會導致Flash存儲器復位。由于編程指令不能使"0"寫為"1",只能使"1"變為"0",而擦除命令可使"0"變為"1",所以正確順序是先擦除,后編程。下面就介紹幾個常用的操作命令:編程命令、擦除命令、讀數據命令、復位命令。

      ① 編程命令。該命令向Flash的指定地址中寫入數據,需要四個總線周期,前兩個是解鎖周期,第三個是建立編程命令,最后一個周期完成向編程地址中寫入編程數據,如表1所列。

    表1 編程命令

    周期1(解鎖)2(解鎖)3(建立)4(編程)地址0x5550x2AA0x555pa(編程地址)數據0xAA0x550xA0pa(編程數據)

      由于向每個編程地址寫入數據都需要四個周期,所以在循環寫Flash時使用宏比較簡單。Flash ROM的首地址為0x8000,故偏移地址0x555對應物理地址就為0x8555。編程程序如下:

    _WRITECOMMAND .macro pa,pd ;單一周期編程的寫命

    ;令宏,pa是編程地址,pd是編程數據

    PSHM AR1

    STM pa,AR1 ;AR1指向編程地址

    LD pd,A

    STL A,*AR1 ;把編程數據放入AR1的編程地址中

    RPT #12

    NOP

    POPM AR1

    .endm

    _WRITEFlash .macro par,pdr ;編程宏,par是編程地址寄存

    ;器,pdr是存放編程數據的寄存器

    _WRITECOMMAND #8555H,#0AAH ; 周期1(解鎖)

    _WRITECOMMAND #82AAH,#055H ; 周期2(解鎖)

    _WRITECOMMAND #8555H, #0A0H ; 周期3(建立)

    LD pdr, A ; 周期4(編程)

    STL A, par ; 把pdr寄存器中數據放入par

    ;寄存器的地址中

    RPT #12

    NOP

    _JUDGE par, pdr ;檢測編程是否正確,見Flash

    ;的操作檢測

    .endm

    _WRITECOMMAND是實現一個周期編程的寫命令宏,而_WRITEFlash是完成對指定地址編程的四個完整周期。

    表2 擦除命令

    周期1(解鎖)2(解鎖)3(建立)4(解鎖)5(解鎖)6(片擦除)6(扇區擦除)地址0x5550x2AA0x5550x5550x2AA0x555SA(扇區地址)數據0xAA0x550x800xAA0x550x100x30

      ② 擦除命令。該命令有片擦除和扇區擦除兩種,都需要6個總線周期,前兩個解鎖周期,第三個建立周期,四、五兩個解鎖周期,最后是片擦除或扇區擦除周期,如表2所列。一旦執行編程或擦除命令后,就啟動Flash的內部編程或擦除算法,自動完成編程或擦除操作。擦除程序如下:

    _ERASEFlash .macro ;擦除宏

    _WRITECOMMAND #8555H,#0AAH ; 周期1(解鎖)

    _WRITECOMMAND #82AAH,#055H ; 周期2(解鎖)

    _WRITECOMMAND #8555H,#080H ; 周期3(建立)

    _WRITECOMMAND #8555H,#0AAH ; 周期4(解鎖)

    _WRITECOMMAND #82AAH,#055H ; 周期5(解鎖)

    _WRITECOMMAND #8555H,#010H ; 周期6(片擦除)

    STM #8555H,AR3

    LD #010H ,A

    【TMS320C5410燒寫Flash實現并行自舉引導】相關文章:

    TMS320VC5416并行自舉的巧妙實現03-18

    TMS320C6x DSP的FLASH引導方法研究與實現03-18

    STR75x Flash燒寫器的設計03-30

    HPI自舉在TMS320VC5402芯片上的實現03-18

    在DSP處理器上并行實現ATR算法03-18

    利用Flash實現DSP對多個程序有選擇的加載03-19

    大容量Flash存儲設備在水文遙測系統中的實現03-07

    DSP56362的雙引導裝載方法研究與實現03-18

    在MPC555中實現從RAM的快速引導03-18

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      亚洲欧美变态另类一区二区三区 | 婷婷夜色福利网 | 一本久中文视频播放 | 亚洲人成欧美人中文 | 五月丁香合缴情在线看视频免费 | 午夜福利啪爽国产片精品 |