色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用Flash存儲器實現(xiàn)TMS320VC5410 DSP對多用戶代碼加載的方法研究

電子設(shè)計 ? 來源:單片機與嵌入式系統(tǒng)應(yīng)用 ? 作者:陳朝陽 , 薛崢 , 郭 ? 2020-05-21 08:30 ? 次閱讀

引 言

在TMS320C54X系列DSP系統(tǒng)的開發(fā)中,由于DSP片內(nèi)只有ROMRAM存儲器,如要將用戶代碼寫入ROM中,必須要由DSP芯片廠家來完成;但這樣做用戶就不能再更改代碼,很不實用。由于RAM在DSP掉電后不能再保存數(shù)據(jù),因此,常常利用EPROM、Flash等一些外部存儲器來存放用戶代碼。在DSP上電工作后,利用DSP提供的boot機制,再將程序下載到DSP RAM中運行。如果使用EPROM外部存儲器存放用戶代碼,需要用代碼轉(zhuǎn)換工具將用戶代碼轉(zhuǎn)換為二進制目標(biāo)文件,然后用編程器將其燒寫進EPROM;而如果使用Flash存儲器存放用戶代碼,則可直接使用DSP仿真器和CCS(Code Composer Studio )仿真環(huán)境進行在線編程,使用靈活方便,不再需要其它編程設(shè)備。在某一以太網(wǎng)通信系統(tǒng)中,我們就采用Flash存儲器來實現(xiàn)多份用戶代碼的有選擇加載。下面就以此系統(tǒng)為例介紹對TMS320VC54X DSP的一種用戶代碼加載的方法。

1、系統(tǒng)構(gòu)架

此通信系統(tǒng)基于802.3以太網(wǎng)標(biāo)準(zhǔn),用以實現(xiàn)各終端之間的話音和其它數(shù)據(jù)的通信,以及實現(xiàn)局域網(wǎng)內(nèi)終端與外界的話音和數(shù)據(jù)通信。為節(jié)約開發(fā)成本,提高系統(tǒng)的可擴展性、通用性和靈活性,我們對每個網(wǎng)內(nèi)終端采用同樣的硬件架構(gòu),通過使用不同的軟件代碼而使其實現(xiàn)不同的功能,發(fā)揮不同的作用。

每一通信終端由2塊DSP芯片、1塊網(wǎng)卡、1塊CPLD和1塊FPGA以及Flash存儲器等器件組成可擴展的基本結(jié)構(gòu)。其中,以TMS320VC5410 DSP作為主CPU,負(fù)責(zé)系統(tǒng)的邏輯控制和一般數(shù)據(jù)傳輸;以MS320VC5416 DSP作為從CPU,負(fù)責(zé)話音的編解碼和回聲消除、語音檢測等工作。2塊DSP之間通過主機接口(HPI)進行通信。為了實現(xiàn)代碼的有選擇下載,可由FPGA配置一端口作為撥碼開關(guān),使用戶通過調(diào)節(jié)撥碼開關(guān),可以有選擇地下載存儲于Flash中的用戶代碼,其結(jié)構(gòu)如圖1所示。

采用Flash存儲器實現(xiàn)TMS320VC5410 DSP對多用戶代碼加載的方法研究

配置撥碼開關(guān)是為了擴充系統(tǒng)的功能,以實現(xiàn)一個硬件平臺的多種用途。我們可以將實現(xiàn)不同功能的多份用戶代碼都寫入Flash存儲器中存放,通過硬件撥碼開關(guān)的設(shè)置,選擇其中一份用戶代碼下載執(zhí)行。在系統(tǒng)上電加載用戶代碼時,系統(tǒng)先從Flash下載FPGA配置程序,然后通過FPGA讀出撥碼開關(guān)的值,再根據(jù)此值從Flash中選擇對應(yīng)的5410 DSP用戶代碼加載;而5416 DSP的用戶代碼加載是在5410代碼加載完成,啟動運行后由5410程序從Flash中讀出相應(yīng)的5416代碼,再通過HPI加載到5416的,以此實現(xiàn)5416 DSP的代碼加載與啟動。

