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