Ситуация представлена на картинке.
Есть блок с условным названием 1 и множество однотипных блочков 2. Выходы блоков 2 записываются в некий массив (я назвал этот блок MUX) и подаются на входы блоков 2. Полагаю, что правило соответствия элемента массива блоку 2 в контексте вопроса несущественно.
Итак, есть блоки, которые рекурсивно что-то вычисляют. Вычисления занимают несколько тактов, поэтому данные от блока 1 на входе блока 2 нельзя обновлять каждый такт. Следовательно, создаётся очередь из данных от блока 1. На самом деле, копятся не выходные данные для блока 1, а то, что поступает ему на вход - поскольку выход блока 1 на самом деле не одна шина с одним и тем же значением для всех блоков 2, а достаточно большой массив, поэтому с точки зрения ресурсов ПЛИС разумнее копить вх. отсчеты с АЦП, которые и поступают на блок 1.
То есть, получается следующая схема: отсчеты с АЦП -> RAM -> блок 1 -> блок 2. Таким образом, чтение из RAM происходит каждые M тактов, где M = K+L; K - число тактов на обработку данных в блоке 1, L - число тактов на обработку в блоке 2. А вх. отсчеты поступают каждый такт, и поэтому какую бы большую память не взять - рано или поздно запись новых данных догонит чтение и результаты будут некорректными.
Догадываюсь, что подобная проблема возникла не вчера и даже не лет 10 назад. Проблема в том, что не знаю даже по каким словам гуглить. Прошу подсказки.