Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры v3.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
3.6 Mб
Скачать

Структурная схема шины usb

Хост контроллер – на шине только один. Функция – периферийное устройство. В хабе имеется порт (точка подключения). Корневой хаб входит в состав хоста.

В состав функций входят конечные точки. Их число определяется конструкцией Device. Обмен данными осуществляется через конечные точки. Нулевая КТ0 используется для управления. КТ настраивается либо на ввод, либо на вывод.

Любое устройство должно поддерживать:

  1. Отзыв на присвоенный ему уникальный адрес.(можно изменить при повторном подключении)

  2. Конфигурирование – настройка через КТ0, выбор версии, типов пакетов)

  3. Настройка на тип передачи и прием данных.

  4. Управление энергопотреблением.

  5. Приостановка (снижение тока потребления) Sleep.

  6. Удаленное пробуждение (выход из Sleep).

2 способа выхода из сниж энергопотр – по прерыв или вкл/выкл

Передача данных:

High Speed 480 Мбит/с. Full Speed 12 Мбит/с. Low Speed 1.5 Мбит/с.

Передача/прием данных осуществляется асинхронно и поблочно. Блок - фрэйм (кадр). Кадр начинается SOF – Start of Frame (маркер).

Типы передач данных:

  1. Управляющие посылки (для конфигурирования). Control transfers.

64 байта (HS), 8 байтов (LS), Отводится 10% пропускной способности канала.

  1. Передача массивов данных. Bulk Data transfers.

От 8 до 64 байт.

  1. Прерывания.

  2. Изохронная передача (в реальном масштабе времени).

Внутри кадра информация передается пакетами. Для каждого пакета есть маркер пакета: OUT, IN, SETUP, SOF, DATA0, DATA1, DATA2, ACK, NAK, STALL, ERR

Кадры идут с частотой 1мс – если ниче нет, то пустой – чтоб соединение не прекратилось

Формат пакета: SYNL, PID(4), CHECK(4), FUNC(7), EP(4), CRC(5), EOP.

SYNL – поле синхронизации, тип пакета (8 битов): PID – сам тип, CHECK – его инверсия. Дублирование для контроля ошибки.

FUNC – адрес функции, EP (4) – адрес конечной точки.

CRC (5) – циклич. код, EOP – конец пакета.

Последовательность пакетов.

Вывод: OUT/SETUP_устройство ждет_DATA_хост ждет_HAND SHAKE

Ввод: IN_хост ждет_DATA_устройство ждет_Квитирование

Вслед за пакетом SETUP идут пакеты стандартных запросов к устройствам. Они называются дескрипторы.

Дескриптор устройства (device): Устройству посылается 8, 16 и т.д. байтов данных. При конфигурировании – 8 байтов. Далее код номера версии USB, длина пакета, запрашивается изготовитель, код продукта и т.д.

При конфигурировании устройство отвечает своими дескрипторами – данными устройства – дескриптор устройства (единственный), в нем дескриптор конфигурации (от чего питается, сколько кт участвует в обмене), в нем дескриптор интерфейса (какие кт участвуют в обмене), в нем – дескриптор конечной точки.

Хост посылает дескрипторы запросов.

Микросхемы USB.

Чтобы организовать обмен по USB используются след.устройства:

  1. Преобразователи интерфейса.

Из СОМ в USB, из LPT в USB.

Фирмы FIDI, Maxim, Philips.

  1. Микроконтроллеры с USB-интерфейсом.

  2. Микросхемы хабов.

  3. Микросхемы OTG (On The Go – компьютер не участвует).

Микроконтроллер AТ89С5131. - Имеет встроенную программу для записи прикладных программ в память программ (flash).

  1. Запись по интерфейсу UART.

2. Запись по интерфейсу USB.

Буфер FIFO. Каждая КТ имеет разный размер. Поддерживаются все 4 типа передач.

Структурная схем контроллера.

Два вывода данных: + и -. Треугольник – буфер лини, преобразует дифф. во внутр.сигнал. 2 вывода питания: его выдает хост. При подключении к компьютеру тот распознает, какое устройство подключено. И в зависимости от R (если к +, то HS, если к -, то FS).

Данные от внешнего устройства идут в 3 направлениях:

SPD – start packet detection.

EPD – end packet detection. - аппаратное определение начала и конца передачи.

Буфер – из дифференциального сигнал преобразуем в нормальные, убирается бит стаффинга.

Дальше кадр делится на блоки и отправляется:

Sync – установка в синхронизацию.

PID – какой маркер.

CRC – контроль ошибок (либо 5, либо 16).

Определяетя адрес устройства ADDR. Преобразование последовательного в параллельный код для обработки в микроконтроллере.

Используются доп.регистры спец.функций для управления контроллером USB.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]