国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于以太網(wǎng)傳輸?shù)那度胧蕉嗪薉SP自啟引導(dǎo)

2016-11-28 01:29:31李敬超徐彬彬
微處理機 2016年5期
關(guān)鍵詞:鏡像文件鏡像以太網(wǎng)

歐 斌,李敬超,高 霞,徐彬彬

(重慶金美通信有限責(zé)任公司,重慶400030)

基于以太網(wǎng)傳輸?shù)那度胧蕉嗪薉SP自啟引導(dǎo)

歐斌,李敬超,高霞,徐彬彬

(重慶金美通信有限責(zé)任公司,重慶400030)

TI推出的基于KeyStone架構(gòu)的TMS320C66xx系列產(chǎn)品在圖像處理、語音處理、信號處理等諸多領(lǐng)域得到了廣泛應(yīng)用,多核自啟引導(dǎo)關(guān)系到DSP內(nèi)核代碼之間能否在離線模式下同步并行工作和獨立自主運行。結(jié)合以太網(wǎng)接口的高速傳輸特性和NAND FLASH大容量非易失存儲優(yōu)勢,通過在FLASH燒寫程序中嵌入UDP協(xié)議代碼實現(xiàn)多核鏡像文件的以太網(wǎng)傳輸功能,并且對IBL二級自啟引導(dǎo)代碼進(jìn)行改進(jìn),實現(xiàn)了多核鏡像文件從FLASH到內(nèi)核的引導(dǎo)。經(jīng)過在TMS320C6670 DSP平臺上驗證,該設(shè)計能夠?qū)崿F(xiàn)多核程序代碼到FLASH的高效傳輸、燒寫和自啟引導(dǎo),為嵌入式DSP設(shè)備出廠制造和程序升級提供了新的思路。

嵌入式;多核;自啟引導(dǎo);以太網(wǎng);DSP處理器;NAND FLASH存儲器

1 引 言

TI推出的基于KeyStone架構(gòu)的TMS320C66xx系列產(chǎn)品在圖像處理、語音處理、信號處理等諸多領(lǐng)域得到了廣泛應(yīng)用[1]。其采用的多核并行和高速接口工作機制,提高了DSP的處理能力,高效地進(jìn)行多核程序的自啟引導(dǎo)和程序升級成為設(shè)備成品和離廠維護的必備選擇。

DSP的自啟引導(dǎo)可分為處理器加載和存儲器加載兩種模式。前者需要其它處理器作為上位機通過網(wǎng)口[2]、RapidIO、HyperLink、PCIe等高速接口快速加載應(yīng)用程序;后者通過存儲在非易失的EEPROM、FLASH等存儲芯片中可實現(xiàn)DSP加載應(yīng)用程序[3]。嵌入式的DSP系統(tǒng)普遍采用存儲器模式的獨立自啟設(shè)計。一般I2C總線連接EEPROM容量較小,主要用于存儲較小體積的引導(dǎo)程序,例如DSP的二級引導(dǎo)程序IBL。大容量用戶程序自啟引導(dǎo)需要FLASH存儲器完成加載。

以TMS320C6670為例,通過對自啟引導(dǎo)程序的重新設(shè)計,提出了一種通過千兆以太網(wǎng)進(jìn)行鏡像傳輸,使用串口監(jiān)控和指導(dǎo)NAND FLASH程序燒寫和更新,實現(xiàn)DSP多核程序自啟引導(dǎo)的方法。

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

嵌入式的DSP用戶程序鏡像的傳輸燒寫、自啟引導(dǎo)工作主要使用PC客戶端、DSP內(nèi)核、外部存儲三大模塊的協(xié)調(diào)工作完成,整個系統(tǒng)的架構(gòu)設(shè)計如圖1所示。

PC模塊主要用于完成用戶鏡像文件的傳輸,以及程序運行狀態(tài)的監(jiān)控和控制處理。外存用于存放自啟引導(dǎo)所需的鏡像文件和自啟引導(dǎo)程序。DSP模塊作為核心部分完成鏡像的燒寫和加載工作。

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

3 硬件設(shè)計

DSP提供了UART接口[4],需要通過在外部電路中接入MAX3221換為RS232信號,以方便PC機通過USB轉(zhuǎn)串口工具同DSP進(jìn)行通信。串口電路如圖2所示。

圖2 串口電路

DSP提供了SGMII高速接口用于數(shù)據(jù)的高效傳輸。為實現(xiàn)DSP與PC的網(wǎng)絡(luò)通信,需要將通信接口SGMII與PHY相連,然后通過變壓器和RJ45連接,配置為標(biāo)準(zhǔn)的以太網(wǎng)接口進(jìn)行通信。以太網(wǎng)接口電路如圖3所示。

圖3 以太網(wǎng)接口電路