2、M29W800AB Flash存儲器介紹及使用

在此系統(tǒng)中,我們選用的是M29W800AB Flash存儲器,其容量為512K16位, 分為16頁,每頁32K。其中,第0頁有4個模塊:0x00~0x1fff、0x2000~0x2fff、0x3000~0x3fff、0x4000~0x7fff。其余各頁,每頁為1個模塊,共有19個模塊。

對Flash的操作要靠寫入一系列特定的地址和數(shù)據(jù)序列來完成。在每次對Flash寫入之前,要對其原來的內(nèi)容進行擦除。Flash的擦除包括塊擦除和芯片擦除兩種。塊擦除是對一個模塊進行擦除,芯片擦除是擦除整個Flash的內(nèi)容。因此,對Flash的操作,是以模塊為基本單元的。對Flash的操作由指令決定,其必須滿足Flash的時序要求,每條指令需要1~6個不等的指令周期。主要操作指令包括讀數(shù)據(jù)指令、編程指令、復(fù)位指令、自動選擇指令和擦除指令。每個指令周期由一個命令構(gòu)成,每個命令代碼所執(zhí)行的任務(wù)如表1所列。

表1 Flash的命令說明

下面以M29W800AB Flash的塊擦除指令為例,具體說明Flash的操作時序:塊擦除指令需要6個總線周期,先以2個解鎖周期開始,然后是1個擦除建立周期,接下來又是2個解鎖周期,最后是1個擦除確認(rèn)周期,其指令時序如表2所列。

表2 Flash擦除指令說明

C語言程序設(shè)計代碼如下:

#define flash ((volatile unsigned int*)0x8000)

Block_Erase(ADDR){

flash[0x5555] = 0x00AA;

wait(1000);

flash[0x2AAA] = 0x0055;

wait(1000);

flash[0x5555] = 0x0080;

wait(1000);

flash[0x5555] = 0x00AA;

wait(1000);

flash[0x2AAA] = 0x0055;

wait(1000);

flash[ADDR] = 0x0030;

}

需要注意的是,F(xiàn)lash相對于DSP來說是慢速設(shè)備,編程時,對Flash的訪問需要有足夠的延時等待。對其它指令這里就不一一介紹了。要了解更多內(nèi)容,可參考具體的Flash存儲器手冊。

3 、引導(dǎo)裝載

TMS320VC5410和TMS320VC5416片內(nèi)ROM中固化有TI公司的引導(dǎo)裝載(Bootloader)程序,用于在上電復(fù)位時把用戶代碼從外部存儲器引導(dǎo)到片內(nèi)RAM中運行。引導(dǎo)程序是在一些片內(nèi)固化的一個程序,它負(fù)責(zé)上電時初始化存儲器。換句話說,它將程序從非易失性存儲器(如Flash存儲器)中調(diào)入系統(tǒng)的存儲器中。其提供的片內(nèi)引導(dǎo)模式有: HPI(主機接口)引導(dǎo)、并行EPROM引導(dǎo)、并行I/O引導(dǎo)和串行口引導(dǎo)等。下面先介紹這兩塊芯片的上電引導(dǎo)過程。

DSP上電復(fù)位后,先檢測其MP/MC引腳,如果MP/MC=“0”,表示使用片內(nèi)ROM引導(dǎo)。此時,DSP從0xFF80處開始執(zhí)行TI的片內(nèi)引導(dǎo)程序。進入引導(dǎo)程序后,HINT引腳變?yōu)榈碗娖剑缓箝_始檢測INT2是否為低電平(有效)。如有效,則進入HPI引導(dǎo)方式;否則,檢測INT3引腳。如有INT3請求中斷,則進入串行引導(dǎo)方式;否則,就進入并行引導(dǎo)方式。在本系統(tǒng)中,我們采用TI公司提供的Bootlooder程序進行引導(dǎo)裝載,為此,應(yīng)將MP/MC引腳接低電平。引導(dǎo)程序流程如圖2所示。

