|
|
  |
Вопрос новичка |
|
|
|
Apr 26 2011, 19:01
|

Гуру
     
Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230

|
Цитата(D-Luxe @ Apr 26 2011, 20:48)  Уже год как работаю разработчиком ПЛИС, и до сих пор как-то не пришло осознание одной вещи.
Есть ли в России специалисты такого уровня, которые смогут написать с нуля корку PCI-Express или USB 3.0? Поскольку когда листаю оригинальные исходники фирмы Xilinx весом 200-300 Кб мне становится не по себе. Или все пользуются стандартными корками?
Лично мы на работе пользовались корками Temac, Aurora, работали по простой схеме сгенерировали в коргене, потестили в лупбэке, написали обвязку.
Есть кто-то на этом форуме кто пишет корки такого объема с нуля? А оно не надо. Я мог бы написать, но зачем? Обычно есть некая конкретная прикладная задача. Ее и решают. Производить фундаментальный ресечь просто незачем. Также как и незачем становиться уникальным спецом по PCI. Тут вам не США. Тут рынок вакансий раз два и обчелся. И написать конкурентоспособную корку, нужно иметь договоренности и NDA подписать. Многие FPGAшники могут написать мелкопроцессор, чем многие и занимаются. Но по мне, это не более чем мозговой онанизм.
|
|
|
|
|
Apr 27 2011, 05:50
|
Местный
  
Группа: Свой
Сообщений: 375
Регистрация: 9-10-08
Из: Таганрог, Ростовская обл.
Пользователь №: 40 792

|
Цитата(D-Luxe @ Apr 26 2011, 21:48)  Есть кто-то на этом форуме кто пишет корки такого объема с нуля? Ключевой параметр для большинства невоенных проектов - выход конечного продукта на рынок. Написать PCI-Express с нуля под конкретный проект - 3 месяца. Полный функционал может и все 5 месяцев потянуть. Это с учётом расширенной верификации. А вот аппаратная отладка может занять куда большее время. Многие ПЛИс имеют на борту аппаратные корки того же PCI-Express. Смысл создавать что-то самому? Если помножить зряплату спеца за 5 месяцев разработки + аппаратная отладка - так проще купить корку!
--------------------
Глупцы игнорируют сложность. Прагматики терпят ее. Некоторые могут избегать ее. Гении ее устраняют.
|
|
|
|
|
Apr 27 2011, 06:22
|
Частый гость
 
Группа: Участник
Сообщений: 125
Регистрация: 9-10-05
Из: С.-Петербург
Пользователь №: 9 418

|
Цитата(D-Luxe @ Apr 27 2011, 10:17)  Тогда немного другой вопрос, есть ли в России конторы которые занимаются разработкой ip cores? Гугль на запрос "российский ip core" выдает по сути только некий iprium.ru
|
|
|
|
|
Apr 27 2011, 06:50
|
Частый гость
 
Группа: Участник
Сообщений: 95
Регистрация: 19-07-06
Из: Москва
Пользователь №: 18 937

|
QUOTE (D-Luxe @ Apr 26 2011, 21:48)  Уже год как работаю разработчиком ПЛИС, и до сих пор как-то не пришло осознание одной вещи.
Есть ли в России специалисты такого уровня, которые смогут написать с нуля корку PCI-Express или USB 3.0? Поскольку когда листаю оригинальные исходники фирмы Xilinx весом 200-300 Кб мне становится не по себе. Или все пользуются стандартными корками?
Лично мы на работе пользовались корками Temac, Aurora, работали по простой схеме сгенерировали в коргене, потестили в лупбэке, написали обвязку.
Есть кто-то на этом форуме кто пишет корки такого объема с нуля? Проблема не в уровне а в целесообразности. Тут задача на самом деле сложнее чем кажется: 1- Надо писать корку - это 6 чел мес если им PCIe уже знаком (те если работали уже с готовыми корами) + 1 сопровождающий программист, который может писать драйверы и оперативно реагировать на изменение кора. 2- Надо купить или писать verification-core. Это некий продукт, с помощью которого делается верификация моделированием. Если не купить, то ещё 6 чел мес (даже больше кажется). Начинать это надо раньше чем саму корку. Писатели вериф-коре, в целях обеспечения качества работы, естественно не те, которые пишут саму корку!! 3- Нужно оборудование, разработчики PCB, способны делать высококачественные платы в сжатые сроки. Или купить дорогой девелопер кит. Но самое важное анализатор - либо прибор а-ля осцыл с опцией PCIe либо специализированный анализатор (такие есть у Agilent). Теперь главное понять - что надо раработать? - IP-core для последующей коммерциализацией на открытом рынке как IP-core? в даном случае придётся делать всё, что я описал высше. - Просто запускать PCIe? в данном случае, проще брать готовую корку и всё. - Для военных? ну да придётся поработать ... можно изучить то, что у Xilinx, тырить, дописать ... да и у военных должен быть соответствующий бюджет, если они действительно хотят что-то Сделать. Я бы на их месте загрузил бы одну команду потом распространил бы результаты как IP-core внутриведомственный ... а то каждый сидит в своём углу и делает то же самое, что и 10 других сидящих чуть ли не в соседних кабинетах
|
|
|
|
|
Apr 27 2011, 15:49
|
Частый гость
 
