ник. 22-розрядне значення поділяється на 18-розрядне знакового значення і 4-розрядне значення без знака від LSBs. Сформовано дві частини продукту: перша-20-розрядна знакова, яка є результатом множення 16-розрядного знакового значення на 4-розрядну беззнакову частину. Друга - 34-розрядна знакова, сформована при множенні 16-розрядного знакового значення на 18-розрядну знакову частину. Процес складання відновлює навантаження вироби (програм) (необхідно звернути увагу на найменші значущі біти першого обходу складання продукту) і формує кінцевий 38-розрядний продукт. Так як перший продукт знаковий, то 20-розрядне значення має бути розширене перед складанням. Суматор безпосередньо повинен бути 34 бітний, що вимагає 17 частин (slices). br/>В
Малюнок 3.6 - Імплементація 22x16 розрядного помножувача
Імплементація може змінюватися в залежності від вимог специфікації і доступних ресурсів. p align="justify"> Другий помножувач може бути імплементований у ресурс MULT18X18 або в CLBS, якщо він маленький.
Для поліпшення роботи можна додати конвеєрну обробку, використовуючи вбудовані можливості спеціалізованого помножувача. Якщо розрядність обох вводів більше ніж 18 бітів, тоді формуються чотири проміжні частини, але беззнаковий результат молодших бітів просто може бути пов'язаний з 36-розрядним знаковим результатом старших бітів (MSBS) і доданий до інших двох результатами. p align="justify"> Примітив Spartan-3E/3A/3AN MULT18X18SIO має два додаткових порти BCIN і BCOUT для каскадування або поділу входу B помножувача серед декількох блоків множника.
-розрядний каскадний вхідний порт BCIN пропонує додатковий ресурс входу з більш типового введення B. Атрибут B_INPUT визначає, чи використовувати при імплементування шлях від BCIN або від входу B. Встановлюючи B_INPUT в DIRECT, вибирається введення B. Встановлюючи B_INPUT в CASCADE, вибирається альтернативний вхід BCIN. При необхідності регістр BREG тоді довільно зберігає вбрання вхідний значеніе.является 18-розрядним портом виведення, який завжди відображає значення подане на другий вхід помножувача. Цим значенням може бути введення B, каскадне значення від введення BCIN, або висновок BREG, якщо він підключений. Малюнок 3.7 ілюструє чотири можливих конфігурації, які використовують різні параметри налаштування для атрибута B_INPUT і атрибуту BREG.
В
Малюнок 3.7 - Чотири конфігурації входу B
Порти BCIN і BCOUT мають спеціалізовані маршрути, що зв'язують суміжні помножувачі в межах одного стовпчика. Завдяки каскадної зв'язку порт BCOUT одного блоку помножувача управляє портом BCIN блоку помножувача безпосередньо вище даного. Немає зв'язку з портом BCIN самого нижнього блоку помножувача в стовпці або з'єднання від порту BCOUT самого верхнього блоку у стовпці. p align="justify"...