Теоретические основы лабораторной работы

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

Существующие функциональные блоки представляют собой, как правило, блоки интеллектуальной собственности (IP). Эти блоки можно: создать самим на основе ранее разработанных устройств, использовать готовые решения поставщиков ПЛИС или использовать наработки сторонних разработчиков.

Блоки интеллектуальной собственности могут создаваться и распространяться по-разному. Один из вариантов заключается в том, что поставщик IP может создавать их вручную и распространять в виде RTL-описания. В Теоретические основы лабораторной работы этом случае существует несколько способов, с помощью которых конечный пользователь может купить и использовать эти блоки (Рис. 6.25). Как будет показано, поставщик этих блоков также может использовать специальные приложения, генерирующие блоки или ядра интеллектуальной собственности.

В некоторых случаях разработчики устройств на основе ПЛИС могут купить блоки интеллектуальной собственности в виде блоков незашифрованного исходного кода уровня регистровых передач (исходного RTL-кода). Эти блоки впоследствии могут быть интегрированы в RTL-код разрабатываемого устройства (Рис. 6.25, а). Перед тем как продать исходные коды своих блоков IP поставщик IP производит их моделирование, синтез и верификацию.

Рис. 6.25. Варианты приобретения блоков интеллектуальной собственности

Обладание незашифрованной версии RTL-кода какого-то Теоретические основы лабораторной работы блока интеллектуальной собственности имеет одно важное преимущество, такое как возможность его модификации. Можно купить код блока IP у стороннего разработчика, а не у поставщика ПЛИС. В этом случае его можно просто и быстро изменить и приспособить для различных устройств, причем от разных поставщиков. Существенный недостаток этого метода заключается в том, что итоговая реализация устройства обычно менее эффективна с точки зрения потребляемых ресурсов и производительности, чем при использовании оптимизированных версий, представленных на уровне таблиц соединений.

До сих пор не существует методов стандартного промышленного шифрования для RTL-описаний, которые пользовались бы широкой популярностью. Поэтому такие компании, как Altera и Xilinx Теоретические основы лабораторной работы, разработали свои собственные схемы и средства шифрования.

Часто разработчики ПЛИС-устройств покупают средства интеллектуальной собственности в виде таблиц соединений КЛБ/таблиц соответствия, выполненных до этапа размещения и разводки элементов (Рис. 6.25, б). Такие таблицы обычно поставляются в зашифрованном виде в EDIF-формате (electronic data interchange format — формат электронного обмена данными) либо в формате поставщика ПЛИС.

В этом случае поставщик IP может также предоставлять своим пользователям откомпилированные потактные (cycle-accurate) C/C++ модели для функциональной верификации, так как их моделирование будет выполняться намного быстрее, чем это делают их аналоги, выполненные на уровне таблиц соединений КЛБ/таблиц соответствия.



К преимуществам рассмотренного подхода Теоретические основы лабораторной работы можно отнести то, что поставщик блоков интеллектуальной собственности часто выполняет огромное количество настроек средств синтеза, а некоторые блоки функций разрабатывает вручную, чтобы достичь оптимальной реализации с точки зрения использования ресурсов и производительности. К недостаткам этих методов можно отнести отсутствие возможности для разработчиков ПЛИС-устройств убрать из кода неиспользуемые функции. К тому же, такие блоки IP привязаны к устройствам определенного семейства конкретного поставщика ПЛИС.

В некоторых случаях разработчики ПЛИС-устройств могут приобрести блоки интеллектуальной собственности в виде таблиц соединений КЛБ/таблиц соответствия, прошедшие процедуру размещения и разводки (Рис. 6.25, в). Такие таблицы обычно поставляются в зашифрованном виде в EDIF-формате либо в формате Теоретические основы лабораторной работы поставщика ПЛИС.

