Клиент почтового ящика Intel с потоковым интерфейсом Avalon FPGA IP Руководство пользователя
Клиент почтового ящика Intel с потоковым интерфейсом Avalon FPGA IP

Клиент почтового ящика с потоковым интерфейсом Avalon® Intel FPGA IP Overview

Клиент почтового ящика с интерфейсом потоковой передачи Avalon® Intel® FPGA IP (клиент почтового ящика с IP-адресом клиента Avalon ST) обеспечивает канал связи между пользовательской логикой и безопасным диспетчером устройств (SDM). Вы можете использовать клиент почтовых ящиков с Avalon ST IP для отправки пакетов команд и получения пакетов ответов от периферийных модулей SDM. Клиент почтового ящика с Avalon ST IP определяет функции, которые выполняет SDM.

Ваша пользовательская логика может использовать этот канал связи для получения информации и доступа к флэш-памяти от следующих периферийных модулей:

  • Идентификатор чипа
  • Датчик температуры
  • Voltage Датчик
  • Флэш-память с четырьмя последовательными периферийными интерфейсами (SPI)

Примечание: В данном руководстве пользователя термин Avalon ST используется для обозначения потокового интерфейса Avalon или IP.

Рисунок 1. Клиент почтового ящика с Avalon ST IP System Design
Клиент почтового ящика с Avalon ST IP System Design

На следующем рисунке показано приложение, в котором клиент почтового ящика с Avalon ST IP считывает идентификатор чипа.

Фигура 2. Клиент почтового ящика с Avalon ST IP считывает идентификатор чипа
Клиент почтового ящика с Avalon ST IP считывает идентификатор чипа

Поддержка семейства устройств

Ниже перечислены определения уровней поддержки устройств для IP-адресов Intel FPGA:

  • Предварительная поддержка — IP доступен для моделирования и компиляции для этого семейства устройств. Временные модели включают первоначальные инженерные оценки задержек, основанные на ранней информации после компоновки. Модели синхронизации могут быть изменены, поскольку тестирование кремния улучшает корреляцию между фактическим кремнием и моделями синхронизации. Вы можете использовать этот IP-адрес для изучения архитектуры системы и использования ресурсов, моделирования, распиновки, оценки задержки системы, базовой оценки времени (конвейерного бюджета) и стратегии передачи ввода-вывода (ширина пути данных, глубина пакета, торговля стандартами ввода-вывода). офф).
  • Предварительная поддержка — IP проверен с предварительными временными моделями для этого семейства устройств. IP соответствует всем функциональным требованиям, но, возможно, все еще проходит временной анализ для семейства устройств. Его можно использовать в производственных проектах с осторожностью.
  • Окончательная поддержка — IP-адрес проверен с окончательными моделями синхронизации для этого семейства устройств. IP отвечает всем функциональным и временным требованиям для семейства устройств и может использоваться в производственных проектах.

Таблица 1. Поддержка семейства устройств

Семейство устройств Поддерживать
Intel Агилекс™ Продвигать

Примечание: Вы не можете смоделировать клиент почтового ящика с IP-адресом Intel FPGA потокового интерфейса Avalon, поскольку IP-адрес получает ответы от SDM. Чтобы проверить этот IP, Intel рекомендует выполнить оценку оборудования.

Сопутствующая информация
Клиент почтового ящика с потоковым интерфейсом Avalon Примечания к выпуску Intel FPGA IP

Параметры

Имя параметра Ценить Описание
Включить интерфейс состояния Вкл выкл Когда вы включаете этот интерфейс, клиент почтовых ящиков с потоковым интерфейсом Avalon Intel FPGA IP включает сигнал command_status_invalid. Когда command_status_invalid подтверждается, вы должны сбросить IP.

Интерфейсы
На следующем рисунке показан клиент почтового ящика с потоковым интерфейсом Avalon IP-интерфейсы Intel FPGA:

Рисунок 3. Клиент почтового ящика с потоковым интерфейсом Avalon IP-интерфейсы Intel FPGA
Клиент почтового ящика с потоковым интерфейсом Avalon IP-интерфейсы Intel FPGA

Дополнительные сведения о потоковых интерфейсах Avalon см. в Спецификациях интерфейса Avalon.
Сопутствующая информация
Технические характеристики интерфейса Avalon

Интерфейсы часов и сброса

Стол 2. Интерфейсы часов и сброса

Имя сигнала Направление Описание
in_clk Вход Это часы для потоковых интерфейсов Avalon. Максимальная частота в 250 МГц.
in_reset Вход Это активный высокий сброс. Утвердите in_reset для сброса клиента почтового ящика с интерфейсом потоковой передачи Avalon Intel FPGA IP (клиент почтового ящика с Avalon ST IP). Когда сигнал in_reset подтверждается, SDM должен сбросить все ожидающие действия с клиента почтового ящика с Avalon ST IP. SDM продолжает обрабатывать команды от других клиентов.

Чтобы обеспечить правильную работу клиента почтовых ящиков с IP-адресом Avalon ST IP, когда устройство входит в пользовательский режим, ваш проект должен включать IP-адрес Intel FPGA Reset Release для сохранения сброса до тех пор, пока матрица FPGA не перейдет в пользовательский режим. Корпорация Intel рекомендует использовать синхронизатор сброса при подключении пользовательского сброса или выхода Reset Release IP к

порт сброса клиента почтового ящика с Avalon ST IP. Чтобы реализовать синхронизатор сброса, используйте IP-адрес Reset Bridge Intel FPGA, доступный в Platform Designer.

Примечание: Инструкции по созданию экземпляра IP и подключению в Platform Designer см. в документе «Необходимые компоненты связи и хоста для Remote System Update Design Ex».ampРисунок в Руководстве пользователя конфигурации Intel Agilex.

Командный интерфейс
Используйте интерфейс Avalon Streaming (Avalon ST) для отправки команд в SDM.

Таблица 3. Командный интерфейс

Имя сигнала Направление Описание
команда_готова Выход Клиент почтового ящика с Avalon ST Intel FPGA IP устанавливает команду command_ready, когда он готов получать команды от приложения. ready_latency составляет 0 циклов. Клиент почтового ящика с Avalon ST может принимать command_data[31:0] в том же цикле, что и command_ready.
команда_валид Вход Сигнал command_valid утверждает, что указывает, что command_data действительна.
команда_данные[31:0] Вход Шина command_data передает команды на SDM. См. список и описание команд для определений команд.
команда_startofpacket Вход Команда command_startofpacket утверждается в первом цикле командного пакета.
Command_endofpacket Вход Команда command_endofpacket утверждает пакет в последнем цикле команды.

Фигура 4. Время для командного пакета Avalon ST
fig:m Командный пакет ST

Интерфейс ответа
IP-адрес клиента SDM Avalon ST отправляет ответы вашему приложению, используя интерфейс ответа.

Таблица 4. Интерфейс ответа

Сигнал 5 Направление Описание
ответ_готов Вход Логика приложения может подтверждать сигнал response_ready всякий раз, когда она может получить ответ.
ответ_валид Выход SDM утверждает response_valid, чтобы указать, что response_data действителен.
данные_ответа[31:0] Выход SDM управляет response_data для предоставления запрошенной информации. Первое слово ответа — это заголовок, который идентифицирует команду, предоставляемую SDM. Ссылаться на Список и описание команд для определений команд.
response_startofpacket Выход response_startofpacket подтверждается в первом цикле ответного пакета.
ответ_конецпакета Выход response_endofpacket подтверждается в последнем цикле ответного пакета.

Рисунок 5. Время для пакета ответа Avalon ST
Ответный пакет Avalon ST

Интерфейс состояния команды

Таблица 5. Интерфейс состояния команд

Имя сигнала Направление Описание
Command_status_invalid Выход Утверждение command_status_invalid указывает на ошибку. Этот сигнал обычно указывает, что длина команды, указанной в заголовке команды, не соответствует длине отправленной команды. При подтверждении command_status_invalid логика вашего приложения должна подтвердить in_reset, чтобы перезапустить клиент почтовых ящиков с потоковым интерфейсом Avalon Intel FPGA IP.

Рисунок 6. Сбросить после подтверждения command_status_invalid
рис: command_status_invalid утверждает

Команды и ответы

Хост-контроллер взаимодействует с SDM с помощью пакетов команд и ответов через IP-адрес Intel FPGA клиента почтового ящика.

Первое слово пакетов команды и ответа представляет собой заголовок, предоставляющий основную информацию о команде или ответе.

Рисунок 7. Формат заголовка команды и ответа
fig: Формат заголовка команды и ответа

Примечание: Поле LENGTH в заголовке команды должно соответствовать длине соответствующей команды.
В следующей таблице описаны поля команды заголовка.

Таблица 6. Описание заголовка команды и ответа

Заголовок Кусочек Описание
Сдержанный [31:28] Сдержанный.
ID [27:24] Идентификатор команды. Заголовок ответа возвращает идентификатор, указанный в заголовке команды. Описание команд см. в разделе Команды управления.
0 [23] Сдержанный.
ДЛИНА [22:12] Количество слов аргументов, следующих за заголовком. IP отвечает ошибкой, если для данной команды введено неправильное количество слов аргументов.
Если есть несоответствие между длиной команды, указанной в заголовке команды, и количеством отправляемых слов. IP повышает бит 3 регистра состояния прерывания (COMMAND_INVALID), и клиент почтового ящика должен быть сброшен.
Сдержанный [11] Сдержанный. Должен быть установлен на 0.
Код команды/код ошибки [10:0] Код команды определяет команду. Код ошибки указывает, была ли команда выполнена успешно или нет.
В заголовке команды эти биты представляют код команды. В заголовке ответа эти биты представляют код ошибки. Если команда выполнена успешно, код ошибки равен 0. Если команда не удалась, обратитесь к кодам ошибок, определенным в Ответы на код ошибки.

Команды управления

Сброс Quad SPI Flash
Важный:
Для устройств Intel Agilex необходимо подключить контакт сброса последовательной флэш-памяти или четырехъядерного SPI флэш-памяти к контакту AS_nRST. SDM должен полностью контролировать сброс QSPI. Не подключайте вывод сброса Quad SPI к какому-либо внешнему хосту..

Таблица 7. Список и описание команд

Команда Код (шестнадцатеричный) Длина команды (1) Длина ответа (1) Описание
НООП 0 0 0 Отправляет ответ о состоянии OK.
ПОЛУЧИТЬ_ИДКОДЕ 10 0 1 Ответ содержит один аргумент, который является JTAG IDCODE для устройства
ПОЛУЧИТЬ_ЧИПИД 12 0 2 Ответ содержит 64-битное значение CHIPID с наименее значащим словом первым.
GET_USERCODE 13 0 1 Ответ содержит один аргумент, который является 32-битным JTAG USERCODE, который битовый поток конфигурации записывает в устройство.
GET_VOLTAGE 18 1 п(2) GET_VOLTAGКоманда E имеет единственный аргумент, который представляет собой битовую маску, определяющую каналы для чтения. Бит 0 определяет канал 0, бит 1 указывает канал 1 и так далее.
Ответ включает аргумент из одного слова для каждого бита, установленного в битовой маске. ОбъемtagВозвращаемое значение e является беззнаковым числом с фиксированной запятой на 16 бит ниже двоичной точки. Для бывшегоampле, томtage = 0.75 В возвращает 0x0000C000. (3)
Устройства Intel Agilex имеют один томtagе датчик. Следовательно, ответ всегда одно слово.
ПОЛУЧИТЬ_ ТЕМПЕРАТУРА 19 1 n(4) Команда GET_TEMPERATURE возвращает температуру или температуры основной структуры или расположения каналов приемопередатчика, указанные вами.

Для устройств Intel Agilex используйте аргумент sensor_req, чтобы указать расположения. Sensor_req включает следующие поля:

  • Биты[31:28]: зарезервировано.
  • Биты [27:16]: Местоположение датчика. Указывает расположение TSD.
  • Биты[15:0]: маска датчика. Указывает датчики для считывания для указанного местоположения датчика. Ответ содержит одно слово для каждой запрошенной температуры. Если опущено, команда считывает канал 0. Младший значащий бит (младший бит) соответствует датчику 0. Старший значащий бит (старший бит) соответствует каналу 15.

Возвращаемая температура представляет собой фиксированное значение со знаком с 8 битами ниже двоичной точки. Для бывшегоample, температура 10°C возвращает 0x00000A00. A с температурой -1.5°C возвращает 0xFFFFFE80.
Если битовая маска указывает недопустимое местоположение, команда возвращает код ошибки, который представляет собой любое значение в диапазоне 0x80000000 -0x800000FF.
Для устройств Intel Agilex см. Руководство пользователя Intel Agilex Power Management для получения дополнительной информации о локальных встроенных датчиках температуры.

RSU_IMAGE_ ОБНОВЛЕНИЕ 5C 2 0 Запускает реконфигурацию из источника данных, которым может быть либо фабрика, либо образ приложения.
продолжение…
  1. Это число не включает заголовок команды или ответа.
  2. Для устройств Intel Agilex, поддерживающих чтение с нескольких устройств, индекс n соответствует количеству каналов, включенных на вашем устройстве.
  3. Обратитесь к Руководство пользователя Intel Agilex Power Management для получения дополнительной информации о каналах и местах расположения датчиков температуры.
  4. Индекс n зависит от количества масок датчиков.
Команда Код (шестнадцатеричный) Длина команды (1) Длина ответа (1) Описание
Эта команда принимает необязательный 64-битный аргумент, указывающий адрес данных реконфигурации во флэш-памяти. При отправке аргумента на IP вы сначала отправляете биты [31:0], а затем биты [63:32]. Если вы не укажете этот аргумент, предполагается, что его значение равно 0.
  • Бит [31:0]: начальный адрес образа приложения.
  • Бит [63:32]: зарезервировано (записывается как 0).

Как только устройство обрабатывает эту команду, оно возвращает заголовок ответа в ответный FIFO, прежде чем приступить к повторной настройке устройства. Убедитесь, что хост-ПК или хост-контроллер прекращает обслуживание других прерываний и фокусируется на чтении данных заголовка ответа, чтобы указать, что команда выполнена успешно. В противном случае хост-компьютер или хост-контроллер могут не получить ответ после запуска процесса реконфигурации.
Как только устройство переходит к реконфигурации, связь между внешним хостом и ПЛИС теряется. Если вы используете PCIe в своем проекте, вам необходимо повторно пронумеровать канал PCIe.
Важный: При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.

RSU_GET_SPT 5A 0 4 RSU_GET_SPT извлекает местоположение флэш-памяти Quad SPI для двух таблиц подразделов, которые использует RSU: SPT0 и SPT1.
Ответ из 4 слов содержит следующую информацию:
Слово Имя Описание
0 СПТ0[63:32] Адрес SPT0 во флэш-памяти Quad SPI.
1 СПТ0[31:0]
2 СПТ1[63:32] Адрес SPT1 во флэш-памяти Quad SPI.
3 СПТ1[31:0]
КОНФИГ_ СТАТУС 4 0 6 Сообщает о состоянии последней реконфигурации. Вы можете использовать эту команду для проверки состояния конфигурации во время и после настройки. Ответ содержит следующую информацию:
Слово Краткое содержание Описание
0 Состояние Описывает самую последнюю ошибку, связанную с конфигурацией. Возвращает 0 при отсутствии ошибок конфигурации.
Поле ошибки имеет 2 поля:
  • Старшие 16 бит: код серьезной ошибки.
  • Младшие 16 бит: код незначительной ошибки.

См. Приложение: КОНФИГ_СТАТУС и описания кодов ошибок RSU_STATUS в клиенте почтовых ящиков Intel ПЛИС IP  Руководство пользователя для получения дополнительной информации.

1 Квартальная версия Доступно в версиях программного обеспечения Intel Quartus® Prime между 19.4 и 21.2, в поле отображается:
  • Бит [31:28]: Индекс прошивки или копии прошивки решения, которая использовалась последней. Возможные значения: 0, 1, 2 и 3.
  • Бит [27:24]: зарезервировано
  • Бит [23:16]: значение равно «0».
