Отправьте прерывание в процессор от оборудования
SoC Blockset / Память
Блок Interrupt Channel получает запросы на прерывание от логики FPGA или блока Memory Channel, выносит решение запросы и инициировал событийно-управляемую программную задачу с блоком Task Manager. Можно соединить до 16 устройств к контроллеру прерываний с одним прерыванием для каждого устройства. Блок состоит из этих трех частей:
Контроллер прерываний – Эта часть принимает запросы на прерывание (IRQs) и выносит решение их согласно заданному пользователями приоритету. Когда параллельные запросы к контроллеру прерываний существуют, запросы с более высоким приоритетом обрабатываются перед теми с более низким приоритетом.
Процедура обработки прерывания (ISR) ядра – Эта часть получает запрос на прерывание от Контроллера прерываний, служит прерыванию и отправляет подтвердить сигнал назад в Контроллер прерываний, так, чтобы это могло обработать следующий IRQ.
Драйвер IPCore (один на прерывание) – Эта часть получает запрос от ISR Ядра и инициировала событийно-управляемую задачу в процессоре.
Даже при том, что канал прерывания может иметь больше чем одно прерывание выход к процессору, это отправляет не больше, чем одно активное событие прерывания в процессор в любой момент времени.
Это изображение показывает концептуальное представление блока Interrupt Channel, который принимает запросы на прерывание из алгоритма FPGA. После арбитража ядро служит запросу и инициировало событие к алгоритму процессора.