В этом примере показано, как заменить функцию, которая используется в Функциональном блоке MATLAB® с более эффективным внедрением. Следующая модель содержит блок MATLAB function, который вычисляет синус входа. Используйте Представление кода, чтобы заменить встроенный sin
функция с интерполяционной таблицей.
Измените директории в папку, где модель расположена. В командной строке MATLAB, введите:
cd(fullfile(docroot,'toolbox','fixpoint','examples'))
Скопируйте и сохраните ex_mySin.slx
файл к локальной перезаписываемой папке и открытый модель.
function y = my_sin(u) %#codegen y = sin(u);
Чтобы открыть Fixed-Point Tool, во вкладке Apps, расширяют галерею Apps и выбирают Fixed-Point Tool
В Fixed-Point Tool, под System Under Design (SUD), выбирают модель ex_mySin
как система, чтобы преобразовать.
Под Range Collection Mode выберите Simulation ranges как метод набора области значений. Это конфигурирует модель, чтобы собраться, области значений с помощью идеализировали типы данных с плавающей точкой.
В разделе Prepare System панели инструментов нажмите Prepare.
Нажмите кнопку Collect Ranges, чтобы запустить симуляцию
Fixed-Point Tool хранит данные моделирования в запуске, названном Ranges(Double)
. Исследуйте информацию об области значений переменных MATLAB в электронной таблице.
Чтобы запустить представление кода, в разделе Convert Data Types панели инструментов, нажимают MATLAB Functions.
Выберите вкладку Function Replacements.
Введите имя функции, которое вы хотите заменить. В данном примере введите sin
. Выберите Lookup Table
, и затем щелкните.
Процесс преобразования фиксированной точки выводит области значений для функции и затем использует интерполированную интерполяционную таблицу, чтобы заменить функцию. По умолчанию интерполяционная таблица использует линейную интерполяцию, 1 000 точек и минимальные и максимальные значения, обнаруженные путем выполнения тестового файла.
Нажмите Propose, чтобы получить предложения по типу данных по переменным.
Нажмите Apply, чтобы применить предложения по типу данных и сгенерировать интерполяционную таблицу фиксированной точки.
Если поведение сгенерированной фиксированной точки не совпадает с поведением оригинального кода достаточно тесно, изменяет метод интерполяции или число точек, используемое в интерполяционной таблице, и затем регенерирует фиксированную точку.
Возвратитесь к Fixed-Point Tool. В разделе Verify панели инструментов нажмите кнопку Simulate with Embedded Types, чтобы симулировать модель с помощью недавно прикладных типов данных с фиксированной точкой. Модель симулирует с вариантом фиксированной точки как активный вариант.