104 lines
2.9 KiB
ReStructuredText
Executable File
104 lines
2.9 KiB
ReStructuredText
Executable File
.. _performace_show:
|
|
|
|
Performance Showcase
|
|
============================================
|
|
|
|
The following demonstrates the performance of CherryUSB in different applications. Mainly demonstrates high-speed mode, as full-speed shows no significant performance difference.
|
|
|
|
CDC ACM Communication
|
|
-----------------------
|
|
|
|
Can achieve hardware limit performance. Of course, the hardware needs to theoretically support this speed, and CherryUSB supports it accordingly. Examples are as follows:
|
|
|
|
- HPM Series (Device can reach 42MB/S, Host 44MB/S, already reached hardware limit)
|
|
- BL Series (Device 32MB/S, Host 25MB/S, already reached hardware limit)
|
|
- STM32F4 Full-speed (Device 900KB/S, Host 1.12MB/S, already reached hardware limit)
|
|
|
|
Device speed test demo: cdc_acm_template.c with log disabled, script uses `tools/test_srcipts/test_cdc_speed.py`
|
|
Host speed test demo: usb_host.c with TEST_USBH_CDC_SPEED=1
|
|
|
|
USB Device MSC
|
|
-----------------
|
|
|
|
Demonstrates USB Device MSC using SDXC3.0 + EMMC testing.
|
|
|
|
.. figure:: img/usbdev_msc.png
|
|
|
|
USB Device RNDIS
|
|
-----------------------
|
|
|
|
.. note:: By default, RNDIS only supports single packets, so the speeds below are minimum speeds. Multi-packet support requires contacting the author.
|
|
|
|
Demonstrates USB Device RNDIS speed in LAN with lwip.
|
|
|
|
As client
|
|
|
|
.. figure:: img/usbdev_rndis_lwip.png
|
|
|
|
As server
|
|
|
|
.. figure:: img/usbdev_rndis_lwip2.png
|
|
|
|
Demonstrates USB Device RNDIS + WIFI passthrough testing.
|
|
|
|
.. figure:: img/usbdev_rndis_wifi.png
|
|
.. figure:: img/usbdev_rndis_wifi2.png
|
|
|
|
Demonstrates USB Device RNDIS + 100Mbps Ethernet passthrough testing.
|
|
|
|
.. figure:: img/usbdev_rndis_win.png
|
|
.. figure:: img/usbdev_rndis_linux.png
|
|
|
|
USB Device UVC
|
|
-----------------------
|
|
|
|
Demonstrates USB Device UVC + camera transmission of YUYV/MJPEG 640 * 480 images. 30 FPS.
|
|
|
|
.. figure:: img/usbdev_uvc_mjpeg.png
|
|
.. figure:: img/usbdev_uvc_yuv.png
|
|
|
|
USB Host HUB
|
|
-----------------------
|
|
|
|
Multi-level hub support, demonstrates 1-to-7 HUB.
|
|
|
|
.. figure:: img/usbhost_hub.png
|
|
.. figure:: img/usbhost_hub2.png
|
|
|
|
USB Host MSC
|
|
-----------------------
|
|
|
|
Demonstrates USB Host MSC speed under USB2.0 and USB3.0. Solid-state USB drives are recommended for testing.
|
|
|
|
.. figure:: img/usbhost_msc.png
|
|
.. figure:: img/usbhost_msc_xhci.png
|
|
|
|
USB Host UVC
|
|
-----------------------
|
|
|
|
Demonstrates USB Host UVC driving 648 * 480 YUV camera. 30 FPS.
|
|
|
|
.. figure:: img/usbhost_uvc.gif
|
|
|
|
USB Host ASIX Network Card
|
|
-------------------------------------------------
|
|
|
|
Demonstrates USB Host driving AX88772 USB Ethernet module.
|
|
|
|
.. figure:: img/usbhost_ax88772_1.png
|
|
.. figure:: img/usbhost_ax88772_2.png
|
|
|
|
USB Host RNDIS Network Card
|
|
-------------------------------------------------
|
|
|
|
Demonstrates USB Host driving mobile phone. Enable USB network sharing on the phone to use RNDIS.
|
|
|
|
.. figure:: img/usbhost_rndis.png
|
|
|
|
USB Host WIFI
|
|
-----------------------
|
|
|
|
Demonstrates USB Host driving BL616 USB WIFI.
|
|
|
|
.. figure:: img/usbhost_wifi.png
|