《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于以太網的DSP遠程加載技術研究
基于以太網的DSP遠程加載技術研究
來源:《單片機與嵌入式系統應用》
左顥睿 劉永清 張傲華 韓國榮
摘要: DSP具有高速的計算能力與豐富的外設接口,被廣泛應用于嵌入式系統中。很多基于DSP的嵌入式系統被配置于苛刻的環境或偏遠地區,當需要軟件升級或程序更新時,人員無法進入或很難到達相應環境中,必須采用遠程加載技術來完成升級和更新。以太網具有傳輸距離遠、傳輸速率高的優點,是遠程數據傳輸的良好載體,目前主流的DSP芯片均可擴展以太網接口。本文結合以太網技術,以TI公司的DSP芯片為例對DSP遠程加載技術進行了研究。
Abstract:
Key words :

引言

DSP具有高速的計算能力與豐富的外設接口,被廣泛應用于嵌入式系統中。很多基于DSP的嵌入式系統被配置于苛刻的環境或偏遠地區,當需要軟件升級或程序更新時,人員無法進入或很難到達相應環境中,必須采用遠程加載技術來完成升級和更新。以太網具有傳輸距離遠、傳輸速率高的優點,是遠程數據傳輸的良好載體,目前主流的DSP芯片均可擴展以太網接口。本文結合以太網技術,以TI公司的DSP芯片為例對DSP遠程加載技術進行了研究。

DSP遠程加載的核心思想包括3個方面:

① DSP能夠收發遠程控制端數據;

② DSP能夠更新存放用戶程序的Flash區域;

③ DSP能夠獲取用戶配置選擇是否需要遠程加載。

基于上述3點,本文對DSP網絡接口技術、DSP與Flash接口及驅動技術、遠程加載配置技術進行了研究。

1 遠程加載的硬件基礎

1.1 DSP以太網接口技術

(1) 通過專用接口芯片擴展以太網接口

在TI公司早期的DSP中,如C5000、C6201、C6701等系列,芯片內部沒有集成專用的以太網控制器,無法直接與以太網進行通信,必須通過DSP的EMIF(外部存儲接口)與專用接口芯片連接來擴展以太網。這些專用芯片有CP2200、MC9S12NE6等。圖1給出了TMS320C5410與CP2200的接口示意圖[1]。

圖1 TMS320C5410與CP2200的接口示意圖

(2) 通過片內專用接口擴展以太網接口

隨著DSP制造工藝的提高,很多DSP芯片內部已經集成了以太網控制器,如DM642、C6455、C6416等,只需要外接物理層芯片(如RTL8019AS、82540EM等)即可擴展以太網接口。圖2給出了DSP通過片內專用接口直接擴展以太網示意圖。

圖2 DSP通過片內專用接口直接擴展以太網示意圖

1.2 可編程Flash芯片

TI公司的高速DSP(C5000、C6000系列)均沒有片上非易失性存儲器,必須將程序保存在外部非易失性存儲器中。通常采用可編程Flash存儲器對DSP程序進行存儲和加載,常用的Flash芯片有Intel公司的E28Fxx系列和AMD公司的AM29xx系列。圖3給出了DSP與Flash的典型接口電路[2]。

圖3 DSP與Flash的典型接口電路

1.3 遠程運行模式配置

DSP在上電后,需要明確知道當前是處于程序更新模式還是處于程序正常運行模式,這就需要采用外部硬件控制電路,對DSP的加載進行配置,

圖4 遠程DSP配置加載模式電路示例

圖4給出了一種遠程DSP配置加載模式電路的示例。

用戶通過遠程配置DSP的GPIO接口為高電平或低電平來告知加載程序是否執行遠程加載,在實際應用中具體實現可由用戶自己定義。

2 遠程加載的軟件基礎

2.1 NDK簡介

