• Resolved

[FAQ] Do you have any USB benchmarks with TI-RTOS on a TivaC device?

Guru 96280 points

Replies: 1

Views: 86

I'm looking for any USB benchmarks when using TI-RTOS on a TivaC device. I'm explicitly interested in CDC.

  • This following provides a collection of benchmarks comparing USB CDC read speeds for target and host on the Tiva (TM4C123GH6PGM). Three different host OS’s were used: Windows 7 64 bit, VM Ware Ubuntu 12.04, Ubuntu 10.04

    On the windows host a C program utilizing windows API’s were used to both receive and transmit USB bulk transfers, while on linux a python script was used. Various packet sizes of 1000 buffers were sent and received on both the host and target. TX test case: usbserialdevice.c sends various packet sizes from the target to the host where the host will read the packets and record a time stamp of how long the process takes to complete.

    RX test case: The C program or Python script will send various packet sizes of 1000 buffers from the host to the target. The program usbserialdevice.c will read the incoming packets and record a time stamp of how long the process took to complete. The CPU loads across both devices were recorded using ROV at approximately 2% +/- .7% among all transfers.

    The zipfile below contains the python scripts and the windows host side as well as the target side example. To reproduce the results below run the target example (usbserialdevice.c) and then run the host side code either the python script or C program with windows API's The results will both be displayed to the console as well as saved to a log.txt which you can specify the location.

    /cfs-file/__key/communityserver-discussions-components-files/908/USB_5F00_Benchmarking.zip

    Requirements

    • Code Composer Studio: 5.4
    • TIRTOS 1.20
    • Python 3.0 (Linux benchmarking)
    • Pyserial2.6 (Linux benchmarking)
    • Tiva Launchpad: TM4C123GH6PM

    Results

    TivaTM4C123GH6PM: OS Speed (KB/s) vs Packet Size (Bytes)
    TX Windows 7 TX Ubuntu 12.04 TX Ubuntu 10.04 RX Windows 7 RX Ubuntu 12.04 RX Ubuntu 10.04
    Packet Size (Bytes)
    32 415.584 243.502 389.412 196.525 228.399 381.562
    64 450.704 277.228 436.261 398.472 345.019 456.994
    128 468.864 285.304 465.191 412.031 409.509 455.582
    256 477.611 307.854 480.158 448.775 431.198 453.101
    512 499.025 325.965 502.431 458.966 438.269 454.862
    1024 500.000 291.601 492.011 462.923 446.423 447.446