国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

千兆網(wǎng)絡(luò)接口在S3C2440A系統(tǒng)中的應(yīng)用

發(fā)布時(shí)間:2010-7-27 12:48    發(fā)布者:lavida
關(guān)鍵詞: S3C2440A , 千兆 , 網(wǎng)絡(luò)接口
嵌入式系統(tǒng)廣泛應(yīng)用在工業(yè)測(cè)控、智能儀表、智能家庭等很多領(lǐng)域。隨著嵌入式系統(tǒng)應(yīng)用范圍的不斷擴(kuò)展及網(wǎng)絡(luò)應(yīng)用的日益普及,使得越來(lái)越多的嵌入式系統(tǒng)需要網(wǎng)絡(luò)功能。三星公司S3C2440A是國(guó)內(nèi)應(yīng)用較多的嵌入式微處理器之一,在S3C2440A應(yīng)用系統(tǒng)中,目前只支持10/100M的網(wǎng)絡(luò)接口,有很大的實(shí)用價(jià)值,既可以拓展S3C2440A的應(yīng)用領(lǐng)域,也可以給其它嵌入式系統(tǒng)高速接入網(wǎng)絡(luò)提供一種簡(jiǎn)單易行的參考。  

設(shè)計(jì)方案  

本系統(tǒng)主要由S3C2440A、存儲(chǔ)器、AX88180、千兆PHY芯片88E1111、嵌入式Linux、網(wǎng)絡(luò)驅(qū)動(dòng)程序等組成嵌入式Linux內(nèi)核負(fù)責(zé)系統(tǒng)任務(wù)的管理并集成TCP/IP協(xié)議,方便實(shí)現(xiàn)網(wǎng)絡(luò)功能控制。S3C2440A負(fù)責(zé)整個(gè)系統(tǒng)的控制,它與AX88180以總線方式連接,是通信控制的主體。S3C2440A通過(guò)網(wǎng)絡(luò)驅(qū)動(dòng)程序?qū)崿F(xiàn)對(duì)AX88180內(nèi)部寄存器編程,實(shí)現(xiàn)對(duì)以太網(wǎng)數(shù)據(jù)的發(fā)送和接收,從而完成網(wǎng)絡(luò)與系統(tǒng)之間的數(shù)據(jù)傳輸。AX88180與88E1111之間采用RGMII接口方式互連,負(fù)責(zé)數(shù)據(jù)傳送底層協(xié)議的實(shí)現(xiàn)。  

這里簡(jiǎn)要介紹一下S3C2440A與AX88180器件,這兩個(gè)器件是通信控制的主體。  

S3C2440A是基于ARM920T核的16/32位RISC微處理器,運(yùn)行頻率高達(dá)500MHz,主要面向手持設(shè)備以及高性價(jià)比、低功耗的應(yīng)用,適用于開(kāi)發(fā)各類高端手持、小型終端以及網(wǎng)絡(luò)應(yīng)用產(chǎn)品,具有非常豐富的片上資源,比如LCD、SDRAM、NAND FLASH、DMA、AD、PWM控制器,以及UART、USB、攝像頭、觸摸屏、IIC、IIS、SPI、SD、MMC、AC97等接口。  

AX88180是臺(tái)灣亞信公司推出的一款Non-PCI千兆以太網(wǎng)控制芯片,內(nèi)置1000Mbps以太網(wǎng)媒體存取控制器(MAC);有40KBytes SRAM網(wǎng)絡(luò)封包緩存器;硬件支持IP/TCP/UDP checksum offloads。它可以十分方便地實(shí)現(xiàn)與一般16/32位微處理器連接,可以象SRAM一樣被訪問(wèn)。它符合IEEE 802.3/lEEE 802.3u/IEEE 802.3ab協(xié)議,適用于串流媒體、多媒體網(wǎng)絡(luò)、高頻寬傳輸?shù)阮I(lǐng)域,如數(shù)字媒體、家用網(wǎng)關(guān)及IP電視等。

硬件設(shè)計(jì)  

由于硬件電路比較復(fù)雜,這里只給出核心電路連接,S3C2440A與AX88180之間采用總線方式相連,地址總線A2-A15、數(shù)據(jù)總線D0-D31、讀寫(xiě)信號(hào)等可以直接連接,AX88180的40M~100M時(shí)鐘信號(hào)由S3C2440A提供,AX88180中斷信號(hào)與S3C2440A EINT11相連,整個(gè)接口電路無(wú)需外加電路;AX88180與PHY芯片之間采用簡(jiǎn)化的千兆比特媒體獨(dú)立接口RGMII接口,信號(hào)一一對(duì)應(yīng)直接相連即可。

軟件設(shè)計(jì)  

從整體角度考慮,Linux網(wǎng)絡(luò)系統(tǒng)可以分為硬件層、設(shè)備驅(qū)動(dòng)層、網(wǎng)絡(luò)協(xié)議層和應(yīng)用層。在S3C2440A系統(tǒng)上移植有嵌入式Linux、集成TCP/IP等協(xié)議棧,應(yīng)用層的程序可以自己編寫(xiě)也可以移植,這里我們主要分析一下設(shè)備驅(qū)動(dòng)程序的實(shí)現(xiàn)。  

在嵌入式Linux中,整個(gè)網(wǎng)絡(luò)驅(qū)動(dòng)程序的框架可分為四層,分別為協(xié)議接口層、網(wǎng)絡(luò)設(shè)備接口層、設(shè)備驅(qū)動(dòng)功能層、網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)媒介層,這個(gè)框架在內(nèi)核網(wǎng)絡(luò)模塊中已經(jīng)搭建完成,在設(shè)計(jì)驅(qū)動(dòng)程序的時(shí)候,要做的主要工作就是根據(jù)上層網(wǎng)絡(luò)設(shè)備接口層定義的device結(jié)構(gòu)和底層具體的硬件特性,來(lái)完成設(shè)備驅(qū)動(dòng)的功能。驅(qū)動(dòng)程序主要由初始化、打開(kāi)、關(guān)閉、數(shù)據(jù)接收及發(fā)送等函數(shù)組成。  

初始化函數(shù)  

初始化函數(shù)完成網(wǎng)絡(luò)設(shè)備的初始化,由數(shù)據(jù)結(jié)構(gòu)device中的init函數(shù)指針來(lái)調(diào)用,加載AX88180驅(qū)動(dòng)模塊后,就會(huì)調(diào)用初始化過(guò)程。該首先通過(guò)檢測(cè)物理設(shè)備的硬件特征來(lái)檢測(cè)網(wǎng)絡(luò)物理設(shè)備是否存在,之后配置設(shè)備所需要的資源,比如中斷等。這些過(guò)程完成后,就要構(gòu)造設(shè)備設(shè)備數(shù)據(jù)結(jié)構(gòu),用檢測(cè)到的數(shù)據(jù)初始化其相關(guān)變量,最后向Linux內(nèi)核注冊(cè)設(shè)備并申請(qǐng)內(nèi)存空間。  

打開(kāi)函數(shù)  

打開(kāi)函數(shù)在網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序中是在網(wǎng)絡(luò)設(shè)備狀態(tài)由down狀態(tài)轉(zhuǎn)為up狀態(tài)時(shí),即被激活的時(shí)候被調(diào)用,有很多AX88180及88E1111的初始化工作可以放在這里做。在驅(qū)動(dòng)程序作為一個(gè)模塊被裝入時(shí),打開(kāi)函數(shù)還要防止模塊卸載時(shí)設(shè)備處于打開(kāi)狀態(tài)。  

關(guān)閉函數(shù)  

關(guān)閉函數(shù)和打開(kāi)函數(shù)做相反的工作,是在設(shè)備狀態(tài)由up轉(zhuǎn)為down時(shí)被調(diào)用的,作用是釋放資源以減少系統(tǒng)負(fù)擔(dān)。在驅(qū)動(dòng)程序作為模塊裝入時(shí),關(guān)閉函數(shù)還要減少?zèng)]備被引用的次數(shù),以便卸載驅(qū)動(dòng)程序。

發(fā)送函數(shù)  

發(fā)送函數(shù)是網(wǎng)絡(luò)驅(qū)動(dòng)程序的關(guān)鍵過(guò)程之一,它與dev->hard_start_xmit連接,在內(nèi)核通過(guò)設(shè)備向外發(fā)送數(shù)據(jù)時(shí)調(diào)用它。系統(tǒng)給AX88180分配一塊64K的地址空間,其中8000H-FBFFH作為發(fā)送緩沖區(qū)地址,在系統(tǒng)調(diào)用驅(qū)動(dòng)程序的xmit時(shí),發(fā)送的數(shù)據(jù)放在一個(gè)sk_buff結(jié)構(gòu)中,發(fā)送到數(shù)據(jù)緩沖區(qū)地址,再由AX88180發(fā)送到網(wǎng)絡(luò)上。如果發(fā)送成功,hard_start_xmit釋放sk_buff,返回0;如果設(shè)備暫時(shí)無(wú)法處理,則返回1。硬件在發(fā)送結(jié)束后產(chǎn)生中斷。  

中斷和接收函數(shù)  

中斷和接收函數(shù)也是驅(qū)動(dòng)程序的關(guān)鍵過(guò)程之一,如果有數(shù)據(jù)收到,AX88180會(huì)產(chǎn)生一個(gè)中斷通知系統(tǒng),在中斷處理程序中驅(qū)動(dòng)程序申請(qǐng)一塊sk_buff(),從AX88180讀出數(shù)據(jù)并放置到接收緩沖區(qū)地址0000H~7000H里,然后來(lái)填充sk_buff中的一些信息,由skb->dev=dev判斷收到幀的協(xié)泌類型,填入skb->protocol,再把指針skb->mac.raw指向硬件數(shù)據(jù),然后丟棄幀頭。之后還要設(shè)置skb->pkt_type,標(biāo)明鏈路層數(shù)據(jù)類型,最后調(diào)用netif_rX()把數(shù)據(jù)傳送給協(xié)議層。  

下面是發(fā)送函數(shù)部分代碼:
  








結(jié)語(yǔ)  

本文介紹的千兆網(wǎng)絡(luò)接口在S3C2440A系統(tǒng)中的應(yīng)用方案已經(jīng)得以實(shí)現(xiàn),1000 Full-duplex模式下,數(shù)據(jù)傳輸速率可以達(dá)到200Mbp,在使用FTP下載數(shù)據(jù)時(shí),速度可以達(dá)到4Mbps以上,是使用100M網(wǎng)絡(luò)接口的5~6倍。如果使用其它更高速度的微處理器,網(wǎng)絡(luò)接口的速度會(huì)更高。
本文地址:http://www.qingdxww.cn/thread-17285-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 更佳設(shè)計(jì)的解決方案——Microchip模擬開(kāi)發(fā)生態(tài)系統(tǒng)
  • 你仿真過(guò)嗎?使用免費(fèi)的MPLAB Mindi模擬仿真器降低設(shè)計(jì)風(fēng)險(xiǎn)
  • 想要避免發(fā)生災(zāi)難,就用MPLAB SiC電源仿真器!
  • 利用模擬開(kāi)發(fā)工具生態(tài)系統(tǒng)進(jìn)行安全電路設(shè)計(jì)
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲三级视频在线 | 九九视频在线看精品 | 亚洲欧美在线观看一区二区 | live韩剧| 污污的网站在线免费观看 | 中文字幕免费在线播放 | 韩国毛片免费大片 | 在线播放不卡 | 欧美日韩色视频在线观看 | 国产一区二区在线不卡 | 久久九九99热这里只有精品 | 青青草99热这里都是精品 | 青青草一区国产97 | 成人伊人亚洲人综合网站222 | 精品一区二区久久久久久久网精 | 精东影业果冻传媒 | 国产日韩精品一区在线不卡 | 国产精品亚洲综合 | 亚洲成a人片77777老司机 | 国产卡一卡二卡3卡乱码免费 | 青青青久久久 | 在线观看欧美亚洲日本专区 | 成人欧美一区二区三区视频不卡 | 亚洲欧美日韩一区超高清 | 又粗又硬又爽的三级视频 | 日本天堂影院在线播放 | 欧美日韩国产一区二区三区欧 | 一区二区手机视频 | 麻豆国产精品免费视频 | 国产成人亚洲影视在线 | 国产快播 | 免费h漫| 国产xxxxx免费视频 | 久久精品免视着国产成人 | 婷婷色影院| 欧美国产成人免费观看永久视频 | 黑人一级毛片 | 国产馆在线观看 | 手机看片久久国产免费不卡 | 九九99香蕉在线视频网站 | 在线观看国产精品麻豆 |