DSP6670的NAND FLASH通過GPIO接口同DSP連接[5],用于存儲DSP多核鏡像。EEPROM通過I2C總線同DSP連接用于存儲二級自啟程序IBL[3、6]。存儲電路如圖4所示。

圖4 存儲電路

4 軟件設(shè)計

4.1多核鏡像傳輸和燒寫設(shè)計

TI提供了NAND FLASH的燒寫工程,傳統(tǒng)模式下,從PC通過仿真線加載用戶鏡像文件并寫入FLASH。通過在以太網(wǎng)系統(tǒng)工程中嵌入NAND FLASH燒寫模塊實現(xiàn)PC同DSP之間的以太網(wǎng)通信,用于接收鏡像文件并直接對其進(jìn)行燒寫[7]。改進(jìn)的以太網(wǎng)系統(tǒng)鏡像文件預(yù)先使用傳統(tǒng)方式燒寫到FLASH中,當(dāng)用戶需要進(jìn)行程序更新時,DSP加電啟動后會從FLASH中加載該工程。流程圖如圖5所示,具體介紹如下:

圖5 多核鏡像的傳輸和燒寫流程

(1)以太網(wǎng)系統(tǒng)傳輸模塊

DSP接收包含多核鏡像的以太網(wǎng)包需要本地MAC和IP地址進(jìn)行匹配,然后通過多核導(dǎo)航器QMSS接收描述符裝載的數(shù)據(jù)流到內(nèi)存空間,最后通過輪詢或中斷的方式判斷傳輸?shù)臄?shù)據(jù)量是否滿足以太網(wǎng)包包含的鏡像大小信息,決定是否接收完成。這一過程通過使能多核導(dǎo)航器QMSS,CPPI通道,SGMII高速口以及以太網(wǎng)收發(fā)線程完成。接收完成的多核鏡像文件暫存在DSP DDR3內(nèi)存,等待寫入FLASH。

(2)NAND FLASH燒寫模塊

NAND FLASH的讀寫、擦除均是以塊為單位進(jìn)行的,因此存放在DSP內(nèi)存的鏡像數(shù)據(jù)要進(jìn)行分塊處理,然后根據(jù)以太網(wǎng)包中包含的鏡像文件存儲區(qū)域信息通過NAND FLASH的驅(qū)動程序?qū)懭氲紽LASH中相應(yīng)的代碼存儲區(qū)域。

4.2多核鏡像加載和引導(dǎo)設(shè)計

TI提供的NAND FLASH的二級引導(dǎo)代碼只可進(jìn)行單核應(yīng)用程序的加載,需要對其進(jìn)行擴展設(shè)計,完成多核程序的加載和引導(dǎo)功能。多核鏡像的加載流程如圖6所示,具體過程如下:

圖6 多核鏡像加載引導(dǎo)流程圖

(1)程序升級選擇階段

DSP加電啟動時需要用戶選擇正常加載多核鏡像文件或燒寫程序鏡像文件,該指令通過更改IBL中的程序加入UART串口輸入功能完成。

(2)多核程序加載階段

將多核鏡像文件各自存放在FLASH中的地址參數(shù)提供給IBL的NAND Boot函數(shù)后使其循環(huán)運行,該函數(shù)通過查詢FLASH內(nèi)OUT文件的標(biāo)識,開始以代碼段的模式加載到DSP相應(yīng)內(nèi)存中,完成FLASH中用戶代碼到DSP的加載。

(3)多核并行自啟動預(yù)處理階段