在DSP上直接編寫網絡接口程序非常復雜,為了屏蔽底層細節,使用戶可以將資源重點投入到應用程序的開發中,TI公司提供了網絡開發套件NDK( Network Developer’s Kit)。NDK提供了從DSP底層驅動到TCP/IP" target="_blank">IP協議的整體解決方案,支持常規的TCP/IP服務,是實現DSP以太網擴展的重要支撐工具。圖5給出了NDK的系統結構圖[3]。

圖5 NDK系統結構圖

2.2 Flash驅動程序

Flash芯片需要專用的指令對其進行操作,主要指令包括擦除、讀、寫、復位等,根據這些操作指令就可以設計Flash驅動程序,圖6給出了C6000系列的DSP對AM29F040進行編程的流程[4]。其中EMIF_Base_Addr為DSP外部存儲接口地址;Prog_addr為目標Flash編程地址;Prog_data為目標Flash編程數據。

圖6 Flash編程流程

3 基于網絡的遠程加載方法

3.1 遠程加載流程

圖7給出了典型的DSP加載方式以及程序在Flash中的存儲方式,二次加載程序直接將用戶程序加載到DSP中,無需額外處理[5]。

圖7 典型的DSP加載方式

采用圖7中所示方式無法實現遠程加載,可以對典型加載方式進行擴展,增加網絡接口功能,更改Flash存儲方式,從而實現遠程加載。DSP遠程加載方式如圖8所示。

圖8 DSP遠程加載方式

圖8所示的遠程加載步驟如下:

① 上電后DSP運行二次加載程序;

② DSP讀取外部控制電路狀態,判斷是否處于程序更新模式;

③ 如果是更新模式,跳轉到第4步,否則跳轉到第5步;

④ DSP從Flash中加載網絡接口程序到DSP片內并運行,通過網絡接口接收遠程數據,將接收到的數據燒寫到用戶程序區域完成軟件的更新。

⑤ DSP加載Flash中用戶程序到DSP片內,正常運行程序。

為了配合遠程加載流程,需要對圖7所示的Flash存儲結構進行擴展,在圖8中同時給出了用于遠程加載的Flash存儲結構。與圖7中的典型Flash存儲結構相比,遠程加載的Flash存儲結構在二次加載程序和用戶程序之間增加了網絡加載程序,該區域僅對二次加載程序可見,用于存放遠程加載程序。當需要遠程加載時,二次加載程序就調用網絡加載程序,采用DSP遠程加載方式;當無需遠程加載時,二次加載程序直接調用用戶程序,采用典型的DSP加載方式。

在設計存儲結構時需要注意兩點:網絡加載程序是不能被改變的,必須使用固定大小的存儲區域;網絡加載程序區域應放在用戶程序區域前,便于用戶程序的擴展。

3.2 網絡加載程序設計

網絡加載程序運行流程是遠程加載的核心部分,如圖9所示。

圖9 網絡加載程序運行流程

網絡加載程序運行流程主要包括:

① 加載NDK網絡硬件驅動,配置DSP片上硬件以太網控制器,包括網絡速率、單雙工傳輸方式以及MAC地址配置等。

② 啟動TCP/IP服務。實現配置DSP的網絡IP地址、綁定TCP通信端口、開始接收遠程數據等功能。

③ 接收遠程數據。從以太網接收遠程數據并進行數據正確性和完整性校驗,將遠程數據存入到數據緩存區中,當緩存區滿后啟動Flash更新程序。

④ Flash程序更新。Flash首先擦除當前用戶區域,然后將數據緩存區中的數據燒寫到用戶區域中。

⑤ 判斷遠程數據是否接收完成,如果未完成,跳轉到步驟③;如果完成,進行步驟⑥。

⑥ 完成數據更新后,跳轉到二次加載程序,重新加載用戶程序。

需要注意的是,當網絡加載程序完成用戶程序更新后,遠程控制端必須及時將DSP加載模式切換到直接加載用戶程序模式。

結語

