intel-логотип

intel UG-20094 Cyclone 10 GX Native Fixed Point DSP IP Core

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-PRODUCT

Посібник користувача Intel® Cyclone® 10 GX Native Fixed Point DSP IP Core

IP-ядро Intel Cyclone® 10 GX Native Fixed Point DSP створює екземпляр і контролює один блок Intel Cyclone 10 GX Variable Precision Digital Signal Processing (DSP). IP-ядро Cyclone 10 GX Native Fixed Point DSP доступне лише для пристроїв Intel Cyclone 10 GX.

Cyclone 10 GX Native Fixed Point DSP IP Core Функціональна блок-схемаintel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (1)

Пов'язана інформація
Вступ до Intel FPGA IP Cores.

Cyclone 10 GX Native Fixed Point DSP IP Core Features

Cyclone 10 GX Native Fixed Point DSP IP-ядро підтримує такі функції:

  • Високопродуктивні, оптимізовані за потужністю та повністю зареєстровані операції множення
  • Довжина слів 18 і 27 біт
  • Два помножувачі 18 × 19 або один помножувач 27 × 27 на блок DSP
  • Вбудований регістр додавання, віднімання та 64-розрядний подвійний регістр накопичення для об’єднання результатів множення
  • Каскадний 19-розрядний або 27-розрядний, коли попередній суматор вимкнено, і каскадний 18-розрядний, коли попередній суматор використовується для формування лінії затримки відведення для програми фільтрації
  • Каскадна 64-розрядна вихідна шина для передачі результатів виведення від одного блоку до наступного без підтримки зовнішньої логіки
  • Жорсткий попередній суматор підтримується в 19-бітних і 27-бітних режимах для симетричних фільтрів
  • Внутрішній банк регістрів коефіцієнтів як у 18-бітному, так і в 27-бітному режимах для реалізації фільтра
  • 18- і 27-бітні фільтри систолічної кінцевої імпульсної характеристики (FIR) з розподіленим вихідним суматором

Початок роботи

У цій главі подано загальні відомостіview потоку проектування ядра Intel FPGA IP, щоб допомогти вам швидко розпочати роботу з ядром Cyclone 10 GX Native Fixed Point DSP IP. IP-бібліотека Intel FPGA встановлюється як частина процесу встановлення Intel Quartus® Prime. Ви можете вибрати та параметризувати будь-яке IP-ядро Intel FPGA з бібліотеки. Intel надає інтегрований редактор параметрів, який дозволяє налаштувати IP-ядро Intel FPGA DSP для підтримки широкого спектру програм. Редактор параметрів проведе вас через встановлення значень параметрів і вибір додаткових портів.

Пов'язана інформація

  • Вступ до Intel FPGA IP Cores
    Надає загальну інформацію про всі IP-ядра Intel FPGA, включаючи параметризацію, генерацію, оновлення та імітацію IP-ядер.
  • Створення незалежних від версії сценаріїв симуляції IP та дизайнера платформ (стандартних).
    Створюйте сценарії моделювання, які не вимагають ручного оновлення програмного забезпечення або версії IP.
  • Найкращі практики управління проектами
    Рекомендації щодо ефективного управління та переносимості вашого проекту та IP files.
Cyclone 10 GX Native Fixed Point DSP IP Core Parameter Parameters

Ви можете налаштувати 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 signed_may підписаний непідписаний Вкажіть формат представлення для верхнього операнда множника y.
Формат представлення нижнього операнда множника x signed_mbx підписаний непідписаний Укажіть формат представлення нижнього операнда множника x.
Формат представлення нижнього операнда множника y signed_mby підписаний непідписаний Вкажіть формат представлення нижнього операнда множника y.

Завжди вибирайте без підпису для m18×18_plus36 .

Увімкнути допоміжний порт enable_sub немає так Виберіть так щоб увімкнути

підпорт.

Зареєструвати вхід 'sub' множника sub_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для додаткового вхідного регістру.
Вхідний каскад
Увімкнути вхідний каскад для введення "ay". ay_use_scan_in немає так Виберіть так щоб увімкнути каскадний модуль введення для будь-якого введення даних.

Коли ви ввімкнете модуль вхідного каскаду, Cyclone 10 GX Native Fixed Point DSP IP-ядро використовує вхідні сигнали scanin як вхідні сигнали замість вхідних сигналів ay.

Увімкнути каскад введення для введення "від". by_use_scan_in немає так Виберіть так щоб увімкнути каскадний модуль введення для введення даних.

