exponenta event banner

Канал прерывания

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

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

  • Interrupt Channel block

Описание

Блок канала прерывания принимает запросы прерывания от логики FPGA или блока канала памяти, разрешает запросы и запускает управляемую событиями задачу программного обеспечения для блока диспетчера задач. К контроллеру прерываний можно подключить до 16 устройств с одним прерыванием на устройство. Блок состоит из следующих трех частей:

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

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

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

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

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

Interrupt Channel Structure

Порты

Вход

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

Каждому прерыванию назначается пара портов: один входной порт и один выходной порт. По умолчанию N-й порт прерывания называется прерываниемN. Имена прерываний можно изменить, щелкнув Изменить в параметре Прерывания.

Подключите этот порт к логическому сигналу из логики FPGA или к событию из блока канала памяти или источника событий.

Зависимости

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

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

Продукция

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

Каждому прерыванию назначается пара портов: один входной порт и один выходной порт. По умолчанию N-й порт прерывания называется прерываниемN. Имена прерываний можно изменить, щелкнув Изменить в параметре Прерывания.

Подключите этот порт к входному порту события задачи в блоке диспетчера задач.

Зависимости

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

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

Параметры

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

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

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

  • Имя прерывания - укажите имя прерывания. Это значение изменяет имена портов ввода и вывода для данного прерывания.

  • Тип триггера - выберите тип триггера для прерывания, выбрав любую из этих опций.

    • Rising edge - Когда прерывание инициируется в логике FPGA

    • SoC event - Когда прерывание инициируется в блоке канала памяти или блоке источника событий

  • Priority - приоритет каждого прерывания задается в столбце Priority. Это значение остается статическим. Верхняя строка представляет наибольшее прерывание. Щелкните Переместить вверх, чтобы увеличить приоритет прерывания. Щелкните Переместить вниз (Move Down), чтобы уменьшить приоритет прерывания.

Это время выборки представляет время, необходимое каналу прерывания для арбитража и выполнения запроса прерывания. Он определяется как время, необходимое для арбитража контроллера прерываний, выполнения ISR ядра и дополнительной задержки для драйвера устройства.

Укажите время обработки, введя число в секундах.

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

Преобразование с фиксированной точкой
Проектирование и моделирование систем с фиксированной точкой с помощью Designer™ с фиксированной точкой.

Представлен в R2020b