本文研究了基于網絡的DSP遠程加載技術,介紹了遠程加載需要的硬件基礎和軟件基礎,并給出了典型設計;然后從遠程加載流程、Flash存儲模型設計以及網絡接口流程設計三個方面研究了具體的遠程加載方法。本文提出的方法不僅能夠解決基于DSP的遠程嵌入式系統的加載問題,同時為基于其他處理器的遠程加載提供了思路,具有較好的工程價值和廣闊的應用前景。

參考文獻

[1] 左顥睿. TMS320C54x與CP2200的接口設計[J].單片機與嵌入式系統應用,2007(9).

[2] TI .TMS320C6000 EMIF to External Flash Memory[EB/OL].[201112].http://www.ti.com/lit/an/spra568a/ spra568a.pdf.

[3] TI.TMS320C6000 TCP/IP Network Developers KitUsers Guide[EB/OL].[201112].http:// www.ti.com/ lit/ug/spru523g/spru523g.pdf.

[4] AMD. Am29F040 Datasheet[EB/OL].[201112].http://www.spansion.com/Support/Datasheets/AM29F040B_EOL_21445e8.pdf.

[5] 左顥睿. C6000系列DSP Flash二次加載技術研究[J].單片機與嵌入式系統應用,2011(7).

左顥睿(工程師),主要研究領域為并行計算和嵌入式系統設計。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美日韩在线观看一区二区| 国产综合久久久久久| 午夜伦欧美伦电影理论片| 亚洲区免费影片| 亚洲国产精品精华液2区45| 亚洲在线一区二区三区| 一本到高清视频免费精品| 亚洲精品人人| 91久久亚洲| 亚洲国产精品ⅴa在线观看| 狠狠狠色丁香婷婷综合久久五月 | 亚洲欧洲美洲综合色网| 亚洲高清资源综合久久精品| 久久99在线观看| 久久精品网址| 亚洲国产成人一区| 亚洲欧洲免费视频| 亚洲精品乱码久久久久久按摩观| 亚洲精华国产欧美| 亚洲理伦在线| 中文精品视频| 亚洲欧美综合网| 久久精品123| 免费观看成人网| 欧美日本韩国一区二区三区| 欧美日韩午夜精品| 欧美午夜不卡视频| 国产精品私房写真福利视频| 国产精品一区二区久久国产| 国产欧美一区二区三区国产幕精品| 国产日韩欧美夫妻视频在线观看| 国产综合久久久久久| 在线高清一区| 亚洲精品欧美日韩| 一区二区欧美在线| 亚洲欧美日韩一区| 久久国产精品久久久久久| 亚洲人永久免费| 一区二区av| 欧美在线免费一级片| 久久视频在线看| 欧美极品一区| 国产精一区二区三区| 狠狠干综合网| 亚洲伦理在线观看| 亚洲欧美日韩在线综合| 亚洲风情在线资源站| aa级大片欧美| 欧美亚洲色图校园春色| 快播亚洲色图| 欧美午夜精品久久久久久浪潮| 国产欧美视频一区二区三区| 欲色影视综合吧| 亚洲作爱视频| 久久精品国产96久久久香蕉 | 亚洲三级电影全部在线观看高清| 在线性视频日韩欧美| 欧美在线首页| 欧美精品午夜| 国产日韩欧美不卡| 亚洲欧洲综合| 欧美一区二区三区精品| 一本色道久久综合狠狠躁的推荐| 欧美有码在线观看视频| 欧美极品aⅴ影院| 国产香蕉97碰碰久久人人| 亚洲精品视频在线播放| 欧美一级黄色录像| 一区二区三区国产精华| 久久久亚洲精品一区二区三区| 欧美日韩蜜桃| 一区在线观看视频| 亚洲一区二区免费| 日韩亚洲欧美中文三级| 久久精品日产第一区二区三区| 欧美精品一区二区三区蜜桃 | 亚洲欧美成人综合| 亚洲精品国产系列| 欧美一区中文字幕| 欧美日韩视频在线观看一区二区三区| 国产一区二区三区网站| 一区二区欧美视频| 亚洲九九精品| 久久久噜噜噜久噜久久 | 亚洲影院免费观看| 欧美freesex8一10精品| 国产三区精品| 亚洲午夜一区二区三区| 亚洲精品在线一区二区| 久久久久久亚洲精品杨幂换脸| 国产精品久久久久久模特| 亚洲福利视频免费观看| 亚欧成人精品| 亚洲欧美日韩另类| 欧美日韩精品免费看| 亚洲国产精品传媒在线观看| 欧美在线综合| 欧美中在线观看| 国产精品成人午夜| 日韩午夜三级在线| 亚洲国产欧美另类丝袜| 欧美专区在线观看| 国产精品久久久久久久久久尿| 亚洲美女视频网| 亚洲欧洲综合| 欧美www在线| 在线免费观看视频一区| 久久精精品视频| 久久久999精品视频| 国产欧美综合一区二区三区| 亚洲主播在线播放| 亚洲一区二区三区精品视频| 欧美伦理在线观看| 亚洲日本久久| 99精品99| 欧美日韩综合精品| 日韩视频欧美视频| 一区二区三区日韩在线观看| 欧美日本国产精品| 亚洲人成人一区二区在线观看| 亚洲人成7777| 欧美国产专区| 亚洲欧洲精品天堂一级| 亚洲啪啪91| 欧美精品一区二区三区蜜臀| 亚洲国产精品一区二区第一页 | 亚洲精品视频在线看| 美女国内精品自产拍在线播放| 一区精品在线| 亚洲美女诱惑| 欧美日本三区| 一本久久a久久精品亚洲| 亚洲一区精品电影| 国产精品久久久久秋霞鲁丝| 亚洲一区视频在线| 久久激情五月激情| 狠狠狠色丁香婷婷综合激情| 亚洲国产欧美不卡在线观看| 欧美国产精品专区| 亚洲免费观看| 午夜精品久久久久久久99热浪潮| 国产精品日韩一区| 性伦欧美刺激片在线观看| 久久久久在线观看| 亚洲国产日韩在线| 亚洲午夜日本在线观看| 国产精品久久久久久亚洲调教 | 久久婷婷国产综合国色天香| 亚洲承认在线| 亚洲午夜免费福利视频| 国产精品网站在线观看| 久久国产66| 欧美精品福利视频| 一区二区三区成人| 欧美亚洲午夜视频在线观看| 韩国自拍一区| 99国产精品99久久久久久粉嫩| 国产精品白丝jk黑袜喷水| 亚洲欧美乱综合| 美女主播一区| 一区二区三区欧美日韩| 久久精品欧美| 亚洲精品视频一区| 久久成人18免费观看| 在线精品福利| 午夜精品99久久免费| 极品中文字幕一区| 亚洲视频狠狠| 韩曰欧美视频免费观看| 在线综合视频| 国内精品亚洲| 国产精品99久久久久久有的能看| 国产精品亚洲综合天堂夜夜| 亚洲国产欧美一区二区三区久久| 欧美少妇一区| 亚洲国产高清自拍| 欧美日韩一区三区| 久久精品日韩一区二区三区| 欧美视频在线观看免费| 久久精品夜夜夜夜久久| 欧美性做爰猛烈叫床潮| 亚洲国产成人在线播放| 国产精品女主播在线观看| 亚洲人成亚洲人成在线观看图片| 国产精品久久久久久久久久三级 | 日韩亚洲精品视频| 国产日韩欧美在线播放| 99国产精品私拍| 国产亚洲综合精品| 亚洲网在线观看| 在线观看一区| 欧美亚洲免费电影| 亚洲精品影视在线观看| 久久中文字幕导航| 亚洲一区二区三区在线播放| 欧美精品国产一区二区| 久久国产毛片| 国产精品一卡| 亚洲网站在线观看| 亚洲欧洲精品一区二区三区 |