Vitёk 0 10 февраля, 2005 Опубликовано 10 февраля, 2005 · Жалоба Проблема выбора, однако... Имеются три готовых PCI интерфейса: - свободно распространяемый OpenCores; - LogiCORE, купленный у Xilinx; - Альтеровские, которые лежат на здесь на ФТП... Пока есть время, пытаюсь разобраться с первыми двумя. (Собственно, только начал...) :) Первое впечатление - оба они мне не нравятся. Во-первых, в спецификациях на них написано, что будучи реализованы на Spartan-2 с поддержкой мастера тянут только 33 МГц, а разрабатываемое устройство может быть воткнуто в 66 МГц шину. Во вторых - со стороны пользователя неизвестные мне шины, что там, что там... На OpenCores - это WishBone. У Xilinx - вообще что-то непонятное, такое ощущение, что они к PCI сигналам цепляют с полсотни своих и отдают пользователю. (Это я утрирую, конечно, но первое вречатление было примерно таким.) Ну и в третих - по мелочам... :) Поэтому решил спросить у знатоков: кто какие корки использовал, и каковы ощущения от работы? На какие трудно обходимые ограничения, не видимые сразу, можно напороться? Пару слов о разрабатываемом устройств: PCI интерфейс - на Spartan-2, далее стоит Virtex-2Pro. На интерфейсе стоит DDR память. Интерфейс должен: - уметь быть мастером; - сливать/заливать по ДМА данные в память/из памяти; - точно так же переливать данные в/из второй ПЛИС; - обеспечивать доступ к PCI со стороны второй ПЛИС. В соответствии в последними двумя требованиями вылезает ещё вопрос: какой протокол (шину, интерфейс) взять за основу для организации связи между ПЛИС? (Только не PCI !!! Шутка... :) ) Кто что скажет? Буду рад всем откликнувшимся. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Realking 0 10 февраля, 2005 Опубликовано 10 февраля, 2005 · Жалоба используй от PLDA Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitёk 0 10 февраля, 2005 Опубликовано 10 февраля, 2005 · Жалоба используй от PLDAМожно подробнее? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gab 0 11 февраля, 2005 Опубликовано 11 февраля, 2005 · Жалоба Я остановился на OpenCores. К тому же wishbone очень простая шина ala ISA. Насчёт 66 мегагерц - я сейчас кручю его в этом направлении (но мееедленно, т. к. мне оно _пока_ не нужно). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ra4fox 0 12 февраля, 2005 Опубликовано 12 февраля, 2005 · Жалоба Сейчас как раз делаю проект с PCI, использую корку от Альтеры, работает хорошо, удобная настройка и использование в своих проектах. Другие не пробовал, но стоит дополнительно корка от PLDA, там есть удобные програмки с исходниками, рекомендую посмотреть, сильно облегчит разработку ПО. B) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitёk 0 14 февраля, 2005 Опубликовано 14 февраля, 2005 · Жалоба Спасибо всем, кто ответил! :) to gab: если позволите, пара вопросов... :) - что, на Ваш взгляд, _плохого_ имеется в WishBone (какие ограничения, или может быть, откровенные косяки)? - какова вероятнось "дотянуть" его до 66 МГц? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gab 0 15 февраля, 2005 Опубликовано 15 февраля, 2005 · Жалоба 2 Vitёk: Про WB: Плохого вроде пока не нашёл (может плохо искал? :)). Шина хорошо документирована, расширяема и съужаема :) при необходимости. Мои проекты с использованием IP блоков под неё работают. Единственное, что мне не понравилось - это проект WB Interconnection Matrix. Я обычно свой вариант использую. Про PCI: вероятность велика. В рассылке OpenCores пробегала инфа о подобных проектах. Там всё упирается в оптимизацию под некоторый базис (например Xilinx). После окончания своего текущего проекта (примерно начало лета) займусь этим. PS: (немного саморекламы :)) Скоро на OpenCores выложу свой проект -- DDS Generator. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitёk 0 16 февраля, 2005 Опубликовано 16 февраля, 2005 · Жалоба Спасибо! :) Я почему спрашивал про недостатки: у нас в конторе почти все, кому я говорил про OpenCores PCI, начинали заводить песню типа ".. оно там всё сырое, ни фига не работает, тыры-пыры.." Когда я пытался у них выяснить, что конкретно там сырое и как оно не работает, то в ответ слышал, ".. что я лично не работал, но слышал, что Вася рассказывал Пете, что он от кого-то там слышал, что там проблемы..." (в переполненом автобусе, наверное, разговор был), и "..ты думаешь, зря Зайлинксы за своё СТОПУДОВО рабочее ядро просят 5 килобаксов?..". Меня это насторожило: OpenCores-овское ядро выставлено на всеобщее обозрение уже не один год, и у его авторов наверняка было время, что бы довести до ума. Теперь же, когда человек, лично его использовавший, утвержает, что проблем нет - то и у меня сомнений нет. :) Ещё один плюс в пользу OpenCores PCI против Xilinx Coregen: а когда закончится зайлинковская лицензия (у нас почти закончилась - она выдаётся всего на год), и через пару лет выйдет очередная их ублюдочная САПР, идеологически не совместимая с этим б####им у####ым п####ым ISE - что тогда делать? ... Вот и я о том же... > Скоро на OpenCores выложу свой проект -- DDS Generator. Успехов. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ASN 0 16 февраля, 2005 Опубликовано 16 февраля, 2005 · Жалоба Vitёk Xilinx PCI Core - это проверенный рабочий проект с максимальным быстродействие. OpenCores - это общий проект, разработанный в неоптимизированном стиле. Поэтому - если есть деньги и нет времени - Xilinx PCI Core. Если нет лишних денег и есть время - OpenCores. З.Ы. Я сейчас "ковыряю" OpenCores для собственного развития. Хотя в проектах некоторые открытые корки использовал :). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adafin 0 17 февраля, 2005 Опубликовано 17 февраля, 2005 · Жалоба Зашел на opencores загрузить PCI ядро, попал на страницу регистрации, заполнил, далее - download и уж минут 5 как никакой реакции((( Сайт медленный/загруженный или какие другие проблемы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DimaV 0 17 февраля, 2005 Опубликовано 17 февраля, 2005 · Жалоба У когонибудь есть PCI ядро LogiCORE Xilinx, если не трудно положите на FTP, хочу попробовать. Сам работал с ядром OpenCores, на частоте 33 МГц, получил скорости на мастере (относительно компа) запись - 56 МБ/с, чтение - 84 МБ/с . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitёk 0 18 февраля, 2005 Опубликовано 18 февраля, 2005 · Жалоба получил скорости на мастере (относительно компа) запись - 56 МБ/с, чтение - 84 МБ/с .Что-то скорость в 1/3 и 2/3 от максимальной меня настораживает :(. На мосту PLX-9060 скорости получались поболее. Правда, ненамного... Если не трудно, парочка наводящих вопросов. Спрашиваю не из праздного любопытсва, ибо сам намереваюсь это (OpenCores) использовать. - какая была тактовая со стороны пользователя (то есть Wishbone) ? - Target'ом на материнке, так понимаю, была память? - какие ядра ДМА использовались? Каковы размеры одного блока данных? ЗЫ: насчет этого бл№:%?го LogiCORE смотрите в ЛС. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DimaV 0 18 февраля, 2005 Опубликовано 18 февраля, 2005 · Жалоба Тактовая частота со стороны WB была 66 МГц, тестил в LINUX, выделялась память 1 МБ , длина burst - 128 слов (512 КБ). Вообще действительно это ядро не оптимизированно под скорость, это WB-Core (много в принципе ненужного кода), я вот подумал если нужа скорость надо писать самому, для конкретной задачи, вроде это не сложно. Скорости можно получить больше если разогнать WB. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
keyru 0 18 февраля, 2005 Опубликовано 18 февраля, 2005 · Жалоба получил скорости на мастере (относительно компа) запись - 56 МБ/с, чтение - 84 МБ/с .Что-то скорость в 1/3 и 2/3 от максимальной меня настораживает :(. На мосту PLX-9060 скорости получались поболее. Правда, ненамного... Если не трудно, парочка наводящих вопросов. Спрашиваю не из праздного любопытсва, ибо сам намереваюсь это (OpenCores) использовать. - какая была тактовая со стороны пользователя (то есть Wishbone) ? - Target'ом на материнке, так понимаю, была память? - какие ядра ДМА использовались? Каковы размеры одного блока данных? ЗЫ: насчет этого бл№:%?го LogiCORE смотрите в ЛС. :) <{POST_SNAPBACK}> opencore корка при записи с local bus вставляет два wait state т.е. чтобы загрузить pci по полной частота на wishbone должна быть как минимум 33*3=100Мгц )) з.ы. на read wait state'ов нет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vitёk 0 18 февраля, 2005 Опубликовано 18 февраля, 2005 · Жалоба 2 DimaV, keyru - спасибо, туман начинает потихоньку рассеиваться. :) Эти лишние 2 wait state - связаны с особенностями Wishbone или необходимостью реклока с тактовой пользователя на тактовую PCI? Вроде в спецификации самой Вилки временные диаграмы без задержек... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться