VHDL - XILINX CORDIC Алгоритм
Мне нужно рассчитать арктан в VHDL. Для этого я собираюсь использовать Cilinx IP Core "Cordic V4.0". Это таблица данных:
https://www.xilinx.com/support/documentation/ip_documentation/cordic_ds249.pdf
Я читал, что для вычисления арктана нужны входные значения от -1 до 1.
Мои значения имеют диапазон 2^32 бит (целое число, без дроби).
Нужно ли конвертировать мои входные значения, прежде чем вводить их в Cordic-Algorithm?
Если да, как они должны быть преобразованы?
С уважением, Эрик
1 ответ
В спецификации Xilinx написано:
"Входной вектор (Xin, Yin) и выходной вектор (Xout, Yout) выражаются в виде пары чисел дополнения с фиксированной точкой 2 с целочисленной шириной 2 бита (формат 1QN). Угол поворота входа, Радиусы выводов также выражаются как число дополнения с фиксированной точкой 2, но с целочисленной шириной 3 бита (формат 2QN)."
Так что если вы используете вектор шириной 32 бита, то 2 старших разряда будут использоваться как целочисленная часть, а остальные 30 - как десятичная часть.
Если вы не знаете, как работают числа с фиксированной точкой, я советую вам немного прочитать об этом: