新聞中心

硬件協(xié)議棧芯片W3100A

作者: 時(shí)間:2005-06-28 來(lái)源:網(wǎng)絡(luò) 收藏
摘要:W3100是WIZnet公司專門為以太網(wǎng)互聯(lián)和嵌入式設(shè)備推出的TCP/IP,其TCP/IP棧包含了TCP、UDP、IP、ARP和ICMP。文中介紹了的主要特點(diǎn)、引腳功能和基本結(jié)構(gòu),分析了W3100的軟設(shè)計(jì)應(yīng)用方法。

關(guān)鍵詞:TCP/IP協(xié)議棧;;Socket API;以太網(wǎng)

簡(jiǎn)介

近年來(lái),隨著技術(shù)的飛速進(jìn)步,電子產(chǎn)品正朝著小型化、智能化和網(wǎng)絡(luò)化的方向發(fā)展。在小型嵌入式設(shè)備中實(shí)現(xiàn)以太網(wǎng)互聯(lián)正在成為研究和應(yīng)用的熱點(diǎn)。在這種潮流的推動(dòng)下,研究人員提出了許多解決方案。傳統(tǒng)的做法是在嵌入式設(shè)備中植入TCP/IP協(xié)議棧,或者移植一個(gè)具有TCP/IP協(xié)議棧的嵌入式操作系統(tǒng)。雖然上述做法在很多應(yīng)用中取得了不錯(cuò)的效果,但都是以犧牲大量資源為代價(jià)的。而本文介紹的W3100A硬件協(xié)議棧則可以在占用極低系統(tǒng)資源的條件下快速完成網(wǎng)絡(luò)通訊。

W3100A的主要性能特點(diǎn)如下:

●硬件協(xié)議棧包括TCP、 IP Ver.4、 UDP、 ICMP、 ARP;

●支持硬件以太網(wǎng)協(xié)議DLC和MAC;

●同時(shí)支持四路獨(dú)立的網(wǎng)絡(luò)連接;

●支持Ping命令;

●協(xié)議處理速度達(dá)到全雙工4~5Mbps;

●支持Intel/Motorola MCU總線接口;

●支持I2C接口;

●帶有標(biāo)準(zhǔn)的MII接口,可連接底層以太網(wǎng)接口

●可提供Socket API加速應(yīng)用程序開發(fā);

●支持全雙工模式;

●其內(nèi)建16KB雙口RAM可作為數(shù)據(jù)緩沖區(qū);

●采用0.35μm CMOS制造工藝。

2 W3100A的引腳功能

W3100A采用64腳LQFP封裝,其引腳分布如圖1所示。各引腳功能描述如下:

TXD[0]~TXD[3]:在TXD_CLK上升沿發(fā)送數(shù)據(jù)。串行模式時(shí),TXD[0]用作串行數(shù)據(jù)發(fā)送引腳,TXD[1]~TXD[3]無(wú)效。

TXE:發(fā)送使能端。

TXD_CLK:數(shù)據(jù)發(fā)送時(shí)鐘,時(shí)鐘由以太網(wǎng)接口提供。

RXD[0]~RXD[3]:在TXD_CLK下降沿接收數(shù)據(jù)。串行模式時(shí),RXD[0]作為串行數(shù)據(jù)接收引腳,RXD[1]~RXD[3]無(wú)效。

RXDV/CRS:載波監(jiān)測(cè)。高電平有效。

RXD_CLK:數(shù)據(jù)接收時(shí)鐘,時(shí)鐘由以太網(wǎng)接口芯片提供。

COL:沖突探測(cè)引腳。在半雙工模式發(fā)生沖突時(shí)有效。

A[14~8]/DA[6~0]:在MCU總線接口模式下作為14~8位地址。在I2C模式下作為I2C接口6~0位設(shè)備地址。

A[7~0]:7~0位地址線。

D[7~0]:8位數(shù)據(jù)線。

INT:接收發(fā)送中斷請(qǐng)求。低電平有效。

CS:片選信號(hào)。低電平有效。

WR:寫信號(hào)。低電平有效。

RD:讀信號(hào)。低電平有效。

RESET:復(fù)位信號(hào)。

CLOCK:工作時(shí)鐘。通常由以太網(wǎng)接口芯片提供,推薦頻率為25MHz。

EXT_CLK:外部時(shí)鐘輸入信號(hào)。

LINK:表示是否已連接到以太網(wǎng)。低電平表示連接有效,高電平表示TCP超時(shí)或連接關(guān)閉。

SERIAL:10BASE-T SERIAL或NIBBLE選擇。

