Ameba USB 解决方案

瑞昱 USB 应用
Ameba USB 解决方案

集成内置 PHY 的 USB 2.0,支持多样 Host、Device 与 OTG 应用

概览

Ameba 系列 SoC 集成了 USB 2.0 控制器并内置了 PHY 模块,提供了丰富的 USB 主机、设备和双角色解决方案,支持通信、多媒体、存储、人机交互等多种应用场景,其性能、兼容性和可靠性已经众多客户大量实际产品充分验证。

Ameba USB 2.0 解决方案

下表列出常见 USB 功能类及其在各 Ameba SDK 上的支持情况。各功能类在主机端、设备端的具体实现与 SoC 支持范围,请参见对应的 SDK 协议栈章节。

功能类 简介 控制传输 批量传输 中断传输 等时传输 FreeRTOS Linux Zephyr
CDC ACM CDC 抽象控制模型子类,通常呈现为虚拟串口,可用于透传通信 IN/OUT IN/OUT IN(可选) Y Y Y
CDC ECM CDC 以太网控制模型子类,使 USB 设备呈现为标准以太网接口,每次传输承载单个以太网帧 IN/OUT IN/OUT IN(可选) Y Y N
CDC NCM CDC 网络控制模型子类,功能与 ECM 等价,支持将多个以太网帧聚合传输,吞吐更高 IN/OUT IN/OUT IN(可选) Y Y N
HID 人机接口设备类,通过报表描述符定义数据格式,并通过输入、输出及特性报表交换数据。 IN/OUT IN、OUT(可选) Y Y Y
MSC 大容量存储类,通过 SCSI 命令集访问存储介质 IN/OUT IN/OUT Y Y Y
UAC 音频设备类,实现音频传输与控制,支持 UAC 1.0(最高 96kHz/24bit)与 UAC 2.0(最高 384kHz/32bit) IN/OUT IN/OUT(可选) Y Y Y
UVC 视频设备类,实现视频流传输与控制,支持 MJPEG、H.264、H.265 等压缩格式及 YUV 等非压缩格式 IN/OUT IN(可选) IN Y Y Y
DFU 设备固件升级类,通过 USB 实现标准化的固件更新 IN/OUT Y Y Y
Vendor 厂商自定义类(Class Code 0xFF),可自定义传输协议、端点配置与数据格式 IN/OUT 用户自定义 用户自定义 用户自定义 Y Y Y
Composite 通过单一 USB 接口同时承载多个功能类,如 4G 网卡通过 CDC ACM 配网,通过 CDC ECM 传输以太网帧 IN/OUT 取决于成员类 取决于成员类 取决于成员类 Y Y Y

FreeRTOS USB 协议栈

Realtek 自主研发,覆盖 Ameba 系列全部支持 USB 的 SoC, 内置丰富的 USB-IF 标准类协议,轻量级设计, 已在众多客户的量产产品中经过长期验证。

Ameba FreeRTOS USB 协议栈
功能丰富
  • SoC 覆盖范围最广,Ameba 系列所有支持 USB 的 SoC 均可使用
  • 常用标准类齐备:CDC ACM/ECM/NCM、DFU、HID、MSC、UAC、UVC 等
轻量级设计
  • 核心驱动面向嵌入式场景优化,资源占用小:主机端约 20KB Flash / 3KB RAM,设备端约 10KB Flash / 1KB RAM
  • 异步回调式 API,接口精简易上手,CPU 调度开销低,系统实时性好
高可靠性
  • 支持总线错误检测与重传,保证数据完整性
  • 支持热插拔,核心驱动层内置防抖设计
  • 已在众多客户量产产品中长期验证

FreeRTOS USB 协议栈对 USB 类驱动及 SoC 的支持情况如下(Y:支持;N:暂未实现;N/A:硬件不支持):

