新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)以太網(wǎng)控制芯片W7100A數(shù)據(jù)手冊(cè)(一)

單片機(jī)以太網(wǎng)控制芯片W7100A數(shù)據(jù)手冊(cè)(一)

作者: 時(shí)間:2016-11-26 來源:網(wǎng)絡(luò) 收藏

1.4.7外部存儲(chǔ)器接口

注:當(dāng)用戶利用標(biāo)準(zhǔn)的8051接口使用外部存儲(chǔ)器時(shí),用戶可以利用ALE引腳控制,在P0[7:0]傳輸數(shù)據(jù)[7:0]或地址[7:0]。

1.4.8介質(zhì)接口

為了獲得最佳性能,

1.盡可能使RXIP/RXIN信號(hào)對(duì)的長(zhǎng)度(RX)相等。

2.盡可能使TXOP/TXON信號(hào)對(duì)(TX)的長(zhǎng)度相等。

3.盡可能使RXIP和RXIN的信號(hào)靠近。

4.盡可能使TXOP和TXON的信號(hào)靠近。

5.盡可能使RX和TX的信號(hào)對(duì)遠(yuǎn)離一些如偏置電阻或晶振的噪聲信號(hào)。

6.使TX/RX的信號(hào)對(duì)保持正常。

欲了解更多詳情,請(qǐng)參閱”W5100 Layout Guide.pdf.”

1.4.9網(wǎng)絡(luò)指示燈

1.4.10電源信號(hào)

圖1.9 電源設(shè)計(jì)

1.564引腳封裝說明

1.5.1100和64引腳封裝的區(qū)別

注:在64引腳封裝的情況下,PHY模式必須由PHYCONF SFR設(shè)置。因此,用戶必須設(shè)置MODE_EN位以啟動(dòng)MODE2~0位的配置。然后設(shè)置MODE2~0的值和控制PHY_RSTn位以至PHY復(fù)位。復(fù)位后,64引腳封裝的芯片將被初始化和正常運(yùn)作。當(dāng)用戶使用64引腳封裝芯片時(shí),下面的代碼必須在芯片初始化程序中執(zhí)行。

如需了解更多詳細(xì)PHYCONF SFR的資訊,請(qǐng)參閱第2.5.10"新的和擴(kuò)展的SFR"。

2. 存儲(chǔ)器

W7100A的存儲(chǔ)器分為兩種類型:“代碼存儲(chǔ)器”和“數(shù)據(jù)存儲(chǔ)器”。每個(gè)存儲(chǔ)器可以使用內(nèi)存鎖定功能。如果存儲(chǔ)器被鎖定,從外部訪問內(nèi)部存儲(chǔ)器將會(huì)被拒絕,也不能使用W7100A的調(diào)試器。如需詳細(xì)地了解更多有關(guān)內(nèi)存鎖定功能的資訊,請(qǐng)參閱"WizISP程序指南"。

圖2.1展示了W7100A存儲(chǔ)器的大致結(jié)構(gòu)。

圖2.1 代碼/數(shù)據(jù)存儲(chǔ)器連接

注意:

我們推薦使用一個(gè)外部低壓電源探測(cè)器以預(yù)防電源電壓供給不足時(shí)的系統(tǒng)故障。

這將有效避免數(shù)據(jù)flash和代碼flash數(shù)據(jù)丟失,SPAM數(shù)據(jù)丟失和CPU寄存器數(shù)據(jù)丟失。

請(qǐng)參考WIZnet網(wǎng)站上的iMCU W7100A的電路圖

(集成電路例如:MAX811,MIC811,DS1811)

2.1程序存儲(chǔ)器

“程序存儲(chǔ)器”包括從0x0000到0x07FF的啟動(dòng)ROM和從0x0000到0xFFFF的用戶代碼flash。系統(tǒng)重啟之后,W7100A通常執(zhí)行”程序存儲(chǔ)器”中的啟動(dòng)代碼。根據(jù)BOOTEN引腳(高低電平的不同),所執(zhí)行的啟動(dòng)代碼也不同。圖2.2顯示了啟動(dòng)代碼的流程。啟動(dòng)之后,根據(jù)BOOTEN的電平,系統(tǒng)執(zhí)行ISP進(jìn)程或APP入口程序。當(dāng)選擇了ISP進(jìn)程后(BOOTEN=1),啟動(dòng)ROM中的ISP代碼將會(huì)運(yùn)行,否則(BOOTEN=0),系統(tǒng)跳到APP入口處而不執(zhí)行ISP程序。

ISP程序用于WizISP編程(當(dāng)用戶往代碼FLASH中寫代碼時(shí))。APP入口用于運(yùn)行用戶的應(yīng)用程序代碼。APP入口包括”存儲(chǔ)映射轉(zhuǎn)換代碼”和跳轉(zhuǎn)代碼(能跳到用戶應(yīng)用程序代碼FLASH存儲(chǔ)器的起始地址0x0000)。存儲(chǔ)映射轉(zhuǎn)換圖如下所示:

圖2.2 啟動(dòng)順序流程圖

W7100A有兩種初始狀態(tài) - “BOOT ROM/APP入口”和”FLASH存儲(chǔ)器”,如圖2.3所示。但是因?yàn)閱?dòng)ROM/APP入口和FLASH存儲(chǔ)器的地址是重疊的,它們都使用相同的地址(0x0000 ~ 0x07FF / 0xFFF7 ~ 0xFFFF),因此W7100A分別將”啟動(dòng)ROM/APP入口”和FLASH(64K)映射到代碼和數(shù)據(jù)存儲(chǔ)器。

用戶應(yīng)用程序代碼可以寫到FLASH中(映射為數(shù)據(jù)存儲(chǔ)器)。但在這種狀態(tài)下,FLASH不能作為程序存儲(chǔ)器,因?yàn)檫@種狀態(tài)是應(yīng)用于寫入應(yīng)用程序代碼。要將FLASH作程序存儲(chǔ)器使用,需要進(jìn)行存儲(chǔ)器映射的切換。為了達(dá)到這個(gè)要求,用戶需要設(shè)置BOOTEN為’0’,以選擇用戶應(yīng)用程序模式,啟動(dòng)代碼立即跳到應(yīng)用程序入口,然后應(yīng)用程序入口將禁止BOOT ROM,且將

FLASH存儲(chǔ)器映射為程序代碼存儲(chǔ)器,如圖2.3所示。改變程序代碼存儲(chǔ)器映射后,應(yīng)用程序入口跳轉(zhuǎn)到程序代碼的起始地址(0x0000),工作過程如下:

圖2.3 應(yīng)用程序入口(APP ENTRY)處理

如果選擇APP模式,整個(gè)64K的FLASH都將作為程序存儲(chǔ)器,但兩個(gè)FLASH和APP入口的地址都是重疊的。因此,為了完整使用64K的FLASH,”APP入口”必須從代碼存儲(chǔ)器中解除映射,為了達(dá)到這個(gè)目的,用戶應(yīng)該在啟動(dòng)代碼中將WCONF(0xFF)中的RB位置為0。這一過程如下所示:

圖2.4 RB=0時(shí)改變程序存儲(chǔ)器狀態(tài)

WCONF(0xFF)

當(dāng)FLASH區(qū)域超過0xFFF7時(shí),下面的代碼必須加入到啟動(dòng)代碼中。如果使用這種方法,W7100A在系統(tǒng)復(fù)位后將立即禁止APP入口地址。

在啟動(dòng)代碼中設(shè)置引腳BOOTEN為0,且清WCONF的RB位,那么W7100A內(nèi)部的64K FLASH將全部作為程序存儲(chǔ)器使用。

2.1.1程序存儲(chǔ)器等待狀態(tài)

程序存儲(chǔ)器的等待狀態(tài)是由內(nèi)部WTST(0x92)進(jìn)行管理的,等待狀態(tài)的周期是由WTST寄存器確定的。詳細(xì)內(nèi)容請(qǐng)參考2.5.10節(jié)’新的 & 擴(kuò)展的SFR’。

2.2 數(shù)據(jù)存儲(chǔ)器

W7100A內(nèi)部有64K字節(jié)的RAM、64K字節(jié)的TCPIP內(nèi)核和255字節(jié)的數(shù)據(jù)FLASH。數(shù)據(jù)FLASH用于存儲(chǔ)用戶IP地址、MAC地址、子網(wǎng)掩碼、端口號(hào)等。另外W7100A有16M的數(shù)據(jù)存儲(chǔ)外擴(kuò)能力,下圖是數(shù)據(jù)存儲(chǔ)映射圖。這個(gè)存儲(chǔ)器只能通過MOVX指令訪問,外部存儲(chǔ)器可以由用戶自己擴(kuò)展。

圖2.5 數(shù)據(jù)存儲(chǔ)映射

2.2.1數(shù)據(jù)存儲(chǔ)器等待狀態(tài)

數(shù)據(jù)存儲(chǔ)器的等待狀態(tài)由CKCON(0x8E)進(jìn)行管理。等待狀態(tài)的周期是由是由CKCON中的值確定的。請(qǐng)參考2.5.10節(jié)’新的&擴(kuò)展的SFR’的內(nèi)容。

2.3外部數(shù)據(jù)存儲(chǔ)器訪問

外部地址引腳和數(shù)據(jù)引腳有兩種訪問模式。第一種模式是用標(biāo)準(zhǔn)8051的地址鎖存方式,第二種是直接將所有引腳作為地址線。用戶也可以用地址引腳和數(shù)據(jù)引腳作為GPIO。請(qǐng)參考第10節(jié)’電氣特性’中關(guān)于外部存儲(chǔ)器訪問速度的內(nèi)容。

表2.1 外部存儲(chǔ)器訪問模式

2.3.1標(biāo)準(zhǔn)8051接口

這種方法的外部接口與通用8051一樣。但是地址范圍可以通過設(shè)置EM[2:0](外部存儲(chǔ)器模式,在WCONF(0xFF)中)來設(shè)置可訪問的地址范圍。當(dāng)用戶設(shè)置EM[2:0]到”001”,P0用于地址/數(shù)據(jù)總線,P2用于高位地址(A[15:8])。P1和P3用于GPIO。如下圖所示:

圖2.6 標(biāo)準(zhǔn)8051外部引腳訪問模式(EM[2:0]=“001”)

當(dāng)用戶設(shè)置EM[2:0]為”011”,就像上面的情形一樣,P0用于地址/數(shù)據(jù)總線,P2用于較高位的地址線(A[15:8])。但是P3用于最高位的地址總線(A[23:16]),地址總線被擴(kuò)展了。剩下的P1用作GPIO,如下圖所示:

圖2.7 標(biāo)準(zhǔn)8051外部引腳訪問模式(EM[2:0]=“011”)

在標(biāo)準(zhǔn)8051外部引腳的訪問模式下,MCU控制著ALE(地址鎖存使能)信號(hào)來區(qū)分地址和數(shù)據(jù)信號(hào)。用戶可以通過ALECON(0x9F)來設(shè)置ALE信號(hào)的持續(xù)長(zhǎng)度,對(duì)于ALECON的詳細(xì)信息,參考2.5.10節(jié)’新的&擴(kuò)展的SFR’。

2.3.2直接接口