多核自啟動需要從BOOT_MAGIC地址內(nèi)獲取入口地址(_c_int00)方能開始運行。在IBL啟動程序中,預(yù)先將各個核的入口地址寫入多核處理器各自L2SDRAM內(nèi)存上的BOOT_MAGIC全局地址內(nèi)(0x1*8ffffc,‘*'為內(nèi)核標(biāo)號)[8],IBL運行完之后跳轉(zhuǎn)到主核(CORE0)入口地址開始運行。主核通過IPC中斷進(jìn)行核間觸發(fā),從核(CORE1~CORE3)被激活,從各自BOOT_MAGIC內(nèi)獲取入口地址開始執(zhí)行應(yīng)用程序,從而實現(xiàn)多核應(yīng)用程序并行工作。

需要注意的是,從核存儲在DSP L2SDRAM的代碼和數(shù)據(jù)需要在存儲映射文件中設(shè)置為全局地址,否則CPU將會認(rèn)為該地址為主核CORE0的L2局部地址運行,導(dǎo)致程序紊亂。

5 測試與驗證

DSP設(shè)置為NAND BOOT模式啟動后,串口打印如圖7所示。wait等待接受指令,輸入升級指令后,接收到以太網(wǎng)客戶端發(fā)送的多核用戶OUT文件,并自動完成多核鏡像的燒寫,說明鏡像傳輸和FLASH燒寫功能正常。

重啟DSP后,串口打印如圖8所示,IBL等待超時后自動加載多核用戶程序,各核均有串口輸出,證明多核自啟引導(dǎo)運行正常。

圖7 鏡像傳輸和燒寫驗證

圖8 多核自啟引導(dǎo)驗證

6 結(jié)束語

通過嵌入帶有以太網(wǎng)傳輸模塊的DSP升級程序和IBL的擴展設(shè)計,實現(xiàn)了通過千兆以太網(wǎng)接口進(jìn)行多核應(yīng)用程序的高效快速升級更新和自啟引導(dǎo),對批量DSP設(shè)備的生產(chǎn)制造和軟件升級維護具有一定的參考價值。

[1]Texas Instruments Incorporated.TMS320C6670 multicore fixed and floating-point system on chip user guide[EB/OL].Http://www.ti.com.cn.2012.

[2]Texas Instruments Incorporated.KeyStone Architecture GbE Swith subsystem[EB/OL].Http://www.ti.com.cn.2012.

[3]Texas Instruments Incorporated.KeyStone Architecture Bootloader[EB/OL].Http://www.ti.com.cn.2012.

[4]Texas Instruments Incorporated.KeyStone Architecture Universal Asynchronous Receiver_Transmitter(UART)[EB/OL].Http://www.ti.com.cn.2012.

[5]Texas Instruments Incorporated.KeyStone Architecture EMIF16[EB/OL].Http://www.ti.com.cn.2012.

[6]Texas Instruments Incorporated.KeyStone Architecture I2C[EB/OL].Http://www.ti.com.cn.2012.

[7]左顥睿,劉永清,張傲華,等.基于以太網(wǎng)的DSP遠(yuǎn)程加載技術(shù)研究[J].單片機與嵌入式系統(tǒng)應(yīng)用,2012(5):24-26.Zuo Hao-rui,Liu Yong-qing,Zhang Ao-h(huán)ua,et al.Remote Loading Technology Research of DSP Based on Ethernet[J].Microcontrollers&Embedded Systems,2012(5):24-26.

[8]劉章文,劉七華,謝川林,等.基于TMS320C6678的多核DSP上電加載技術(shù)[J].現(xiàn)代電子技術(shù),2013,36(18):111-114.Liu Zhangwen,Liu Qihua,Xie Chuanlin,et al.Multi core DSP BootLoad technology based on TMS320C6678[J].Modern Electronics Technique,2013,36(18):111-114.

Bootloader of Embedded Muti-core DSP Based on Ethernet

Ou Bin,Li Jingchao,Gao Xia,Xu Binbin
(Chongqing Jinmei Communication CO.,Ltd.,Chongqing 400030,China)

A series of TMS320C66xx DSPs from TI,based on KeyStone,are widely used in fields of image processing,signal processing and speech processing.The multi-core DSP boot load affects operation between kernel code,sync parallel and independently run in offline mode.In this paper,combined with high-speed Ethernet interface transmission characteristics and high capacity NAND FLASH nonvolatile storage advantage,the multi-core image files from Ethernet are

by embedding UDP protocol to FLASH programmer procedures,and the multi-core image files are loaded from the FLASH to the kernel by improving IBL boot code.The proof on the TMS320C6670 DSP platform shows that it enables efficient transmission of multi-core code to FLASH and provides a new thinking for embedded DSP device in factory manufacture and upgrade field.

Embedded;Muti-core;Bootload;Ethernet;DSP;NAND FLASH

10.3969/j.issn.1002-2279.2016.05.021

TN964

A

1002-2279(2016)05-0089-03

歐斌(1982-),男,四川省德陽市人,碩士研究生,主研方向:無線通信。

2016-01-07

猜你喜歡
鏡像文件鏡像以太網(wǎng)
基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計與實現(xiàn)
鏡像
鏡像
小康(2018年23期)2018-08-23 06:18:52
沒光驅(qū)不要緊 裝個免費虛擬的
用RamOS降低公用機的維護工作量
談實時以太網(wǎng)EtherCAT技術(shù)在變電站自動化中的應(yīng)用
電子制作(2017年24期)2017-02-02 07:14:44
一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計
淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
Win7升級Win10教程
電腦迷(2015年9期)2015-05-30 22:08:35
鏡像
小康(2015年4期)2015-03-31 14:57:40
博乐市| 广昌县| 桂平市| 浑源县| 浪卡子县| 高碑店市| 阿合奇县| 探索| 利川市| 海城市| 海口市| 繁峙县| 胶南市| 萨嘎县| 宜君县| 霸州市| 邵武市| 郎溪县| 潍坊市| 竹溪县| 延津县| 河池市| 美姑县| 陇川县| 衡阳市| 湖州市| 固安县| 砚山县| 舞阳县| 五指山市| 潍坊市| 嘉义市| 沂源县| 策勒县| 南乐县| 康马县| 顺义区| 潮安县| 志丹县| 资阳市| 湛江市|