SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
The DSP/BIOS Bridge


                                     Víctor Manuel Jáquez Leal
                                                Igalia




                                         06 February 2010




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge    06 February 2010   1 / 41
The TI OMAP3 processor




 I   The TI OMAP3 processor


 P   The DSP/BIOS Bridge


 Q   The ingredients


 R   Future




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   2 / 41
The TI OMAP3 processor



Parallel computing




       Serial computing is now dead.
               €—r—llel ™omputing @whi™h st—rted more th—n RH ye—rs —goA is —
               revolution th—t is now upon us
       Programming for serial computing is already dicult
               €rogr—mming for p—r—llel ™omputing will only ex—™er˜—te this di0™ulty
               por p—r—llelism to su™™eed it must produ™e ˜etter perform—n™eD
               e0™ien™y —nd reli—˜ility




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge     06 February 2010   2 / 41
The TI OMAP3 processor



OMAP 3530/20




       720 MHz ARM Cortex A8
       520 MHz TMS320C64x+ DSP
       POWERVR SGX Graphics Accelerator




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   3 / 41
The TI OMAP3 processor



Devices and boards using OMAP3




       There are a lot!




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   4 / 41
The TI OMAP3 processor



The C64x+ DSP




       Digital Signal Processor
               ƒpe™i—lized mi™ropro™essor
               por f—st exe™ution of digit—l sign—l pro™essing
               vow power ™onsumption
       Digital Signal Processing
               we—surement —nd (ltering of ™ontinuous re—lEworld —n—log sign—ls
               eudioD videoD spee™hD —re ex—mples of those sign—ls




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge    06 February 2010   5 / 41
The DSP/BIOS Bridge



DSP-GPP parallel computing




       Features to control the DSP
       Mechanisms to communicate with DSP
       Enabling parallel processing for multimedia acceleration




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   6 / 41
The DSP/BIOS Bridge



Available drivers




       dsp-gateway
               heveloped ˜y xoki— for the w—emo snternet „—˜lets
               st works on ywe€I —nd ywe€P
               st9s produ™tion re—dy
               st9s used on the xoki— xVHH —nd xVIH
               st follows vinux st—nd—rds —nd it9s ™lose to upstre—m —™™ept—n™e
               „here9s ™ode for ywe€Q ˜ut it h—sn9t ˜een thoroughly tested




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge      06 February 2010   7 / 41
The DSP/BIOS Bridge



Available drivers




       dsp-bridge
               yrigin—lly developed ˜y „s
               st still doesn9t meet vinux st—nd—rds —lthough there h—s ˜een — lot of
               progress
               ynly the e‚w side is —v—il—˜le —s open sour™eY the hƒ€ side is
               ™ompletely ™losed




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge      06 February 2010   8 / 41
The DSP/BIOS Bridge



Available drivers




       dsp-link
               e slimmer version of the dspE˜ridge
               elso developed ˜y „s
               st supports — wide v—riety of devi™es @h—†in™iD ywe€PD ywe€QD et™A
               „he kernel driver doesn9t meet the vinux kernel ™oding ™onventions
               „he sour™es h—ven9t ˜een su˜mitted for reviewD —nd it is not ™urrently
               pl—nned to ˜e merged into upstre—m kernels




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge     06 February 2010   9 / 41
The DSP/BIOS Bridge



DSP/BIOS Bridge

       General Architecture




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   10 / 41
The DSP/BIOS Bridge



Architecture




       It is designed for one GPP and one or more attached DSPs
               „he q€€ is ™onsidered the m—ster or host pro™essor
               „he —tt—™hed hƒ€s —re pro™essing resour™es th—t ™—n ˜e used ˜y
               —ppli™—tions running on the q€€




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   11 / 41
The DSP/BIOS Bridge



Architecture




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   12 / 41
The DSP/BIOS Bridge



Architecture




       The Bridge supplies a link between a GPP program and a DSP task
       The communication link is partitioned into two types:
               wess—ging @shortD (xedElength p—™ketsAX por p—ssing ™ontrol —nd st—tus
               inform—tion
               h—t— stre—ming @multipleD l—rge ˜u'ersAX for stre—ming re—lEtime d—t—
       Each sub-link operates independently
       A GPP client can specify what inputs and outputs a DSP task uses




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge    06 February 2010   13 / 41
The DSP/BIOS Bridge



GPP Sopftware Architecture




       The GPP OS see the DSP just as another peripheral device
       root@beagleboard:~# ls -la /dev/DspBridge
       crw-rw---- 1 root root 251, 0 Jan 1 2000 /dev/DspBridge




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   14 / 41
The DSP/BIOS Bridge



DSP Software Architecture




       From the DSP/BIOS perspective, the bridge provides
               e devi™eEindependent stre—ming sGy @ƒ„‚wA interf—™e
               e mess—ging interf—™e @xyhiA
               e ‚esour™e w—n—ger @‚wA ƒerver
                      The task environment is established by the RM Server




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge        06 February 2010   15 / 41
The DSP/BIOS Bridge



Components




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   16 / 41
The DSP/BIOS Bridge



Components (GPP)




       Resource Manager
               hyn—mi™—lly inst—nti—ting hƒ€ resour™es
               wonitoring hƒ€ resour™es
               hyn—mi™—lly lo—ding hƒ€ ™ode —s needed
               smplementing poli™ies for m—n—ging hƒ€ resour™es
       Platform Manager
               ƒt—ti™—lly lo—ding — ˜—se ™ode im—ge for the hƒ€
               ƒt—rting —nd stopping the hƒ€
               smplementing d—t— stre—ming




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge     06 February 2010   17 / 41
The DSP/BIOS Bridge



Components (GPP)




       OS adaptation layer
       DSP link driver for low level communication
       A dynamic conguration database (DCD) stores conguration
       information




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   18 / 41
The DSP/BIOS Bridge



Components (DSP)




       DSP/BIOS communicates with the GPP via the link driver
       On top of the DSP/BIOS sits the Resource Manager (RM) Server
               hyn—mi™—lly ™re—teD exe™ute —nd destroy hƒ€ pro™essing nodes under
               ‚esour™e w—n—ger ™ontrol
               ‚outing mess—ges ˜etween the q€€ —nd individu—l nodes
               eltering t—sk priorities
               ‚esponding to ‚esour™e w—n—ger ™on(gur—tion ™omm—nds
               ƒt—tus queries




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   19 / 41
The DSP/BIOS Bridge



Components (DSP)




       DSP task nodes
               „hey —re sep—r—te exe™ution thre—ds running on the hƒ€
               „hey implement ™ontrol or sign—l pro™essing —lgorithms
               „hey ™ommuni™—te with one —notherD —nd with the q€€
                      via short xed length messages and/or device-independent stream I/O.




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge        06 February 2010   20 / 41
The DSP/BIOS Bridge



GPP Side interface



       Manager
               …sed to o˜t—in hƒ€ pro™essor —nd m—nipul—te node ™on(gur—tion
               inform—tion
       Processor
               …sed to m—nipul—te hƒ€ pro™essor o˜je™tsD whi™h represent p—rti™ul—r
               hƒ€ su˜systems linked to the q€€
               €ro™essor o˜je™ts —re used to ™re—teD exe™ute —nd delete nodes on —
               p—rti™ul—r hƒ€ su˜system
               es hƒ€Gfsyƒ fridge ™lients m—ke pro™essor e€s ™—llsD the
               ™orresponding hƒ€ pro™essor will tr—nsition ˜etween — set of
               preEde(ned st—tesF




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   21 / 41
The DSP/BIOS Bridge



GPP Side interface




       Node
               …sed to m—nipul—te node o˜je™tsD whi™h represent ™ontrol —nd sign—l
               pro™essing elements running on — p—rti™ul—r hƒ€
       Stream
               …sed to m—nipul—te stre—m o˜je™tsD whi™h represent logi™—l ™h—nnels for
               stre—ming d—t— ˜etween the q€€ —nd nodes on — p—rti™ul—r hƒ€




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge    06 February 2010   22 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Load the device driver
       root@beagleboard:~# lsmod
       Module                  Size Used by
       dspbridge                 729 0
       bridgedriver          187569 1
       Load a base image to the DSP
       ~# cat /etc/modprobe.d/bridgedriver.conf
       options bridgedriver base_img=/lib/dsp/baseimage.dof




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   23 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling


       Open a handle to the DSP/BIOS Bridge device
        dsp •h— ndle a dsp•open @ A Y

        i f @ dsp •h—n dle ` H A {
           p r • e r r @ 4 f — i l e d t o open hƒ€4 A Y
           r e t u r n − IY
        }

       Reserve GPP-side resources for controlling a particular DSP
        i f @ 3 d s p • — t t — ™ h @ dsp•h—ndle D H D x…vv D 8p r o ™ A A {
            p r • e r r @ 4 dsp — t t — ™ h f — i l e d 4 A Y
            r e t a − IY
            goto l e — v e Y
        }


Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge     06 February 2010   24 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Allocate DSP node for the selected processor
        const dsp•uuid•t u u i d a
          { H xIP—Q™Q™I D H xdHIS D H xIIdR D H x W f D H xTW D
            { H xHH D H x™H D H x R f D H xQ— D H xSW D H x — e } } Y

        i f @ 3 d s p • n o d e • — l l o ™ — t e @ dsp•h—ndle D p r o™ D 8u u i d D
                                                   x…vv D x…vv D 8node A A {
            p r • e r r @ 4 dsp node — l l o ™ — t e f — i l e d 4 A Y
            r e t u r n x…vv Y
        }




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge          06 February 2010   25 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Create the node on the DSP
        i f @ 3 dsp•node•™re—te @ dsp•h—ndle D node A A {
            p r • e r r @ 4 dsp node ™ r e — t e f — i l e d 4 A Y
            r e t u r n x…vv Y
        }




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   26 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Launch the task node into their execute phase
        i f @ 3 dsp•node•run @ dsp•h—ndle D node A A {
            p r • e r r @ 4 dsp node r u n f — i l e d 4 A Y
            return f — l s e Y
        }

               yn™e the t—sk is runningD the q€€ ™lient ™—n stre—m d—t— ˜u'ers
               toGfrom the t—sk —s well —s ex™h—nge short mess—ges with the t—sk




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge    06 February 2010   27 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Stream data to/from DSP tasks
               „he q€€ ™lient then —llo™—tes d—t— ˜u'ers for the stre—m
                      If the buer are already pre-allocated, the GPP client can prepare the
                      buers for the stream
               yn™e —llo™—ted —nd prep—red
                      They can be used to submit buers to a stream
                      Submitting a data buer to a stream will not block GPP thread
                      execution.
                      They can request a buer back from a stream
                      Requesting a buer back from the stream may cause the GPP thread
                      to block



Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge           06 February 2010   28 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Exchange messages with DSP nodes
        i f @ 3 dsp•send•mess—ge @ dsp•h—ndle D node D I D H D H A A {
            p r • e r r @ 4 dsp node p u t mess—ge f — i l e d 4 A Y
            continue Y
        }

        i f @ dsp•node•get•mess—ge @ dsp•h—ndle D node D8msg D H A A
            p r i n t f @ 4 € i n g X s d 7d wsg 7d wem 7d’n4 D
                            msg F ™md D msg F —rg•I D msg F —rg•P A Y




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   29 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Terminate DSP nodes
        i f @ 3 dsp•node•termin—te @ dsp•h—ndle D node D
                                              8e x i t • s t — t u s A A {
            p r • e r r @ 4 dsp node t e r m i n — t e f — i l e d X 7l x 4 D
                            exit•st—tus AY
            return f — l s e Y
        }




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge          06 February 2010   30 / 41
The DSP/BIOS Bridge



Sequence for nodes controlling




       Delete DSP nodes
        i f @ 3 dsp•node•free @ dsp•h—ndle D node A A {
            p r • e r r @ 4 dsp node f r e e f — i l e d 4 A Y
            return f — l s e Y
        }




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge    06 February 2010   31 / 41
The ingredients



The kernel




       DSP/BIOS Bridge driver is not in Linus' branch yet
       Neither in linux-omap's main branch
               httpXGGgitFkernelForgGcpalinuxGkernelGgitGtmlindGlinuxEom—pE
               PFTFgitY—ashortlogYharefsGhe—dsGdsp˜ridge
               httpXGGdevFom—pzoomForgGcpatidsp˜ridgeGkernelE
               dsp˜ridgeFgitY—ashortlogYharefsGhe—dsGdsp˜ridge
               httpXGGgitoriousForgG£
                                    felipe™GlinuxEom—pGfelipe™




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   32 / 41
The ingredients



The GPP libraries




       TI dbapi
               httpXGGdevFom—pzoomForgGcpatidsp˜ridgeGusersp—™eE
               dsp˜ridgeFgitY—asumm—ry
       dsp_bridge
               httpXGGgithu˜F™omGfelipe™GgstEdsp




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   33 / 41
The ingredients



Applications




       Samples
               httpXGGgithu˜F™omGfelipe™GdspEdummy
               httpXGGgitoriousForgGvj—quezE˜e—gle˜o—rdGdspEs—mples
       Applications
               httpXGGm—emoFgitoriousForgGm—emoEmultimedi—GdspEtools
               httpXGGgithu˜F™omGfelipe™GgstEdsp




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   34 / 41
The ingredients



Socket Nodes




       Samples
               httpXGGdevFom—pzoomForgGcpatidsp˜ridgeGusersp—™eE
               dsp˜ridgeFgitY—asumm—ry
       Multimedia
               €—rt of ypenweˆ
               httpsXGGgforgeFtiF™omGgfGproje™tGopenm—xGfrsG
               httpXGG™odeFentropyw—veF™omGgitcpaleonor—FgitY—atree




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   35 / 41
The ingredients



C64x+ toolchain




       Free as beer
       Compiler
               httpsXGGwwwE
               —FtiF™omGdownlo—dsGsds•supportG„sgodegener—tion„oolsGdownlo—dFhtm
       DSP/BIOS (libraries)
               httpXGGsoftw—reE
               dlFtiF™omGdspsGdsps•registered•swGsdo•s˜Gt—rget™ontentG˜iosGindexFhtm
       dobuild tools
               €—rt of the usersp—™eEdsp˜ridge p—™k—ge




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   36 / 41
The ingredients



All together




       Marmita
               yi re™ipes overl—y
               st is — work in progress
               ynly tested in the fe—gle˜o—rd @rev fTA
               winim—l im—ge @IHw˜A
               httpXGGgitoriousForgGvj—quezE˜e—gle˜o—rdGm—rmit—




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge     06 February 2010   37 / 41
The ingredients



Marmita




       It's based on Angstrom distribution
       Provides recipes for
               felipe™9s kernel PFTFQP
                      DSS2
                      dspbridge
               gstEdsp
               dspEtools
               dspEs—mples
               li˜˜ridge @dsp˜ridge e€sA
               li˜omxEti




Víctor Manuel Jáquez Leal (Igalia)        The DSP/BIOS Bridge   06 February 2010   38 / 41
Future



OMAP4




       DSP/BIOS Bridge will be deprecated :(
               syslink is the new thing
                      ARM M3 1GHz dual core (Ducati)
                      DSP TMS320C64x (Tesla)
                      ARM A9 1GHz dual core
       http://dev.omapzoom.org/?p=tisyslink/kernel-syslink.git;a=summary




Víctor Manuel Jáquez Leal (Igalia)   The DSP/BIOS Bridge   06 February 2010   39 / 41
Future



The trend




       More cores
       More processing units
       More heterogeneity
       MORE COMPLEXITY




Víctor Manuel Jáquez Leal (Igalia)   The DSP/BIOS Bridge   06 February 2010   40 / 41
Future



Thank you




       Questions?




Víctor Manuel Jáquez Leal (Igalia)   The DSP/BIOS Bridge   06 February 2010   41 / 41

Contenu connexe

Tendances

FPGA Camp - Softjin Presentation
FPGA Camp - Softjin PresentationFPGA Camp - Softjin Presentation
FPGA Camp - Softjin Presentation
FPGA Central
 
DT-V21G11
DT-V21G11DT-V21G11
DT-V21G11
AVNed
 
CPE439FinalProjectReport
CPE439FinalProjectReportCPE439FinalProjectReport
CPE439FinalProjectReport
Jordan Read
 
Datavideo HS-550
Datavideo HS-550Datavideo HS-550
Datavideo HS-550
AVNed
 
Odyssey7Q+User-Manual-2016.01
Odyssey7Q+User-Manual-2016.01Odyssey7Q+User-Manual-2016.01
Odyssey7Q+User-Manual-2016.01
Erich Haubrich
 

Tendances (20)

Radius portable briefcase style workstation
Radius portable briefcase style workstationRadius portable briefcase style workstation
Radius portable briefcase style workstation
 
S5L2010 datasheet
S5L2010 datasheetS5L2010 datasheet
S5L2010 datasheet
 
Technotrend
TechnotrendTechnotrend
Technotrend
 
FPGA Camp - Softjin Presentation
FPGA Camp - Softjin PresentationFPGA Camp - Softjin Presentation
FPGA Camp - Softjin Presentation
 
Technotrend
TechnotrendTechnotrend
Technotrend
 
DT-V21G11
DT-V21G11DT-V21G11
DT-V21G11
 
Radius
RadiusRadius
Radius
 
DSA00339603
DSA00339603DSA00339603
DSA00339603
 
Dana Server Datasheet
Dana Server DatasheetDana Server Datasheet
Dana Server Datasheet
 
GVT Decoder - DataSheet
GVT Decoder - DataSheetGVT Decoder - DataSheet
GVT Decoder - DataSheet
 
SD Mobile DVR Specification
SD Mobile DVR SpecificationSD Mobile DVR Specification
SD Mobile DVR Specification
 
Dx diag
Dx diagDx diag
Dx diag
 
SCI F28x
SCI F28xSCI F28x
SCI F28x
 
Flash Programming F28x
Flash Programming F28xFlash Programming F28x
Flash Programming F28x
 
CPE439FinalProjectReport
CPE439FinalProjectReportCPE439FinalProjectReport
CPE439FinalProjectReport
 
Tevii
TeviiTevii
Tevii
 
Datavideo HS-550
Datavideo HS-550Datavideo HS-550
Datavideo HS-550
 
Odyssey7Q+User-Manual-2016.01
Odyssey7Q+User-Manual-2016.01Odyssey7Q+User-Manual-2016.01
Odyssey7Q+User-Manual-2016.01
 
Interfacing methods of microcontroller
Interfacing methods of microcontrollerInterfacing methods of microcontroller
Interfacing methods of microcontroller
 
Design Of A Usb Device Driver (Overview)
Design Of A Usb Device Driver (Overview)Design Of A Usb Device Driver (Overview)
Design Of A Usb Device Driver (Overview)
 

En vedette

CS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduceCS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduce
J Singh
 
Database ,14 Parallel DBMS
Database ,14 Parallel DBMSDatabase ,14 Parallel DBMS
Database ,14 Parallel DBMS
Ali Usman
 
Data Processing and Aggregation with MongoDB
Data Processing and Aggregation with MongoDB Data Processing and Aggregation with MongoDB
Data Processing and Aggregation with MongoDB
MongoDB
 

En vedette (9)

Introduction to Parallel Processing Algorithms in Shared Nothing Databases
Introduction to Parallel Processing Algorithms in Shared Nothing DatabasesIntroduction to Parallel Processing Algorithms in Shared Nothing Databases
Introduction to Parallel Processing Algorithms in Shared Nothing Databases
 
Massively Parallel Processing with Procedural Python (PyData London 2014)
Massively Parallel Processing with Procedural Python (PyData London 2014)Massively Parallel Processing with Procedural Python (PyData London 2014)
Massively Parallel Processing with Procedural Python (PyData London 2014)
 
CS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduceCS 542 Parallel DBs, NoSQL, MapReduce
CS 542 Parallel DBs, NoSQL, MapReduce
 
Load Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseLoad Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed Database
 
Database ,14 Parallel DBMS
Database ,14 Parallel DBMSDatabase ,14 Parallel DBMS
Database ,14 Parallel DBMS
 
Data Processing and Aggregation with MongoDB
Data Processing and Aggregation with MongoDB Data Processing and Aggregation with MongoDB
Data Processing and Aggregation with MongoDB
 
Dynamic Scaling: How Apache Flink Adapts to Changing Workloads (at FlinkForwa...
Dynamic Scaling: How Apache Flink Adapts to Changing Workloads (at FlinkForwa...Dynamic Scaling: How Apache Flink Adapts to Changing Workloads (at FlinkForwa...
Dynamic Scaling: How Apache Flink Adapts to Changing Workloads (at FlinkForwa...
 
Flink vs. Spark
Flink vs. SparkFlink vs. Spark
Flink vs. Spark
 
Parallel Database
Parallel DatabaseParallel Database
Parallel Database
 

Similaire à The DSP/BIOS Bridge - OMAP3

Track F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonicsTrack F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonics
chiportal
 
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux DevicesELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
Benjamin Zores
 
Inside ASUS ZENBOOK
Inside ASUS ZENBOOKInside ASUS ZENBOOK
Inside ASUS ZENBOOK
JJ Wu
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!
elliando dias
 

Similaire à The DSP/BIOS Bridge - OMAP3 (20)

GStreamer and SysLink (GStreamer Conference 2011)
GStreamer and SysLink (GStreamer Conference 2011)GStreamer and SysLink (GStreamer Conference 2011)
GStreamer and SysLink (GStreamer Conference 2011)
 
Radius 0711
Radius 0711Radius 0711
Radius 0711
 
Track F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonicsTrack F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonics
 
UEFI presentation
UEFI presentationUEFI presentation
UEFI presentation
 
Vxl Thin Client presentation
Vxl Thin Client presentation Vxl Thin Client presentation
Vxl Thin Client presentation
 
Beagle board101 esc-boston-2009b
Beagle board101 esc-boston-2009bBeagle board101 esc-boston-2009b
Beagle board101 esc-boston-2009b
 
OpenDBCamp Virtualization
OpenDBCamp VirtualizationOpenDBCamp Virtualization
OpenDBCamp Virtualization
 
haifux-pcie.pdf
haifux-pcie.pdfhaifux-pcie.pdf
haifux-pcie.pdf
 
Video Drivers
Video DriversVideo Drivers
Video Drivers
 
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux DevicesELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
 
Olo Cust Prez
Olo Cust Prez  Olo Cust Prez
Olo Cust Prez
 
FPL'2014 - FlexTiles Workshop - 3 - FlexTiles DSP Accelerators
FPL'2014 - FlexTiles Workshop - 3 - FlexTiles DSP AcceleratorsFPL'2014 - FlexTiles Workshop - 3 - FlexTiles DSP Accelerators
FPL'2014 - FlexTiles Workshop - 3 - FlexTiles DSP Accelerators
 
VPX Profiles To Platforms, SIE Computing Solutions
VPX Profiles To Platforms, SIE Computing SolutionsVPX Profiles To Platforms, SIE Computing Solutions
VPX Profiles To Platforms, SIE Computing Solutions
 
CICC 2001 - Reducing Multiple Design Flow Support Requirements with OLA
CICC 2001 - Reducing Multiple Design Flow Support Requirements with OLACICC 2001 - Reducing Multiple Design Flow Support Requirements with OLA
CICC 2001 - Reducing Multiple Design Flow Support Requirements with OLA
 
Lagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
Lagopus presentation on 14th Annual ON*VECTOR International Photonics WorkshopLagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
Lagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
 
Raspberry pi technical documentation
Raspberry pi technical documentationRaspberry pi technical documentation
Raspberry pi technical documentation
 
Inside ASUS ZENBOOK
Inside ASUS ZENBOOKInside ASUS ZENBOOK
Inside ASUS ZENBOOK
 
Jade SoC Graphics Controllers
Jade SoC Graphics ControllersJade SoC Graphics Controllers
Jade SoC Graphics Controllers
 
Craneboard
CraneboardCraneboard
Craneboard
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 

The DSP/BIOS Bridge - OMAP3

  • 1. The DSP/BIOS Bridge Víctor Manuel Jáquez Leal Igalia 06 February 2010 Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 1 / 41
  • 2. The TI OMAP3 processor I The TI OMAP3 processor P The DSP/BIOS Bridge Q The ingredients R Future Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 2 / 41
  • 3. The TI OMAP3 processor Parallel computing Serial computing is now dead. €—r—llel ™omputing @whi™h st—rted more th—n RH ye—rs —goA is — revolution th—t is now upon us Programming for serial computing is already dicult €rogr—mming for p—r—llel ™omputing will only ex—™er˜—te this di0™ulty por p—r—llelism to su™™eed it must produ™e ˜etter perform—n™eD e0™ien™y —nd reli—˜ility Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 2 / 41
  • 4. The TI OMAP3 processor OMAP 3530/20 720 MHz ARM Cortex A8 520 MHz TMS320C64x+ DSP POWERVR SGX Graphics Accelerator Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 3 / 41
  • 5. The TI OMAP3 processor Devices and boards using OMAP3 There are a lot! Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 4 / 41
  • 6. The TI OMAP3 processor The C64x+ DSP Digital Signal Processor ƒpe™i—lized mi™ropro™essor por f—st exe™ution of digit—l sign—l pro™essing vow power ™onsumption Digital Signal Processing we—surement —nd (ltering of ™ontinuous re—lEworld —n—log sign—ls eudioD videoD spee™hD —re ex—mples of those sign—ls Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 5 / 41
  • 7. The DSP/BIOS Bridge DSP-GPP parallel computing Features to control the DSP Mechanisms to communicate with DSP Enabling parallel processing for multimedia acceleration Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 6 / 41
  • 8. The DSP/BIOS Bridge Available drivers dsp-gateway heveloped ˜y xoki— for the w—emo snternet „—˜lets st works on ywe€I —nd ywe€P st9s produ™tion re—dy st9s used on the xoki— xVHH —nd xVIH st follows vinux st—nd—rds —nd it9s ™lose to upstre—m —™™ept—n™e „here9s ™ode for ywe€Q ˜ut it h—sn9t ˜een thoroughly tested Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 7 / 41
  • 9. The DSP/BIOS Bridge Available drivers dsp-bridge yrigin—lly developed ˜y „s st still doesn9t meet vinux st—nd—rds —lthough there h—s ˜een — lot of progress ynly the e‚w side is —v—il—˜le —s open sour™eY the hƒ€ side is ™ompletely ™losed Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 8 / 41
  • 10. The DSP/BIOS Bridge Available drivers dsp-link e slimmer version of the dspE˜ridge elso developed ˜y „s st supports — wide v—riety of devi™es @h—†in™iD ywe€PD ywe€QD et™A „he kernel driver doesn9t meet the vinux kernel ™oding ™onventions „he sour™es h—ven9t ˜een su˜mitted for reviewD —nd it is not ™urrently pl—nned to ˜e merged into upstre—m kernels Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 9 / 41
  • 11. The DSP/BIOS Bridge DSP/BIOS Bridge General Architecture Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 10 / 41
  • 12. The DSP/BIOS Bridge Architecture It is designed for one GPP and one or more attached DSPs „he q€€ is ™onsidered the m—ster or host pro™essor „he —tt—™hed hƒ€s —re pro™essing resour™es th—t ™—n ˜e used ˜y —ppli™—tions running on the q€€ Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 11 / 41
  • 13. The DSP/BIOS Bridge Architecture Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 12 / 41
  • 14. The DSP/BIOS Bridge Architecture The Bridge supplies a link between a GPP program and a DSP task The communication link is partitioned into two types: wess—ging @shortD (xedElength p—™ketsAX por p—ssing ™ontrol —nd st—tus inform—tion h—t— stre—ming @multipleD l—rge ˜u'ersAX for stre—ming re—lEtime d—t— Each sub-link operates independently A GPP client can specify what inputs and outputs a DSP task uses Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 13 / 41
  • 15. The DSP/BIOS Bridge GPP Sopftware Architecture The GPP OS see the DSP just as another peripheral device root@beagleboard:~# ls -la /dev/DspBridge crw-rw---- 1 root root 251, 0 Jan 1 2000 /dev/DspBridge Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 14 / 41
  • 16. The DSP/BIOS Bridge DSP Software Architecture From the DSP/BIOS perspective, the bridge provides e devi™eEindependent stre—ming sGy @ƒ„‚wA interf—™e e mess—ging interf—™e @xyhiA e ‚esour™e w—n—ger @‚wA ƒerver The task environment is established by the RM Server Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 15 / 41
  • 17. The DSP/BIOS Bridge Components Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 16 / 41
  • 18. The DSP/BIOS Bridge Components (GPP) Resource Manager hyn—mi™—lly inst—nti—ting hƒ€ resour™es wonitoring hƒ€ resour™es hyn—mi™—lly lo—ding hƒ€ ™ode —s needed smplementing poli™ies for m—n—ging hƒ€ resour™es Platform Manager ƒt—ti™—lly lo—ding — ˜—se ™ode im—ge for the hƒ€ ƒt—rting —nd stopping the hƒ€ smplementing d—t— stre—ming Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 17 / 41
  • 19. The DSP/BIOS Bridge Components (GPP) OS adaptation layer DSP link driver for low level communication A dynamic conguration database (DCD) stores conguration information Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 18 / 41
  • 20. The DSP/BIOS Bridge Components (DSP) DSP/BIOS communicates with the GPP via the link driver On top of the DSP/BIOS sits the Resource Manager (RM) Server hyn—mi™—lly ™re—teD exe™ute —nd destroy hƒ€ pro™essing nodes under ‚esour™e w—n—ger ™ontrol ‚outing mess—ges ˜etween the q€€ —nd individu—l nodes eltering t—sk priorities ‚esponding to ‚esour™e w—n—ger ™on(gur—tion ™omm—nds ƒt—tus queries Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 19 / 41
  • 21. The DSP/BIOS Bridge Components (DSP) DSP task nodes „hey —re sep—r—te exe™ution thre—ds running on the hƒ€ „hey implement ™ontrol or sign—l pro™essing —lgorithms „hey ™ommuni™—te with one —notherD —nd with the q€€ via short xed length messages and/or device-independent stream I/O. Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 20 / 41
  • 22. The DSP/BIOS Bridge GPP Side interface Manager …sed to o˜t—in hƒ€ pro™essor —nd m—nipul—te node ™on(gur—tion inform—tion Processor …sed to m—nipul—te hƒ€ pro™essor o˜je™tsD whi™h represent p—rti™ul—r hƒ€ su˜systems linked to the q€€ €ro™essor o˜je™ts —re used to ™re—teD exe™ute —nd delete nodes on — p—rti™ul—r hƒ€ su˜system es hƒ€Gfsyƒ fridge ™lients m—ke pro™essor e€s ™—llsD the ™orresponding hƒ€ pro™essor will tr—nsition ˜etween — set of preEde(ned st—tesF Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 21 / 41
  • 23. The DSP/BIOS Bridge GPP Side interface Node …sed to m—nipul—te node o˜je™tsD whi™h represent ™ontrol —nd sign—l pro™essing elements running on — p—rti™ul—r hƒ€ Stream …sed to m—nipul—te stre—m o˜je™tsD whi™h represent logi™—l ™h—nnels for stre—ming d—t— ˜etween the q€€ —nd nodes on — p—rti™ul—r hƒ€ Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 22 / 41
  • 24. The DSP/BIOS Bridge Sequence for nodes controlling Load the device driver root@beagleboard:~# lsmod Module Size Used by dspbridge 729 0 bridgedriver 187569 1 Load a base image to the DSP ~# cat /etc/modprobe.d/bridgedriver.conf options bridgedriver base_img=/lib/dsp/baseimage.dof Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 23 / 41
  • 25. The DSP/BIOS Bridge Sequence for nodes controlling Open a handle to the DSP/BIOS Bridge device dsp •h— ndle a dsp•open @ A Y i f @ dsp •h—n dle ` H A { p r • e r r @ 4 f — i l e d t o open hƒ€4 A Y r e t u r n − IY } Reserve GPP-side resources for controlling a particular DSP i f @ 3 d s p • — t t — ™ h @ dsp•h—ndle D H D x…vv D 8p r o ™ A A { p r • e r r @ 4 dsp — t t — ™ h f — i l e d 4 A Y r e t a − IY goto l e — v e Y } Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 24 / 41
  • 26. The DSP/BIOS Bridge Sequence for nodes controlling Allocate DSP node for the selected processor const dsp•uuid•t u u i d a { H xIP—Q™Q™I D H xdHIS D H xIIdR D H x W f D H xTW D { H xHH D H x™H D H x R f D H xQ— D H xSW D H x — e } } Y i f @ 3 d s p • n o d e • — l l o ™ — t e @ dsp•h—ndle D p r o™ D 8u u i d D x…vv D x…vv D 8node A A { p r • e r r @ 4 dsp node — l l o ™ — t e f — i l e d 4 A Y r e t u r n x…vv Y } Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 25 / 41
  • 27. The DSP/BIOS Bridge Sequence for nodes controlling Create the node on the DSP i f @ 3 dsp•node•™re—te @ dsp•h—ndle D node A A { p r • e r r @ 4 dsp node ™ r e — t e f — i l e d 4 A Y r e t u r n x…vv Y } Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 26 / 41
  • 28. The DSP/BIOS Bridge Sequence for nodes controlling Launch the task node into their execute phase i f @ 3 dsp•node•run @ dsp•h—ndle D node A A { p r • e r r @ 4 dsp node r u n f — i l e d 4 A Y return f — l s e Y } yn™e the t—sk is runningD the q€€ ™lient ™—n stre—m d—t— ˜u'ers toGfrom the t—sk —s well —s ex™h—nge short mess—ges with the t—sk Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 27 / 41
  • 29. The DSP/BIOS Bridge Sequence for nodes controlling Stream data to/from DSP tasks „he q€€ ™lient then —llo™—tes d—t— ˜u'ers for the stre—m If the buer are already pre-allocated, the GPP client can prepare the buers for the stream yn™e —llo™—ted —nd prep—red They can be used to submit buers to a stream Submitting a data buer to a stream will not block GPP thread execution. They can request a buer back from a stream Requesting a buer back from the stream may cause the GPP thread to block Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 28 / 41
  • 30. The DSP/BIOS Bridge Sequence for nodes controlling Exchange messages with DSP nodes i f @ 3 dsp•send•mess—ge @ dsp•h—ndle D node D I D H D H A A { p r • e r r @ 4 dsp node p u t mess—ge f — i l e d 4 A Y continue Y } i f @ dsp•node•get•mess—ge @ dsp•h—ndle D node D8msg D H A A p r i n t f @ 4 € i n g X s d 7d wsg 7d wem 7d’n4 D msg F ™md D msg F —rg•I D msg F —rg•P A Y Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 29 / 41
  • 31. The DSP/BIOS Bridge Sequence for nodes controlling Terminate DSP nodes i f @ 3 dsp•node•termin—te @ dsp•h—ndle D node D 8e x i t • s t — t u s A A { p r • e r r @ 4 dsp node t e r m i n — t e f — i l e d X 7l x 4 D exit•st—tus AY return f — l s e Y } Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 30 / 41
  • 32. The DSP/BIOS Bridge Sequence for nodes controlling Delete DSP nodes i f @ 3 dsp•node•free @ dsp•h—ndle D node A A { p r • e r r @ 4 dsp node f r e e f — i l e d 4 A Y return f — l s e Y } Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 31 / 41
  • 33. The ingredients The kernel DSP/BIOS Bridge driver is not in Linus' branch yet Neither in linux-omap's main branch httpXGGgitFkernelForgGcpalinuxGkernelGgitGtmlindGlinuxEom—pE PFTFgitY—ashortlogYharefsGhe—dsGdsp˜ridge httpXGGdevFom—pzoomForgGcpatidsp˜ridgeGkernelE dsp˜ridgeFgitY—ashortlogYharefsGhe—dsGdsp˜ridge httpXGGgitoriousForgG£ felipe™GlinuxEom—pGfelipe™ Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 32 / 41
  • 34. The ingredients The GPP libraries TI dbapi httpXGGdevFom—pzoomForgGcpatidsp˜ridgeGusersp—™eE dsp˜ridgeFgitY—asumm—ry dsp_bridge httpXGGgithu˜F™omGfelipe™GgstEdsp Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 33 / 41
  • 35. The ingredients Applications Samples httpXGGgithu˜F™omGfelipe™GdspEdummy httpXGGgitoriousForgGvj—quezE˜e—gle˜o—rdGdspEs—mples Applications httpXGGm—emoFgitoriousForgGm—emoEmultimedi—GdspEtools httpXGGgithu˜F™omGfelipe™GgstEdsp Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 34 / 41
  • 36. The ingredients Socket Nodes Samples httpXGGdevFom—pzoomForgGcpatidsp˜ridgeGusersp—™eE dsp˜ridgeFgitY—asumm—ry Multimedia €—rt of ypenweˆ httpsXGGgforgeFtiF™omGgfGproje™tGopenm—xGfrsG httpXGG™odeFentropyw—veF™omGgitcpaleonor—FgitY—atree Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 35 / 41
  • 37. The ingredients C64x+ toolchain Free as beer Compiler httpsXGGwwwE —FtiF™omGdownlo—dsGsds•supportG„sgodegener—tion„oolsGdownlo—dFhtm DSP/BIOS (libraries) httpXGGsoftw—reE dlFtiF™omGdspsGdsps•registered•swGsdo•s˜Gt—rget™ontentG˜iosGindexFhtm dobuild tools €—rt of the usersp—™eEdsp˜ridge p—™k—ge Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 36 / 41
  • 38. The ingredients All together Marmita yi re™ipes overl—y st is — work in progress ynly tested in the fe—gle˜o—rd @rev fTA winim—l im—ge @IHw˜A httpXGGgitoriousForgGvj—quezE˜e—gle˜o—rdGm—rmit— Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 37 / 41
  • 39. The ingredients Marmita It's based on Angstrom distribution Provides recipes for felipe™9s kernel PFTFQP DSS2 dspbridge gstEdsp dspEtools dspEs—mples li˜˜ridge @dsp˜ridge e€sA li˜omxEti Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 38 / 41
  • 40. Future OMAP4 DSP/BIOS Bridge will be deprecated :( syslink is the new thing ARM M3 1GHz dual core (Ducati) DSP TMS320C64x (Tesla) ARM A9 1GHz dual core http://dev.omapzoom.org/?p=tisyslink/kernel-syslink.git;a=summary Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 39 / 41
  • 41. Future The trend More cores More processing units More heterogeneity MORE COMPLEXITY Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 40 / 41
  • 42. Future Thank you Questions? Víctor Manuel Jáquez Leal (Igalia) The DSP/BIOS Bridge 06 February 2010 41 / 41