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.

DRA80XMEVM: Simple offloading example using just OpenVx

Part Number: DRA829TDA4VM
Other Parts Discussed in Thread: UNIFLASH

Hello,

is there a simple example demonstrating the following scenarios:

1. A C++ application running in the A72 offloading parts of an algorithm to the C71 DSP
2. A C++ application running in the A72 offloading parts of an algorithm to the C66 DSP
3. A C++ application running in the A72 offloading parts of an algorithm to the R5F

The examples folder is empty in the Linux SDK and in the RTOS SDK there are so many things that I cannot find where to start.

The examples should _not_ use OpenCl.
If there are are very simple examples on how to communicate with the DSPs from the A72 without OpenVx those are welcome too!

With simple example I mean something really simple, not a vision processing chain or so.
The vision examples are not very usable for me as they are not my usecase and too complicated to sort out the important stuff.

Best regards!

Jan

  • Hi Jan,

    can you look at IPC examples located in "psdk_rtos_auto_j7_06_00_00_00/pdk/packages/ti/drv/ipc/examples" and see if they suits your needs?

    Regards,

    Yordan

  • That look already promising, except that there is no OpenVx.

    Can you point out how to:

    1. get RTOS on the DSP
    2. get applications compiled for RTOS on the DSP

    Unfortunately I cannot find any documentation for this.

    I compiled everything in pdk folder, so I guess I have an RTOS for the DSPs and the R5s, is that right?

    Then I just need to know how to flash it to the hardware and get it running without an debugger.

    Best regards and thanks for the fast answer.

  • I downloaded the latest Uniflash from TI the website.

    It recognizes the XDS debugger but does not show the DRA8x9 platform (which may be too new).

    So I clicked to create a session from a target config and selected the one from CCS. Then there is a message it cannot find DRA8x9.xml.

    I tried copying it from the CCS folder to the Uniflash internal folder, it is picket up when i resync the database but then it tells me:

    The following device xml files can never be used: /TICloudAgent/linux/ccs_base/common/targetdb/devices/DRA8x9.xml

    So how exactly can we flash software to the board?

  • OK so I was digging a little further and saw that we can also flash via CCS (which works more or less).

    Unclear to me is how to flash binaries I built with the Makefiles from the pdk folder.

    Also unclear is the memory mapping of the DSPs (datasheets is not complete here). So if you could provide valid Linker files this would be great.

    And I still cannot find how to build, configure and install/flash the TI RTOS for the DSPs which seems to be required for many examples.

    This is what we have, i built all in the "pdk" folder like the user guide says, but I cannot find an RTOS there.

    I think we must install the RTOS somehow in the CCS and configure it there, but the user guide is old and does not work.

    Please give me something to work with the board.

    Best regards

    Jan

  • Jan,

    The OpenVX framework implementation from TI is "TIOVX", so in the tiovx folder of the sdk, you will find the user guide link from the release notes in the tiovx folder (redirects to the docs/user_guide/index.html).

    There was a new release last week, PSDKRA 6.01, which has many updates to the user guide.

    In here, there is a section which points to the tutorial (which has some simple examples), as well as how to add custom kernels using pytiovx script.  OpenVX contains several vision processing functions, but we expect customers to uses the plugin interface to add their own offload compute functions so they can call their algorithm from the A72 in a pipelinable graph for full utilization of our heterogeneous architecture.

    Is this what you are looking for?  Since it doesn't use OpenCL, there are several callbacks which need to be registered on both the A72 side as well as on the target (DSP, R5F, etc) side, which get compiled into those binaries.

    Regards,

    Jesse