Reset
Gateware that handles USB bus resets & speed detection.
- class sol_usb.gateware.usb.usb2.reset.USBResetSequencer(*args, src_loc_at: int = 0, **kwargs)
Gateware that detects reset signaling on the USB bus.
- Variables:
low_speed_only (Signal(), input) – If set, the device will be forced to operate as a low-speed device.
prevent_high_speed (Signal(), input) – If set, the device will be prohibited from entering high-speed states; and will thus act like it’s a full speed device (low_speed_only = 0).
bus_busy (Signal(), input) – Hold-off signal that indicates that driving the bus should be delayed.
vbus_connected (Signal(), input) – Indicates that the device is connected to VBUS. When this is de-asserted, the device will be held in perpetual bus reset, and reset handshaking will be disabled.
line_state (Signal(2), input) – The UTMI linestate signals; used to read the current state of the USB D+ and D- lines.
bus_reset (Signal(), output) – Strobe; pulses high for one cycle when a bus reset is detected. This signal indicates that the device should return to unaddressed, unconfigured, and should not longer be in High Speed mode.
suspended (Signal(), output) – Held high while the USB device should be in suspend. This technically indicates that the device should drop down to consuming suspend current (<= 2.5mA), but very few devices are compliant with this requirement. Either way, a polite device might reduce its power consumption while in suspend.
current_speed (Signal(2), output) – A USBSpeed value that indicates the current operating speed. Used both to drive our device’s knowledge of operating speed and to drive our PHY’s speed selection.
operating_mode (Signal(2), output) – The current UTMI operating mode. Used to select whether we’re driving the USB bus directly; or whether we’re letting the PHY handle NRZI/bit-stuffing.
termination_select (Signal(), output, default = 1) – Determines the bus termination mode. In LS/FS, this determines the presence of our presence-detect pull-up. In HS mode, this determines whether the USB high-speed termination is present (0), or whether we’re in chirp mode (1).
tx (UTMITransmitInterface, output stream) – Our UTMI transmit interface; used to drive chirp signaling onto the bus.