This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Communication of DSP0 with DSP1 on DSPC8681 board ???



Hi ,

I am using DSPC8681 .

I want to communicate between the DSP0 and DSP1 on that board.

i know hyperlink is the one way to do that work but my main concern is below:

1) Whether JTAG is required to communication and port the code on hardware ???

2) I don't have JTAG for doing communication from pc to hardware then How i can load the .out of my code on board...

3) pcie coding is required to do to achieve the same ??

Please give commnetns on each of the points ..

-Studinstru

  • Studinstru,

    Have you checked Desktop Linux SDK available @ http://software-dl.ti.com/sdoemb/sdoemb_public_sw/desktop_linux_sdk/latest/index_FDS.html? You can download a .out file from X86 without using JTAG.

    Regards,

    Vivek

  • Thanks Vivek,

     My Question is like ,I want to write my own code where there is communication between two DSP's .

    But How i can write a code two communicate between the different DSP's on the DSPC8681 board ???

    Whether I have to follow pcie coding or I haveto check for Hyperlink coding scheme ...

    -Studinstru

  • Studinstru,

    What is your application and what amount of data transfers are you looking for between DSPs? Depending on the bandwidth requirements between DSPs, you'll have to pick PCIe vs. Hyperlink.

    In the current web-published release of Desktop Linux SDK, there are 2 approaches to solve the problem (both via PCIe).

    a) a common CMEM memory on X86 can be mapped to be visible in all the participating DSPs. That memory can be used to exchange data between DSPs. 

    b) a portion of DDR on one chip can be made available to be mapped (statically) to PCIe space on the other DSP. This mapping is done by the host (x86) up front.

    We have a prototype (not productized yet) where PCIe driver runs on the DSP and that'll allow run-time map and transfer any DDR content of one device to the other device. I am not sure if your application really requires this flexibility. 

    Based on your algorithm requirements and partitioning, we can propose a suitable scheme.

    Regards,

    Vivek

  • Vivek,

    As per my architecture I wan to run H264 HP encoder and decoder on the advantech DSPC8681.

    H264 HP Decoder will run first and then by using this I want to do smart encoding .

    Actually other applications also I want o run on that board simultaneously related to my architecture.

    As per "TI"released H264 encoder and decoder is not real time and I am waiting for the next release of that optimised codec.

    I have clear idea about my architecture .I want to do smart encoding at real time with HD 1080P.

    I just want to understand which is the best way to achieve the communication between the dsp's on this board ???

    If I will prefer the PCIe communication so,can I get any useful link to do learn/understand the coding on that DSPC-8681 board for DSP's communication ??

    And one most important question that ,can I try to write sample code on simulator for communication for the two DSP's ??(or Hardware is must  for writing and running the code ???)

    Waiting for your reply.......

    -Studinstru

  • Studinstru,

    Can you please elaborate on what you mean by smart encoding? Do you want to utilize MVs from the Decoder while doing Encoding? Do you have the source code for  the codecs to make this enhancement?

    TI's H264 HP Decoder enhancement to support 1080p30/i60 real time is in progress and will be available to download from TI website.

    Regarding the data transfer are you looking to transfer YUV 1080p30 between the two chips? What kind of end to end delay is tolerable in your application? 

    Regards,

    Vivek

     

  • Vivek,

    I want to use predicted data and some mb parameters from decoder for smart encoding.

    Regarding delay concerns ,I think that i want to do decoding and encoding on dsp side only and other module on pc side .

    Till the TI code release ,I am using the reference h264 codec specially encoder for porting on dspc with some dsp otimisation ...

    So pc to dsp communication(vice versa) and dsp to dsp communication is required must ..

    May i get any good link to understand the dsp to dsp communication on dspc board ??

    As there are no examples are available between DSP to DSP communication  ..??

    Can you help me to get this link or documents to understand the communication coding ...??

    -Studinstru

  • >> I want to use predicted data and some mb parameters from decoder for smart encoding

    Do you have the codec SRC code to make these enhancements?

    >> I am using the reference h264 codec specially encoder for porting on dspc with some dsp otimisation ...

    What reference h264 codec is this? 

    >> For DSP2DSP communication

    Please refer to pciedrv.h file., APIs: pciedrv_map_dspaddr_to_inbound(), and pciedrv_map_outbound_to_rmt_dspaddr(). There is an example usage shown in the API comments.

    Regards,

    Vivek

     

  • 2313.pciedrv.h

    Do you have the codec SRC code to make these enhancements?

    -Presently Ti doesnot release the optimised code so I don't have the source code.

    What reference h264 codec is this?

    - i am using jm code

    Please refer to pciedrv.h file., APIs: pciedrv_map_dspaddr_to_inbound(), and pciedrv_map_outbound_to_rmt_dspaddr(). There is an example usage shown in the API comments.

    -In my pc ,desktop-linux-sdk_01_00_00_04 is installed and that sdk having pciedrv.h file at given location:  /sdk/pciedrv/pciedrv.h .

    But following .h file don't have the given pciedrv_map_dspaddr_to_inbound() and pciedrv_map_outbound_to_rmt_dspaddr()

    Whether I have to uninstall the given sdk and latest sdk that is desktop-linux-sdk_01_00_00_07_64bit_setuplinux.bin  to install ??

    Please can you let me know whether simulator will help me in running the DSP to DSp communication code  ??

    -Studinstru

  • Studinstru,

    Who is your local sales or FAE contact? You'd need to license the source code.

    Regarding the APIs, they are part of Desktop Linux SDK 1.0.0.7.

    You will need to test on actual hardware. Connect CCS/JTAG to both the chips and check in memory watch window - that you are able to write from one chip and read on the other and vice-versa.

    Regards,

    Vivek

  • vivek,

    sorry for the late post.

    as per your older post,you are telling that hardware is required for doing communication between the two DSP's.

    I have one idea to implement the same scenerio on simulator.that is like :

    see DSPC-8681 is supporting the SRIO connectivity.

    So,wether it is possible to use two different PC's for doing this work by using CCS with simulator.

    Like one PC is with DSP 0 (C6678) on simulator.

    Other DSP 1 (C6678) on other PC with CCS simulator.

    So can we use the network connection to do the communication by using the SRIO connectivity ??

    Caz there is same scenerio on actual board also:

    as two dsp's are connected with each other with the SRIO(also).

    Please comment on my logic and guide me ..

    -Studinstru

  • Studinstru,

    I don't quite follow what you are trying to accomplish. My understanding is that you are trying to build a tightly coupled transcoder, where you want to share MV to Encoder from the Decoder. In order to do this, you'll need to license the source code of Encoder and Decoder from TI. The codecs available on the web from TI are in Object form only.

    Can you please help answer the questions below...

    a) Who is your FAE/Sales contact from TI?

    b) Do you have DSPC-8681 hardware and JTAG emulator?

    Once you answer the above 2 questions, we can co-ordinate to have an engineering discussion about the product you are trying to build.

    Regards,

    Vivek