реклама на сайте
подробности

 
 
> Разработка собственного PCI-контроллера, Использование регистрированных и не регистрированных сигналов
v_mirgorodsky
сообщение Dec 8 2005, 17:05
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 342
Регистрация: 21-02-05
Пользователь №: 2 804



Доброго времени суток smile.gif

Возникла необходимость разработки собственного PCI контроллера на FPGA. Есть несколько причин, по которым не подходят существующие решения и, надеемся, достаточно опыта для разработки собственного ядра.

В процессе проектирования ядра выяснилась необходимость работы с нерегистровыми сигналами шины PCI. При этом необходимость диктуется не столько эффективностью работы контроллера, как самой логикой формирования выходных сигналов по реакции на входные воздействия. Весь опыт предыдущей разработки говорит о ошибочности такого подхода, но похоже, для решения синхронизации передачи данных по шине другой альтернативы нет. Камнем преткновения стали сигналы FRAME и IRDY. Реально входная Target машина просто не успевает управлять логикой пользуясь регистровыми версиями этих сигналов maniac.gif

Существующий контроллер от PLDA, который мы исследовали для ознакомления не имел входных регистров на эти сигналы, однако имел множество примитивов типа LCELL на различных стадиях работы с этими сигналами. Как мы думаем, они использовались для устранения гонок на сигналах ohmy.gif

В первом приближении для использования нерегистровых версий сигналов для машин, логики и всего остального необходимо ограничить время распространения сигнала от пина до входа триггера через остальную логику. Выглядит так, что по стандарту PCI на сигналы накладываются жесткие ограничения на Setup. Таким образом, если время распространения сигнала плюс Setup триггера меньше времени Setup шины, то все должно быть шорошо cranky.gif

Есть ли у кого опыт написания собственных PCI ядер и кто как решал выше описанные проблемы? Какие есть мысли по данному поводу?

Хелп ас, плииииз, а то smile3046.gif


--------------------
WBR,
V. Mirgorodsky
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
-Al-
сообщение Dec 8 2005, 18:16
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894



PCI шина - синхронная, таким образом ничто не мешает разбить весь процесс на такты.. на самом деле за 30нс (длительность одного такта на PCI при 33МГц) можно сделать все что угодно... вообще непонятно... в чем именно загвоздка? нрмально спроектированный PCI-автомат работает довольно шустро... мне свой Target удалось запустить на FLEX10K10 (в симуляторе граничная частота была ), а в конечном варианте на ACEX1K30-1 максимальная тактовая частота в симуляторе на PCI CLK составила 90МГц... может и не самый лучший вариант, но работает весьма стабильно даже на разогнанных системах где, например, PCI CLK ~ 42МГц (83МГц/2)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th August 2025 - 23:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01696 секунд с 7
ELECTRONIX ©2004-2016