Оптимизация Постоянного Умножителя

Что такое Постоянная Оптимизация Умножителя?

Опция Constant multiplier optimization позволяет вам задать использование оптимизации canonical signed digit (CSD) или factored CSD (FCSD) для операций умножения коэффициентов обработки.

В следующей таблице показаны Constant multiplier optimization значения.

Значение оптимизации константы умножителяОписание
None (по умолчанию)

По умолчанию HDL- Coder™ не выполняет оптимизацию CSD или FCSD. Код, сгенерированный для блока Gain, сохраняет операции умножения.

CSD

Когда вы задаете эту опцию, сгенерированный код уменьшает площадь, используемую моделью, поддерживая или увеличивая тактовую частоту, используя методы канонической цифры со знаком (CSD). CSD заменяет операции умножения на операции сложения и вычитания.

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

FCSD

Эта опция использует факторизованные методы CSD (FCSD), которые заменяют операции умножения на сдвиг и складывают/вычитают операции для определенных факторов операндов. Эти факторы обычно являются простыми, но могут также быть числом, близким к степени 2, что способствует сокращению площади.

Эта опция позволяет вам достичь большего сокращения площади, чем CSD, за счет снижения тактовой частоты.

Auto

Когда вы задаете эту опцию, HDL Coder выбирает между оптимизацией CSD или FCSD. Кодер выбирает оптимизацию, которая приводит к наиболее эффективной по площади реализации, основываясь на количестве требуемых сумматоров.

HDL Coder не использует множители, если только условия не таковы, что оптимизация CSD или FCSD невозможны (для примера, если в проекте используется арифметика с плавающей точкой).

Задайте оптимизацию константы множителя

Чтобы задать постоянную оптимизацию умножителя:

  1. В HDL Workflow Advisor выберите HDL Code Generation задачу и вкладку Optimizations.

  2. Для Constant multiplier optimization выберите CSD, FCSD или Auto.