FDPLX:全雙工/半雙工選擇。0為全雙工,1為半雙工。

MODE[2~0]:用于選擇W3100A工作模式。000為時(shí)鐘模式;001為外部時(shí)鐘模式;010為無(wú)時(shí)鐘模式;011為I2C模式;1xx為測(cè)試模式。3 W3100A的內(nèi)部結(jié)構(gòu)

系統(tǒng)設(shè)計(jì)人員利用W3100A可以方便快捷地為產(chǎn)品添加網(wǎng)絡(luò)功能。W3100A的硬件TCP/IP協(xié)議棧包含了TCP、UDP、IP、ARP和ICMP協(xié)議。并支持一套與Windows系統(tǒng)相同的socket API。W3100的內(nèi)部結(jié)構(gòu)框圖如圖2所示。

W3100A共有32kB的內(nèi)部存儲(chǔ)器空間。其中位于存儲(chǔ)器頂部地址為0x0000~0x01FF的1kB空間分配給了控制寄存器組,0x2000~0x3FFF則作為保留空間供給其它設(shè)備使用,而0x4000~0x5FFF為發(fā)送緩沖區(qū),0x6000~0x7FFF為數(shù)據(jù)接收緩沖區(qū)。由于W3100A可以為用戶提供4路獨(dú)立的連接通路,所以相對(duì)應(yīng)的8kB發(fā)送緩沖區(qū)和 8kB接收緩沖區(qū)可以通過(guò)寄存器TMSR和RMSR進(jìn)行配置。配置方法如圖3所示。

4 應(yīng)用設(shè)計(jì)

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

W3100A有3種不同的工作模式,分別為Direct Bus I/F模式、Indirect Bus I/F模式和I2C Bus I/F模式。用戶可根據(jù)自己的實(shí)際情況進(jìn)行選擇。下面就常用的Direct Bus I/F模式和I2C Bus I/F模式作以簡(jiǎn)單介紹。

圖4是Direct Bus I/F模式的硬件結(jié)構(gòu)框圖。

由圖可見,該模式下,W3100A共用了15條地址線、8位數(shù)據(jù)線、片選CS,及讀寫控制信號(hào)WR和RD。不難看出,該模式下硬件電路設(shè)計(jì)相對(duì)簡(jiǎn)單,但要占用較多的MCU資源。同時(shí)還應(yīng)該注意,在Direct Bus I/F模式下,W3100A的工作時(shí)鐘也有3種不同的模式,在大多數(shù)情況下,系統(tǒng)推薦使用Clocked 模式,因?yàn)樵撃J较孪到y(tǒng)可以穩(wěn)定的工作。但是如果系統(tǒng)中MCU的訪問(wèn)速度小于100ns,則應(yīng)為W3100A單獨(dú)外接時(shí)鐘并選擇External Clock模式。而當(dāng)MCU的CS、RD、WD信號(hào)時(shí)序滿足W3100A的要求時(shí),也可以不要時(shí)鐘。

圖5是I2C Bus I/F模式下,MCU與W3100A的連接示意圖。

I2C Bus I/F模式下,可使用SCL和SDA在MCU和W3100A之間串行傳輸數(shù)據(jù),時(shí)鐘信號(hào)線SCL由MCU提供,SDA則用來(lái)在MCU和W3100A之間傳送地址和數(shù)據(jù)。只要系統(tǒng)中的MCU支持I2C總線即可使用該模式??梢钥闯?,使用該模式可以大量減少MCU與W3100A的連接線,從而節(jié)?。停茫盏馁Y源。

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

此外,通過(guò)WIZnet公司為W3100A專門提供的Socket API軟件,可使網(wǎng)絡(luò)通訊的軟件設(shè)計(jì)更加方便。利用該軟件進(jìn)行設(shè)計(jì)時(shí),應(yīng)首先初始化W3100A的網(wǎng)絡(luò)設(shè)置,即在相應(yīng)的寄存器中設(shè)置默認(rèn)網(wǎng)關(guān)、子網(wǎng)掩碼、本機(jī)物理地址和IP地址,然后建立Socket連接以實(shí)現(xiàn)通訊。整個(gè)過(guò)程與Windows Socket編程十分類似,此處不再贅述。

5 結(jié)論

W3100A具有傳輸速度快、工作穩(wěn)定可靠、系統(tǒng)開銷小等優(yōu)點(diǎn),可以為小型嵌入式設(shè)備提供很好的網(wǎng)絡(luò)解決方案。

tcp/ip相關(guān)文章:tcp/ip是什么




關(guān)鍵詞: W3100A 芯片 協(xié)議 硬件

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