Блоки, прошедшие процедуру размещения и разводки достигают наивысшего уровня производительности. В некоторых случаях размещение элементов в этих решениях может быть относительным. Другими словами, расположение всех таблиц соответствия, конфигурируемых логических блоков и других элементов, формирующих блок интеллектуальной собственности, является фиксированным только по отношению друг к другу, но сам блок как единое целое может быть расположен внутри ПЛИС в любом доступном месте. В некоторых случаях для блоков IP, например, реализующих функции протоколов связи или шинного обмена со специфическими требованиями к контактам ввода/вывода, может понадобиться абсолютное расположение на поверхности кристалла, которое уже невозможно изменить.

На практике поставщики ПЛИС (и Теоретические основы лабораторной работы иногда поставщики САПР, блоков IP и даже небольшие независимые разработчики) обычно предлагают специальные средства, которые функционируют как генераторы блоков или ядер интеллектуальной собственности. Эти, как правило, параметризируемые приложения позволяет задавать различные параметры генерируемых блоков, например, разрядность шин и функциональных элементов.

Сначала необходимо выбрать из списка нужные блоки (или ядра) и для каждого блока задать все параметры. Для отдельных блоков генератор может позволить выбрать из списка функциональные элементы, которые желательно включить или, напротив, исключить из состава окончательной версии. Например, для коммуникационных блоков можно включить или исключить логические элементы, используемые для проверки ошибок. Для микропроцессорного ядра можно отключить использование Теоретические основы лабораторной работы некоторых команд или режимов адресации. Эти возможности позволят генераторам создавать более эффективные блоки IP с точки зрения потребления ресурсов и производительности.

В зависимости от типа приложения-генератора (или от типа лицензии, которую вы подписали) блоки интеллектуальной собственности могут формироваться в виде зашифрованного или нешифрованного RTL-кода, в виде таблицы соединений, не прошедшей процедуру размещения и разводки или таблицы соединений, прошедшей процедуру размещения и разводки. В некоторых случаях генератор может также создавать потактную модель для средств моделирования (Рис. 6.26).

Рис. 6.26. Генератор блоков IP

Фирма Altera предоставляет набор настраиваемых блоков мегафункций от простых арифметических блоков до таких модулей как сумматоры, счетчики, PLL Теоретические основы лабораторной работы блоки, умножители и модули памяти.

Мегафункция - сложный или высокоуровневый строительный блок, который можно использовать совместно с примитивами вентилей и триггеров в файлах проекта. Эти функции оптимизированы под ПЛИС фирмы Altera. Мегафукции включают в себя библиотеку параметризуемых модулей (LPM), аппаратно-зависимые мегафункции, такие как PLL, LVDS, модули цифровой обработки сигналов (DSP) и IP ядра.

Библиотека параметризуемых функций (LPM) - технологически-независимая библиотека логических функций, параметризуемая для достижения масштабируемости и адаптируемости. Altera реализовала параметризуемые модули (называемые также параметризуемые функции) из LPM в версии 2.1.0, которые предлагают архитектурно-независимый ввод проекта для всех, поддерживаемых Quartus II устройств. Компилятор включает встроенную поддержку компиляции LPM для функций, используемых во Теоретические основы лабораторной работы входных файлах (схемном, AHDL, VHDL, Verilog HDL). Параметризуемая функция – логическая функция, использующая параметры для достижения масштабируемости, адаптируемости и эффективной реализации в кремнии.

Quartus II Web Edition предлагает большое разнообразие мегафункций, включая параметризуемые LPM функции. Добавление мегафукций в проект осуществляется с помощью MegaWizard Plug-In Manager. В нем можно выбрать и установить настройки для требуемой мегафункции. MegaWizard Plug-In Manager автоматически сгенерирует файлы, которые содержат код мегафункций, на языке VHDL или Verilog, файл блока для редактора схем и добавит их в проект. Сгенерированный HDL код оптимизирован под устройства программируемой логики фирмы Altera.


documentbcisewv.html
documentbcismhd.html
documentbcistrl.html
documentbcitbbt.html
documentbcitimb.html
Документ Теоретические основы лабораторной работы