IQmath_fake
IQmath_fake — это тестовый двойник математической библиотеки функций IQmath от TI, который используется для модульного тестирования DSP и других проектов, использующих библиотеку IQmath.
IQmath_fake разработан на основе модульной тестовой среды CppUTest-3.3, но не ограничивается ею. Информацию об использовании CppUTest можно найти на сайте http://cpputest.github.io/.
В начальной версии IQmath_fake есть тестовые двойники для функций _IQNmpy, _IQNdiv, _IQNsin, _IQNcos, _IQNint и _IQNfrac. Тестовые двойники других функций будут добавлены в последующих версиях.
Алгоритм реализации функции _IQNmpy: A*B/(2^N), где используются данные типа double.
Алгоритм функции _IQNdiv: A*(2^N)/B, где также используются данные типа double.
Функция _IQNsin реализуется по алгоритму: sin(A/(2^N))*(2^N) с использованием данных типа double.
Для функции _IQNcos используется аналогичный алгоритм: cos(A/(2^N))*(2^N).
Из-за проблем с точностью при выполнении тригонометрических операций нельзя гарантировать полное соответствие результатов с плавающей точкой. Если требуется точное соответствие, необходимо пересчитывать точность на каждом шаге по значению IQ. В реальных операциях можно настроить ожидаемые значения результатов теста, чтобы обеспечить успешное прохождение теста.
Алгоритм _IQNint: A/(2^N), здесь используются данные типа long.
Алгоритм _IQNfrac: (A/(2^N))*(2^N), также используются данные типа long, при этом сокращение операции невозможно, нужно строго следовать шагам выполнения.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )