exponenta event banner

Поддержка кодера HDL для отображения библиотеки с плавающей запятой FPGA

В библиотеке блоков HDL Coder™ подмножество блоков Simulink ® поддерживает отображение библиотек с плавающей запятой. Подмножество включает в себя:

  • Блоки, выполняющие основные математические операции, такие как сложение, умножение и сложные тригонометрические синусоидальные и косинусные функции. Эти блоки отображаются на один или несколько IP-блоков с плавающей запятой на целевом устройстве FPGA.

  • Дискретные блоки, блоки, которые выполняют направление сигнала и блоки, которые выполняют математические операции, такие как матричная связь. Эти блоки не обязательно сопоставляют с блоком IP с плавающей запятой на целевом устройстве FPGA.

Поддерживаемые блоки, которые сопоставляются с IP-адресом назначения с плавающей запятой FPGA

В следующей таблице представлены блоки Simulink, которые могут сопоставляться с IP-ядрами FPGA с плавающей запятой.

При сопоставлении с ядрами IP с плавающей запятой некоторые блоки имеют ограничения режима.

Примечание

Некоторые блоки не сопоставляются с ядром IP с плавающей запятой в аппаратных средствах сторонних производителей. Например, блок Abs соответствует целевому IP-ядру Altera ®, но не целевому IP-ядру Xilinx ®.

БлокAltera Megafunction IP (функции ALTFP и ALTERA FP)Xilinx LogiCORE IPЗамечания и ограничения
Брюшной пресс 
Добавить
Уклон
Сравнить с константой
Сравнить с нулем
Преобразование типа данных
  • Преобразования между одиночными и двойными типами данных не поддерживаются.

  • Атрибут режима целочисленного округления в диалоговом окне «Параметры блока» должен иметь значение Nearest.

  • При использовании Altera Megafunction IP для преобразования между типами данных с плавающей и фиксированной точками ширина входных битов должна быть между 16 и 128 биты.

Уменьшение реального мира
Дискретный фильтр FIR
Дискретный перенос Fcn
Интегратор дискретного времени
Разделиться
Точечное произведение 
Выгода
Математическая функция 
  • Задайте для атрибута Function в диалоговом окне Block Parameters значение reciprocal, log или exp.

MinMax
Умножение-сложение
Продукт
  • Блок продукта с более чем двумя входами не поддерживается.

Произведение элементов
  • Для параметра Architecture in HDL Block Properties необходимо установить значение Tree.

Ответный Sqrt 
Реляционный оператор
Sqrt
Вычесть
Сумма
  • Суммарный блок с - порты не поддерживаются.

  • Блок не может иметь более двух входов.

Сумма элементов
  • Для параметра Architecture in HDL Block Properties необходимо установить значение Tree.

Тригонометрическая функция 
  • Для сопоставления библиотек с плавающей запятой поддерживаются только отдельные типы данных.

  • В диалоговом окне «Параметры блока» для параметра «Функция» должно быть установлено значение sin или cos и метод аппроксимации должен иметь значение None.

  • При использовании Altera Quartus 10.1 или 11.0 включите AlteraBackwardIncompatibleSinCosPipeline глобальное свойство с использованием hdlset_param.

Унарный минус

Поддерживаемые блоки, которым не требуется сопоставлять с целевым IP-адресом с плавающей запятой FPGA

Ниже приведены блоки Simulink, которые генерируют код HDL, но не должны сопоставляться с ядром IP с плавающей запятой FPGA.

Ограничения для отображения библиотеки с плавающей запятой FPGA

  • Если вы используете инструмент синтеза Xilinx Vivado ®, вы не можете использовать отображение библиотеки с плавающей запятой FPGA.

  • Сложные типы данных не поддерживаются.

  • Оптимизация потоковой передачи не поддерживается при сопоставлении библиотек с плавающей запятой.

  • Оптимизация совместного использования ресурсов не поддерживается блоками Unary Minus и Abs.

  • Для рабочих процессов ввода-вывода IP Core Generation, FPGA «под ключ» и Simulink Real-Time™ FPGA порты DUT не могут использовать типы данных с плавающей запятой.

Связанные примеры

Подробнее