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.

Adding USB capabilities to DM6437

Hi,

I am developing a DM6437 based project where I need to transfer acquired image wih USB 2.0 to a windows PC, using maximum possible transfer rate.
I have seen that exists a device named TUSB6020, and I have studied documentation: tusb6020 datasheet (SCPS170E) and application note "Enabling high-speed USB OTG functionality on TI DSPs"
(AN_OTG_slyt271.pdf). I don't need OTG functionality, because my DM6437 system must act only as a device, and the host is a PC with Windows XP. The application note suggest
tusb6010b for OMAP and tusb6020 for DaVinci family. I have seen that TI has already developed a DaVinci driver, that I will study in next days. My goal is obtain a transfer rate much
close as possible to maximum theoric of 480 Mbps.
Application note, with a VLYNQ running at 125 MHz, report a transfer data rate of 267 Mbps. I have not found in documentation reference about driver for a PC Xp windows,
that will be my host. I have some questions like: can I use an existing PC windows driver or I must develope my driver? PID and VID exposed by tusb6020 are fixed or software configurable? Are 267 Mbps
the maximum limit of tusb6020? I am looking for more information (and more documentation) about use of tusb6020 with Davinci and for
PC windows side point of view.
Thanks

Fabrizio

 

  • Fabrizio,

    Since you are looking towards transfering the captured video/image data to PC I would suggest to you go with "uvc"/"serial" gadget application.  Both these 2 applications have the required usb application support at the Windows PC end,  you need not have to worry about developing the required app on the Windows end.

    You need have the following at the DM6467 end

    • usb device stack
    • drivers for interfacing with the tusb6020 over the vlynq interface.
    • "usb"/"serial" usb application
    • glue application that would interface the "usb"/"serial" application with your video/image capturing module.

    Depending on how your above layers are constructed your effective throughput would vary.  Typically one can achieve close to 48MBps throughput over usb interface on a practical basis.  Since you have to interface over Vlynq to tusb6020 the actual througput could be around 267Mbps as you had pointed out.

    regards

    swami

  • Hi Swami,

    thank for your post.

    I don't know "uvc"/"serial" application. Where can I found it?

    For DSP end I will use  TUSB6020 USB Stack for DSP BIOS. Regarding DSP end DM6467 is similar to DM6437? 

    In DM6437 VLYNQ is running at 100 MHz. Maximum througput is 400 Mbps with 4 bit for VLYNQ data. 267 Mbps is 66 % of maximum theoric. I did hope to be near 80 % of maximum. Is there another way to get more high data transfer rate?

    Thank

    Fabrizio

     

     

  • Fabrizio,

    My reference to 6467 was a typo what I meant was 6437.

    I am not aware of the offering that we have on tusb part in combination with 6437.  If you already have the device stack on dsp/bios environment then it is a good step forward.

    Pl. refer to the "usb video class" specs in the usb.org for more details on the same.  You can refer to the same site for serail class specs or refer to the LInux git implementation as a reference (for both serial and uvc).

    regards

    swami

  • Hi Swami,

    I have not found any uvc/serial Windows application on the web working with windows uvc class driver . I would be curious to know what application TI has used to perform test reported in his Application Note. Is a strange fact that seems don't exist documentation for usb6020 covering PC Host side.

    Thanks

    Fabrizio

  • Fabrizio,

    I pointed you to usb.org w.r.t UVC specs and not for the application that you would have to develop.  You need to refer to the UVC specs to develop the application on DM6437.  USB6020 is a USB compliant device and hence you would not find specific documents from the USB Host perspective.

    Pl. refer to the UVC spec for further details on the likely application that you would have to develop on the DM6437 end.

    regards

    swami

  • So, you meant that we should use API in DSP/BISO to perform setup process and send data via bulk-in/out transaction?

  • Hi,

    I think so. TUSB6020 is configured by an external device. Ti has developed DaVinci driver for tusb6020, exist an example project where tusb is configured as Mass Storage Device. This month I will start to try and study this example, and in future I hope to know more about it.

    Fabrizio