Texas Instruments TMS320TCI648x Network Card User Manual


 
www.ti.com
acklD rsv prio tt 1010 destID sourcelD Reserved srcTID
Reserved DoorbellReg# rsv
Doorbellbit
CRC
PHYLOGTRALOGTRAPHY
5 3 2 2 4 8 8 8 8
9 2
1
4
16
1632
16
4
2
10
info(msb)
8
info(lsb)
8
SRIOFunctionalDescription
foranydesiredpurpose;seetheRapidIOInterconnectSpecification,Section3.1.4,Type10Packet
Formats(DoorbellClass),forinformationabouttheinfofield.Aprocessingelementthatreceivesa
doorbelltransactiontakesthepacketandputsitinadoorbellmessagequeuewithintheprocessing
element.Thisqueuemaybeimplementedinhardwareorinlocalmemory.Thisbehaviorissimilartothat
oftypicalmessagepassingmailboxhardware.Thelocalprocessorisexpectedtoreadthequeueto
determinethesendingprocessingelementandtheinfofield,anddeterminewhatactiontotake.
TheDOORBELLfunctionalityisuser-defined,butthispackettypeiscommonlyusedtoinitiateDSPcore
(CPU)interrupts.ADOORBELLpacketisnotassociatedwithaparticulardatapacketthatwaspreviously
transferred,sotheinfofieldofthepacketmustbeconfiguredtoreflecttheDOORBELLbittobeserviced
forthecorrectTID(TransferInformationDescriptor)informationtobeprocessed.
Figure26.DoorbellOperation
TheDOORBELLpacket’s16-bitINFOfieldindicateswhichDOORBELLregisterinterruptbittoset.There
arefourDOORBELLregisters,eachcurrentlywith16bits,allowing64interruptsourcesorcircularbuffers
(seeTable23).EachbitcanbeassignedtoanycoreasdescribedbelowbytheInterruptCondition
RoutingRegisters.Additionally,eachstatusbitisuser-definedfortheapplication.Forinstance,itmaybe
desirabletosupportmultipleprioritieswithmultipleTIDcircularbufferspercoreifcontroldatausesahigh
priority(forexample,priority=2),whiledatapacketsaresentonpriority0or1.Thisallowsthecontrol
packetstohavepreferenceintheswitchfabricandarriveasquicklyaspossible.Sinceitmayberequired
tointerrupttheCPUforbothdataandcontrolpacketprocessingseparately,separatecircularbuffersare
used,andDOORBELLpacketsneedtodistinguishbetweenthemforinterruptservicing.Ifanyreserved
bitintheDOORBELLinfofieldisset,anerrorresponseissent.
Table23.ExamplesofDOORBELL_INFODesignations(SeeFigure26)
infoFieldSegmentsValueWrittenTo
DOORBELL_INFOAssociatedMappedToThis
DoorbellDoorbellFieldOfDoorbellInterruptDoorbellInterrupt
ReservedReg#rsvBitLSUn_REG5RoutingBitsStatusBit
000000000b00b0b0000b0000hDOORBELL0_ICRR[3:0]DOORBELL0_ICSR[0]
000000000b00b0b1001b0009hDOORBELL0_ICRR2[7:4]DOORBELL0_ICSR[9]
000000000b01b0b0111b0027hDOORBELL1_ICRR[31:28]DOORBELL1_ICSR[7]
000000000b01b0b1100b002ChDOORBELL1_ICRR2[19:16]DOORBELL1_ICSR[12]
000000000b10b0b0101b0045hDOORBELL2_ICRR[23:20]DOORBELL2_ICSR[5]
000000000b10b0b1111b004FhDOORBELL2_ICRR2[31:28]DOORBELL2_ICSR[15]
000000000b11b0b0110b0066hDOORBELL3_ICRR[27:24]DOORBELL3_ICSR[6]
000000000b11b0b1011b006BhDOORBELL3_ICRR2[15:12]DOORBELL3_ICSR[11]
SerialRapidIO(SRIO) 64SPRUE13ASeptember2006
SubmitDocumentationFeedback