Texas Instruments TMS320TCI648x Network Card User Manual


 
www.ti.com
SRIOFunctionalDescription
Inaddition,multiplemessagescanbeinterleavedatthereceiveportduetoorderingwithinaconnected
switch’soutputqueue.Thiscanoccurwhenusingasingleormultiplepriorities.TheRXCPPIblockcan
handlesimultaneousinterleavedmulti-segmentmessages.Thisimpliesthatstateinformation(write
pointersandsourceID)ismaintainedoneachsimultaneousmessagetoproperlystorethesegmentsin
memory.Thenumberofsimultaneoustransactionssupporteddirectlyimpactsthenumberofstatestobe
stored,andthesizeofthebufferdescriptormemoryoutsidetheperipheral.Withthisinmind,the
peripheral’ssupportedbufferdescriptorSRAMisparameterizable.Aminimumsizeof1.25Kbytesis
recommended,whichwillallowupto64bufferdescriptorstobestoredatanygiventimeforonecore.
Thesebufferdescriptorscanbeconfiguredtosupportanycombinationofsingleandmulti-segment
messages.Forexample,iftheapplicationonlyhandlessingle-segmentmessages,all64bufferscanbe
allottedtothatqueue.NotethatagivenRXqueuecancontainpacketsofallprioritieswhichhavebeen
directedfromanyofthereceiveports.
ACPUmaywishtostopreceivingmessagesandreclaimbuffersbelongingtoaspecificqueue.Thisis
calledqueueteardown.TheCPUinitiatesaRXqueueteardownbywritingtotheRXQueueTeardown
commandregister(AddressOffset0740h).
TeardownofanRXqueuecausesthefollowingactions:
IfteardownisissuedbysoftwareduringthetimewhentheRXstatemachineisidle,thenthestate
machinewillimmediatelystarttheteardownprocedure:
Ifthequeuetobetorndownisin-message(waitingforoneormoresegments),thenthequeuewill
betorndownandreportedwiththecurrentbufferdescriptor(teardownbitset,ownershipbit
cleared,CC=100b).Allotherfieldsofthebufferdescriptorareinvalid.Theperipheralcompletes
theteardownprocedurebyclearingtheHDPregister,settingtheCPregistertoFFFFFFFCh,and
issuinganinterruptforthegivenqueue.Theteardowncommandregisterbitisautomatically
clearedbytheperipheral.
Ifthequeueisnotin-message,andactive(nextdescriptoravailable),thenthenextdescriptorwill
befetchedandupdatedtoreportteardown(teardownbitset,ownershipbitcleared,CC=100b).All
otherfieldsofthebufferdescriptorareinvalid.Theperipheralcompletestheteardownprocedureby
clearingtheHDPregister,settingtheCPregistertoFFFFFFFCh,andissuinganinterruptforthe
givenqueue.Theteardowncommandregisterbitisautomaticallyclearedbytheperipheral.
Ifthequeueisnotin-message,butinactive(nextdescriptorunavailable),thennoadditionalbuffer
descriptorwillbewritten.TheHDPregisterandtheCPregisterremainunchanged.Aninterruptis
notissued.Theteardowncommandregisterbitisautomaticallyclearedbytheperipheral.
IfteardownisissuedbysoftwareduringthetimewhentheRXUstatemachineisbusy,theteardown
procedurewillbepostponeduntilthestatemachineisidle.
AftertheteardownprocessiscompleteandtheinterruptisservicedbytheCPU,thesoftwaremust
re-initializetheRXqueuetorestartnormaloperation.
ThebufferdescriptorqueuesaremaintainedinlocalSRAMjustoutsideoftheperipheral,asshownin
Figure21.Thisallowsthequickestaccesstime,whilemaintainingalevelofconfigurabilityfordevice
implementation.TheSRAMisaccessiblebytheCPUthroughtheconfigurationbus.Alternatively,the
bufferdescriptorscoulduseL2memoryaswell.
50SerialRapidIO(SRIO)SPRUE13ASeptember2006
SubmitDocumentationFeedback