功能 RTL8721Dx RTL8730E RTL872xD RTL8721F RTL8735B
CDC ACM 主机 N/A Y Y Y Y
CDC ACM 设备 Y Y Y Y Y
CDC ECM 主机 N/A Y Y Y Y
CDC ECM 设备 Y Y N Y N
CDC NCM 主机 N/A Y N Y N
CDC NCM 设备 Y Y N Y N
DFU 主机 N/A Y N Y N
DFU 设备 Y Y N Y N
HID 主机 N/A Y N Y N
HID 设备 Y Y Y Y Y
MSC 主机 N/A Y Y Y Y
MSC 设备 Y Y Y Y Y
UAC 主机 N/A Y N Y N
UAC 设备 Y Y N Y N
UVC 主机 N/A Y Y Y N
UVC 设备 N/A N/A N/A N/A Y
Vendor 主机 N/A Y N Y Y
Vendor 设备 Y Y N Y Y
Composite 主机 N/A Y N Y N
Composite 设备 Y Y Y Y Y

Linux USB 协议栈

支持 Linux 内核原生 USB 子系统,完整兼容标准 USB 生态, 内核已集成的主机端与设备端类驱动开箱可用, 并针对 Ameba 硬件特性做了驱动层优化, 最大化降低用户的软件开发与维护成本。

Ameba Linux USB 协议栈
生态兼容
  • 沿用内核原生 USB 子系统,主机端、设备端框架与用户态访问接口完整可用
  • 随内核版本同步演进,直接获得社区的功能增强、安全修复与性能优化
功能全面
  • 内核已集成的标准类驱动开箱可用:CDC ACM/ECM/NCM、HID、MSC、UAC、UVC 等
  • 主机端可经 libusb 直接访问,设备端可用 ConfigFS/FunctionFS 自定义功能
驱动优化
  • 提供底层 USB PHY 驱动,校准参数可通过 DTS 灵活配置
  • 结合 Ameba USB 硬件特性优化原生控制器驱动,进一步提升可靠性

Linux USB 协议栈对 USB 类驱动及 SoC 的支持情况如下(Y:支持;N:暂未实现;N/A:硬件不支持):

功能 RTL8730E
CDC ACM 主机 Y
CDC ACM 设备 Y
CDC ECM 主机 Y
CDC ECM 设备 Y
CDC NCM 主机 Y
CDC NCM 设备 Y
DFU 主机 Y
DFU 设备 N
HID 主机 Y
HID 设备 Y
MSC 主机 Y
MSC 设备 Y
UAC 主机 Y
UAC 设备 Y
UVC 主机 Y
UVC 设备 Y
Vendor 主机 Y
Vendor 设备 Y
Composite 主机 Y
Composite 设备 Y

Zephyr USB 协议栈

Realtek 自主研发,与 FreeRTOS 协议栈共用同一份量产验证的核心驱动和类驱动, 补齐了原生 Zephyr 缺失的 USB 主机端能力, 同时保留 Zephyr 按需裁剪的灵活性。

Ameba Zephyr USB 协议栈
高度灵活
  • 与 Zephyr 编译系统深度集成,功能模块按需裁剪,固件占用可控
  • USB 描述符全定制:VID/PID、设备字符串、端点配置等均可调整
成熟稳定
  • 与 FreeRTOS 协议栈共用同一份经过量产验证的核心驱动代码,工程成熟度显著高于 Zephyr 社区原生版本
  • 作为 Zephyr 会员,Realtek 持续向社区回馈改进
功能丰富
  • 补齐原生 Zephyr 缺失的完整 USB 主机端协议栈
  • 常用标准类齐备:CDC、DFU、HID、MSC、UAC、UVC 等,与 FreeRTOS 协议栈持续对齐

Zephyr USB 协议栈对 USB 类驱动及 SoC 的支持情况如下(Y:支持;N:暂未实现;N/A:硬件不支持):

