ПОИСК Статьи Чертежи Таблицы От ПЛИС к заказной микросхеме из "Проектирование на ПЛИС архитектура, средства и методы " Под переходом от ПЛИС к заказной микросхеме (ASI ) обычно понимают использование одной или нескольких ПЛИС в качестве прототипа устройства на основе заказной микросхемы. При этом, если пользователь работает не с малыми или средними заказными микросхемами, часто возникает необходимость разделить устройство на несколько ПЛИС. Некоторые поставщики ПЛИС и САПР электронных систем предлагают (или предлагали) приложения, которые выполняют такое разбиение автоматически но эти средства появляются и исчезают с завидной регулярностью. Их характеристики, возможности и качество работы также меняются почти каждую неделю (другими словами, вам придётся самостоятельно оценить предлагаемые решения и сделать свой выбор). [c.237] Некоторые функции, такие как очереди FIFO или блоки двухпортовой памяти, имеют довольно-таки специфичную реализацию, если они формируются из блоков ОЗУ, встроенных в ПЛИС. Способы реализации этих функций обычно отличаются от тех, которые используются при реализации заказных микросхем, что может послужить причиной некоторых проблем. Решение этого вопроса заключается в создании своей собственной RTL-библиотеки функций заказных микросхем, таких как умножители, компараторы, блоки памяти и так далее, которые будут полностью соответствовать своим ПЛИС-анало-гам. К сожалению, такой подход подразумевает реализацию этих элементов в пользовательском устройстве в виде отдельного RTL-кода, вместо того чтобы взять универсальный RTL-код всего устройства и позволить все сделать алгоритму синтеза. Своего рода уравновешивающее действие, как и многие другие, используемые в проектировании. [c.237] Как уже отмечалось в гл. 7, устройство, предназначенное для реализации с помощью ПЛИС, обычно содержит меньшее количество уровней логики (последовательно соединенных логических вентилей) между регистрами, чем при реализации на основе заказной микросхемы. В некоторых случаях целесообразно создать RTL-код устройства, предназначенный для реализации на основе заказной микросхемы и пойти на уменьшение производительности ПЛИС-прототипа. [c.237] Можно также сгенерировать два варианта RTL-кода, один для использования в ПЛИС-прототипе, а другой для конечного устройства на основе ASI . Но, как правило, это решение может стать причиной многих проблем, так как в двух представлениях довольно легко потерять синхронизацию и прийти в итоге к двум совершенно разным результатам. [c.237] В этом случае могут использоваться средства, основанные на чистой версии языка / ++, которые были рассмотрены в гл. 11. Напомню, что идея состоит в том, чтобы не вручную добавлять информацию о реализации в исходный RTL-код (таким образом делая его зависимым от конкретной реализации), а все информацию формировать (синтезировать) с помощью управляемой пользователем / ++ машиной (алгоритмом) синтеза (Рис. 18.2). [c.237] Следующая особенность заключается в том, что современные заказные микросхемы могут содержать невообразимо большое количество зон (доменов) и подзон синхронизации (речь идёт о сотнях таких зон и подзон). В отличие от них, количество зон первичной синхронизации в ПЛИС ограничено (около 10). Это значит, что при использовании одной или нескольких микросхем ПЛИС для создания прототипа заказной микросхемы, надо хорошенько продумать организацию системы синхронизации. [c.238] И в завершении замечу, что существует интересный Европейский патент под номером ЕР0437491 (В1), при чтении которого — о, ужас, какой он нудный — кажется, что возможность использования нескольких программируемых устройств, таких как ПЛИС, для реализации прототипов ASI , сильно преувеличена. В действительности, как я думаю, этот патент, вероятно, описывал применение ПЛИС для создания логического эмулятора, но был сформулирован таким образом, что стал препятствовать использованию нескольких ПЛИС в качестве прототипа заказной микросхемы. [c.238] Вернуться к основной статье