www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀] 摘要:為了實(shí)現(xiàn)DSP與外圍設(shè)備進(jìn)行以太網(wǎng)數(shù)據(jù)通信,采用了一種基于網(wǎng)絡(luò)控制芯片DM9000A的DSP以太網(wǎng)接口實(shí)現(xiàn)方式。它以TI公司的DSP處理器TMS320F28335和DM9000A網(wǎng)絡(luò)芯片為硬件平臺,通過DSP總線控制DM9000A內(nèi)部寄存器

 摘要:為了實(shí)現(xiàn)DSP與外圍設(shè)備進(jìn)行以太網(wǎng)數(shù)據(jù)通信,采用了一種基于網(wǎng)絡(luò)控制芯片DM9000A的DSP以太網(wǎng)接口實(shí)現(xiàn)方式。它以TI公司的DSP處理器TMS320F28335和DM9000A網(wǎng)絡(luò)芯片為硬件平臺,通過DSP總線控制DM9000A內(nèi)部寄存器,完成DM9000A的初始化以及底層以太網(wǎng)數(shù)據(jù)的發(fā)送接收,并對TCP/IP協(xié)議進(jìn)行裁剪,包括IP,ARP,ICMP,UDP和TCP等協(xié)議,實(shí)現(xiàn)了適用于DSP設(shè)備的以太網(wǎng)數(shù)據(jù)通信功能。

DSP(Digital Signal Processor)是一種獨(dú)特的微處理器,是以數(shù)字信號來處理大量信息的器件。它強(qiáng)大的數(shù)據(jù)處理能力和高運(yùn)行速度,是最值得稱道的兩大特色。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,在工業(yè)控制、智能儀器、智能家庭等領(lǐng)域,越來越多的DSP設(shè)備要求具有以太網(wǎng)通信功能,以便與外部網(wǎng)絡(luò)設(shè)備進(jìn)行數(shù)據(jù)通信。以太網(wǎng)控制芯片是以太網(wǎng)接口的核心器件,其性能是影響網(wǎng)絡(luò)性能的關(guān)鍵因素之一,如何正確使用網(wǎng)絡(luò)控制器是設(shè)計(jì)以太網(wǎng)接口的關(guān)鍵。本文采用處理器+以太網(wǎng)控制芯片+TCP/IP協(xié)議的DSP以太網(wǎng)接入方式,設(shè)計(jì)并實(shí)現(xiàn)了基于DSP的精簡TCP /IP協(xié)議棧,并固化在DSP內(nèi),無需操作系統(tǒng)也可運(yùn)行。

1 總體設(shè)計(jì)

本系統(tǒng)使用32位DSP處理器TMS320F28335和以太網(wǎng)控制芯片DM9000A為核心,DSP控制整個系統(tǒng)的運(yùn)行,DM9000A實(shí)現(xiàn)網(wǎng)絡(luò)傳輸?shù)牡讓庸δ?。并對TCP/IP協(xié)議棧自行裁剪,構(gòu)成了DSP的以太網(wǎng)接口,實(shí)現(xiàn)了網(wǎng)絡(luò)通信。其系統(tǒng)總體框圖如圖1所示。

2 系統(tǒng)硬件設(shè)計(jì)

2.1 DM9000A功能結(jié)構(gòu)

DM9000A是DAVICOM公司推出的一款高度集成、低成本的快速以太網(wǎng)控制器,實(shí)現(xiàn)以太網(wǎng)媒體介質(zhì)訪問層(MAC)和物理層(PHY)的功能。該芯片具有通用的處理器接口,片內(nèi)集成了10/100M自適應(yīng)的PHY,內(nèi)部含有16 KB SRAM用于接收/發(fā)送的FIFO緩存,3.3 V供電,并且支持IEEE 802.3以太網(wǎng)傳輸和8/16接口的兩種主機(jī)工作模式協(xié)議。功能結(jié)構(gòu)如圖2所示。

2.2 接口電路的連接

接口電路主要由DSP、以太網(wǎng)控制芯片DM9000A、隔離變壓器和RJ-45構(gòu)成。DSP控制整個系統(tǒng)的運(yùn)行,DM9000A實(shí)現(xiàn)以太網(wǎng)數(shù)據(jù)的底層傳輸。隔離變壓器的主要作用:其一,可以增強(qiáng)信號,使其傳輸距離更遠(yuǎn);其二,使芯片端與外部隔離,增強(qiáng)抗干擾能力,并對芯片端起保護(hù)作用;其三,當(dāng)接到不同電平(如有的PHY芯片是2.5 V,有的PHY芯片是3.3 V)的網(wǎng)口時(shí),不會對彼此設(shè)備造成影響。RJ-45接口可用于連接RJ-45接頭,適用于由雙絞線構(gòu)建的網(wǎng)絡(luò),這種是最常見的以太網(wǎng)接口。DM9000A采用16位接口模式,數(shù)據(jù)地址復(fù)用總線D0~D15與DSP總線XD0~XD15相連;DM9000A的寫信號引腳與DSP的XWE0n相連;讀信號引腳與DSP的讀引腳相連;DM9000A的片選信號引腳與DSP的CS0n相連;DM9000A的訪問類型引腳CMD與DSP的普通I/O口GPIO61相連,高電平訪問DM9000A的數(shù)據(jù)端口,低電平訪問地址端口;DM9000A的復(fù)位引腳與DSP的GPIO 60相連;DM9000A的物理層接口TX+,TX-,RX+,RX-通過隔離變壓器連接RJ-45至以太網(wǎng)。其以太網(wǎng)接口硬件連接如圖3所示。

3 系統(tǒng)軟件設(shè)計(jì)

網(wǎng)絡(luò)接口的軟件主要有DM9000A驅(qū)動程序設(shè)計(jì)和上層通信協(xié)議程序設(shè)計(jì)兩個部分。DM9000A驅(qū)動程序設(shè)計(jì)主要是通過TMS320F28335控制總線配置DM9000A內(nèi)部寄存器,完成對DM9000A初始化、以太網(wǎng)數(shù)據(jù)幀的發(fā)送和以太網(wǎng)數(shù)據(jù)幀的接收三部分。上層通信協(xié)議程序設(shè)計(jì)是對TCP/IP棧裁剪移植,主要完成對接收到的以太網(wǎng)數(shù)據(jù)幀進(jìn)行解析并處理,并把要發(fā)送的數(shù)據(jù)封裝成以太網(wǎng)數(shù)據(jù),然后發(fā)送。

3.1 DM9000A驅(qū)動程序設(shè)計(jì)

3.1.1 DM9000A初始化

DM9000A正常工作需要在上電后對內(nèi)部寄存器進(jìn)行初始化,具體流程如下:

(1)啟動PHY。設(shè)置通用寄存器GPR(1FH)的GEPIO0=0。

(2)進(jìn)行兩次軟啟動。設(shè)置網(wǎng)絡(luò)控制寄存器NCR(00H)的RST=1,10μs后RST=0,同樣的操作進(jìn)行兩次。

(3)選擇網(wǎng)絡(luò)模式。設(shè)置NCR的LBK=00,設(shè)置網(wǎng)絡(luò)工作模式為正常模式。

(4)清除發(fā)送標(biāo)志。設(shè)置網(wǎng)絡(luò)狀態(tài)寄存器NSR(01H)WAKEST=1,TX2END=1,TX1END=1。

(5)寫6 B的以太網(wǎng)節(jié)點(diǎn)地址到物理地址寄存器PAR(10H~15H)中。

(6)設(shè)置中斷屏蔽寄存器IMR(FFH)的PAR=1,使能指針自動跳回,當(dāng)SRAM讀/寫指針超過SRAM的大小時(shí),指針自動跳回起始位置;PRI=1,使能數(shù)據(jù)包接收中斷。

(7)設(shè)置接收控制寄存器RCR(05H)的WTDIS=1,看門狗定時(shí)禁止;DSI_LONG=1,丟棄長數(shù)據(jù)包;DIS_CRC=1丟棄CRC校驗(yàn)錯誤的數(shù)據(jù)包;RXEN=1,使能接收功能。

初始化流程如圖4所示。

完成上述初始化步驟后,DM9000A就處于正常工作狀態(tài),可以收發(fā)數(shù)據(jù)包。若有異常發(fā)生,就需要重復(fù)上述步驟,重啟DM9000A以使芯片恢復(fù)到正常狀態(tài)。

3.1.2 數(shù)據(jù)幀發(fā)送

DM9000A內(nèi)部有16 KB的SRAM作為接收/發(fā)送數(shù)據(jù)的緩存區(qū),其中前3 KB的空間,地址從0x0000H~0x0BFFH,用來緩存需要發(fā)送的數(shù)據(jù)。

數(shù)據(jù)發(fā)送的具體步驟如下:

(1)利用寫操作寄存器MWCMD(F8H),將需要發(fā)送的數(shù)據(jù)幀寫入DM9000A的發(fā)送緩存區(qū)。

(2)將數(shù)據(jù)幀長度寫入長度寄存器TXPLL(FCH)和TXPLH(FDH)。

(3)設(shè)置發(fā)送控制寄存器TCR(02H),TXREQ=1,數(shù)據(jù)幀開始發(fā)送。

(4)檢查網(wǎng)絡(luò)狀態(tài)寄存器NSR(01H)的TX2END和TX1END位,判斷此幀數(shù)據(jù)是否發(fā)送完。

數(shù)據(jù)幀發(fā)送流程圖如圖5所示。

3.1.3 數(shù)據(jù)幀接收

當(dāng)DM9000A數(shù)據(jù)接收使能后,DM9000A就會自動接收數(shù)據(jù)。DM9000A接收到的數(shù)據(jù)先保存在地址從0x0C00~0x3FFF的13 KB內(nèi)部SRAM緩存空間中,它是一個環(huán)形結(jié)構(gòu)。

利用寄存器MRCMDX(FOH)和寄存器MRCMD(F2H)可獲取緩存中的數(shù)據(jù)幀信息。接收到的數(shù)據(jù)幀格式如圖6所示。

其中第1個字節(jié)是接收數(shù)據(jù)標(biāo)志字節(jié),表征接收到數(shù)據(jù)幀是否有效。第2個字節(jié)是接收數(shù)據(jù)幀的狀態(tài)字節(jié),其中的內(nèi)容與接收狀態(tài)寄存器RSR中的內(nèi)容相同,可以用來判斷所接收的數(shù)據(jù)幀是否正常。第3,4個字節(jié)是接收到數(shù)據(jù)的長度字節(jié),其中低位在前,高位在后。從第5個字節(jié)開始的數(shù)據(jù)才是真正數(shù)據(jù)幀內(nèi)容。

數(shù)據(jù)接收過程如下:

(1)檢查中斷狀態(tài)寄存器:ISR(FEH),若PRS位為1,說明有新的數(shù)據(jù)幀接收,寫1清除PRS位;若為0,說明無數(shù)據(jù),直接返回。

(2)讀取第1個字節(jié),即接收數(shù)據(jù)標(biāo)志字節(jié)。如果該字節(jié)為01,則表示接收下來的是有效數(shù)據(jù)幀;如果該位為00則表示沒有數(shù)據(jù)到達(dá),或數(shù)據(jù)已經(jīng)接收完成;如果既不是01又不是00,則認(rèn)為有異常發(fā)生,這時(shí)就要將DM9000A芯片重啟以使芯片恢復(fù)到正常狀態(tài)。

(3)讀取第2個字節(jié),即接收狀態(tài)字節(jié)。根據(jù)接收狀態(tài)字節(jié)判斷所接收的數(shù)據(jù)幀是否正常。

(4)讀取第3,4字節(jié),即數(shù)據(jù)幀長度字節(jié)。

(5)讀取真正的數(shù)據(jù)幀內(nèi)容。

(6)根據(jù)獲取的長度信息,判斷是否讀完一幀。如果讀完,接著讀下一幀,直到遇到首字節(jié)是00H的幀,說明接收數(shù)據(jù)已讀完。

數(shù)據(jù)幀接收流程如圖7所示。

3.2 上層通信協(xié)議程序設(shè)計(jì)

TCP/IP協(xié)議模型可以分為四個層次,從下到上依次為:鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層。每一層都有不同的功能,低一層為高一層提供服務(wù)。

標(biāo)準(zhǔn)的TCP/IP協(xié)議棧對處理器的計(jì)算、存儲要求比較高,然而,DSP系統(tǒng)的計(jì)算資源和存儲資源通常是非常有限,在DSP中實(shí)現(xiàn)標(biāo)準(zhǔn)的TCP/IP協(xié)議棧將占用大量系統(tǒng)資源,不利于DSP其他方面的應(yīng)用,因此必須對它進(jìn)行簡化并優(yōu)化,盡可能做到代碼精簡,降低存儲開銷。本系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)了TCP/IP通信協(xié)議的必要部分,包括:ARP,IP,ICMP,TCP,UDP等協(xié)議。

ARP(地址解析協(xié)議)為IP地址到對應(yīng)的硬件地址之間提供動態(tài)映射。IP協(xié)議是TCP/IP協(xié)議的核心,所有的TCP,UDP,ICMP的數(shù)據(jù)都是以IP數(shù)據(jù)格式傳輸?shù)?。ICMP(網(wǎng)絡(luò)控制報(bào)文)是用來傳遞差錯報(bào)文以及其他需要注意的信息,有各種類型的ICMP報(bào)文,本文只用到ICMP的請求回顯(類型字段為8、代碼字段為0)。TCP提供一種面向連接的、可靠的字節(jié)流服務(wù),交換數(shù)據(jù)之前必須先建立一個TCP連接,即“三次握手”UDP是一個簡單的面向數(shù)據(jù)報(bào)的傳輸層協(xié)議,它把應(yīng)用程序傳給IP層的數(shù)據(jù)發(fā)送出去,但是并不保證他們能到達(dá)目的地。在鏈路層,當(dāng)DM9000A完成一個以太網(wǎng)數(shù)據(jù)幀接收后,將其讀入暫存數(shù)組,檢查以太網(wǎng)幀類型字段,該字段值為0x0806,表示數(shù)據(jù)幀為ARP幀;該字段的值為0x0800,表示數(shù)據(jù)幀為IP幀。接著,分別交由ARP協(xié)議處理模塊或IP協(xié)議處理模塊。編程時(shí)使用框架如下:

if(完成以太網(wǎng)數(shù)據(jù)幀接收)

{ if(以太網(wǎng)類型字段==0x0806)

{ARP處理模塊}

if(以太網(wǎng)類型字段==0x0800)

{IP處理模塊}

}

網(wǎng)絡(luò)層收到的為ARP數(shù)據(jù)報(bào),ARP根據(jù)操作字段(ARP請求為1,ARP應(yīng)答為2),或者發(fā)送ARP應(yīng)答或者更新ARP地址映射表。若為IP數(shù)據(jù)報(bào),IP協(xié)議處理模塊對數(shù)據(jù)包解析后,IP首部協(xié)議字段若為1就將數(shù)據(jù)交給ICMP協(xié)議處理模塊,若為6則交給TCP處理模塊,若為17則交給UDP處理模塊。傳輸層得到UDP的報(bào)文后,按照UDP協(xié)議中的端口,分別送給不同的應(yīng)用層序。若傳輸層得到的是TCP報(bào)文,則要根據(jù)TCP的狀態(tài)轉(zhuǎn)換圖進(jìn)行處理。在TCP或UDP的處理模塊中,根據(jù)目的端口號,分別將數(shù)據(jù)送往不同的用戶應(yīng)用程序。其工作流程如圖8所示。

4 結(jié)語

本文把高度集成、低成本的快速以太網(wǎng)控制器DM9000A與數(shù)據(jù)處理能力強(qiáng)大、高運(yùn)行速度的DSP(TMS320F28335)相結(jié)合,設(shè)計(jì)出了一種DSP的以太網(wǎng)接口。實(shí)驗(yàn)結(jié)果表明,DSP系統(tǒng)可以通過該接口實(shí)現(xiàn)以太網(wǎng)數(shù)據(jù)通信,經(jīng)自行裁剪的TCP/IP協(xié)議棧,不僅實(shí)現(xiàn)了IP,ARP,ICM P,TCP和UDP協(xié)議,而且提高了數(shù)據(jù)傳輸效率。該接口具有硬件接口簡單、外圍器件少、運(yùn)行穩(wěn)定可靠、性價(jià)比高等特點(diǎn),同時(shí)也能夠滿足測試、采集等高速數(shù)據(jù)傳輸系統(tǒng)的要求,符合當(dāng)今DSP設(shè)備趨于網(wǎng)絡(luò)化發(fā)展的方向。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

隨著在線會議、直播和游戲語音交流的普及,高質(zhì)量的音頻輸入設(shè)備變得越來越重要。為此,邊緣AI和智能音頻專家XMOS攜手其全球首家增值分銷商飛騰云科技,利用其集邊緣AI、DSP、MCU和靈活I(lǐng)/O于一顆芯片的xcore處理器...

關(guān)鍵字: AI DSP MCU

多DSP集群的實(shí)時(shí)信號處理系統(tǒng),通信拓?fù)涞膬?yōu)化直接決定任務(wù)調(diào)度效率與系統(tǒng)吞吐量。RapidIO與SRIO作為嵌入式領(lǐng)域的主流互連協(xié)議,其帶寬利用率差異與QoS配置策略對集群性能的影響尤為顯著。以無線基站、雷達(dá)陣列等典型應(yīng)...

