Функциональная интерполяционная таблица является методом, которым можно аппроксимировать функцию с помощью таблицы с конечным числом точек (X, Y). Значения X интерполяционной таблицы называются точками останова. Вы аппроксимируете значение идеальной функции в точке путем интерполяции между двумя точками останова, самыми близкими к точке. Поскольку поиск по таблице и простые оценки могут быть быстрее, чем оценки математической функции, с помощью блоков интерполяционной таблицы часто приводят к усилениям скорости при симуляции модели.
Оптимизировать интерполяционные таблицы в вашей модели:
Ограничьте неровные интерполяционные таблицы.
Неравномерно распределенные точки останова требуют, чтобы алгоритм общего назначения, такой как двоичный поиск определил, где вход находится относительно точек останова. Это дополнительное вычисление увеличивает ROM и время выполнения.
Препятствуйте тому, чтобы равномерно распределенные интерполяционные таблицы были обработаны, как неравномерно расположено с интервалами.
Поиск положения в равномерно расположенных с интервалами интерполяционных таблицах намного быстрее. Кроме того, интерполяция требует простого деления.
Иногда, когда интерполяционная таблица преобразована в фиксированную точку, ошибка квантования заканчивается. Интерполяционная таблица, которая равномерно расположена с интервалами в с плавающей точкой, могла быть неравномерно расположена с интервалами в сгенерированной фиксированной точке. Используйте функцию fixpt_evenspace_cleanup
, чтобы преобразовать данные в равномерно расположенную с интервалами интерполяционную таблицу снова.
Используйте распределенные точки останова степени двойки в интерполяционных таблицах.
В распределенных интерполяционных таблицах степени двойки немного сдвига заменяет поиск положения, и немного маски заменяет интерполяцию, делающую это построение самое эффективное независимо от вашего выходного языка и оборудования.
Следующая таблица обобщает эффекты интервала точки останова интерполяционной таблицы.
Параметр | Даже степень 2 расположенных с интервалами данных | Равномерно распределенные данные | Неравномерно распределенные данные |
---|---|---|---|
Скорость выполнения | Скорость выполнения является самой быстрой. Поиск положения и интерполяция эквивалентны для равномерно распределенных данных. Однако, чтобы увеличить скорость больше, немного сдвига заменяет поиск положения, и немного маски заменяет интерполяцию. | Скорость выполнения быстрее, чем это для неравномерно распределенных данных, потому что поиск положения быстрее, и интерполяция требует простого деления. | Скорость выполнения является самой медленной из различных интервалов, потому что поиск положения медленнее, и интерполяция требует большего количества операций. |
Ошибка | Ошибка может быть больше, чем это для неравномерно распределенных данных, потому что приближение функции с неоднородным искривлением требует, чтобы больше точек достигло той же точности. | Ошибка может быть больше, чем это для неравномерно распределенных данных, потому что приближение функции с неоднородным искривлением требует, чтобы больше точек достигло той же точности. | Ошибка может быть меньшей, потому что приближение функции с неоднородным искривлением требует, чтобы меньше точек достигло той же точности. |
Использование ROM | Использование меньше команды ROM, но больше данных ROM. | Использование меньше команды ROM, но больше данных ROM. | Использование больше команды ROM, но меньше данных ROM. |
Использование оперативной памяти | Не значительный. | Не значительный. | Не значительный. |
Использование Model Advisor Идентифицирует Сомнительную проверку Операций Фиксированной точки, чтобы идентифицировать блоки интерполяционной таблицы, где существует потенциал для улучшений эффективности.