999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于以太網的DSP網絡加載技術研究

2013-05-14 11:34:08沈發(fā)江
關鍵詞:程序系統(tǒng)

沈發(fā)江

(江蘇自動化研究所,江蘇 連云港 222006)

隨著以太網技術和DSP技術的迅猛發(fā)展,基于網絡的DSP設備已成為儀器儀表、工業(yè)控制和遠程測控的重要發(fā)展方向。在以DSP為核心的應用系統(tǒng)中,程序代碼的引導加載具有至關重要的作用。傳統(tǒng)的DSP程序加載是通過硬件仿真器來完成的,但在工程應用中,一旦系統(tǒng)組裝為成品后,再對系統(tǒng)進行軟件更新和維護時,傳統(tǒng)的加載方式就顯得十分不方便,而且該方法不能解決程序代碼的遠程加載問題。因此,需要一種更加靈活、高效的程序加載方式,而基于網絡的DSP軟件更新就成為一個新的熱點。

本文介紹了DSP程序加載的基本原理,設計了DSP加MicroBlaze軟處理器的系統(tǒng),并以TI公司的DSP為例,提出了一種基于以太網的DSP程序加載技術,利用網絡通信實現(xiàn)DSP的動態(tài)加載及DSP資源的遠程訪問,提高了軟件更新的效率及遠程訪問的便利性。

1 DSP程序網絡加載原理概述

要實現(xiàn)DSP程序的網絡加載,需要解決的關鍵技術有數(shù)據(jù)的網絡發(fā)送和接收,DSP的HPI主機接口控制,F(xiàn)lash存儲器的讀寫以及程序文件的網絡格式轉換。具體的實現(xiàn)過程為:首先上位機工具將編譯好的程序輸出文件進行網絡分包轉換,按照網絡包的格式將代碼傳送給板卡的主控制器,主控制器MicroBlaze接收到數(shù)據(jù)后通過DSP的HPI接口把程序寫到內存中,完成程序代碼的引導加載。同時,也可以把接收到的網絡數(shù)據(jù)通過主控制器MicroBlaze寫入到外部Flash存儲器,再次上電后完成程序的加載。

要實現(xiàn)網絡數(shù)據(jù)的發(fā)送和接收,必須要使系統(tǒng)能夠實現(xiàn)網絡功能,按照一定的協(xié)議進行網絡數(shù)據(jù)包的組織。目前,應用最廣泛的網絡協(xié)議是TCP/IP協(xié)議,但由于控制器MicroBlaze自身資源有限,無法實現(xiàn)標準的TCP/IP協(xié)議,再加上該系統(tǒng)網絡環(huán)境較簡單,因此本設計采用效率較高且協(xié)議簡單的UDP協(xié)議來發(fā)送網絡數(shù)據(jù)。將UDP協(xié)議嵌入到主控制器MicroBlaze中,即可實現(xiàn)系統(tǒng)的網絡接口功能。

HPI接口是TI公司DSP留給外部主控制器訪問其資源的接口,通過HPI接口,外部主控制器能夠實現(xiàn)DSP程序的引導。具體過程為:當系統(tǒng)上電后,DSP的CPU處在復位狀態(tài),外設部分已工作正常,外部主控制器通過HPI接口訪問DSP的所有資源,當主控制器完成所有加載工作后,把CPU從復位狀態(tài)喚醒,開始從地址0處執(zhí)行程序。

通常DSP編譯器編譯后的程序文件一般都是COFF格式,它由多個數(shù)據(jù)段組成。其中.text通常包含可執(zhí)行代碼,.data通常包含已初始化的數(shù)據(jù),.bss通常為未初始化的數(shù)據(jù)保留空間。通過對COFF文件結構的分析,讀取DSP編譯產生的.out文件,根據(jù)文件本身攜帶的信息,直接提取生成可供下載的二進制文件,再把二進制文件按照UDP協(xié)議分包后通過網絡發(fā)送到系統(tǒng)的主控制器,即可完成DSP的網絡加載。

2 系統(tǒng)設計與實現(xiàn)

2.1 硬件設計

系統(tǒng)采用基于DSP的主從式雙CPU,如圖1所示。選用Xilinx公司的V5系列FPGA作為系統(tǒng)的控制單元,內部運行嵌入式MicroBlaze處理器用來作為主機,負責網絡數(shù)據(jù)的接收、解析、HPI接口的控制、Flash存儲器的讀寫等工作。TMS320C6713主要完成和外部信號的接口,完成信號處理算法的實現(xiàn),可以通過網絡對其算法程序進行不斷的修改,以達到最佳的信號處理效果。從圖1可以看出,DSP與FPGA之間通過 HPI接口連接,DSP還負責模擬信號的采集和輸出。

