Как стать автором
Обновить

Комментарии 13

как-то сложно. почему бы не сделать, как в mbed? микроконтроллер представляется системе как mass storage устройство, на которое можно скинуть bitstream и он же загрузит его в fpga. веб сервис же после синтеза просто предлагает скачать этот файл.
Потому что FPGA НЕ МИКРОКОНТРОЛЛЕР! При разработке нужно пройти семь кругов ада довольно сложный процесс. Начиная от синтеза, заканчивая маппингом, прейсментом и роутингом. В зависимости от сложности, проект UART+I2C+SPI может собираться от 5 до 30 минут (при очень высоких частотах и большой плотности размещения). А потом нужно сконфигурировать саму ПЛИСину. Не залить программный код в память, а именно сконфигурировать. Это конечно происходит по такому же последовательному интерфейсу, но тут нет никаких «фишек» чистый поток единиц и нулей.
Поэтому перенос всех «тяжелых» работ в облако выглядит очень заманчиво. И может вправду понизит порог страдания вхождения в разработку на FPGA (заметьте, НЕ программирования)
ты не понял мой вопрос. зачем городить костыли ввиде webusb, когда можно просто в облаке собрать битстрим и скинуть его на mass storage.
Возможно причина как раз в специфике работы Латтисов (не имел дела с этим производителем), либо причина в стремлении прикрепить платку к конкретному веб хранилищу, чтобы человеки не могли применять её «налево». Тут всё покрыто тайной ;)
Не вижу принципиальной разницы.
При разработке нужно пройти семь кругов ада довольно сложный процесс. Начиная от синтеза, заканчивая маппингом, прейсментом и роутингом. В зависимости от сложности, проект UART+I2C+SPI может собираться от 5 до 30 минут (при очень высоких частотах и большой плотности размещения).

Синтез, как и компилирование прошивки проиходит полностью off-line в том смысле в этом процессе не требуется подключенный целевой кристалл.
А потом нужно сконфигурировать саму ПЛИСину. Не залить программный код в память, а именно сконфигурировать. Это конечно происходит по такому же последовательному интерфейсу, но тут нет никаких «фишек» чистый поток единиц и нулей.

По большому счету принципиальной разницы и нет. Что в одном что в другом случае с данными производится некая процедура передачи на целевой кристалл. А т.к. как нам сказали в статье, размер «прошивки» всего 3КБ, ничто не мешает вот этому микроконтроллеру принять по usb прошивку и изобразить из себя прошивающий хост, благо все эти процедуры производителями расписаны достаточно подробно.
Чуть выше я ответил на вопрос. Добавлю, что хотя «продвигать» FPGA в массы и является благородной целью, тем не манее даже сами производители не всегда открывают полную документацию для разработчиков. Что приводит к куче инливидуальных разработок и неоднократных наступаний на грабли.
Тоже про них слышал только название, но быстрый гуглёж выдал такой документ: iCE40 Programming and Configuration из которого видно что шьется эта FPGA вообще по обычному SPI. И сам-же производитель говорит что можно конфигурировать внешним контроллером:
ice40prog
Так что проблем и принципиальных отличий по-прежнему не вижу.
Значит преподаватель сильно повлиял на студента и вместо создания открытого продукта, было решено делать как всегда закрытый проприетарный сандбокс.
Особенно сильно что такое это WebUSB не смотрел, но кажется контролллер для того и стоит чтобы принять некоторый бинарник и зашить его в ПЛИС. Т.е., КМК, надо просто изменить прошивку набортного контроллера и он вполне сможет изображать из себя MSD.
Какой-то AWS EC2 F1 для бедных для тех кто не осилил оригинал.
Я не совсем понимаю, с чем связано такое ограничение

Технология FPGA вроде как под экспортными ограничениями, некоторые страны СНГ как раз в списке тех, кому нельзя поставлять (во всяком случае софт для работы с FPGA, поправьте, если ошибаюсь).
У Xilinx (это другой вендор FPGA, но суть та же) на сайте такое:
Furthermore due to strict export control policy, it is no longer possible to create or to maintain an online account in some E or D category countries. See here for more information.

Наверно автор проекта не хочет получить проблем с регулированием.
В TSSOP-20 у ST множество МК, например широко используется STM32F042, которые как раз с USB. А STM32L041F6 — без.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории