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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Работа с PCIe мостом GN4124, С чего начать разработу ПО?
Dmitrij68
сообщение Jul 14 2010, 01:54
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 10-01-06
Пользователь №: 13 025



Цитата(Airy_brn @ Jul 13 2010, 02:05) *
Я проект как есть не компилировала - сразу вставляла кусок кода в свой. Взяла модуль Lambo и App_csr, подключила с одной стороны к ногам, с другой к фифо интерфейсу и регистрам управления.


Давайте адрес, вышлю smile.gif


Dmitrij68@mail.ru

Ихний проект lambo после "очистки" не работает. Но если создать свой и подсунуть ихнее ядро, все нормально. И даже разводиться чуть быстрее. А вот pinto никак. А не поскажите где ошибка с StreamID. И зачем убрали DCM, что это дало? И еще, как я понял, Вы не использовали ихний DDR контроллер?
Кстати на какой ISE работаете?

Сообщение отредактировал Dmitrij68 - Jul 14 2010, 01:58
Go to the top of the page
 
+Quote Post
FLTI
сообщение Jun 27 2011, 07:44
Сообщение #17


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



Цитата(Airy_brn @ Feb 16 2010, 21:51) *
Плата у нас своя, но Gennum'овское ядро впихнуть туда все-таки получилось. Поковыряться пришлось основательно, но в итоге все получилось. Если кому интересно, могу рассказать о найденных интересных местах в версии для Xilinx.

Расскажите пожалуйста.
Особенно интересно узнать, есть ли баги в проекте Pinto и работают ли их драйвера под WIN7?

Цитата(Бэд @ Feb 6 2010, 23:14) *
Недавно решал подобную проблему. Windriver кроме официального сайта можно найти и в местных "закромах". Там же вроде и лицензия к нему валялась. У Вас впереди будет много проблем. Без отличного понимания как работает FPGA core (они называют это "DMA sequencer") будет Вам очень тяжко. Если же плата не от Gennum, то соответственно и ДМА машинка у Вас будет своя. А сделать и отладить такую машинку даже малость потруднее будет, чем софт написать. Но всё проходимо, проверено. Я сейчас заканчиваю возню с GN4121 - это "младший брат" GN4124. В общем всё победимо, но впереди - много трудностей...

В чём основные проблемы и трудности?
Удалось ли в проекте Pinto реализовать одновременно capture и playback?
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Jul 26 2011, 10:23
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(FLTI @ Jun 27 2011, 14:44) *
В чём основные проблемы и трудности?
Удалось ли в проекте Pinto реализовать одновременно capture и playback?

1. Их машинка для работы с памятью была заточена на работу с фифошками, то есть адрес "протянуть" на память было невероятно сложно.
В моём приложении (туча разных буферов для видео и аудио) адрес был необходим как воздух, пришлось вникнуть и всё переписать.
Добавил механизм так называемых "локальных дескрипторов", то есть небольшая табличка для каждого ДМА движка (на запись и на чтение), которая описывает начальный адрес ДМА и размер ДМА в страничках со стороны локальной памяти ДДР.
2. Крайне неэффективно использовалась память для SG таблиц внутри FPGA (3*32 bit на каждую SG страничку, переделал - у меня всего 32 бита на каждую страничку таблички, при этом всё пашет под 64 битными системами). Память BRAM в моём проекте была в большом дефиците (специфика многочисленных переходов из домена в домен и большое число фифошек).
3. Механизм перехода из 32bit * 200MHz в 64bit * 100MHz мне очень не понравился, исключил все DCMки и сделал всё на 32bit 200 МГц. После некоторой оптимизации по скорости всё разводится на ура, все констрейны выполняются.
4. Всю работу с видео выкинул, вставил свои куски (так было нужно для моей задачи).
5. Для улучшения производительности между памятью DDR и DMA движком вставил фифошки (они там в любом случае были необходимы, ибо клоки - разные). Возложил на этот кусок функции кэширования - сильно помогает поднять производительность системы в целом.
6. В дальнейшем перетащил дизайн под архиетктуру Спартана6, но это уже отдельная история.
7. Да, капчур с плейбеком в моём дизайне естественно живут независимо и одновременно. Нельзя сказать что они друг на друга не влияют, так как обращаются они в итоге к одной и той же ДДР памяти. Но если скорости записи и чтения далеки от предельных это влияние минимально.
Go to the top of the page
 
+Quote Post
FLTI
сообщение Jul 28 2011, 08:02
Сообщение #19


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