這種方法直接將端口與地址線相連,當(dāng)用戶設(shè)置EM[2:0]為”101”,P0用于數(shù)據(jù)線(D[7:0],P1作為低地址線(A[7:0]),P2用于較高地址線(A[15:8])。剩下的P3用于GPIO。用這種方法,用戶能將端口連向地址線而不用地址鎖存,如下圖所示。

圖2.8 直接8051外部引腳訪問模式(EM[2:0]=“101”)

當(dāng)用戶設(shè)置EM[2:0]為”111”,P0,P1,P2與上一種情況的功能一樣,P3用于高端地址(A[23:16])。在這種模式下,沒有端口可用于GPIO,如下圖所示。

圖2.9 直接8051外部引腳訪問模式(EM[2:0]=“111”)

2.4內(nèi)部數(shù)據(jù)存儲(chǔ)器和特殊功能寄存器

內(nèi)部存儲(chǔ)器和特殊功能寄存器的地址映射如下圖表示:

圖2.10 內(nèi)部存儲(chǔ)器映射

內(nèi)部RAM的最低地址有4組分區(qū),每個(gè)分區(qū)包含8個(gè)寄存器;還有一個(gè)可以位尋址的字節(jié)段,地址范圍在0x20~0x2F,共128位,一個(gè)208字節(jié)的緩存區(qū)(0x30~0xFF),非直接地址模式范圍是:0x80~0xFF,最高128字節(jié)可以作為內(nèi)部存儲(chǔ)器訪問。但直接地址總線模式下的0x80~0xFF,這個(gè)區(qū)域作為SFR來訪問的。

圖2.11 SFR存儲(chǔ)器映射圖

新的SFR– 新的特殊功能寄存器(SFR),本節(jié)將對(duì)這些寄存器作詳細(xì)的描述。

擴(kuò)展的SFR –在標(biāo)準(zhǔn)8051基礎(chǔ)上擴(kuò)展的寄存器,在本節(jié)將詳細(xì)描述這些寄存器。

標(biāo)準(zhǔn) – 標(biāo)準(zhǔn)8051特殊功能寄存器,也將在本節(jié)描述。

最左邊那些地址的尾數(shù)為0或8的特殊功能寄存器都算可以位尋址的。

2.1特殊功能寄存器(SFR)定義

下面將描述W7100A內(nèi)核的特殊功能寄存器及其他們的功能。請(qǐng)參考2.5.11”外設(shè)特殊功能寄存器”章節(jié),了解標(biāo)準(zhǔn)的特殊功能寄存器和外設(shè)特殊功能寄存器。

2.5.1程序存儲(chǔ)器”寫”允許位

在PCON寄存器內(nèi)有一個(gè)程序存儲(chǔ)器”寫”允許位(PWE),它禁止或允許使用MOVX指令對(duì)程序存儲(chǔ)器進(jìn)行寫操作。

當(dāng)PWE設(shè)置”1”時(shí),”MOVX @DPTR,A”指令將數(shù)據(jù)從累加器A寫到程序存儲(chǔ)器中,地址由DPTR寄存器(DPH:DPL)確定。

“MOVX @Rx, A”指令將數(shù)據(jù)從累加器A寫入到程序存儲(chǔ)器中,地址由P2寄存器(bits 15:8)和Rx寄存器決定(bits 7:0)。

PCON(0x87)

圖2.12 PCON寄存器的PWE位

注意:

1.PCON.2 ~ PCON.0位為保留位,必須設(shè)置為0。

2.5.2程序存儲(chǔ)器等待狀態(tài)寄存器

等待狀態(tài)寄存器提供程序存儲(chǔ)器訪問時(shí)間信息。

WTST(0x92)

圖2.13 程序存儲(chǔ)器等待狀態(tài)寄存器

注意:

1.這些位只有在CPU取指令和MOVC指令時(shí)有效,因?yàn)槌绦虼鎯?chǔ)器寫操作是MOVX指令,所以CKCON寄存器調(diào)節(jié)”代碼寫”的脈沖寬度。

2.讀周期最小4個(gè)時(shí)鐘周期,最大8個(gè)時(shí)鐘周期。

表2.2 WTST寄存器的值

取指令時(shí),程序存儲(chǔ)器只能由MOVC指令訪問,程序存儲(chǔ)器可以最小4個(gè)時(shí)鐘等待狀態(tài)進(jìn)行讀操作,時(shí)序圖如下。

圖2.14 最少等待狀態(tài)(WTST=‘4’)時(shí),對(duì)程序存儲(chǔ)器同步讀的波形圖

說明:

1.Clk– 系統(tǒng)時(shí)鐘頻率 (88.4736MHz)

2.ADDRESS– 修改程序字節(jié)的實(shí)際地址

3.CODE_RD– 程序存儲(chǔ)器的讀信號(hào)

4.CODE– 寫入到程序存儲(chǔ)器的數(shù)據(jù)

程序存儲(chǔ)器可以用MOVX指令以最小4個(gè)時(shí)鐘周期寫入,它可以使W7100A內(nèi)核對(duì)高速和低速程序存儲(chǔ)器操作,時(shí)序圖如下:

圖2.15 最小等待狀態(tài)(WTST=‘4’)程序存儲(chǔ)器寫時(shí)序圖

注意:

1. Clk– 系統(tǒng)時(shí)鐘頻率(88.4736MHz)

2. ADDRESS– 修改程序字節(jié)的實(shí)際地址

3. CODE– 修改程序字節(jié)的實(shí)際代碼

4. CODE_WR– 程序存儲(chǔ)器的寫信號(hào)

5. PRG– 程序存儲(chǔ)器


上一頁 1 2 下一頁

評(píng)論


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

關(guān)閉