Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Вебморда + простой сетевой интерфейс на слабенькой борде

649  1 2 3 все
Wanderer_ посетитель06.06.18 21:03
NEW 06.06.18 21:03 
в ответ ilghiz 02.06.18 15:48
RTOSочень хотелось бы использовать, но есть одна заморочка. мне надо редко, но надобно, перекомпиллировать гнутым компиллером часть софтвера, который внутри эмбеддед платформы работает.

Да, тут RTOS скорей всего может не подойти.


Скажите, пожалуйста, в каком формате их можно/правильно передать по вебу или какой формат взять правильнее вместо EPS, но чтоб сильно не вешаться по конвертации? То есть какой векторный формат по вебу хорошо ходит?

Я тут не специалист, но на сколько я знаю, по Вебу в основном передают пиксельную графику в формате jpeg или png.


#41 
  ilghiz знакомое лицо06.06.18 22:09
NEW 06.06.18 22:09 
в ответ Wanderer_ 06.06.18 21:03

> Я тут не специалист, но на сколько я знаю, по Вебу в основном передают пиксельную графику в формате jpeg или png.

ага, верно, спасибо! Как раз уже именно так и сделал, то есть пишу пикселы, и libpng конвертирую в png, которую и отображаю. Хотел вначале рисовать через canvas в жаве, но получалось не красиво и достаточно громоздко.

#42 
AlexNek патриот06.06.18 22:32
AlexNek
NEW 06.06.18 22:32 
в ответ ilghiz 06.06.18 22:09

но если требуется вектор, то по идее - SVG

https://www.w3.org/2010/09/svg_browser.php

#43 
Wanderer_ посетитель09.06.18 13:15
NEW 09.06.18 13:15 
в ответ ilghiz 06.06.18 22:09, Последний раз изменено 09.06.18 13:16 (Wanderer_)

Не по теме вопрос, просто интересно как вы работу PL(programmable logic) и PS (processing system) между собой организовали. Как организовали управление AXI шиной? На PL тоже считаете, благо там DSP Slice есть, или только сигналы с датчиков обрабатываете?


Успехов

#44 
  ilghiz знакомое лицо09.06.18 23:54
NEW 09.06.18 23:54 
в ответ Wanderer_ 09.06.18 13:15

> Не по теме вопрос, просто интересно как вы работу PL(programmable logic) и PS (processing system) между собой организовали. На PL тоже считаете?

у меня там два куска кода в плиске. Первый - получает данные с АЦПшки (16 LVDS на 160МГц на оба фронта) и делает некоторые махинации с этими данными, которые на обычном процессоре бы стоили бы порядка десятков гигафлопсов, на выход выбрасывая немного сотни КБайт/с нужных данных на процессор и с процессора получая насчитанные коэффициенты для дальнейшей предобработки.


На это забито 2/3 всех умножителей и большая часть блочной памяти.


Одновременно с этим мне надобно выполнять довольно простые, но вычислительно очень затратные операции, похожие на умножение матриц и Фурье (то есть данных много меньше, чем вычислений). Тут все просто - процессор сыпет данные на плиску и последняя делает эти операции, отсылая назад результат. Для простоты исполнения оба блока засинхронизованы. То есть грубо говоря, если процессору вторая часть не нужна, то все равно на нее нули сыпятся.


То есть на PL примерно 3х10^9 пар синусов и косинусов в секунду (120 умножителей) и где-то около 2x10^10 операций (оставшиеся 50 умножителей) с фиксированной точкой (18 битные умножения и под 50 битные сложения) в секунду выполняется, на PS около 200-500МФлопсов на двойной точности и трафика между ними около 50МБайт.


На PS сидит много прошивок для PL, на данный момент их несколько десятков, но будет больше. В зависимости от задачи плиска конфигурится своей прошивкой, но, понятно, это происходит не часто, но я этой возможностью регулярно пользуюсь.


Греется конечно оно все, но всяко обычный процессор на этой задаче не смог бы уложится в 10 ватт, которые потребляет у меня ADC+PL+PS+LPDDR2 и с десяток их DC-DC, ибо эквивалентная задача под сотню гигафлопсов требует, а в 2000-2003 схожую задачу я гонял на хороших в то время суперкомпьютерах :)

#45 
Wanderer_ посетитель13.06.18 22:25
NEW 13.06.18 22:25 
в ответ ilghiz 09.06.18 23:54

Спасибо, очень интересно.

Я смотрю сейчас в сторону Zynq-a. Купил Zybo board, буду осваивать.

#46 
1 2 3 все