Цитата(Bad0512 @ Jul 26 2011, 14:23) *
1. Их машинка для работы с памятью была заточена на работу с фифошками, то есть адрес "протянуть" на память было невероятно сложно.
В моём приложении (туча разных буферов для видео и аудио) адрес был необходим как воздух, пришлось вникнуть и всё переписать.
Добавил механизм так называемых "локальных дескрипторов", то есть небольшая табличка для каждого ДМА движка (на запись и на чтение), которая описывает начальный адрес ДМА и размер ДМА в страничках со стороны локальной памяти ДДР.
2. Крайне неэффективно использовалась память для SG таблиц внутри FPGA (3*32 bit на каждую SG страничку, переделал - у меня всего 32 бита на каждую страничку таблички, при этом всё пашет под 64 битными системами). Память BRAM в моём проекте была в большом дефиците (специфика многочисленных переходов из домена в домен и большое число фифошек).
3. Механизм перехода из 32bit * 200MHz в 64bit * 100MHz мне очень не понравился, исключил все DCMки и сделал всё на 32bit 200 МГц. После некоторой оптимизации по скорости всё разводится на ура, все констрейны выполняются.
4. Всю работу с видео выкинул, вставил свои куски (так было нужно для моей задачи).
5. Для улучшения производительности между памятью DDR и DMA движком вставил фифошки (они там в любом случае были необходимы, ибо клоки - разные). Возложил на этот кусок функции кэширования - сильно помогает поднять производительность системы в целом.
6. В дальнейшем перетащил дизайн под архиетктуру Спартана6, но это уже отдельная история.
7. Да, капчур с плейбеком в моём дизайне естественно живут независимо и одновременно. Нельзя сказать что они друг на друга не влияют, так как обращаются они в итоге к одной и той же ДДР памяти. Но если скорости записи и чтения далеки от предельных это влияние минимально.

Bad0512,благодарю за столь обстоятельный рассказ.
Скажите, а насколько проект pinto в исходном виде, если не вносить в него никакие изменения, решает свою задачу по риал-тайм капчуру и плейбеку для HD-video?
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Jul 28 2011, 08:44
Сообщение #20


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(FLTI @ Jul 28 2011, 15:02) *
Bad0512,благодарю за столь обстоятельный рассказ.
Скажите, а насколько проект pinto в исходном виде, если не вносить в него никакие изменения, решает свою задачу по риал-тайм капчуру и плейбеку для HD-video?

В принципе решает, но насколько я помню (давно это было...) полный дуплекс в этом проекте не реализован. То есть невозможно одновременно капчурить и плейбечить HD. Что-то там надо допиливать вручную. А вообще pinto - это демонстрационный проект, поэтому в нём немало глюков, и он ограничен в функциональности. Не стОит ждать от него высокой надёжности и широкой функциональности. Цель этого проекта - показать, что в принципе капчурить и плейбечить HD на дешёвом спартанчике возможно. Всё остальное - как раз и задача разработчика, допилить этот дизайн до продажного состояния.
Ещё, насколько я помню, там нет поддержки 3G форматов. Сам код тоже местами вызывает у меня рвотные рефлексы, но это у всех по-разному.
Go to the top of the page
 
+Quote Post
FLTI
сообщение Jul 29 2011, 09:45
Сообщение #21


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



Bad0512, а Вы не пробовали вообще без DDR обойтись для капчура и плейбека?
А что полезного вообще есть в pinto если Вы столько оттуда повыбрасывали?
Какие впечатления от самой GN4124, так ли всё работает как в доках описано, нет ли каких явных багов?

Go to the top of the page
 
+Quote Post
Bad0512
сообщение Jul 29 2011, 12:13
Сообщение #22


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(FLTI @ Jul 29 2011, 16:45) *
Bad0512, а Вы не пробовали вообще без DDR обойтись для капчура и плейбека?
А что полезного вообще есть в pinto если Вы столько оттуда повыбрасывали?
Какие впечатления от самой GN4124, так ли всё работает как в доках описано, нет ли каких явных багов?

Без ДДР - невозможно. Внутренней памяти мало, в реальной жизни необходимо буферировать минмум 1 секунду потока
для того, чтобы всё работало без дропов.
Полезного в дизайне от геннума - сама концепция полностью дуплексной системы, когда все три задачи (запись в ДДР,
чтение из ДДР и работа с регистрами target) пашут одновременно и независисмо. Сама структура всего дизайна весьма правильная
у них. Ну а реализация конечно индусская...
Багов явных в GN4124 я не нашёл, вроде всё пашет как заявлено.
Go to the top of the page
 
+Quote Post
FLTI
сообщение Aug 1 2011, 06:02
Сообщение #23


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



Цитата(Bad0512 @ Jul 28 2011, 12:44) *
Без ДДР - невозможно. Внутренней памяти мало, в реальной жизни необходимо буферировать минмум 1 секунду потока
для того, чтобы всё работало без дропов.

Буферировать минмум 1 секунду потока - это Вы имели в виду для какого видео, SD или 3G-HD?
Буфер на секунду для капчура+ буфер на секунду для плейбека = транспортная задержка между вх. и вых. видео получется 2 секунды.
Не многовато ли?


Цитата(Bad0512 @ Jul 26 2011, 14:23) *
6. В дальнейшем перетащил дизайн под архиетктуру Спартана6, но это уже отдельная история.

Вы имеете в виду, что на Спартане-6 всё проще получается и без GN4124?
Хотя , конечно не надо забывать, что в Спартане-6 только PCIe x1, а в GN4124 - PCIe x4 и поэтому 3G-HD через Спартан уже не пролезет.
Go to the top of the page
 
+Quote Post
FLTI
сообщение Aug 22 2011, 05:54
Сообщение #24


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



В документах от Gennum ( в отличии от Xilinx и Altera, которые приводят результаты даже для конкретных материнских плат ) нигде не указаны достижимые скорости передачи данных для GN4121/GN4124.
Если Вы имели дело с GN4121/GN4124, то что можете сказать по поводу достижимых скоростей?
Или же я всё же не заметил, и есть документ , где эти скорости приведены?
Go to the top of the page
 
+Quote Post

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

 


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


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