關(guān)鍵字: DSP 通信拓?fù)鋬?yōu)化

隨著5G網(wǎng)絡(luò)普及與物聯(lián)網(wǎng)設(shè)備爆發(fā)式增長,邊緣計(jì)算正從概念驗(yàn)證走向規(guī)?;渴?。據(jù)IDC預(yù)測,2025年全球邊緣數(shù)據(jù)量將占總體數(shù)據(jù)量的50%,這對邊緣節(jié)點(diǎn)的實(shí)時(shí)處理能力提出嚴(yán)苛要求。在此背景下,AI加速器的DSP化趨勢與可重...

關(guān)鍵字: AI加速器 DSP

在工業(yè)控制領(lǐng)域,數(shù)字信號處理器(DSP)的性能直接決定了系統(tǒng)的實(shí)時(shí)控制能力和可靠性。德州儀器(TI)的C2000系列芯片憑借其卓越的采樣、控制和功率管理能力,長期以來在全球工業(yè)控制市場占據(jù)絕對領(lǐng)導(dǎo)地位,廣泛應(yīng)用于能源、電...

關(guān)鍵字: TI C2000 DSP 格見半導(dǎo)體 芯來 RISC-V 工控

2025年7月16日 – 專注于引入新品的全球電子元器件和工業(yè)自動化產(chǎn)品授權(quán)代理商貿(mào)澤電子 (Mouser Electronics) 持續(xù)供貨Texas Instruments (TI) 的新產(chǎn)品和解決方案。作為一家授權(quán)...

關(guān)鍵字: 線性穩(wěn)壓器 柵極驅(qū)動器 DSP

在當(dāng)今數(shù)字化浪潮的推動下,數(shù)據(jù)流量呈爆炸式增長,數(shù)據(jù)中心、5G通信網(wǎng)絡(luò)以及云計(jì)算等領(lǐng)域?qū)Ω咚俟馔ㄐ诺男枨笥l(fā)迫切。800G光模塊作為高速光通信的關(guān)鍵組件,其性能直接影響著整個通信系統(tǒng)的傳輸效率和可靠性。數(shù)字信號處理(DS...

關(guān)鍵字: 800G DSP PAM4均衡算法

以氫燃料電池空壓機(jī)為研究對象 ,開發(fā)超高速永磁同步電機(jī)控制器 ,采用傳統(tǒng)的IGBT主功率器件 ,且為兩電平主回 路結(jié)構(gòu)形式 ,通過改進(jìn)的V/F控制算法 ,完成了控制器的設(shè)計(jì)。搭建了試驗(yàn)平臺進(jìn)行測試 ,結(jié)果表明 ,控制器能...

關(guān)鍵字: 超高速永磁同步電機(jī) V/F控制 DSP

醫(yī)療設(shè)備智能化進(jìn)程,數(shù)字信號處理器(DSP)作為核心計(jì)算單元,承擔(dān)著實(shí)時(shí)處理生物電信號、醫(yī)學(xué)影像等敏感數(shù)據(jù)的重任。然而,隨著醫(yī)療設(shè)備與網(wǎng)絡(luò)互聯(lián)的深化,數(shù)據(jù)泄露風(fēng)險(xiǎn)顯著增加。美國《健康保險(xiǎn)流通與責(zé)任法案》(HIPAA)明確...

關(guān)鍵字: 醫(yī)療設(shè)備 DSP

數(shù)字信號處理器(DSP)作為實(shí)時(shí)信號處理的核心器件,其架構(gòu)設(shè)計(jì)直接決定了運(yùn)算效率與功耗表現(xiàn)。自20世紀(jì)70年代DSP理論誕生以來,其硬件架構(gòu)經(jīng)歷了從馮·諾依曼結(jié)構(gòu)到哈佛結(jié)構(gòu)的演進(jìn),這一過程體現(xiàn)了對實(shí)時(shí)性、并行性與存儲帶寬...

關(guān)鍵字: DSP 馮·諾依曼

隨著嵌入式系統(tǒng)對實(shí)時(shí)性、多任務(wù)處理能力的需求日益增長,實(shí)時(shí)操作系統(tǒng)(RTOS)在數(shù)字信號處理器(DSP)中的移植與性能優(yōu)化成為關(guān)鍵技術(shù)課題。DSP以其高效的數(shù)值計(jì)算能力和并行處理特性,廣泛應(yīng)用于通信、圖像處理、工業(yè)控制等...

關(guān)鍵字: RTOS DSP
關(guān)閉