Место и маршрут ПЛИС

Можно ли для программирования FPGAS написать свои собственные процедуры размещения и маршрутизации? [Дело не в том, что мое было бы лучше; дело в том, есть ли у меня свобода сделать это] - или этап размещения и маршрутизации выводит в недокументированные битовые файлы, что, по сути, вынуждает меня использовать проприетарные инструменты?

Спасибо!


person anon    schedule 29.05.2010    source источник


Ответы (2)


Ранее это обсуждалось на comp.arch.fpga. Как правило, вывод таков: если вы не хотите привлекать к себе интенсивные судебные иски со стороны компаний, производящих FPGA, вам, вероятно, не стоит делать что-то подобное. Форматы битовых файлов являются строго охраняемыми секретами компаний, производящих FPGA, и вам, вероятно, придется понимать формат файла, чтобы делать то, что вы хотите. Это означает, что вам нужно будет перепроектировать формат, и это (если вы каким-либо образом сделаете свой инструмент общедоступным) приведет к судебному иску в кратчайшие сроки.

Я добавлю, что, вероятно, есть промежуточные файлы и что вы, вероятно, не будете читать или писать сам битовый файл, чтобы делать то, что вы хотите, но эти промежуточные файлы, как правило, также недокументированы. Прочтите лицензионное соглашение для вашего инструмента синтеза FPGA (например, ISE от Xilinx) — любое обратное проектирование строго запрещено. Похоже, что единственный способ получить альтернативу с открытым исходным кодом в этом пространстве — это появление архитектуры FPGA с открытым исходным кодом.

person aneccodeal    schedule 29.05.2010
comment
Спасибо. И архитектура FPGA с открытым исходным кодом ОЧЕНЬ нужна по многим причинам. Текущая ситуация почти такая же, как если бы только Apply iOS была единственной ОС в мире. - person Prof. Falken; 30.03.2011
comment
Попытки создания архитектуры FPGA с открытым исходным кодом уже предпринимаются. В качестве примера у нас есть ZUMA: открытая архитектура наложения FPGA www1.cse.wustl.edu/~roger/565M.f12/4699a093.pdf кажется интересным началом На самом деле это может быть даже интереснее eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-43. pdf - person Rikard Söderström; 14.06.2015

Я согласен с annccodeal, но, чтобы немного расширить, в Xilinx может быть несколько способов сделать это. Формат файла XDL допускает (или используется для разрешения) явное размещение и маршрутизацию. Кроме того, должна быть возможность написать сценарий редактора FPGA для реализации пользовательской маршрутизации.

Что касается размещения, существует богатая инфраструктура для ограничения технологии отображения логики на примитивы и управления размещением этих примитивов. Например, ограничения LUT_MAP могут управлять сопоставлением технологий, а ограничения LOC и RLOC могут определять размещение. На практике это позволяет опытному разработчику полностью контролировать реализацию проекта, не требуя от него дублирования человеко-сотни разработки программного обеспечения для непосредственного создания потока битов.

Вы также можете найти интересное современное исследовательское программное обеспечение FPGA CAD, такое как VPR. На мой взгляд, перед ними стоит задача идти в ногу с собственными инструментами поставщиков, которые должны справляться с современными гетерогенными ПЛИС с разделяемыми 6-LUT, блоками DSP и т. д.

Удачного взлома.

person Jan Gray    schedule 15.11.2010