Группа: Участник
Сообщений: 87
Регистрация: 26-05-09
Пользователь №: 49 592

|
Цитата(ГаЛаКтIкУs @ Apr 27 2011, 09:50)  Проблема не в уровне а в целесообразности. Тут задача на самом деле сложнее чем кажется: 1- Надо писать корку - это 6 чел мес если им PCIe уже знаком (те если работали уже с готовыми корами) + 1 сопровождающий программист, который может писать драйверы и оперативно реагировать на изменение кора. 2- Надо купить или писать verification-core. Это некий продукт, с помощью которого делается верификация моделированием. Если не купить, то ещё 6 чел мес (даже больше кажется). Начинать это надо раньше чем саму корку. Писатели вериф-коре, в целях обеспечения качества работы, естественно не те, которые пишут саму корку!! 3- Нужно оборудование, разработчики PCB, способны делать высококачественные платы в сжатые сроки. Или купить дорогой девелопер кит. Но самое важное анализатор - либо прибор а-ля осцыл с опцией PCIe либо специализированный анализатор (такие есть у Agilent). Теперь главное понять - что надо раработать? - IP-core для последующей коммерциализацией на открытом рынке как IP-core? в даном случае придётся делать всё, что я описал высше. - Просто запускать PCIe? в данном случае, проще брать готовую корку и всё. - Для военных? ну да придётся поработать ... можно изучить то, что у Xilinx, тырить, дописать ... да и у военных должен быть соответствующий бюджет, если они действительно хотят что-то Сделать. Я бы на их месте загрузил бы одну команду потом распространил бы результаты как IP-core внутриведомственный ... а то каждый сидит в своём углу и делает то же самое, что и 10 других сидящих чуть ли не в соседних кабинетах  Целиком и полностью согласен. Сам на это смотрю каждый день :-)
|
|
|
|
|
Aug 17 2014, 21:26
|
Группа: Новичок
Сообщений: 1
Регистрация: 8-11-07
Пользователь №: 32 173

|
Был один эксперимент по созданию RTL кода для PCI-Express 1x версии 1.1. Вышло все следующим образом: - использовали ПЛИС фирмы Xilinx Spartan6 в нем есть GTP (высокоскоростной приемо-передатчик - компонент GTP_DUAL) и аппаратное ядро EndPoint (часть Physical Level, Data-Link Level и часть Transaction Level - компонент PCIE_A1) и дописали мы оставшуюся часть Transaction Level c DMA контроллером. На тестовых ПЭВМ все работало "как из пушки" суточные прогоны, повышенные температуры все нас радовало. Мы успокоились, первый раз использовали ядра в проектах и все шло как по маслу. Новая технология позволяла быстро создавать проекты, но во время сдачи проекта на эталонных ПЭВМ заказчика изделие работало 10 минут в режиме DMA и останавливалось. Мы использовали различные ПЭВМ одного типа и различные экземпляры устройств - поведение было одинаковым. После долгих разбирательств выяснили что на этих чипсетах после 10 минут интенсивного обмена заканчивались "кредиты" в системе управления буферами (flow control). Ситуация ужасная все подписано и согласовано а изделие не работает, заменить ПЭВМ или ПЛИС в изделии заказчик отказывается его тоже поджимают сроки. Ничего лучше не придумали как переписать аппаратное ядро (компонент PCIE_A1) и получилось, думали времени год убъем, оказалось написали за месяц отладили еще где-то за 3 и почти за полгода получили сырой но вполне рабочий вариант!!! Проект сдали где-то в начале 2012 года. Писать пришлось тяжело, ведь спецификацию нижлежащих слоев мы знали поверхностно. Реализовывал все один человек, правда работать ему приходилось без выходных и более 8 часов в день. Неудалось реализовать скремблирование на физическом уровне, т.к. времени начальство не дало, и без него все прекрасно работало, поэтому обошлись без него. Возможно этот код нужно по оптимизировать по быстродействию но нам хватало скорости которое изделие выдавало, приблизительно половина от заявленной в спецификации!!!
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|