Преобразуйте блок MATLAB function в фиксированную точку

Этот пример показывает, как использовать Fixed-Point Tool, чтобы преобразовать модель, содержащую Функциональный блок MATLAB® к фиксированной точке.

Лучшые практики для Работы с блоком MATLAB function в Fixed-Point Tool

  • Не редактируйте вариант фиксированной точки своего алгоритма блока MATLAB function. Используйте представление кода, чтобы отредактировать вариант с плавающей точкой вашего кода MATLAB и повторно предложить и применить типы данных.

  • Для успешного преобразования только используйте построения моделирования, поддержанные приложением Fixed-Point Converter. Для списка поддерживаемых построений моделирования смотрите Функции языка MATLAB, Поддерживавшие для Автоматизированного Преобразования Фиксированной точки.

  • При сборе информации области значений не редактируйте код MATLAB в блоке MATLAB function. Редактирование кода вызовет проблемы, при попытке объединить результаты.

  • Во время процесса преобразования фиксированной точки с помощью Fixed-Point Tool не используйте опцию “Сохранить Как”, чтобы сохранить блок MATLAB function с другим именем. Если вы делаете, вы можете потерять существующие результаты для исходного блока.

Откройте модель

Измените директории на папку, где модель расположена. В командной строке MATLAB, введите:

cd(fullfile(docroot,'toolbox','fixpoint','examples'))

Скопируйте файл ex_symmetric_fir.slx в локальную перезаписываемую папку и откройте модель.

Модель ex_symmetric_fir использует симметричный КИХ-фильтр. Моделируйте модель и осмотрите образцовый вывод. Осмотрите симметричный КИХ-алгоритм фильтра путем двойного клика по блоку MATLAB function.

  1. Чтобы открыть Fixed-Point Tool, из образцового меню, выбирают Analysis> Data Type Design> Fixed-Point Tool.

  2. В разделе Prepare System for Conversion панели инструментов, под System under design, выбирают подсистему symmetric_fir, которая содержит блок MATLAB function как система, чтобы преобразовать.

Соберите информацию области значений

Соберите идеализированные области значений, чтобы использовать для предложения по типу данных.

  1. В разделе Collect Ranges панели инструментов выберите Simulation Ranges как метод набора области значений. Эта кнопка конфигурирует модель, чтобы собраться, области значений с помощью идеализировали типы данных с плавающей точкой.

  2. Нажмите кнопку Collect Ranges, чтобы запустить симуляцию

    Fixed-Point Tool хранит данные моделирования в выполнении, названном Ranges (Double). Исследуйте информацию об области значений переменных MATLAB в электронной таблице.

Предложите типы данных

Сконфигурируйте настройки предложения и предложите типы данных с фиксированной точкой для модели.

  1. В разделе Convert Data Types панели инструментов можно сконфигурировать настройки предложения по типу данных для переменных блока MATLAB function.

    В этом примере используйте настройки предложения по умолчанию.

  2. Нажмите Propose Data Types.

    Предложения по типу данных появляются в столбце ProposedDT электронной таблицы.

    Примечание

    Столбец SpecifiedDT всегда является пробелом для переменных блока MATLAB function.

Осмотрите код Используя представление кода

Чтобы запустить представление кода, нажмите кнопку MATLAB Functions.

Используя представление кода вы можете:

  • Просмотрите подробную переменную и информацию о выражении.

  • Настройте настройки предложения, такие как настройки fimath.

  • Отредактируйте предложенные типы данных.

  • Управляйте функциональными заменами.

    Для примеров, показывающих, как заменить функции MATLAB на интерполяционную таблицу, смотрите Функции Замены в блоке MATLAB function с Интерполяционной таблицей.

  • Отредактируйте свой код.

  • Предложите типы данных с фиксированной точкой.

  • Примените предложенные типы данных к своему коду.

Чтобы просмотреть текущие настройки предложения, нажмите Settings. Здесь можно отредактировать свойства fimath для функции. В данном примере свойства fimath по умолчанию достаточны.

Примените предложенные типы данных

Когда вы закончите исследовать предложенные типы, изменяя настройки предложения, и реализовывая любые функциональные замены, примените предложенные типы данных к модели. Можно применить типы данных или от представления кода, или от Fixed-Point Tool.

В окне представления кода нажмите Apply. Левая панель отображает обоих исходный блок MATLAB function с плавающей точкой, а также недавно сгенерированный блок MATLAB function варианта фиксированной точки.

Щелкните правой кнопкой по узлу блока MATLAB function на левой панели. Выберите Go to Block, чтобы перейти к блоку MATLAB function в модели.

Различная подсистема теперь вместо блока MATLAB function. Различная подсистема содержит и версии и фиксированной точки с плавающей точкой блока MATLAB function. Активной версией автоматически управляет Fixed-Point Tool на основе настроек переопределения типа данных модели. Переопределение Типа данных не в настоящее время активно на модели, таким образом, версия фиксированной точки активна.

Проверка результатов

Возвратитесь к Fixed-Point Tool, чтобы проверить результаты преобразования.

В разделе Verify панели инструментов нажмите кнопку Simulate with Embedded Types, чтобы моделировать модель с помощью недавно прикладных типов данных с фиксированной точкой. Модель моделирует с вариантом фиксированной точки как активный вариант.

Похожие темы