реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> умножение с накоплением за один такт (MAC), как работает?
tocha
сообщение Oct 1 2008, 16:48
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 92
Регистрация: 16-05-05
Из: Kiev
Пользователь №: 5 080



Цитата(Михаил_K @ Oct 1 2008, 17:34) *
[font=Fixedsys]library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity primer is
...



Вы обещали:
a = a+b*c,
а описали:
Ai = Ai-1 + Bi*Ci,
то есть конвеер, который даст осмысленный результат минимум после второго такта.

Я так понял, вопрос был: как реализовать a = a+b*c за один такт. Может был неправ.
Go to the top of the page
 
+Quote Post
Михаил_K
сообщение Oct 2 2008, 05:44
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 552
Регистрация: 29-02-08
Пользователь №: 35 481



Цитата(tocha @ Oct 1 2008, 20:48) *
Вы обещали:
a = a+b*c,
а описали:
Ai = Ai-1 + Bi*Ci,
то есть конвеер, который даст осмысленный результат минимум после второго такта.

Я так понял, вопрос был: как реализовать a = a+b*c за один такт. Может был неправ.


Ai = Ai-1 + Bi*Ci,
- Это именно то что нужно. Именно эту операцию выполняет DSP. И даст результат на следующем такте. Вы же вдумайтесь сами, как может быть Ai = Ai+b*c. Для этого обязательным условием должно быть b*c = 0.
Go to the top of the page
 
+Quote Post
kamil_yaminov
сообщение Oct 2 2008, 06:23
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 395
Регистрация: 15-02-08
Из: Новосибирск
Пользователь №: 35 064



Дейстаительно получается один такт! Тое есть все сводится к тому как быстро сложить и быстро умножить, а это как я понимаю - комбинационные схемы работают.

Дейстаительно получается один такт! Тое есть все сводится к тому как быстро сложить и быстро умножить, а это как я понимаю - комбинационные схемы работают.
Go to the top of the page
 
+Quote Post
yes
сообщение Oct 3 2008, 09:48
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



мой вопрос был про то, что если нет в архитектуре DSP блоков (не положили в FPGA: например, Spartan3 или проектируете ASIC)
а сумматор на 48 разрядов не успевает по времянке за 1 такт, то есть его надо разбить регистрами на несколько ступеней
но при этом хочется потоковые вычисления выполнять за 1 такт : то есть для вычисления суммы из 1000 слагаемых потратить 1000 с небольшим тактов

умножитель порезать не вопрос - так как в нем может быть сколько угодно ступеней корвеера (ну или пусть это Spartan3, где есть умножители), а накопление как сделать?

btw: мне искать вобщем-то не надо, я знаю, да и хитрого там ничего нет, но если кто-то начинает разбираться с такими вещами - может будет полезно понять
Go to the top of the page
 
+Quote Post
Singer
сообщение Oct 10 2008, 13:26
Сообщение #20


Участник
*

Группа: Свой
Сообщений: 52
Регистрация: 13-11-07
Пользователь №: 32 296



Нет никакой проблемы сделать за такт - только толку от этого мало, поскольку такт получается очень длинный smile.gif Поэтому как правило дробят конвеером для получения большей частоты и пропускной способности.
Go to the top of the page
 
+Quote Post
Builder
сообщение Oct 13 2008, 07:13
Сообщение #21


iBuilder©
****

Группа: Свой
Сообщений: 519
Регистрация: 14-07-04
Из: Минск
Пользователь №: 322



Цитата(Singer @ Oct 10 2008, 16:26) *
Нет никакой проблемы сделать за такт - только толку от этого мало, поскольку такт получается очень длинный smile.gif Поэтому как правило дробят конвеером для получения большей частоты и пропускной способности.

Длинные - понятие не инженерное.
Про такты - разработчики проца сами решают что им выгоднее, за такт или не за такт. Вон, AD и в плавучке в серии Shark делает такое за так и жужит. А кто-то другой разобьёт эту операцию на стадии.
Обсуждать-то что? Сказано, операция - чисто комбинационная, значит в принципе реализуется за такт, даже для плавающей точки.
Если вопросы остались - поднимать доки по реальзации мат операций в двоичных кодах, для сомневающихся..
По моему весь разговор какой-то пустой получается, в темах про FPGA это вопрос для новичка.
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 15th June 2025 - 15:10
Рейтинг@Mail.ru


Страница сгенерированна за 0.01418 секунд с 7
ELECTRONIX ©2004-2016