亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于DM9000網口芯片的DSP6713B網口擴展

        2012-06-25 03:31:30文張斌陳志華
        電視技術 2012年4期
        關鍵詞:PC機低電平流程圖

        文張斌,陳志華

        (暨南大學 信息技術研究所,廣東 廣州 510075)

        目前,設備網絡化已經成為業(yè)內所達成共識的、必然的趨勢,隨著硬件接入網絡被廣泛重視,大量高端的硬件板基本上都具備自帶的網口功能,很多成熟的開發(fā)板都已具備了網口功能。然而,DSP6713B沒有自帶的以太網功能,所以需要擴展網口來實現(xiàn)以太網的連接?,F(xiàn)在被廣泛用作網口擴展的芯片有DM9000,RTL8019等,相關資料也非常多。該設計為了解決DSP6713B沒有自帶網口的問題,結合DM9000廣泛使用于網口擴展的情況,提出一種采用DM9000網口驅動芯片作為網口的底層硬件來實現(xiàn)TCP/IP物理層的方案,并且使用LWIP協(xié)議作為網口通信協(xié)議,最終實現(xiàn)了DSP網口功能擴展[1-2]。

        1 DM9000網口芯片介紹

        1.1 DM9000功能簡介

        DM9000是一款完全集成并符合成本效益單芯片快速以太網MAC控制器與一般處理接口,1個10/100 M自適應的PHY和4 K DWORD值的SRAM。

        DM9000支持8位、16位和32位接口訪問內部存儲器,以支持不同的處理器。DM9000物理協(xié)議層接口完全支持使用10 Mbit/s下3類、4類、5類非屏蔽雙絞線和100 Mbit/s下5類非屏蔽雙絞線。這是完全符合IEEE 802.3u規(guī)格。它的自動協(xié)調功能將自動完成配置以最大限度地適合其線路帶寬。

        1.2 DM9000與DSP6713B硬件連接

        DM9000與DSP連接如圖1所示。DM9000需要控制的主要引腳有:IOR、IOW、AEN、CMD(SA2)、INT、RST,數(shù)據(jù)線SD0~SD15(此處數(shù)據(jù)以16位傳輸)和地址線SA4~SA9。IOR和IOW分別為讀寫引腳,低電平可以讀寫;AEN為DM9000選通引腳,此處只用到1個DM9000芯片,直接將AEN管腳接低電平,DM9000工作的默認基地址為0x300,按照默認地址選擇,將SA9與SA8接高電平,SA7~SA4接低電平,從而直接選通了DM9000芯片;CMD為命令/數(shù)據(jù)切換引腳,低電平時讀寫命令操作,高電平時讀寫數(shù)據(jù)操作,將CMD與DSP的EA2地址線連接;INT為中斷信號輸出引腳,與DSP的INT5中斷信號線連接,低電平時有中斷信號;IOR為讀命令控制線,與DSP的AOE讀命令控制線連接;IOW為寫命令控制線,與DSP的AWE寫命令控制線連接;RST為復位信號引腳,與DSP的GP[0]管腳連接;SD0~SD15數(shù)據(jù)線與DSP的數(shù)據(jù)線ED0~ED15連接。

        1.3 DM9000初始化

        首先,將DM9000控制讀寫命令基地址ADDR_BASE在DSP地址空間映射為0xB0000300,由于DSP的EA2地址管腳控制CMD,所以DM9000控制讀寫數(shù)據(jù)基址DA?TA_BASE在DSP地址空間映射為0xB0000302。確定了DM9000控制讀寫數(shù)據(jù)和命令的基址之后,接下來就是編寫DM9000的驅動程序,有2個函數(shù)需要完成,讀寄存器數(shù)據(jù)函數(shù)REG_read(uint8 reg)和寫寄存器函數(shù)REG_write(uint8 reg,uint16 writedata),其中reg為相對于ADDR_BASE的偏移量,要寫入ADDR_BASE地址中去,writedata是寄存器要寫入的數(shù)據(jù),要寫入DATA_BASE數(shù)據(jù)基址中去。

        DM9000初始化第一步就是要使DM9000的硬件初始化,DSP的GP[0]控制DM9000的RST,RST低電平可以使硬件復位,要求保持RST低電平時間大于20 μs。第二步,DM9000還需要2次軟復位,往DM9000的NCR寄存器寫入要求值即可實現(xiàn)DM9000軟復位。第三步,設置DM9000收發(fā)模式和開中斷,最后設置DM9000的MAC地址,從而整個DM9000的初始化完成,進行收發(fā)數(shù)據(jù)。

        1.4 DM9000發(fā)送和接收數(shù)據(jù)控制

        DM9000是發(fā)送和接收數(shù)據(jù)的底層硬件,因此,要實現(xiàn)數(shù)據(jù)與網絡接口的傳輸,就必須實現(xiàn)發(fā)送和接收函數(shù)的編寫,而發(fā)送和接收函數(shù)也是底層硬件與上層應用程序的接口。

        1.4.1 發(fā)送函數(shù)sendpacket()流程圖

        DM9000發(fā)送函數(shù)流程圖如圖2所示。

        1.4.2 接收函數(shù)recepacket()流程圖

        DM9000從網絡中接到1個數(shù)據(jù)包后,會在數(shù)據(jù)包前面加上4個字節(jié),分別為“01H”(同MRCMDX的值)、“status”(同RSR寄存器的值)、“LENL”(數(shù)據(jù)包長度低8位)、“LENH”(數(shù)據(jù)包長度高8位)。整個接收過程如圖3所示。

        圖2 DM9000發(fā)送函數(shù)流程圖

        圖3 DM9000接收函數(shù)流程圖

        2 LWIP協(xié)議的移植

        LWIP協(xié)議是1個開源的TCP/IP協(xié)議,它把整個TCP/IP協(xié)議封裝好,并且提供用戶移植需要的操作系統(tǒng)模擬層接口和用戶使用LWIP協(xié)議的API接口,該協(xié)議代碼占用內存空間小,提供明確的操作系統(tǒng)模擬層移植說明,已經被廣泛運用,且該協(xié)議支持不帶操作系統(tǒng)直接使用,大大降低了移植難度。

        LWIP協(xié)議移植必須完成底層操作系統(tǒng)模擬層與底層硬件的接口,這樣才能讓LWIP協(xié)議真正運行起來。然而要完成LWIP協(xié)議模擬層與硬件的通信,就必須實現(xiàn)4個重要函數(shù):網口芯片的初始化函數(shù),數(shù)據(jù)接收函數(shù),發(fā)送函數(shù)和網口中斷函數(shù)。

        該設計使用DM9000作為網口芯片,上文已經詳細介紹了DM9000網口芯片的初始化、發(fā)送和接收函數(shù)的實現(xiàn)。需要把發(fā)送函數(shù)sendpacket()和接收函數(shù)進行部分改動recepacket()。首先,對于發(fā)送函數(shù),LWIP中的發(fā)送數(shù)據(jù)存放在pbuf*p的p->payload中,所以發(fā)送的數(shù)據(jù)就是p->payload,而且發(fā)送數(shù)據(jù)p->payload是已經封裝好的MAC幀,然后把生成的MAC幀發(fā)送出去;對于接收函數(shù),也是先把接收到得數(shù)據(jù)存放在p->payload,然后LWIP會自動處理這些數(shù)據(jù)。

        初始化函數(shù)ethernetinit()。首先,需要初始化LWIP,然后初始化DM9000芯片。LWIP初始化需要netif->state數(shù)據(jù)狀態(tài),netif->name以太網名,netif->output輸出函數(shù),netif->linkoutput連接函數(shù)。

        網口中斷函數(shù)需要處理的有發(fā)送中斷處理、接收中斷處理和出錯處理,一般出錯的時候直接丟包不做處理,發(fā)送時調用發(fā)送函數(shù),接收時調用接收函數(shù)。

        3 系統(tǒng)仿真測試

        3.1 ARP測試

        ARP分組格式圖如圖4所示。

        ARP協(xié)議是地址解析協(xié)議,主要是通過目標IP查詢得到目標MAC地址的協(xié)議。首先,已知目標IP,然后向網絡發(fā)送1個ARP分組報文,如果目標IP收到報文,則發(fā)送1個ARP回文,從回文中便可得到目標IP的MAC地址。

        現(xiàn)在直接把ARP請求報文放在1個數(shù)組中,然后調用sendpacket()發(fā)送函數(shù),直接把ARP報文發(fā)送出去,然后等待ARP回文,收到回文就會調用中斷函數(shù),并把接收到的ARP回報存放在0x20001000地址開始的地址空間。仿真結果如圖5所示。仿真結果顯示,回文中的目標IP地址192.168.1.25,對應的MAC地址為0x00,0x14,0x97,0xf0,0x07,0x24,該回文是從 MAC 地址為 0x6c,0xf0,0x49,0x92,0xb4,0x32,對 應 IP 地 址 為192.168.1.26,整個ARP地址解析過程說明DM9000芯片初始化正確,接收和發(fā)送函數(shù)也能夠正常工作。

        3.2 LWIP協(xié)議TCP/IP通信測試

        整個系統(tǒng)設計流程圖如圖6所示。首先,DSP6713B初始化,DSP的初始化主要是完成PLL時鐘,EMIF外部存儲器接口初始化和中斷初始化,PLL時鐘為DSP內核和外部存儲器接口提供工作時鐘,EMIF外部存儲器接口的初始化主要是設定外部存儲器的類型、工作模式和讀寫時序;其次,DM9000初始化,主要是設置DM9000的復位,工作模式和中斷的初始化;LWIP的初始化,主要是初始化LWIP的操作系統(tǒng)模擬層接口,實現(xiàn)LWIP與底層硬件的通信。整個系統(tǒng)的初始化完成。

        建立1個TCP連接用來測試系統(tǒng)設計的效果。首先設置好本機的MAC地址,MAC地址在DM9000上面有標明,這個是DM9000的固定MAC地址,不能自己更改;然后設置IP地址,網關和子網掩碼,這幾個參數(shù)應依據(jù)使用的局域網設置;開啟1個TCP通道,綁定到本地端口60023,端口號就代表著1個TCP線程,然后偵聽TCP連接,與DSP建立TCP連接后,PC機向DSP發(fā)送字符串“LWIP”,如果PBUF的payload中成功接收該字符串,則DSP向PC機發(fā)送字符串“TCP TEST IS OK”。實驗仿真結果如圖7和圖8所示。

        DSP硬件板作為服務器,服務器IP地址為192.168.1.25,服務器端口為60023,PC機作為客戶端,打開網絡調試助手,如圖8設置,然后單擊連接,就能夠把PC機和DSP硬件板連接上,往發(fā)送區(qū)填入發(fā)送數(shù)據(jù)LWIP(16進制為0x5049574c)。從圖7可以看到LWIP數(shù)據(jù)存儲PBUF中的payload已經接收到了0x5049574c,在確定接收數(shù)據(jù)為0x5049574c后,DSP向PC發(fā)送字符串“TCP TEST IS OK”,在圖8網絡調試助手的接收區(qū)可以看到顯示接收到來自IP地址192.168.1.25的數(shù)據(jù)“TCP TEST IS OK”,TCP通信測試成功,表示DSP網口擴展成功[3-4]。

        4 結束語

        針對DSP6713B沒有自帶網口功能,提出了基于DM9000網口擴展芯片擴展網口的方法。該設計詳細地分析了DM9000初始化過程,指出DM9000發(fā)送和接收函數(shù)需要解決的問題和實現(xiàn)的具體過程,并且把DM9000網口芯片作為LWIP網口通信協(xié)議的驅動底層,實現(xiàn)了LWIP協(xié)議操作系統(tǒng)模擬層接口并最終實現(xiàn)LWIP協(xié)議的移植。采用TCP通信測試整個系統(tǒng)的功能,并最終實現(xiàn)了DSP與PC機的TCP通信,整個設計穩(wěn)定、可靠,能夠有效地運用在現(xiàn)實的網口功能上,具有很好的市場前景。

        [1]張翠,鄧志良.LWIP協(xié)議棧在μC/OS-II上的移植和應用[J].微計算機信息,2010,26(3):84-86.

        [2]李國輝,范科峰.基于ARM+DM9000的TCP/IP協(xié)議棧的移植與實現(xiàn)[J].電子科技,2008,21(6):66-69.

        [3]袁安富,夏生鳳.基于ARM和Linux的DM9000網絡接口設計及驅動實現(xiàn)[J].計算機工程與科學,2011,33(2):27-31.

        [4]胡俐蕊.基于LWIP的μC/OS-II網絡應用程序設計方法[J].計算機應用與軟件,2010,19(1):145-148.

        猜你喜歡
        PC機低電平流程圖
        數(shù)字電路中“邏輯非”的用法辨析
        鐵道車輛高/低電平信號智能發(fā)生器設計
        2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
        基于PC機與單片機的多機通信技術及抗干擾方法
        基于三菱FXPLC的感應淬火機床與PC機的串行通信實現(xiàn)
        VC.NET下實現(xiàn)dsPIC單片機與PC機的通信
        電子制作(2017年23期)2017-02-02 07:16:47
        專利申請審批流程圖
        河南科技(2016年8期)2016-09-03 08:08:22
        專利申請審批流程圖
        河南科技(2016年6期)2016-08-13 08:18:29
        寧??h村級權力清單36條
        《天津醫(yī)藥》稿件處理流程圖
        一区二区三区日本伦理| 精品国产18久久久久久| 国产精品露脸视频观看| 东京道一本热中文字幕| 免费观看性欧美大片无片| 久久精品岛国av一区二区无码| 狠狠色丁香婷婷久久综合2021| 亚洲av中文字字幕乱码| 国产自产在线视频一区| 亚洲大胆视频在线观看| 久久av粉嫩一区二区| 国产精品无码素人福利| 九一九色国产| 丰满少妇大力进入av亚洲| 亚洲av久久无码精品九九| 亚洲色www无码| 国产av精品一区二区三区视频 | 亚洲av熟女天堂久久天堂| 久久精品国产亚洲av蜜点| 久久午夜无码鲁丝片午夜精品| 国产激情视频一区二区三区| 亚洲中文字幕无码永久在线| 亚洲AV秘 片一区二区三区| 日韩精品一区二区三区在线观看的| 白白色免费视频一区二区在线 | 免费看泡妞视频app| 在线观看国产内射视频| 69精品人妻一区二区| 蜜桃视频网站在线观看一区| 品色堂永远免费| 国产精品免费精品自在线观看| 国产人在线成免费视频| 亚洲AV无码乱码1区久久| 亚洲av影院一区二区三区四区| 一本久道在线视频播放| 色婷婷久久亚洲综合看片| 人与人性恔配视频免费| 国产精品无码成人午夜电影| 久久中文字幕日韩无码视频| 亚洲一区二区三区资源| 亚洲乱码一区二区av高潮偷拍的|