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

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

  2. Запишите тестовый файл, который вызывает ваш исходный алгоритм MATLAB, чтобы подтвердить поведение вашего алгоритма.

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

  3. Подготовьте алгоритм к инструментированию.

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

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

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

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

  7. Отдельные типы данных из алгоритма.

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

  8. Подтвердите измененную функцию.

    1. Составьте таблицу фиксированных точек на основе предложенных типов данных.

    2. Создайте MEX-функцию.

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

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

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

  10. Опционально, если имеют лицензию MATLAB Coder™, генерируют код.

    Запустите путем тестирования нативных C-типов.

  11. Выполните итерации, алгоритм мелодии.

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