Intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core
Руководство пользователя IP Core Intel® Cyclone® 10 GX Native фиксированной точки DSP
IP-ядро Intel Cyclone® 10 GX Native Fixed Point DSP создает экземпляр и управляет одним блоком цифровой обработки сигналов переменной точности (DSP) Intel Cyclone 10 GX. IP-ядро Cyclone 10 GX Native Fixed Point DSP доступно только для устройств Intel Cyclone 10 GX.
Cyclone 10 GX Native Fixed Point DSP IP Core Функциональная блок-схема
Сопутствующая информация
Введение в IP-ядра Intel FPGA.
Cyclone 10 GX Native Fixed Point DSP IP Основные характеристики
IP-ядро Cyclone 10 GX Native Fixed Point DSP поддерживает следующие функции:
- Высокопроизводительные, оптимизированные по мощности и полностью зарегистрированные операции умножения
- 18-битная и 27-битная длина слова
- Два умножителя 18 × 19 или один умножитель 27 × 27 на блок DSP
- Встроенные регистры сложения, вычитания и 64-битного двойного регистра накопления для объединения результатов умножения.
- Каскадное 19-битное или 27-битное, когда пре-сумматор отключен, и каскадное 18-битное, когда пре-сумматор используется для формирования линии задержки отвода для приложения фильтрации
- Каскадная 64-битная шина вывода для передачи результатов вывода от одного блока к другому без поддержки внешней логики.
- Жесткий предварительный сумматор поддерживается в 19-битном и 27-битном режимах для симметричных фильтров.
- Внутренний банк регистров коэффициентов в 18-битном и 27-битном режимах для реализации фильтра
- 18-битные и 27-битные систолические фильтры с конечной импульсной характеристикой (КИХ) с распределенным выходным сумматором
Начиная
В этой главе дается общий обзорview из цикла проектирования IP-ядра Intel FPGA, чтобы помочь вам быстро начать работу с IP-ядром Cyclone 10 GX Native Fixed Point DSP. IP-библиотека Intel FPGA устанавливается как часть процесса установки Intel Quartus® Prime. Вы можете выбрать и параметризовать любое IP-ядро Intel FPGA из библиотеки. Intel предоставляет встроенный редактор параметров, который позволяет настраивать IP-ядро Intel FPGA DSP для поддержки широкого спектра приложений. Редактор параметров поможет вам установить значения параметров и выбрать дополнительные порты.
Сопутствующая информация
- Введение в IP-ядра Intel FPGA
Предоставляет общую информацию обо всех IP-ядрах Intel FPGA, включая параметризацию, создание, обновление и моделирование IP-ядер. - Создание независимых от версии сценариев моделирования IP и Platform Designer (стандартный)
Создавайте сценарии моделирования, которые не требуют ручного обновления программного обеспечения или обновлений версии IP. - Лучшие практики управления проектами
Рекомендации по эффективному управлению и переносимости вашего проекта и ИС files.
Настройки IP ядра Cyclone 10 GX Native Fixed Point DSP
Вы можете настроить IP-ядро Cyclone 10 GX Native Fixed Point DSP, указав параметры с помощью редактора параметров в программном обеспечении Intel Quartus Prime.
Вкладка «Режим работы»
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Пожалуйста, выберите режим работы | режим работы | m18×18_full m18×18_sumof2 m18×18_plus36 m18×18_systolic m27×27 | Выберите нужный режим работы. |
Конфигурация множителя | |||
Формат представления для старшего множителя x операнда | подписанный_макс | подписано не подписано | Задайте формат представления для верхнего множителя x операнда. |
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Формат представления для старшего множителя y операнда | подписано_май | подписано не подписано | Задайте формат представления для операнда верхнего множителя y. |
Формат представления нижнего множителя x операнда | подписанный_mbx | подписано не подписано | Задайте формат представления для нижнего множителя x операнда. |
Формат представления нижнего множителя y операнда | подписанный_mby | подписано не подписано | Задайте формат представления для нижнего операнда множителя y.
Всегда выбирайте неподписанный для м18×18_plus36 . |
Включить дополнительный порт | Enable_sub | Нет Да | Выбирать Да чтобы включить
вспомогательный порт. |
Зарегистрируйте вход 'sub' множителя | суб_часы | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для вспомогательного входного регистра. |
Входной каскад | |||
Включить входной каскад для входа «ау» | ay_use_scan_in | Нет Да | Выбирать Да включить модуль входного каскада для любого ввода данных.
Когда вы включаете входной каскадный модуль, IP-ядро Cyclone 10 GX Native Fixed Point DSP использует входные сигналы сканирования в качестве входных вместо любых входных сигналов. |
Включить входной каскад для ввода «по» | by_use_scan_in | Нет Да | Выбирать Да включить модуль входного каскада для ввода данных.
Когда вы включаете входной каскадный модуль, IP-ядро Cyclone 10 GX Native Fixed Point DSP использует в качестве входных сигналов любые входные сигналы, а не входные сигналы. |
Включить регистр задержки данных | Delay_scan_out_ay | Нет Да | Выбирать Да чтобы включить регистр задержки между регистрами ввода и регистрами ввода.
Эта функция не поддерживается в м18×18_plus36 и m27x27 оперативный режим. |
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Включить данные по регистру задержки | Delay_scan_out_by | Нет Да | Выбирать Да для включения регистра задержки между входными регистрами и выходной шиной сканирования.
Эта функция не поддерживается в м18×18_plus36 и m27x27 оперативный режим. |
Включить порт сканирования | gui_scanout_enable | Нет Да | Выбирать Да чтобы включить
выходная шина развертки. |
Ширина выходной шины 'scanout' | scan_out_width | 1–27 | Укажите ширину
выходная шина развертки. |
Данные 'x' Конфигурация | |||
ширина входной шины 'ax' | ax_width | 1–27 | Укажите ширину
топор входная шина.(1) |
Зарегистрируйте ввод «ax» множителя | ax_clock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входного регистра оси.
входной регистр ax недоступен, если вы установили источник операнда 'ax' к коэф. |
ширина входной шины 'bx' | bx_width | 1–18 | Укажите ширину
входная шина bx.(1) |
Зарегистрируйте вход 'bx' множителя | bx_clock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входного регистра bx.
Входной регистр bx недоступен, если вы установили 'bx' источник операнда к коэф. |
Данные 'y' Конфигурация | |||
Ширина шины "ay" или "scanin" | ay_scan_in_width | 1–27 | Укажите ширину входной шины y или scanin.(1) |
Зарегистрируйте ввод «ay» или введите «scanin» множителя | ay_scan_in_clock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входного регистра ay или scanin. |
'по' ширине входной шины | по_ширине | 1–19 | Укажите ширину по входной шине.(1) |
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Зарегистрируйте ввод «by» множителя | по_часам | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для by или scanin
входной регистр.(1) |
Конфигурация вывода "результат" | |||
ширина выходной шины 'resulta' | результат_а_ширина | 1–64 | Укажите ширину
результирующая выходная шина. |
Ширина выходной шины 'resultb' | результат_b_ширина | 1–64 | Укажите ширину результирующей выходной шины. resultb доступен только при использовании режима operation_mode m18×18_полный. |
Использовать выходной регистр | выходные_часы | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для выходных регистров resulta и resultb. |
Вкладка «Предварительный сумматор»
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
источник операнда 'ау' | операнд_источник_май | преаддер ввода | Укажите источник операнда для входа y. Выбирать преаддер чтобы включить модуль предварительного сумматора для верхнего множителя. Настройки для y и по источнику операнда должны быть одинаковыми. |
'by' источник операнда | операнд_источник_mby | преаддер ввода | Укажите источник операнда для by input. Выбирать преаддер включить модуль предварительного сумматора для нижнего множителя. Настройки для y и по источнику операнда должны быть одинаковыми. |
Установите предварительный сумматор для операции вычитания | preadder_subtract_a | Нет Да | Выбирать Да указать операцию вычитания для модуля предварительного сумматора для верхнего множителя. Настройки предварительного сумматора для верхнего и нижнего множителя должны быть одинаковыми. |
Установите операцию предварительного суммирования b на вычитание | preadder_subtract_b | Нет Да | Выбирать Да указать операцию вычитания для модуля предварительного сумматора для нижнего множителя. Настройки предварительного сумматора для верхнего и нижнего множителя должны быть одинаковыми. |
Конфигурация данных 'z' | |||
ширина входной шины 'az' | az_width | 1–26 | Укажите ширину входной шины az.(1) |
Зарегистрируйте ввод 'az' множителя | az_clock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входных регистров az. Настройки часов для регистров ввода ay и az должны быть одинаковыми. |
ширина входной шины 'bz' | bz_width | 1–18 | Укажите ширину входной шины bz.(1) |
Зарегистрируйте вход 'bz' множителя | bz_clock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входных регистров bz. Настройки часов для входных регистров by и bz должны быть одинаковыми. |
Вкладка «Внутренний коэффициент»
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
источник операнда 'ax' | операнд_источник_макс. | вход коэф. | Укажите источник операнда для входной шины оси. Выбирать коэф. чтобы включить модуль внутреннего коэффициента для верхнего множителя.
Выбирать Нет для Зарегистрируйте ввод «ax» множителя параметр, когда вы включаете функцию внутреннего коэффициента. |
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Настройки источника операндов ax и bx должны быть одинаковыми. | |||
'bx' источник операнда | операнд_источник_mbx | вход коэф. | Укажите источник операнда для входной шины bx. Выбирать коэф. чтобы включить модуль внутреннего коэффициента для верхнего множителя.
Выбирать Нет для Зарегистрируйте вход 'bx' множителя параметр, когда вы включаете функцию внутреннего коэффициента. Настройки источника операндов ax и bx должны быть одинаковыми. |
Конфигурация входного регистра 'coefsel' | |||
Зарегистрируйте ввод 'coefsela' множителя | coef_sel_a_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входных регистров coefsela. |
Зарегистрируйте ввод 'coefselb' множителя | coef_sel_b_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входных регистров coefselb. |
Конфигурация хранения коэффициентов | |||
коэф_а_0–7 | коэф_а_0–7 | Целое число | Задайте значения коэффициента для входной шины оси.
Для 18-битного режима работы максимальное входное значение составляет 218–1. Для 27-битного режима максимальное значение составляет 227–1. |
coef_b_0–7 | coef_b_0–7 | Целое число | Задайте значения коэффициента для входной шины bx. |
Вкладка «Аккумулятор/выходной каскад»
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Включить «накопительный» порт | Enable_accumulate | Нет Да | Выбирать Да чтобы включить
порт аккумулятора. |
Включить отрицательный порт | Enable_negate | Нет Да | Выбирать Да чтобы включить
отрицать порт. |
Включить порт loadconst | Enable_loadconst | Нет Да | Выбирать Да чтобы включить
loadconst порт. |
Вход регистра «накопить» аккумулятора | аккумулировать_часы | Нет Часы0 Часы1 Часы2 | Выбирать Clock0 , Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входных регистров накопления. |
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Зарегистрируйте ввод loadconst аккумулятора | load_const_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входных регистров loadconst. |
Зарегистрируйте входной «негат» сумматора | отрицательные_часы | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для инвертирующих входных регистров. |
Включить двойной аккумулятор | Enable_double_accum | Нет Да | Выбирать Да чтобы включить функцию двойного аккумулятора. |
N значение предустановленной константы | load_const_value | 0 – 63 | Укажите предустановленное постоянное значение.
Это значение может быть 2N где N является предустановленным постоянным значением. |
Включить цепной порт | use_chainadder | Нет Да | Выбирать Да для включения выходного каскадного модуля и входной шины chainin.
Функция выходного каскада не поддерживается в m18×18_полный режим работы. |
Включить выходной порт | gui_chainout_enable | Нет Да | Выбирать Да для включения выходной шины chainout. Функция выходного каскада не поддерживается в
m18×18_полный режим работы. |
Вкладка конвейерной обработки
Параметр | Сгенерированный IP-параметр | Ценить | Описание |
Добавьте регистр входного конвейера к сигналу входных данных (x/y/z/coefsel) | input_pipeline_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для конвейерных входных регистров x, y, z, coefsela и coefselb. |
Добавьте регистр входного конвейера к сигналу данных «sub» | sub_pipeline_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входного регистра подконвейера. (2) |
Добавьте регистр входного конвейера к сигналу «накопить» данных | accum_pipeline_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входного регистра конвейера накопления.(2) |
Добавьте регистр входного конвейера к сигналу данных loadconst. | load_const_pipeline_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входного регистра конвейера loadconst.(2) |
Добавьте регистр входного конвейера к сигналу данных «обратить». | negate_pipeline_lock | Нет Часы0 Часы1 Часы2 | Выбирать Clock0, Clock1, или Clock2 чтобы включить и указать входной тактовый сигнал для входного регистра отрицательного конвейера. (2) |
Максимальная длина входных данных в зависимости от режима работы
Вы можете настроить ширину данных для входов x, y и z, как указано в таблице.
Все входные регистры конвейера для сигналов динамического управления должны иметь одинаковую настройку часов.
Режим работы | Максимальная длина входных данных | |||||
ax | ay | az | bx | by | bz | |
Без предварительного сумматора или внутреннего коэффициента | ||||||
m18×18_полный | 18 (подписано)
18 (Без знака) |
19 (подписано)
18 (без подписи) |
Не используется | 18 (подписано)
18 (Без знака) |
19 (подписано)
18 (Без знака) |
Не используется |
m18×18_sumof2 | ||||||
m18×18_систолическое | ||||||
м18×18_plus36 | ||||||
м27×27 | 27 (подписано)
27 (без подписи) |
Не используется | ||||
Только с функцией предварительного добавления | ||||||
m18×18_полный | 18 (подписано)
18 (без подписи) |
|||||
m18×18_sumof2 | ||||||
m18×18_систолическое | ||||||
м27×27 | 27 (подписано)
27 (Без знака) |
26 (подписано)
26 (без подписи) |
Не используется | |||
Только с функцией внутреннего коэффициента | ||||||
m18×18_полный | Не используется | 19 (подписано)
18 (без подписи) |
Не используется | 19 (подписано)
18 (Без знака) |
Не используется | |
m18×18_sumof2 | ||||||
m18×18_систолическое | ||||||
м27×27 | 27 (подписано)
27 (без подписи) |
Не используется |
Функциональное описание
IP-ядро Cyclone 10 GX Native Fixed Point DSP состоит из двух архитектур; Умножение 2 × 18 и умножение 18 × 27. Каждый экземпляр IP-ядра Cyclone 27 GX Native Fixed Point DSP генерирует только 10 из 1 архитектур в зависимости от выбранных режимов работы. Вы можете включить дополнительные модули для своего приложения.
Сопутствующая информация
Блоки DSP переменной точности в главе «Устройства Intel Cyclone 10 GX», справочнике Intel Cyclone 10 GX Core Fabric и ввода-вывода общего назначения.
Рабочие режимы
IP-ядро Cyclone 10 GX Native Fixed Point DSP поддерживает 5 режимов работы:
- Полный режим 18 × 18
- Режим суммы 18 18 × 2
- Режим 18 × 18 Plus 36
- Систолический режим 18 × 18
- Режим 27 × 27
Полный режим 18 × 18
При настройке на полный режим 18 × 18 IP-ядро Cyclone 10 GX Native Fixed Point DSP работает как два независимых ядра 18 (со знаком/без знака) × 19 (со знаком) или 18.
(со знаком/без знака) × 18 (без знака) множителей с 37-битным выходом. В этом режиме применяются следующие уравнения:
- результат = топор * ау
- результатb = bx * по
Полнорежимная архитектура 18 × 18
Режим суммы 18 18 × 2
В режиме 18 × 18 Sum of 2 IP-ядро Cyclone 10 GX Native Fixed Point DSP включает верхний и нижний множители и генерирует результат путем сложения или вычитания двух множителей. Сигнал субдинамического управления управляет сумматором для выполнения операций сложения или вычитания. В результате выходная ширина IP-ядра Cyclone 2 GX Native Fixed Point DSP может поддерживать до 10 бит при включении накопителя/выходного каскада. Этот режим применяет уравнение результата = [±(ax * ay) + (bx * by)].
Архитектура 18 × 18 Sum of 2 Mode
Режим 18 × 18 Plus 36
При настройке режима 18 × 18 Plus 36 IP-ядро Cyclone 10 GX Native Fixed Point DSP включает только верхний множитель. Этот режим применяет уравнение результата = (ах * ау) + конкатенация (bx [17:0], by [17:0]).
Архитектура 18 × 18 плюс 36 режимов
Вы должны установить формат представления для нижних множителей y операнда без знака при использовании этого режима. Когда входная шина в этом режиме менее 36-битной, вам необходимо предоставить необходимое расширение со знаком, чтобы заполнить 36-битный ввод.
Использование менее чем 36-битного операнда в режиме 18 × 18 Plus 36
Этот бывшийampВ этом файле показано, как настроить IP-ядро Cyclone 10 GX Native Fixed Point DSP для использования режима работы 18 × 18 Plus 36 с 12-битными входными данными со знаком 101010101010 (двоичные) вместо 36-битного операнда.
- Установите формат представления для нижнего множителя x операнд: со знаком.
- Установите формат представления для нижнего операнда множителя y: без знака.
- Установите ширину входной шины 'bx' на 18.
- Установите ширину входной шины 'by' на 18.
- Подайте данные «111111111111111111» на входную шину bx.
- Предоставьте данные «111111101010101010» по входной шине.
Систолический режим 18 × 18
В систолических режимах работы 18 × 18 IP-ядро Cyclone 10 GX Native Fixed Point DSP включает верхний и нижний множители, входной систолический регистр для верхнего множителя и цепной систолический регистр для цепочки во входных сигналах. Когда вы включаете выходной каскад, этот режим поддерживает результирующую ширину вывода 44 бита. Когда вы включаете функцию аккумулятора без выходного каскада, вы можете настроить результирующую ширину вывода на 64 бита.
Архитектура систолического режима 18 × 18
Режим 27 × 27
При настройке режимов 27 × 27 IP-ядро Cyclone 10 GX Native Fixed Point DSP позволяет использовать множитель 27 (со знаком/без знака) × 27 (со знаком/без знака). Выходная шина может поддерживать до 64 бит с включенным накопителем/выходным каскадом. В этом режиме применяется уравнение результата a = ax * ay.
Архитектура режима 27 × 27
Дополнительные модули
Дополнительные модули, доступные в IP-ядре Cyclone 10 GX Native Fixed Point DSP:
- Входной каскад
- Пре-аддеры
- Внутренний коэффициент
- Аккумулятор и выходной каскад
- Конвейерные регистры
Входной каскад
Функция входного каскада поддерживается по ау и по входной шине. Если для параметра Включить входной каскад для входа «ау» установлено значение «Да», IP-ядро Cyclone 10 GX Native Fixed Point DSP будет принимать входные сигналы от входных сигналов сканирования, а не от входной шины. Если для параметра Включить входной каскад для входа «по» задано значение Да, IP-ядро Cyclone 10 GX Native Fixed Point DSP будет получать входные данные с любой входной шины, а не с входной шины.
Рекомендуется включать входные регистры для ay и/или by всякий раз, когда входной каскад включен для корректности приложения.
Вы можете включить регистры задержки, чтобы соответствовать требованию задержки между регистром ввода и регистром вывода. В ядре есть 2 регистра задержки. Верхний регистр задержки используется для входных портов или входных портов сканирования, а нижний регистр задержки используется для выходных портов сканирования. Эти регистры задержки поддерживаются в полном режиме 18 × 18, сумме 18 режимов 18 × 2 и систолическом режиме 18 × 18.
Предварительный сумматор
Пре-сумматор может быть настроен в следующих конфигурациях:
- Два независимых 18-битных (со знаком/без знака) предварительных сумматора.
- Один 26-битный предварительный сумматор.
Когда вы включаете предварительный сумматор в режимах умножения 18 × 18, ay и az используются в качестве входной шины для верхнего предварительного сумматора, а by и bz используются в качестве входной шины для нижнего предварительного сумматора. Когда вы включаете предварительный сумматор в режиме умножения 27 × 27, ay и az используются в качестве входной шины для предварительного сумматора. Предварительный сумматор поддерживает операции сложения и вычитания. Когда оба предварительных сумматора используются в одном блоке DSP, они должны использовать один и тот же тип операции (либо сложение, либо вычитание).
Внутренний коэффициент
Внутренний коэффициент может поддерживать до восьми постоянных коэффициентов для множимых в 18-битном и 27-битном режимах. Когда вы активируете функцию внутреннего коэффициента, будут сгенерированы две входные шины для управления выбором мультиплексора коэффициентов. Входная шина coefsela используется для выбора предопределенных коэффициентов для верхнего множителя, а входная шина советника используется для выбора предопределенных коэффициентов для нижнего множителя.
Внутреннее хранилище коэффициентов не поддерживает динамически управляемые значения коэффициентов, и для выполнения такой операции требуется внешнее хранилище коэффициентов.
Аккумулятор и выходной каскад
Аккумуляторный модуль можно включить для выполнения следующих операций:
- Операция сложения или вычитания
- Смещенная операция округления с использованием постоянного значения 2N
- Двухканальное накопление
Чтобы динамически выполнять операцию сложения или вычитания аккумулятора, управляйте отрицательным входным сигналом. Для операции округления со смещением можно указать и загрузить предустановленную константу 2N до того, как модуль накопителя будет включен, указав целое число в значении параметра N предустановленной константы. Целое число N должно быть меньше 64. Вы можете динамически включать или отключать использование предустановленной константы, управляя сигналом loadconst. Вы можете использовать эту операцию как активное мультиплексирование круглого значения в тракт обратной связи накопителя. Загруженная стоимость и накопленное использование сигнала являются взаимоисключающими.
Вы можете включить регистр двойного аккумулятора, используя параметр Включить двойной аккумулятор для выполнения двойного накопления. Модуль-аккумулятор может поддерживать объединение нескольких блоков DSP для операций сложения или вычитания, включив входной порт цепочки и выходной порт цепочки. В систолическом режиме 18 × 18 будут использоваться только 44-битная шина ввода цепочки и шина вывода цепочки. Однако все 64-битные цепочки на входной шине должны быть подключены к выходной шине цепочки из предыдущего блока DSP.
Регистр конвейера
IP-ядро Cyclone 10 GX Native Fixed Point DSP поддерживает один уровень конвейерного регистра. Конвейерный регистр поддерживает до трех источников синхронизации и один асинхронный сигнал очистки для сброса конвейерных регистров. Существует пять конвейерных регистров:
- регистр конвейера шины ввода данных
- вспомогательный регистр конвейера сигналов динамического управления
- инвертировать регистр конвейера сигналов динамического управления
- накапливать регистр конвейера динамических управляющих сигналов
- регистр конвейера динамического управления loadconst
Вы можете активировать регистры конвейера шины ввода данных и регистры конвейера сигналов динамического управления независимо. Однако все включенные конвейерные регистры должны использовать один и тот же источник синхронизации.
Схема синхронизации
Входные, конвейерные и выходные регистры IP-ядра Cyclone 10 GX Native Fixed Point DSP поддерживают три источника/разрешения синхронизации и два асинхронных сброса. Все входные регистры используют aclr[0], а все конвейерные и выходные регистры используют aclr[1]. Каждый тип регистра может выбрать один из трех источников синхронизации и сигналов включения синхронизации. Когда вы настраиваете IP-ядро Cyclone 10 GX Native Fixed Point DSP на систолический режим работы 18 × 18, программное обеспечение Intel Quartus Prime устанавливает для входного систолического регистра и источника тактовой частоты цепного систолического регистра тот же источник тактовой частоты, что и для выходного регистра.
Когда вы включаете функцию двойного аккумулятора, программное обеспечение Intel Quartus Prime устанавливает источник тактовой частоты регистра двойного аккумулятора на тот же источник тактовой частоты, что и выходной регистр.
Ограничения схемы синхронизации
На этой вкладке показаны ограничения, которые необходимо применить для всех схем синхронизации регистров.
Состояние | Ограничение |
Когда пре-сумматор включен | Источник синхронизации для входных регистров ay и az должен быть одинаковым. |
Источник синхронизации для входных регистров by и bz должен быть одним и тем же. | |
Когда конвейерные регистры включены | Источник синхронизации для всех конвейерных регистров должен быть одинаковым. |
Когда любой из входных регистров для сигналов динамического управления | Источник тактового сигнала для входных регистров для подпрограммы, аккумулирования, загрузки-константы и инвертирования должен быть одним и тем же. |
Сигналы IP Core Cyclone 10 GX с фиксированной точкой и цифровой обработкой сигналов
На следующем рисунке показаны входные и выходные сигналы IP-ядра Cyclone 10 GX Native Fixed Point DSP.
Сигналы IP Core Cyclone 10 GX с фиксированной точкой и цифровой обработкой сигналов
Сигналы ввода данных
Имя сигнала | Тип | Ширина | Описание |
топор [] | Вход | 27 | Входная шина данных к верхнему множителю. |
да [] | Вход | 27 | Входная шина данных к верхнему множителю.
Когда предварительный сумматор включен, эти сигналы служат входными сигналами для верхнего предварительного сумматора. |
аз [] | Вход | 26 | Эти сигналы являются входными сигналами для верхнего предварительного сумматора.
Эти сигналы доступны только при включенном предварительном сумматоре. Эти сигналы недоступны в м18×18_plus36 оперативный режим. |
бх[] | Вход | 18 | Входная шина данных к нижнему множителю.
Эти сигналы недоступны в м27×27 оперативный режим. |
от[] | Вход | 19 | Входная шина данных к нижнему множителю.
Когда предварительный сумматор включен, эти сигналы служат входными сигналами для нижнего предварительного сумматора. Эти сигналы недоступны в м27×27 оперативный режим. |
бз[] | Вход | 18 | Эти сигналы являются входными сигналами нижнего предварительного сумматора. Эти сигналы доступны только при включенном предварительном сумматоре. Эти сигналы недоступны в м27×27 и м18×18_plus36 режимы работы. |
Выходные сигналы данных
Имя сигнала | Тип | Ширина | Описание |
результат[] | Выход | 64 | Выходная шина данных от верхнего умножителя.
Эти сигналы поддерживают до 37 бит для m18×18_полный оперативный режим. |
результатb[] | Выход | 37 | Выходная шина данных от нижнего умножителя.
Эти сигналы доступны только в m18×18_полный оперативный режим. |
Часы, включить и очистить сигналы
Имя сигнала | Тип | Ширина | Описание |
клик [] | Вход | 3 | Входные тактовые сигналы для всех регистров.
Эти тактовые сигналы доступны только в том случае, если какой-либо из входных регистров, конвейерных регистров или выходного регистра установлен на Clock0, Clock1, или Clock2. • клик[0] = Clock0 • клик[1] = Clock1 • клик[2] = Clock2 |
эна [] | Вход | 3 | Часы включаются для clk[2:0]. Этот сигнал активен-высокий.
• en[0] для Clock0 • en[1] для Clock1 • en[2] для Clock2 |
аклр[] | Вход | 2 | Асинхронные четкие входные сигналы для всех регистров. Этот сигнал активен-высокий.
Использовать аклр[0] для всех входных регистров и использования аклр[1] для всех конвейерных регистров и выходного регистра. По умолчанию этот сигнал отключен. |
Динамические управляющие сигналы
Имя сигнала | Тип | Ширина | Описание |
суб | Вход | 1 | Входной сигнал для добавления или вычитания выхода верхнего множителя с выходом нижнего множителя.
• Снимите этот сигнал, чтобы указать операцию сложения. • Установите этот сигнал, чтобы задать операцию вычитания. По умолчанию этот сигнал отключен. Вы можете активировать или деактивировать этот сигнал во время выполнения.(3) |
отрицать | Вход | 1 | Входной сигнал для добавления или вычитания суммы верхних и нижних множителей с данными из сигналов цепочки.
• Снимите этот сигнал, чтобы указать операцию сложения. • Установите этот сигнал, чтобы задать операцию вычитания. По умолчанию этот сигнал отключен. Вы можете активировать или деактивировать этот сигнал во время выполнения.(3) |
накапливать | Вход | 1 | Входной сигнал для включения или отключения функции аккумулятора.
• Деактивируйте этот сигнал, чтобы отключить функцию аккумулятора. • Подтвердите этот сигнал, чтобы включить функцию аккумулятора. По умолчанию этот сигнал отключен. Вы можете активировать или деактивировать этот сигнал во время выполнения.(3) |
loadconst | Вход | 1 | Входной сигнал для включения или отключения функции постоянной нагрузки.
• Деактивируйте этот сигнал, чтобы отключить функцию постоянной нагрузки. • Подтвердите этот сигнал, чтобы активировать функцию постоянной нагрузки. По умолчанию этот сигнал отключен. Вы можете активировать или деактивировать этот сигнал во время выполнения.(3) |
Внутренние коэффициенты сигналов
Имя сигнала | Тип | Ширина | Описание |
коэфсела[] | Вход | 3 | Входные сигналы выбора для 8 значений коэффициента, определенных пользователем для верхнего множителя. Значения коэффициентов хранятся во внутренней памяти и задаются параметрами коэф_а_0 к коэф_а_7.
• coefsela[2:0] = 000 относится к коэф_а_0 • coefsela[2:0] = 001 относится к коэф_а_1 • coelsela[2:0] = 010 относится к коэф_а_2 • … и так далее. Эти сигналы доступны только при включенной функции внутреннего коэффициента. |
коэфселб[] | Вход | 3 | Входные сигналы выбора для 8 значений коэффициента, определенных пользователем для нижнего множителя. Значения коэффициентов хранятся во внутренней памяти и задаются параметрами coef_b_0 к coef_b_7.
• coefselb[2:0] = 000 относится к coef_b_0 • coefselb[2:0] = 001 относится к coef_b_1 • coelselb[2:0] = 010 относится к coef_b_2 • … и так далее. Эти сигналы доступны только при включенной функции внутреннего коэффициента. |
Входные каскадные сигналы
Имя сигнала | Тип | Ширина | Описание |
сканирование[] | Вход | 27 | Входная шина данных для модуля входного каскада.
Соедините эти сигналы с сигналами сканирования от предыдущего ядра DSP. |
сканирование[] | Выход | 27 | Выходная шина данных модуля входного каскада.
Соедините эти сигналы с сигналами сканирования следующего ядра DSP. |
Выходные каскадные сигналы
Имя сигнала | Тип | Ширина | Описание |
цепочка[] | Вход | 64 | Входная шина данных модуля выходного каскада.
Соедините эти сигналы с сигналами цепочки от предыдущего ядра DSP. |
цепочка [] | Выход | 64 | Выходная шина данных модуля выходного каскада.
Соедините эти сигналы с сигналами цепочки следующего ядра DSP. |
Документ История изменений для Cyclone 10 GX Native Fixed Point DSP IP Core User Guide
Дата | Версия | Изменения |
Ноябрь 2017 г. | 2017.11.06 | Первоначальный выпуск. |
Корпорация Интел. Все права защищены. Intel, логотип Intel и другие товарные знаки Intel являются товарными знаками корпорации Intel или ее дочерних компаний. Корпорация Intel гарантирует производительность своих FPGA и полупроводниковых продуктов в соответствии с текущими спецификациями в соответствии со стандартной гарантией Intel, но оставляет за собой право вносить изменения в любые продукты и услуги в любое время без предварительного уведомления. Intel не принимает на себя никакой ответственности или обязательств, возникающих в связи с применением или использованием какой-либо информации, продуктов или услуг, описанных в настоящем документе, за исключением случаев, когда это прямо согласовано с корпорацией Intel в письменной форме. Клиентам Intel рекомендуется получить последнюю версию спецификаций устройств, прежде чем полагаться на какую-либо опубликованную информацию и размещать заказы на продукты или услуги.
Другие названия и бренды могут быть заявлены как собственность других лиц.
Документы/Ресурсы
![]() |
Intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core [pdf] Руководство пользователя UG-20094 Cyclone 10 GX Native Fixed Point IP Core DSP, UG-20094, Cyclone 10 GX Native Fixed Point IP Core DSP, Native Fixed Point IP Core DSP, Fixed Point IP Core DSP, DSP IP Core |