圖1 基于DSP的主從式系統(tǒng)框圖

2.1.1 網絡接口設計

實現(xiàn)系統(tǒng)程序的網絡加載需要解決的關鍵技術之一是模塊的網絡接口設計,使該模塊能夠接入網絡。在本系統(tǒng)中,為了提高靈活性并減少成本,網絡接口的設計直接通過FPGA對物理層器件的控制實現(xiàn),然后由MicroBlaze軟核處理器完成上層協(xié)議的封裝和解析,這樣提供了FPGA對網絡的靈活控制,通過修改軟核處理器的程序即可完成不同協(xié)議的封裝。

FPGA通過內部總線接收網絡數(shù)據(jù)的邏輯框圖如圖2所示。FPGA通過內部總線接收網絡數(shù)據(jù)時,數(shù)據(jù)從物理器件 MII接口的 RX_D[0:3]進入 FPGA,根據(jù) MII的接收時序,檢測到網絡數(shù)據(jù)幀中的幀前序和幀起始符后,觸發(fā)地址產生邏輯,將接收到的 RX_D[0:3]和 RX_EN信號轉換為4 bit的數(shù)據(jù)寫入到2 KB的雙端口RAM中。雙端口RAM是在FPGA內部生成的,其A端口為4 bit的數(shù)據(jù)線,B端口為32 bit的數(shù)據(jù)線,用于FPGA內MII接收與HPI接口間進行數(shù)據(jù)轉換。從雙端口RAM端口A寫入數(shù)據(jù),由B端口讀出,經過轉換后與DSP的HPI接口相連。在對DSP的HPI接口進行配置后,網絡接收到的數(shù)據(jù)在FPGA軟核處理器的控制下可以寫入到DSP的內存中,從而實現(xiàn)網絡數(shù)據(jù)的接收。

圖2 網絡接口和HPI接口框圖

2.1.2 HPI接口設計

TMS320C6713的HPI端口為一個16 bit寬的并行端口,此接口為主機與DSP的數(shù)據(jù)交換提供了最方便有效的方案。主機掌管著該端口的主控權,可通過HPI接口直接訪問DSP的存儲空間和外圍設備。主機對HPI內存的訪問通過 HPIC(HPI控制寄存器)、HPIA(HPI地址寄存器)和HPID(HPI數(shù)據(jù)寄存器)3個專用的DSP寄存器來實現(xiàn)。主機可以對這3個寄存器進行讀寫,而DSP只能對HPIC進行訪問。HPID中存放的是主機從存儲器中讀取的數(shù)據(jù),或者是主機向DSP存儲空間寫入的數(shù)據(jù)。HPIA中存放的是主機訪問的地址,HPIC中存放的是控制信息。

在FPGA中做一個HPI的控制核,可以產生對HPI接口的控制時序,包括地址線和讀寫信號線等控制邏輯,在軟核處理器MicroBlaze上編寫HPI接口的相應驅動程序,包括HPI接口的讀、寫操作及復位操作等函數(shù)。用戶通過調用某個HPI驅動函數(shù),驅動函數(shù)轉化為底層的時序控制邏輯,就可以完成對HPI接口的訪問。

2.2 軟件設計

硬件是基礎,軟件是核心,硬件必須搭配穩(wěn)定、高效的軟件才能組成一個完整的系統(tǒng)。根據(jù)硬件的層次結構,加載系統(tǒng)的軟件主要完成以下功能部分的設計:上位機控制程序、上位機網口程序、FPGA軟核處理器網絡驅動程序以及軟核處理器服務程序。

2.2.1 上位機軟件設計

上位機軟件是用戶實現(xiàn)DSP網絡加載的平臺,采用C++Builder 6.0設計完成。該開發(fā)工具內部集成了UDP協(xié)議的通信控件,只要再經過簡單的封裝就可以形成UDP協(xié)議的網絡驅動程序,不需要底層進行開發(fā)。上位機控制程序對外采用MDI界面,主要實現(xiàn)程序的加載、燒錄以及內存的查看等功能。

2.2.2 底層軟件設計

底層驅動軟件的核心是網絡接口的驅動程序。考慮到FPGA實現(xiàn)網絡協(xié)議的簡單性和實時性的要求,選用UDP協(xié)議作為傳輸協(xié)議,網絡數(shù)據(jù)封裝必然要滿足UDP協(xié)議的幀格式。數(shù)據(jù)幀中包含了7 B的幀前序和1 B的幀起始符。完整的UDP協(xié)議的幀結構如表1所示。由表可知,UDP協(xié)議是在IP協(xié)議和MAC幀格式的基礎上封裝的。

