Interrupt Channel

Отправьте прерывание в процессор от оборудования

  • Библиотека:
  • SoC Blockset / Память

  • Interrupt Channel block

Описание

Блок Interrupt Channel получает запросы на прерывание от логики FPGA или блока Memory Channel, выносит решение запросы и инициировал событийно-управляемую программную задачу с блоком Task Manager. Можно соединить до 16 устройств к контроллеру прерываний с одним прерыванием для каждого устройства. Блок состоит из этих трех частей:

  • Контроллер прерываний – Эта часть принимает запросы на прерывание (IRQs) и выносит решение их согласно заданному пользователями приоритету. Когда параллельные запросы к контроллеру прерываний существуют, запросы с более высоким приоритетом обрабатываются перед теми с более низким приоритетом.

  • Процедура обработки прерывания (ISR) ядра – Эта часть получает запрос на прерывание от Контроллера прерываний, служит прерыванию и отправляет подтвердить сигнал назад в Контроллер прерываний, так, чтобы это могло обработать следующий IRQ.

  • Драйвер IPCore (один на прерывание) – Эта часть получает запрос от ISR Ядра и инициировала событийно-управляемую задачу в процессоре.

Даже при том, что канал прерывания может иметь больше чем одно прерывание выход к процессору, это отправляет не больше, чем одно активное событие прерывания в процессор в любой момент времени.

Это изображение показывает концептуальное представление блока Interrupt Channel, который принимает запросы на прерывание из алгоритма FPGA. После арбитража ядро служит запросу и инициировало событие к алгоритму процессора.

Interrupt Channel Structure

Порты

Входной параметр

развернуть все

Каждое прерывание присвоено пара порта: один входной порт и один выходной порт. По умолчанию N th порт прерывания называют interruptN. Можно поменять имена прерывания путем нажатия на Edit в параметре Interrupts.

Соедините этот порт с булевым сигналом от логики FPGA или событием от блока Memory Channel или Event Source.

Зависимости

Количество входных портов зависит от количества прерываний в таблице прерываний.

Типы данных: rteEvent | Boolean

Вывод

развернуть все

Каждое прерывание присвоено пара порта: один входной порт и один выходной порт. По умолчанию N th порт прерывания называют interruptN. Можно поменять имена прерывания путем нажатия на Edit в параметре Interrupts.

Соедините этот порт с портом ввода событий задачи в блоке Task Manager.

Зависимости

Количество выходных портов зависит от количества прерываний в таблице прерываний.

Типы данных: rteEvent

Параметры

развернуть все

Этот параметр включает таблицу, где каждая из ее линий соответствует прерыванию в блоке Interrupt Channel. Отредактируйте таблицу, чтобы добавить или отредактировать прерывание. Канал прерывания может иметь до 16 прерываний.

Для каждого прерывания можно отредактировать эти значения.

  • Interrupt Name – Задайте имя прерывания. Это значение изменяет названия порта ввода и вывода для этого прерывания.

  • Trigger Type – Выберите триггерный тип для прерывания путем выбора любой из этих опций.

    • Rising edge – Когда прерывание происходит в логике FPGA

    • SoC event – Когда прерывание происходит в блоке Memory Channel или блоке Event Source

  • Priority – Установите приоритет для каждого прерывания, установлен в столбце Priority. Это значение остается статическим. Верхняя строка представляет самое высокое прерывание. Нажмите Move Up, чтобы увеличить приоритет прерывания. Нажмите Move Down, чтобы уменьшить приоритет прерывания.

Этот шаг расчета представляет время, требуемое для канала прерывания вынести решение и выполнить запрос на прерывание. Это задано как время, требуемое для арбитража Контроллера прерываний, выполнения ISR Ядра и дополнительной задержки драйвера устройства.

Задайте время вычислений путем введения номера в секундах.

Расширенные возможности

Преобразование фиксированной точки
Спроектируйте и симулируйте системы фиксированной точки с помощью Fixed-Point Designer™.

Смотрите также

Блоки

Введенный в R2020b