NCN26010 10Base-T1S器件符合IEEE 802.3cg規(guī)范以及OPEN聯(lián)盟技術(shù)委員會6(Open Alliance,TC6)的SPI(串行外設接口)協(xié)議,并具有各種可選附加功能。
為了正確可靠地運行,在配置NCN26010時有一些注意事項,特別是因為該器件在沒有正確配置的情況下無法參與多點數(shù)據(jù)段(multi?drop segment)通信。此外,如果配置不當,還有可能長期干擾整個數(shù)據(jù)段。本應用筆記旨在為用戶提供針對其特定應用的 NCN26010 配置指南。這里僅描述了所需的基本設置,并通過配置示例對這些設置進行了討論。本文為第二部分,將介紹基本配置等。
基本配置
本節(jié)討論了使用NCN26010所需的最低配置設置,以及一些可選特性。內(nèi)容首先從無地址過濾的 CSMA/CD 簡單情況開始,隨后討論如何啟用其他附加功能:
?地址過濾
?PLCA
領導者(Leader)模式
跟隨者(Follower)模式
突發(fā)(Burst)模式
?FCS 幀校驗
?FCS 計算卸載
?增強噪聲抗擾度(Enhanced Noise Immunity,ENI)
將 NCN26010 配置為最簡單的操作形式,意味著將其設置為嚴格工作于 CSMA/CD(載波偵聽多路訪問/沖突檢測)模式,且不激活任何地址過濾選項。
首先,我們需要將 SPI 協(xié)議格式設置為所需的形式。在本應用筆記中,我們選擇了以下 SPI 協(xié)議傳輸選項:
接收的幀將與接收數(shù)據(jù)塊的payload起始位置對齊(即字節(jié)0),緊跟上位機對片選CSn有效信號。
存儲轉(zhuǎn)發(fā) "模式下的發(fā)送和接收
控制數(shù)據(jù)讀/寫保護禁用(詳見 [2] 第 7.4 節(jié))
每個數(shù)據(jù)塊的默認payload大小為 64 字節(jié)。
1. 器件重置
可通過三種不同方式強制器件復位
a) 供電循環(huán)(上電復位);
b) 使有效器件上的物理 RSTn 引腳;
或
c) 寫入配置寄存器。
由于有時錯誤處理需要器件復位,我們選擇了后一種通過寫入寄存器來復位器件的方法。
NCN26010 有一個允許軟復位的專用寄存器。在位于MMS 0、地址0x0003的RESET寄存器中設置位0將會觸發(fā)一次軟復位。假設您有用來寫入配置寄存器的例程,名為T1SRegWrite (MMS、ADDR、DATA)。要發(fā)出器件復位指令,您需要調(diào)用T1SRegWrite(0,0x0003,0x00000001).
2. PHY(物理層器件)相關配置
a.) PLCA
b.) ENI
在這種簡單的 CSMA/CD 配置中,除了通過將 PHYCRTL 寄存器(MMS0,地址 0xFF00)中的第 12 位設置為 1 來 "激活鏈路 "外,不需要任何操作:T1SRegWrite(0, 0xFF00, 0x00001000)
3. MAC (媒體訪問控制器)相關配置:
a.) FSC 過濾和計算
b.) 地址過濾
c.) 廣播和組播過濾
對于基本操作,我們選擇讓設備自動添加FCS(幀校驗序列),支持廣播和組播消息,并且不過濾任何 MAC 地址。這實際上使器件運行在混雜模式下。為了實現(xiàn)這一點,我們在MACCTRL0(MMS 1,地址:0x0000)中設置位8(FCS添加)、位1(TX使能)和位0(RX使能):T1SRegWrite(1, 0x0000, 0x00000103)
4. SPI (串行外設接口)配置
a.) 數(shù)據(jù)對齊
b.) 直通轉(zhuǎn)發(fā)或存儲轉(zhuǎn)發(fā)
c.) 數(shù)據(jù)塊payload大小
d.) TXC閾值
e.) 最后設置 SYNC 位以啟用通信
我們希望器件將所有新幀與片選有效信號(CS)對齊,從新的數(shù)據(jù)塊的字節(jié)0開始。該器件應在 TX 和 RX 的 "存儲轉(zhuǎn)發(fā),S&F "模式下工作,并將 TXC 閾值設為 16。
所有設置均在 SPICFG0 寄存器中完成 (MMS 0,地址 0x0004)。我們需要設置 SYNC(位 15)、CSARFE(位 13)、TXCTRHESH = 0x3(位 11 和 10)、CPS = 0x6(位 2:0)。由此產(chǎn)生的寄存器內(nèi)容為:0x0000AC06。
總之,按照下表所示的順序?qū)懭爰拇嫫鳎ㄎ覀兎Q之為配置卡 "card"),即可實現(xiàn)基本操作。
最小 CSMA/CD 配置
請注意,上述列表顯示的是復位后需要發(fā)送到器件的最基本信息,以便MACPHY能夠通過單對以太網(wǎng)介質(zhì)與上位計算機或MCU通信。
增加PLCA(物理層沖突避免)
當我們希望器件成為支持 PLCA 的網(wǎng)絡的一部分時,我們需要配置并啟用NCN26010 MAC PHY內(nèi)部的PLCA調(diào)和子層(RS)的功能。有關物理層沖突避免(PLCA)的詳細說明,請查閱 [1] 第 148 條。在啟用 PLCA 的沖突域中,需要有一個所謂的 "領導者"。這通常是被分配PLCA ID=0的器件。領導者是通過在線路上發(fā)送BEACON信號來啟動PLCA周期的站點。
領導者還需要配置一個最大節(jié)點數(shù),該數(shù)必須等于或高于分配給本地沖突域中所有站點的最高ID。
當我們希望器件成為跟隨者節(jié)點時,必須為其分配一個本地 ID 并啟用 PLCA。
具體方法是在 PLCACTRL1 寄存器中設置相應的節(jié)點 ID(位 7:0),并在 PLCACTRL0 寄存器中啟用 PLCA(位 15)。
例如,假設我們配置的節(jié)點選擇了 ID=7。那么基于前一個示例的配置命令就需要擴展,現(xiàn)在將顯示如下內(nèi)容(紅色線條表示增加的配置項):
最小 PLCA 跟隨者模式節(jié)點配置
當我們要將節(jié)點配置為 PLCA 領導者模式時,本地 ID 需要設為 0,最大節(jié)點數(shù)需要設為一個合理的數(shù)字(8 或更大)。
假設我們想設置一個領導者,以支持沖突域中的8個節(jié)點(多點傳送序列)。配置卡將更改為下圖所示:
最小 PLCA 頭節(jié)點(節(jié)點數(shù) 8)
我們可以根據(jù)這一原則增加更多的配置選項。例如,PLCA還提供了額外的功能,可用于處理應用中不同站點發(fā)送數(shù)據(jù)量不均的特定情況。例如,如果某個特定站點需要發(fā)送的數(shù)據(jù)量是其他所有站點的兩倍,則可以允許它在每個PLCA傳輸機會中發(fā)送兩幀或多于兩幀,而不僅僅是一幀。這可以通過啟用 PLCA 突發(fā)模式來實現(xiàn)(見 [1] 第 148.4.4.2 條)。要啟用突發(fā)模式,需將最大突發(fā)計數(shù)(在單個傳輸機會期間可能額外傳輸?shù)囊蕴W(wǎng)幀數(shù))的15:8位設置為站點在每個傳輸機會中可發(fā)送的額外幀數(shù)。當希望站點在每個TO(傳輸機會)發(fā)送兩幀時,我們需要將PLCABURST寄存器中的MAXBC設置為1。
配置PLCA頭節(jié)點(節(jié)點數(shù) 8)并啟用突發(fā)模式
增強噪聲抗擾度模式
在那些單對以太網(wǎng)(Single Pair Ethernet,SPE)線路受到較高噪聲水平影響的應用場景中(例如,靠近電機或交流線路,或是在單一多股雙絞線內(nèi)捆綁了多條SPE連接),NCN26010通過提供一個非標準特性——增強噪聲抗擾度(Enhanced Noise Immunity,ENI)——來展現(xiàn)出卓越的性能。ENI在啟用PLCA的數(shù)據(jù)段中工作時不會產(chǎn)生副作用。當在CSMA/CD工作模式中激活ENI時,站點沖突檢測的能力會略微下降,但ENI并不會中斷網(wǎng)絡通信。
啟用ENI可以通過簡單地設置PHYCFG1寄存器(MMS 4,地址0x8001)的第7位(bit 7)來完成。將此設置添加到之前的示例中,配置卡將如下所示:
配置PLCA頭節(jié)點(節(jié)點數(shù) 8),啟用突發(fā)模式,并開啟增強噪聲抗擾度(ENI)
地址過濾
接下來,我們可以探討如何啟用地址過濾功能。NCN26010具備四個可配置的MAC地址過濾器,可以通過設置通配符,來匹配各種目標MAC地址或單個特定地址。
要啟用地址過濾,首先要設置 MAC Control0 寄存器(MMS 1,地址 0x0000)中的 ADRF 字段(第 16 位)。然后在 ADDRFLT 寄存器中設置過濾規(guī)則,并在 ADDRMASK 寄存器中定義相應的過濾掩碼。
如果器件要過濾特定地址,則相應ADDRMASK中的所有位都必須設置為1。ADDRFLT 和 ADDRMASK 的長度均為 48 位,與標準以太網(wǎng) MAC 地址的長度一致。只有當MASK位設置為 1 時,這些位才會被考慮用于過濾。
例如:地址過濾器只能存儲與 MAC 地址 60bf02:03 匹配的輸入幀。
我們使用 ADDRFLT0H/L 將該地址輸入過濾器:
ADDRFILT0H=0x800060c0
ADDRFILT0L=0xbf010203
請注意,ADDRFILT0H 中的第 31 位設置為 1 時將啟用過濾規(guī)則。
由于我們希望過濾器查看整個 MAC 地址,因此需要相應地設置 ADDRMASK0H/L。
ADDRMAKS0H = 0x0000FFFF
ADDRMASK0L = 0xFFFFFFFF
要正確設置過濾器和掩碼,使用此功能的用戶必須了解其工作原理:
過濾器會在以下情況下生效:如果輸入以太網(wǎng)數(shù)據(jù)包的目標地址與過濾器寄存器的內(nèi)容進行按位與(bitwise AND)運算后結(jié)果相等。
因此,
目標MAC地址 & ADDRMASK = 過濾器內(nèi)容
這個等式必須成立,幀才能通過過濾器。
這樣,如果我們希望過濾器只匹配 OUI(60BF 是 onsemi 的 OUI)
我們可以設置過濾器掩碼為
ADDRMAKS0H = 0x0000FFFF
ADDRMASK0L = 0xFF000000
并將過濾器設置為
ADDRFLT0H = 0x00060C0
ADDRFLT0L = 0xBF000000
如果我們對輸入的目標地址 60BF01:15(此處使用二進制符號)進行測試
我們可以看到,MAC 地址過濾器接受所有目標地址以 60BF 開頭的幀。
如果我們要在現(xiàn)有的配置基礎上增加這個MAC地址過濾功能,配置如下:
配置PLCA頭節(jié)點(節(jié)點數(shù) 8),啟用突發(fā)模式,并開啟增強噪聲抗擾度(ENI)、MAC地址過濾功能
篇幅有限,更多內(nèi)容請掃碼下載NCN26010白皮書完整版。
-
寄存器
+關注
關注
31文章
5343瀏覽量
120348 -
接口
+關注
關注
33文章
8596瀏覽量
151145 -
SPI
+關注
關注
17文章
1706瀏覽量
91578 -
Mac
+關注
關注
0文章
1106瀏覽量
51474
原文標題:NCN26010 10Base-T1S器件配置指南,一次性學會
文章出處:【微信號:onsemi-china,微信公眾號:安森美】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論