Коли ви вмикаєте каскадний вхідний модуль, Cyclone 10 GX Native Fixed Point DSP IP-ядро використовує вхідні сигнали ay як вхідні сигнали замість вхідних сигналів.

Увімкнути регістр затримки даних delay_scan_out_ay немає так Виберіть так щоб увімкнути регістр затримки між вхідними регістрами a та by.

Ця функція не підтримується в m18×18_plus36 і m27x27 режим роботи.

Параметр IP-генерований параметр Значення опис
Увімкнути дані за регістром затримки delay_scan_out_by немає так Виберіть так щоб увімкнути регістр затримки між вхідними регістрами та вихідною шиною сканування.

Ця функція не підтримується в m18×18_plus36 і m27x27 режим роботи.

Увімкнути сканування порту gui_scanout_enable немає так Виберіть так щоб увімкнути

вихідна шина сканування.

Ширина вихідної шини 'scanout' scan_out_width 1–27 Вкажіть ширину

вихідна шина сканування.

Конфігурація даних 'x'
Ширина вхідної шини 'ax' ширина_сокира 1–27 Вкажіть ширину

вхідна шина ax.(1)

Зареєструвати вхід 'ax' множника ax_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідного регістру ax.

вхідний регістр ax недоступний, якщо ви встановили джерело операнда 'ax' до 'coef'.

Ширина вхідної шини 'bx' bx_width 1–18 Вкажіть ширину

вхідна шина bx.(1)

Зареєструвати вхід 'bx' множника bx_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідного регістру bx.

Регістр введення bx недоступний, якщо ви встановили джерело операнда 'bx' до 'coef'.

Конфігурація даних 'y'
'ay' або 'scanin' ширина шини ay_scan_in_width 1–27 Укажіть ширину вхідної шини ay або scanin.(1)
Зареєструйте вхід «ay» або введіть «scanin» множника ay_scan_in_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідного регістру ay або scanin.
ширина вхідної шини 'by' по_ширині 1–19 Вкажіть ширину вхідної шини.(1)
Параметр IP-генерований параметр Значення опис
Зареєструвати введення 'по' множника by_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для by або scanin

вхідний регістр.(1)

Конфігурація результату
Ширина вихідної шини 'resulta' результат_а_ширина 1–64 Вкажіть ширину

результуюча вихідна шина.

Ширина вихідної шини 'resultb' результат_b_ширина 1–64 Вкажіть ширину вихідної шини resultb. resultb доступний лише при використанні operation_mode m18×18_повний.
Використовуйте вихідний регістр вихідний годинник немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вихідних регістрів resulta та resultb.

Вкладка попереднього суматора

Параметр IP-генерований параметр Значення опис
джерело операнда 'ay' operand_source_may вхідний попередник Укажіть джерело операнда для будь-якого входу. Виберіть попередній пристрій щоб увімкнути модуль попереднього суматора для верхнього множника. Параметри для a та за джерелом операнда мають бути однаковими.
джерело операнда "за". операнд_джерело_mby вхідний попередник Укажіть джерело операнда для введення. Виберіть попередній пристрій щоб увімкнути модуль попереднього суматора для нижнього множника. Параметри для a та за джерелом операнда мають бути однаковими.
Установіть операцію попереднього додавання на віднімання preadder_subtract_a немає так Виберіть так щоб указати операцію віднімання для модуля попереднього суматора для верхнього множника. Налаштування попереднього суматора для верхнього та нижнього множника мають бути однаковими.
Установити операцію попереднього суматора b на віднімання preadder_subtract_b немає так Виберіть так щоб указати операцію віднімання для модуля попереднього суматора для нижнього множника. Налаштування попереднього суматора для верхнього та нижнього множника мають бути однаковими.
Конфігурація даних 'z'
Ширина вхідної шини 'az' az_width 1–26 Вкажіть ширину вхідної шини az.(1)
Зареєструвати вхід 'az' множника az_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідних регістрів az. Налаштування годинника для вхідних регістрів ay і az повинні бути однаковими.
ширина вхідної шини 'bz' bz_width 1–18 Вкажіть ширину вхідної шини bz.(1)
Зареєструвати вхід 'bz' множника bz_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідних регістрів bz. Налаштування годинника для вхідних регістрів by і bz мають бути однаковими.

Внутрішній коефіцієнт Tab

