Skip to content

Latest commit

 

History

History
203 lines (188 loc) · 4.84 KB

features.rst

File metadata and controls

203 lines (188 loc) · 4.84 KB

Status & Support

The LUNA library is a work in progress; but many of its features are usable enough for inclusion in your own designs. More testing of our work -- and more feedback -- is always appreciated!

Support for Device Mode

Feature Status
USB Communications high-/full-speed with UTMI PHY complete, needs testing
high-/full-speed with ULPI PHY feature complete
full-speed using raw gpio / pull resistors feature complete
super-speed using PIPE PHY basic support complete; still experimental
super-speed using SerDes PHY in progress
low speed, via ULPI/UTMI PHY untested
low speed, using raw gpio / pull resistors unsupported, currently
Control Transfers / Endpoints user-defined feature complete
fully-gateware-implemented, with user vendor request handler support complete, could use improvements
CPU interface working; needs more interfaces & examples
Bulk Transfers / Endpoints user-defined feature complete
IN stream helpers feature complete
OUT stream helpers feature complete
CPU interface working; needs more interfaces & examples
Interrupt Transfers / Endpoints user-defined feature complete
status-to-host helper complete, needs testing
status-from-host helper planned
CPU interface working; needs more interfaces & examples
Isochronous Transfers / Endpoints user-defined planned
IN transfer helpers complete; needs examples and testing
OUT transfer helpers planned
CPU interface planned
USB Analysis basic analysis basic analysis working, in progress
full analysis support planned

Support for Host Mode

The LUNA library currently does not provide any support for operating as a USB host; though the low-level USB communications interfaces have been designed to allow for eventual host support. Host support is not currently a priority, but contributions are welcome.

"Reference" Boards

The LUNA library is intended to work on any FPGA with sufficient fabric performance and resources; but testing is only performed on a collection of reference boards.

Board FPGA Family PHY Status
LUNA Hardware ECP5 ULPI x3 (USB3343) Fully Supported
OpenVizsla USB Analyzer Spartan 6 ULPI (USB3343) Fully Supported
LambdaConcept ECPIX-5 ECP5 ULPI (USB3300), SerDes PHY High-Speed Fully Supported / Super-Speed In Progress
TinyFPGA Ex ECP5 SerDes PHY Planned Super-Speed Device Mode
Logicbone ECP5 SerDes PHY Full-Speed Fully Supported / Super-Speed In Progress
Daisho Cyclone IV PIPE (TUSB1310A) Planned Super-Speed Device Mode
PHYWhisperer-USB Spartan 7 UTMI Planned Device Mode Support
LambdaConcept USB2Sniffer Artix 7 ULPI x2 (USB3300) Fully Supported
OrangeCrab ECP5 no hardware PHY Full-Speed/Device Mode Support
ULX3S ECP5 no hardware PHY Full-Speed/Device Mode Support
Fomu PVT/Hacker iCE40 UP no hardware PHY Full-Speed/Device Mode Support
Fomu EVT3 iCE40 UP no hardware PHY Full-Speed/Device Mode Support
iCEBreaker Bitsy iCE40 UP no hardware PHY Full-Speed/Device Mode Support
Glasgow iCE40 HX no hardware PHY Planned Full-Speed Support
TinyFPGA Bx iCE40 LP no hardware PHY Full-Speed/Device Mode Support
Digilent Nexys Video (SS with add-on board) Artix 7 FMC for PIPE (TUSB1310A) add-on boards Super-Speed Fully Supported
Digilent Genesys2 (SS with add-on board) Kintex 7 ULPI (TUSB1210), FMC for PIPE (TUSB1310A) add-on boards High/Super-Speed Fully Supported