Texas Instruments TMS320C645X Musical Instrument Amplifier User Manual


 
www.ti.com
SRIOFunctionalDescription
Table17.RXBufferDescriptorFieldDescriptions(continued)
FieldDescription
mailboxDestinationMailbox:Specifiesthemailboxtowhichthemessagewassent.
000000b:Mailbox0
000001b:Mailbox1
...
000100b:Mailbox4
...
111111b:Mailbox63
Formulti-segmentmessages,onlythetwoLSBsofthismailboxarevalid.Hardware
ignoresthefourMSBsiftheincomingmessagehasmultiplesegments.
Althoughtheswitchfabricmustdeliverthesegmentsofmulti-packetmessagesintheordertheywere
sent,bufferresourcesatthereceivingendpointmayonlybecomeavailableaftertheinitialsegment(s)ofa
messagehavehadtoberetried.Theperipheralcanacceptout-of-ordersegmentsandtrackcompletionof
theoverallmessage.ScenarioAinFigure20showsthisconcept.
Forapplicationsthataresetupforspecificmessageflowsbetweenasinglesourceanddestination,itmay
requirein-orderdeliveryofmessages.ThisisdescribedinscenarioBofFigure20.Thisscenarioissimilar
toscenarioA,althoughonemessagemayberetriedduetoalackofreceiverresources,subsequent
pipelinedmessagesmayarrivejustasresourcesarefreedup.Thisisaproblemforsystemsrequiring
in-ordermessagedelivery.Inthiscase,theperipheralneedstorecordtheSrc_id/mailbox/letterofthefirst
retriedmessageandretryallsubsequentnewrequestsuntilresourcesareavailableandasegmentfor
thatSrc_id/mailbox/letterisreceived.Aslongasallmessagesarefromthesamesourceandthatsource
sends(andretries)packetsinorder,thenallmessageswillbereceivedinorder.Notethatthissolutionis
lesseffectivewhenmultiplesourcesshareanRxQ.TheRXCPPIControlregister(Addressoffset0x0744)
setsthismodeofoperationonallreceivequeues.Oncethismodeissetandaretryisissued,thequeue
willcontinuetowaitforanincomingmessagethatmatchestheSrc_id/mailbox/lettercombination.Ifno
suchpacketarrives,theRXqueueisunusableinalockedstate.Toreenablethequeue,thein-orderbitin
theRXCPPIControlregistermustbedisabledbysoftwareforthatqueue,afterwhichitmaybeenabled
againifdesired.Thein-ordermodeofoperationisonlyvalidonmulti-segmentqueuesbecause
single-segmentmessageswillnevergenerateRETRYresponses.
46SerialRapidIO(SRIO)SPRU976March2006
SubmitDocumentationFeedback