Project

General

Profile

USB Protocol » History » Version 1

laforge, 05/11/2018 08:55 PM

1 1 laforge
h1. USB Protocol
2
3
This page describes a proposed mapping of E1 payload to USB, which we want to implement in E1 adapters within the Osmocom project.
4
5
* vendor-specific USB device/interface
6
* isochronous IN and OUT endpoints
7
8
The general functional split between USB device is as follows:
9
10
# USB device
11
#* mandatory: bit/octet alignment of basic frames to octet boundaries
12
#* optional: bit-order reversal on per timeslot basis, on configuration from host
13
#* optional: CRC-4 verification on receive side (including reporting via "E" bits in TS0 towards remote end)
14
#* optional: CRC-4 generation on transmit side
15
# USB host
16
#* mandatory: CRC-4 multi-frame alignment of the basic frames received from USB Device
17
#* mandatory: bit-order reversal on per timeslot basis, on configuration from host
18
#* mandatory: CRC-4 verification on receive side (including reporting via "E" bits in TS0 towards remote end)
19
#* mandatory: CRC-4 generation on transmit side
20
21
Depending on the capabilities of the USB device, the host may then switch off some of the functionalities that the USB device can perform in order to reduce processing requirements on the host.
22
23
h2. URB format on ISO IN/OUT endpoints
24
25
* Mandatory part: N number of 32-byte octet-aligned E1 "basic frames"
26
** one byte per timeslot (0..31)
27
*** TS0 bit-order MSB first
28
*** TS1..31 bit-order MSB first (default), optionally LSB-first if requested by USB host
29
* Optional: Trailer of up to 31 bytes of "status" information
30
** details of this still TBD. Must be odd (< 32) bytes length to distinguish it from E1 basic frames in front
Add picture from clipboard (Maximum size: 48.8 MB)