3.1 HPI模式實現(xiàn)TMS320VC5416的程序加載

按以上設(shè)計,5416DSP的程序加載采用HPI(主機接口)模式。對于HPI引導(dǎo)模式,必須將HINT和INT2引腳連接在一起,以保證Bootloader程序能檢測到INT2有效。當(dāng)檢測其為低電平時,進入HPI引導(dǎo)方式。主處理器5410啟動運行后,5410程序從Flash中下載5416程序,通過5410與5416之間的HPI寫入5416 RAM。在將程序?qū)懭?416時,要按照5416程序的cmd文件配置,將從Flash中讀出的代碼寫入5416程序空間的代碼段。寫完代碼后,還應(yīng)將5416代碼的起始地址寫入5416的0x7f單元,將0寫入0x7e單元,起始地址可在CCS仿真環(huán)境中編譯5416代碼后看出,此時PC所指向的位置就是代碼的起始地址。這是因為,當(dāng)5416進入HPI引導(dǎo)方式后,Boodloader程序開始檢測0x7f單元的內(nèi)容(0x7e和0x7f兩單元內(nèi)容在Boodloader程序開始執(zhí)行時就清零)。當(dāng)檢測到其內(nèi)容不為零時,即將0x7e的內(nèi)容賦給XPC,將0x7f的內(nèi)容賦給PC,程序跳轉(zhuǎn)到PC所指向位置執(zhí)行用戶代碼。這樣就實現(xiàn)了從片5416的程序加載啟動。圖3是HPI模式加載用戶代碼的流程。

3.2 并行加載模式實現(xiàn)TMS320VC5410的程序加載

5410主處理器的用戶代碼加載采用并行模式加載。在本系統(tǒng)中,有多份5410用戶代碼存儲于Flash中。系統(tǒng)上電后,先要從Flash中下載FPGA配置代碼,然后讀出撥碼開關(guān)的值,再選擇相應(yīng)的用戶代碼下載,完成后,跳轉(zhuǎn)到用戶代碼的入口地址開始執(zhí)行用戶代碼。為此,需要設(shè)計一啟動程序以實現(xiàn)以上功能。啟動程序的內(nèi)容包括下載FPGA配置代碼,讀拔碼開關(guān)值,并根據(jù)此值選擇下載相應(yīng)的5410用戶代碼到其cmd文件配置的相應(yīng)程序空間。完成后,跳轉(zhuǎn)到用戶代碼起始地址。代碼的起始地址通過CCS仿真環(huán)境編譯后獲得,啟動程序的下載運行,則要依靠TI的片內(nèi)引導(dǎo)程序,采用16位并行模式引導(dǎo)加載,需要構(gòu)建引導(dǎo)表。所謂引導(dǎo)表就是引導(dǎo)程序要調(diào)入的代碼。引導(dǎo)表中除了包括源代碼之外,還包含一些附加信息。這些信息指導(dǎo)引導(dǎo)程序的具體執(zhí)行過程。因此,可以說引導(dǎo)表是由程序代碼和一些附加信息組成的一種數(shù)據(jù)結(jié)構(gòu)。在這里,我們需要用啟動程序構(gòu)建引導(dǎo)表,并將引導(dǎo)表也寫入Flash中。

在此系統(tǒng)中,F(xiàn)lash存儲器映射為DSP的0x8000~0xffff數(shù)據(jù)空間。對Flash操作時,首先要選擇頁,每一頁都對應(yīng)為DSP的0x8000~0xffff地址的數(shù)據(jù)空間。需要注意:除了將引導(dǎo)表寫入Flash外,還應(yīng)將引導(dǎo)表的起始地址(對于DSP處理器而言的地址,如果在Flash中為0,則對DSP即為0x8000)寫入Flash第一頁的最后一個單元(0x7fff單元),即DSP存儲空間的0xFFFFh單元。引導(dǎo)程序進入并行加載模式后,將查詢數(shù)據(jù)空間的0xFFFFh單元,直到讀入一個有效的地址數(shù)據(jù)。此數(shù)據(jù)為用戶引導(dǎo)表的入口地址。這時,引導(dǎo)程序就跳轉(zhuǎn)到Flash中的用戶引導(dǎo)表開始執(zhí)行。需要注意的是,對于不同型號和廠家的Flash,其引導(dǎo)表的格式和內(nèi)容是不同的。下面就M29W800AB Flash引導(dǎo)表的格式及我們所配置的內(nèi)容說明如下:

程序根據(jù)引導(dǎo)表的內(nèi)容將用戶代碼下載到指定的程序空間中,并將指定的程序入口地址值賦給PC,使程序從此處開始執(zhí)行,從而完成5410 DSP的引導(dǎo)啟動。并行引導(dǎo)流程如圖4所示。

在系統(tǒng)的實際調(diào)試過程中,通過HPI加載5416代碼時,要注意5410和5416的時鐘要匹配。一般來說,要求從片時鐘為主片時鐘的1.25倍以上。在此系統(tǒng)中,系統(tǒng)基準(zhǔn)時鐘為8MHz,5410啟動時鐘設(shè)為8MHz,5416設(shè)為10倍頻80MHz。

本系統(tǒng)最大的優(yōu)點是實現(xiàn)了一機多用,擴展了系統(tǒng)的功能,增強了系統(tǒng)的靈活性和通用性,在實際應(yīng)用中已取得了良好的效果。

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • dsp
    dsp
    +關(guān)注

    關(guān)注

    553

    文章

    7987

    瀏覽量

    348773
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1633

    瀏覽量

    147950
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7484

    瀏覽量

    163768
收藏 人收藏

    評論

    相關(guān)推薦

    TMS320VC549到TMS320VC5410的移植

    本應(yīng)用指南介紹了與TMS320VC549向TMS320VC5410移植有關(guān)的感興趣的問題。
    發(fā)表于 09-23 17:22

    求一種基于TMS320VC5410的會議電話解決方案

    求一種基于TMS320VC5410的會議電話解決方案
    發(fā)表于 05-28 07:23

    TMS320VC5410 pdf datasheet

    The TMS320VC5410 fixed-point, digital signal processor (DSP) (hereafter referred to as the 5410
    發(fā)表于 08-07 22:49 ?32次下載

    TMS320VC5402 的Flash并行Bootloade

    概述TMS320VC5402 DSP 芯片的幾種自舉引導(dǎo)方法,深入分析、研究最常用的基于閃爍存儲器的并行自舉引導(dǎo)方式;按照自舉表的格式在
    發(fā)表于 04-15 11:56 ?40次下載

    TMS320VC5410的McBSP串行接口技術(shù)與程序設(shè)計

    介紹TMS320VC5410 的多功能串行接口(McBSP),并結(jié)合McBSP 與高精度、高速率串行數(shù)模轉(zhuǎn)換MAX541 之間的串行通信, 從硬件和軟件兩個方面具體討論McBSP 的設(shè)計方法
    發(fā)表于 05-13 15:57 ?33次下載

    TMS320VC5410A DSP Silicon Errata

    The TMS320VC5410A fixed-point, digital signal processor (DSP) (hereafter referred to as the 5410
    發(fā)表于 12-12 22:09 ?37次下載

    TMS320VC5410-100,pdf(Fixed-Point DSP)

    The TMS320VC5410 fixed-point, digital signal processor (DSP) (hereafter referred to as the 5410
    發(fā)表于 12-12 22:12 ?37次下載

    TMS320VC5410 DSP Silicon Errat

    for the TMS320VC5410 silicon. The advisories are applicable t • TMS320VC5410 (144-pin LQFP, PGE suffix) • TM
    發(fā)表于 12-12 22:14 ?25次下載

    基于TMS320VC5410的實時信號處理系統(tǒng)的設(shè)計

    結(jié)合為搭建IP電話原型機而研制的DSP板卡,對TMS320VC5410的接口設(shè)計及bootloader設(shè)計方法進行了研究,從系統(tǒng)的角度探討了如何進行
    發(fā)表于 05-05 20:53 ?906次閱讀
    基于<b class='flag-5'>TMS320VC5410</b>的實時信號處理系統(tǒng)的設(shè)計

    TMS320VC5410的BOOT設(shè)計與實現(xiàn)?

    【摘 要】 闡述了TMS320VC5410芯片的2K程序空間的并行I/O串口的BOOT引導(dǎo)方法。    關(guān)鍵詞:TMS320VC5410,BOOT,數(shù)字信號處理
    發(fā)表于 05-14 20:54 ?1010次閱讀
    <b class='flag-5'>TMS320VC5410</b>的BOOT設(shè)計與<b class='flag-5'>實現(xiàn)</b>?

    TMS320C5410燒寫Flash實現(xiàn)并行自舉引導(dǎo)

    介紹在TMS320C5410環(huán)境下對Am29LV200B Flash存儲器進行程序燒寫,并且實現(xiàn)TMS320C5410上電后
    發(fā)表于 06-16 07:57 ?1304次閱讀
    <b class='flag-5'>TMS320C5410</b>燒寫<b class='flag-5'>Flash</b><b class='flag-5'>實現(xiàn)</b>并行自舉引導(dǎo)

    基于TMS320VC5409 DSP的閃爍存儲器并行引導(dǎo)裝載

    基于TMS320VC5409 DSP的閃爍存儲器并行引導(dǎo)裝載方法 TMS320VC5409 是TI公司推出的第一代的高性能、低價位、低功耗
    發(fā)表于 11-02 16:36 ?1658次閱讀

    基于TMS320VC5410和SLE5542型IC卡的DES

    為了滿足信息安全和加密型數(shù)據(jù)采集系統(tǒng)的密鑰的有效存儲,設(shè)計基于 TMS320VC5410系列DSP和SLE5542型IC卡的DES加密系
    發(fā)表于 12-13 09:45 ?2170次閱讀

    TMS320VC5410芯片電源及復(fù)位電路設(shè)計

    首先介紹了 TMS320VC5410 芯片的工作電源的設(shè)計方法,其次對芯片的復(fù)位電路提出了幾種設(shè)計方法,最后結(jié)合選用DSP電源芯片對復(fù)位電路進行了綜合設(shè)計。
    發(fā)表于 08-05 10:09 ?76次下載
    <b class='flag-5'>TMS320VC5410</b>芯片電源及復(fù)位電路設(shè)計

    TMS320VC5410_Fixed-Point_Digital_Signal_Processor

    tms320vc5410數(shù)據(jù)手冊,有需要的朋友下來看看。
    發(fā)表于 01-15 17:41 ?7次下載
    主站蜘蛛池模板: 国产精品久久婷婷五月色| 中文字幕一区二区三区在线观看| 午夜啪啪免费视频| 亚洲AV久久无码精品九号| 最近2019中文字幕MV免费看 | 国产精品v片在线观看不卡| 国产精品久久vr专区| 精品丰满人妻无套内射| 美女张开让男生桶| 日本理伦片午夜理伦片| 亚洲AV久久无码精品九九软件| 中国老太60old mantv| 大迪克黑人异族| 久久66热在线视频精品| 青青草原社区| 在线va无卡无码高清| 国产高清视频a在线大全| 久久大香萑太香蕉av| 色欲久久综合亚洲精品蜜桃| 亚洲视频黄| 国产成人精品免费青青草原app| 久久精品观看| 无码一区二区三区| BT7086福利二区最新| 精品视频免费在线| 小寡妇水真多好紧| 被两根巨大同时进去高H| 久久久久嫩草影院精品| 小sao货ji巴cao死你视频| 爱人 qvod| 久久伊人在| 亚洲色欲国产免费视频| 国产精品看高国产精品不卡| 热久久国产欧美一区二区精品| 依人在线观看| 精品久久久久久综合网| 午夜快车神马影视| 俄罗斯9一14 young处| 琪琪午夜福利免费院| 99热这里只有精品88| 免费视频久久只有精品|