Что такое формат файла NGC?
Файл .ngc представляет собой нетлист Xilinx Native Generic Circuit, созданный инструментом синтеза XST (Xilinx Synthesis Technology) в составе Xilinx ISE Design Suite. Он хранит представление синтезированной логики FPGA на уровне вентилей - примитивные ячейки, соединительные цепи и дополнительные ограничения - скомпилированные из исходного кода на языках HDL VHDL или Verilog.
В рабочем процессе ISE файлы .ngc передаются в инструмент NGDBuild, который объединяет их в файл .NGD (Native Generic Database) для этапа трассировки и размещения (place-and-route). Сторонние поставщики IP-ядер распространяли зашифрованные файлы .ngc для защиты проприетарной логики, сохраняя при этом возможность интеграции в проекты заказчиков.
Формат является проприетарным и бинарным, без публично задокументированных магических байтов. Некоторые файлы начинаются с ASCII-текста, напоминающего синтаксис .EDF (EDIF), хотя нативный вариант Xilinx упакован в бинарном виде. Утилита ngc2edif преобразует стандартные файлы .ngc в текстовый EDIF для использования в других инструментах; зашифрованные файлы .ngc не могут быть преобразованы и требуют перелицензирования для новых цепочек инструментов.
Поддержка Xilinx ISE была прекращена в октябре 2013 года (финальная версия 14.7), а преемник от AMD, Vivado Design Suite, не поддерживает .ngc для устройств UltraScale или более новых. Для проектов 7-й серии Vivado принимает .ngc через преобразование ngc2edif. Таким образом, формат .ngc является устаревшим артефактом, привязанным исключительно к инструментарию ISE, жизненный цикл которого завершен.
Безопасность и защита
РИСК: LOWФайлы нетлистов FPGA не содержат исполняемого кода для хост-процессоров; безопасны для обработки в любой ОС. Зашифрованные файлы NGC защищают проприетарную логику поставщиков IP-ядер.
Детали формата
в двух словах- Образ ROM Nintendo GameCube - Некоторые файлы образов дисков GameCube используют расширение .ngc; они совершенно не связаны с нетлистами FPGA Xilinx.
Программы, открывающие файлы NGC
Технические подробности
глубокая спецификация| Кодировка | Бинарная проприетарная (производная от EDIF, бинарная упаковка) |
| Порядок байтов | Little-endian |
| Уровень нетлиста | Уровень вентилей (примитивы FPGA и отображенные библиотечные ячейки) |
| Шифрование | Опционально - нетлисты IP-ядер могут быть зашифрованы для стороннего распространения |
| Типичный размер файла | 10 КБ - 50 МБ (масштабируется в зависимости от сложности проекта) |
| Создается в | XST (Xilinx Synthesis Technology) в составе ISE Design Suite |
| Используется в | NGDBuild, который выводит .ngd для трассировки и размещения |
| Инструмент конвертации | ngc2edif преобразует стандартные .ngc в текстовый формат EDIF |
| Зашифрованные файлы | Не могут быть преобразованы с помощью ngc2edif; требуют перелицензирования для Vivado |
| Статус инструментария | ISE Design Suite EOL октябрь 2013; финальная версия 14.7 |
| Формат-преемник | DCP (Design Checkpoint) в AMD Vivado Design Suite |
| Область применения (устройства) | Xilinx 7-й серии и старше (эпоха ISE); не поддерживается для UltraScale/UltraScale+ |
| Связанные ОС | Windows, Linux |
| Выпущен | Late 1990s with Xilinx ISE / XST synthesis tool |
| Последняя версия | ISE 14.7 (final ISE release, October 2013); NGC format frozen since then |
| Спецификация | www.xilinx.com |
Конвертации NGC
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах NGC.