Перейти к содержанию
    

Накапливающий сумматор, введение латентности

1 час назад, mixa7109 сказал:

вот такая упрощенная

Скорее, такая заведомо нерабочая.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

1 hour ago, mixa7109 said:

А что не так?

А  вы разницу  посмотрите   между  вашей картинкой и моей 

 

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 часов назад, RobFPGA сказал:

Приветствую!

Делите поток на четные/нечетные отсчеты, задерживаете четные на 1 такт,  получаете  2 потока  с вдвое меньшей частотой  обновления,  накапливаете в 2 сумматорах,  выход с которых тоже суммируете.

Но  в вашем случае думаю проще  второй вариант  c pipeline сумматора. И обновления суммы каждый  такт, и  головной боли с констрейнами не будет.

  Показать содержимое


assign  {din_h, din_l} = din;

assign sum = {sum_h1, sum_l1};

always_ff @(posedge clk) begin
  clear0 <= clear;

  if (clear) begin
    {cy0, sum_l0} <= '0;
    din_h0        <= '0;
  end
  else begin
    {cy0, sum_l0} <= sum_l0 + din_l;
    din_h0        <= din_h;
  end

  if (clear0) begin
    sum_l1 <= '0;
    sum_h1 <= '0;
  end
  else begin
    sum_l1 <= sum_l0;
    sum_h1 <= sum_h1 + din_h0 + cy0;
  end
end

 

Удачи! Rob.      

{cy0, sum_l0} <= sum_l0 + din_l; -- Здесь мы получаем наш перенос   cy1 <= cy0; - вот так бы было через регистр 
sum_h1 <= sum_h1 + din_h0 + cy0; -- Здесь мы его уже используем     sum_h1 <= sum_h1 + din_h0 + cy1;

В этих двух строчках у нас нет регистра между cout и cin двух сумматоров.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

mixa7109, cy0 — это однобитный регистр, никакого cy1 не требуется, поэтому и на структурной схеме его нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...