Опубликован: 19.04.2025 | Доступ: свободный | Студентов: 1 / 0 | Длительность: 07:05:00
Лекция 11:

Подключение периферийных устройств и расширение системы

Последовательность состояний при запросе на чтение

Рис. 11.7. Последовательность состояний при запросе на чтение

За одной транзакцией по каналу AR может последовать несколько ответов. Каждая полезная нагрузка по каналу R называется "beat". Несколько beat с одним последним beat, подтверждающим последний сигнал, называются пакетом. Один запрос AR с одним пакетом по каналу R называется транзакцией чтения AXI.

Временные диаграммы при транзакции на AXI

Рис. 11.8. Временные диаграммы при транзакции на AXI

К сигналам R относятся следующие: R RESP, RDATA, RLAST, RID и, сигналы подтверждения связи. ARLEN содержит количество beat минус один. Ведомый использует эту информацию для генерации тактов данных ответа, соответствующих ARLEN + 1. Каждый beat RID должен содержать то же значение, что и ARID при запуске транзакции. Для компенсации задержек соединения и slave может быть запущено несколько транзакций. Подчиненные устройства должны отвечать в том же порядке, в каком был запрошен запрос, только если эти транзакции имеют одинаковые идентификаторы.

Примеры транзакций. В сигналах RDATA Dy показано, что для транзакции были возвращены данные с адреса y.

Светло-желтым цветом - первая транзакция, представляет собой пакет длиной в один такт. Вторая - пакет длиной в два такта

Рис. 11.9. Светло-желтым цветом - первая транзакция, представляет собой пакет длиной в один такт. Вторая - пакет длиной в два такта
Временная диаграмма сигналов в 4-тактной транзакции (тип beat)

Рис. 11.10. Временная диаграмма сигналов в 4-тактной транзакции (тип beat)
Временные диаграммы 4-тактной транзакции (тип Fixed)

Рис. 11.11. Временные диаграммы 4-тактной транзакции (тип Fixed)
Значения сигналов RRESP/BRESP и их семантика

Рис. 11.12. Значения сигналов RRESP/BRESP и их семантика

Транзакции записи

Транзакции записи запускаются по запросу на канале AW. Ведущий устанавливает сигналы AW, такие как AWADDR, AWSIZE, ALLEN, AWBURST и т.д. Затем ведущий генерирует AWVALID. В то же время ведущий также устанавливает данные для W-канала, такие как WSTRB, DATA, WLAST. Ведущий не имеет права ожидать принятия запроса на W-канал, прежде чем утверждать WVALID. Нарушение этого требования может привести к взаимоблокировкам. Каждый бит в WSTRB соответствует одному 8-битному байту в WDATA. Если задан WSTRB, то записывается соответствующий байт в WDATA, в противном случае он игнорируется. WSTRB должен соответствовать AWSIZE и должен быть выровнен по AWADDR.

Таблица 11.5. Соответствие сигналов WSTRB и битов WDATA
Биты в сигнале WSTRB 3 2 1 0
Соответствующие биты в WDATA [31:24] [23:16] [15:8] [7:0]

Когда ведомое устройство готово, оно выдает сигнал AWREADY о том, что работа с данными в канале AW завершена . Ведомое устройство также выдает сигнал WREADY, сигнализирующий ведущему устройству о том, что запись данных принята . Затем шаги WVALID / WREADY повторяются для каждого такта в этой транзакции . При последнем такте мастер утверждает WLAST.