
2.10.3ReceiveAddressMatching
2.10.4HardwareReceiveQOSSupport
2.10.5HostFreeBufferTracking
Architecture
Thereceiveaddressblockcanstoreupto32addressestobefilteredormatched.Beforeenablingpacket
reception,alltheaddressRAMlocationsshouldbeinitialized,includinglocationstobeunused.The
systemsoftwareisresponsibleforaddingandremovingaddressesfromtheRAM.
AMACaddresslocationinRAMis53bitswideandconsistsof:
•48bitsoftheMACaddress.
•3bitsforthechanneltowhichavalidaddressmatchwillbetransferred.Thechannelisadon’tcareif
MATCHFILTbitiscleared
•Avalidbit
•Amatchorfilterbit
First,writetheindexintotheaddressRAMintheMACINDEXregistertostartwritingaMACaddress.
Thenwritetheupper32bitsoftheMACaddress(MACADDRHIregister),andthenthelower16bitsof
MACaddresswiththeVALIDandMATCHFILTcontrolbits(MACADDRLO).Thevalidbitshouldbe
clearedfortheunusedlocationsinthereceiveaddressRAM.
Themostcommonusesforthereceiveaddresssub-moduleare:
•SetEMACinpromiscuousmode,usingRXCAFENandRXPROMCHbitsintheRXMBPENABLE
register.Thenfilterupto32individualaddresses,whichcanbebothunicastand/ormulticast.
•Disablethepromiscuousmode(RXCAFEN=0)andmatchupto32individualaddresses,multicast
and/orunicast
Hardwarereceivequalityofservice(QOS)issupported,whenenabled,bytheTagProtocolIdentifier
formatandtheassociatedTagControlInformation(TCI)formatpriorityfield.Whentheincomingframe
length/typevalueisequalto81.00h,theEMACrecognizestheframeasanEthernetEncodedTag
ProtocolType.Thetwooctetsimmediatelyfollowingtheprotocoltypecontainthe16-bitTCIfield.Bits
15-13oftheTCIfieldcontainthereceivedframespriority(0to7).Thereceivedframeisalow-priority
frame,ifthepriorityvalueis0to3;thereceivedframeisahigh-priorityframe,ifthepriorityvalueis4to7.
Allframesthathavealength/typefieldvaluenotequalto81.00harelow-priorityframes.Receivedframes
thatcontainpriorityinformationaredeterminedbytheEMACas:
•A48-bit(6bytes)destinationaddressequalto:
–Thedestinationstation'sindividualunicastaddress.
–Thedestinationstation'smulticastaddress(MACHASH1andMACHASH2).
–Thebroadcastaddressofallones.
•A48-byte(6bytes)sourceaddress.
•The16-bit(2bytes)length/typefieldcontainingthevalue81.00h.
•The16-bit(2bytes)TCIfieldwiththepriorityfieldintheupper3bits.
•Databytes
•The4bytesCRC.
Thereceivefilterlowpriorityframethresholdregister(RXFILTERLOWTHRESH)andthereceivechannel
nfreebuffercountregisters(RXnFREEBUFFER)areusedinconjunctionwiththepriorityinformationto
implementreceivehardwareQOS.Low-priorityframesarefilteredifthenumberoffreebuffers
(RXnFREEBUFFER)fortheframechannelislessthanorequaltothefilterlowthreshold
(RXFILTERLOWTHRESH)value.HardwareQOSisenabledbytheRXQOSENbitinthereceive
multicast/broadcast/promiscuouschannelenableregister(RXMBPENABLE).
Thehostmusttrackfreebuffersforeachenabledchannel(includingunicast,multicast,broadcast,and
promiscuous),ifreceiveQOSorreceiveflowcontrolisused.Disabledchannelfreebuffervaluesaredo
notcares.Duringinitialization,thehostshouldwritethenumberoffreebuffersforeachenabledchannel
46EthernetMediaAccessController(EMAC)/ManagementDataInput/Output(MDIO)SPRUEQ6–December2007
SubmitDocumentationFeedback