Параметр IP-генерований параметр Значення опис
джерело операнда 'ax' operand_source_max введення коеф Вкажіть джерело операнда для вхідної шини axe. Виберіть коеф щоб увімкнути модуль внутрішнього коефіцієнта для верхнього множника.

Виберіть немає для Зареєструвати вхід 'ax' множника під час увімкнення функції внутрішнього коефіцієнта.

Параметр IP-генерований параметр Значення опис
      Параметри джерела операндів ax і bx мають бути однаковими.
джерело операнда 'bx' operand_source_mbx введення коеф Вкажіть джерело операнда для вхідної шини bx. Виберіть коеф щоб увімкнути модуль внутрішнього коефіцієнта для верхнього множника.

Виберіть немає для Зареєструвати вхід 'bx' множника під час увімкнення функції внутрішнього коефіцієнта.

Параметри джерела операндів ax і bx мають бути однаковими.

'coefsel' Конфігурація вхідного регістру
Зареєструвати вхід 'coefsela' множника coef_sel_a_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідних регістрів coefsela.
Зареєструвати вхід 'coefselb' множника coef_sel_b_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідних регістрів coefselb.
Конфігурація зберігання коефіцієнтів
coef_a_0–7 coef_a_0–7 Ціле число Вкажіть значення коефіцієнтів для вхідної шини ax.

Для 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 Виберіть Годинник0 , Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для накопичувальних вхідних регістрів.
Параметр IP-генерований параметр Значення опис
Зареєструвати вхід 'loadconst' акумулятора load_const_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідних регістрів loadconst.
Регістровий вхід «негатив» суматора заперечувати_годинник немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для негативних вхідних регістрів.
Увімкнути подвійний накопичувач enable_double_accum немає так Виберіть так щоб увімкнути функцію подвійного накопичувача.
N значення попередньо встановленої константи load_const_value 0 – 63 Вкажіть попередньо встановлене постійне значення.

Це значення може бути 2N де N є заданим постійним значенням.

Увімкнути порт Chainin use_chainadder немає так Виберіть так щоб увімкнути вихідний каскадний модуль і мережну вхідну шину.

Функція вихідного каскаду не підтримується в m18×18_повний режим роботи.

Увімкнути порт зчеплення gui_chainout_enable немає так Виберіть так щоб увімкнути вихідну шину зчеплення. Функція вихідного каскаду не підтримується в

m18×18_повний режим роботи.

Вкладка конвеєрної обробки

