A SERVICE OF

logo

www.ti.com
2.5.5.21NoMatch(NOMATCH)Flag
2.6EMACControlModule
Arbiter and
bus switches
CPU
DMA Controllers
8K byte
descriptor
memory
Configuration
registers
Interrupt
control and
pacing logic
EMAC interrupts
MDIO interrupts
Configuration bus
Transmit and Receive
4 interrupts
to ARM
2.6.1InternalMemory
2.6.2BusArbiter
Architecture
ThisflagissetbytheEMACintheSOPbufferdescriptor,ifthereceivedpacketdidnotpassanyofthe
EMAC’saddressmatchcriteriaandwasnotdiscardedbecausetheRXCAFENbitwassetinthe
RXMBPENABLE.AlthoughthepacketisavalidEthernetdatapacket,itwasonlyreceivedbecausethe
EMACisinpromiscuousmode.
ThebasicfunctionsoftheEMACcontrolmodule(Figure9)aretointerfacetheEMACandMDIOmodules
totherestofthesystem,andtoprovideforalocalmemoryspacetoholdEMACpacketbufferdescriptors.
Localmemoryisusedtohelpavoidcontentiontodevicememoryspaces.Otherfunctionsincludethebus
arbiter,andinterruptcontrolandpacinglogiccontrol.
Figure9.EMACControlModuleBlockDiagram
TheEMACcontrolmoduleincludes8Kbytesofinternalmemory.Theinternalmemoryblockisessential
forallowingtheEMACtooperatemoreindependentlyoftheCPU.Italsopreventsmemoryunderflow
conditionswhentheEMACissuesreadorwriterequeststodescriptormemory.(Memoryaccessesto
readorwritetheactualEthernetpacketdataareprotectedbytheEMAC'sinternalFIFOs).
Adescriptorisa16-bytememorystructurethatholdsinformationaboutasingleEthernetpacketbuffer,
whichmaycontainafullorpartialEthernetpacket.Thuswiththe8Kmemoryblockprovidedfordescriptor
storage,theEMACmodulecansendandreceiveduptoacombined512packetsbeforeitneedstobe
servicedbyapplicationordriversoftware.
TheEMACcontrolmodulebusarbiteroperatestransparentlytotherestofthesystem.Itisused:
ToarbitratebetweentheCPUandEMACbusesforaccesstointernaldescriptormemory.
ToarbitratebetweeninternalEMACbusesforaccesstosystemmemory.
SPRUEQ6December2007EthernetMediaAccessController(EMAC)/ManagementDataInput/Output(MDIO)31
SubmitDocumentationFeedback