表1 以太網UDP幀結構表

網絡接口的驅動程序就是按照表1的數(shù)據(jù)包組成結構將接收到的數(shù)據(jù)進行解析,分解出數(shù)據(jù)。驅動程序包括UDP數(shù)據(jù)的發(fā)送、接收和ARP數(shù)據(jù)的回復等。

2.3 網絡加載流程

在實現(xiàn)了網絡數(shù)據(jù)的收、發(fā)以及HPI接口的控制之后,就可以實現(xiàn)DSP程序的網絡加載。網絡加載的流程圖如圖3所示,主要包括加載網絡硬件的驅動、啟動UDP服務、接收網絡數(shù)據(jù)、向DSP內存地址寫入數(shù)據(jù)、判斷數(shù)據(jù)是否接收完成、數(shù)據(jù)接收完成后喚醒DSP以及開始執(zhí)行下載的程序代碼等過程。

圖3 網絡加載數(shù)據(jù)流程框圖

3 系統(tǒng)設計中的關鍵技術

在系統(tǒng)設計中,主要涉及:網絡接口和HPI接口兩個接口,對這兩個接口的訪問控制非常重要。此外,HPI程序加載代碼的生成也非常關鍵。

3.1 網絡接口的實現(xiàn)

網絡接口采用FPGA編寫IP核的方式來實現(xiàn),主要是MAC層控制器的設計,其既可以集成于網絡終端設備中實現(xiàn)網絡接入,同時又是開發(fā)網橋、交換機等網絡互聯(lián)的設備。整個MAC分為10個模塊,其構成圖如圖4所示。每個模塊都完成相對獨立的一系列功能,各模塊的功能如下。

(1)PHY接口模塊。根據(jù)PHY的工作模式,將MII接口不同的數(shù)據(jù)位寬進行轉換,從而提供給上層發(fā)送模塊和接收模塊統(tǒng)一的位寬。

(2)發(fā)送模塊。其主要功能是按照CSAM機制完成信道接入控制,以及將上層的待發(fā)送數(shù)據(jù)封裝成以太網幀的格式,為其添加前導碼、幀起始定界符、PAD和CRC校驗字段并發(fā)出。

(3)接收模塊。進行單播/組播/廣播幀的過濾,進行CRC校驗,濾除幀碎片,把合法的幀傳輸至上層,并在接收結束后向上層報告幀接收的狀態(tài)。

(4)流量控制模塊。完成全雙工下流量控制的功能。

(5)發(fā)送緩存/接收緩存。實現(xiàn)對發(fā)送/接收幀緩存的管理。

(6)AHB總線接口。它為外部總線接口,完成與MicroBlaze軟核及其他AHB接口單元的通信。

(7)MII管理模塊。完成對PHY工作模式的監(jiān)控和設置。

(8)時鐘管理模塊。其產生不同工作模式下各個模塊的工作時鐘和時鐘使能信號。

(9)寄存器和中斷模塊。負責系統(tǒng)模式配置及中斷管理。

圖4 網絡接口控制器實現(xiàn)框圖

3.2 HPI接口的訪問控制

DSP引導配置引腳 HD[4:3]決定了 TMS320C6713的引導加載模式,將 DSP的 HPI接口引腳 HD[4:3]通過下拉電阻接地,即選擇HPI加載。HPI接口主要信號有HD[15:0],并行雙向數(shù)據(jù)地址共用總線,主要傳輸控制寄存器的值、初始化訪問地址及數(shù)據(jù);HCNTL[1:0]主要控制當前訪問的是哪一個寄存器,當控制線不同譯碼時可以訪問不同的寄存器;HHWIL信號用于區(qū)分數(shù)據(jù)線上傳輸?shù)氖菙?shù)據(jù)的高 16 bit還是低 16 bit;HR/W信號用于讀/寫選擇,高電平表示主機讀,低電平表示主機寫;HRDY信號用于表明HPI是否已經準備好傳輸數(shù)據(jù),其作用是在接口時序上插入等待周期;HINT信號表示向主機發(fā)出的中斷,當DSP需要和主機通信時,將該位置1,主機就會響應中斷。根據(jù)上述的信號功能,MicroBlaze處理器的局部總線和HPI的數(shù)據(jù)總線相連,MicroBlaze處理器的3 bit地址線和HPI接口的控制線相連,MicroBlaze處理器映射的控制寄存器的控制位連接到片選信號。通過上述信號線的物理連接,在軟件訪問具體的地址空間時就可以譯碼出HPI接口讀寫的一系列片選、控制信號,完成對HPI接口的訪問。

3.3 HPI程序加載代碼生成

