Хочу поделиться своим экспериментом с прерываниями на шине ISA.
Согласно книге EISA System Architecture (глава 4) запрос на прерывание производится с линии имеющей Z-состояние без каких-либо подтягивающих резисторов. Запрос на прерывание - это переход от низкого в Z-состояние. Контроллер прерываний сам имеет подтягивающий резистор и когда устройство запрашивает прерывание, то переход от низкого в Z состояние фактически является переходом от низкого к высокому на входе контроллера. Сам факт перехода запоминается контроллером и когда процессор откликается на прерывание, происходит проверка текущего состояния линии вызвавшей прерывание, если на ней высокий уровень – все нормально это действительно запрос на прерывание, если низкий - это помеха или ошибка.
В своем проекте я формирую прерывание с помощью импульса (1мкс) -от Z к низкому и от низкого к Z. Удалось соединить несколько источников прерываний без конфликтов на одной линии IRQ. (Конфликты были программные и страшные – бесконечное множество пугающих окошек).
Кому интересны детали, привожу описание (графическую схему, текст в AHDL) части проекта касающейся прерываний.
Может я все таки, что-то делаю не так, но устройство реально работает.