Версия Quartus, доступная в программном обеспечении Intel Quartus Prime версии 21.3 или более поздней, отображает:
  • Бит [31:28]: Индекс прошивки или копии прошивки решения, которая использовалась последней. Возможные значения: 0, 1, 2 и 3.
  • Бит [27:24]: зарезервировано
  • Бит [23:16]: основной номер выпуска Quartus.
  • Бит [15:8]: дополнительный номер версии Quartus.
  • Бит [7:0]: номер обновления Quartus

Напримерample, в программном обеспечении Intel Quartus Prime версии 21.3.1 следующие значения представляют основной и дополнительный номера выпусков Quartus, а также номер обновления Quartus:

  • Бит [23:16] = 8'd21 = 8'h15
  • Бит [15:8] = 8'd3 = 8'h3
  • Бит [7:0] = 8'd1 = 8'h1
2 Статус PIN-кода
  • Бит [31]: Текущее выходное значение nSTATUS (активный низкий уровень)
  • Бит [30]: Обнаружено входное значение nCONFIG (активный низкий уровень)
  • Бит [29:8]: зарезервировано
  • Бит [7:6]: источник синхронизации конфигурации
    • 01 = внутренний генератор
    • 10 = OSC_CLK_1
  • Бит [5:3]: зарезервировано
  • Бит [2:0]: значение MSEL при включении питания.
3 Статус программной функции Содержит значение каждой программной функции, даже если вы не назначили функцию на вывод SDM.
  • Бит [31:6]: зарезервировано
  • Бит [5]: HPS_WARMRESET
  • Бит [4]: ​​HPS_COLDRESET
  • Бит [3]: SEU_ERROR
  • Бит [2]: CVP_DONE
  • Бит [1]: INIT_DONE
  • Бит [0]: CONF_DONE
4 Местоположение ошибки Содержит место ошибки. Возвращает 0, если ошибок нет.
5 Сведения об ошибке Содержит сведения об ошибке. Возвращает 0, если ошибок нет.
РСУ_СТАТУС 5B 0 9 Сообщает о текущем состоянии обновления удаленной системы. Вы можете использовать эту команду для проверки состояния конфигурации во время настройки и после ее завершения. Эта команда возвращает следующие ответы:
Слово Краткое содержание Описание

(Продолжать….)

  1. Это число не включает заголовок команды или ответа.
0-1 Текущее изображение Смещение флэш-памяти образа запущенного в данный момент приложения.
2-3 Неудачное изображение Смещение флэш-памяти образа сбойного приложения с наивысшим приоритетом. Если во флэш-памяти доступно несколько изображений, сохраняется значение первого неудавшегося изображения. Значение всех 0 указывает на отсутствие ошибочных изображений. Если ошибочных изображений нет, остальные оставшиеся слова информации о состоянии не сохраняют достоверную информацию.
Примечание:Нарастающий фронт сигнала nCONFIG для перенастройки ASx4 не очищает это поле. Информация о неудачном образе обновляется только тогда, когда клиент почтового ящика получает новую команду RSU_IMAGE_UPDATE и успешно настраивается из образа обновления.
4 Состояние Код ошибки неисправного образа. Поле ошибки состоит из двух частей:
  • Бит [31:16]: код серьезной ошибки
  • Бит [15:0]: код незначительной ошибки. Возвращает 0, если ошибок нет. Ссылаться на

Приложение: Описание кодов ошибок CONFIG_STATUS и RSU_STATUS в руководстве пользователя Mailbox Client Intel FPGA IP для получения дополнительной информации.

5 Версия Версия интерфейса RSU и источник ошибки.
Дополнительные сведения см. в разделе «Состояние RSU и коды ошибок» в «Руководстве пользователя по удаленному обновлению системы Hard Processor System».
6 Местоположение ошибки Сохраняет местоположение ошибки сбойного образа. Возвращает 0 при отсутствии ошибок.
7 Сведения об ошибке Сохраняет сведения об ошибке для неисправного образа. Возвращает 0, если ошибок нет.
8 Счетчик повторных попыток текущего изображения Подсчет количества повторных попыток для текущего изображения. Счетчик изначально равен 0. Счетчик устанавливается на 1 после первой повторной попытки, затем на 2 после второй попытки.
Укажите максимальное количество попыток в настройках Intel Quartus Prime. File (.qsf). Команда: set_global_assignment -name RSU_MAX_RETRY_COUNT 3. Допустимые значения счетчика MAX_RETRY: 1–3. Фактическое количество доступных повторных попыток: MAX_RETRY -1.
Это поле было добавлено в версии 19.3 программного обеспечения Intel Quartus Prime Pro Edition.
продолжение…
  1. Это число не включает заголовок команды или ответа.
RSU_NOTIFY 5D 1 0 Удаляет всю информацию об ошибке в ответе RSU_STATUS и сбрасывает счетчик повторных попыток. Аргумент из одного слова имеет следующие поля:
  • 0x00050000: очистить текущий счетчик повторных попыток сброса. Сброс текущего счетчика повторных попыток сбрасывает счетчик на ноль, как если бы текущее изображение было успешно загружено в первый раз.
  • 0x00060000: очистить информацию о статусе ошибки.
  • Все остальные значения зарезервированы.

Эта команда недоступна до версии 19.3 программного обеспечения Intel Quartus Prime Pro Edition.

QSPI_OPEN 32 0 0 Запрашивает эксклюзивный доступ к счетверенному SPI. Вы отправляете этот запрос перед любыми другими запросами QSPI. SDM принимает запрос, если четырехъядерный SPI не используется и SDM не настраивает устройство.
Возвращает OK, если SDM предоставляет доступ.
SDM предоставляет эксклюзивный доступ клиенту, использующему этот почтовый ящик. Другие клиенты не могут получить доступ к счетверенному SPI, пока активный клиент не откажется от доступа с помощью команды QSPI_CLOSE.
Доступ к устройствам флэш-памяти Quad SPI через любой IP-адрес клиента почтового ящика недоступен по умолчанию в проектах, включающих HPS, если вы не отключите QSPI в конфигурации программного обеспечения HPS.
Важный: При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.
QSPI_CLOSE 33 0 0 Закрывает монопольный доступ к интерфейсу Quad SPI.
Важный:При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.
QSPI_SET_CS 34 1 0 Указывает одно из подключенных четырехъядерных устройств SPI через линии выбора чипа. Принимает аргумент из одного слова, как описано ниже
  • Bits[31:28]: Flash-устройство для выбора. Обратитесь к информации ниже для значения, которое соответствует контактам nCSO[0:3].
    • Значение 4'h0000 выбирает флэш-память, соответствующую nCSO[0].
    • Значение 4'h0001 выбирает флэш-память, соответствующую nCSO[1].
    • Значение 4'h0002 выбирает флэш-память, соответствующую nCSO[2].
    • Значение 4'h0003 выбирает вспышку, соответствующую НКО[3].
  • Биты[27:0]: зарезервировано (запишите как 0).

Примечание: Устройства Intel Agilex или Intel Stratix® 10 поддерживают одно устройство флэш-памяти AS x4 для конфигурации AS из четырех устройств SPI, подключенных к nCSO[0]. После перехода устройства в пользовательский режим можно использовать до четырех флэш-памяти AS x4 для использования с Mailbox Client IP или HPS в качестве хранилища данных. IP-адрес клиента почтового ящика или HPS может использовать nCSO[3:0] для доступа к устройствам с четырьмя SPI.
Эта команда является необязательной для схемы конфигурации AS x4, строка выбора микросхемы следует за последней выполненной командой QSPI_SET_CS или по умолчанию имеет значение nCSO[0] после конфигурации AS x4. ДжTAG Схема конфигурации требует выполнения этой команды для доступа к флэш-памяти QSPI, которая соединяет контакты SDM_IO.
Доступ к устройствам флэш-памяти QSPI с помощью выводов SDM_IO доступен только для схемы конфигурации AS x4, JTAG конфигурация и дизайн, скомпилированный для конфигурации AS x4. Для схемы конфигурации потокового интерфейса Avalon (Avalon ST) необходимо подключить флэш-память QSPI к контактам GPIO.

продолжение…
  1. Это число не включает заголовок команды или ответа.
Важный: При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.
QSPI_READ 3A 2 N Считывает подключенное четырехъядерное устройство SPI. Максимальный размер передаваемых данных составляет 4 килобайта (КБ) или 1024 слова.
Принимает два аргумента:
  • Счетверенный адрес флэш-памяти SPI (одно слово). Адрес должен быть выровнен по слову. Устройство возвращает код ошибки 0x1 для невыровненных адресов.
  • Количество слов для чтения (одно слово).

В случае успеха возвращает OK, а затем считывает данные с устройства Quad SPI. Ответ об ошибке возвращает код ошибки.
При частично успешном чтении QSPI_READ может ошибочно вернуть статус OK.
Примечание: Вы не можете запустить команду QSPI_READ во время настройки устройства.
Важный:При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.

QSPI_WRITE 39 2+Н 0 Записывает данные на четырехъядерное устройство SPI. Максимальный размер передаваемых данных составляет 4 килобайта (КБ) или 1024 слова.
Принимает три аргумента:
  • Смещение адреса флэш-памяти (одно слово). Адрес записи должен быть выровнен по слову.
  • Количество слов для написания (одно слово).
  • Данные для записи (одно или несколько слов). Успешная запись возвращает код ответа OK.

Чтобы подготовить память для записи, используйте команду QSPI_ERASE перед вводом этой команды.
Примечание: Вы не можете запустить команду QSPI_WRITE, пока выполняется настройка устройства.
Важный:При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.

QSPI_ERASE 38 2 0 Стирает сектор размером 4/32/64 КБ четырехъядерного SPI-устройства. Принимает два аргумента:
  • Смещение адреса флэш-памяти для начала стирания (одно слово). В зависимости от количества стираемых слов начальный адрес должен быть:
    • 4 КБ выровнены, если количество слов для стирания равно 0x400
    • 32 КБ выровнены, если количество слов для стирания равно 0x2000
    • Выравнивание по 64 КБ, если количество слов для стирания равно 0x4000. Возвращает ошибку для адресов, не выровненных по 4/32/64 КБ.
  • Количество стираемых слов указывается кратным:
    • 0x400, чтобы стереть 4 КБ (100 слов) данных. Этот параметр является минимальным размером стирания.
    • 0x2000 для удаления 32 КБ (500 слов) данных
    • 0x4000 для стирания 64 КБ (1000 слов) данных. Успешное стирание возвращает код ответа OK.

Важный:При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.

QSPI_READ_DEVICE_REG 35 2 N Считывает регистры с устройства Quad SPI. Максимальное чтение составляет 8 байт. Принимает два аргумента:
  • Код операции для команды чтения.
  • Количество байтов для чтения.
продолжение…
  1. Это число не включает заголовок команды или ответа.
При успешном чтении возвращается код ответа OK, за которым следуют данные, считанные с устройства. Возврат прочитанных данных кратен 4 байтам. Если число байтов для чтения не является кратным 4 байтам, оно дополняется числом, кратным 4 байтам, до тех пор, пока граница следующего слова и значение дополненного бита не станет равным нулю.
Важный: При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.
QSPI_WRITE_DEVICE_REG 36 2+Н 0 Записывает в регистры счетверенного SPI. Максимальная запись составляет 8 байт. Принимает три аргумента:
  • Код операции для команды записи.
  • Количество байтов для записи.
  • Данные для записи.

Чтобы выполнить стирание сектора или подсектора, вы должны указать адрес последовательной флэш-памяти в порядке от старшего значащего байта (MSB) до младшего значащего байта (LSB), как показано ниже.ampле иллюстрирует.
Чтобы стереть сектор флэш-памяти Micron 2 гигабит (Гб) по адресу 0x04FF0000 с помощью команды QSPI_WRITE_DEVICE_REG, запишите адрес флэш-памяти в порядке от старшего к младшему биту, как показано здесь:
Заголовок: 0x00003036 Код операции: 0x000000DC
Количество байтов для записи: 0x00000004 Адрес флэш-памяти: 0x0000FF04
Успешная запись возвращает код ответа OK. Эта команда дополняет данные, не кратные 4 байтам, до границы следующего слова. Команда дополняет данные нулями.
Важный:При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.

QSPI_SEND_DEVICE_OP 37 1 0 Отправляет код операции на счетверенный SPI. Принимает один аргумент:
  • Код операции для отправки четырехъядерного устройства SPI.

Успешная команда возвращает код ответа OK.
Важный:При сбросе quad SPI необходимо следовать инструкциям, указанным в Сброс Quad SPI Flash на странице 9.

Описание основных и вспомогательных кодов ошибок CONFIG_STATUS и RSU_STATUS см. в Приложении: Описание кодов ошибок CONFIG_STATUS и RSU_STATUS в Руководстве пользователя Intel FPGA IP клиента почтового ящика.
Сопутствующая информация

Ответы на код ошибки

Таблица 8. Коды ошибок

Значение (шестнадцатеричное) Код ошибки Ответ Описание
0 OK Указывает, что команда выполнена успешно.
Команда может ошибочно вернуть статус OK, если такая команда, как
QSPI_READ частично выполнен успешно.
1 INVALID_COMMAND Указывает, что загруженное в данный момент загрузочное ПЗУ не может декодировать или распознать код команды.
3 НЕИЗВЕСТНАЯ КОМАНДА Указывает, что текущая загруженная прошивка не может декодировать код команды.
4 INVALID_COMMAND_ ПАРАМЕТРЫ Указывает, что команда имеет неправильный формат. Для бывшегоample, установка поля длины в заголовке недействительна.
6 COMMAND_INVALID_ON_ ИСТОЧНИК Указывает, что команда получена из источника, для которого она не включена.
8 CLIENT_ID_NO_MATCH Указывает, что идентификатор клиента не может выполнить запрос на закрытие монопольного доступа к счетверенному SPI. Идентификатор клиента не соответствует существующему клиенту с текущим исключительным доступом к счетверенному SPI.
9 INVALID_АДРЕС Адрес недействителен. Эта ошибка указывает на одно из следующих условий:
  • Невыровненный адрес
  • Проблема с диапазоном адресов
  • Проблема с правами на чтение
  • Недопустимое значение выбора чипа, отображаемое значение больше 3
  • Неверный адрес в случае RSU
  • Недопустимое значение битовой маски для GET_VOL.TAGкоманда E
  • Недопустимый выбор страницы для команды GET_TEMPERATURE.
A AUTHENTICATION_FAIL Указывает на сбой проверки подлинности подписи битового потока конфигурации.
B ТАЙМ-АУТ Эта ошибка указывает на превышение времени ожидания из-за следующих условий:
  • Команда
  • Ожидание завершения операции QSPI_READ
  • Ожидание запрошенного показания температуры от одного из датчиков температуры. Может указывать на возможную аппаратную ошибку в датчике температуры.
C HW_NOT_READY Указывает на одно из следующих условий:
  • Аппаратное обеспечение не готово. Может указывать на проблему инициализации или конфигурации. Аппаратное обеспечение может относиться к четырехъядерному SPI.
  • Образ RSU не используется для настройки FPGA.
D HW_ERROR Указывает, что команда завершилась неудачно из-за неисправимой аппаратной ошибки.
80 – 8F COMMAND_SPECIFIC_ ОШИБКА Указывает на конкретную ошибку команды из-за использованной вами команды SDM.
СДМ

Команда

Имя ошибки Код ошибки Описание
ПОЛУЧИТЬ_ЧИПИД EFUSE_SYSTEM_ ОШИБКА 0x82 Указывает, что указатель кэша eFuse недействителен.
QSPI_OPEN/QSPI_CLOSE/QSPI_SET_CS/

QSPI_READ_D EVICE_REG/

QSPI_HW_ERROR 0x80 Указывает на ошибку флэш-памяти QSPI. Эта ошибка указывает на одно из следующих условий:
QSPI_WRITE_DEVICE_REG/

QSPI_SEND_D EVICE_OP/

QSPI_READ

  • Проблема с выбором микросхемы флэш-памяти QSPI
  • Проблема инициализации флэш-памяти QSPI
  • Проблема сброса флэш-памяти QSPI
  • Проблема с обновлением настроек флэш-памяти QSPI
QSPI_УЖЕ_ ОТКРЫТ 0x81 Указывает, что эксклюзивный доступ клиента к флэш-памяти QSPI с помощью команды QSPI_OPEN уже открыт.
100 НЕ НАСТРОЕНО Указывает, что устройство не настроено.
1FF ALT_SDM_MBOX_RESP_DEVICE_ ЗАНЯТО Указывает, что устройство занято из-за следующих вариантов использования:
  • RSU: микропрограмма не может перейти на другую версию из-за внутренней ошибки.
  • HPS: HPS занят в процессе реконфигурации HPS или холодного сброса HPS.
2FF ALT_SDM_MBOX_RESP_NO _ VALID_RESP_AVAILABLE Указывает, что нет доступного допустимого ответа.
3FF ALT_SDM_MBOX_RESP_ ОШИБКА Общая ошибка.

Восстановление кода ошибки
В таблице ниже описаны возможные шаги по устранению кода ошибки. Восстановление после ошибки зависит от конкретного варианта использования.
Таблица 9. Восстановление кодов ошибок для известных кодов ошибок

Ценить Код ошибки Ответ Восстановление кода ошибки
4 INVALID_COMMAND_ ПАРАМЕТРЫ Повторно отправьте заголовок команды или заголовок с аргументами с исправленными параметрами.
Напримерample, убедитесь, что параметр поля длины в заголовке отправлен с правильным значением.
6 COMMAND_INVALID_ON_SOURCE Повторно отправьте команду из действительного источника, такого как JTAG, HPS или основная ткань.
8 CLIENT_ID_NO_MATCH Подождите, пока клиент, открывший доступ к четырехъядерному SPI, завершит свой доступ, а затем закроет монопольный доступ к четырехъядерному SPI.
9 INVALID_АДРЕС Возможные действия по устранению ошибки:
Для GET_VOLTAGКоманда E: отправить команду с допустимой битовой маской.
Для команды GET_TEMPERATURE: отправьте команду с допустимым местоположением датчика и маской датчика.
Для работы QSPI:
  • Отправить команду с допустимым выбором чипа.
  • Отправьте команду с действительным флэш-адресом QSPI.

Для RSU: отправьте команду с действительным начальным адресом заводского образа или приложения.

B ТАЙМ-АУТ Возможные шаги восстановления:

Для команды GET_TEMPERATURE: повторите попытку отправки команды. Если проблема не устранена, измените конфигурацию или выключите и снова включите устройство.

Для работы QSPI: проверьте целостность сигналов интерфейсов QSPI и повторите попытку.

Для операции перезапуска HPS: повторите попытку отправки команды.

C HW_NOT_READY Возможные шаги восстановления:

Для работы QSPI: Перенастройте устройство через источник. Убедитесь, что IP-адрес, используемый для создания вашего проекта, разрешает доступ к флэш-памяти QSPI.

Для RSU: Настройте устройство с помощью образа RSU.

80 QSPI_HW_ERROR Проверьте целостность сигнала интерфейса QSPI и убедитесь, что устройство QSPI не повреждено.
81 QSPI_ALREADY_OPEN Клиент уже открыл QSPI. Продолжайте следующую операцию.
82 EFUSE_SYSTEM_FAILURE Попытка реконфигурации или выключения питания. Если ошибка сохраняется после реконфигурации или выключения питания, возможно, устройство повреждено и не подлежит восстановлению.
100 НЕ НАСТРОЕНО Отправьте битовый поток, который настраивает HPS.
1FF ALT_SDM_MBOX_RESP_DEVICE_ ЗАНЯТО Возможные действия по устранению ошибки:

Для работы QSPI: Подождите, пока текущая настройка или другой клиент завершит операцию.

Для RSU: перенастройте устройство для восстановления после внутренней ошибки.

Для операции перезапуска HPS: дождитесь завершения реконфигурации с помощью HPS или холодного сброса HPS.

Клиент почтового ящика с потоковым интерфейсом Avalon Руководство пользователя Intel FPGA IP Архивы документов

Для получения последней и предыдущей версий этого руководства пользователя см. Клиент почтового ящика с потоковым интерфейсом Avalon Руководство пользователя Intel FPGA IP. Если версия IP или программного обеспечения не указана, применяется руководство пользователя для предыдущей версии IP или программного обеспечения.

Версии IP совпадают с версиями программного обеспечения Intel Quartus Prime Design Suite до версии 19.1. Начиная с версии программного обеспечения Intel Quartus Prime Design Suite 19.2 или более поздней версии, IP-ядра имеют новую схему управления версиями IP.

История изменений документа для клиента почтовых ящиков с потоковым интерфейсом Avalon Руководство пользователя Intel FPGA IP

Версия документа Версия Intel Quartus Prime IP-версия Изменения
2022.09.26 22.3 1.0.1 Внесены следующие изменения:
  • Обновлен GET_VOL.TAGКомандная строка E в

Список команд и таблица описания.

  • Добавлено примечание к поддержке семейства настольных устройств.
  • Пересмотренный QSPI_SET_CS описание команды в таблице «Список команд и описание».
2022.04.04 22.1 1.0.1 Обновлен список команд и таблица описания.
  • Обновлено описание состояния контакта для команды CONFIG_STATUS.
  • Удалена команда REBOOT_HPS.