Параметр IP-генерований параметр Значення опис
Додайте регістр вхідного конвеєра до вхідного сигналу даних (x/y/z/коефіцієнт) input_pipeline_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідних регістрів конвеєра x, y, z, coefsela та coefselb.
Додайте регістр вхідного конвеєра до «допоміжного» сигналу даних sub_pipeline_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідного регістру підконвеєра. (2)
Додайте вхідний регістр конвеєра до сигналу накопичення даних accum_pipeline_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для накопичувального вхідного регістру конвеєра.(2)
Додайте вхідний конвеєрний регістр до сигналу даних loadconst load_const_pipeline_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідного регістра конвеєра loadconst.(2)
Додайте регістр вхідного конвеєра до сигналу даних "заперечення". negative_pipeline_clock немає Годинник0 Годинник1 Годинник2 Виберіть Годинник0, Годинник1, або Годинник2 щоб увімкнути та вказати вхідний тактовий сигнал для вхідного регістру негативного конвеєра.(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_систолічний
m18×18_plus36
m27×27 27 (підпис)

27 (без підпису)

Не використовується
Тільки з функцією попереднього додавання
m18×18_повний 18 (підпис)

18 (без підпису)

m18×18_sumof2
m18×18_систолічний
m27×27 27 (підпис)

27

(без підпису)

26 (підпис)

26 (без підпису)

Не використовується
Лише з функцією внутрішнього коефіцієнта
m18×18_повний Не використовується 19 (підпис)

18 (без підпису)

Не використовується 19 (підпис)

18

(без підпису)

Не використовується
m18×18_sumof2
m18×18_систолічний
m27×27 27 (підпис)

27 (без підпису)

Не використовується

Функціональний опис

IP-ядро Cyclone 10 GX Native Fixed Point DSP складається з 2 архітектур; множення 18 × 18 і множення 27 × 27. Кожен екземпляр Cyclone 10 GX Native Fixed Point DSP IP-ядра генерує лише 1 із 2 архітектур залежно від вибраних режимів роботи. Ви можете включити додаткові модулі до своєї програми.

Пов'язана інформація
Блоки DSP зі змінною точністю в розділі «Пристрої Intel Cyclone 10 GX», Intel Cyclone 10 GX Core Fabric і посібнику з вводу-виводу загального призначення.

Режими роботи

Cyclone 10 GX Native Fixed Point DSP IP-ядро підтримує 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-бітним виводом. У цьому режимі застосовуються такі рівняння:

  • resulta = ax * ay
  • результатb = bx * by

Архітектура повного режиму 18 × 18

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (2)

18 × 18 Сума режиму 2
У сумі 18 режимів 18 × 2 IP-ядро Cyclone 10 GX Native Fixed Point DSP активує верхній і нижній множники та генерує результат додавання або віднімання між 2 множниками. Субдинамічний керуючий сигнал керує суматором для виконання операцій додавання або віднімання. Результуюча вихідна ширина IP-ядра Cyclone 10 GX Native Fixed Point DSP може підтримувати до 64 бітів, якщо ви ввімкнете каскад акумулятор/вихід. Цей режим застосовує рівняння resulta =[±(ax * ay) + (bx * by)].

Сума архітектури 18 режимів 18 × 2

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (3)

Режим 18 × 18 Plus 36
У конфігурації режиму 18 × 18 Plus 36 IP-ядро Cyclone 10 GX Native Fixed Point DSP включає лише верхній множник. Цей режим застосовує рівняння resulta = (ax * ay) + concatenate(bx[17:0],by[17:0]).

Архітектура 18 × 18 Plus 36 Mode

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (4)

Під час використання цього режиму ви повинні встановити формат подання для нижнього операнда множників y без знаку. Якщо в цьому режимі вхідна шина менша за 36 біт, ви повинні надати необхідне розширення зі знаком, щоб заповнити 36-бітний вхід.

Використання менш ніж 36-бітного операнда в режимі 18 × 18 Plus 36
Цей колишнійampУ файлі показано, як налаштувати IP-ядро Cyclone 10 GX Native Fixed Point DSP для використання робочого режиму 18 × 18 Plus 36 із 12-бітними вхідними даними зі знаком 101010101010 (двійковий) замість 36-бітного операнда.

  1. Встановіть формат подання для нижнього операнда множника x: зі знаком.
  2. Встановіть формат подання для нижнього операнда множника y: без знаку.
  3. Встановіть ширину вхідної шини «bx» на 18.
  4. Встановіть ширину вхідної шини «by» на 18.
  5. Надайте дані "111111111111111111" до вхідної шини bx.
  6. Надайте дані "111111101010101010" за допомогою вхідної шини.

Систолічний режим 18 × 18
У систолічних робочих режимах 18 × 18 IP-ядро Cyclone 10 GX Native Fixed Point DSP підтримує верхній і нижній множники, вхідний систолічний регістр для верхнього множника та ланцюговий систолічний регістр для ланцюжка вхідних сигналів. Коли ви вмикаєте вихідний каскад, цей режим підтримує вихідний результат шириною 44 біти. Коли ви ввімкнете функцію накопичувача без каскаду виведення, ви можете налаштувати ширину вихідного результату на 64 біти.

Архітектура систолічного режиму 18 × 18

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (4)

Режим 27 × 27
При конфігурації режимів 27 × 27 IP-ядро Cyclone 10 GX Native Fixed Point DSP забезпечує множник 27 (зі знаком/без знаку) × 27 (зі знаком/без знаку). Вихідна шина може підтримувати до 64 бітів із увімкненим накопичувачем/каскадом виводу. Цей режим застосовує рівняння resulta = ax * ay.

Архітектура режиму 27 × 27

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (6)

Додаткові модулі

Додаткові модулі, доступні в Cyclone 10 GX Native Fixed Point DSP IP Core:

  • Вхідний каскад
  • Попередні суматори
  • Внутрішній коефіцієнт
  • Акумулятор і вихідний каскад
  • Конвеєрні регістри

Вхідний каскад
Функція вхідного каскаду підтримується на ay та вхідній шині. Якщо ви встановлюєте для Enable input cascade for 'ay' input значення Yes, Cyclone 10 GX Native Fixed Point DSP IP-ядро отримуватиме вхідні дані від вхідних сигналів сканування замість вхідної шини ay. Якщо ви встановлюєте для Enable input cascade for 'by' input значення Yes, Cyclone 10 GX Native Fixed Point DSP IP-ядро прийматиме вхідні дані з a вхідної шини замість вхідної шини.

Рекомендується ввімкнути вхідні регістри для ay та/або by кожного разу, коли ввімкнено каскад введення для коректності програми.

Ви можете ввімкнути регістри затримки, щоб відповідати вимогам затримки між вхідним і вихідним регістрами. В ядрі є 2 регістра затримки. Верхній регістр затримки використовується для вхідних портів ay або сканування, тоді як нижній регістр затримки використовується для вихідних портів сканування. Ці регістри затримки підтримуються в повному режимі 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.

Реєстр трубопроводів

Cyclone 10 GX Native Fixed Point DSP IP-ядро підтримує єдиний рівень регістра конвеєра. Регістр конвеєра підтримує до трьох джерел синхронізації та один асинхронний сигнал очищення для скидання регістрів конвеєра. Є п'ять конвеєрних регістрів:

  • Регістр конвеєра шини введення даних
  • допоміжний регістр конвеєрного сигналу керування
  • заперечувати регістр конвеєрного сигналу динамічного керування
  • накопичувати динамічний регістр конвеєрного сигналу керування
  • регістр конвеєра динамічного керування loadconst

Ви можете ввімкнути кожен регістр конвеєра шини введення даних і регістри конвеєра динамічного керуючого сигналу незалежно. Однак усі ввімкнені регістри конвеєра повинні використовувати одне джерело синхронізації.

Схема синхронізації

Вхідні, конвеєрні та вихідні регістри в ядрі Cyclone 10 GX Native Fixed Point DSP IP підтримують три джерела синхронізації/включення та два асинхронних очищення. Усі вхідні регістри використовують aclr[0], а всі конвеєрні та вихідні регістри використовують aclr[1]. Кожен тип регістру може вибрати один із трьох джерел синхронізації та сигналів увімкнення годинника. Коли ви налаштовуєте IP-ядро Cyclone 10 GX Native Fixed Point DSP на систолічний режим роботи 18 × 18, програмне забезпечення Intel Quartus Prime встановить джерело тактового сигналу вхідного систолічного регістра та ланцюгового систолічного регістра на те саме джерело тактової частоти, що й внутрішній вихідний регістр.

Коли ви ввімкнете функцію подвійного накопичувача, програмне забезпечення Intel Quartus Prime встановить джерело тактового сигналу регістру подвійного накопичувача на те саме джерело тактової частоти, що й внутрішній регістр виведення.

Обмеження тактової схеми
Ця вкладка показує обмеження, які ви повинні застосувати для всіх схем тактування регістру.

Хвороба обмеження
Коли ввімкнено попередній додавач Джерело синхронізації для вхідних регістрів ay і az має бути однаковим.
  Джерело синхронізації для вхідних регістрів by і bz має бути однаковим.
Коли регістри конвеєра ввімкнено Джерело синхронізації для всіх регістрів конвеєра має бути однаковим.
При будь-якому з вхідних регістрів для динамічних керуючих сигналів Джерело тактової частоти для вхідних регістрів для sub, collect, loadconst і negativ має бути однаковим.
Cyclone 10 GX Нативні IP-сигнали DSP з фіксованою точкою

На наступному малюнку показано вхідні та вихідні сигнали Cyclone 10 GX Native Fixed Point DSP IP-ядра.

Cyclone 10 GX Нативні IP-сигнали DSP з фіксованою точкою

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-FIG- (7)

Вхідні сигнали даних
Назва сигналу Тип Ширина опис
сокира[] Введення 27 Вхідна шина даних до верхнього множника.
ага[] Введення 27 Вхідна шина даних до верхнього множника.

Коли попередній суматор увімкнено, ці сигнали подаються як вхідні сигнали для верхнього попереднього суматора.

az[] Введення 26 Ці сигнали є вхідними сигналами для верхнього попереднього суматора.

Ці сигнали доступні, лише якщо ввімкнено попередній додавач. Ці сигнали недоступні в m18×18_plus36

режим роботи.

bx[] Введення 18 Вхідна шина даних до нижнього множника.

Ці сигнали недоступні в m27×27 режим роботи.

від [] Введення 19 Вхідна шина даних до нижнього множника.

Коли попередній суматор увімкнено, ці сигнали служать вхідними сигналами для нижнього попереднього суматора.

Ці сигнали недоступні в m27×27 режим роботи.

bz[] Введення 18 Ці сигнали є вхідними сигналами нижнього попереднього суматора. Ці сигнали доступні, лише якщо ввімкнено попередній додавач. Ці сигнали недоступні в m27×27 і m18×18_plus36 режими роботи.
Вихідні сигнали даних
Назва сигналу Тип Ширина Розшифровка
результат [] Вихід 64 Вихідна шина даних з верхнього помножувача.

Ці сигнали підтримують до 37 біт m18×18_повний режим роботи.

результатb[] Вихід 37 Вихідна шина даних від нижнього помножувача.

Ці сигнали доступні лише в m18×18_повний режим роботи.

Годинник, увімкнення та очищення сигналів

Назва сигналу Тип Ширина опис
clk[] Введення 3 Вхідні тактові сигнали для всіх регістрів.

Ці тактові сигнали доступні, лише якщо будь-який із вхідних регістрів, конвеєрних регістрів або вихідних регістрів встановлено на Годинник0, Годинник1, або Годинник2.

• clk[0] = Годинник0

• clk[1] = Годинник1

• clk[2] = Годинник2

ena[] Введення 3 Увімкнення годинника для clk[2:0]. Цей сигнал активний-високий.

• ena[0] для Годинник0

• ena[1] для Годинник1

• ena[2] для Годинник2

aclr[] Введення 2 Асинхронні чисті вхідні сигнали для всіх регістрів. Цей сигнал активний-високий.

використання aclr[0] для всіх вхідних регістрів і використання aclr[1] для всіх конвеєрних регістрів і вихідного регістра.

За замовчуванням цей сигнал скасовано.

Сигнали динамічного керування

Назва сигналу Тип Ширина опис
суб Введення 1 Вхідний сигнал для додавання або віднімання вихідного сигналу верхнього множника з вихідним сигналом нижнього множника.

• Скасуйте цей сигнал, щоб визначити операцію додавання.

• Подайте цей сигнал, щоб вказати операцію віднімання.

За замовчуванням цей сигнал скасовано. Ви можете підтвердити або скасувати цей сигнал під час виконання.(3)

заперечувати Введення 1 Вхідний сигнал для додавання або віднімання суми верхнього та нижнього множників із даними з ланцюжкових сигналів.

• Скасуйте цей сигнал, щоб визначити операцію додавання.

• Подайте цей сигнал, щоб вказати операцію віднімання.

За замовчуванням цей сигнал скасовано. Ви можете підтвердити або скасувати цей сигнал під час виконання.(3)

накопичувати Введення 1 Вхідний сигнал для ввімкнення або вимкнення функції акумулятора.

• Скасуйте цей сигнал, щоб вимкнути функцію акумулятора.

• Подайте цей сигнал, щоб увімкнути функцію накопичувача.

За замовчуванням цей сигнал скасовано. Ви можете підтвердити або скасувати цей сигнал під час виконання.(3)

loadconst Введення 1 Вхідний сигнал для ввімкнення або вимкнення функції постійного навантаження.

• Скасуйте цей сигнал, щоб вимкнути функцію постійного навантаження.

• Подайте цей сигнал, щоб увімкнути функцію постійного навантаження.

За замовчуванням цей сигнал скасовано. Ви можете підтвердити або скасувати цей сигнал під час виконання.(3)

Сигнали внутрішнього коефіцієнта

Назва сигналу Тип Ширина опис
coefsela[] Введення 3 Вхідні сигнали вибору для 8 значень коефіцієнта, визначених користувачем для верхнього множника. Значення коефіцієнтів зберігаються у внутрішній пам'яті і задаються параметрами coef_a_0 до coef_a_7.

• coefsela[2:0] = 000 стосується coef_a_0

• coefsela[2:0] = 001 стосується coef_a_1

• coelsela[2:0] = 010 стосується coef_a_2

• … і так далі.

Ці сигнали доступні лише тоді, коли ввімкнено функцію внутрішнього коефіцієнта.

coefselb[] Введення 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 Вихідна шина даних модуля вихідного каскаду.

З’єднайте ці сигнали з сигналами chainin наступного ядра DSP.

Історія версій документів для Cyclone 10 GX Native Fixed Point DSP IP Core Посібник користувача

Дата Версія Зміни
Листопад 2017 року 2017.11.06 Початковий випуск.

Корпорація Intel. Всі права захищені. 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 DSP IP Core, UG-20094, Cyclone 10 GX Native Fixed Point DSP IP Core, Native Fixed Point DSP IP Core, Fixed Point DSP IP Core, DSP IP Core

Список літератури

Залиште коментар

Ваша електронна адреса не буде опублікована. Обов'язкові поля позначені *