在CCS開發(fā)環(huán)境下生成的目標文件是“*.out”,即通用目標文件格式(COFF)。該文件可以在CCS開發(fā)環(huán)境下通過仿真器下載到DSP目標板中運行調試,但代碼文件并不是DSP中實際運行的程序代碼,需要Hex工具進行轉換,然后自編程序將可執(zhí)行的程序代碼提取處理,可執(zhí)行的程序代碼作為數(shù)據(jù)段封裝成幀,通過以太網加載到TMS320C6713中。由于HPI引導完成后,DSP是從地址0開始執(zhí)行的,而DSP程序的入口是c_int00,因此要在地址0處添加一條跳轉指令到程序入口。在編程時要特別注意需將中斷代碼段放在存儲空間的0000H~01FFH。

本文提出了一種基于以太網的DSP程序加載技術,該技術在多DSP系統(tǒng)的程序加載及遠程控制系統(tǒng)的軟件更新等工程應用領域具有獨特的優(yōu)越性和較好的應用前景。該方法已經在某DSP信號處理系統(tǒng)中得到應用。實際測試表明,該加載技術靈活可靠,完全滿足現(xiàn)場調試的需要。

[1]Texas Instruments.TMS320C6000 DSP host port interface reference guide[Z].2006.

[2]左幜睿,劉永清,張傲華,等.基于以太網的 DSP遠程加載技術研究 [J].單片機與嵌入式系統(tǒng)應用,2012(5):24-26.

[3]夏軍營,喬純捷,王剛,等.基于以太網接口的多 DSP監(jiān)控技術研究[J].計算機測量與控制,2007,15(7):913-915.

[4]張曉亮.基于SOPC以太網技術的研究與實現(xiàn)[D].大連:大連理工大學,2007.

[5]江華.基于TigerSHARC的可配置DSP系統(tǒng)動態(tài)加載技術[D].西安:西安電子科技大學,2006.

猜你喜歡
程序系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
半沸制皂系統(tǒng)(下)
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
主站蜘蛛池模板: 亚洲一区波多野结衣二区三区| 777午夜精品电影免费看| 欧美日韩激情| 99爱视频精品免视看| 国产精品区网红主播在线观看| 国产精品无码影视久久久久久久| 欧美国产视频| 欧美激情视频一区| 精品一区二区三区自慰喷水| 中文字幕资源站| av一区二区三区高清久久| 欧美综合区自拍亚洲综合天堂| 国产精品jizz在线观看软件| 成人小视频在线观看免费| 久久96热在精品国产高清| 欧美日本在线一区二区三区| 国产自无码视频在线观看| 亚州AV秘 一区二区三区| 亚洲AⅤ无码国产精品| 中国一级特黄视频| 亚洲另类色| jizz国产在线| 色婷婷亚洲十月十月色天| 亚洲最猛黑人xxxx黑人猛交| 精品丝袜美腿国产一区| 日韩在线成年视频人网站观看| 婷婷五月在线| 九九视频在线免费观看| 日韩午夜福利在线观看| 手机永久AV在线播放| 日韩A∨精品日韩精品无码| 人人看人人鲁狠狠高清| 亚洲第一成人在线| 色综合五月婷婷| 免费人成黄页在线观看国产| 无码电影在线观看| 亚洲三级视频在线观看| 成人韩免费网站| 国产精品视频免费网站| 国产中文一区a级毛片视频 | 99久久精品美女高潮喷水| 欧美中文字幕一区| 国产综合精品日本亚洲777| 青青久视频| 99久久免费精品特色大片| 亚洲色图狠狠干| 欧美a级完整在线观看| 亚洲精品卡2卡3卡4卡5卡区| 精品国产自在在线在线观看| 亚洲三级色| 国产免费观看av大片的网站| 久久超级碰| 99尹人香蕉国产免费天天拍| 欧美午夜在线视频| 欧美特级AAAAAA视频免费观看| 99热最新网址| 国产AV无码专区亚洲精品网站| 青青操视频免费观看| a级高清毛片| 国产日韩欧美视频| 欧美专区日韩专区| 色综合久久久久8天国| 91成人试看福利体验区| 精品久久香蕉国产线看观看gif | 91久久国产综合精品女同我| 日本一本在线视频| 亚洲视频一区在线| 国产亚洲欧美另类一区二区| 成人午夜久久| 天堂岛国av无码免费无禁网站| 91精品久久久久久无码人妻| 91在线无码精品秘九色APP| 国内精品手机在线观看视频| 国产原创第一页在线观看| 91视频首页| 尤物国产在线| 亚洲精品无码不卡在线播放| 视频二区欧美| 91色综合综合热五月激情| 色综合久久综合网| 欧美日韩成人| 久久香蕉欧美精品|