2021.10.04 21.3 1.0.1 Внесены следующие изменения:
  • Пересмотренный Список и описание команд стол. Обновлено описание для:
    • КОНФИГ_СТАТУС
    • РСУ_СТАТУС
2021.06.21 21.2 1.0.1 Внесены следующие изменения:
  • Пересмотренный Список и описание команд стол. Обновлено описание для:
    • РСУ_СТАТУС
    • QSPI_OPEN
    • QSPI_SET_CS
    • QSPI_ERASE
2021.03.29 21.1 1.0.1 Внесены следующие изменения:
  • Пересмотрено описание RSU_IMAGE_UPDATE в Список и описание команд стол.
  • Реструктурирован Команды управления. Удалены описания основных и незначительных кодов ошибок для команд CONFIG_STATUS и RSU_STATUS. Основные и второстепенные коды ошибок теперь задокументированы в виде приложения в Руководство пользователя Intel FPGA IP клиента почтового ящика.
2020.12.14 20.4 1.0.1 Внесены следующие изменения:
  • Добавлено важное примечание о сбросе флэш-памяти QSPI в Команды управления тема.
  • Обновлено Список и описание команд таблица:
    • Пересмотрено описание команды GET_TEMPERATURE.
    • Пересмотрено описание команды RSU_IMAGE_UPDATE.
  • Добавлен текст о сбросе прошивки QSPI.
  • Добавлен текст, описывающий поведение между внешним хостом и ПЛИС.
  • Удален текст: Возвращает ненулевой ответ, если устройство уже обрабатывает команду конфигурации.
    • Обновлены описания QSPI_WRITE и QSPI_READ, чтобы указать, что максимальный размер передачи составляет 4 килобайта или 1024 слова.
    • Исправлена ​​длина ответа с 1 на 0 для QSPI_OPEN, QSPI_CLOSE и QSPI_SET_CS. команда.
    • Пересмотрены описания QSPI_OPEN, QSPI_WRITE, QSPI_READ_DEVICE_REG и QSPI_WRITE_DEVICE_REG.
    • Добавлена ​​новая команда: REBOOT_HPS.
  • Добавлена ​​новая тема: Восстановление кода ошибки.
2020.10.05 20.3 1.0.1
  • Изменено название этого руководства пользователя с Почтовый ящик Avalon Streaming Interface Client Intel FPGA IP User Guide к Клиент почтового ящика с потоковым интерфейсом Avalon Руководство пользователя Intel FPGA IP в связи с изменением IP-имени в каталоге IP-адресов Intel Quartus Prime.
  • Глобально обновлены все экземпляры IP-имени.
  • Пересмотрено описание команды GET TEMPERATURE для устройств Intel Agilex в Список и описание команд стол.
  • Добавлена ​​рекомендация по сбросу синхронизатора в Интерфейсы часов и сброса стол.
  • Обновлено Коды ошибок стол. Добавлены новые ответы с кодом ошибки:
    • HW_ERROR
    • COMMAND_SPECIFIC_ERROR
  • Удалил Расположение датчиков температуры тема. Информация о датчике температуры доступна в Руководство пользователя Intel Agilex Power Management.
2020.06.30 20.2 1.0.0
  • Изменено название этого руководства пользователя с Почтовый ящик Avalon ST Client Руководство пользователя Intel FPGA IP к Почтовый ящик Avalon Streaming Interface Client Intel FPGA IP User Guide.
  • Переименовано название темы Заголовок команды и ответа к Команды и ответы.
  • Пересмотрены описания ID, LENGTH и кода команды/кода ошибки в Описание заголовка команды и ответа стол.
  • Переименовано название темы Поддерживаемые команды к Команды управления.
  • Пересмотрено следующее описание команд в Список и описание команд таблица:
    • GET_TEMPERATURE
    • РСУ_СТАТУС
    • QSPI_SET_CS
  • Переименовано название темы Коды ошибок к Ответы на код ошибки.
  • Удалена команда UNKNOWN_BR из Код ошибки стол.
2020.04.13 20.1 1.0.0 Внесены следующие изменения:
  • Добавлена ​​информация о датчиках температуры для команды GET_TEMPERATURE, включая рисунки, иллюстрирующие расположение ТСД.
  • Добавлена ​​команда RSU_NOTIFY в Список кодов команд и описание стол.
  • Обновлено Коды ошибок таблица:
    • INVALID_COMMAND_PARAMETERS переименован в INVALID_LENGTH.
    • Шестнадцатеричное значение COMMAND_INVALID_ON_SOURCE изменено с 5 на 6.
    • Шестнадцатеричное значение CLIENT_ID_NO_MATCH изменено с 6 на 8.
    • Шестнадцатеричное значение INVALID_ADDRESS изменено с 7 на 9.
    • Добавлена ​​команда AUTHENTICATION_FAIL.
    • Шестнадцатеричное значение TIMEOUT изменено с 8 на B.
    • Шестнадцатеричное значение HW_NOT_READY изменено с 9 на C.
2019.09.30 19.3 1.0.0 Первоначальный выпуск.

 Для обратной связи, пожалуйста, посетите:  FPGAtechdocfeedback@intel.com

 

Документы/Ресурсы

Клиент почтового ящика Intel с потоковым интерфейсом Avalon FPGA IP [pdf] Руководство пользователя
Клиент почтового ящика с потоковым интерфейсом Avalon FPGA IP, клиент почтового ящика, потоковый интерфейс Avalon FPGA IP

Ссылки

Оставьте комментарий

Ваш адрес электронной почты не будет опубликован. Обязательные поля отмечены *