新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機以太網控制芯片W7100A數據手冊(一)

        單片機以太網控制芯片W7100A數據手冊(一)

        作者: 時間:2016-11-26 來源:網絡 收藏

        1.4.7外部存儲器接口

        注:當用戶利用標準的8051接口使用外部存儲器時,用戶可以利用ALE引腳控制,在P0[7:0]傳輸數據[7:0]或地址[7:0]。

        1.4.8介質接口

        為了獲得最佳性能,

        1.盡可能使RXIP/RXIN信號對的長度(RX)相等。

        2.盡可能使TXOP/TXON信號對(TX)的長度相等。

        3.盡可能使RXIP和RXIN的信號靠近。

        4.盡可能使TXOP和TXON的信號靠近。

        5.盡可能使RX和TX的信號對遠離一些如偏置電阻或晶振的噪聲信號。

        6.使TX/RX的信號對保持正常。

        欲了解更多詳情,請參閱”W5100 Layout Guide.pdf.”

        1.4.9網絡指示燈

        1.4.10電源信號

        圖1.9 電源設計

        1.564引腳封裝說明

        1.5.1100和64引腳封裝的區別

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

        如需了解更多詳細PHYCONF SFR的資訊,請參閱第2.5.10"新的和擴展的SFR"。

        2. 存儲器

        W7100A的存儲器分為兩種類型:“代碼存儲器”和“數據存儲器”。每個存儲器可以使用內存鎖定功能。如果存儲器被鎖定,從外部訪問內部存儲器將會被拒絕,也不能使用W7100A的調試器。如需詳細地了解更多有關內存鎖定功能的資訊,請參閱"WizISP程序指南"。

        圖2.1展示了W7100A存儲器的大致結構。

        圖2.1 代碼/數據存儲器連接

        注意:

        我們推薦使用一個外部低壓電源探測器以預防電源電壓供給不足時的系統故障。

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

        請參考WIZnet網站上的iMCU W7100A的電路圖

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

        2.1程序存儲器

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

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

        圖2.2 啟動順序流程圖

        W7100A有兩種初始狀態 - “BOOT ROM/APP入口”和”FLASH存儲器”,如圖2.3所示。但是因為啟動ROM/APP入口和FLASH存儲器的地址是重疊的,它們都使用相同的地址(0x0000 ~ 0x07FF / 0xFFF7 ~ 0xFFFF),因此W7100A分別將”啟動ROM/APP入口”和FLASH(64K)映射到代碼和數據存儲器。

        用戶應用程序代碼可以寫到FLASH中(映射為數據存儲器)。但在這種狀態下,FLASH不能作為程序存儲器,因為這種狀態是應用于寫入應用程序代碼。要將FLASH作程序存儲器使用,需要進行存儲器映射的切換。為了達到這個要求,用戶需要設置BOOTEN為’0’,以選擇用戶應用程序模式,啟動代碼立即跳到應用程序入口,然后應用程序入口將禁止BOOT ROM,且將

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

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

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

        圖2.4 RB=0時改變程序存儲器狀態

        WCONF(0xFF)

        當FLASH區域超過0xFFF7時,下面的代碼必須加入到啟動代碼中。如果使用這種方法,W7100A在系統復位后將立即禁止APP入口地址。

        在啟動代碼中設置引腳BOOTEN為0,且清WCONF的RB位,那么W7100A內部的64K FLASH將全部作為程序存儲器使用。

        2.1.1程序存儲器等待狀態

        程序存儲器的等待狀態是由內部WTST(0x92)進行管理的,等待狀態的周期是由WTST寄存器確定的。詳細內容請參考2.5.10節’新的 & 擴展的SFR’。

        2.2 數據存儲器

        W7100A內部有64K字節的RAM、64K字節的TCPIP內核和255字節的數據FLASH。數據FLASH用于存儲用戶IP地址、MAC地址、子網掩碼、端口號等。另外W7100A有16M的數據存儲外擴能力,下圖是數據存儲映射圖。這個存儲器只能通過MOVX指令訪問,外部存儲器可以由用戶自己擴展。

        圖2.5 數據存儲映射

        2.2.1數據存儲器等待狀態

        數據存儲器的等待狀態由CKCON(0x8E)進行管理。等待狀態的周期是由是由CKCON中的值確定的。請參考2.5.10節’新的&擴展的SFR’的內容。

        2.3外部數據存儲器訪問

        外部地址引腳和數據引腳有兩種訪問模式。第一種模式是用標準8051的地址鎖存方式,第二種是直接將所有引腳作為地址線。用戶也可以用地址引腳和數據引腳作為GPIO。請參考第10節’電氣特性’中關于外部存儲器訪問速度的內容。

        表2.1 外部存儲器訪問模式

        2.3.1標準8051接口

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

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

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

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

        在標準8051外部引腳的訪問模式下,MCU控制著ALE(地址鎖存使能)信號來區分地址和數據信號。用戶可以通過ALECON(0x9F)來設置ALE信號的持續長度,對于ALECON的詳細信息,參考2.5.10節’新的&擴展的SFR’。

        2.3.2直接接口

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

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

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

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

        2.4內部數據存儲器和特殊功能寄存器

        內部存儲器和特殊功能寄存器的地址映射如下圖表示:

        圖2.10 內部存儲器映射

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

        圖2.11 SFR存儲器映射圖

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

        擴展的SFR –在標準8051基礎上擴展的寄存器,在本節將詳細描述這些寄存器。

        標準 – 標準8051特殊功能寄存器,也將在本節描述。

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

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

        下面將描述W7100A內核的特殊功能寄存器及其他們的功能。請參考2.5.11”外設特殊功能寄存器”章節,了解標準的特殊功能寄存器和外設特殊功能寄存器。

        2.5.1程序存儲器”寫”允許位

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

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

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

        PCON(0x87)

        圖2.12 PCON寄存器的PWE位

        注意:

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

        2.5.2程序存儲器等待狀態寄存器

        等待狀態寄存器提供程序存儲器訪問時間信息。

        WTST(0x92)

        圖2.13 程序存儲器等待狀態寄存器

        注意:

        1.這些位只有在CPU取指令和MOVC指令時有效,因為程序存儲器寫操作是MOVX指令,所以CKCON寄存器調節”代碼寫”的脈沖寬度。

        2.讀周期最小4個時鐘周期,最大8個時鐘周期。

        表2.2 WTST寄存器的值

        取指令時,程序存儲器只能由MOVC指令訪問,程序存儲器可以最小4個時鐘等待狀態進行讀操作,時序圖如下。

        圖2.14 最少等待狀態(WTST=‘4’)時,對程序存儲器同步讀的波形圖

        說明:

        1.Clk– 系統時鐘頻率 (88.4736MHz)

        2.ADDRESS– 修改程序字節的實際地址

        3.CODE_RD– 程序存儲器的讀信號

        4.CODE– 寫入到程序存儲器的數據

        程序存儲器可以用MOVX指令以最小4個時鐘周期寫入,它可以使W7100A內核對高速和低速程序存儲器操作,時序圖如下:

        圖2.15 最小等待狀態(WTST=‘4’)程序存儲器寫時序圖

        注意:

        1. Clk– 系統時鐘頻率(88.4736MHz)

        2. ADDRESS– 修改程序字節的實際地址

        3. CODE– 修改程序字節的實際代碼

        4. CODE_WR– 程序存儲器的寫信號

        5. PRG– 程序存儲器


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 广德县| 阿鲁科尔沁旗| 新田县| 安西县| 宣恩县| 阜平县| 来凤县| 和林格尔县| 江陵县| 蓝山县| 芒康县| 凤山市| 清苑县| 铁岭县| 屯留县| 乌拉特前旗| 吉水县| 祁门县| 河间市| 林芝县| 南乐县| 乌兰浩特市| 武清区| 沙洋县| 闽侯县| 尼玛县| 南昌市| 五河县| 昌江| 驻马店市| 高雄县| 虹口区| 潢川县| 万州区| 合作市| 河东区| 平乡县| 永嘉县| 诏安县| 汝城县| 邵武市|