exponenta event banner

Рабочий процесс преобразования с фиксированной точкой вручную

  1. Реализуйте свой алгоритм в MATLAB ®.

  2. Напишите тестовый файл, вызывающий исходный алгоритм MATLAB для проверки поведения алгоритма.

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

  3. Подготовить алгоритм для КИПиА.

  4. Запишите функцию точки входа.

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

  5. Создайте инструментальный MEX для исходного алгоритма MATLAB.

  6. Запустите исходный алгоритм MATLAB для регистрации данных min/max. Просмотрите эти данные в отчете по инструментированию.

  7. Типы данных отделяются от алгоритма.

    Преобразование функций для использования таблиц типов и обновления функции точки входа.

  8. Проверка измененной функции.

    1. Создание таблицы типов с фиксированной точкой на основе предлагаемых типов данных.

    2. Функция построения MEX.

    3. Запустите и сравните поведение функции MEX с базовой линией.

  9. Используйте предлагаемые типы данных с фиксированной точкой.

    Создание таблицы типов с фиксированной точкой на основе предлагаемых типов данных, построение mex, выполнение, а затем сравнение с базовой структурой.

  10. При наличии лицензии MATLAB Coder™ создайте код.

    Начните с тестирования собственных C-типов.

  11. Итерация, алгоритм настройки.

    Например, настройте алгоритм, чтобы избежать переполнения или устранить смещение.