Здравствуйте всем!
Задача такова: имеется плата с ISA-интерфейсом на которой установлена ПЛИС EPM3128ATC144-10, микросхема ST16C554 (4 UARTa) гальваническая развязка UARTов и RS-422 преобразователи, четыре 8-ми разрядных регистра ввода-вывода для сканирования клавиатуры и управления светодиодами. Решено было превести сие чудо на PCI и поиметь сразу все прелести Plug`n`play а заодно и освоить новое, более дешёвое семейство MAX II.
Опыта в использовании PCI нету. В связи с этим есть несколько вопросов:
1. Изучаю спецификации PCI 2.2, PCI 3.0 , книги Гука "Аппаратные интерфейсы ПК" и "PCI system architecture" Tom Shanley and Don Anderson" Что ещё посоветуете почитать?
2. Выбрали ПЛИС - EPM570T144C5. Хватит ли её ресурсов и производительности, если учесть, что новое устройство с точки зрения PCI будет иметь две функции: одна функция - это UARTы, соответственно 4 BARа одна линия прерываний - INTA, другая - ввод-вывод, 1 BAR и ещё одна линия прерываний INTB. Здесь на форуме Boris_TS говорил про проблемы реализации многофункциональных устройств с использованием нескольких прерываний, стоит ли отказаться от использования 2-х функций?
3. А не изобретаем ли мы велосипед? т.е. может посоветуете недорогие микросхемы UART со встроенным PCI-интерфейсом типа MCS9835CV. Не получится ли дешевле, чем связка ПЛИС+ST16C550?
4. Решено сделать так (по опыту ISA), новое устройство будет иметь 5-вольтовую спецификацию разъёма PCI. 5V с шины будет преобразовываться в 3,3V с помощью LM1117DT-3.3 и запитавть ПЛИС. Судя по спецификации на семейство MAX II при 3,3V питании выводы ПЛИС 5-V толерантны. Будет такая схема работать или есть лучшие варианты?
5. Прошивку ПЛИС разрабатываю в графическом редакторе пакета Quartus 8.0 (bdf), может быть есть у кого примеры реализации PCI устройства в таком формате? Я был бы очень признателен. Удастся ли сэкономить ресурсы ПЛИС, если отказаться от использования стандартной PCI-корки.
Заранее спасибо всем, кто откликнется!!!