Сопоставление с библиотекой с плавающей запятой позволяет синтезировать конструкцию с плавающей запятой без необходимости преобразования с плавающей запятой в фиксированную. Исключение шага преобразования с плавающей запятой в фиксированную уменьшает потерю точности данных и позволяет моделировать более широкий динамический диапазон.
Библиотека с плавающей запятой FPGA - это набор IP-блоков с плавающей запятой, оптимизированных для синтеза на определенном целевом оборудовании. Примерами таких библиотек являются Altera ® Megafunctions и Xilinx ® LogiCORE IP.
В библиотеке блоков HDL Coder™ подмножество блоков Simulink ® поддерживает отображение библиотек с плавающей запятой. См. раздел Поддержка кодера HDL для отображения библиотеки с плавающей запятой FPGA.
Чтобы сопоставить конструкцию с плавающей запятой с библиотекой Altera или Xilinx FPGA, выполните следующие действия.
Задайте параметры целевого устройства для инструмента синтеза Altera или Xilinx FPGA с помощью hdlset_param. Например, чтобы задать инструмент синтеза как Altera Quartus II и семейство чипов как Arria10:
hdlset_param(model,'SynthesisToolChipFamily','Arria10', ... 'SynthesisToolDeviceName','10AS066H2F34E1SG', ... 'SynthesisToolPackageName','', ... 'SynthesisToolSpeedValue','')
Чтобы настроить путь к исполняемому файлу средства синтеза, используйте hdlsetuptoolpath. Например, чтобы задать путь к Altera Quartus II инструмент синтеза:
hdlsetuptoolpath('ToolName','Altera Quartus II','ToolPath',... 'C:\altera\14.0\quartus\bin\quartus.exe');
См. раздел Настройка траектории инструмента синтеза.
Настройте библиотеки моделирования Altera или Xilinx FPGA с плавающей запятой. См. раздел Настройка библиотеки моделирования FPGA.
Модель Simulink можно сопоставить с целевыми библиотеками с плавающей запятой в диалоговом окне Параметры конфигурации (Configuration Parameters) или в командной строке.
Чтобы сопоставить с библиотекой с плавающей запятой FPGA, выполните следующие действия.
На вкладке Приложения выберите Кодер HDL. Появится вкладка Код HDL (HDL Code). Щелкните Настройки (Settings).
На панели «Создание кода HDL» > «Цель с плавающей запятой» выберите IP-библиотеку с плавающей запятой.

Для Xilinx LogiCORE ® IP выберите в качестве библиотеки XILINX LOGICORE. Для Altera megafunction IP в качестве библиотеки можно выбрать ALTERA MEGAFUNCTION (ALTFP) или ALTERA MEGAFUNCTION (ALTERA FP FUNCTIONS).
Если в качестве библиотеки выбрать ALTERA MEGAFUNCTION (ALTERA FP FUNCTIONS), станет доступна опция Initialize IP Pipelines to Zero. Выберите параметр Initialize IP Pipelines to Zero для инициализации регистров трубопроводов в IP to Zero. На панели Target and Optimizations введите целевую частоту, с которой должен сопоставляться IP-адрес с плавающей запятой.
Примечание
При отображении в ALTERA FP FUNCTIONS целевой язык должен быть установлен в VHDL.
При выборе ALTERA FP FUNCTIONS появится таблица IP-конфигурации. С помощью таблицы типов данных можно настроить IP-параметры целевой библиотеки с плавающей запятой. Дополнительные сведения см. в разделе Настройка задержки IP с целевой частотой.
При выборе библиотеки XILINX LOGICORE или ALTERA MEGAFUNCTION (ALTFP) выберите стратегию и цель задержки для IP.
При выборе этих библиотек появляется таблица Конфигурация IP (IP Configuration). Используя таблицу типов данных, можно настроить задержку целевого IP-адреса с плавающей запятой. Дополнительные сведения см. в разделе Настройка стратегии задержки IP-адресов.
Чтобы совместно использовать IP-ресурсы с плавающей запятой, на вкладке Создание кода HDL > Цель и оптимизация > Совместное использование ресурсов убедитесь, что IP-адреса с плавающей запятой включены. Количество IP-блоков с плавающей запятой, которые становятся общими, зависит от SharingFactor, указанного в подсистеме.
Нажмите кнопку «Применить». На панели инструментов Simulink щелкните «Создать код HDL».
Для создания кода HDL из командной строки можно использовать hdlcoder.createFloatingPointTargetConfig для создания IP-конфигурации с плавающей запятой.
С помощью hdlcoder.createFloatingPointTargetConfig функция, создайте hdlcoder.FloatingPointTargetConfig для библиотеки с плавающей запятой. Затем используйте hdlset_param для сохранения конфигурации в модели.
Например, чтобы создать целевую конфигурацию с плавающей запятой для ALTERA FP FUNCTIONS с настройками по умолчанию:
fpconfig = hdlcoder.createFloatingPointTargetConfig('ALTERAFPFUNCTIONS');
hdlset_param('sfir_single', 'FloatingPointTargetConfiguration', fpconfig);Параметры IP можно настроить на основе указанной библиотеки с плавающей запятой. Дополнительные сведения см. в разделе Настройка IP-конфигурации с плавающей запятой.
Использовать makehdl для генерации кода HDL из подсистемы.
Чтобы просмотреть отчеты о создании кода сопоставления библиотек с плавающей запятой, перед началом создания кода включите создание отчета об использовании ресурсов и отчета об оптимизации. Сведения о создании этих отчетов см. в разделе Создание и использование отчетов о создании кода.
Чтобы увидеть целевой блок с плавающей запятой, на который сопоставлена конструкция, задержку и количество аппаратных ресурсов для конкретного объекта, в разделе Отчет о создании кода выберите Отчет для конкретного объекта.

В разделе «Отчет о создании кода» отчета «Отчет об оптимизации» отображается состояние параметров оптимизации, применяемых к модели. Отчет показывает, успешно ли создан целевой код с плавающей запятой кодером HDL.

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

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

Дважды щелкните блок добавления ALT. Длина блока задержки - это задержка целевого IP с плавающей запятой.

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

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