功能 RTL8721Dx RTL8730E RTL8721F
CDC ACM 主机 N/A Y Y
CDC ACM 设备 Y Y Y
CDC ECM 主机 N/A N N
CDC ECM 设备 N N N
CDC NCM 主机 N/A N N
CDC NCM 设备 N N N
DFU 主机 N/A Y Y
DFU 设备 Y Y Y
HID 主机 N/A N N
HID 设备 Y Y Y
MSC 主机 N/A N N
MSC 设备 Y Y Y
UAC 主机 N/A Y Y
UAC 设备 N N N
UVC 主机 N/A Y Y
UVC 设备 N N N
Vendor 主机 N/A Y Y
Vendor 设备 Y Y Y
Composite 主机 N/A Y Y
Composite 设备 Y Y Y

典型应用

  • USB 音视频传输: 智能猫眼、智能门铃、智能门锁、智能监控、图像采集、智能音箱等应用场景
  • USB 4G/以太网通信:物联网网关、移动热点、以太网网卡、智能监控等应用场景
  • USB 外部存储:智能音箱、数据采集、OTA 升级、远程文件管理、智能影音等应用场景
  • USB 透传通信:串口通信、用户自定义通信协议等应用场景
  • USB 音频设备: 耳机、麦克风、扬声器、智能音箱、智能广播等有线及无线音频应用场景
  • USB HID 设备:智能遥控器、智能键鼠、游戏手柄、远程控制等人机交互应用场景
  • USB 存储设备:点读笔、录音笔、音频播放器、无线存储等应用场景
  • USB 透传通信:串口通信、用户自定义通信协议等应用场景
  • USB 无线网卡:USB 无线网卡
  • 车载 CarPlay 互联终端: 上电时处于设备模式,完成必要的认证流程,认证通过后切换为主机模式,主动与车机设备建立 NCM 和 iAP2 通信以实现 CarPlay 功能
  • 数据采集设备:在主机模式下,连接扫码枪或传感器(HID/CDC)采集现场数据,当连接 PC 时切换为设备模式,模拟成串口或 U 盘,将采集的数据批量上传至管理系统
  • USB 存储设备:在主机模式下,访问 U 盘等外部存储介质,当连接 PC 时切换为 MSC 设备模式,方便用户导入/导出文件,适用于智能音箱、智能记录仪等应用场景

开发资源

图标资源名称链接
FreeRTOS SDK 下载 查看
Linux SDK 下载 查看
Zephyr SDK 下载 查看
FreeRTOS USB 开发指南 查看
Linux USB 开发指南 查看
Zephyr USB 开发指南 查看
Ameba USB 应用案例 查看
联系我们 查看


推荐 IC 型号

功能 筛选 RTL8720F RTL8721F RTL8721Dx RTL8720E RTL8710E RTL8726E RTL8713E RTL8730E RTL872xD RTL8735B
应用处理器
Cortex-M Cortex-M Cortex-M Cortex-M Cortex-M Cortex-M Cortex-M Cortex-A Cortex-M Cortex-M
DSP
N N N N N Y Y N N N
ISP?
N N N N N N N N N Y
Arm TrustZone
Y Y Y Y N Y N Y Y Y
双频?
N Y Y N N N N Y Y Y
Wi-Fi 6
Y Y N Y Y Y Y Y N N
R-MESH?
Y Y Y N N N N N N N
超低功耗
Y Y Y N N N N N Y Y
以太网
N Y N N N N N N N N
BT 双模
N N N N N Y Y Y N N
HMI?
N Y Y Y N Y Y Y N N
Audio ADC?
N N N N N Y Y Y Y Y
Audio DAC?
N N N N N Y Y Y Y Y
SDIO Host
N Y N N N N N N N N
SD/EMMC Host
N Y N N N N N Y Y Y
USB
N Y Y N N N N Y Y Y
BT 独立天线?
N N N N N N N Y N N
CAN?
N Y N N N N N N N N


功能 RTL8721Dx RTL8730E RTL872xD RTL8721F RTL8735B
高速模式 (480Mbps) N Y Y Y Y
全速模式 (12Mbps) Y Y Y Y Y
主机模式 N Y Y Y Y
外设模式 Y Y Y Y Y
外设 IN 端点数量 4 4 4 6 4
外设 OUT 端点数量 4 4 4 6 4
主机通道数量 N 8 8 12 8
双角色模式 N Y Y Y Y