Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Однотипные PCI платы
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > ISA/PCI/PCI-X/PCI Express
irum4
Имеется некая PCI плата собственной разработки с собственным драйвером, которая нормально работает, когда одна, ресурсов (портов и памяти) требует не много. Но когда хочу установить подобных плат несколько, нарываюсь на такую неприятность:
1) на домашней материнке - при установке четырех плат винда начинает загружаться, а потом комп идет на перезагрузку. Если одной из четырех плат устанавливаю другой VendorID - винда грузится. Три платы винда выдерживает. В безопасном режиме винда выдерживает и четыре платы.
2) на другой материнке - при установке уже даже трех плат наблюдается глюк, при котором винда грузится, всем трем раздает ресурсы, но при обращении к одной из плат чтение любого порта возвращает FFFFFFFF, а при обращении к двум другим платам - все нормально.
На лицо зависимость от материнки, но главное , что одновременно работать не хотят!
Victor®
Цитата(irum4 @ Mar 15 2010, 14:15) *
Имеется некая PCI плата собственной разработки с собственным драйвером, которая нормально работает, когда одна, ресурсов (портов и памяти) требует не много. Но когда хочу установить подобных плат несколько, нарываюсь на такую неприятность:
1) на домашней материнке - при установке четырех плат винда начинает загружаться, а потом комп идет на перезагрузку. Если одной из четырех плат устанавливаю другой VendorID - винда грузится. Три платы винда выдерживает. В безопасном режиме винда выдерживает и четыре платы.
2) на другой материнке - при установке уже даже трех плат наблюдается глюк, при котором винда грузится, всем трем раздает ресурсы, но при обращении к одной из плат чтение любого порта возвращает FFFFFFFF, а при обращении к двум другим платам - все нормально.
На лицо зависимость от материнки, но главное , что одновременно работать не хотят!


На каком чипе плата сделана?
Что подается на PRSNT1# и PRSNT2#?
По поводу IO ресурсов - они ограничены.
Хватает ли их реально на 4 платы?
Вообще-то использование IO ресурсов не рекомендуется.
В некоторых архитектурах они могут вообще отсутствовать.
zltigo
Цитата(irum4 @ Mar 15 2010, 13:15) *
Имеется некая PCI плата собственной разработки с собственным драйвером....

Не разбирался, как они конкретно это делают, но многие PCI платы имеют джамперы для разрешения подобных конфликтов отключая PnP.
vvs157
Сталкивался с тем, что более 3-х Realtek 8139 100 mbit сетевых карточек не работают.
irum4
Цитата(Victor® @ Mar 15 2010, 12:32) *
На каком чипе плата сделана?
Что подается на PRSNT1# и PRSNT2#?
По поводу IO ресурсов - они ограничены.
Хватает ли их реально на 4 платы?
Вообще-то использование IO ресурсов не рекомендуется.
В некоторых архитектурах они могут вообще отсутствовать.

XC2S150-5PQ208
PRSNT1 = 0 и PRSNT2 = open
IO - ресурсов требую 128 байт , пробовал 64 - та же ситуация, пробовал вообще без них - та же ситуация
В безопасном режиме ресурсы раздает, так что хватает.

Цитата(zltigo @ Mar 15 2010, 12:48) *
Не разбирался, как они конкретно это делают, но многие PCI платы имеют джамперы для разрешения подобных конфликтов отключая PnP.

Проблема в том, что не могу врубится в чем конфликт! Поскольку машина загружается - ресурсы биос раздает, а вот у винды похоже проблемы.
Victor®
Цитата(irum4 @ Mar 15 2010, 15:18) *
В безопасном режиме ресурсы раздает, так что хватает.


Возможно конфликт связанный с драйверами.
Поудаляйте все собственные драйвера.
Установите Jungo Windriver и через него попробуйте.
irum4
Цитата(Victor® @ Mar 15 2010, 14:17) *
Возможно конфликт связанный с драйверами.
Поудаляйте все собственные драйвера.
Установите Jungo Windriver и через него попробуйте.

Это тоже проходил - без толку sad.gif
Victor®
Цитата(irum4 @ Mar 15 2010, 16:56) *
Это тоже проходил - без толку sad.gif


Кста... идея может и примитивная, но все-же...
есть возможность под линуксом на той-же материнке проверить?
max77
Может система не может раздать всем платам прерывания на шине.
Если например три платы одновременно выставят прерывание по одному адресу.
-Al-
Цитата(max77 @ Mar 15 2010, 18:33) *
Может система не может раздать всем платам прерывания на шине.
Если например три платы одновременно выставят прерывание по одному адресу.

Для PCI куча плат на одном прерывании - не проблема.

irum4
А Вы уверены в правильности работы используемого Вами ядра PCI?
Oldring
Цитата(irum4 @ Mar 15 2010, 13:15) *
Имеется некая PCI плата собственной разработки с собственным драйвером, которая нормально работает, когда одна, ресурсов (портов и памяти) требует не много. Но когда хочу установить подобных плат несколько, нарываюсь на такую неприятность:


Где-то схалтурили при выполнении требований совместимости со спецификациями PCI. Либо вы, либо разработчики мамок. Начните с перепроверки требований электрической совместимости. Посмотрите осциллографом на процесс выборки третьей платы, которая возвращает неправильные значения, и на TRDY на шине при этом.
irum4
wink.gif Всем спасибо за ответы. Вопрос закрыт.
Оказалось, что немного был криво написан драйвер (сейчас разбираемся в чем). После написания нового драйвера, перегразка при количестве плат более 3-х - прекратилась. Одновременно вставлял 5 однотипных плат - все ОК. Кроме того немного я намудрил с дешифрацией адресов портов - на более новой материнке адреса раздавались типа ВС80, а в старых только типа BC00. В результате я вычитывал данные портов, которых не существует, поэтому и читалось FFFFFFFF.Подкоректировал код - все платы пошли.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.