Интерполяционная таблица n-D

Аппроксимируйте N-мерную функцию (HDL Coder)

Описание

n-D блок Lookup Table доступен с Simulink®.

Для получения информации о поведении симуляции и параметрах блоков, см. n-D Интерполяционную таблицу.

Архитектура HDL

Этот блок имеет одну, архитектуру HDL по умолчанию.

Свойства блока HDL

ConstrainedOutputPipeline

Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. Значение по умолчанию 0. См. также ConstrainedOutputPipeline.

InputPipeline

Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также InputPipeline.

OutputPipeline

Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также OutputPipeline.

Поддержка комплексных данных

Этот блок поддерживает генерацию кода для комплексных сигналов.

Ограничения

MAX 10 настроек устройства

Если вы используете устройство Intel® MAX 10, чтобы сопоставить интерполяционную таблицу с RAM, добавьте эту команду Tcl при создании проекта в инструменте Куарта:

set_global_assignment -name INTERNAL_FLASH_UPDATE_MODE "SINGLE IMAGE WITH ERAM"

Необходимые настройки блока

Блокируйте установкуПоддержка HDL Coder™
Number of table dimensionsЗадайте до максимальной размерности 2.
Breakpoints specificationВыберите Explicit values или Even spacing.
Index search methodВыберите Evenly spaced points.
Extrapolation methodВыберите Clip. Генератор кода не поддерживает экстраполяцию вне даже границ.
Interpolation methodВыберите Flat или Linear point-slope.
Diagnostic for out-of-range inputВыберите Error. Если вы задаете другие опции, HDL Coder генерирует предупреждение.
Use last table value for inputs at or above last breakpointУстановите этот флажок.
Require all inputs to have the same data typeУстановите этот флажок.
FractionВыберите Inherit: Inherit via internal rule.
Integer rounding modeВыберите Zero, Floor или Simplest.

Избегайте генерации оператора деления

Если HDL Coder сталкивается с условиями, при которых операция деления требуется, чтобы совпадать с поведением симуляции модели, предупреждение выведено. Условия описали причину этот блок, чтобы испустить оператор деления. Когда вы используете этот блок для генерации HDL-кода, избегаете следующих условий:

  • Если блок сконфигурирован, чтобы использовать интерполяцию, оператор деления требуется. Чтобы избежать этого требования, установите Interpolation method : к Flat.

  • Неравномерный табличный интервал. Генерация HDL-кода требует, чтобы блок использовал "Равномерно Расположенные с интервалами Точки" алгоритм. Отображение блока от типа входных данных до основанного на нуле табличного индекса в целом требует деления. Когда интервал точки останова является точной степенью 2, это деление реализовано как сдвиг вместо как деление. Чтобы настроить интервал точки останова, настройте количество точек останова в таблице или различие между левыми и правыми границами области значений точки останова.

Табличный ввод данных и калибровка

  • Это - хорошая практика, чтобы структурировать вашу таблицу, таким образом, что интервал между точками останова является степенью двойки. Если интервал точки останова не удовлетворяет этому условию, HDL Coder выдает предупреждение. Когда интервал точки останова является степенью двойки, можно заменить операции деления на шаге перед поиском с операциями сдвига вправо.

  • Табличные данные должны решить к типу данных нес плавающей точкой.

  • Все порты на блоке требуют скалярных значений.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация HDL-кода
Сгенерируйте Verilog и код VHDL для FPGA и проекты ASIC с помощью HDL Coder™.

Введенный в R2014a