Excelfore Ethernet AVB Software Architecture On ARM Cortex SOCs
Excelfore Ethernet AVB Software Architecture On ARM Cortex SOCs
Excelfore Ethernet AVB Software Architecture On ARM Cortex SOCs
Document Number:
990901-FR-60-0108-1
December12, 2012
Excelfore Corporation
43255 Mission Boulevard Fremont, California 94539 USA
CopyrightNotice:2012ExcelforeCorporation ThisdocumentcontainsproprietaryinformationofExcelforeCorporation.Nopartofthisdocumentmaybe reproduced,stored,copied,ortransmittedinanyformorbymeansofelectronic,mechanical,photocopyingor otherwise,withouttheexpressconsentofExcelforeCorporation.Thisdocumentisintendedfortherecipientonly andnotmeantfordistribution.
Excelfore Confidential
Table of Contents
1 2 3 4 5 Introduction ........................................................................................................................... 1 Need for AVB in Industry .................................................................................................... 1 AVB System Glossary ........................................................................................................... 2 Basic System Setup ............................................................................................................... 3 Multi-display Projection System under AVB Components .............................................. 4 5.1 Linux Ethernet Driver ..................................................................................................... 4 5.2 Gstreamer ........................................................................................................................ 4 5.3 Media Clock/Vsync Phase Synchronization ................................................................... 5 5.3.1 gPTP (Precision Time Protocol) ................................................................................. 6 6 AVB System Block Diagram ................................................................................................ 7
1 Introduction
ThisdocumentisawhitepaperthatdescribesanAVBS/WArchitectureimplemented onARMCortexA8SiliconwithanintegratedEthernet1588MAC. MorespecificallytheAVBimplementationiscreatedonaTexasinstrumentsCentaurus Platform(TI814X).
Page 3
5.2 Gstreamer
TheAVBSystemwillusetheopensourceGstreamer. Gstreamerisalibraryfor constructinggraphsofmediahandlingcomponents.Theapplicationsitsupportsrange fromsimpleaudioplayback,audio/videostreamingtocomplexaudio(mixing)andvideo (nonlinearediting)processingMultimediastreams.Gstreamerwillbeusedforthe videodecoder,scalingandpresentation. TIsupportsGstreamerthroughtheirOpenmaxCodeccomponents.Gstreamerwill providegreaterflexibilitythanusingtheTIOpenmaxcomponentsdirectly.Special featuressuchvideocropping,videoscalingetc.,arebetterhandledinGstreamer. StandardsupportforIEEE1722packetsisavailableaspartoftheAVBstackfrom Excelfore.Howeverinterfacesforspecializedprotocolse.g.RTPcanbeprovidedaspart ofthedelivery. AstandardlistoffilterstoenablemultimediacomponentsisprovidedwiththeSDK.. Thesewillincludeallcomponentsofthefiltergraphusinghelperse.g.playbin,decoder bin.
2012, Excelfore Corporation Page 4
ThePSThastobeextractedfromtheencodedstreamreceivedatthelistenerandmade availableatthestartofpresentationwhilethecompressedimageisdecodedandready tobedisplayed.AttentionhastobepaidtoFramereorderingfordisplayasFramesare compressedandordereddifferentlyforeaseofdecoding.WeareunlikelytohaveB framesinourh.264.RegardlessevenifthedecoderusesonlyIorbothI&Pframes, thereneedstobetimestamps. WerecommendthattheTalkermulticastasingleHDstreamtoallfourlisteners.An optionalmethodavailableistotransmitfourseparateHDstreams,oneforeach listener,butthisrequiresfourtimesthebandwidth.ThereisaHDstreamdecoderin eachlistenerbox. ThevideorendererwilltimethepresentationofdecodedframesbasedontheMedia clockusingPTS(Presentationtimestamps).Fortypicalvideoprojectionapplications, onlyvideoneedstobesynchronized. ForalltheflexibilitythatisprovidedbygStreamer,itdoescomewithaddedoverhead forprocessingwhichcanbecomeabottleneck.IfCPUprocessinghastobeoptimized thenamorecompactschemeisrecommendedthatbypassesthegStreamer framework.
eventhappens,ateveryVsyncInterrupttheSystemclockismonitoredtomakeany adjustmentstothevideoclockfrequency,tomaintainthesynchronization.Thisisthe phasesynchronizationoftheVsync. Amechanismhastobeaddedthatwillallowallsystemstosynchronizeandstarttheir presentationatthesametime.Thecontrolsystemcandecidehowtomovethevideo duringthevsyncinterrupte.g.ifitisslowtoskipaframeandiffaster,thentorepeata frame.AVCOcontrollerHWclockcanmakethingseasierasitprovidesmoreprecise timingcontrol. AllvideocontrollersystemsetupisthesamewitheveryCentaurusplatform.Firstthe videodriverhastobesynchronized.Theneverylistenerhastobesetupwithprecise timesoastostartinsync.Thereissomemaintenancecodethatisrunningduringthe vsyncinterrupttomakesurethatclocksinthelistenersarenotdriftingawayandare undercontrol. Whenthesystembootsupthevideoisgoingtobefreerunningandtheremaynotbea control.Howevercontrolcanbeexercisedthroughthevideodriverandaresetcanbe executedataspecifiedsystemtime.Videocanbedisabledandthenenabledona specifiedtimee.g.asystemmessagecanbeissuedtohavearesetin1ms.Targetisto maintainVsyncSynchronizationacrossallfourtalkersataprecisionbetterthan1ms drift.
VideoApplicationbuildsthefiltergraphandprovidesthehigherlevelmessagesfor videopresentatione.g.Play,Start,Stop,FF,RW.Thevideopayloadgetsdecoded, formattedandmadeavailabletotheVideoSubSystemforapresentation.Ahigh precisionclocksourcewhichisphaselockedwiththeClockDriverSync,isusedto generatetheSystemclockandtheCPTSclock.TheSystemclocksynchronizesthevideo subsystemclock,Mediaclockand802.1AgPTPlayer.TheCPTSclockdrivestheCPTS HWTimestampcontrol,whichisthenmadeavailabletothegPTPlayer.Synch MessageswhichcomeasrawEthernetpacketsandarepresentedtothegPTPlayer.Th e802.1ASlayer,phaselockstheclockdrivertotheEthernetclock.TheSourceclock providestriggerstotheclockdriverandthesystemclock.TheSystemandClockdriver serveasinputstotheCPTSsystemwhichisbeingsynchronizedwiththesystemtime throughthesyncmessages. TheSystemclockismadeavailabletotheentiresystemblocktosynchronizetheir operations.
Page 8