Grizzly 0 20 октября, 2019 Опубликовано 20 октября, 2019 · Жалоба Сразу скажу, что в схемотехнике и физике устройства ПЛИС я разбираюсь довольно слабо :( Мне приходится реализовывать различные алгоритмы ЦОС для них с точки зрения математики. Возникла задача, для которой необходимо постоянно перезагружать разные прошивки во время работы изделия. Например, раз в 20-30 секунд. Само изделие работает 24/7. Плисина из серии Xilinx Virtex. Прошивки грузятся армовским ядром, входящим в сборку изделия. При таком режиме эксплуатации плисина быстро помрет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 20 октября, 2019 Опубликовано 20 октября, 2019 · Жалоба 1 минуту назад, Grizzly сказал: Сразу скажу, что в схемотехнике и физике устройства ПЛИС я разбираюсь довольно слабо :( Мне приходится реализовывать различные алгоритмы ЦОС для них с точки зрения математики. Возникла задача, для которой необходимо постоянно перезагружать разные прошивки во время работы изделия. Например, раз в 20-30 секунд. Само изделие работает 24/7. Плисина из серии Xilinx Virtex. Прошивки грузятся армовским ядром, входящим в сборку изделия. При таком режиме эксплуатации плисина быстро помрет? Есть файл конфигурации FPGA, он хранится на чем-то энергонезависимом, например EEPROM. Внутри самой FPGA прошивка хранится в что-то вроде SDRAM памяти (поправьте если я ошибаюсь) Так вот саму FPGA конфигурировать можно сколь угодно много раз. А вот читать память с файлом конфигурации - зависит только от этой памяти. Поэтому в Вашем случае все зависит от памяти, откуда ARM ядро вычитывает прошивку для конфигурирования FPGA. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Grizzly 0 20 октября, 2019 Опубликовано 20 октября, 2019 · Жалоба 2 минуты назад, Flip-fl0p сказал: Поэтому в Вашем случае все зависит от памяти, откуда ARM ядро вычитывает прошивку для конфигурирования FPGA. Спасибо. Обычная флэшка на 128 Гб. На ней и Linux, и пользовательское ПО, и непосредственно bin прошивки. Читать ведь - не писать :) Здесь всё определится качеством флэшки. Уж если она сломается, то полетит всё целиком. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 20 октября, 2019 Опубликовано 20 октября, 2019 · Жалоба 46 minutes ago, Grizzly said: необходимо постоянно перезагружать разные прошивки во время работы изделия. Например, раз в 20-30 секунд. Само изделие работает 24/7. С Вашим чипом не знаком. Думаю что это обычная FPGA. Вроде все фпгашки по включению питания перегружают прошивку из некой внешней или внутр. памяти в своё озу и только потом работают. Если Ваш чип позволяет перепрограммировать своё озу (где прошивка лежит) например по JTAG или ещё как, то никаких ограничений на количество перезаписей быть не должно. По аналогии с MAX10 - можно программировать у уже включенного чипа либо внутр. RAM либо внутр. FLASH. Количество перезаписей flash ограничено, а ram пиши сколько угодно раз! Всегда этим пользуюсь при отладке прошивки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 21 октября, 2019 Опубликовано 21 октября, 2019 · Жалоба 12 hours ago, Grizzly said: Обычная флэшка на 128 Гб. На ней и Linux, и пользовательское ПО... Читать ведь - не писать :) Допустим, пользовательское ПО ничего не пишет. А разве Linux ничего не пишет на диск? Был опыт работы миникомпьютера с диском, в качестве которого использовались карточки микроSD. ИМХО - не сильно далеко от "обычной флешки". ОС - Linux. Чрез непродолжительное время эти карточки начали сыпаться - миникомп просто переставал загружаться. Перешли на другого производителя карточек. Время хранения информации, записанной во флешь микропроцессора или в микросхему памяти - десятки лет, особенно если при нормальной температуре эксплуатации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vladec 7 21 октября, 2019 Опубликовано 21 октября, 2019 · Жалоба 13 часов назад, Grizzly сказал: Плисина из серии Xilinx Virtex. Здесь память именно RAM, так, что со стороны ПЛИС никаких ограничений по загрузке нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 21 октября, 2019 Опубликовано 21 октября, 2019 · Жалоба А разве Virtex не единственная серия, которая может нести на борту ПЗУ для прошивки? Или я что-то путаю? Второй момент - да, загонять бит файл можно сколько угодно раз, но вот справится ли с этим внешняя "флеш" - это вопрос. И третье, почему проект перезагоняет постоянно прошивку? Возможно есть вариант сделать partition'ы и не перезаливать всю ПЛИС. Это же лигнее время концигурации, установки стабильной частоты и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 14 21 октября, 2019 Опубликовано 21 октября, 2019 · Жалоба 52 минуты назад, Nick_K сказал: А разве Virtex не единственная серия, которая может нести на борту ПЗУ для прошивки? Или я что-то путаю? Это была серия Spartan-3AN. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Grizzly 0 21 октября, 2019 Опубликовано 21 октября, 2019 · Жалоба 1 час назад, Nick_K сказал: И третье, почему проект перезагоняет постоянно прошивку? Возможно есть вариант сделать partition'ы и не перезаливать всю ПЛИС. Это же лигнее время концигурации, установки стабильной частоты и т.д. Не помещается :( Нужные обрабатывать разные сигналы. К сожалению, по-другому никак. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 21 октября, 2019 Опубликовано 21 октября, 2019 · Жалоба 52 minutes ago, Grizzly said: Не помещается :( Нужные обрабатывать разные сигналы. Простите, что не помещается? Из того что я читал (увы на практике не использовал) Partition'ы могут быть размером с ПЛИС кристал, просто хранятся в одной прошивке. Хотя если я ошибаюсь, тогда жаль. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Grizzly 0 21 октября, 2019 Опубликовано 21 октября, 2019 · Жалоба 50 минут назад, Nick_K сказал: Простите, что не помещается? Из того что я читал (увы на практике не использовал) Partition'ы могут быть размером с ПЛИС кристал, просто хранятся в одной прошивке. Никогда не приходилось иметь дело с ними. Спасибо. Прочитаю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Grizzly 0 22 октября, 2019 Опубликовано 22 октября, 2019 · Жалоба В 21.10.2019 в 10:59, Nick_K сказал: Возможно есть вариант сделать partition'ы и не перезаливать всю ПЛИС. Не удалось ничего найти в документации. Не подскажете, куда посмотреть? Я правильно понимаю, если есть две прошивки, каждая из которых по 80% ресурсов ПЛИС использует, то всё равно partition'ы помогут? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 22 октября, 2019 Опубликовано 22 октября, 2019 · Жалоба 35 minutes ago, Grizzly said: Не удалось ничего найти в документации. Не подскажете, куда посмотреть? Я дико извиняюсь. Технология называется Partial Reconfiguration. Смотреть вот сюда: UG 909 Реконфигурировать можно хоть всю ПЛИС, главное правильно написать модули. 35 minutes ago, Grizzly said: Я правильно понимаю, если есть две прошивки, каждая из которых по 80% ресурсов ПЛИС использует, то всё равно partition'ы помогут? Ну там идея в реконфигурации схожих областей в зависимости от нужд. Правда нигде провеличину этих областей не сказано. И да, там требуется полная лицензия ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 22 октября, 2019 Опубликовано 22 октября, 2019 · Жалоба 12 minutes ago, Nick_K said: полная лицензия ;) получал официальную лицензию за полцены у Альтеры ;). Можно было бы и за треть цены, но не уверен, что в ней была бы поддержка нужного кристалла. Ну и потом продлевал эту лицензию квазибесплатно, уже у Интела. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 5 22 октября, 2019 Опубликовано 22 октября, 2019 · Жалоба On 10/20/2019 at 9:46 PM, zombi said: Вроде все фпгашки по включению питания перегружают прошивку из некой внешней или внутр. памяти в своё озу и только потом работают. в рамках занудства - есть такая контора Актел (была, сейчас Микрочип) у нее пользовательские ФПГА-шки сразу имеют конфигурационное ПЗУ. в этом есть некоторый смысл, для некоторых приложений, но обычно сильно дороже "за LE" выходит. обещали поларфайером своим всех по ценам порвать, но пока не выходит... On 10/21/2019 at 10:59 AM, Nick_K said: А разве Virtex не единственная серия, которая может нести на борту ПЗУ для прошивки? Или я что-то путаю? у Латтиса семейства XP2, MACHXO* , у Альтеры в МАХ-ах у Латтиса в ICE* (ну и у всяких стартапов, которые вживую не довелось щупать) OTP - дешевле и проще на тот же кристал запулить а в Спартане с флашкой был мультичип пакадж - то есть два кристалла ПЛИС и ФЛАШ в одном корпусе ---------------- ну и мое мнение - в большие ПЛИС (Виртексы, Стратексы/Арии и т.п.) нет смысла напрягаться и вставлять ФЛАШКу - это никому не нужно, потому что по-любому нужна огромная плата с кучей комплектухи - туда поставить минимальную последовательную флашку не вопрос. ну и в 97% случаев на плате есть процессор со своей ФЛАШ, куда образ ПЛИС бесплатно можно положить ---------------- а по поводу срока службы Виртекса - полагаю сильно зависит от температуры (то есть насколько интенсивно работает прошивка) - если восновном прошивка, которая считает еле-еле и чуть-чуть потребляет, то эта ПЛИС проживет больше, чем та, в которую десятки ватт уходят... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться